Titre : | Blockchain-Based Application For Untampered Voting |
Auteurs : | ABDELALI BENNADJI, Auteur ; Fayçal Guerrouf, 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, 2023 |
Format : | 1 vol. (60 p.) / ill., couv. ill. en coul / 25 cm |
Langues: | Français |
Langues originales: | Français |
Mots-clés: | Blockchain, E-voting, Smart contract, Ethereum, Crypto-currency. |
Résumé : |
L’organisation d’élections équitables et transparentes est un aspect essentiel detoute société démocratique. Cependant, les systèmes de vote traditionnels ont étéconfrontés à de nombreux défis, notamment des préoccupations concernant la fal-sification, la fraude et le manque de transparence. La technologie blockchain offre une solution prometteuse pour résoudre ces problèmes et renforcer l’intégrité dessystèmes de vote. Ce résumé présente une vue d’ensemble d’une application basée sur la blockchain conçue pour faciliter le vote non falsifié.L’application proposée tire parti de la nature décentralisée de la blockchain pourgarantir la transparence, la sécurité et la confiance tout au long du processus devote. En utilisant un registre distribué, l’application permet la création d’un en-registrement immuable de chaque vote, empêchant toute modification ou altération non autorisée. La transparence de la blockchain permet la vérification et l’auditen temps réel des résultats du vote par toutes les parties prenantes, y compris les électeurs, les fonctionnaires électoraux et les observateurs indépendants. L’application basée sur la blockchain aborde également la question de l’authentifi-cation des électeurs. En mettant en œuvre un système décentralisé de gestion de l’identité, elle garantit que seuls les électeurs éligibles peuvent participer à l’élection.Ce système peut intégrer diverses méthodes d’identification, telles que la biométrieou les identités numériques émises par le gouvernement, afin d’établir unprocessusd’authentification robuste et sécurisé.En conclusion, une application basée sur la blockchain pour le vote non falsifiéfournit une solution prometteuse pour améliorer l’intégrité et la fiabilité des pro-cessus électoraux. En tirant parti de la nature décentralisée et transparente de la blockchain, cette application garantit un vote sécurisé et vérifiable, protégeant ainsiles principes de la démocratie à l’ère numérique. |
Sommaire : |
List of Figures iv General Introduction 1 1 Blockchain Technology 3 1.1 Introduction . . . . . . . . . . . . . 3 1.2 Blockchain Definition . . . . . . . . 4 1.3 Blockchain History . . . . . . . . . . . . . . . . 4 1.4 Types of Blockchain Architecture . . . . .. . . . . 5 1.5 Blockchain Structure . . . . . . . . . . .. . . . . 7 1.5.1 Blockchain core architecture . . . . . . . . . 8 1.6 Blockchain Layers . . . . . . . . . . . . . . 8 1.7 Blockchain Working . . . . . . . . . . 10 1.8 Consensus Protocols . . . . . . .. . . . . . . 11 1.8.1 Proof of Work (PoW) . . . . . . . .. . . . 11 1.8.2 Proof of Stake (PoS) . . . . . . . . . . . . 11 1.9 Cryptography in Blockchain . . . . . . . . . . . . . . . 12 1.10 Types of Cryptography . . . . . . . . . . . . . 12 1.10.1 Symmetric-Key Cryptography . . . . . . . . . . . . . . . . . . 12 1.10.2 Asymmetric-Key Cryptography . . . . . . . . . . 13 1.10.3 Hash Functions . . . . . . . . . . . . . . . . . . 13 1.11 Uses of blockchain . . . . . . . . . . . . . 14 1.11.1 Electronic Voting . . . . . . . . . . . . . . . . . . 14 1.11.2 Supply Chain Management . . . . . . . . . . . . . 14 1.11.3 Healthcare . . . . . . . . . . . . . . . . . . . . . 14 1.11.4 Peer-to-Peer Transactions . . . . . . . . . 14 1.12 Smart Contracts . . . . . . . . . . . . . 15 1.13 Advantages and Disadvantages of Blockchain . . . . . . 15 1.13.1 The advantages of the Blockchain . . . . . . . . 15 1.13.2 The Blockchain disadvantages . . . . . . . . . . 15 1.14 Blockchain today . . . . . . . . . . . . 16 1.14.1 Cryptocurrencies . . . . . . . . . 16 1.14.1.1 Bitcoin . . . . . . . . . . . . 16 1.14.1.2 Ethereum . . . . . . . . 16 1.15 Conclusion . . . . . . . . . . . 17 2 Electoral Systems 18 2.1 Introduction . . . . . . . . . . . . . 18 2.2 Definition of elections . . . . . . .. . . 18 2.3 History of Elections . . . . . . . . . . 18 2.4 Features and Characteristics of Electoral Systems . . . . . . . . . . . . 19 2.5 Types of Electoral System . . . . .. . . . . . . . 20 2.5.1 Single winner systems . . . . . . .. . . . . . 20 2.5.2 Multiple winners systems . . . . . . . . . . . 21 2.6 Advantages and disadvantages of Electoral systems . . . . . . . . . . 21 2.6.1 Advantages of Elections: . . . . . . . . . . . 21 2.6.2 Disadvantages of Elections . . . . . . . . . . . . 22 2.7 Electronic voting . . . . . . .. . . . . . . 23 2.7.1 Definition of Electronic voting . . . . . . . . . . 23 2.7.2 E-voting Stranght Points . . . . . . .. . . . . . 23 2.7.3 E-voting Weaknesses Points . . . . . . . . . . . . . . 24 2.8 Blockchain-based E-Voting system . . . . . . . . . . . . . . . . 24 2.9 Examples of Blochchain in Voting systems . . . . . . . . . . . . 25 2.9.1 Agora . . . . . . . . . . . . . 25 2.9.2 Netvote . . . . . . . . . . . . . . 25 2.9.3 Votem . . . . . . . . . . . . . . . 25 2.9.4 Voatz . . . . . . . . . . .. . . . . . . . 25 2.9.5 Horizon State . . . . . .. . . . . . 26 2.10 Conclusion . . . . . . . . . . . . . . 26 3 Design of blockchain-based e-voting 27 3.1 Introduction . . . . .. . . . . . . . 27 3.2 Global Architecture . . . . . . . . . . 27 3.2.1 Interaction of user Sign in . . . . . . . . . . . . . . . . . . . . . 28 3.2.2 Interaction to cast a vote . . . . . . . . . . . . . . . . . . . . . . 29 3.2.3 Interaction of administrator with the system . . . . . . . . . . 29 3.3 Use case System . . . . . . . . . . . . 29 3.4 Detailed architecture . . . . . . . . . . . . . . . . 30 3.4.1 User Sequence Diagram . . . . . . . . . . . . . . . . . . . . . . 30 3.4.2 Administrator Sequence Diagram . . . . . . . . . . . . . . . . 31 3.4.3 Data Flow Diagram . . . . . . . . . . . . . . . 31 3.5 Conclusion . . . . . . . . . . . . . . . . 4 Implementation 33 4.1 Introduction . . . . . . . . . . . . . . . . . 33 4.1.1 System Configuration and Operating System . . . . . . . . . . 33 4.1.2 Node.js . . . . . .. . . . . . . . . . 33 4.1.3 Ganache . . . . . . . .. . . . . . . . . 34 4.1.4 Metamask . . . . . . . . . . . . . 34 4.1.5 Remix IDE . . . . . . . . . . . . . . . . . 35 4.1.6 Truffle . . . . . . . . . . . . . . . 35 4.1.7 Web.js . . . . . . . . . . . . . . . 36 4.1.8 React.js . . . . . . . . . . . . . . . . 36 4.1.9 Visual Studio Code . . . . . . . . . 37 4.1.10 JavaScript . . . . . . . . . . . . . . 37 4.1.11 Solidity . . . . . . . . .. . . . 38 4.2 Environment configuration . . . . . . 38 4.3 Writing Smart Contract . . . . . . . . . . . . . 40 4.4 Compiling the Smart Contract . . . . . .. . . . . 47 4.5 Migration and Deployment of the smart contract . . . . . . . . . . . 48 4.6 Front-end/User Interface . . . . . . . 51 4.7 System Interface . . . . . . . 51 4.8 Conclusion . . . . . 56 General Conclusion 57 Bibliographie 58 |
Type de document : | Mémoire master |
Disponibilité (1)
Cote | Support | Localisation | Statut |
---|---|---|---|
MINF/786 | Mémoire master | bibliothèque sciences exactes | Consultable |