Submarine Swap

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

Non è possibile inviare direttamente Bitcoin da un canale lightning a un normale indirizzo on-chain. I submarine swap, che si basano sugli stessi principi dei normali atomic swap, forniscono una soluzione a questo problema.

I submarine swap sono swap atomici da on-chain a off-chain (e viceversa) di criptovalute. Sono progettati per facilitare il trasferimento dalla blockchain Bitcoin ad un canale LN (Lightning Network). A differenza degli atomic swap, nei quali Lightning Network deve essere abilitato su entrambe le criptovalute che partecipano allo swap, con submarine swap è sufficiente che Lightning sia abilitato su un solo lato. I submarine swap sono realizzabili anche tra diverse blockchain.

Si basano su un tipo specifico di smart contract Bitcoin chiamato HTLC, Hash Time-Locked Contracts. Poiché gli HTLC possono includere transazioni sia on-chain che off-chain, gli HTLC possono essere utilizzati anche per i pagamenti ed è il costrutto principale che consente il trasferimento di denaro tramite Lightning Network. Gli HTLC possono anche essere sfruttati tra un mittente on-chain e un ricevente off-chain e viceversa, e questi sono submarine swap.

Lo smart contract per il submarine swap è chiamato swap provider. Può essere gestito da un servizio di terze parti ma è uno smart contract sulla blockchain. I submarine possono essere utilizzati per:

  • Pagare in modo trustless uno swap provider in una rete per eseguire un pagamento sull'altra rete
  • Pagare in modo trustless uno swap provider in una rete per trasferire coin sull'altra rete
  • Pagare in modo trustless uno swap provider per riequilibrare i canali Lightning

Perché sono necessari i submarine swap?

Il problema principale dell'indirizzo del submarine swap è che le transazioni tra indirizzi Bitcoin on-chain e indirizzi LN off-chain non sono direttamente compatibili. Non si può inviare facilmente una transazione Lightning a qualcuno che non usa il Lightning o viceversa. Questa separazione dei livelli crea una barriera di transazione tra la blockchain Bitcoin e la LN off-chain. Un'ulteriore limitazione dell'attuale implementazione di LN è che la configurazione di un canale LN richiede una transazione on-chain (e una fee successiva) e un importo precompilato di BTC inviato al canale. Una volta esaurita la fornitura di BTC nel canale, non esiste alcun metodo per ricaricare il canale e per continuare a utilizzare è necessario aprire un altro canale. Sebbene le transazioni sostanzialmente illimitate possano essere inviate all'interno di un canale LN purché nel canale siano presenti BTC sufficienti. La gestione dei canali costa più in commissioni di transazione sulla chain e come complessità, rendendo scomodo e inefficiente l'apertura ripetuta di più canali.

In che modo gli submarine swap risolvono il problema

I submarine swap risolvono questo problema consentendo ricaricare i canali LN tramite un trasferimento on-chain dalla blockchain di Bitcoin al canale LN off-chain. I submarine swap sono ispirati agli atomic swap, quindi hanno un funzionamento simile. I submarine swap e atomici utilizzano un intermediario trustless per il trasferimento di token tra blockchain o intra-chain (ad esempio, Bitcoin on-chain to off-chain LN). I submarine swap sfruttano gli HTLC contract in cui il destinatario di una transazione deve riconoscere di aver ricevuto il pagamento prima di una scadenza specifica fornendo una prova crittografica del pagamento. In caso contrario, il destinatario perde la possibilità di richiedere i token e vengono restituiti al pagatore.


aggiornato il 2022-06-30