Mòdul multibase
Multibase es basa en la codificació Base1x i introdueix una varietat de mètodes de codificació de prefixos de codificació.
multibase pot codificar les mateixes dades utilitzant diferents mètodes de codificació i afegir un prefix per indicar el mètode de codificació. Hi ha 15 mètodes de codificació suportats per multibase, és a dir, base1, base2, base8, base10, base16,base32, base32hex, base32z, base36, base40, base56, base58flickr, base58btc,base64, base64url. Entre ells, base 16,base32ibase64s'utilitza relativament habitualment.
Multibase es pot utilitzar per canviar la presentació de dades binàries sense canviar-les. Per exemple, la codificació de dades binàries generades aleatòriament combase32Una 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"
Descodifiqueu la cadena anterior en dades binàries en brut:
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>
Com podeu veure, mitjançant multibase, codifiquem les dades binàries originals combase32forma d'una cadena, i aquesta cadena es pot descodificar en dades binàries en brut.
funció estàtica
encode
Codificar dades en mode multibase
1
2static String multibase.encode(Buffer data,
String codec);
Paràmetres de trucada:
- data:Buffer, les dades a codificar
- codec: Cadena, especifiqueu el mètode de codificació
Resultats de retorn:
- String, retorna la cadena codificada
decode
Descodifica la cadena en dades binàries en mode multibase
1static Buffer multibase.decode(String data);
Paràmetres de trucada:
- data: String, la cadena a descodificar
Resultats de retorn:
- Buffer, retorna les dades binàries descodificades