Training Program


We regularly offer training and education in Italian or English about Bitcoin, crypto-assets, blockchain, distributed ledger, smart contracts, and cryptography: the program is based on the Bitcoin and Blockchain Technology course taught at Milano-Bicocca and other universities. The content can be customized depending on requirements: for corporate or academic settings, public or private events, as a short talk, a single day workshop, or a structured learning program over few days. The training can be offered directly by us or through our Educational Program Partners, realized on-site at your premises or at our own locations.

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.

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.

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. Cash, Electronic Money, Central Bank Money, eCash
      2. Internet Money
      3. Bitcoin Transactions
      4. About Money
      5. Private Money and the Centralization Dilemma
      6. The Double Spending Problem
      7. Bitcoin as Digital Gold
      8. Bitcoin as Investment Asset
      9. Financial Services
    • Lab: bitaddress.org, block explorer, Bitcoin wallet (Electrum), and digital signature using a Bitcoin private key.
  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. Proof of Work
      5. Mining
      6. P2P Network
      7. 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. Discrete Logarithm Problem on Finite Cyclic Groups
      2. Modular Arithmetic
      3. Algebra of Sets: Finite Fields
      4. Elliptic Curves over Real Numbers
      5. DLP on Elliptic Curves Over Finite Fields
      6. Asymmetric Cryptography on Elliptic Curves
      7. Digital Signature Protocol
      8. 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. Base58 Encoding
      2. Addresses and Wallet Import Formats
      3. Bitcoin Message Signing
      4. Wallet Wallet Solutions
      5. Deterministic Key-pair Chains
      6. Hierarchical Deterministic Key pair Chains: BIP32
      7. Extending BIP32: BIP43 and BIP44
      8. Mnemonic Phrase: BIP39 and Electrum
    • 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 UTxOs
      2. Bitcoin Script Language
      3. Standard Transaction Scripts
      4. Signatures and Smart Contracts
      5. Blocks
    • Lab: Script programming
  7. Monetary Engineering
    • Prerequisites: module 1
    • Audience: c-level executives, managers, researchers, technologists, and developers
    • Topics:
      1. Hayek Money: Elastic Non-discretionary Policy
      2. Hayek Money: Dual Asset Ledger and Proof-of-Payment
  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. Other Cryptocurrencies
      2. Smart Contracts
      3. Initial Coin Offering
      4. Blockchain Without Bitcoin
      5. Distributed Ledger Technology
      6. Timestamping and Anchoring
      7. Financial Products and Services
    • OpenTimestamps 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 for people that interact with developers or are 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.

Please contact us to explore the available opportunities.