La cryptographie a longtemps été l’apanage des mathématiciens et des informaticiens. Cependant, les progrès récents, en particulier dans les technologies à connaissance nulle, transforment désormais les conceptions de systèmes cryptographiques passant de constructions mathématiques complexes à des tâches de programmation plus accessibles et plus simples. Ce processus de transformation, connu sous le nom de cryptographie programmable, comble efficacement le fossé entre la conception des protocoles et leur mise en œuvre pratique, et aura de profondes implications pour notre sécurité et notre confidentialité, à la fois en chaîne et en ligne.
Les défis liés à la mise en pratique de la théorie cryptographique
À la base, la cryptographie est simplement le processus d’envoi de messages privés entre entités. La loi elle-même introduit plusieurs exigences — selon lesquelles l'expéditeur et le destinataire peuvent comprendre les messages, mais pas tout intercepteur tiers. Surtout, il doit également garantir que le message ne peut pas être falsifié avant sa livraison. Par exemple, les signatures numériques assurent l’authentification et l’intégrité des communications sur des canaux non sécurisés.
Les systèmes cryptographiques avancés couvrent désormais le besoin de protéger toutes sortes de données et de messages en ligne pendant le stockage, la transmission et le calcul, y compris les opérations bancaires, les enchères, le commerce électronique et la blockchain, pour n'en citer que quelques-uns. Ces systèmes incluent, entre autres, des preuves à connaissance nulle (ZKP), le calcul multipartite (MPC) et le cryptage entièrement homomorphique (FHE). Chacun de ces systèmes, ancré dans les mathématiques, répond à des scénarios et à des besoins spécifiques.
MPC protège la confidentialité des données d'entrée dans les scénarios où plusieurs parties effectuent des calculs collaboratifs. Un cas d'utilisation de MPC est la garde institutionnelle, utilisée par des sociétés telles que Fireblocks, permettant la séparation des responsabilités entre les individus supervisant un portefeuille. Les ZKP permettent efficacement des calculs vérifiables et la confidentialité des données dans des contextes à partie unique et sont actuellement utilisés dans la confidentialité et la mise à l'échelle de la blockchain.
L’introduction de systèmes cryptographiques avancés apporte de nombreuses possibilités passionnantes au monde numérique, mais elle comporte également des défis importants. Pendant longtemps, les gens ne peuvent accéder qu'à des protocoles cryptographiques dédiés conçus pour des applications spécifiques, telles que les intersections privées, les enchères et les votes privés et la vérification de l'identité physique. Faire fonctionner ces systèmes dans le monde réel n’est pas simple. Les cryptographes doivent tout planifier soigneusement, comme les hypothèses de sécurité, les choix primitifs et l'optimisation des performances. Cela limite l’application à grande échelle des cryptosystèmes. La capacité à mettre en œuvre efficacement un protocole cryptographique dans un scénario généralisé joue un rôle crucial pour faire passer la cryptographie de la théorie au monde réel.
Le rôle de la cryptographie programmable
Pour résoudre les problèmes d’adoption généralisés auxquels sont confrontés les cryptosystèmes, certaines conceptions ont incorporé des descriptions fonctionnelles basées sur des circuits. Théoriquement, si les modules de base d’un cryptosystème sont capables d’émuler une machine de Turing, il peut être utilisé pour des problèmes informatiques généraux. Cette approche, où les cryptosystèmes sont utilisés via des descriptions de circuits, est connue sous le nom de cryptographie programmable. Cependant, la faisabilité théorique est loin d’être suffisante pour des applications concrètes. Une fois que la complexité d’un tel système cryptographique augmente trop rapidement avec l’ampleur du problème informatique, son application pratique devient irréaliste. Pour combler le fossé entre la théorie et la pratique, les cryptographes affinent continuellement ces algorithmes. Cela inclut la conception de nouveaux frameworks, l'optimisation des primitives sous-jacentes et la refactorisation des implémentations techniques.
Les chercheurs travaillant chez 0xPARC et Privacy and Scaling Explorations mènent des travaux pionniers qui permettent aux zkSNARK, la construction de preuve sans connaissance désormais largement déployée dans les infrastructures blockchain telles que ZCash et zkEVM, d'être une cryptographie programmable.
Ils ont présenté une preuve de concept pour les revendications d'identité à l'aide de ZKP programmables. Cette approche innovante permet de vérifier l’admissibilité d’une personne aux services par courrier électronique ou sur les réseaux sociaux, sans divulguer le contenu réel de ces communications, préservant ainsi la confidentialité des informations personnelles.
Dans une autre application révolutionnaire, la cryptographie programmable facilite le calcul confidentiel des cotes de crédit à partir des interactions d'un utilisateur avec les services Web 2.0, comme les médias sociaux, sans exposer d'activités spécifiques. Cela permet une évaluation de la solvabilité centrée sur la confidentialité, révolutionnant ainsi l'évaluation de la fiabilité financière dans le monde numérique d'aujourd'hui.
Les avantages de la cryptographie programmable se situent à plusieurs niveaux. Premièrement, cela rend les applications pratiques de la cryptographie beaucoup plus flexibles et adaptables. La programmabilité fait également passer la cryptographie appliquée d'une discipline de niche accessible seulement à quelques universitaires à un pool mondial de développeurs, favorisant l'expérimentation et l'innovation.
Pas une solution miracle, mais un tournant
L’une des principales limites de la cryptographie programmable dans son état actuel est que ses recherches se sont principalement concentrées sur les zkSNARK. Cependant, il convient de noter que de nombreuses technologies cryptographiques en sont encore à un stade de développement relativement précoce, et que des avancées significatives dans les cas d’utilisation ne se sont produites qu’au cours des deux dernières décennies. La technologie ZK a constitué un domaine d’investissement et d’intérêt particulier en raison de l’intérêt porté à la blockchain et aux crypto-monnaies au cours de la même période. Avec un niveau d’intérêt et d’innovation similaire, il est possible que des avancées pratiques dans les domaines du MPC ou de l’HE aboutissent à l’émergence d’éléments programmables.
Alors que de plus en plus de nos vies sont en ligne, la capacité à protéger et authentifier nos données et nos communications devient de plus en plus critique. La cryptographie programmable offre la possibilité de faire tomber les barrières et d’inaugurer une nouvelle ère de chiffrement moderne, plus accessible et plus mûre pour un développement futur.
À propos de l'ARPA
ARPA Network (ARPA) est un réseau informatique sécurisé décentralisé conçu pour améliorer l'équité, la sécurité et la confidentialité des blockchains. Le réseau de signature BLS à seuil ARPA sert d'infrastructure pour un générateur de nombres aléatoires (RNG) vérifiable, un portefeuille sécurisé, un pont entre chaînes et une garde décentralisée sur plusieurs blockchains.
ARPA était auparavant connu sous le nom d'ARPA Chain, un réseau de calcul multipartite (MPC) préservant la confidentialité fondé en 2018. ARPA Mainnet a effectué plus de 224 000 tâches de calcul au cours des dernières années. Notre expérience en MPC et autres cryptographies a jeté les bases de la conception de notre système innovant de schémas de signature BLS à seuil (TSS-BLS) et nous a conduit au réseau ARPA actuel.
Randcast, un générateur de nombres aléatoires (RNG) vérifiable, est la première application qui exploite l'ARPA comme infrastructure. Randcast propose une source aléatoire générée cryptographiquement avec une sécurité supérieure et un faible coût par rapport à d'autres solutions. Le métaverse, les jeux, la loterie, la frappe et la liste blanche NFT, la génération de clés et la distribution des tâches de validation de la blockchain peuvent bénéficier du caractère aléatoire inviolable de Randcast.
Pour plus d’informations sur l’ARPA ou pour rejoindre notre équipe, veuillez nous contacter à contact@arpanetwork.io.
Découvrez les récentes actualités officielles de l'ARPA :
Twitter : @arpaofficial
Médium : https://medium.com/@arpa
Discorde : https://dsc.gg/arpa-network
Télégramme (anglais) : https://t.me/arpa_community
Télégramme (turc) : https://t.me/Arpa_Turkey
Télégramme (coréen) : https://t.me/ARPA_Korea
Télégramme (Vietnam) : https://t.me/ARPAVietnam
Télégramme (russe) : https://t.me/arpa_community_ru
Télégramme (indonésien) : https://t.me/Arpa_Indonesia
Télégramme (Sri Lanka) : https://t.me/arpa_srilanka
Télégramme (Afrique) : https://t.me/arpaafrica
Reddit : https://www.reddit.com/r/arpachain/