Che Cos’è un Canale di Pagamento Bitcoin?

La prima concezione di canali di pagamento viene oggi chiamata Nakamoto HFT, dove HFT sta per high-frequency transaction, ovvero “transazioni ad alta frequenza” ed è un’idea di scalabilità di Bitcoin già prevista da Satoshi nella prima versione del software.

Potremmo considerarlo un Lightning Network embrionale anche se l’implementazione di Satoshi non avrebbe mai potuto funzionare in maniera sicura. L’idea, che è alla base di quasi tutti i progetti di scalabilità di Bitcoin off-chain, è quella di aggiornare continuamente il bilancio di una transazione tra due utenti senza propagarla on-chain, quindi senza pagare ogni volta le fee ai minatori.

L’idea originale

Nella visione di Satoshi gli utenti avrebbero creato un canale di pagamento tra loro usando transazioni firmate (ma non propagate) e due opcode: NSequence (che controlla il numero di sequenza) e NLockTime (che chiude il canale di pagamento in un determinato punto nel tempo). I due utenti si sarebbero scambiati gli aggiornamenti della transazione aggiungendo +1 al numero di sequenza, così da segnalare quale fosse lo stato più aggiornato.

Dalla teoria alla pratica

Ciò che rende inutilizzabile questo modello è il fatto che non c’è modo di far rispettare questa regola ad un miner; dunque un utente malevolo, colluso con un miner, avrebbe sempre potuto propagare e far includere in un blocco uno stato non aggiornato ma per lui vantaggioso, indipendentemente dal numero di sequenza. Il concetto di canali di pagamento off-chain è stato poi ripreso e reso più sicuro in progetti come Lightning Network.

di CypherGatto