Training and Education


DGI offers training and education on bitcoin, blockchain, distributed ledger, smart contracts, and cryptography; these topics are framed as fintech innovation in the payment/value-transmission systems and as cultural meeting between the cypherpunk movement and the Austrian school of economics. This content can be offered in corporate or academic settings, public or private events, as short talk, single day workshop, or structured training program over few days.

The program content is based on the Bitcoin and Blockchain Technology course taught at Milano-Bicocca and other universities; of course, it can be customized depending on requirements, offered by us and/or our Educational Program Partners, realized on-site at your premises or at our own locations. Please get in touch to explore together the available opportunities.

A solid broad introduction comes first, accessible to people with any background, skill level, or learning ambition, gradually stepping up to more advanced tech/dev topics that require an increasingly good attitude for logical, mathematical, and computational thinking.

The training material includes slides, reference books, open-source code and software, and additional links and resources for deep-diving. This material remains always available, including its future updates and evolutions.

Please find below a description of topics, prerequisites and intended audience, organized in training modules that can be enjoyed in full (3 hours) or short (2 hours) sessions; some modules include an optional lab session requiring an additional hour for hands-on activity with laptop and internet connection.

  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

Modules 1, 7, 8 can be enjoyed by everybody: c-level executives, managers, developers, researchers, and tech enthusiasts.
Module 2 starts a deeper analysis at functional and technical level: always appreciated for its crucial insights about the real nature of blockchain and distributed consensus, it possibly loses some appeal for those only interested in a high-level overview.
Modules 3 and 4 on elliptic curves, digital signature, and advanced cryptography are heavy on mathematics and intended for an audience of computer scientists, engineers, and people with good logical and computational skills.
Modules 5 and 6 are quite technical, mostly for developers and people planning to work side-by-side with them or interested in gaining a good understanding of the technologic aspects.

A training day for an assorted audience could include module 1 plus a choice of 2, 7 or 8; a two days' workshop could focus on functional understanding (modules 1, 2, 7, 8) o tech topics (modules 1, 2, 3, 5, 6). All modules can be experienced in 4 days, in a full-time intensive residency or over a longer period as a sequence of workshops; in the latter case, eight weekly half-day sessions are probably the optimal pace for comfortable learning.