La cryptographie a été un domaine vital dans le développement de la technologie blockchain, mais cela ne serait pas possible sans le développement d'un concept de base : chiffrement probabiliste.
Lorsque nous parlons de cryptage probabiliste, nous nous référons à un algorithme capable d'appliquer un caractère aléatoire à un mécanisme de chiffrement. Ainsi, ce que recherche le développeur de cette fonction cryptographique est quelque chose de très simple : pour chaque entrée de données, obtenir une sortie différente pour chaque interaction effectuée. Ainsi, les algorithmes de chiffrement probabiliste cherchent à offrir un niveau de sécurité supérieur à celui atteint par les techniques déterministes actuelles.
Cette idée sert à améliorer les systèmes de cryptographie asymétrique que nous savons Et à partir de là, on comprend son importance : le chiffrement probabiliste est la pierre angulaire de protéger la confidentialité de notre vie numérique, non seulement dans la blockchain, mais aussi dans Internet et tout autre aspect lié à ce monde maintenant et dans un avenir proche.
Le premier système de chiffrement probabiliste
L'origine du premier système de chiffrement probabiliste remonte au développement de Ralph Merkle avec son travail Communications sécurisées sur des canaux non sécurisés. Ce travail était tellement en avance sur son temps que lors de sa présentation initiale à l'Association for Computing Machinery (ACM) en 1975, il a été rejeté comme une impossibilité.
Mais en 1978, un an après les travaux de Whitfield Diffie y Martin Hellmann et son protocole cryptographique asymétrique Diffie-Hellman, a finalement été considéré comme quelque chose de possible, ce qui rend une chose claire : la naissance du cryptage probabiliste et des systèmes à clé publique n'étaient pas seulement une possibilité, mais l'avenir de la cryptographie.
Ainsi, les propositions de Ralph Merkle, Whitfield Diffie et Martin Hellman sont devenues les premières propositions cryptographiques qui utilisaient des éléments de chiffrement probabiliste pour leur fonctionnement. Son succès réside dans le fait que ce nouveau dispositif a été capable de sécuriser n'importe quel canal de communication même dans un environnement de communication non sécurisé.
Cette avancée a conduit à la création de l'un des premiers systèmes de chiffrement asymétrique avec les éléments probabilistes les plus utilisés au monde : l'algorithme RSA. RSA est encore utilisé aujourd'hui sur Internet et dans de nombreux systèmes numériques à travers le monde. Bien sûr, tout ce schéma est également utilisé dans le reste des systèmes cryptographiques asymétriques, tels que ceux connus ECDSA, EdDSA, Schnorr, entre autres, ce qui rend clair le niveau d'importance de cette avancée.
Améliorer le système
Maintenant, l'utilisation d'algorithmes probabilistes dans RSA est en fait assez faible. Généralement, il est utilisé pour une fonction de base : les producteurs de nombres pseudo-aléatoires ou PRNG (Pseudo-random number generator). Rappelons que les PRNG sont chargés de nous aider à obtenir les nombres et l'entropie que nous pouvons considérer comme sûrs et, par conséquent, ils sont à la base de la sécurité de nos algorithmes de chiffrement asymétrique actuels. Ces PRNG sont créés à l'aide d'algorithmes probabilistes et, par conséquent, les algorithmes de chiffrement asymétriques sont considérés comme des algorithmes de chiffrement probabilistes, même s'ils n'appliquent pas pleinement ce schéma.
Bien que cela soit suffisamment sécurisé, même selon nos normes actuelles, la sécurité de ces algorithmes peut être étendue en étendant l'utilisation de propriétés probabilistes au reste de l'algorithme de chiffrement. C'est-à-dire appliquer le caractère aléatoire non seulement au générateur de nombres, mais également à l'ensemble du système de chiffrement, ce qui constituerait une avancée considérable comparable à la naissance même de la cryptographie asymétrique.
C'est précisément le travail que deux grands cryptographes ont donné vie, Goldwasser Shafi y Silvio Micali (créateur de Algorand). En 1982, Goldwasser et Micali ont introduit le célèbre protocole cryptographique Goldwasser-Micali. Sa plus grande percée est qu'il s'agit du premier système cryptographique entièrement probabiliste connu dans le monde.
Les travaux de Goldwasser et Micali créent un système asymétrique sûr basé sur la problème de résidu quadratique décrit par Carl Friedrich Gauss en l'an 1801. Ce problème mathématique est largement utilisé en cryptographie, le meilleur exemple de son implémentation étant l'algorithme PRNG BBS (générateur de nombres pseudo-aléatoires BBS), créé en 1986 par Lenore Blum, Manuel Blum et Michael Shub.
C'est à partir de ce système que Goldwasser et Micali ont créé un algorithme capable de générer une fonction de cascade probabiliste dans laquelle chaque valeur générée par la factorisation de nombres générés aléatoirement sert à alimenter un algorithme de chiffrement entièrement probabiliste. Ainsi, un texte peut être pris et crypté séquentiellement, de cette façon chaque séquence donne un résultat totalement différent, vous ne verrez jamais le même fichier avec un cryptage identique, quel que soit le nombre d'itérations de cryptage que vous effectuez. Vous pouvez lire une explication mathématique détaillée du système dans ce lien.
Sécurité du système cryptographique probabiliste
Maintenant, pourquoi atteindre ce niveau ? La réponse à cela est simple : améliorer notre sécurité. Le système de chiffrement probabiliste introduit par Goldwasser et Micali est peut-être l'un des plus grands puzzles de cryptanalyse qui peuvent être créés.
Par exemple, un texte de 500 caractères aurait plus de 10^100000 combinaisons de chiffrement différentes, ce qui suppose un niveau de résultat informatiquement inanalysable à l'heure actuelle. C'est encore plus que les capacités de cryptage qui peuvent être obtenues avec des algorithmes comme AES, ECDSA et EdDSA, combinés.
Le problème avec les systèmes de chiffrement probabiliste est que leur création à l'aide de machines déterministes crée toujours un vide ou un espace dans lequel nous ne pouvons pas entièrement vérifier sa sécurité. Plus simplement, théoriquement, ils sont excellents, mais formellement au niveau de l'implémentation algorithmique, nous ne pouvons pas garantir leur sécurité totale. Cela pourrait essentiellement être résolu avec le prochain saut dans l'ère informatique : les ordinateurs quantiques, car de par leur nature, ils sont probabilistes et nous pourrions pleinement vérifier la sécurité de ces systèmes cryptographiques.
En plus de créer des algorithmes efficaces, les implémentations de chiffrement probabiliste existantes sont inefficaces en termes de calcul et ne compensent pas leur sécurité par rapport à la puissance de calcul et aux performances qu'elles offrent. Cela étant dit, il reste encore beaucoup à faire dans ce domaine jusqu'à ce que nous puissions enfin développer des algorithmes complexes qui exploitent tout le potentiel de cette nouvelle amélioration de nos systèmes de chiffrement, mais pour l'instant, nous devrons attendre un peu plus longtemps et améliorer le des bases probabilistes qui protègent déjà nos implémentations actuelles.
Cours avancé de Bitcoin
Niveau avancéÀ Bit2Me Academy, nous vous proposons ce cours Bitcoin avancé gratuit pour que vous deveniez le prochain Satoshi Nakamoto.