Class: SHA1

@nginstack/engine/lib/crypto/SHA1~ SHA1


new SHA1()

Implementação do algoritmo de hash SHA1.

Esta classe trata as strings como se fossem uma sequência de bytes no formato conhecido por "Binary String", onde cada caractere da string representa um byte do conteúdo binário. É importante observar que a codificação adotada pode ser diferente em outras plataformas, como o Node.js. Para garantir compatibilidade com o hash calculado em outras plataformas, prefira sempre informar valores do tipo Uint8Array ou ArrayBuffer, evitando a codificação implícita das strings.

Observação: diferentemente das classes SHA256 e SHA512, a classe SHA1 retorna a representação hexadecimal utilizando letras maiúsculas. Essa diferença de comportamento foi preservada a fim de garantir o funcionamento dos códigos existentes, mas ela pode ser eliminada no futuro. É recomendado que o resultado do método hexDigest seja convertido para o formato desejado utilizando os métodos toUpperCase() ou toLowerCase().

Example
var SHA1 = require('@nginstack/engine/lib/crypto/SHA1');
var sha1 = new SHA1();
sha1.update("dados001");
sha1.update("dados002");
sha1.update("dados003");
sha1.hexDigest().toLowerCase(); // => '1a3ad9dc8cc634be3890289b51ec9c0ac451364c'

Methods


digest( [resultType])

Retorna o hash em formato binário.

Parameters:
Name Type Argument Description
resultType string | DigestType <optional>

O tipo do digest gerado. Os valores possíveis são "binarystring", "arraybuffer" e "uint8array". Caso não seja informado, será retornada uma string no formato "Binary String", onde cada caractere da string representa um byte do conteúdo binário.

Returns:

Hash SHA1 em formato binário dos dados acumulados.

Type
string | Uint8Array | ArrayBuffer

hexDigest()

Retorna o hash em formato hexadecimal.

Returns:

Hash SHA1 em formato hexadecimal dos dados acumulados.

Type
string

toString()

Produz o mesmo resultado que o método hexDigest()

Returns:

Hash SHA1 em formato hexadecimal dos dados acumulados.

Type
string

update(data)

Método responsável por fazer o acúmulo de dados para cálculo do hash.

Parameters:
Name Type Description
data string | Uint8Array | ArrayBuffer

Dados que serão acumulados para cálculo do hash.

Returns:

Instância desta classe.

Type
SHA1

<static> digest(data [, resultType])

Método de classe que calcula o hash em binário a partir de um determinado dado.

Parameters:
Name Type Argument Description
data string | Uint8Array | ArrayBuffer

Dado que será usado no cálculo do hash.

resultType string | DigestType <optional>

O tipo do digest gerado. Os valores possíveis são "binarystring", "arraybuffer" e "uint8array". Caso não seja informado, será retornada uma string no formato "Binary String", onde cada caractere da string representa um byte do conteúdo binário.

Returns:

Hash SHA1 em formato binário do dado informado

Type
string | Uint8Array | ArrayBuffer

<static> hexDigest(data)

Método de classe que calcula o hash em formato hexadecimal a partir de um determinado dado.

Parameters:
Name Type Description
data string | Uint8Array | ArrayBuffer

Dado que será usado no cálculo do hash.

Returns:

Hash SHA1 em formato hexadecimal do dado informado

Type
string