Base58
Base58 è un insieme di schemi di codifica da binario a testo, specificati da Satoshi Nakamoto per la rete Bitcoin, al fine di rappresentare numeri interi grandi come testo alfanumerico.
Da allora, è stato applicato ad altre crittovalute e applicazioni. È simile al Base64, ma è stato modificato per eliminare sia i caratteri non alfanumerici che quelle lettere che potrebbero essere confuse con altre, quando stampate. È quindi progettato per gli utenti umani che inseriscono manualmente i dati, copiandoli da una qualche sorgente visiva, ma consente anche una facile copia e incolla, perché un doppio clic di solito seleziona l'intera stringa.
Rispetto al Base64, sono state eliminate le seguenti lettere tra loro simili e in grado generare errati riconoscimenti: 0 (zero) e O ("o" maiuscola), così come I ("i" maiuscola) e l (lettere L minuscola), oltre ai caratteri non alfanumerici + (più) e / (slash).
Diversamente da Base64, le cifre della codifica non si allineano bene con i limiti di bit dei dati originali. Per questo motivo, il metodo è adatto per codificare interi di grandi dimensioni, ma non è progettato per codificare porzioni più lunghe di dati binari. L'ordine effettivo delle lettere nell'alfabeto varia a seconda dell'applicazione, motivo per il quale il solo termine "Base58" non è sufficiente per descrivere completamente il formato. Base58Check è uno dei formati di codifica Base58, che inizia con l'identificatore del tipo di dati e termina con un codice di controllo nei rimanenti caratteri. [1]
La variante Base56 differisce dalla Base58 per l'esclusione dei caratteri 1 (uno) e o (o minuscola).
Esempi
[modifica | modifica wikitesto]Applicazione | Alfabeto |
---|---|
Indirizzi Bitcoin [2] | 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz [3]
|
Hash per InterPlanetary File System[4] | 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz [5]
|
URL abbreviato per Flickr[6] | 123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ [7]
|
Note
[modifica | modifica wikitesto]- ^ Andreas M. Antonopoulos, Base58 and Base58Check Encoding, in Mastering Bitcoin, O'Reilly, 2015.
- ^ Technical background of version 1 Bitcoin addresses - Bitcoin Wiki, su en.bitcoin.it. URL consultato il 28 novembre 2023.
- ^ Base58Check encoding - Bitcoin Wiki, su en.bitcoin.it. URL consultato il 28 novembre 2023.
- ^ https://github.com/ipfs/specs/blob/master/overviews/implement-api-bindings.md
- ^ Juan Benet, go-base58, 21 gennaio 2021. URL consultato il 28 novembre 2023.
- ^ Servizi Flickr, su www.flickr.com. URL consultato il 28 novembre 2023.
- ^ Franck Michel, Flickr may have lost 63% of its photos after being acquired by SmugMug (updated Oct. 2019)., 20 marzo 2012. URL consultato il 28 novembre 2023.