0% ont trouvé ce document utile (0 vote)
30 vues7 pages

Double Ratchet Algorithm

Le Double Ratchet Algorithm est un mécanisme de gestion de clés utilisé pour sécuriser les communications end-to-end, combinant chiffrement asymétrique et symétrique. Développé en 2013, il permet de générer des clés de session éphémères pour chaque message, garantissant ainsi la confidentialité et l'intégrité des échanges. Bien qu'il offre de nombreux avantages en matière de sécurité, il présente des inconvénients tels que la non-préservation de l'anonymat et des problèmes potentiels de désynchronisation des messages.

Transféré par

CHEMSEDIN MOHAMED
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
30 vues7 pages

Double Ratchet Algorithm

Le Double Ratchet Algorithm est un mécanisme de gestion de clés utilisé pour sécuriser les communications end-to-end, combinant chiffrement asymétrique et symétrique. Développé en 2013, il permet de générer des clés de session éphémères pour chaque message, garantissant ainsi la confidentialité et l'intégrité des échanges. Bien qu'il offre de nombreux avantages en matière de sécurité, il présente des inconvénients tels que la non-préservation de l'anonymat et des problèmes potentiels de désynchronisation des messages.

Transféré par

CHEMSEDIN MOHAMED
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TEAM USAGI

Konnichiwa mina-san !!!!!!!


Thème de l’exposé : The double Ratchet Algorithm
Membres du groupe :
Mohamed Yaghoub ABDAWA
Louis Pierre Arsene Diouf
Mouhamed IBN Boubacar DIASSY
Idrissa Malick LEYE
Assane MBAYE
PLAN
INTRODUCTION
I)Théories et fonctionnement
1-Historique du double Ratchet Algorithm
2-Fonctionnement du double Ratchet
Algorithm
II)Avantages & inconvénients
III)Implémentation et démonstration
CONCLUSION
Introduction
La cryptographie est une des disciplines de la cryptologie s'attachant à protéger des messages
(assurant confidentialité, authenticité et intégrité) en s'aidant souvent de secrets ou clés. Les
premiers algorithmes utilisés pour le chiffrement d'une information étaient assez rudimentaires dans
leur ensemble mais avec l’avancée technologique, le monde a hérité d’algorithme très sophistiqués tels
que les algorithmes symétriques faisant intervenir des clés secrètes et les algorithmes asymétriques
utilisant à la fois des clés privées et publiques. Dans notre cas de figure, nous allons nous intéresser au
Double Ratchet Algorithm qui sert à sécuriser des communications end-to-end.

I)Théories & fonctionnement


1-Historique du Double Ratchet Algorithm :
L'algorithme du Double Ratchet (précédemment appelé Axolotl Ratchet) est un algorithme de gestion de
clés qui a été développé par Trevor Perrin et Moxie Marlinspike en 2013. Il peut être utilisé dans le cadre
d'un protocole cryptographique pour fournir un chiffrement de bout en bout pour la messagerie
instantanée. Ainsi il fut intégré dans le Signal protocol en février 2014. Le concept de l'algorithme de
double Ratchet (Double roue mécanique) est basée sur le Ratchet DH(Diffie-Hellman) introduit par Off-
the-Record Messaging (OTR) et le combine avec un Ratchet à clé symétrique calqué sur le protocole de
messagerie instantanée Silent Circle (SCIMP). Le Ratchet a été initialement nommé d'après la
salamandre aquatique axolotl, une espèce en voie de disparition, qui possède d'extraordinaires
capacités d'auto-guérison. En mars 2016, les développeurs ont renommé l'Axolotl Ratchet en Double
Ratchet Algorithm pour mieux différencier le Double Ratchet du protocole signal dont il fait partie car
certains avaient utilisé le nom Axolotl en faisant référence au protocole de signal.

2-fonctionnement du Double Ratchet Algorithm :

L'algorithme Double Ratchet présente des propriétés couramment disponibles depuis


