Módulo multibase
Multibase baséase na codificación Base1x e introduce unha variedade de métodos de codificación de prefixos de codificación.
multibase pode codificar os mesmos datos utilizando diferentes métodos de codificación e engadir un prefixo para indicar o método de codificación. Existen 15 métodos de codificación admitidos por multibase, a saber, base1, base2, base8, base10, base16,base32, base32hex, base32z, base36, base40, base56, base58flickr, base58btc,base64, base64url. Entre eles, base 16,base32ebase64é de uso relativamente común.
Multibase pódese usar para cambiar a presentación dos datos binarios sen cambialos. Por exemplo, a codificación de datos binarios xerados aleatoriamente comobase32Unha cadea da forma:
1
2
3
4
5
6
7
8const {
encode
} = require('multibase');
const crypto = require('crypto');
const data = crypto.randomBytes(10); // generate 10 bytes random data
const encodedStr = encode(data, 'base32'); // encode data to base32 string
console.log(encodedStr); // ==> "bpgwnvztqmlbo5fy"
Descodifica a cadea anterior en datos binarios brutos:
1
2
3
4
5
6const {
decode
} = require('multibase');
const data = decode('bpgwnvztqmlbo5fy', 'base32'); // decode base32 string to data
console.log(data); // ==> <Buffer a7 55 3d 33 ca 97 ac 0d aa 40>
Como podes ver, a través de multibase, codificamos os datos binarios orixinais comobase32forma dunha cadea, e esta cadea pódese decodificar en datos binarios brutos.
función estática
encode
Codificar datos en modo multibase
1
2static String multibase.encode(Buffer data,
String codec);
Parámetros de chamada:
- data:Buffer, os datos que se van codificar
- codec: Cadea, especifique o método de codificación
Resultados de devolución:
- String, devolve a cadea codificada
decode
Descodifica a cadea en datos binarios en modo multibase
1static Buffer multibase.decode(String data);
Parámetros de chamada:
- data: String, a cadea que se vai decodificar
Resultados de devolución:
- Buffer, devolve os datos binarios descodificados