Graftroot è un miglioramento progettato per espandere le capacità di Taproot, una proposta che cerca di offrire a Bitcoin migliori capacità per il suo linguaggio di programmazione consentendo la creazione di contratti intelligenti più potenti.
El sviluppo di Bitcoin non si ferma, e in mezzo a quella dinamica, un miglioramento che ci si aspetta all'interno di questo protocollo è quello di Graftroot. Questo miglioramento si basa sul lavoro in corso su due miglioramenti già noti Taproot e firme di Schnorr, e il suo obiettivo è rendere la creazione di transazioni e script più flessibile per creare condizioni di blocco molto più elaborate. In questo modo, gli script Bitcoin che utilizzano Graftroot potrebbero consentire la programmazione di varie condizioni di blocco che attualmente non sono possibili, il tutto mantenendo la sicurezza e migliorando la privacy del sistema.
Ma come può Graftroot rendere possibile tutto questo? Bene, questo e molto altro analizzeremo di seguito.
Origine di Graftroot
Innanzitutto l'origine di Graftroot risale a due concetti molto importanti: Taproot e le aziende Schnorr. Questi sono gli elementi costitutivi di Graftroot e senza di essi è impossibile che funzioni. Per renderlo molto chiaro, Taproot è un miglioramento che cerca di cambiare il modo in cui Script Bitcoin possono essere creati, eseguiti e archiviati sulla blockchain di Bitcoin. La sua missione principale è rendere gli script Bitcoin più flessibili in modo che possano migliorare la loro programmazione o smart contract.
Il miglioramento proposto da Taproot è accompagnato da un nuovo tipo di firma digitale chiamata firme Schnorr. Questo è un tipo di firma digitale il cui scopo è creare firme digitali più piccole, più sicure e private rispetto alle loro controparti. ECDSA, lo standard utilizzato oggi da Bitcoin.
Detto questo, possiamo vedere che le aziende Taproot e Schnorr miglioreranno notevolmente la capacità di Bitcoin, ed è qualcosa che possiamo applaudire. Tuttavia, questo non finisce qui. Lui 5 di febbraio 2018, lo sviluppatore di Bitcoin, Gregory Maxwell, ha inviato un'e-mail all'elenco degli sviluppatori Bitcoin pubblicizzando la loro proposta di Graftroot. La proposta era un miglioramento per Taproot che amplierà le sue possibilità. L'idea prese rapidamente piede, soprattutto perché il designer di Taproot era anche Gregory Maxwell, e nessuno sapeva meglio di lui come funzionava questo miglioramento e come poteva essere migliorato.
In effetti, Maxwell ha presentato entrambe le idee a soli 13 giorni di distanza, rendendo molto chiaro che c'era spazio per miglioramenti su entrambe le idee.
Gregory Maxwell: Cos'è Graftroot?
Taproot soffre di una limitazione e cioè che solo un'alternativa può essere fornita in modo nativo. Alberi o cascate possono essere ricavati da fittoni, ma hanno meno privacy ed efficienza rispetto a un singolo livello. Tuttavia, sotto il presupposto principale principale, dove c'è una funzione monotona su semplici chiavi pubbliche e nient'altro che è sufficiente per autorizzare una transazione, possiamo fare anche di meglio.
Con Graftroot, i partecipanti stabiliscono un file chiave di soglia, facoltativamente con un fittone alternativo, proprio come fanno con il fittone. Quindi, in qualsiasi momento, possono delegare la loro capacità di firmare uno script surrogato firmando quello script (e solo lo script) con la loro chiave primaria e condividendo tale delega con chiunque scelga. Successivamente, quando è il momento di spendere la moneta, se i firmatari non sono disponibili e lo script deve essere utilizzato, il redentore fa tutto il necessario per soddisfare lo script (ad esempio, fornisce la propria firma e un blocco temporale, o qualsiasi altra cosa) e presenta tali informazioni insieme alla firma del firmatario della sceneggiatura.
Il risultato è che invece di consentire un'unica alternativa, è possibile fornire un numero illimitato di alternative. Tutti vengono eseguiti in modo efficiente come un'unica alternativa e il numero di essi è nascosto senza costi aggiuntivi. Le alternative possono essere fornite anche per le monete, senza la necessità che si muovano, il movimento è necessario solo per distruggere la possibilità di utilizzare alternative cambiando le chiavi.
Quanto sopra detto in modo meno tecnico ed esteso lo è: Grafroot ci permette di introdurre più programmazione negli script, migliorando le condizioni di programmazione e attivazione degli script, e tutto questo senza alterare il protocollo e godendo dei vantaggi di privacy che Taproot e Schnorr ci consentono.
Sicuramente una soluzione elegante, che allo stesso tempo offre miglioramenti che tutti apprezzeremo e che avranno un grande impatto positivo sull'usabilità di Bitcoin.
Come funziona Graftroot?
Ora esattamente come funziona Graftroot. Bene, prima di tutto, come abbiamo già discusso, Graftroot funziona grazie a Taproot e alle aziende Schnorr. Queste due funzioni sono fondamentali e necessarie per il corretto funzionamento. Ma non preoccuparti, puoi sapere tutto ciò che devi sapere se visiti i nostri articoli a Taproot y firme di Schnorr, qui alla Bit2Me Academy.
Detto questo, procederemo a fornire un breve esempio di come funziona Graftroot. Per fare ciò, immagina il seguente scenario:
Esempio di come funziona Graftroot
Prima di tutto, abbiamo Daniela e Luis che gestiscono un portafoglio multi-firma. Il wallet è del tipo 2-of-2, cioè le 2 firme sono necessarie per autorizzare una spesa del denaro all'interno di quel wallet.
Tuttavia, Daniela e Luis hanno deciso di rendere la forma di spesa più flessibile a determinate condizioni. Così stabiliscono che dopo un anno, i soldi in detta borsa possono essere mobilitati con la firma di uno di loro niente di più. Così, Daniela o Luis, dopo quel tempo, possono spostare i soldi grazie a questa condizione assicurativa. Insieme a questa condizione, ne programmano un'altra in cui Luis può spendere l'equilibrio fornendo un segreto.
Una volta scritte le condizioni, Daniela e Luis creano le loro chiavi di soglia utilizzando le firme di Schnorr, firmano gli script principali e alternativi e ognuno di loro conserva i dati necessari per soddisfare le condizioni di spesa che sono state programmate negli script. .
Spiegare lo scenario
Prima di tutto, Daniela e Luis possono creare una multisignatura 2 su 2 e mettere lì i loro soldi, questo è qualcosa che possiamo fare in Bitcoin in questo momento. La novità consiste nell'includere diverse condizioni alternative che verranno eseguite se sono presenti le condizioni necessarie affinché detta operazione sia soddisfatta. E che se una di queste viene soddisfatta, il resto delle condizioni non può essere visto da nessun altro.
Ciò significa che, se, ad esempio, Daniela ritira i soldi un anno dopo perché Luis ha avuto un problema, potrà farlo senza problemi. Ma allo stesso tempo nella blockchain, saremo in grado di vedere solo lo script che ha consentito tale azione, il resto degli script e delle condizioni rimarranno nascosti. In altre parole, solo quella condizione che è soddisfatta nella transazione può essere vista pubblicamente nella blockchain, il resto delle alternative e delle condizioni rimarranno private e nessuno sarà in grado di sapere cosa fossero.
Questa caratteristica migliora sicuramente la privacy, ma non solo, migliora la capacità di programmare ogni Bitcoin all'interno della rete. E la cosa migliore è che queste transazioni, se viste sulla blockchain, non avranno molta differenza da una normale transazione di criptovaluta.
Per quanto riguarda la "funzione assicurativa", immagina quanti Bitcoin non sono congelati nella blockchain perché la chiave per la sua gestione è stata semplicemente dimenticata o persa? Con un indirizzo e uno script utilizzando Graftroot, sarebbe possibile programmare condizioni speciali in modo che il denaro all'interno di quell'indirizzo possa muoversi in altre condizioni programmate, evitando così le loro perdite. In questo modo casi come QuadrigaCX con i suoi 1000 BTC persi, o quello di un utente Bitcointalk con 8900 BTC perso, sarebbe un'altra storia.
Quanto sai, Cryptonuta?
L'app di Graftroot metterà Bitcoin allo stesso livello della programmazione degli smart contract di Ethereum?FALSO!
Sebbene Graftroot (e Taproot) espandano notevolmente l'attuale capacità di Bitcoin per i contratti intelligenti, ciò non significa che la programmabilità di Bitcoin superi o raggiunga quella di Ethereum. In realtà, non è questo l'obiettivo. Il vero obiettivo è consentire alla rete di poter svolgere operazioni che attualmente si basano su opzioni centralizzate o protocolli di secondo livello. Ad esempio, con Taproot e Graftroot attivi, lo stesso protocollo Bitcoin sarebbe in grado di eseguire DEX o Atomic Swap sicuri. Tutto questo senza la necessità di un protocollo esterno di qualche tipo, cosa di cui gli utenti trarranno grande vantaggio.
Pro e contro di Graftroot
Vantaggi
Prima di tutto, uno dei pro di Graftroot è che ti permettono di creare smart contract molto più elaborati (Bitcoin Scripts). Cioè con più condizioni e con funzioni altrimenti impossibili da implementare. Ciò migliora significativamente l'usabilità di Bitcoin e apre le porte all'implementazione on-chain di nuove funzioni di scambio sicure e trasparenti.
Inoltre, Graftroot non rinuncia ai miglioramenti della privacy e della scalabilità che le aziende Taproot e Schnorr ci offrono, poiché queste due tecnologie sono richieste da Graftroot. Ciò ha motivato gli sviluppatori ad accogliere con favore l'uso di Taproot e Schnorr all'interno di Bitcoin, che presto potremo vedere.
Svantaggi
Sul lato negativo, Graftroot introduce maggiore complessità al codice Bitcoin, portando inesorabilmente a problemi di sicurezza. Tuttavia, sia Taproot che Schnorr all'interno di Bitcoin sono in sviluppo dal 2018, il codice è stato studiato, il che riduce la possibilità di problemi di questo tipo.
Quello che è veramente un problema con Graftroot è che si tratta di un sistema interattivo, in cui entrambe le parti devono firmare le sceneggiature (quella principale così come quelle alternative) per poter effettuare eventuali spese. Se ciò non accade per qualche motivo, i soldi saranno lì fino al completamento dell'azione.