Class: MD5

@nginstack/engine/lib/crypto/MD5~ MD5


new MD5()

Implementação do algoritmo de hash MD5.

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 MD5 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 MD5 = require('@nginstack/engine/lib/crypto/MD5');
var md5 = new MD5();
md5.update("dados001");
md5.update("dados002");
md5.update("dados003");
md5.hexDigest().toLowerCase(); // => 'bccfb9b2f8310968833e281f5818f53e'

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 MD5 em formato binário dos dados acumulados.

Type
string | Uint8Array | ArrayBuffer

hexDigest()

Retorna o hash em formato hexadecimal.

Returns:

Hash MD5 em formato hexadecimal dos dados acumulados.

Type
string

toString()

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

Returns:

Hash MD5 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
MD5

<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 MD5 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 MD5 em formato hexadecimal do dado informado

Type
string