ALMA MATER STUDIORUM · UNIVERSITA` DI BOLOGNA SCUOLADISCIENZE CorsodiLaureainInformaticaperilManagement Blockchain tra anonimato e fama Relatore: Presentata da: Chiar.mo Prof. Giuseppe Pedulla` Davide Sangiorgi II Sessione 2016/2017 iii Un ringraziamento speciale va ai miei genitori senza i quali non avrei mai iniziato questocorsodilaurea,ealmioamicoVinssenzailqualenonl’avreimaifinita. GiuseppePedulla` v Indice 1 Comeesseresicurionline 1 1.1 Lanecessita` diesserealsicuro . . . . . . . . . . . . . . . . . . . 1 1.2 Lasicurezzastanell’anonimato . . . . . . . . . . . . . . . . . . 2 1.2.1 Onionrouting . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Lacrittografiacomestrumentodisicurezzanellecomunicazioni 5 2.1 Introduzioneallacrittografia . . . . . . . . . . . . . . . . . . . 5 2.2 Lacrittografia . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2.1 Proprieta` dellacrittografia . . . . . . . . . . . . . . . . . 7 2.3 Crittografiaachiaveprivata . . . . . . . . . . . . . . . . . . . . 9 2.3.1 DES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.4 Crittografiaachiavepubblica . . . . . . . . . . . . . . . . . . . 10 2.4.1 Lafirmadigitale . . . . . . . . . . . . . . . . . . . . . . 10 3 Lacrittografianellablockchain 15 3.1 GlialberidiMerkle . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.2 IlP2Pnellablockchain . . . . . . . . . . . . . . . . . . . . . . . 17 3.3 Lefunzionihash . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.4 Undatabasechiave-valore . . . . . . . . . . . . . . . . . . . . . 20 3.5 Crittografiaasimmetricanellablockchain . . . . . . . . . . . . 21 3.5.1 Comesicalcolaunachiaveprivata . . . . . . . . . . . . 21 3.5.2 Sistemadicifraturadellechiaviprivate . . . . . . . . . 22 3.5.3 Sistemadicifraturadellechiavipubbliche. . . . . . . . 23 3.6 Lafiducianellacommunityeilruolodelconsenso . . . . . . . 24 3.6.1 Laproof-of-work . . . . . . . . . . . . . . . . . . . . . . . 24 4 Blockchain 27 4.1 Un’introduzioneallablockchain . . . . . . . . . . . . . . . . . 27 4.2 Definizionediblockchain . . . . . . . . . . . . . . . . . . . . . 28 4.2.1 Undatabaseperletransazioni . . . . . . . . . . . . . . 29 4.2.2 Ilnuovolibromastro? . . . . . . . . . . . . . . . . . . . 30 4.3 Cos’e` lablockchain . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.3.1 Cos’e` undatabasedistribuito? . . . . . . . . . . . . . . 31 4.3.2 Ilblocco . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.3.3 Comesicolleganoiblocchi . . . . . . . . . . . . . . . . 35 4.4 Ilibrimastrodistribuiti . . . . . . . . . . . . . . . . . . . . . . . 36 4.4.1 Innovazionidel”distributedledger” . . . . . . . . . . . 37 4.4.2 Unnuovoconcetto: illibromastroe` ditutti . . . . . . . 38 4.4.3 Unnuovo,grandelibromastro . . . . . . . . . . . . . . 39 4.5 Blockchainprivateepubbliche . . . . . . . . . . . . . . . . . . 41 vi 4.5.1 Blockchainpubbliche . . . . . . . . . . . . . . . . . . . . 42 4.5.2 Blockchainprivate . . . . . . . . . . . . . . . . . . . . . 42 5 Conclusioni 45 vii Elenco delle figure 2.1 Cifrariodicesare . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 AttacchiDdOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.3 Crittografiaachiaveprivata . . . . . . . . . . . . . . . . . . . . 9 2.4 Crittografiaachiavepubblica . . . . . . . . . . . . . . . . . . . 11 3.1 Crittografiadellablockchain . . . . . . . . . . . . . . . . . . . . 15 3.2 AlberoMerklebilanciato . . . . . . . . . . . . . . . . . . . . . . 16 3.3 EfficienzadeglialberidiMerkle . . . . . . . . . . . . . . . . . . 17 3.4 Differenzatraarchitetture . . . . . . . . . . . . . . . . . . . . . 18 3.5 Funzionenoniniettiva . . . . . . . . . . . . . . . . . . . . . . . 19 3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.7 Sistemadellechiavi . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.8 Graficodiunacurvaellittica . . . . . . . . . . . . . . . . . . . . 22 3.9 Esempiodiunachiaveprivatacifrata;fonte: MasteringBitcoin 22 3.10 Funzionedicifraturadellechiavipubbliche . . . . . . . . . . . 23 4.1 Undatabaseperletransazioni . . . . . . . . . . . . . . . . . . . 29 4.2 Raffigurazionedellablockchain . . . . . . . . . . . . . . . . . . 31 4.3 Databasedistribuito . . . . . . . . . . . . . . . . . . . . . . . . 32 4.4 Ilblocco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.5 Headerdelblocco . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.6 Formadiunblocco;fonte: Masteringbitcoin . . . . . . . . . . . 36 4.7 Ledgers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.8 Dallibromastroallablockchain . . . . . . . . . . . . . . . . . . 39 4.9 Funzionamentodellablockchain . . . . . . . . . . . . . . . . . 40 ix ”Ecco che cosa ha fatto per me il Signore, nei giorni in cui si e` degnato di togliere la mia vergogna tra gli uomini”.(Lc 1,25)
Description: