⚡ Lightning Network ⚡

Scalare Bitcoin mantenendo la decentralizzazione

Alekos Filini - @afilini

Blockstream

"Decentralizzazione"

  • Permissionless
  • Nessun single point of failure
  • Zero fiducia
  • Zero censura
  • È necessario poter validare indipendetemente

"Scaling"

  • Bitcoin attualmente può confermare ~3 tx/s
  • Chiaramente insufficiente per un utilizzo "di massa"
  • Ingrandire i blocchi rende più difficile validare
    • e sostanzialmente non risolve il problema

More
with
Less

  • È possibile ottenere
    • Più trasferimenti bitcoin
    • Meno transazioni Bitcoin
  • Si
    • Esempio: Coinbase
  • È possibile ottenere
    • Più trasferimenti bitcoin
    • Meno transazioni Bitcoin
    • ... mantenedo custodia dei propri BTC
    • ... in modo trustless
  • Si
    • Con i payment channels

Payment Channels

  • Due parti collaborano e bloccano fondi on-chain
  • Le transazioni che rappresentano in ogni momento lo stato del canale vengono tenute off-chain
  • Il canale può essere chiuso in qualunque momento
    • Pubblicando l'ultimo stato

Canali Monodirezionali

  • Alice blocca dei fondi in un 2-of-2 con Bob

Canali Monodirezionali

  • Ad ogni pagamento verso Bob spende dal 2-of-2 e crea due output
    • Uno verso sé stessa
    • Uno verso Bob
  • Firma la transazione e la passa a Bob

Canali Monodirezionali

  • Bob può chiudere il canale in qualunque momento aggiungendo la propria firma
  • È incentivato economicamente a pubblicare l'ultimo stato

Canali Bidirezionali

  • Alice e/o Bob bloccano fondi in un 2-of-2
  • Preparano una transazione con i due output e un timelock nel futuro
  • Si scambiano le firme

Canali Bidirezionali

  • Ad ogni pagamento viene aggiornato il valore dei due output e ridotto il timelock
  • L'ultimo stato può essere confermato prima dei precedenti
  • Il canale va chiuso quando la blockchain raggiunge l'ultimo timelock

Punishment-Based Enforcement

  • Gli output di Alice e Bob contengono in aggiunta una revocation key
    • Scambiata ad ogni aggiornamento di stato
    • Sono reedemable da Alice o Bob dopo alcuni blocchi

Punishment-Based Enforcement

  • Incentivo a pubblicare l'ultimo stato
  • Se Bob provasse a pubblicare uno stato revocato
  • Alice potrebbe spendere entrambi gli output
    • Il proprio con la propria key
    • Quello di Bob con la revocation key

HTLC - Hash Time Locked Contract

  • Condizione di spesa che può essere soddisfatta da una firma in aggiunta a
    • Mostrare la preimage di un hash
    • Oppure aspettare un timelock

Routing

  • Una parte del balance di un canale può essere allocato per il routing di pagamenti
  • Catene di HTLC dal payer al payee
  • Se il pagamento ha successo viene risolto con la preimage
  • Altrimenti può andare in timeout

Routing

  • Quando la catena raggiunge il payee, lui mostra la preimage
  • A catena tutti i pagamenti vengono risolti

⚡ Lightning Network ⚡

Scalare Bitcoin mantenendo la decentralizzazione

Alekos Filini - @afilini

Blockstream

Lightning Network

By Alekos Filini

Lightning Network

  • 489