You can also read the English version of this article.

Più di tre anni fa, nel novembre 2021, l'aggiornamento Taproot è stato implementato tramite un soft fork su Bitcoin, introducendo nuove funzionalità per le transazioni e firme Schnorr più efficienti. Sebbene l'adozione iniziale sia stata piuttosto lenta, oggi il nuovo formato Taproot rappresenta circa il 20% di tutti gli output Bitcoin, e sempre più applicazioni stanno iniziando a sfruttarne le funzionalità avanzate. Naturalmente, anche BitBoxApp e BitBox02 supportano l'invio e la ricezione con indirizzi Taproot dal 2022.

In questo articolo, vogliamo dare uno sguardo al futuro, esaminando nuovi schemi multisignature come MuSig2 e FROST, che consentono la creazione di wallet multisignature con i vantaggi di maggiore privacy ed efficienza offerti da Taproot. Per capire come funzionano e da dove derivano i loro benefici, esamineremo brevemente il funzionamento degli script Bitcoin e di Taproot prima di approfondire nel dettaglio questi schemi di firma!

Scripting di Bitcoin

Quando ricevi bitcoin, il mittente crea un nuovo output che blocca i bitcoin in uno script, ovvero un modo tecnicamente accurato per dire che “ti invia il pagamento al tuo indirizzo Bitcoin”. Uno script in Bitcoin è un programma piccolo e semplice che determina se una transazione può essere spesa o meno, ed è esattamente ciò che ogni nodo della rete verifica quando convalida le transazioni.

Ad esempio, lo script predefinito di Native Segwit (P2WPKH) verifica che una chiave pubblica fornita e una firma digitale corrispondano a un hash di chiave pubblica esistente sulla blockchain di Bitcoin – e niente di più. In parole più semplici: lo script assicura che tu abbia le chiavi corrette per l’indirizzo Bitcoin.

Tuttavia, esistono modi più complessi per utilizzare le capacità di scripting di Bitcoin, aggiungendo condizioni aggiuntive per spendere i fondi. Un esempio molto diffuso sono i wallet multisignature, che richiedono più di una firma per poter spendere le monete.

Quando si spendono fondi da un indirizzo multisig, anche questo script più complesso deve essere rivelato, sia per dimostrare che le firme sono valide, sia per consentire agli altri di verificare che l’indirizzo effettivamente le richieda.

Lo stato attuale dei wallet multisig presenta principalmente due svantaggi: primo, non è ideale per la privacy, perché chiunque può vedere i dettagli della tua configurazione (ad esempio, se utilizzi un approccio 2-su-3, 3-su-5 o ancora più complesso). In secondo luogo, più condizioni di spesa aggiungi, più grande diventerà lo script e più alta sarà la commissione di transazione.

Spese tramite chiave e script

Quando si spendono fondi da un indirizzo Taproot, ci sono due percorsi tra cui scegliere: percorso chiave e percorso script. Entrambi offrono vantaggi in determinate situazioni e consentono transazioni più private ed efficienti.

Spese tramite chiave

Il metodo predefinito o "preferito" per utilizzare Taproot è la spesa tramite chiave, che è piuttosto semplice da comprendere: gli output Taproot contengono una singola chiave pubblica e possono essere spesi con una singola firma. Se, al momento di spendere un output Taproot, fornisci solo una firma, allora hai effettuato una spesa tramite chiave. Ad esempio, ogni transazione regolare da un indirizzo Taproot creato con BitBoxApp è una spesa tramite chiave.

Le spese tramite chiave sono ottime perché rimuovono completamente tutte le informazioni non necessarie dalla blockchain di Bitcoin, richiedendo solo una singola chiave pubblica e una firma digitale per funzionare. Questo permette a ogni transazione Taproot che utilizza spese tramite chiave di apparire essenzialmente uguale alle altre.

Non è possibile determinare le esatte condizioni necessarie per creare la firma, semplicemente perché non ce n'è bisogno. Finché la firma è valida, la transazione è valida. Non importa se dietro di essa ci sia una firma singola standard, una firma multipla o persino un canale Lightning.

