Programma di Principles Of Cryptocurrency Design:

1. Problemi classici di consenso. Sistemi distribuiti fault-tolerant: modelli
avversariali e sincroni. Teorema FLP e impossibilità del consenso asincrono.
Teorema CAP.

2. Preliminari di crittografia e reti. Funzioni Hash crittografiche. Schemi di
firma digitale. Curve ellittiche e crittografia. Reti P2P e la rete Internet.

3. Consenso "permissionless" e Bitcoin. Consistenza finale e il protocollo di
consenso di Nakamoto. Decentralizzazione, mining, proof-of-work, regolazione
della difficoltà. La struttura dei blocchi, alberi di Merkle, UTXOs. Il
linguaggio di scripting di Bitcoin. Malleabilità delle transazioni. Sicurezza
e privacy di Bitcoin. I Fork e gli Altcoin.

4. I protocolli di secondo livello. Rendere Bitcoin scalabile e la rete
Lightning. Canali di pagamento e gli contratti Hash Time-Locked. Routing sulla
rete Lightning. Onion routing. Sicurezza e privacy della rete Lightning.

Fonte: GOMP