Offerta formativa


DGI svolge attività di divulgazione e formazione sui temi bitcoin, blockchain, distributed ledger, smart contracts e crittografia; questi temi sono inquadrati tanto nel fenomeno di fintech innovation per i sistemi di pagamento e trasmissione del valore, quanto nell'incontro del movimento cypherpunk con la scuola Austriaca di pensiero economico. Questi contenuti possono essere offerti in eventi e workshop pubblici o privati, aziendali o accademici, sia come intervento breve, sia come singola giornata di workshop o anche come percorso formativo strutturato su più giorni.

L'offerta formativa è basata sul corso Bitcoin and Blockchain Technology tenuto presso Milano-Bicocca ed in altre università; può essere ovviamente adattata alle esigenze del committente ed erogata on-site o in nostre location. Potete contattarci per esplorare assieme le opportunità.

Si parte da una solida ampia introduzione, accessibile a tutti indipendentemente da background, competenze o ambizioni formative, per avanzare fino a temi più tecnici ed implementativi che richiedono una buona attitudine al pensiero logico, matematico e computazionale.

Il training può essere svolto in inglese o italiano; il materiale didattico è in inglese e comprende le slide presentate in aula, i principali libri di riferimento, codice e software open-source, ulteriori risorse di approfondimento. Tale materiale resta a disposizione anche nelle sue evoluzioni successive al momento formativo.

Di seguito una presentazione orientativa di argomenti, propedeuticità e destinatari, organizzata per moduli formativi che possono essere fruiti in versione completa (tre ore) o ristretta (due ore); alcuni moduli comprendono un laboratorio opzionale: si tratta di un'ora aggiuntiva di sperimentazione in aula con portatile e connessione internet.

  1. Introduction to Bitcoin and Blockchain
    • Prerequisites: none; laptop for the lab
    • Audience: c-level executives, managers, researchers, technologists, and developers
    • Topics:
      1. Internet Money
      2. Bitcoin Transactions
      3. About Money
      4. Private Money and the Centralization Dilemma
      5. The Double Spending Problem
      6. Bitcoin as Digital Gold
      7. Bitcoin as Investment Asset
      8. Blockchain Without Bitcoin
      9. Timestamping and Anchoring
    • Lab: bitaddress.org, block explorer, bitcoin wallet (Electrum), digital signature using a bitcoin private key, and OpenTimestamps
  2. Blockchain, Mining, and Distributed Consensus
    • Prerequisites: module 1; laptop for the lab
    • Audience: managers, researchers, technologists, and developers
    • Topics:
      1. Hash Functions
      2. Simplified Digital Currency
      3. Distributed Consensus
      4. Mining
      5. P2P Network
      6. Protocol Governance
    • Lab: mining (partial hash inversion), regtest (Bitcoin Core)
  3. Elliptic Curve Digital Signature Algorithm
    • Prerequisites: none; laptop for the lab
    • Audience: researchers, technologists, and developers
    • Topics:
      1. Modular Arithmetic
      2. Algebra of Sets: Finite Field 𝐹
      3. Elliptic Curves over Real Numbers
      4. Elliptic Curves over a Finite Field 𝐹
      5. Asymmetric Cryptography on Elliptic Curves
      6. Digital Signature Protocol
      7. Elliptic Curve Digital Signature Algorithm
    • Lab: programming with btclib
  4. Advanced Elliptic Curve Cryptography
    • Prerequisites: modules 3; laptop for the lab
    • Audience: researchers, technologists, and developers
    • Topics:
      1. Schnorr Signature and batch validation
      2. Mu(lti)Sig(nature)
      3. Pedersen Commitment
      4. Ring signature
      5. Boneh–Lynn–Shacham (BLS) signature scheme
      6. Confidential Transactions
      7. Range Proof
      8. Bullet Proof
    • Lab: programming with btclib
  5. Wallets: Key Encodings and Deterministic Sequences
    • Prerequisites: modules 1, 2, and 3; laptop for the lab
    • Audience: researchers, technologists, and developers
    • Topics:
      1. Addresses and Wallet Import Formats
      2. Wallets
      3. Deterministic Wallets
      4. Hierarchical Deterministic Wallets: BIP32, 53, 55
      5. Mnemonic Phrase: BIP39 and Electrum
      6. Payment Processors and Exchanges
    • Lab: programming with btclib
  6. Transactions and Blocks
    • Prerequisites: modules 1, 2, 3, and 5; laptop for the lab
    • Audience: researchers, technologists, and developers
    • Topics:
      1. TxIns, TxOs, and UTxO
      2. Bitcoin Script Language
      3. Standard Transaction Scripts
      4. Transactions: Signatures and Smart Contracts
      5. Blocks
    • Lab: Script programming
  7. Monetary Engineering and Alternative Coins
    • Prerequisites: module 1
    • Audience: c-level executives, managers, researchers, technologists, and developers
    • Topics:
      1. Cash, Electronic Money, Central Bank Money, eCash
      2. About Money
      3. Private Money and the Centralization Dilemma
      4. The Double Spending Problem
      5. Bitcoin as Digital Gold
      6. Hayek Money: Elastic Non-discretionary Policy
      7. Hayek Money: Dual Asset Ledger and Proof-of-Payment
      8. Other Cryptocurrencies
      9. Ethereum
  8. Beyond Bitcoin: Between Hype and Reality
    • Prerequisites: module 1; laptop for the lab
    • Audience: c-level executives, managers, researchers, technologists, and developers
    • Topics:
      1. Smart Contracts
      2. Initial Coin Offering
      3. Blockchain Without Bitcoin
      4. Distributed Ledger Technology
      5. Timestamping and Anchoring
    • Lab: OpenTimestamps

I moduli 1, 7, 8 sono fruibili da tutti: c-level, manager funzionali, sviluppatori, ricercatori, appassionati di tecnologia.
Il modulo 2 inizia a scendere nel funzionale: sempre molto apprezzato per la sua chiarezza sulla natura di blockchain e distributed consensus, perde forse un po' di appeal per chi fosse interessato solo ad una visione di alto livello.
I moduli 3 e 4 su curve ellittiche, firma digitale e crittografia avanzata sono molto tecnici, rivolti principalmente ad una audience di ingegneri, matematici, fisici, informatici o comunque persone con buone doti logiche e computazionali.
I moduli 5 e 6 sono tecnici, più orientati quindi verso gli sviluppatori, chi collabora con loro o comunque vuole comprendere anche gli aspetti strettamente tecnologici.

Una giornata generalista può includere il modulo 1 ed a scelta 2, 7 o 8; un workshop di due giorni può caratterizzarsi funzionalmente (moduli 1, 2, 7, 8) o tecnicamente (moduli 1, 2, 3, 5, 6). L'insieme di tutti i moduli è fruibile in quattro giornate, in un corso residenziale intensivo oppure in sessioni distribuite su un periodo più lungo; in quest'ultimo caso, unità formative settimanali di mezza giornata sono la soluzione ottimale per un apprendimento confortevole.