Modulo multibase
Multibase si basa sulla codifica Base1x e introduce una varietà di metodi di codifica del prefisso di codifica.
multibase può codificare gli stessi dati utilizzando diversi metodi di codifica e aggiungere un prefisso per indicare il metodo di codifica. Esistono 15 metodi di codifica supportati da multibase, vale a dire base1, base2, base8, base10, base16,base32, base32hex, base32z, base36, base40, base56, base58flickr, base58btc,base64, base64url. Tra questi, base16,base32Ebase64è relativamente comunemente usato.
Multibase può essere utilizzato per modificare la presentazione dei dati binari senza modificarli. Ad esempio, codificare dati binari generati casualmente comebase32Una stringa nel formato:
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 stringa precedente in dati binari grezzi:
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>
Come puoi vedere, tramite multibase, codifichiamo i dati binari originali comebase32forma di una stringa e questa stringa può essere decodificata in dati binari grezzi.
funzione statica
encode
Codificare i dati in modalità multibase
1
2static String multibase.encode(Buffer data,
String codec);
Parametri di chiamata:
- data:Buffer, i dati da codificare
- codec: Stringa, specifica il metodo di codifica
Risultati restituiti:
- String, restituisce la stringa codificata
decode
Decodifica la stringa in dati binari in modalità multibase
1static Buffer multibase.decode(String data);
Parametri di chiamata:
- data: String, la stringa da decodificare
Risultati restituiti:
- Buffer, restituisce i dati binari decodificati