Come spiegato nell’ultimo articolo relativo a Bitcoin e al suo possibile futuro, uno dei BIP (Bitcoin Improvement Proposal) che sono in procinto di essere adottati dalla maggior parte degli utenti del network sono le firme Schonrr. Questa proposta di miglioramento è una delle più interessanti mai viste: oltre che a migliorare la scalabilità e la privacy, offre anche un ambiente di sviluppo per tecnologie come Taproot che puntano a migliorare la privacy delle transazioni.
Transazioni Bitcoin: UTXO
Le transazioni Bitcoin hanno un concetto alla base che non è famigliare ai molti. Mentre il tipico conto bancario della nostra banca si basa su un saldo, Bitcoin utilizza le Unspended Transacion Output (UTXO). Questi “Output di transazioni non spese” sono associate ad una chiave privata e sono l’insieme delle transazioni ancora da spendere. Quando una persona fa una transazione ed invia BTC in realtà sta trasferendo la proprietà di quella UTXO firmandola con la chiave crittografica.
Firme Schorr: la provenienza
Una firma Schorr è una firma digitale prodotta dall’algoritmo di firma Schonrr descritto dall’omonimo Claus Schnorr. È in sostanza uno schema di firme digitali noto per la sua semplicità e per essere uno dei primi la cui sicurezza si basa sull’intrattabilità di alcuni problemi di logaritmi discreti. Questo meccanismo, sviluppato nel 1989, era coperto da un brevetto statunitense che è scaduto nel 2008. La BIP è stata presentata nel luglio 2018 e sembra poter trovare un vero e proprio utilizzo con il prossimo soft fork di Bitcoin.
Firme digitali, SegWit e ECDSA
Le firme Schnorr si basano su Segregated Witness (SegWit), ossia un miglioramento in funzione dal soft fork dell’agosto del 2017. Questa biforcazione del codice risolve i problemi di malleabilità spostando gli script e i dati della firma digitale su una parte della transazione che è separata. Per controllare le firme digitali Bitcoin utilizza una variante crittografica del famoso DSA (Digital Signature Algorithm) che sfrutta la crittografia a curva ellittica e si chiama ECDSA.
Vantaggi e conclusioni
Ora che abbiamo fatto una brevissima intro su come funzionano le firme digitali, le transazioni in Bitcoin e da dove derivano le firme Schnorr, cerchiamo di capire per quale motivo sono così importanti.
-
Aggregazione delle chiavi
Il vantaggio più importante introdotto dalle firme Schnorr sono sicuramente le transazioni multi-firma. Come sappiamo, Bitcoin supporta delle semplici transazioni multisig (multi-firma) come 2-su-3 ( ossia 2 partecipanti firmano su 3), 3-su-5 e così via. Nel mondo e nelle applicazioni reali però c’è bisogno di un meccanismo in cui si riesca facilmente ad arrivare a multi-firme fino a 2-su-100 o 30-su-500.
Data la linearità delle firme Schnorr e la relativa semplicità, ci sarà la possibilità di aggregare chiavi e firme insieme. In sostanza il concetto di aggregazione consente di sommare le chiavi dei vari input e aggregarle in un’unica firma in cui ogni firmatario apporta una firma parziale. Vi ricordate le UTXO?
Bene, facciamo un esempio. Come spiegato prima, il “saldo”, anche se non è la parola giusta, dei BTC in nostro possesso è la somma delle transazioni ancora non spese. Immaginiamo che Marco voglia inviare 3 BTC a Laura e che il suo saldo sia diviso in tre UTXO da 1 BTC l’una. Quando Marco invia i 3 BTC, in realtà sta trasferendo la proprietà delle UTXO firmandole a una a una, aumentando la dimensione del blocco e pagando più fee ai miner.
Come possiamo capire questo è uno spreco, dato che con le firme Schnorr abbiamo la possibilità di unire le tre UTXO in un’unica transazione che necessita una sola firma. Da questo, nasce il secondo vantaggio delle firme introdotte.
-
Riduzione dimensioni transazioni
Le transazioni che utilizzano Schnorr occupano meno spazio (64byte) nella Blockchain permettendo al sistema di poter eseguire più transazioni e di farlo in maniera più veloce rispetto al metodo attuale.
In più, sia ECDSA che Schnorr si basano sul concetto di logaritmo discreto, e la sicurezza di questo sistema è per lo meno pari a quello precedente.
Conclusioni
Schnorr rappresenta uno dei miglioramenti più attesi e studiati per quanto riguarda il protocollo di Satoshi Nakamoto. Le implicazioni a livello di scalabilità e privacy sono evidenti, tanto quanto la possibilità di sviluppare contratti multi-sig più complessi. Questo BIP rappresenta solo il primo passo evolutivo del protocollo, che unito a Taproot e Tapscript, permetterà di orientare sempre più la criptovaluta numero uno al mondo verso un futuro mainstream.