BLOCKCHAIN AND DISTRIBUTED LEDGER TECHNOLOGIES

Obiettivi formativi

Obiettivi generali: Le blockchain costituiscono un paradigma nuovo e rivoluzionario per la gestione distribuita dei sistemi transazionali. Una blockchain è un protocollo per la gestione di ledger distribuiti, ossia per la memorizzazione decentralizzata di una sequenza di transazioni (ledger) a prova di manomissione, mantenuta e verificata dai nodi che partecipano alla rete. Una combinazione di reti peer-to-peer, consenso automatico, crittografia e meccanismi di mercato è al centro delle blockchain, che garantiscono così l'integrità e la trasparenza dei dati. Un numero crescente di piattaforme blockchain fornisce il supporto per i cosiddetti smart contract, ossia codice eseguibile che esprime come condurre attività di business tra le parti contraenti (ad esempio, trasferire beni digitali se una condizione è soddisfatta). La progettazione di un'applicazione sicura, verificabile ed efficiente basata su blockchain richiede la capacità di architettare correttamente le strutture comportamentali tra le parti coinvolte. Il corso copre in dettaglio i principi e le tecnologie alla base delle piattaforme blockchain e le proprietà che garantiscono, da un lato, e mira a fornire i mezzi per la creazione e l'analisi di soluzioni e applicazioni basate su blockchain, dall'altro. Obiettivi specifici: Il corso affronta quattro argomenti principali: 1) fondamenti delle blockchain e delle tecnologie distributed ledger; 2) programmazione dei contratti intelligenti; 3) sviluppo di un'applicazione blockchain-based full-stack; 4) valutazione e analisi di un'applicazione blockchain-based. Conoscenza e comprensione: Gli studenti apprenderanno le basi delle tecnologie blockchain e l'interazione delle tecniche sottostanti che portano all'immutabilità, persistenza e sicurezza delle piattaforme blockchain. Inoltre, impareranno a codificare smart contract e creare applicazioni decentralizzate (DApps) full-stack. Per progettare correttamente le DApps e i sistemi di token su cui si basano, gli studenti applicheranno i principi di modellazione ed esecuzione di processi. Sarà fornita anche una panoramica delle sfide di cybersecurity inerenti. Inoltre, i discenti guarderanno gli argomenti trattati da un punto di vista legislativo, al fine di considerare i vincoli normativi tra cui il rispetto della privacy degli utenti. Applicazione di conoscenza e comprensione: Al termine del corso, gli studenti avranno ottenuto una elevata comprensione dei pilastri fondamentali delle tecnologie per distributed ledger e delle blockchain. Avranno altresì la capacità di progettare e implementare sistemi basati su blockchain. Inoltre, produrranno report ad elevato livello informativo progettati per gli stakeholder delle applicazioni decentralizzate. Autonomia di giudizio: Gli studenti svilupperanno la capacità di valutare la qualità delle applicazioni decentralizzate e delle soluzioni basate su blockchain in generale dal punto di vista dell'affidabilità, della solidità comportamentale, del costo di esecuzione, dell'equilibrio del carico on-chain e off-chain, dell'applicabilità, della sicurezza informatica e della privacy. Abilità comunicative: Gli studenti impareranno a documentare le loro scelte progettuali, anche attraverso l'uso di diagrammi e reportistica. Avranno anche acquisito la capacità di preparare presentazioni su argomenti scientifici. Capacità di apprendimento: Le nozioni acquisite durante il corso forniranno agli studenti una solida base di conoscenza per poter ulteriormente approfondire gli aspetti più tecnici, e per mantenersi autonomamente informati sui continui sviluppi e aggiornamenti sulle blockchain e le distributed ledger technologies.

Canale 1
MASSIMO LA MORGIA Scheda docente

Programmi - Frequenza - Esami

Programma
Bitcoin Hash and Data Structure based on Hash Digital Signatures Consensus on Bitcoin and PoW Incentives in Bitcoin Mining and mining pool 51% Attacks Bitcoin Transactions Bitcoin Script and scripts applications Bitcoin Blocks Soft and Hard Forks Wallet and Bitcoin Storage Ethereum EOA and Smart Contracts Accounts PATRICIA Merkle Trie Gas and Gas Fee Ethereum PoS Consensus protocols, Casper and GHOST Ethereum Incentive Layer MEV Advanced Topics: Pump and Dump. NFT WashTrading. Liquidity Pool and Rug Pull.
Prerequisiti
Non sono
Testi di riferimento
Bitcoins: Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction, Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller, and Steven Goldfeder. Bitcoin: A Peer-to-Peer Electronic Cash System, Satoshi Nakamoto. Link: https://bitcoin.org/bitcoin.pdf Ethereum: White paper: https://ethereum.org/en/whitepaper/ Ethereum documentation: https://ethereum.org/en/developers/docs/ Ethereum book: https://eth2book.info Additional materials: Mastering Bitcoin: https://github.com/bitcoinbook/bitcoinbook/tree/develop Mastering Ethereum: https://github.com/ethereumbook/ethereumbook
Frequenza
Sebbene la presenza in aula non sia obbligatoria, quest'ultima è fortemente consigliata.
Modalità di esame
L'esame è composto da due parti: Esame Scritto e Attività Pratiche. 1. Esame Scritto: L'esame scritto si terrà nella data d'esame programmata. Consiste in 3 o 4 domande aperte. 2. Attività Pratiche: Queste attività prevedono applicazioni pratiche dei concetti di blockchain e saranno assegnate durante il corso. Requisiti per il Superamento Esame Scritto: È richiesto un punteggio minimo di 18 punti per superare questa parte. Attività Pratiche: Il completamento di tutte le attività assegnate è obbligatorio per superare questa parte.
Bibliografia
The doge of wall street: Analysis and detection of pump and dump cryptocurrency manipulations: Massimo La Morgia, Alessandro Mei, Francesco Sassi, Julinda Stefa A game of NFTs: Characterizing NFT wash trading in the Ethereum blockchain: Massimo La Morgia, Alessandro Mei, Alberto Maria Mongardini, Eugenio Nerio Nemmi Token Spammers, Rug Pulls, and Sniper Bots: An Analysis of the Ecosystem of Tokens in Ethereum and in the Binance Smart Chain : Federico Cernera, Massimo La Morgia, Alessandro Mei, Francesco Sassi
Modalità di erogazione
Lezioni in presenza.
  • Codice insegnamento10600490
  • Anno accademico2024/2025
  • CorsoComputer Science - Informatica
  • CurriculumCurriculum unico
  • Anno2º anno
  • Semestre1º semestre
  • SSDINF/01
  • CFU6
  • Ambito disciplinareAttività formative affini o integrative