🎓
Hackaton_Starton
🏆
Goal of the Hackaton
French Persona
Aujourd'hui, l'utilisation de la blockchain se développe dans de très nombreux domaines : finance, santé, art..., mais il peut être compliqué de l’appréhender et de l'utiliser.
Très intéressés par le domaine de la blockchain et du web3, qui offre des possibilitées nouvelles, qui vont bien au-delà de notre imagination et des possibles, Burn Spirit, une société composée d'étudiant dans l'IT a relevé le défi de réaliser un projet qui vise à nous projeter et accélérer la transition du web2 au web3, pour un avenir décentralisé.
Contextualisation
Notre idée est portée sur un sujet d'actualité récent : le vote.
📩
Le vote suscite plusieurs problématiques à notre époque : Falsification
L'écologie
Nous sommes convaincus que la blockchain est la solution, car en votant de cette manière, cela permettrai dans un premier temps de gaspiller moins de papier utilisé pour inscrire le nom des candidats. Cette problématique écologique est d'autant plus importante à notre époque concernant ce qui se passe climatiquement.
La falsification
Dans un second temps, le vote décentralisé nous permet de garantir une élection non truqué, grâce au principe de fonctionnement de la blockchain. Cela garantirai une élection sûr et transparente notamment dans certains gouvernement.
L'abstention
Enfin, le vote "classique", suscite un problème majeur concernant le taux d'abstention, desfois par conviction ou plus couramment par soucis de fainéantise. Imaginons que vous soyez occupées à une affaire le dimanche, ou bien qu'il fasse beau, que vous n'ayez donc pas le temps de vous déplacer au bureau de vote ou de faire une procuration. C'est typiquement concretement ce qu'il s'est passé pour certains d'entre nous.
Le vote décentralisé serait donc une solution respectant l'anonymat des votants, écologiquement correcte pour répondre aux problématiques que rencontre le vote traditionnel.
C'est pour cela que nous avons décidé de créer une application mobile
Workflow
Pour créer notre application, nous avons utilisé Flutter.
L'identifiaction a notre application se fait via France Connect, la solution proposée par l'État pour sécuriser et simplifier la connexion à plus de 1000 services en ligne (demande de passeport, carte nationale d'identité...).
Afin d'accomplir notre tâche, nous avons déployé un Smart contrat, qui donne un accès direct à une blockchain qui permettra aux citoyens de pouvoir voter pour un candidat. Le smart contract est un logiciel qui ne dispose en tant que tel d'aucune autorité juridique, ainsi, le lien avec le blockchain était une idée primordiale.
Les plus grands défis technique que nous avons rencontrés sont le Smart contract, car il nous impose l'apprentissage d'une nouvelle technologique, qui est Solidity, ainsi que relier cela à Meta Mask.
Pour pallier à cela, nous avons solicité l'aide de l'équipe de Starton, ainsi que diviser le travail entre les différents membres du groupe.
Pour préciser l'aspect décentralisé, en aucuns cas des données de l'utilsateur concernant la blockchain
Pour une meilleur compréhension, je vous invite grandement à visionner cette petite vidéo explicative
Steps
L'utilisateur peut utiliser l'application sans être connecté pour regarder le programme des candidats ou regarder les résultats.
Il va cliqué sur l'onglet "vote", va choisir un candidat pour lequel voter puis va venir s'identifier avec France connect pour savoir si il a déjà voté et si il est bien français (Toute interaction avec le back-end ou les bases de données s'arrentent ici).
L'utilisateur va être confronté à une authentification biométrique (face ID) pour s'assurer qu'aucunes usurpation n'est possible.
Il va ensuite s'authentifier sur meta mask avec l'OAuth 2.0 pour que l'on puisse envoyer son wallet et son vote au smart contract.
Il valide son vote et la transaction va être executé par le smart contract, le vote de l'utilisateur est bien public sur la blockchain.
Par la suite nous récuperons seulement la réponse du smart contract que nous enregistrons, c'est un champ booléan qui nous indique si oui (1) l'utilisateur a voté ou non (0).
Voici une DEMO
Built With
⬇️
Installation SETUP.md
Go toLicense
Distribué sous licence MIT, voir LICENSE
pour plus d'informations.
Contacts
Kaan Bouldoires [email protected]
Mohammed Chihi [email protected]
Valentin Fouillet [email protected]
Illyas Chihi [email protected]
Antoine Gavira-Bottari [email protected]
Thomas Willson [email protected]