Vai al contenuto principale
Se prosegui nella navigazione del sito, ne accetti le politiche:
  • Condizioni di utilizzo e trattamento dei dati
Prosegui
x
e-Learning - UNIMIB
  • Home
  • Calendario
  • My Media
  • Altro
Ascolta questa pagina con ReadSpeaker
Italiano ‎(it)‎
English ‎(en)‎ Italiano ‎(it)‎
Ospite
 Login
e-Learning - UNIMIB
Home Calendario My Media
Percorso della pagina
  1. Area Giuridica
  2. Corso di Laurea Magistrale
  3. Diritto delle Organizzazioni Pubbliche e Private [FSG02A - FSG01A]
  4. Insegnamenti
  5. A.A. 2021-2022
  6. 1° anno
  1. Smart Contracts, Bitcoin e Blockchain Technology
  2. Introduzione
Insegnamento Titolo del corso
Smart Contracts, Bitcoin e Blockchain Technology
Codice identificativo del corso
2122-1-FSG01A002
Descrizione del corso SYLLABUS

Syllabus del corso

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

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

Esporta

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

Entra

Scheda del corso

Settore disciplinare
INF/01
CFU
6
Periodo
Secondo Semestre
Tipo di attività
Obbligatorio
Ore
42
Lingua
Italiano

Staff

    Docente

  • Alberto Ottavio Leporati
    Alberto Ottavio Leporati

Opinione studenti

Vedi valutazione del precedente anno accademico

Bibliografia

Trova i libri per questo corso nella Biblioteca di Ateneo

Metodi di iscrizione

Iscrizione manuale
Iscrizione spontanea (Studente)

Ospite (Login)
Politiche
Ottieni l'app mobile
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy
  • Accessibilità
  • Statistiche