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

Applicazione Alfabeto
Indirizzi Bitcoin [2] 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz[3]
Hash per InterPlanetary File System[4] 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz[5]
URL abbreviato per Flickr[6] 123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ[7]

Note modifica

  1. ^ Andreas M. Antonopoulos, Base58 and Base58Check Encoding, in Mastering Bitcoin, O'Reilly, 2015.
  2. ^ Technical background of version 1 Bitcoin addresses - Bitcoin Wiki, su en.bitcoin.it. URL consultato il 28 novembre 2023.
  3. ^ Base58Check encoding - Bitcoin Wiki, su en.bitcoin.it. URL consultato il 28 novembre 2023.
  4. ^ https://github.com/ipfs/specs/blob/master/overviews/implement-api-bindings.md
  5. ^ Juan Benet, go-base58, 21 gennaio 2021. URL consultato il 28 novembre 2023.
  6. ^ Servizi Flickr, su www.flickr.com. URL consultato il 28 novembre 2023.
  7. ^ 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.

Voci correlate modifica

  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica