new Base32()
Classe que permite a codificação e decodificação de conteúdos binários em Base32.
Não devem ser construídas instâncias da classe Base32, devendo ser utilizados os seus métodos de classe.
Members
-
<static, constant> BASE32 :string
-
Constante que indica que deve ser utilizado o formato de codificação
base32
padrão, definido no RFC4648.Type:
- string
-
<static, constant> BASE32_DNSCURVE :string
-
Constante que indica que deve ser utilizada a variante do Base32 definida no protocolo DNSCurve.
Type:
- string
-
<static, constant> BASE32_DNSSEC :string
-
Constante que indica que deve ser utilizada a variante do Base32 definida no RFC5155. Ela possui as seguintes características:
- Usa o alfabeto hexadecimal estendido do
base32hex
. - Utilizada caixa baixa na codificação e não diferencia letras maiúsculas e minúsculas na decodificação.
- Não utiliza padding.
Type:
- string
- Usa o alfabeto hexadecimal estendido do
-
<static, constant> BASE32_NOPAD :string
-
Constante que indica que deve utilizada a variação do
base32
sem o uso de caracteres de padding ("="), definida no RFC4648.Type:
- string
-
<static, constant> BASE32HEX :string
-
Constante que indica que deve ser utilizada a variante
base32hex
, definida no RFC4648.Type:
- string
-
<static, constant> BASE32HEX_NOPAD :string
-
Constante que indica que deve ser utilizada a variante
base32hex
sem o uso de caracteres de padding ("="), definida no RFC4648.Type:
- string
Methods
-
<static> decode(str [, variant] [, resultType])
-
Decodifica uma string de dados que foi codificada anteriormente em Base32.
Parameters:
Name Type Argument Description str
string String em Base32 a ser decodificada.
variant
Base32Variant <optional>
Informa a variante do Base32 que foi utilizada na codificação dos dados. Os valores possíveis são: Base32.BASE32 (
'base32'
), Base32.BASE32_NOPAD ('base32_nopad'
), Base32.BASE32HEX ('base32hex'
), Base32.BASE32HEX_NOPAD ('base32hex_nopad'
), Base32.BASE32_DNSSEC ('base32_dnssec'
) e Base32.BASE32_DNSCURVE ('base32_dnscurve'
). Caso não seja informado, será utilizado o formato padrão'base32'
.resultType
string <optional>
O tipo do resultado gerado por esta função. Os valores possíveis são "uint8array", "arraybuffer" e "binarystring". Caso não seja informado, será retornada uma string no formato Binary String.
Returns:
Um binário codificado como string ou um ArrayBuffer.
- Type
- string | Uint8Array | ArrayBuffer
Example
const Base32 = require('@nginstack/engine/lib/encoding/Base32.js'); Base32.decode('MV4GC3LQNRSQ===='); // => 'example'
-
<static> decodeStream(input, output [, variant])
-
Lê um conteúdo Base32 de um stream e escreve como binário em outro stream. Faz a operação inversa do método
encodeStream
.Parameters:
Name Type Argument Description input
File | MemoryStream Conteúdo Base32 a ser decodificado.
output
File | MemoryStream Stream que recebe o conteúdo em formato binário.
variant
Base32Variant <optional>
Informa a variante do Base32 que foi utilizada na codificação dos dados. Os valores possíveis são: Base32.BASE32 (
'base32'
), Base32.BASE32_NOPAD ('base32_nopad'
), Base32.BASE32HEX ('base32hex'
), Base32.BASE32HEX_NOPAD ('base32hex_nopad'
), Base32.BASE32_DNSSEC ('base32_dnssec'
) e Base32.BASE32_DNSCURVE ('base32_dnscurve'
). Caso não seja informado, será utilizado o formato padrão'base32'
. -
<static> encode(bin [, variant])
-
Codifica um conteúdo binário em Base32.
Parameters:
Name Type Argument Description bin
string | ArrayBuffer | Uint8Array Dados a serem codificados, podendo ser um binário codificado como string no formato Binary String.
variant
Base32Variant <optional>
Informa a variante da codificação Base32 desejada. Os valores possíveis são: Base32.BASE32 (
'base32'
), Base32.BASE32_NOPAD ('base32_nopad'
), Base32.BASE32HEX ('base32hex'
), Base32.BASE32HEX_NOPAD ('base32hex_nopad'
), Base32.BASE32_DNSSEC ('base32_dnssec'
) e Base32.BASE32_DNSCURVE ('base32_dnscurve'
). Caso não seja informado, será utilizado o formato padrão'base32'
.Returns:
String codificada em Base32.
- Type
- string
Example
const Base32 = require('@nginstack/engine/lib/encoding/Base32.js'); Base32.encode('example'); // => 'MV4GC3LQNRSQ===='
-
<static> encodeStream(input, output [, variant])
-
Lê um conteúdo binário de um stream e escreve como Base32 em outro stream. Faz a operação inversa do método
decodeStream
.Parameters:
Name Type Argument Description input
File | MemoryStream Conteúdo binário a ser codificado
output
File | MemoryStream Stream que recebe o conteúdo em formato Base85
variant
Base32Variant <optional>
Informa a variante da codificação Base32 desejada. Os valores possíveis são: Base32.BASE32 (
'base32'
), Base32.BASE32_NOPAD ('base32_nopad'
), Base32.BASE32HEX ('base32hex'
), Base32.BASE32HEX_NOPAD ('base32hex_nopad'
), Base32.BASE32_DNSSEC ('base32_dnssec'
) e Base32.BASE32_DNSCURVE ('base32_dnscurve'
). Caso não seja informado, será utilizado o formato padrão'base32'
.