Titre : | Academic certificates verification using Blockchain |
Auteurs : | Abdelouaheb Benlagha, Auteur ; Hamza Belaiche, Directeur de thèse |
Type de document : | Monographie imprimée |
Editeur : | Biskra [Algérie] : Faculté des Sciences Exactes et des Sciences de la Nature et de la Vie, Université Mohamed Khider, 2022 |
Format : | 1 vol. (68 p.) / couv. ill. en coul / 30 cm |
Langues: | Anglais |
Résumé : |
Blockchain technology is one amongst the foremost powerful inventions within the previous couple of years.It has an immense result in our way of life , ranging from cryptocurrency exchanging cash to Supply chain and monitoring. In simple words, we can say Blockchain is a system of recording information in a way that makes it hard or impossible to change or hack the system. A blockchain is largely a digital ledger of transactions that are duplicated and distributed across the whole network of laptop systems on the blockchain.Every block within the chain contains a variety of transactions, and every time a new transaction happens on the blockchain, a record of that transaction is added to each participant’s ledger. For our case we can use it for academic credential verification, which is useful for organizations that pay many money and hours per annum to validate new workers and avoid fraudulent credentials, the procedure is slow and pricey with ancient strategies and third party interference, blockchain offers distinctive digital assets that verify the credentials of educational degrees and certifications |
Sommaire : |
Contents Abstract 1 Dedication 3 Acknowledgements 4 Generale introduction 5 1 Blockchain technology 7 1.1 introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Blockchain History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 Blockchain Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.3.1 Decentralised network definition : . . . . . . . . . . . . . . . . . . 8 1.3.2 Advantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3.3 Disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.4 Blockchain definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.5 How it works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.6 Blockchain Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.7 Blockchain characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . 12 1.8 Blockchain types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.8.1 Public blockchain . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.8.2 Private blockchain . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.9 Cryptography in blockchain . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.9.1 symmetric-key cryptography(Private key encryption) . . . . . . . 14 1.9.2 asymmetric-key cryptography(Public Key Encryption) . . . . . . 15 1.9.3 Hash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.9.4 Digital signature . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.10 Blockchain use cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.10.1 Vote . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.10.2 Insurance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.10.3 Medicine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.10.4 Document certification . . . . . . . . . . . . . . . . . . . . . . . . 20 1.10.5 Art . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.10.6 Cryptocurrency . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.11 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 i2 More in Depth 23 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.2 The first application of blockchain (Bitcoin) . . . . . . . . . . . . . . . . 23 2.3 Byzantine Generals Problem . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.3.1 Byzantine Fault Tolerance . . . . . . . . . . . . . . . . . . . . . . 26 2.4 Consensus algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2.4.1 Proof of work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.4.2 Proof of stake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.4.3 Delegated Proof of stake . . . . . . . . . . . . . . . . . . . . . . . 34 2.5 Ethereum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 2.6 Smart contract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 3 Design and implementation 40 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.2 The issue and the objective . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.3 System representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 3.3.1 Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.3.2 Web service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.3.3 Blockchain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.4 Global architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.5 Use case diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.6 Sequence diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 3.6.1 Certificate holder sequence diagram . . . . . . . . . . . . . . . . . 44 3.6.2 Verifier sequence diagram . . . . . . . . . . . . . . . . . . . . . . 45 3.7 Class diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.8 Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.8.1 Operating System . . . . . . . . . . . . . . . . . . . . . . . . . . 46 3.8.2 Ganache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.8.3 Truffle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.8.4 Node js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.8.5 Web3.js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.8.6 Metamask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.8.7 Visual Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.8.8 HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.8.9 CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.8.10 JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.8.11 Solidity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.9 Configuration and Implementation . . . . . . . . . . . . . . . . . . . . . 51 3.9.1 Truffle initiation . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.9.2 Ganach setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.9.3 Metamask connection . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.10 Block structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.11 Application interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3.11.1 Adding a certificate . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3.11.2 Verifying a certificate . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.12 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 General conclusion |
Disponibilité (1)
Cote | Support | Localisation | Statut |
---|---|---|---|
MINF/692 | Mémoire master | bibliothèque sciences exactes | Consultable |