module multibase
Multibase est basé sur l'encodage Base1x et introduit une variété de méthodes d'encodage de préfixe d'encodage
multibase peut coder les mêmes données en utilisant différentes méthodes de codage et ajouter un préfixe pour indiquer la méthode de codage. Il existe 15 méthodes d'encodage prises en charge par multibase, à savoir base1, base2, base8, base10, base16,base32, base32hex, base32z, base36, base40, base56, base58flickr, base58btc,base64, base64url. Parmi eux, base16,base32etbase64est plus couramment utilisé.
multibase peut être utilisé pour changer la représentation des données binaires sans la changer. Par exemple, coder des données binaires générées aléatoirement commebase32Une chaîne de la forme :
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"
Décodez la chaîne ci-dessus en données binaires brutes :
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>
Comme vous pouvez le voir, grâce à la multibase, nous encodons les données binaires d'origine commebase32forme, et peut décoder cette chaîne en données binaires brutes.
fonction statique
encode
Encoder les données de manière multibase
1
2static String multibase.encode(Buffer data,
String codec);
Paramètres d'appel :
- data:Buffer, les données à encoder
- codec: String, spécifie la méthode d'encodage
résultat de retour :
- String, renvoie la chaîne encodée
decode
Décoder les chaînes en données binaires en mode multibase
1static Buffer multibase.decode(String data);
Paramètres d'appel :
- data: String, la chaîne à décoder
résultat de retour :
- Buffer, renvoie les données binaires décodées