Spese tramite percorso script

La seconda opzione è simile allo stato attuale, in cui le condizioni di spesa vengono rivelate e convalidate direttamente sulla blockchain di Bitcoin. Possono essere utilizzate come alternativa per spendere un output, ad esempio nel caso in cui le condizioni standard per una spesa tramite chiave non siano soddisfatte.

Un esempio di condizione standard potrebbe essere l'uso del tuo hardware wallet principale, mentre un'opzione alternativa potrebbe essere una chiave di backup in una posizione remota, necessaria solo nel caso in cui l'hardware wallet principale non sia accessibile.

Le spese tramite percorso script su Taproot offrono comunque vantaggi, perché è necessario rivelare solo le parti delle condizioni di spesa effettivamente utilizzate. Questo porta a una potenziale maggiore privacy e a dimensioni di transazione più ridotte, poiché non tutti i dettagli devono essere registrati sulla blockchain di Bitcoin, ma solo quelli realmente rilevanti.

La cosa interessante di Taproot è che possiamo utilizzare entrambi i metodi! Un output Taproot contenente una singola chiave pubblica può essere speso sia con una singola firma sia attivando un percorso alternativo tramite il percorso script. Potresti notare come la chiave pubblica in un output Taproot sia una costruzione piuttosto interessante dal punto di vista crittografico, poiché è molto più di una “semplice chiave pubblica”. Ma siamo solo all'inizio!

Riesci a sentire il MuSig?

Ora che abbiamo una comprensione di base dello scripting di Bitcoin e di come funzionano i diversi percorsi di spesa, possiamo finalmente approfondire i vari schemi multisignature e il modo in cui sfruttano le funzionalità di Taproot. In una delle sezioni precedenti, abbiamo già accennato alla possibilità di utilizzare un wallet multisignature "dietro" una semplice spesa tramite chiave, ma come è possibile? Come può una singola firma rappresentare più firmatari?

Aggregazione delle firme

Le firme Schnorr, introdotte con l’aggiornamento Taproot, hanno una proprietà interessante chiamata “linearità”, che permette di sommare facilmente più firme, aggregando le firme di più firmatari in un’unica firma.

Basandosi su questo principio, esperti di Bitcoin e crittografi hanno sviluppato un elegante schema multisignature. MuSig2 utilizza l'aggregazione di chiavi e firme per abilitare wallet multisig n-su-n (ad esempio, 4-su-4, come mostrato nel grafico sottostante) senza dover rivelare informazioni sulle firme individuali nella rete Bitcoin.

Nessuno al di fuori di questa sessione di firma sa che Alice, Bob, Satoshi e Carol hanno dovuto collaborare per creare una firma insieme. In realtà, nessuno sa nemmeno che la transazione proviene da un wallet multisig, migliorando così la privacy grazie alla sua somiglianza con le altre transazioni Taproot. Inoltre, la transazione ha la stessa dimensione di una normale transazione con firma singola, poiché nessuna delle quattro chiavi o firme individuali viene pubblicata. Questo riduce le commissioni di transazione e rende Bitcoin più efficiente.

Interattività

Come la maggior parte delle cose nella vita, anche MuSig2 presenta alcuni compromessi, che si riducono principalmente ai requisiti di interazione tra i firmatari. Nei wallet multisignature tradizionali, i firmatari devono semplicemente condividere le firme, che fanno parte della transazione finale. In MuSig2, invece, devono comunicare avanti e indietro più volte per calcolare in modo sicuro le chiavi e le firme aggregate.

La prima versione di MuSig richiedeva tre fasi di interazione e ha dovuto essere leggermente modificata per motivi di sicurezza. Per questo motivo, è ora conosciuta con il nome del suo successore, MuSig2, che richiede solo due fasi di comunicazione. Tuttavia, questo aggiunge complessità per gli utenti, anche se i vantaggi in termini di privacy e riduzione delle dimensioni delle transazioni sono, per molti, sono probabilmente abbastanza significativi da compensare questo inconveniente.

