C
OMMISSARIAT A L’
ENERGIEA
TOMIQUE ET AUX ENERGIES ALTERNATIVESDRHRS / SCP
B
UREAU DESS
TAGES DEL
ONGUED
UREE ENE
NTREPRISEL
AURENCELOURS / CEA Saclay 01.69.08.20.90
stages@cea.fr
http://www.cea.fr/ressources_humaines/stages_et_formation_en_alternance
Centre : Pôle ou Direction : Dépt/Service/Labo :
ex : IRAMIS/SPAM/EDNA (sans espaces)
_______________________________________________________________ Imputation
Encadrement
Nom - Prénom de l’ingénieur responsable :
Tél (8 chiffres) : Mail :
Nom du chef de laboratoire : Tél. :
Titre du stage (visible sur internet)
Sujet confié au stagiaire / objectifs du stage
(suggestion : ajouter les liens Webs vers le laboratoire et la page personnelle du tuteur)
Domaine de spécialité requis :
Autres domaines de spécialités, mots clés :
Moyens mis en œuvre (expériences, méthodes d’analyses, autres...)
Moyens informatiques mis en œuvre : Langages :
Logiciels :
Niveau souhaité : Formation souhaitée :
Durée du stage : Stage pouvant se poursuivre en thèse : Niveau d’habilitation défense (AS au minimum) :
Formulaire Fiche Stage ≥ ≥ ≥ ≥ 3 mois
(Bac + 4, Bac + 5)
Saclay DRT
DILS/LICIA
TUCCI Sara, STAN Oana, SIRDEY Renaud 01 69 08 45 87 sara.tucci@cea.fr;
TUCCI Sara 01 69 08 45 87
Mise en oeuvre d’un protocole de consensus securisé pour la blockchain
Les blockchains ont comme objectif premier la réalisation d’échanges entre utilisateurs dans un environnement où les participants sont « pairs » et ne se font pas a priori confiance.
La sécurisation des échanges, au lieu de passer par un organe central de contrôle, qui joue le rôle de garant où « tierce partie », passe par le maintien d’un registre partagé qui enregistre l’historique des échanges. Chaque utilisateur maintient sa propre copie du registre et chaque nouvelle transaction est validée localement par l’utilisateur, avant d’être enregistrée, à l’aide d’un protocole informatique, dit de consensus, qui maintient les copies valides et synchronisées.
Le protocole de consensus le plus connu est peut-être Bitcoin[1] qui fonctionne de la manière suivante. Chaque nœud prépare un bloc: un ensemble de nouvelles transactions vérifiées à ajouter au registre. Le bloc contient également le lien vers le bloc précédent et la preuve que le nœud a réussi à résoudre un «puzzle cryptographique». Cette preuve, appelée preuve de travail, a pour objectif d'engager une participation honnête des nœuds (car il est très long de créer des blocs alternatifs pour changer le registre de manière malveillante), de rendre la création des blocs régulière dans le temps (en moyenne un bloc toutes les 10 minutes) et de choisir le nœud qui ajoutera le bloc suivant au hasard. Le principal inconvénient de ce protocole réside dans la consommation d'énergie nécessaire à la production de blocs.
Algorand [2] est l'un des protocoles de consensus les plus intéressants publiés ces dernières années. Algorand est basé sur un mécanisme alternatif à la preuve de travail, appelé preuve d'enjeu, qui ne consomme pas d'énergie. Sur la base de sa propre mise (la somme d'argent détenue par un mineur), un mécanisme appelé «tri cryptographique» permet à un comité et à un leader d'être élus pour ajouter le bloc suivant dans le registre, de manière confidentielle, aléatoire et vérifiable.
L'intérêt d'Algorand est de protéger l'identité du leader jusqu'à ce que le bloc soit produit. Cela permet d'éviter une attaque par déni de service distribué (DDoS) contre les leaders. En d'autres termes, personne ne sait qui est le leader, à l'exception du leader lui-même, jusqu'à ce qu'il révèle son rôle de leader avec la diffusion du bloc. L'un des inconvénients d'Algorand est le fait que le nombre de leaders et la taille du comité ne peuvent pas être déterminés à l'avance. Cela limite l'utilisation de cette technique d'élection à une petite classe d'algorithmes de consensus.
L'objectif de ce stage est de mettre en place un protocole pour l'élection secrète d'un leader dans un comité de taille fixe. La spécification de haut niveau du protocole dans le cas où tous les participants sont honnêtes mais curieux et le comité est fixe et connu à l'avance est déjà disponible. Le candidat devra d’abord fournir une preuve de correction du protocole et après implémenter cette première spécification de la manière suivante:
⁃ Codage du module d’élection secrète
⁃ Intégration du module dans une blockchain existante (par exemple Tendermint [3] ou TenderBake[4])
⁃ (bonus) Extension de la spécification du protocole à l'élection d'un comité
⁃ (bonus) Extension de la spécification du protocole en cas d'agents malveillants
[1]Nakamoto, Satoshi (31 October 2008). "Bitcoin: A Peer-to-Peer Electronic Cash System“
[2]Yossi Gilad, Rotem Hemo, Silvio Micali, Georgios Vlachos, and Nickolai Zeldovich. 2017. Algorand: Scaling Byzantine Agreements for Cryptocurrencies. In Proceedings of the 26th Symposium on Operating Systems Principles (SOSP '17)
[3] Yackolley Amoussou-Guenou, Antonella Del Pozzo, Maria Potop-Butucaru, Sara Tucci Piergiovanni: Correctness of Tendermint-Core Blockchains. OPODIS 2018: 16:1-16:16
[4]L. Astefanoaei, P. Chambart, A. Del Pozzo, T. Rieutord, E. Tate, S. Tucci-Piergiovanni, Eugen Zualinescu. Nomadic Labs and CEA List. “Tenderbake -- A Solution to Dynamic Repeated Consensus for Blockchains.” (2020).
Informatique
Calcul Reparti, Protocols de sécurité