Módulo multibase
Multibase se basa en la codificación Base1x e introduce una variedad de métodos de codificación de prefijos de codificación.
multibase puede codificar los mismos datos usando diferentes métodos de codificación y agregar un prefijo para indicar el método de codificación. Hay 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 ellos, base16,base32ybase64se utiliza con relativa frecuencia.
Multibase se puede utilizar para cambiar la presentación de datos binarios sin cambiarlos. Por ejemplo, codificar datos binarios generados aleatoriamente comobase32Una cadena de la 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"
Decodifica la cadena anterior en datos binarios sin procesar:
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 puede ver, a través de multibase, codificamos los datos binarios originales comobase32forma de una cadena, y esta cadena se puede decodificar en datos binarios sin procesar.
función estática
encode
Codificar datos en modo multibase
1
2static String multibase.encode(Buffer data,
String codec);
Parámetros de llamada:
- data:Buffer, los datos a codificar
- codec: Cadena, especifique el método de codificación
Resultados de devolución:
- String, devuelve la cadena codificada
decode
Decodificar cadena en datos binarios en modo multibase
1static Buffer multibase.decode(String data);
Parámetros de llamada:
- data: Cadena, la cadena a decodificar
Resultados de devolución:
- Buffer, devuelve los datos binarios decodificados