Aujourd'hui, nous allons parler de Link, qui se classe environ 23ème en valeur marchande. Sa valeur marchande actuelle est d'environ 4 milliards de dollars américains. C'est un projet que je vois et qui me passionne jusqu'à présent, car il connecte le monde réel et le monde de la blockchain, et construit un pont entre le monde réel et le monde de la blockchain, sans parler du monde de la blockchain. étage, c'est au moins un demi-étage. Plus tard, je vous expliquerai exactement ce qu'il a fait.
Laissez-moi d'abord vous présenter une introduction. Il peut y avoir beaucoup de contenu dans ce numéro. Chainlink est un projet lancé en 2017. Il a déjà lancé le réseau principal Ethereum et un accord de gage. ChainLink fournit des « contrats intelligents » pour la blockchain. Le middleware qui appelle des données externes fournit aux sous-traitants une base de données à l’échelle du réseau, ou on peut également l’appeler une base de données externe fiable.

En ouvrant son site officiel, son slogan est de connecter le monde à la blockchain, son objectif est de connecter les gens, les affaires et les données au monde web3 avec des normes de service web3 industrialisées.
Ensuite, regardons son livre blanc, qui est aussi le plus long que j'ai lu jusqu'à présent, plus de 100 pages. Ici, nous devons mentionner pourquoi nous avons besoin d'oracles.
Nous savons que la blockchain est un système fermé, car chaque transaction est initiée par des nœuds dans le réseau, puis écrite dans le livre de la blockchain. Cela ne pose bien sûr aucun problème, car la blockchain est décentralisée, et de nombreux nœuds maintiennent ce livre. De plus, le mécanisme POW a également conduit de nombreuses personnes à dépenser beaucoup d'argent pour le maintenir, donc il n'y a pas de double dépense ni de défauts ; ainsi, il n'y a pas de risque de contrepartie dans la blockchain 1.0, c'est-à-dire le risque que la contrepartie fasse défaut.
Mais avec la blockchain 2.0, les contrats intelligents sont apparus, nécessitant des données (comme les informations de départ des vols) pour exécuter des commandes, mais la plupart des protocoles du monde réel et des données ne sont pas stockés sur la blockchain. Les contrats intelligents ne peuvent pas obtenir de données externes, car la blockchain est comme une boîte noire, sans capacité intégrée de connexion avec le monde extérieur. Cela signifie que les prix des actifs, les scores sportifs, les capteurs IoT, les données réseaux, les systèmes d'entreprises et de nombreux autres ensembles de données du monde réel ne peuvent pas être utilisés sur la blockchain, limitant gravement les types de contrats intelligents que les développeurs peuvent créer. Par exemple, comment établir un contrat d'assurance vol sans données de vol ? Ou, par exemple, si vous avez un contrat de livraison, quelqu'un vous livre des marchandises, après réception, l'argent est automatiquement transféré à l'autre partie, mais comment le contrat intelligent détermine-t-il si vous avez reçu les marchandises ? Un contrat intelligent est un code de programmation, il ne peut pas interagir avec le monde réel, donc il ne peut pas obtenir de données off-chain. Donc, l'apparition des contrats intelligents a également introduit le risque d'un concurrent.

C'est pourquoi un élément appelé oracle (machine oracle) est nécessaire, car il peut écrire des données hors chaîne dans la blockchain. En plus des données de prix les plus couramment utilisées, cela inclut des données météorologiques, des données de compétitions sportives, des données de marché boursier, des données de circulation, et même des résultats d'élection présidentielle.
En plus de fournir des données, la fonction générale des oracles inclut également la fourniture de nombres aléatoires et l'implémentation de déclencheurs pour exécuter des contrats intelligents, tous considérés comme des outils off-chain pour interagir avec les contrats on-chain.
Mais il y a un problème avec les oracles, qui se divisent en oracles centralisés et décentralisés. Un gros problème des oracles centralisés est qu'ils présentent un risque de point de défaillance unique. Lorsque les utilisateurs déploient des contrats intelligents sur la blockchain, ils espèrent que de nombreux nœuds dans le réseau blockchain garantiront la sécurité et l'équité des contrats. Dans ce contexte, les données externes sur lesquelles le contrat dépend sont cependant fournies via un service centralisé, ce qui réduit la sécurité globale. De plus, cela ne respecte pas vraiment le principe de la blockchain, car cela ne diffère pas d'une solution centralisée. Et les oracles centralisés, lorsqu'un problème de réseau se produit, peuvent entraîner des interruptions d'activité, la perte de données utilisateur, etc., ce qui constitue un problème grave.
Donc, maintenant, nous avons besoin d'un oracle décentralisé, et c'est Chainlink.
Chainlink est un réseau d'oracles décentralisés dont le développement vise à permettre aux contrats intelligents de transférer des données de manière hautement sécurisée et fiable entre la blockchain et les systèmes externes. Le réseau contient de nombreux nœuds d'oracle, chacun pouvant obtenir des données par ses propres canaux, puis parvenir à un consensus sur les données obtenues au sein du réseau décentralisé. La méthode de consensus ici n'est pas le consensus au sens de BFT, POS, POW, mais vise à obtenir des données fiables, par exemple en prenant une moyenne ; ou comme dans les compétitions sportives, en écartant le score le plus élevé et le plus bas, et en prenant la moyenne ou la médiane des restants, Chainlink adopte actuellement la méthode de consensus de la médiane.
Chainlink évite techniquement le risque d'un point de défaillance unique grâce à un réseau décentralisé d'oracles. Comme les nœuds Ethereum, lorsqu'un nœud est interrompu ou se retire, cela n'affecte pas la sécurité et la disponibilité de l'ensemble du réseau. De plus, sur ces données, en utilisant plusieurs sources de données, elles ne peuvent pas être contrôlées par une seule source de données, exploitant pleinement les avantages de la décentralisation.
ChainLink a trois composants clés : oracle on-chain, oracle off-chain et nœuds ChainLink.
L'oracle on-chain de ChainLink est un contrat intelligent qui relie les demandes d'informations aux oracles off-chain appropriés. Ces contrats sont utilisés pour agréger des données, vérifier la réputation des oracles et faire correspondre les demandes correctes.
Les oracles off-chain sont responsables de fournir des informations à la blockchain. Ils sont équivalents aux validateurs/miners d'autres blockchains. Ces oracles mettent en jeu des LINK pour agir en tant qu'oracles et reçoivent des LINK en retour pour la fourniture de ce service. ChainLink maintient l'honnêteté des oracles en vérifiant mutuellement les données et en pénalisant les oracles avec des données erronées. Il envoie également des demandes d'informations à de nombreux validateurs pour s'assurer de leur exactitude.
Chainlink a actuellement lancé des flux de données, VRF (nombres aléatoires vérifiables), exécution automatisée de contrats, etc.
1. Dans les flux de données de Chainlink, différents nœuds oracle obtiennent des données de prix via leurs propres fournisseurs de données, puis agrègent plusieurs données via le réseau oracle. Par exemple, pour le prix d'un token, le nœud A propose un prix de 400 $, le nœud B propose 399 $, et le nœud C propose 401 $. Le nœud oracle parvient à un consensus sur tous ces prix et transmet le prix médian de 400 $ au contrat intelligent sur la chaîne, complétant ainsi l'alimentation.
Flux de données
Le flux de données implique deux parties prenantes : la première est le fournisseur de données, qui utilise ses propres données ou obtient des données pertinentes via des tiers, puis les introduit dans un nœud du réseau d'oracles Chainlink. L'autre partie prenante est le nœud oracle, où chaque nœud peut avoir un ou plusieurs fournisseurs de données. Les données fournies par chaque fournisseur seront mises en consensus dans le réseau oracle, puis un nœud sera choisi au hasard pour soumettre les données sur la chaîne.
Cas d'utilisation
Un des scénarios d'application les plus courants est celui des protocoles de prêt, comme AAVE sur Ethereum, Compound, et Venus sur BNB. Lorsque les utilisateurs déposent un BTC sur AAVE et empruntent des USD, AAVE doit connaître le taux de change entre BTC et DAI pour décider combien d'USD prêter à l'utilisateur.
Le deuxième scénario d'application est les actifs synthétiques, comme Synthetix (SNX), qui permet aux utilisateurs de trader certains actifs de base, comme des actions américaines. Lorsque les utilisateurs créent des actifs synthétiques, le protocole doit connaître le prix des actifs, et ce prix est obtenu via les flux de données.
Le troisième scénario d'application est le Stablecoin adossé. Pour émettre un Stablecoin adossé, il faut garantir des actifs correspondants. Le protocole Stablecoin doit obtenir le prix des actifs via les flux de données avant de pouvoir calculer la valeur totale des actifs sous-jacents et décider du nombre de Stablecoins à émettre.
La quatrième application est les plateformes de gestion d'actifs et de trading de dérivés. Les plateformes d'options et de contrats à terme sont très sensibles aux prix, nécessitant des données de prix stables et précises, et les données fournies par les flux de données satisfont parfaitement leurs besoins commerciaux.

2. Chainlink Keepers est un service d'exécution de contrat décentralisé, permettant l'exécution automatisée des contrats on-chain.
L'équipe de développement peut enregistrer un UpKeep, et chaque bloc détectera l'état des contrats surveillés. Si les conditions prédéfinies sont remplies, il appelle la fonction, bien sûr, il peut aussi ne pas définir de conditions prédéfinies (équivalent à un résultat de condition toujours vrai), et appeler des fonctions spécifiques dans des contrats spécifiques selon le temps.
Les Chainlink Keepers peuvent détecter en continu l'état des contrats intelligents en fonction de la logique prédéfinie sans nécessiter d'entrée. S'ils répondent aux critères, ils s'exécutent, sinon, ils attendent la prochaine vérification.
Cas d'utilisation
La première application est l'intérêt composé automatique. De nombreuses applications DeFi paieront des intérêts aux utilisateurs déposant, si les utilisateurs ne retirent pas, c'est comme des intérêts simples, en termes simples, c'est un an de dépôt pour un an d'intérêts. Si les utilisateurs retirent et déposent les intérêts générés à intervalles réguliers pour un investissement composé, ils peuvent maximiser leurs rendements. Ces opérations de retrait et de dépôt sont des opérations fixes selon le temps et peuvent être réalisées via des Keepers, comme les projets Beefy, Alchemix, SNX, qui utilisent tous des Keepers pour réaliser ce type d'investissement composé.
La deuxième application est la liquidation des plateformes de prêt, comme AAVE et B-protocol. Lorsque le prix des actifs constitués en garantie d'un utilisateur dans le protocole chute en dessous d'un seuil d'alerte, le protocole doit liquider la garantie pour éviter des pertes supplémentaires. Dans ce scénario, la fonction checkUpKeep peut écrire le prix de liquidation pour l'enchère de l'objet, et performUpKeep écrira la logique de liquidation spécifique. Lorsque checkUpKeep retourne True, les Keepers exécutent automatiquement la liquidation des actifs garantis dans performUpKeep.
La troisième application est l'ordre limite sur DEX. Les teneurs de marché automatiques (AMM) utilisés sur DEX diffèrent du modèle de carnet de commandes des échanges centralisés, ne permettant pas d'ordres limites. Pour utiliser des ordres limites, il faut écrire sa propre logique, pour acheter ou vendre lorsque le prix du jeton descend en dessous d'un certain seuil, en utilisant des Keepers, en écrivant la logique de vérification dans checkUpkeep et la logique d'exécution dans performUpkeep.
La quatrième application concerne la gestion de la liquidité et le minting NFT inter-chaînes, par exemple mint un NFT sur Polygon (car le gaz sur le réseau principal Ethereum est assez cher), obtenir l'ID ou la valeur des caractéristiques (s'il est rare ou non), cette valeur peut être renvoyée au réseau principal via un relay, aidant les utilisateurs à réaliser le minting NFT inter-chaînes.
La cinquième application est le NFT dynamique. Sa logique est que les NFT sur la blockchain changeront en fonction des variations des attributs dans le monde réel. Par exemple, un NFT de temps, si il pleut à l'extérieur, le NFT affiche la pluie, s'il fait très chaud, le NFT affiche un soleil. Obtenant des données externes et apportant des modifications en fonction des données acquises, les Keepers seront souvent utilisés ici.
3. Le troisième produit décentralisé de Chainlink est le nombre aléatoire vérifiable (VRF). Avant l'apparition de VRF, la méthode principale pour générer des nombres aléatoires était de générer un hash basé sur les transactions dans le bloc actuel, en utilisant ce hash comme graine pour générer un nombre aléatoire, ce qui a soulevé des problèmes. Les mineurs peuvent sélectionner les transactions à inclure, obtenant ainsi le nombre aléatoire qu'ils souhaitent. Bien que cela ait un coût élevé, le potentiel de profit peut inciter les mineurs à mal agir. La génération de nombres aléatoires est également une opération incertaine, car elle est imprévisible. Ainsi, différents nœuds obtiendront des résultats différents lors de l'exécution, ce qui entraînera une incohérence dans les résultats des transactions, rendant le consensus impossible.
En utilisant des oracles externes pour entrer des nombres aléatoires vérifiables, les contrats intelligents sur la chaîne n'acceptent et ne vérifient que les nombres aléatoires, garantissant ainsi la cohérence de l'exécution des transactions. Cela permet également d'assurer que le nombre aléatoire ne peut pas être prévisible à l'avance et peut être sécurisé par des preuves.
Dans Chainlink VRF, le nombre aléatoire est généré par le réseau d'oracles. L'utilisateur fournit une graine au contrat VRF, le nœud oracle VRF utilise sa clé privée et la graine pour générer un nombre aléatoire et une preuve (Proof) qu'il renvoie au contrat VRF. Le contrat VRF vérifie la légitimité du nombre aléatoire via la preuve ; s'il passe la vérification, le nombre aléatoire est renvoyé à l'utilisateur. Contrairement à la génération de nombres aléatoires simplement off-chain, le nombre aléatoire généré par Chainlink VRF peut être prouvé par la preuve qu'il a été calculé selon un algorithme de courbe elliptique spécifique, garantissant vérifiabilité et unicité.
Cas d'utilisation
L'application la plus importante de Chainlink VRF est actuellement le minting de NFT. Les NFT doivent être créés, distribués, et lors de leur création, chaque NFT a un degré de rareté différent, attribué à différents utilisateurs. Selon les besoins commerciaux, il peut être nécessaire de créer une liste blanche, où les détenteurs de cette liste reçoivent différents NFT en airdrop. Par exemple, pour le projet Bored Ape, un airdrop de sérum est donné aux détenteurs, et l'airdrop aléatoire du sérum utilise le nombre aléatoire VRF.
Une autre application est la loterie. Par exemple, sur certaines plateformes IDO, les utilisateurs achètent des jetons, puis les stakent, la plateforme offrira des listes blanches pour participer à la loterie, et la taille des récompenses peut être choisie à l'aide de VRF.
ChainLink est l'une des blockchains les plus excitantes, car elle relie le monde réel au monde cryptographique, c'est une solution formidable, surtout maintenant que l'IoT est également très mis en avant. Ainsi, avec le développement de l'IoT et de l'industrie de la blockchain, il pourrait y avoir davantage d'applications blockchain dans notre société à l'avenir, comme des systèmes de loterie décentralisés, des services d'assurance décentralisés, des affaires de voitures d'occasion décentralisées, etc. Donc, cette piste mérite vraiment d'être suivie. Si vous avez écouté attentivement cet épisode, vous devriez savoir quoi faire. Voilà, c'est tout pour cet épisode.