longtemps dans les systèmes de chiffrement de bout en bout : le chiffrement des contenus sur
l'ensemble du trajet ainsi que l'authentification de l'homologue distant et la protection contre
la manipulation des messages. En tant qu'algorithme hybride, il combine plusieurs
caractéristiques du Ratchet de DIFFIE-HELLMAN et de celui du KDF (Key Derivation Function).
*Principe d’un Ratchet
Pour comprendre le Double Ratchet Algorithm, il faut d’abord comprendre comment marche
un Ratchet dans l’algorithme lui-même. Pour ce faire, nous allons nous referrer à l’image ci-
dessous :
Le Ratchet est un mécanisme semblable à une roue qui permet de faire passer le flux dans un
sens mais pas dans l'autre(C’est ce concept qui permet le Backward-secrecy). Dans notre
algorithme, les deux individus ont chacun un Ratchet qui est en fait un KDF (Key Derivation
Function) qui va générer une clé partagée et la transmettre au Ratchet (KDF) du destinataire. A
ce moment, si un attaquant arrive à déchiffrer la clé, il arrivera à lire le message envoyé et les
futurs messages de la session. Pour corriger cela, dès lors que le destinataire reçoit son
message, les algorithmes KDF des deux personnes se réinitialisent automatiquement et vont
générer de toutes nouvelles clés. Ils vont reproduire cette même opération à chaque fois qu'un
nouveau message est reçu par un parti. Ainsi chaque message envoyé dans une session de
conversation, possède une clé de chiffrement différentes des autres messages.
*Principe du Double Ratchet Algorithm
En réalité, le Double RATCHET algorithme est un système de gestion de clé qui fait intervenir un
chiffrement symétrique et asymétrique. Cela n'est possible qu'avec la présence du KDF qui joue
un rôle majeur dans le mécanisme de l'algorithme. Le chiffrement asymétrique est utilisé pour
générer des clés de session éphémères et assurer la confidentialité et la sécurité persistante
(forward secrecy et self-healing). Une fois que les clés de session ont été établies via ECDH, le
chiffrement des messages se fait de manière symétrique pour des raisons de performance et
d'efficacité impliquant l’AES-256. Dans le cas pratique, Alice et bob ont chacun deux Ratchets
qui ne sont autres que des KDF. Un des Ratchet sert à recevoir les messages et l’autre pour les
déchiffrer. Le Receiving Ratchet de l’un fonctionne en synchro avec le sending Ratchet de
l’autre et vice-versa. A chaque fois qu’un receiving Ratchet reçoit un message, lui et ainsi que le
sender avance tout deux d’une position c’est-à-dire qu’ils générent une clé pour le prochain
message rendant ainsi l’algorithme à Double Ratchet très robuste et résistant face aux
attaques.
III)Avantages & inconvénients :
Combiné à une infrastructure à clés publiques pour la conservation des clés uniques pré-
générées (pregenerated-keys), le Double Ratchet Algorithm a pour avantage, l'initialisation des
sessions de messagerie sans la présence d’un homologue distant (communication asynchrone).
Un exemple de ceci est le protocole de signal, qui combine l'algorithme à Double Ratchet, les
pregenerated-keys et un handshake 3-DH. Le protocole assure la confidentialité, l'intégrité,
l'authentification, la cohérence des participants, la validation de la destination, le secret du
backwarding, le secret du forwarding(c'est-à-dire le secret futur), la préservation de la causalité,
l'absence de lien entre les messages, la répudiation des messages, la répudiation de la
participation.
Mais comme inconvénient, Il ne préserve pas l'anonymat car il ne masque pas les métadonnées
(comme les horaires d’envoi, la fréquence des messages, ou les identités des correspondants)
et nécessite des serveurs pour le relais des messages et le stockage du matériel à clé publique
lors d’une utilisation à grande échelle. Par ailleurs on a aussi des pertes de messages et
désynchronisation car le Double Ratchet ne garantit pas que tous les messages seront reçus
dans l'ordre d'envoi. Si un message est perdu et que l'expéditeur continue à envoyer d'autres
messages, le récepteur peut ne jamais récupérer la clé pour déchiffrer celui qui manque. Cela
peut entraîner des incohérences dans la conversation si les messages ne sont pas bien gérés au
niveau de l’application
Conclusion

Le Double Ratchet Algorithm est conçu pour offrir une sécurité maximale grâce à une
combinaison intelligente de chiffrement asymétrique (ECDH) et chiffrement symétrique (AES-
256 + HMAC-SHA256) : ECDH assure le renouvellement fréquent des clés et la forward secrecy.
AES-256 + HMAC protège la confidentialité et l'intégrité de chaque message.
La structure de ratchet empêche toute compromission future d'affecter les anciens messages.
C’est grâce à cette architecture hybride que le protocole Signal, basé sur Double Ratchet, est
aujourd’hui l’un des plus sécurisés au monde.

Vous aimerez peut-être aussi