Class: Hex

@nginstack/engine/lib/encoding/Hex~ Hex


new Hex()

Classe responsável por codificar e decodificar strings em hexadecimal.

Methods


<static> decode(str)

Decodifica uma string em hexadecimal para a string original, informada ao método encode.

Esta função retorna uma string no formato conhecido por Binary String. Para decodificar binários ou textos que não sejam ASCII, é recomendado o uso da função Hex.decodeString.

Parameters:
Name Type Description
str string

String que será decodificada.

Returns:

String decodificada.

Type
string

<static> decodeString(s)

Restaura uma sequência de bytes a partir da sua representação hexadecimal.

O valor informado deve ter um tamanho par, caso contrário será gerado um erro.

Parameters:
Name Type Description
s string

Representação hexadecimal de uma sequência de bytes.

Returns:

Sequência de bytes que originou a representação hexadecimal.

Type
Uint8Array
Example
const Hex = require('@nginstack/engine/lib/encoding/Hex');
Hex.decodeString('00ff7f'); // => [0, 255, 127]

<static> encode(str)

Codifica uma string para uma nova string codificada apenas utilizando caracteres hexadecimais.

Esta função codifica as strings como se fossem uma sequência de bytes no formato conhecido por Binary Strings. Para codificar binários ou textos que não sejam ASCII, é recomendado o uso da função Hex.encodeToString. Para codificar strings, utilize a classe TextEncoder para converter uma string em um Uint8Array, tornando explícita a codificação adotada.

Observação: diferentemente das classes SHA256 e SHA512, a classe Hex 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 deste método seja convertido para o formato desejado utilizando os métodos toUpperCase() ou toLowerCase().

Parameters:
Name Type Description
str string

String que será convertida em hexadecimal.

Returns:

String codificada em hexadecimal.

Type
string

<static> encodeToString(src)

Converte uma sequência de bytes em sua representação hexadecimal em caixa baixa.

Parameters:
Name Type Description
src Uint8Array | ArrayBuffer

Bytes a ser codificados em hexadecimal.

Returns:

Representação hexadecimal dos bytes informados.

Type
string
Example
const Hex = require('@nginstack/engine/lib/encoding/Hex');
const ar = new Uint8Array([0, 255, 127]);
Hex.encodeToString(ar); // => '00ff7f';