Skip to main content
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
e-Learning - UNIMIB
  • Home
  • My Media
  • More
Listen to this page using ReadSpeaker
English ‎(en)‎
English ‎(en)‎ Italiano ‎(it)‎
 Log in
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Law
  2. Master Degree
  3. Diritto delle Organizzazioni Pubbliche e Private [FSG02A - FSG01A]
  4. Courses
  5. A.A. 2021-2022
  6. 1st year
  1. Smart Contracts, Bitcoin and Blockchain Technology
  2. Summary
Insegnamento Course full name
Smart Contracts, Bitcoin and Blockchain Technology
Course ID number
2122-1-FSG01A002
Course summary SYLLABUS

Course Syllabus

  • Italiano ‎(it)‎
  • English ‎(en)‎
Export

Obiettivi

Comprensione dei principi di funzionamento delle blockchain, delle criptovalute e degli smart contract. Capacità di capire il funzionamento di semplici smart contract. Capacità di scegliere il tipo di blockchain più adatta a seconda della applicazione.

Contenuti sintetici

Nozioni e concetti alla base del funzionamento delle blockchain, delle criptovalute, e degli smart contract. Il corso fornisce inoltre gli strumenti concettuali e teorici che consentono di comprendere il funzionamento delle applicazioni basate su blockchain (DAPPs) presenti sul mercato.

Programma esteso

    1. Introduzione alle blockchain: motivazioni, tipi di blockchain, e loro applicazioni
    2. Blockchain basate sulle transazioni: Bitcoin e altre criptovalute
    3. Crittografia asimmetrica: cifratura, firme digitali, curve ellittiche, funzioni di hash
    4. Qualche dettaglio in più su come funziona la blockchain di Bitcoin
    5. Gli exchange, e i wallet
    6. Gli script di Bitcoin
    7. Blockchain basate su account: Ethereum
    8. Differenze tra la blockchain di Bitcoin e la blockchain di Ethereum
    9. Introduzione agli smart contract: cosa sono, possibili utilizzi e limitazioni
    10. Progettazione e implementazione di smart contract in Solidity
    11. La sicurezza delle blockchain e degli smart contract
    12. La tokenizzazione. Token fungibili e non fungibili (NFT). Gli standard ERC20 e ERC721. Alcuni aspetti legali della tokenizzazione
    13. Algoritmi di consenso
    14. Blockchain permissioned, e costruzione di blockchain private per il mondo enterprise
    15. Notarizzazione, e memorizzazione di documenti
    16. Alcune applicazioni delle blockchain. Architettura e funzionamento di una applicazione decentralizzata (DApp)
    17. Side-chains e cross-chains

Prerequisiti

Nessuno.


Modalità didattica

Lezioni in aula, con esempi svolti (dal docente) al computer.

La lingua di erogazione è l'Italiano.


Materiale didattico

Libri:
    • Imran Bashir. Mastering Blockchain: A deep dive into distributed ledgers, consensus protocols, smart contracts, DApps, cryptocurrencies, Ethereum, and more, 3rd Edition, Packt Publishing, 2020
    • Andreas M. Antonopoulos, Mastering Bitcoin: Programming the Open Blockchain, 2nd Edition. O'Reilly, 2017. https://github.com/bitcoinbook/bitcoinbook
    • Andreas M. Antonopoulos, Mastering Ethereum: Building Smart Contracts and Dapps. O'Reilly, 2018. https://github.com/ethereumbook/ethereumbook

Appunti forniti dal docente.


Periodo di erogazione dell'insegnamento

Secondo semestre A.A. 2021-2022

Modalità di verifica del profitto e valutazione

La verifica dell'apprendimento è basata su un colloquio orale avente per oggetto gli argomenti svolti a lezione.


Orario di ricevimento

Su appuntamento

Export

Aims

Understanding of the principles of operation of blockchains, cryptocurrencies, and smart contracts. Ability to understand the operation of simple smart contracts. Ability to choose the most suitable type of blockchain, depending upon the domain-based application.


Contents

Basic notions and concepts underlying blockchains, cryptocurrencies, and smart contracts. The course also provides the conceptual and theoretical tools that allow the student to understand the operations of blockchain-based applications (DAPPs) which are currently found on the market.


Detailed program

  1. Introduction to blockchains: motivations, types of blockchains, and their applications
  2. Transaction-based blockchains: Bitcoin and other cryptocurrencies
  3. Asymmetric cryptography: encryption, digital signatures, elliptic curves, hash functions
  4. Some further details on how Bitcoin works
  5. Exchanges and wallets
  6. Bitcoin's scripts
  7. Account-based blockchains: Ethereum
  8. Differences between Bitcoin's blockchain and Ethereum's blockchain
  9. Introduction to smart contracts: what they are, possible applications, and limitations
  10. Design and implementation of smart contracts in Solidity
  11. Security aspects of blockchains and smart contracts
  12. Tokenization. Fungible and non-fungible tokens (NFT). The standards ERC20 and ERC721. . Some legal aspects of tokenization
  13. Consensus algorithms
  14. Permissioned blockchains, and the design of private blockchains for enterprise applications
  15. Notarization, and storing documents
  16. Some applications of blockchains. Architecture and operation of a decentralized application (DApp)
  17. Side-chains and cross-chains

Prerequisites

None.

Teaching form

Lectures in the classroom, with examples performed (by the teacher) on a computer.

The teaching language is Italian.


Textbook and teaching resource

Textbooks:

  • Imran Bashir. Mastering Blockchain: A deep dive into distributed ledgers, consensus protocols, smart contracts, DApps, cryptocurrencies, Ethereum, and more, 3rd Edition, Packt Publishing, 2020
  • Andreas M. Antonopoulos, Mastering Bitcoin: Programming the Open Blockchain, 2nd Edition. O'Reilly, 2017. https://github.com/bitcoinbook/bitcoinbook
  • Andreas M. Antonopoulos, Mastering Ethereum: Building Smart Contracts and Dapps. O'Reilly, 2018. https://github.com/ethereumbook/ethereumbook

Lecture notes provided by the teacher.


Semester

Second semester, Academic Year 2021-2022

Assessment method

The learning assessment is based on an oral colloquium, on the subjects exposed in class during the course.

Office hours

On appointment

Enter

Key information

Field of research
INF/01
ECTS
6
Term
Second semester
Activity type
Mandatory
Course Length (Hours)
42
Language
Italian

Staff

    Teacher

  • Alberto Ottavio Leporati
    Alberto Ottavio Leporati

Students' opinion

View previous A.Y. opinion

Bibliography

Find the books for this course in the Library

Enrolment methods

Manual enrolments
Self enrolment (Student)

You are not logged in. (Log in)
Policies
Get the mobile app
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy policy
  • Accessibility
  • Statistics