Un altro aspetto è la limitazione agli schemi n-su-n, senza la possibilità di impostare direttamente una soglia (ad esempio 2-su-3), come la maggior parte degli utenti di wallet multisig preferisce per proteggersi dalla perdita di una chiave. Per aggiungere più ridondanza, è possibile configurare percorsi script alternativi per una “combinazione di backup” con chiavi diverse. Questo permetterebbe di ottenere una soglia effettiva, ma richiederebbe anche uno script e una configurazione più complessi.Ma forse lo hai già intuito… non siamo ancora alla fine!

FROST

Il protocollo “Flexible Round-Optimized Schnorr Threshold Signature”, o FROST in breve, è un altro schema multisignature simile a MuSig2, almeno in termini di creazione e aggregazione delle firme. Tuttavia, utilizza una diversa costruzione per generare le chiavi al fine di abilitare le soglie.

Per farlo in modo sicuro e permettere, ad esempio, a qualsiasi due firmatari in una configurazione 2-su-4 di produrre una firma aggregata valida, esistono essenzialmente due opzioni per creare le quote di chiavi prima della firma: la prima opzione consiste in una parte fidata che genera e distribuisce le chiavi, una soluzione semplice ma che ovviamente richiede fiducia. La seconda opzione è tenere una sessione interattiva tra le parti firmatarie per creare le chiavi, nota anche come generazione distribuita delle chiavi (DKG), che richiede canali di comunicazione sicuri tra i firmatari.

In altre parole, aggiungere la possibilità di impostare una soglia aggiunge complessità, ma consente anche configurazioni più versatili e ridondanti. Una spesa con percorso chiave FROST apparirebbe di nuovo come qualsiasi transazione Taproot, con il vantaggio aggiunto che nessuno sa quale combinazione dei firmatari disponibili si sia riunita per spendere le monete.

Conclusione

Se smetti di pensare a questi concetti singolarmente e inizi a considerare come possano essere combinati e utilizzati insieme ad altri meccanismi, le possibilità diventano quasi infinite. Gli utenti potranno personalizzare le proprie configurazioni, ad esempio con time lock e percorsi di recupero, come già possibile con Liana wallet e BitBox02, combinandoli e traendo vantaggio dagli schemi avanzati che abbiamo appena esaminato. Anche le soluzioni di scalabilità come la Lightning Network possono sfruttare schemi come MuSig2 per rendere la gestione dei canali più efficiente e privata.

I benefici di MuSig2 & FROST aumentano proporzionalmente alla complessità della configurazione del wallet e al numero di firmatari coinvolti, rendendoli particolarmente interessanti per organizzazioni più grandi con requisiti complessi. Tuttavia, anche per un uso personale, possono essere utili per ridurre le commissioni di transazione e migliorare la privacy.

Siamo ancora agli inizi, ma Taproot e i suoi vantaggi sono qui per restare, e con il tempo è probabile che l’adozione e la qualità dell’esperienza utente degli schemi multisignature come MuSig2 e FROST continuino a migliorare. Continueremo a seguire questi sviluppi per capire se e come possano avvantaggiare anche gli utenti di BitBox! 



Non possiedi ancora un BitBox?

Il BitBox02 è disponibile in due edizioni: l'edizione Multi, che supporta diverse criptovalute e può essere utilizzata come dispositivo per l'autenticazione a due fattori (2FA). L'edizione Bitcoin-only invece offre un firmware focalizzato: meno codice significa una superficie di attacco ridotta, che migliora ulteriormente la sicurezza quando custodisci solo bitcoin.

Acquista BitBox02 nel nostro shop online!


Shift Cypto è un'azienda privata con sede a Zurigo, in Svizzera. Il nostro team di contributori di Bitcoin, esperti di criptovalute e ingegneri della sicurezza crea prodotti che consentono ai clienti di godere di un percorso senza stress dal livello principiante a quello di padronanza nella gestione delle criptovalute. BitBox02, il nostro hardware wallet di seconda generazione, consente agli utenti di memorizzare, proteggere e effettuare transazioni in Bitcoin e altre criptovalute con facilità - insieme al suo compagno software, la BitBoxApp.