Il Checksum è una semplice funzione crittografica che ci permette di verificare e sapere esattamente se un indirizzo Bitcoin è stato digitato correttamente. Una semplice utility che ci permette di identificare errori di battitura o altri errori. Il tutto per evitare di perdere i nostri fondi inviando i nostri bitcoin a un indirizzo mal formato.
LIl checksum o CheckSum è una semplice funzione utilizzata per rilevare che una serie di dati o file non è stata modificata. Una funzione molto utile per garantire l'integrità e la protezione delle informazioni quando vengono archiviate o condivise con altri utenti in rete.
La sua funzionalità si basa su un semplice algoritmo di verifica che permette di creare piccoli hash o stringhe di caratteri che possono poi essere utilizzate per verificare prima o dopo una trasmissione di dati, la validità dei dati trasmessi. Questo hash si trova in genere nella parte inferiore del file o della stringa verificati. E in questo modo, fungono da firma per aiutare a verificare l'integrità delle informazioni.
Molto utile, ad esempio, quando vogliamo includere una verifica automatica che ci permetta di sapere se ciò che scriviamo oi dati che abbiamo ricevuto rappresentano davvero le informazioni desiderate.
In questo senso, il checksum in Bitcoin (e in altre criptovalute) sono ampiamente utilizzati, e qui impareremo di più su questa piccola ma potente funzione e su come ci aiuta a rendere Bitcoin uno sviluppo molto più sicuro per tutti.
Origine del CheckSum
La comparsa delle prime funzioni di CheckSum risale ai primi lavori di William Wesley Peterson, uno scienziato matematico e computazionale che ha trascorso diversi anni a ricercare, progettare e implementare i primi CheckSum al mondo. Più specificamente, Peterson ha progettato la prima funzione CheckSum o checksum, nel 1961, la ben nota CRC (Verifica mediante ridondanza ciclica), che avrebbe poi dato vita a standard industriali come CRC8 o CRC32C, tra gli altri derivati da un utilizzo molto ampio.
Da allora, le funzioni CheckSum o checksum sono state una parte essenziale della nostra vita. Da un semplice lettore CD, passando per televisori, sistemi di conversione digitale-analogico e viceversa, trasmissioni dati via cavo (come l'Ethernet dei nostri computer) o via radio (come quelle effettuate dai nostri cellulari). Insomma, l'utilità del checksum è gigantesca ed è sicuramente presente in cose che nemmeno lontanamente penseresti se fosse applicato.
D'altra parte, William W. Peterson è stato un grande sviluppatore di tecnologie e miglioramento dei linguaggi di programmazione, fino alla sua morte il 6 maggio 2009. In suo onore, le società Intel e AMD hanno aggiunto la funzione CRC32c ai rispettivi processori. Questa è la funzione di checksum più conosciuta di Peterson ed è ancora ampiamente utilizzata nel settore.
Come funziona CheckSum?
La funzione CheckSum è stata creata applicando un semplice algoritmo. Questo mira a utilizzare una serie di complesse operazioni matematiche e logiche per convertire una sequenza di dati in una stringa fissa di numeri nota come hash checksum.
Questo piccolo hash viene quindi utilizzato per verificare molto rapidamente se un determinato dato è stato danneggiato. O per archiviazione (dati scritti o letti in modo errato) o per trasmissione degli stessi (le reti di trasmissione hanno sempre una perdita correlata a diversi fattori). O anche se qualche attore malintenzionato l'ha deliberatamente modificato.
Quindi, come questa funzione consente di verificare l'integrità di un'informazione, è ampiamente utilizzato durante la condivisione o l'archiviazione di dati sulla rete. Poiché i dati, essendo accompagnati dai valori hash generati da loro stessi tramite una funzione hash, acquisiscono alcune proprietà extra che ne consentono la verifica e la validazione da soli quando vengono condivisi o archiviati.
Ad esempio, se un utente desidera condividere un file sulla rete con un altro utente, deve fornire un valore hash del file in modo che lo stesso valore possa essere ottenuto quando si applica la funzione hash su quel file. Garantendo quindi che il file condiviso sia arrivato correttamente e senza alterazioni al suo destinatario.
Allo stesso modo, durante l'archiviazione e la memorizzazione delle informazioni, è possibile verificarle successivamente calcolando e salvando il risultato del valore hash ottenuto. Pertanto, quando è necessario un controllo, il valore hash salvato può essere utilizzato per scoprire se le informazioni sono state alterate o meno, per qualsiasi motivo.
Casi d'uso per la funzione CheckSum
I casi d'uso delle funzioni CheckSum sono molto vari. Come abbiamo già accennato, sono parti fondamentali nei dispositivi elettronici e nell'informatica in generale. Ma per consentirti di comprendere più chiaramente il loro ambito, vedremo di seguito alcuni casi d'uso reali e molto quotidiani di queste funzioni:
Tecnologia GSM
La tecnologia GSM che ci consente di utilizzare la maggior parte dei nostri telefoni cellulari oggi fa ampio uso di funzioni di checksum nei suoi sistemi di trasmissione dati e voce digitale. Ricorda che le informazioni digitali inviate alla rete cellulare sono codificate, compresse e modulate in modo tale da poter raggiungere da un punto all'altro della rete cellulare con la minima perdita di informazioni e qualità.
Ma trattandosi di una rete dati di tipo wireless ci sono diversi fattori che alterano la qualità delle informazioni inviate. Qualsiasi tipo di interferenza può causare la perdita di informazioni e con essa, perderemo la qualità dei servizi. Le funzioni di checksum vengono utilizzate per affrontare questa situazione. Grazie a queste funzioni, la rete può verificare rapidamente che le informazioni inviate e ricevute siano in perfette condizioni, e in caso contrario, se viene rilevato un errore, la rete è in grado di provare a correggerlo, il più delle volte con successo .
Quindi sì, grazie alle funzioni di checksum, hai chiamate vocali, messaggi e dati di alta qualità sulle nostre attuali reti cellulari.
conto in banca
Un altro uso molto comune delle funzioni di checksum è verificare che le informazioni di un conto bancario siano corrette. Ogni volta che vedi un numero di conto bancario, non vedi solo un gruppo di numeri che ti identificano all'interno di quella banca. Ma c'è anche un'informazione che consente loro di verificare che quei numeri che hai fornito siano quelli corretti.
Ad esempio, nei conti bancari di tipo IBAN, questi numeri di controllo o checksum sono le prime quattro cifre. I primi due indicano il paese di origine del conto e gli altri due indicano il numero di controllo. Questo numero di controllo è correlato agli ultimi 10 numeri che identificano il conto bancario. E questo ci garantisce che non commetteremo errori quando inseriremo un numero di conto bancario.
Indirizzi di criptovaluta
Tramite la funzione CheckSum o checksum puoi verificare in modo semplice e veloce che l'indirizzo che stai utilizzando sia corretto. O se al contrario, in qualche modo viene alterato. Evitare di inviare inconsciamente le tue criptovalute a un indirizzo falso, errato o inesistente.
Anche se, in teoria, sarebbe impossibile inviare bitcoin a un indirizzo che non esiste o che è scritto male. Perché questi indirizzi quando vengono generati incorporano un codice di checksum. Questi dati rappresentano il valore hash dell'indirizzo ei dati della somma costituiscono il proprio schema alfanumerico noto come Base58 Verifica.
Ciò salva il checksum direttamente all'interno dell'indirizzo. E con ciò, se un indirizzo viene inserito in modo errato, i checksum di entrambi gli indirizzi non corrispondono. In questo modo, il portafoglio impedisce una transazione quando gli indirizzi vengono inseriti in modo errato.
In Bitcoin la funzione hash SHA-256 viene applicato due volte per generare un hash a 32 byte, dove i primi 4 byte (32 bit) vengono presi come checksum per rilevare errori tipografici negli indirizzi. E, sebbene le chiavi associate all'indirizzo non possano essere ottenute tramite questa somma di verifica, consente la verifica di dette chiavi. Con il quale è possibile evitare di commettere errori quando si effettua una transazione.
Questa semplice procedura garantisce che non puoi sbagliare quando inserisci un indirizzo Bitcoin. In effetti, la probabilità che ti sbagli è 1 su 4.294.967.295.