Il sistema bitcoin per garantire un alta sicurezza nelle transazioni usa un sistema di crittografia asimmetrica. Questa è formata da 2 chiavi:
- chiave pubblica:può essere distribuita e rappresenta l’indirizzo dove inviare bitcoin
- chiave privata:deve restare personale e segreta
Il meccanismo di base è che se con una delle due chiavi si cifra una transazione, questo potrà essere decifrato solo con l’altra chiave.
COME FUNZIONA LA FIRMA DIGITALE
Una firma digitale è strutturata in 2 parti collegate: Una chiave privata ed una chiave pubblica, che serve ai vari nodi del blocco per verificare l’autenticità della chiave privata.
Si può pensare alla chiave privata come ad una “firma” ed alla chiave pubblica come ad un intermediario che dimostra di avere la firma senza però doverla rivelare.
Le chiavi pubbliche sono in relatà l’indirizzo di destinazione dei bitcoin (come una più conosciuta IBAN), quando invio bitcoin li sto inviando ad una chiave pubblica, e per spenderli bisogna dimostrare di essere proprietari di quella chiave pubblica.
Questo si fa generando una firma digitale da un messaggio di transazione con la chiave privata:
chiave privata + messaggio = firma
gli atri nodi della rete poi utilizzeranno questa firma in un altra funzione per verificare che corrisponda con la chiave pubblica:
firma + funzione = chiave pubblica
attraverso la matematica che sta dietro la firma digitale si può verificare che il mittente possegga la chiave privata senza però vedere la chiave privata stessa, inoltre dato che la firma dipende dal messaggio sarà diversa per ogni tra stazione e quindi non potrà essere riutilizzata per una prestazione diversa. Questa dipendenza dal messaggio significati che nessuno può modificare il messaggio mentre passa nella rete perché qualsiasi eventuale modifica invaliderebbe la firma.