Questa è un’opinione editoriale di Shinobi, un educatore autodidatta nello spazio Bitcoin e host di podcast Bitcoin orientato alla tecnologia.
Bitcoin è in definitiva definito dai suoi utenti, dalle persone che effettivamente gestiscono nodi e applicano le regole del protocollo per verificare i pagamenti che ricevono sulla rete. Questa è una proprietà fondamentale e inevitabile della rete Bitcoin, a condizione che gli utenti scelgano di impegnarsi in questa attività. Ciò non significa tuttavia che gli utenti comprendano a fondo come funziona il protocollo, i diversi effetti che le modifiche proposte farebbero o il modo più efficiente a livello strettamente tecnico per gestire un problema o un miglioramento. Gli utenti possono assolutamente capire queste cose se si prendono il tempo per fare le loro ricerche e conoscere effettivamente il protocollo a un livello strettamente tecnico, ma presumere che tu come utente capisca queste cose semplicemente per la realtà che gli utenti sono gli arbitri finali di come il protocollo funziona in base al software che scelgono di eseguire è pura arroganza.
Solo perché guidi un’auto non significa che capisci i compromessi ingegneristici profondi e sfumati, così come l’ingegnere che ha progettato l’auto. Solo perché usi un cellulare tutti i giorni non significa che tu sappia come ottimizzare il consumo di energia di tutti i diversi trasmettitori radio, WiFi, Bluetooth, cellulare, ecc. Usare qualcosa non significa capire come funziona di default. Questo è qualcosa che dovrebbe essere molto ovvio per una persona che è onesta con se stessa.
Allora perché così tanti utenti senza molta esperienza tecnica o familiarità con come funzionano le cose sotto il cofano si sentono così sicuri nel dichiarare come funzionano le cose sotto il cofano, sbagliando tutti i dettagli e i fatti? Ora, mi sento come se in questo clima dovessi aggiungere un milione di avvertimenti. Non sto parlando con voi, gli sviluppatori di software che costruiscono applicazioni, o che lavorano in qualche campo della normalità tecnologica senza il tempo di contribuire in qualche modo a Bitcoin, ma che lo seguono regolarmente; Non sto parlando con l’utente che ha effettivamente dedicato quella che è francamente una quantità di tempo malsana (credetemi, lo so per esperienza) per capire come funzionano le cose sotto il cofano. Sto parlando con te, l’utente medio che ascolta solo alcuni podcast di tanto in tanto e le medie del costo del dollaro (DCA) e non segue davvero a fondo lo sviluppo delle cose tecniche in questo spazio. Sto parlando con l’utente che letteralmente non ha nemmeno ritirato i propri fondi dallo scambio in cui li hai acquistati. Sto parlando con te, l’utente che, durante la gestione della tua attività, ha appena chiesto al suo amico Bitcoin di configurare un portafoglio mobile per consentirti di accettare Bitcoin quello su 100 volte che un cliente paga con esso.
Perché sei così sicuro delle tue opinioni sugli aspetti tecnici di come funziona Bitcoin?
Quanto conosci la politica di mempool su come vengono inoltrate le transazioni? Sapevate che c’è una grande differenza tra regole politiche e regole di consenso? Che ci siano transazioni che sono perfettamente valide per consenso da includere in un blocco, ma per policy di mempool, non verranno inoltrate dal nodo di nessuno, quindi i miner devono ricevere direttamente quella transazione e utilizzare un codice personalizzato per includerla in un blocco ?
Che dire del fatto che Lightning Network in realtà non utilizza contratti hash time-locked (HTLC) per pagamenti di valore molto piccolo? Sapevi che per un pagamento di 10 satoshi, ad esempio, Lightning Network in realtà non utilizza HTLC o rende atomico il successo o il fallimento del pagamento con lo script Bitcoin? Quei piccolissimi pagamenti vengono in realtà arrotondati in commissioni minerarie durante il”periodo intermedio”quando non sono ancora finalizzati e confermati con i canali. Ciò significa che se un salto lungo un percorso di pagamento ha un lato che smette di collaborare, non c’è modo per quel nodo di imporre il pagamento o il rimborso sulla catena, a seconda di quale lato stai discutendo per quel pagamento specifico. Va solo alle commissioni del minatore per una transazione, non viene creato alcun output HTLC effettivo nella transazione di impegno del canale per instradare quel pagamento. È solo un sistema di onestà”migliore tentativo”senza applicazione. Lo sapevi?
Ecco una storia divertente. Bitcoin ha due codici operativi per il blocco del tempo, controlla la verifica del tempo di blocco (CLTV) e controlla la verifica della sequenza (CSV). CLTV impedisce che una moneta venga spesa prima di un determinato Timestamp Unix o un’altezza di blocco predefinita. CSV impedisce che una moneta venga spesa fino a quando non è trascorso un periodo di tempo”x”o dopo che sono stati trovati blocchi”y”dal blocco o dall’ora in cui è stata creata la moneta. Quando si spende una moneta utilizzando CLTV o CSV nello script, nella transazione di spesa effettiva è presente un campo chiamato nLocktime che deve essere impostato sul valore utilizzato dallo script CLTV o CSV. Lo scopo originale di questo campo era di avere transazioni preimpostate che non potevano essere estratte fino a quel momento o blocco. Ma lo stesso Satoshi Nakamoto aveva in mente anche un altro uso per questo: una forma molto semplice di canale di pagamento. L’idea era che si potesse prendere il campo nLocktime e incrementarlo di uno ogni volta per creare un nuovo pagamento netto e fare in modo che i minatori stabilissero quello più recente in base al conteggio.
Il problema è che non c’era una regola di consenso o un modo per imporre ai minatori di regolare la transazione più recente. Quindi Nakamoto stesso ha pianificato di utilizzare questo campo nella transazione per richiedere ai minatori di regolare solo la transazione più recente o con il numero più alto. Tranne che in realtà non c’era alcuna regola di consenso per applicarlo! Non solo non c’era una regola di consenso, ma era impossibile costruirne una perché i miner sono in grado di includere qualsiasi transazione valida in un blocco. Una volta firmata una transazione, è valida, è sempre valida. Quindi non c’era un modo logico per l’idea originale di Nakamoto di funzionare in primo luogo.
Pensaci per un secondo. Il creatore di Bitcoin ha immaginato qualcosa da costruire sopra Bitcoin che era letteralmente impossibile da costruire nel modo in cui immaginava di lavorare. Pensaci. Il creatore dell’intero protocollo ha creato alcune funzioni per fare una certa cosa, quando fare quella determinata cosa in quel modo non è letteralmente possibile.
Perché sei così fiducioso nella tua comprensione di come funziona Bitcoin a livello tecnico? Perché sei così sicuro che le tue idee su quali effetti avranno determinati cambiamenti siano effettivamente corrette? Il creatore del protocollo ha avuto un terribile malinteso su come funzionasse che, ad essere sincero, sono un po’imbarazzato per lui che abbia pensato che una cosa del genere sarebbe stata possibile costruire in quel modo.
Quindi qual è il senso di tutto questo? Che gli esperti esistono ancora. Il fatto che gli utenti alla fine abbiano il controllo del protocollo e abbiano la scelta definitiva su quale software eseguire e quali regole applicare non cambia la realtà che ci sono persone che capiscono come funziona effettivamente questo protocollo meglio di te. La comprensione delle cose da parte delle persone è direttamente correlata a quanto tempo hanno speso effettivamente cercando di conoscere e capire la cosa.
Non puoi semplicemente capire magicamente come funziona effettivamente Bitcoin solo perché lo acquisti, o lo usi o acquisti cose con esso. Non è così che funziona la conoscenza. Quindi, quando i bitcoiner vengono coinvolti in discussioni su come funzionano effettivamente le cose a livello tecnico, quando iniziano a parlare pubblicamente del motivo per cui hanno preso decisioni su cose relative all’esecuzione di software e alla creazione di regole, dovrebbero essere consapevoli di ciò che fanno e non fanno sapere perché il solo possesso di bitcoin non impartisce magicamente la conoscenza di per sé.
Lo slogan di questo spazio è”Non fidarti, verifica”. Quindi quanti di voi stanno verificando le cose prima di iniziare a ripeterle?
Questo è un post degli ospiti di Shinobi. Le opinioni espresse sono interamente proprie e non riflettono necessariamente quelle di BTC Inc o di Bitcoin Magazine.