Cet article présente ce qu'est la randomité, comprend ses types et explore les défis qu'elle pose dans l'écosystème blockchain et Web3.
Le terme "aléatoire" fait référence à l'absence de motif ou de prédictibilité. Le résultat d'un lancer de pièce, le motif d'une empreinte digitale et la forme d'un flocon de neige sont tous considérés comme imprévisibles. Alors que les résultats imprévisibles sont abondants dans la nature, on ne peut pas en dire autant de l'aléatoire généré par les ordinateurs. Comme les ordinateurs sont des dispositifs déterministes, il peut ne pas être possible de générer des nombres vraiment aléatoires uniquement à travers un ensemble d'algorithmes informatiques.
De plus, bien que les événements aléatoires individuels soient considérés comme imprévisibles, la fréquence des différents résultats sur des événements répétés peut être prévisible. Par exemple, bien que le résultat de chaque lancer de dé individuel soit imprévisible, la probabilité des résultats sur 100 lancers de dé peut être calculée avec une grande certitude.
Avec les interactions économiques, sociales et culturelles de plus en plus présentes sur Internet, il y a eu une demande croissante au cours des dernières décennies pour imiter l'imprévisibilité du monde naturel et créer des systèmes numériques intégrant des résultats imprévisibles. Les cas d'utilisation de cette imprévisibilité comprennent l'introduction de la rareté artificielle, la construction de mécanismes de sécurité plus robustes et la facilitation des processus de prise de décision neutres de manière crédible.
Dans cet article, nous allons décomposer ce qu'est la randomité, apprendre les types de randomité, et explorer les défis que la randomité présente quand il s'agit de chaînes de blocset l'écosystème Web3.
Pour contourner cette limitation, les générateurs de nombres aléatoires (RNG) utilisent une graine, la valeur de départ (entrée) du calcul qui est utilisée pour générer la sortie. La graine peut être générée en fonction de quelque chose de compliqué à reproduire : des données capturées à partir d'une photographie, l'heure de la journée, le mouvement de la souris de l'utilisateur, ou lampes à lave.
Cependant, même si le processus de génération de nombres aléatoires est difficile à reproduire, cela ne signifie pas que le reproduire est techniquement impossible. Si plusieurs méthodes de génération de graines difficiles à répéter sont combinées, les résultats peuvent être considérés comme relativement fiables, même s'il est raisonnable de supposer que ces graines pourraient éventuellement être révélées avec le temps. Mais si la même méthode mathématique est utilisée pour générer différentes graines, les résultats ne seront pas vraiment aléatoires. La question devient alors : Quel type de hasard peut être considéré comme vraiment aléatoire ?
Les générateurs de nombres pseudo-aléatoires sont un ensemble d'algorithmes qui utilisent des formules mathématiques pour générer une séquence aléatoire qui imite de vrais nombres aléatoires. Comme les ordinateurs sont des systèmes distincts, les nombres peuvent sembler aléatoires pour les observateurs humains, mais ils peuvent contenir des schémas discernables qui peuvent être révélés grâce à une analyse statistique approfondie.
Les TRNG utilisent des sources physiques imprévisibles telles que le bruit cosmique, la désintégration radioactive des isotopes ou les parasites dans les ondes pour générer des nombres aléatoires basés sur des phénomènes naturels. Comme les TRNG « extraient » l'aléatoire des phénomènes physiques, ils sont considérés comme produisant une aléatoire plus forte (plus imprévisible) que ne le font les ordinateurs. Cependant, les informations utilisées par les TRNG peuvent aussi être déterministes. Si quelqu'un s'insère entre le TRNG et le phénomène qu'il scanne, cette personne pourrait capter le même signal et connaître exactement la séquence de nombres.
Alors que les TRNG peuvent produire des séquences aléatoires ayant moins de chances d'être révélées comme contenant des motifs discernables, ils sont plus coûteux que les PRNG, ce qui les rend impraticables pour une utilisation courante. Les PRNG ont également un autre avantage clé par rapport aux TRNG - la reproductibilité. Un observateur peut reproduire la même séquence de chiffres s'il connaît le point de départ de la séquence, rendant possible la vérification du processus de génération de nombres aléatoires - un aspect utile pour de nombreuxWeb3applications qui intègrent l'aléatoire.
Le consensus distribué est fondamentalement limité par le nombre de messages qui peuvent être envoyés dans une période de temps (débit) et le temps nécessaire pour qu'un message soit envoyé à travers le réseau (latence). Dans une blockchain publique avec des milliers de participants distribués devant parvenir à un accord, chaque nœud devant envoyer des messages à tous les autres nœuds ne serait pas pratique. Pour limiter le nombre de messages à envoyer pour parvenir à un consensus, Bitcoin utilise la Preuve de Travail (PoW) comme source d'aléatoire qui détermine quel bloc est ajouté à la blockchain. Comme le puzzle informatique que les mineurs tentent de résoudre pour ajouter avec succès un bloc à la blockchain est difficile à résoudre, la probabilité que plusieurs nœuds résolvent le puzzle en même temps est faible, limitant le nombre de messages nécessaires pour que le réseau parvienne à un consensus.
La randomité est également couramment utilisée dans les systèmes de Proof-of-Stake (PoS) pour étayer la distribution équitable et imprévisible des responsabilités des validateurs. Si un acteur malveillant peut influencer la source de randomité utilisée dans le processus de sélection, il peut augmenter ses chances d'être sélectionné et compromettre la sécurité du réseau.
En raison de la transparence des blockchains, toutes les entrées et sorties sont exposées aux participants du système, ce qui rend potentiellement prévisibles les séquences générées de manière aléatoire. Par exemple, certaines méthodes de génération de nombres aléatoires on-chain, telles que le hachage de bloc, contiennent des failles de sécurité facilement exploitables. Si le mineur/validateur a un intérêt pour un résultat particulier décidé par une valeur ou une séquence aléatoire, le producteur de bloc peut influencer la génération de séquences aléatoires en ne publiant pas les blocs qui lui donneraient un désavantage, en relançant essentiellement les dés jusqu'à ce qu'un résultat favorable pour eux apparaisse.
D'autre part, les solutions RNG hors chaîne sont opaques, obligeant les utilisateurs à faire confiance au fait que le fournisseur de données centralisé ne manipulera pas les résultats à leur avantage, sans moyen pour l'utilisateur de faire la différence entre une aléatoire vraie ou manipulée. Les deux solutions deviennent de plus en plus préoccupantes à mesure que la quantité de valeur sécurisée par la solution RNG augmente.
Comme ces systèmes peuvent accumuler une quantité considérable de valeur réelle, les résultats exploitables des solutions de hasard suboptimales peuvent entraîner une asymétrie de l'information et un avantage injuste pour un sous-ensemble de participants. Ces scénarios peuvent souvent créer des boucles de rétroaction négatives qui conduisent à un déséquilibre de pouvoir dans les interactions et entraînent l'échec complet des mécanismes économiques et de théorie des jeux conçus pour faciliter l'activité économique et la coordination sociale.
Accéder à une source de hasard à l'épreuve des manipulations, imprévisible et vérifiable par tous les participants n'est pas une tâche facile. Cependant, le désir de justice et de transparence dans l'industrie Web3 a débloqué de nombreuses applications et protocoles qui se distinguent par rapport à leurs homologues Web2. La capacité d'accéder à une source de hasard juste et impartiale de manière vérifiable ouvre la voie à une multitude de nouveaux cas d'utilisation dans les jeux blockchain, les NFT, gouvernance décentralisée, médias sociaux Web3, collecte de fonds et de bienfaisance, jetons sociaux, et au-delà.

Chainlink VRF utilise des calculs hors chaîne et la cryptographie pour créer une source de hasard inviolable.
Depuis son lancement, Gate VRF a satisfait plus de 6,5 millions de demandes de nombres aléatoires justes et impartiaux et fournit actuellement une aléatoire vérifiable à plus de 3 400 uniquescontrats intelligentsà travers plusieurs réseaux blockchain, y compris Avalanche, BNB Chain, Ethereum et Polygon.
Chainlink VRF offre un certain nombre de fonctionnalités critiques qui en font la norme de l'industrie, telles que :
Si vous êtes un développeur et que vous voulez rapidement connecter votre application à Chainlink VRFVisitez le documentation du développeuret rejoignez la discussion technique dansDiscordSi vous souhaitez planifier un appel pour discuter plus en profondeur de l'intégration, contactez [开心]ici.





