Scheda programma d'esame
PEER TO PEER SYSTEMS AND BLOCKCHAINS
(PEER TO PEER SYSTEMS)
LAURA EMILIA MARIA RICCI
Anno accademico2018/19
CdSINFORMATICA
Codice261AA
CFU6
PeriodoSecondo semestre
LinguaInglese

ModuliSettoreTipoOreDocente/i
SISTEMI PEER TO PEERINF/01LEZIONI48
LAURA EMILIA MARIA RICCI unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Al termine del corso, lo studente avrà acquisito conoscenze in merito alla progettazione di sistemi distribuiti su larga scala.

Knowledge

The student will acquire knowledge relative to the development of distributed systems.

 

Modalità di verifica delle conoscenze

Per l'accertamento delle conoscenze saranno svolte delle due prove in itinere, un midterm ed un final term

Assessment criteria of knowledge

The student will do two proofs, a midterm and a final term, during the course.

Capacità

Al termine del corso:

  • lo studente saprà sviluppare una applicazione distribuita
  • lo studente saprà utilizzare strumenti per l'analisi di reti complesse
Skills

At the end of the course, the student

  • will be able to develop a distributed application
  • will be able to analyse a complex network
Modalità di verifica delle capacità
  • Saranno effettutae delle verifiche intermedie
  • Sarà svolto un pogetto finale per la verifica della acquisizione delle capacità
Assessment criteria of skills

A final project will assess the acquisition of the skills.

Comportamenti
  • Lo studente potrà acquisire e/o sviluppare sensibilità alle problematiche relative all'uso di criptomonete
Behaviors

Acquisition of sensibility relative to the use of cryptocurrencies.

Modalità di verifica dei comportamenti
  • Il mid term e final term dovranno essere accompagnati da brevi relazioni
Assessment criteria of behaviors

Report for the mi term and for the final term

Prerequisiti (conoscenze iniziali)
  • Reti di Calcolatori
  • Algoritmica
  • Conoscenza di almeno un linguaggio di programmazione
Prerequisites
  • Computer Networks
  • Algorithms
  • Programming skills
Indicazioni metodologiche
  • lezioni frontali
  • sito di e-learning contenente materiale didattico
  • progetto didattico
  • prove intermedie
  • il corso è tenuto in lingua inglese
Teaching methods
  • lessons
  • intermediate proofs
  • language: English
  • e-learning site reporting didactic material
Programma (contenuti dell'insegnamento)

P2P Topologies

  • Peer to Peer (P2P) systems: general concepts
  • Unstructured Overlays: Flooding, Random Walks, Epidemic Diffusion
  • Structured Overlays: Distributed Hash Tables (DHT), Routing on a DHT

Case Studies:

  • BitTorrent as a Content Distribution Network: KAD implementation of the Kademlia DHT, game-based cooperation

Complex Network for the analysis of P2P systems

  • Network models
  • Random Graphs and Small Worlds
  • Small World navigability: Watts Strogatz and Kleinberg.
  • Complex networks navigability

Cryptocurrencies and Blockchains

  • basic concepts: a review of basic cryptographic tools (digital signatures, cryptographic hash, Merkle trees.,..)
  • blockchains: de finitions
  • distributed consensus: de nitions

the Bitcoin blockchains

  • Nakamoto consensus
  • Bitcoin mining mechanism
  • pseudoanonymity: traceability and mixing

the Bitcoin P2P Network

  • Bitcoin ecosystem
  • scalability issues

Ethereum: programing smart contracts with Solidity

Applications of blockchains

  • Ethereum: programming smart contracts
  • Blockchain 1.0: cryptocurrencies
  • Blockchain 2.0: financial instruments built on cryptocurrencies
  • Blockchain 3.0: applications beyond cryptocurrencies: voting, IoT
Syllabus

P2P Topologies

  • Peer to Peer (P2P) systems: general concepts
  • Unstructured Overlays: Flooding, Random Walks, Epidemic Diffusion
  • Structured Overlays: Distributed Hash Tables (DHT), Routing on a DHT

Case Studies:

  • BitTorrent as a Content Distribution Network: KAD implementation of the Kademlia DHT, game-based cooperation

Complex Network for the analysis of P2P systems

  • Network models
  • Random Graphs and Small Worlds
  • Small World navigability: Watts Strogatz and Kleinberg.
  • Complex networks navigability

Cryptocurrencies and Blockchains

  • basic concepts: a review of basic cryptographic tools (digital signatures, cryptographic hash, Merkle trees.,..)
  • blockchains: de finitions
  • distributed consensus: de nitions

the Bitcoin blockchains

  • Nakamoto consensus
  • Bitcoin mining mechanism
  • pseudoanonymity: traceability and mixing

the Bitcoin P2P Network

  • Bitcoin ecosystem
  • scalability issues

Bitcoin Extensions/alternatives: altcoins, sidechains, the StellarConsensus Protocol, Ripple

Ethereum: programming smart contracts

Applications of blockchains

  • Ethereum: programming smart contracts
  • Blockchain 1.0: cryptocurrencies
  • Blockchain 2.0: financial instruments built on cryptocurrencies
  • Blockchain 3.0: applications beyond cryptocurrencies: voting, IoT
Bibliografia e materiale didattico

Materiale fornito dal docente e presente sul sito di e-learning

Indicazioni per non frequentanti

Nessuna indicazione

Non-attending students info

No information.

Modalità d'esame

Progetto O scritto + Orale. Il superamento del mid term e del final term esonera lo studente dall'orale

Assessment methods

Written exam OR Final project + oral exam. Oral exam can be substituted bt mid+final term.

Altri riferimenti web

Nessuno

Additional web pages

No one.

Note

Nessuna

Notes

No one.

Ultimo aggiornamento 04/10/2018 22:13