Chainlink: Mạng Oracle phi tập trung
Résumé
Dans ce livre blanc, nous exprimons une vision de l'évolution de Chainlink au-delà de sa conception initiale dans le livre blanc original Chainlink. Nous prévoyons un rôle de plus en plus étendu pour les réseaux oracle, dans lequel ils complètent et améliorent les blockchain existants et nouveaux en fournissant des services rapides, fiables et Connectivité universelle préservant la confidentialité et calcul hors chaîne pour smart contracts. La base de notre plan est ce que nous appelons les réseaux Oracle décentralisés, ou DONs pour faire court. Un DON est un réseau entretenu par un comité de Chainlink nœuds. Il prend en charge n'importe laquelle d'une gamme illimitée de fonctions oracle choisies pour déploiement par le comité. Un DON agit ainsi comme une puissante couche d'abstraction, offrant des interfaces pour les smart contract vers des ressources hors chaîne étendues et hautement Ressources informatiques hors chaîne efficaces mais décentralisées au sein du DON lui-même. Avec DONs comme tremplin, Chainlink prévoit de se concentrer sur les avancées dans sept domaines clés : • smart contract hybrides : offrant un cadre général puissant pour augmenter les capacités smart contract existantes en composant en toute sécurité en chaîne et des ressources informatiques hors chaîne dans ce que nous appelons des smart contract hybrides. • Faire abstraction de la complexité : présenter aux développeurs et aux utilisateurs des la fonctionnalité élimine le besoin de se familiariser avec des sous-jacents complexes protocoles et limites du système. • Mise à l'échelle : garantir que les services oracle atteignent les latences et les débits exigé par les systèmes décentralisés hautes performances. • Confidentialité : permettre des systèmes de nouvelle génération qui combinent les blockchain transparence innée avec de nouvelles protections de confidentialité solides pour les informations sensibles données. • Équité des ordres pour les transactions : prise en charge du séquençage des transactions de différentes manières qui sont équitables pour les utilisateurs finaux et empêchent les attaques frontales et autres par robots et mineurs exploiteurs. • Minimisation de la confiance : création d'une couche de support hautement fiable pour smart contracts et autres systèmes dépendants de oracle par décentralisation, ancrage fort dans des blockchain de haute sécurité, cryptographie techniques et garanties cryptoéconomiques. • Sécurité (cryptoéconomique) basée sur des incitations : concevoir rigoureusement et déployer de manière robuste des mécanismes qui garantissent que les nœuds dans les DONs ont de fortes incitations économiques à se comporter de manière fiable et correcte, même face à des adversaires disposant de ressources suffisantes. Nous présentons les innovations préliminaires et en cours de la communauté Chainlink dans chacun de ces domaines, donnant une image de l'élargissement et de la croissance croissante capacités puissantes prévues pour le réseau Chainlink.
Tóm tắt
Trong báo cáo chính thức này, chúng tôi trình bày rõ tầm nhìn về sự phát triển của Chainlink ngoài quan niệm ban đầu trong báo cáo chính thức Chainlink ban đầu. Chúng tôi thấy trước vai trò ngày càng mở rộng của oracle mạng, một vai trò trong đó chúng bổ sung và nâng cao blockchain hiện có và mới bằng cách cung cấp tốc độ nhanh, đáng tin cậy và kết nối phổ quát và tính toán ngoài chuỗi đảm bảo tính bảo mật cho smart contracts. Nền tảng kế hoạch của chúng tôi là cái mà chúng tôi gọi là Mạng Oracle phi tập trung, hoặc Viết tắt là DONs. DON là mạng được duy trì bởi ủy ban Chainlink nút. Nó hỗ trợ bất kỳ chức năng oracle nào được chọn cho triển khai của ủy ban. Do đó DON hoạt động như một lớp trừu tượng mạnh mẽ, cung cấp giao diện cho smart contract cho các tài nguyên ngoài chuỗi mở rộng và có chất lượng cao tài nguyên điện toán ngoài chuỗi hiệu quả nhưng được phân cấp trong chính DON. Với DON làm bàn đạp, Chainlink có kế hoạch tập trung vào những tiến bộ trong bảy lĩnh vực chính: • smart contract kết hợp: Cung cấp một khuôn khổ chung, mạnh mẽ để tăng cường các khả năng smart contract hiện có bằng cách soạn thảo an toàn trên chuỗi và tài nguyên điện toán ngoài chuỗi thành cái mà chúng tôi gọi là smart contract lai. • Loại bỏ sự phức tạp: Trình bày cho các nhà phát triển và người dùng những cách đơn giản chức năng loại bỏ sự cần thiết phải làm quen với cơ bản phức tạp các giao thức và ranh giới hệ thống. • Mở rộng quy mô: Đảm bảo rằng các dịch vụ oracle đạt được độ trễ và thông lượng được yêu cầu bởi các hệ thống phi tập trung hiệu suất cao. • Tính bảo mật: Kích hoạt các hệ thống thế hệ tiếp theo kết hợp blockchains' tính minh bạch vốn có với các biện pháp bảo vệ bí mật mới mạnh mẽ cho các thông tin nhạy cảm dữ liệu. • Tính công bằng trong giao dịch: Hỗ trợ sắp xếp trình tự giao dịch theo cách công bằng cho người dùng cuối và ngăn chặn các cuộc tấn công chạy trước và các cuộc tấn công khác bằng cách bot và thợ mỏ bóc lột. • Giảm thiểu sự tin cậy: Tạo ra một lớp hỗ trợ có độ tin cậy cao cho smart contracts và các hệ thống phụ thuộc oracle khác bằng phương pháp phân cấp, neo chặt ở mức độ bảo mật cao blockchains, mật mã kỹ thuật và đảm bảo kinh tế mật mã. • Bảo mật dựa trên khuyến khích (kinh tế tiền điện tử): Các cơ chế thiết kế nghiêm ngặt và triển khai mạnh mẽ nhằm đảm bảo các nút trong DON có động lực kinh tế mạnh mẽ để hành xử một cách đáng tin cậy và chính xác, ngay cả khi đối mặt với các đối thủ có nguồn lực tốt. Chúng tôi giới thiệu những cải tiến sơ bộ và đang diễn ra của cộng đồng Chainlink trong mỗi lĩnh vực này, cung cấp một bức tranh về sự mở rộng và ngày càng tăng các khả năng mạnh mẽ được lên kế hoạch cho mạng Chainlink.
Introduction


Les blockchains oracle sont souvent considérées aujourd’hui comme des services décentralisés avec un seul objectif : pour transférer les données des ressources hors chaîne vers des blockchain. Mais c'est un petit pas, du transfert de données au calcul, au stockage ou à la transmission bidirectionnelle. Cette observation justifie une notion beaucoup plus large de la fonctionnalité des oracle. Alors aussi répondre aux exigences de service croissantes des smart contract et de plus en plus multiformes technologies qui s'appuient sur les réseaux oracle. En bref, un oracle peut et devra être une interface de calcul à usage général, bidirectionnelle et entre et parmi les systèmes en chaîne et hors chaîne. Le rôle des Oracles dans l'écosystème blockchain est d'améliorer les performances, les fonctionnalités et l'interopérabilité des smart contract afin qu'ils puissent apporter de nouveaux modèles de confiance et de transparence à une multiplicité d’industries. Cette transformation passera par l’élargissement de l’utilisation des smart contract hybrides, qui fusionnent Les propriétés spéciales de blockchain avec les capacités uniques des systèmes hors chaîne tels que oracle réseaux et obtenez ainsi une portée et une puissance bien supérieures à celles des systèmes en chaîne en isolement. Dans ce livre blanc, nous exprimons une vision pour ce que nous appelons Chainlink 2.0, une évolution de Chainlink au-delà de sa conception initiale dans le livre blanc original Chainlink [98]. Nous prévoyons un rôle de plus en plus étendu pour les réseaux oracle, dans lequel ils complètent et améliorent les blockchain existants et nouveaux en fournissant une connectivité et un calcul universels rapides, fiables et préservant la confidentialité pour les systèmes hybrides. smart contracts. Nous pensons que les réseaux oracle évolueront même pour devenir des services publics pour exporter des données de haute intégrité de niveau blockchain vers des systèmes au-delà du blockchain écosystème. Aujourd'hui, les nœuds Chainlink gérés par un ensemble diversifié d'entités se réunissent dans des réseaux oracle pour relayer les données vers les smart contract dans ce que l'on appelle des rapports. Nous pouvons voir un tel oracle nœuds en tant que comité similaire à celui d'un consensus classique blockchain [72], mais dans le but de prendre en charge les blockchain existants, plutôt que de fournir des fonctionnalités autonomes. Avec fonctions aléatoires vérifiables (VRF) et reporting hors chaîne (OCR), Chainlink évolue déjà vers un cadre et une infrastructure à usage général pour fournir les ressources informatiques dont smart contract ont besoin pour fonctionnalité avancée. La base de notre plan pour Chainlink 2.0 est ce que nous appelons Oracle décentralisé. Réseaux, ou DONs en abrégé. Depuis que nous avons introduit le terme « réseau oracle » dans le livre blanc original Chainlink [98], oracles ont développé des fonctionnalités et des fonctionnalités toujours plus riches étendue d'application. Dans cet article, nous proposons une nouvelle définition du terme selon à notre vision future de l’écosystème Chainlink. Dans cette vue, un DON est un réseau maintenu par un comité de nœuds Chainlink. Ancré dans un protocole consensuel, il prend en charge n'importe laquelle d'une gamme illimitée de fonctions oracle choisies pour le déploiement par le comité. Un DON agit ainsi comme une couche d'abstraction blockchain, fournissant des interfaces aux ressources hors chaîne pour les smart contract et d'autres systèmes. Il fournit également accès à des ressources informatiques hors chaîne hautement efficaces mais décentralisées. En général, a DON prend en charge les opérations sur une chaîne principale. Son objectif est de permettre desbles hybrides smart contracts, qui combinent le calcul en chaîne et hors chaîne avec connexion à des ressources externes. Nous soulignons que même avec le recours aux comités dans les DON, Chainlink lui-même reste intrinsèquement sans autorisation. Les DON servent de fondement à un système sans autorisation cadre dans lequel les nœuds peuvent se réunir pour implémenter des réseaux oracle personnalisés avec leurs propres régimes d'inclusion de nœuds, qui peuvent être autorisés ou non. Avec DONs comme base, nous prévoyons de nous concentrer dans Chainlink 2.0 sur les avancées dans sept domaines clés : les smart contract hybrides, faisant abstraction de la complexité, de la mise à l'échelle, de la confidentialité, de l'équité des ordres pour les transactions, de la minimisation de la confiance et de la sécurité (cryptoéconomique) basée sur des incitations. Dans l'introduction de cet article, nous présentons un aperçu de la décentralisation Oracle Networks dans la section 1.1, puis nos sept domaines clés d'innovation dans la section 1.2. Nous décrivons l’organisation du reste de cet article dans la section 1.3. 1.1 Réseaux Oracle décentralisés Les réseaux Oracle décentralisés sont conçus pour améliorer et étendre les capacités de smart contracts sur une cible blockchain ou une chaîne principale via des fonctions qui sont non disponible nativement. Pour ce faire, ils fournissent les trois ressources de base trouvées dans systèmes informatiques : mise en réseau, stockage et calcul. Un DON vise à offrir ces ressources avec de fortes propriétés de confidentialité, d’intégrité et de disponibilité,1 ainsi que ainsi que la responsabilité. Les DON sont formés par des comités de nœuds oracle qui coopèrent pour remplir un objectif spécifique. un emploi ou choisir d'établir une relation à long terme afin de fournir des services persistants aux clients. Les DON sont conçus de manière indépendante de blockchain. Ils promettent de servir de un outil puissant et flexible permettant aux développeurs d'applications de créer un support hors chaîne pour leurs smart contracts sur n’importe quelle chaîne principale prise en charge. Deux types de fonctionnalités réalisent les capacités d'un DON : les exécutables et adaptateurs. Les exécutables sont des programmes qui s'exécutent en continu et de manière décentralisée sur le DON. Bien qu'ils ne stockent pas directement les actifs de la chaîne principale, ils présentent des avantages importants, notamment des performances élevées et la capacité d'effectuer des transactions confidentielles. calcul. Les exécutables s'exécutent de manière autonome sur un DON et effectuent des tâches déterministes opérations. Ils fonctionnent en synergie avec des adaptateurs qui relient le DON à des ressources externes et peut être appelé par des exécutables. Les adaptateurs, tels que nous les envisageons pour les DON, sont un généralisation des adaptateurs externes en Chainlink aujourd'hui. Alors que les adaptateurs existants généralement, ils ne récupèrent que les données des sources de données, les adaptateurs peuvent fonctionner de manière bidirectionnelle ; dans DONs, ils peuvent en outre exploiter le calcul conjoint par les nœuds DON pour obtenir fonctionnalités supplémentaires, telles que le cryptage des rapports pour une consommation respectueuse de la confidentialité par un exécutable. Pour donner une idée du fonctionnement de base d'un DON, la figure 1 montre conceptuellement comment un DON peut être utilisé pour envoyer des rapports à un blockchain et ainsi obtenir la fonctionnalité oracle traditionnelle et existante. Les DON peuvent cependant fournir de nombreuses fonctionnalités supplémentaires, au-delà 1La « triade CIA » de la sécurité de l’information [123, p. 26, §2.3.5].Les réseaux existants de Chainlink. Par exemple, dans la structure générale de la figure 1, l'exécutable pourrait enregistrer les données récupérées sur le prix des actifs sur le DON, en utilisant ces données pour calculer, par exemple, une moyenne finale pour ses rapports. Figure 1 : Figure conceptuelle montrant à titre d'exemple comment un réseau Oracle décentralisé peut réaliser la fonctionnalité de base oracle, c'est-à-dire relayer des données hors chaîne vers un contrat. Un l'exécutable utilise des adaptateurs pour récupérer les données hors chaîne, sur lesquelles il calcule, envoyant la sortie via un autre adaptateur vers une cible blockchain. (Les adaptateurs sont initiés par le code dans le DON, représenté par des petites cases bleues ; les flèches indiquent la direction du flux de données pour cette exemple particulier.) L'exécutable peut en outre lire et écrire sur le DON local stockage pour conserver l’état et/ou communiquer avec d’autres exécutables. La mise en réseau, le calcul et le stockage flexibles dans les DON, tous représentés ici, permettent une multitude de nouvelles candidatures. Un avantage majeur des DON est leur capacité à démarrer de nouveaux services blockchain. DONs sont un véhicule grâce auquel les réseaux oracle existants peuvent rapidement mettre en place des applications de service cela nécessiterait aujourd’hui la création de réseaux spécialement conçus. Nous donnons un certain nombre de des exemples de telles applications dans la section 4. Dans la section 3, nous fournissons plus de détails sur les DON, décrivant leurs capacités dans termes de l'interface qu'ils présentent aux développeurs et aux utilisateurs. 1.2 Sept objectifs de conception clés Nous passons ici brièvement en revue les sept axes clés énumérés ci-dessus pour l’évolution de Chainlink, à savoir :Hybrid smart contracts: Au cœur de notre vision pour Chainlink se trouve l'idée d'une sécurité sécurisée combinant des composants en chaîne et hors chaîne dans des smart contract. We refer to contracts concrétiser cette idée sous la forme de smart contract hybrides ou de contrats hybrides.2 Les blockchains jouent et continueront de jouer deux rôles essentiels dans les services décentralisés écosystèmes : ils sont tous deux les lieux où la propriété des cryptomonnaies est représentée. et des points d’ancrage solides pour les services décentralisés. Les contrats intelligents doivent donc être représentés ou exécutés en chaîne, mais leurs capacités en chaîne sont sévèrement limitées. Purely le code des contrats en chaîne est lent, coûteux et insulaire, incapable de bénéficier du monde réel données et une variété de fonctionnalités qui sont intrinsèquement irréalisables sur la chaîne, y compris diverses formes de calcul confidentiel, la génération de (pseudo) hasard sécurisé contre mineur / manipulation validator, etc. Pour que les smart contract réalisent leur plein potentiel, il faut donc des smart contract. être architecturé en deux parties : une partie en chaîne (que nous désignons généralement par SC) et une partie hors chaîne, un exécutable exécuté sur un DON (que nous désignons généralement par exec). L'objectif est de parvenir à une composition sécurisée de fonctionnalités en chaîne avec le multiplicité de services hors chaîne que DON visent à fournir. Together, the two parts constituer un contrat hybride. Nous présentons l'idée conceptuellement dans la figure 2. Déjà aujourd'hui, Les services Chainlink3 tels que les flux de données et les VRF permettent des performances autrement irréalisables smart contract applications, allant des DeFi aux NFT générés équitablement jusqu'à l'assurance décentralisée, comme premiers pas vers un cadre plus général. As Chainlink services développez-vous et devenez plus performant selon notre vision dans ce livre blanc, tout comme sera la puissance des systèmes smart contract sur tous les blockchain. Nos six autres objectifs clés de ce livre blanc peuvent être considérés comme agissant dans le service du premier, celui des contrats hybrides. Ces focus consistent à supprimer les éléments visibles complexité des contrats hybrides, créant des services hors chaîne supplémentaires qui permettent construction de contrats hybrides toujours plus performants et, dans le cas d’une minimisation de la confiance, renforcement des propriétés de sécurité obtenues par les contrats hybrides. We leave the idea de contrats hybrides implicites dans une grande partie du document, mais toute combinaison de La logique MAINCHAIN avec un DON peut être considérée comme un contrat hybride. Faire abstraction de la complexité : Les DON sont conçus pour utiliser des systèmes décentralisés des systèmes faciles pour les développeurs et les utilisateurs en éliminant les machines souvent complexes derrière la gamme de services puissante et flexible de DON. Services Chainlink existants ont déjà cette fonctionnalité. Par exemple, les flux de données dans Chainlink présentent aujourd'hui des interfaces en chaîne qui n'obligent pas les développeurs à se soucier des détails au niveau du protocole, comme les moyens par lesquels l'OCR applique les rapports de consensus entre un 2L'idée d'une composition de contrat en chaîne/hors chaîne est apparue précédemment dans divers contextes contraints. formulaires, par exemple, les systèmes de couche 2, les blockchains [80] basés sur TEE, etc. Notre objectif est de prendre en charge et de généraliser ces approches et garantir qu'elles peuvent englober l'accès aux données hors chaîne et d'autres oracle clés services. Les services 3Chainlink comprennent une variété de services et de fonctionnalités décentralisés disponibles via le réseau. Ils sont proposés par les nombreux opérateurs de nœuds regroupés en différents réseaux oracle across the ecosystem.Figure 2 : Figure conceptuelle illustrant la composition des contrats en chaîne/hors chaîne. Un hybride smart contract 3⃝se compose de deux composants complémentaires : un en chaîne composant SC 1⃝, résident sur un blockchain, et un composant hors chaîne exec 2⃝ qui s'exécute sur un DON. Le DON sert également de pont entre les deux composants comme connecter le contrat hybride à des ressources hors chaîne telles que des services Web, d'autres blockchains, stockage décentralisé, etc. ensemble décentralisé de nœuds. Les DON vont encore plus loin dans le sens où ils élargissent la gamme de services pour lesquels Chainlink peut offrir aux développeurs une couche d'abstraction avec accompagnant des interfaces rationalisées pour des services de haut niveau. Nous présentons plusieurs exemples d'application dans la section 4 qui mettent en évidence cette approche. Nous envisageons, par exemple, que les entreprises utilisent les DON comme forme de middleware sécurisé pour connecter leurs systèmes existants aux blockchain. (Voir la section 4.2.) Cette utilisation des DON élimine la complexité de la dynamique générale blockchain (frais, réorganisations, etc.). C'est aussi supprime les fonctionnalités de blockchain spécifiques, permettant ainsi aux entreprises de connecter leurs systèmes existants à une gamme toujours plus large de systèmes blockchain sans un besoin d'expertise spécialisée dans ces systèmes ou, plus généralement, dans le développement de systèmes décentralisés. A terme, notre ambition est de pousser le degré d'abstraction atteint par Chainlink au point de mettre en œuvre ce que nous appelons une métacouche décentralisée. Une telle couche ferait abstraction de la distinction en chaîne/hors chaîne pour toutes les classes de développeurs et les utilisateurs de DApps, permettant une création et une utilisation transparentes de services décentralisés.Pour simplifier le processus de développement, les développeurs pourraient spécifier la fonctionnalité DApp dans la métacouche en tant qu'application virtuelle dans un modèle de machine unifié. Ils pourraient puis utilisez un compilateur metallayer décentralisé pour instancier automatiquement le DApp comme un ensemble de fonctionnalités décentralisées interopérables couvrant blockchains, DONs et prestations externes. (L'un de ces services externes pourrait être un système d'entreprise, ce qui rendrait la couche méta utile pour les applications impliquant des systèmes d'entreprise existants.) la compilation s'apparente à la façon dont les compilateurs et les kits de développement logiciel (SDK) modernes aider les programmeurs généralistes à utiliser tout le potentiel du matériel hétérogène des architectures composées d'un CPU à usage général et de matériel spécialisé comme des GPU, des accélérateurs d’apprentissage automatique ou des enclaves de confiance. La figure 3 présente cette idée à un niveau conceptuel. Les smart contract hybrides sont une première étape vers cette vision et vers un concept que nous appelons méta-contrats. Les méta-contrats sont des applications codées de manière décentralisée métacouche et englobent implicitement la logique en chaîne (smart contract), ainsi que le calcul hors chaîne et la connectivité entre divers blockchain et hors chaîne existants prestations. Étant donné le besoin de prise en charge du langage et du compilateur, de nouveaux modèles de sécurité et harmonisation conceptuelle et technique de technologies disparates, mais réalisation d'un véritable métacouche décentralisé est un objectif ambitieux auquel nous aspirons depuis longtemps horizon temporel. Il s’agit néanmoins d’un modèle idéal utile à garder à l’esprit lors de la lecture ce document, non détaillé ici, mais sur lequel nous prévoyons de nous concentrer dans nos futurs travaux sur Chainlink. Mise à l'échelle : Un objectif d'une importance primordiale dans nos conceptions évolutives est de permettre au Réseau Chainlink pour répondre aux besoins d’évolutivité croissants de l’écosystème blockchain. La congestion du réseau devenant un problème récurrent dans les systèmes sans autorisation existants. blockchains [86], de nouvelles conceptions blockchain plus performantes entrent en service, par exemple, [103, 120, 203], ainsi que des technologies complémentaires de mise à l'échelle de couche 2, par exemple [5, 12, 121, 141, 169, 186, 187]. Les services Oracle doivent atteindre des latences et des débits qui répondent aux exigences de performances de ces systèmes tout en minimisant les frais en chaîne (par exemple, les coûts du gaz) pour les opérateurs contractuels et les utilisateurs ordinaires. Avec DONs, Chainlink la fonctionnalité vise à aller plus loin et à offrir des performances suffisamment élevées pour les systèmes purement Web. Les DON tirent une grande partie de leurs gains de performances de leur utilisation de protocoles de consensus rapides, basés sur des comités ou sans autorisation, qu'ils combinent avec les blockchain. ils soutiennent. Nous nous attendons à ce que de nombreux DON avec des configurations différentes fonctionnent en parallèle ; différents DApp et utilisateurs peuvent naviguer dans les compromis dans les choix consensuels sous-jacents selon les exigences de leur application. Les DON peuvent être considérés en fait comme des technologies de couche 2. Nous nous attendons à ce que parmi d'autres services, DONs prendront en charge le Transaction Execution Framework (TEF), qui facilite l'intégration efficace des DON et donc des oracle avec d'autres systèmes de couche 2 : par exemple, rollups, systèmes qui regroupent les transactions hors chaîne pour atteindre améliorations des performances. Nous introduisons le TEF dans la section 6.

Figure 3 : Figure conceptuelle montrant la réalisation idéale d'une métacouche décentralisée. Pour facilité de développement, un développeur spécifie une DApp, surlignée en rose, comme une application virtuelle. application dans un modèle de machine unifié. Un compilateur metallayer décentralisé génère automatiquement les fonctionnalités d'interopérabilité correspondantes : smart contracts (notées par SC), la logique (notée exec) sur les DON, les adaptateurs se connectant aux services externes cibles, etc., comme indiqué en surbrillance jaune. La figure 4 montre conceptuellement comment les DON améliorent la mise à l'échelle de blockchain (smart contract). en concentrant le traitement des transactions et des rapports oracle hors chaîne, plutôt que sur chaîne. Ce changement dans le lieu principal de calcul réduit la latence des transactions et frais tout en augmentant le débit des transactions. Confidentialité : Les blockchains offrent une transparence sans précédent pour les smart contract et les applications qu'elles réalisent. Mais il existe une tension fondamentale entre transparence et confidentialité. Aujourd’hui, par exemple, les échanges décentralisés des utilisateursFigure 4 : Figure conceptuelle montrant comment les réseaux Oracle décentralisés améliorent mise à l'échelle des smart contract compatibles blockchain. Figure A ⃝montre un oracle conventionnel architecture. Les transactions sont envoyées directement au blockchain, tout comme les rapports oracle. Ainsi, le blockchain, surligné en jaune, est le principal lieu de traitement des transactions. La figure B⃝montre l'utilisation d'un DON pour prendre en charge les contrats sur le blockchain. Un DON l'exécutable traite les transactions ainsi que les données provenant de systèmes externes et de transferts résultats (par exemple, transactions groupées ou changements d'état du contrat résultant des effets des transactions) vers le blockchain. Le DON, surligné en jaune, est donc le principal lieu de traitement des transactions. les actions sont enregistrées en chaîne, ce qui facilite le suivi du comportement d'échange, mais aussi rendre publiquement visibles les transactions financières des utilisateurs. De même, les données relayées vers smart les contrats restent en chaîne. Cela rend ces données facilement vérifiables, mais agit comme un élément dissuasif pour les fournisseurs de données souhaitant fournir aux smart contract des données sensibles ou données propriétaires. Nous pensons que les réseaux oracle joueront un rôle central dans le catalyseur de la prochaine génération des systèmes qui combinent la transparence innée des blockchain avec de nouvelles protections de confidentialité. Dans cet article, nous montrons comment ils y parviendront en utilisant trois approches principales : • Adaptateurs préservant la confidentialité : deux technologies avec déploiement planifié dans les réseaux de Chainlink, DECO [234] et Town Crier [233], permettent aux nœuds oracle de récupérer les données des systèmes hors chaîne de manière à protéger la confidentialité et les données des utilisateurs confidentialité. Ils joueront un rôle clé dans la conception des adaptateurs pour les DON. (Voir la section 3.6.2 pour plus de détails sur ces deux technologies.) • Calcul confidentiel : les DON peuvent simplement cacher leur calcul aux blockchain fiables. Grâce à des calculs multipartites sécurisés et/ou à des environnements d'exécution fiables, une confidentialité plus forte est également possible dans laquelle les nœuds DON calculer sur des données sur lesquelles ils n’ont eux-mêmes pas de visibilité.


• Prise en charge des systèmes confidentiels de couche 2 : le TEF est conçu pour prendre en charge une variété de systèmes de couche 2, dont beaucoup utilisent des preuves de connaissance nulle pour fournir diverses formes de confidentialité des transactions. Nous discutons de ces approches dans la section 3 (avec des détails supplémentaires dans la section 6, l'annexe B.1 et l'annexe B.2). La figure 5 présente une vue conceptuelle de la manière dont les données sensibles peuvent circuler depuis des sources externes vers un smart contract au moyen d'adaptateurs préservant la confidentialité et calcul confidentiel dans un DON. Figure 5 : Schéma conceptuel des opérations de préservation de la confidentialité dans un DON sur données sensibles (surlignées en jaune). Données sources sensibles (cercles noirs) sur le Web les serveurs sont extraits vers le DON à l'aide d'adaptateurs préservant la confidentialité (lignes bleues à double flèche). Le DON reçoit des données dérivées (cercles creux) de ces adaptateurs : le résultat de l'application d'une fonction ou, par exemple, du partage de secrets, à la source sensible données. Un exécutable sur le DON peut appliquer un calcul confidentiel aux données dérivées pour construire un rapport (double cercle), qu'il envoie via un adaptateur au blockchain. Nous pensons que des outils puissants de gestion des données confidentielles ouvriront la voie à toute une gamme d'applications. Parmi ceux-ci figurent la finance privée décentralisée (et centralisée), l'identité décentralisée, les prêts en chaîne basés sur le crédit et des solutions plus efficaces et plus efficaces. des protocoles conviviaux de connaissance du client et d’accréditation, comme nous l’expliquons dans la section 4. Équité des ordres pour les transactions : Les designs blockchain d'aujourd'hui ont un petit côté sale secret de polichinelle : Ils sont centralisés de manière éphémère. Les mineurs et les validator peuvent commander des trans-actions comme ils le souhaitent. L'ordre des transactions peut également être manipulé par les utilisateurs comme en fonction des frais de réseau qu'ils paient (par exemple, les prix du gaz en Ethereum) et à certains dans une large mesure en tirant parti de connexions réseau rapides. Une telle manipulation peut, par exemple par exemple, prendre la forme d'un front-running, dans lequel un acteur stratégique tel qu'un mineur observe la transaction d'un utilisateur et insère sa propre transaction d'exploitation dans une transaction antérieure position dans le même bloc – voler efficacement de l’argent à l’utilisateur en tirant parti de la connaissance préalable de la transaction de l’utilisateur. Par exemple, un robot peut passer un ordre d'achat avant celui d’un utilisateur. Elle peut alors profiter de la hausse du prix des actifs induite par la le métier de l’utilisateur. Certains robots sont à l'avant-garde et nuisent aux utilisateurs ordinaires (analogue à la haute fréquence) le trading à Wall Street – est déjà répandu et bien documenté [90], tout comme le sont les autres des attaques telles que le back-running [159] et la simulation de transactions automatisées [195]. Des propositions visant à systématiser l’exploitation des commandes par les mineurs ont même fait surface récemment [110]. Les technologies de couche 2 telles que les rollup ne résolvent pas le problème, mais se contentent de recentraliser commande, en le plaçant entre les mains de l'entité qui crée un rollup. L'un de nos objectifs est d'introduire dans Chainlink un service appelé Fair Sequencing. Services (FSS) [137]. FSS aide les concepteurs smart contract à garantir une commande équitable pour leurs transactions et éviter les attaques de front, de back-running et associées sur les transactions des utilisateurs ainsi que sur d'autres types de transactions, telles que la transmission de rapports oracle. FSS permet à un DON de mettre en œuvre des idées telles que la notion rigoureuse et temporelle d'ordre équitable introduite dans [144]. Comme avantage accessoire, le FSS peut également réduire la consommation du réseau des utilisateurs. frais (par exemple, les frais d’essence). En bref, dans FSS, les transactions passent par le DON, plutôt que de se propager directement vers une cible smart contract. Le DON commande les transactions puis les transmet les au contrat. Figure 6 : Exemple de la manière dont le FSS est bénéfique. Figure A ⃝montre comment un mineur, exploitant son pouvoir centralisé d'ordonner des transactions, peut échanger une paire de transactions : transaction 1⃝ arrive avant 2⃝, mais le mineur le séquence après 2⃝. En revanche, la figure B⃝montre comment un DON décentralise le processus de commande entre les nœuds DON. Si un quorum de les nœuds honnêtes reçoivent 1⃝avant 2⃝, le FSS fait apparaître 1⃝ avant 2⃝sur la chaîne— empêcher la réorganisation des mineurs en attachant des numéros de séquence exécutoires au contrat. La figure 6 compare l'exploitation minière standard avec FSS. Il montre comment dans le minage standard,le processus de commande des transactions est centralisé chez le mineur et donc soumis à manipulation, telle que réorganiser une paire de transactions par rapport à leur arrivée fois. En revanche, dans FSS, le processus est décentralisé entre les nœuds DON. En supposant un quorum de nœuds honnêtes, FSS aide à appliquer des politiques telles que l'ordre temporel des transactions, réduisant ainsi les possibilités de manipulation par les mineurs et d’autres entités. De plus, étant donné que les utilisateurs n'ont pas besoin de rivaliser pour obtenir des commandes préférentielles basées sur le prix du gaz, ils peuvent payer des prix du gaz relativement bas (alors que les transactions du DON peuvent être regroupées pour les économies de gaz). Minimisation de la confiance : Notre objectif général dans la conception des DON est de faciliter une couche de support fiable pour les smart contract et autres systèmes dépendants de oracle au moyen de la décentralisation, d’outils cryptographiques et de garanties cryptoéconomiques. Un DON lui-même est décentralisé et les utilisateurs peuvent choisir parmi n'importe quel DON disponible qui prend en charge la chaîne principale sur laquelle ils souhaitent opérer ou générer des DON supplémentaires avec des comités de nœuds en qui ils ont confiance. Cependant, pour certaines applications, en particulier les smart contract, les utilisateurs de Chainlink peuvent privilégier un modèle de confiance qui traite la chaîne principale soutenue par un DON comme plus digne de confiance que le DON lui-même. Pour ces utilisateurs, nous avons déjà ou prévoyons d'intégrer dans le architecture du réseau Chainlink un certain nombre de mécanismes permettant de conclure des contrats sur une chaîne principale pour renforcer les garanties de sécurité fournies par les DON, tandis qu'au en même temps, en appliquant également des protections contre la possibilité de sources de données corrompues tels que les serveurs Web à partir desquels le DON obtient des données. Nous décrivons ces mécanismes dans la section 7. Ils se répartissent en cinq rubriques principales : • Authentification de la source de données : outils permettant aux fournisseurs de données de signer numériquement leurs données et renforcer ainsi la chaîne de contrôle entre l'origine et contrat de confiance. • Rapports minoritaires DON : indicateurs émis par un sous-ensemble minoritaire de nœuds DON qui observe des malversations majoritaires dans le DON. • Garde-corps : logique sur une chaîne principale qui détecte les conditions anormales et les pauses ou interrompt l'exécution du contrat (ou invoque d'autres mesures correctives). • Gouvernance minimisant la confiance : utilisation de mises à jour à publication progressive pour faciliter l'inspection communautaire, ainsi que d'interventions d'urgence décentralisées pour des interventions rapides. réponse aux pannes du système. • Authentification d'entité décentralisée : utilisation d'une infrastructure à clé publique (PKI) pour identifier les entités du réseau Chainlink. La figure 7 présente un schéma conceptuel de nos objectifs de minimisation de la confiance. Sécurité (cryptoéconomique) incitative : La décentralisation de la génération de rapports sur les nœuds oracle permet de garantir la sécurité même lorsque certains nœuds sont corrompus.


Figure 7 : Représentation conceptuelle de l'objectif de minimisation de la confiance de Chainlink, qui consiste à minimiser le besoin des utilisateurs d'un comportement correct du DON et des sources de données telles que le Web serveurs. Les surlignages jaunes dans la figure indiquent des loci de minimisation de la confiance : le DON et ensembles individuels ou minoritaires de serveurs Web. Les surlignages roses indiquent les composants du système qui sont très fiables par hypothèse : des contrats sur le blockchain et une majorité de serveurs Web, c'est-à-dire les serveurs Web dans leur ensemble. Il est tout aussi important de s’assurer que les nœuds bénéficient d’une incitation financière à se comporter correctement. Jalonnement, c'est-à-dire exiger que les nœuds fournissent des dépôts de LINK et slashing (confiser) ces dépôts en cas de mauvaise conduite, jouera un rôle clé dans Chainlink. Il s'agit d'un modèle d'incitation important déjà utilisé dans un certain nombre de blockchain, par exemple, [81, 103, 120, 204]. Cependant, le jalonnement dans Chainlink semble très différent de celui de staking en mode autonome. blockchains. Le jalonnement dans blockchains vise à empêcher les attaques contre le consensus. Il a un objectif différent dans Chainlink : garantir la livraison en temps opportun de rapports oracle corrects. Un système staking bien conçu pour un réseau oracle devrait rendre les attaques telles que la corruption non rentable pour un adversaire, même lorsque la cible est un smart contract avec un valeur monétaire. Dans cet article, nous présentons une approche générale de staking en Chainlink avec trois clés innovations :1. Un modèle accusatoire puissant qui englobe les attaques négligées dans les approches. Un exemple est ce que nous appelons la corruption potentielle. C'est une forme de corruption qui détermine quels nœuds reçoivent des pots-de-vin sur une base conditionnelle, par exemple, offre des pots-de-vin garantis à l'avance aux nœuds qu'un mécanisme staking sélectionne à aléatoire pour des rôles particuliers (comme le déclenchement de l'évaluation du rapport). 2. Impact super-linéaire staking, signifiant officieusement que pour réussir, un adversaire doit disposer d'un budget de milliards de dollars supérieur aux dépôts combinés de tous les oracle. nœuds. Plus précisément, nous entendons qu'en fonction de n, \(B(n) ≫\)dn dans un réseau de n nœuds oracle chacun avec un montant de dépôt fixe $d (plus formellement, \(B(n) is asymptotically larger in n than \)dn). La figure 8 donne une vue conceptuelle de cette propriété. 3. Le cadre d'incitation implicite (IIF), un modèle d'incitation que nous avons conçu pour englober des incitations empiriquement mesurables au-delà des dépôts explicites staking fonds, y compris les futures opportunités de frais des nœuds. L'IIF étend la notion de mise au-delà des dépôts de nœuds explicites. Figure 8 : Diagramme conceptuel illustrant la mise à l'échelle super-linéaire dans Chainlink staking. Le le pot-de-vin $B(n) requis par un adversaire croît plus vite en n que les dépôts combinés $dn de tous les nœuds oracle. Nous montrons comment l'impact IIF et l'impact super-linéaire staking induisent ensemble ce que nous appeler un cercle vertueux de sécurité économique pour les réseaux oracle. Lorsque de nouveaux utilisateurs entrent
le système, augmentant les revenus potentiels futurs liés à l'exécution de nœuds Chainlink, le le coût marginal de la sécurité économique diminue pour les utilisateurs actuels et futurs. Dans un régime de demande élastique, cette diminution du coût incite des utilisateurs supplémentaires à utiliser le réseau, perpétuant continuellement l’adoption dans un cercle vertueux continu. Remarque : Bien que ce livre blanc présente des éléments importants de notre vision de l'évolution de Chainlink, il est informel et comprend peu de spécificités techniques détaillées. Nous prévoyons de publier des documents techniques ciblés sur des fonctionnalités et des approches supplémentaires au fur et à mesure de leur évolution. Par ailleurs, il est important de souligner que de nombreux éléments de la vision présentée ici (améliorations de mise à l'échelle, technologies de confidentialité, FSS, etc.) peuvent et seront déployé sous forme préliminaire avant même que les DON avancés ne deviennent une fonctionnalité de base de Chainlink. 1.3 Organisation de ce document Nous présentons notre modèle de sécurité et notre notation dans la section 2 et décrivons le système décentralisé. API Oracle Network dans la section 3. Dans la section 4, nous présentons un certain nombre d'exemples de applications pour lesquelles les DON fournissent une plate-forme de déploiement attrayante. Les lecteurs peuvent Apprenez la plupart des concepts clés de l'article en lisant jusqu'à présent. Le reste du document contient des détails supplémentaires. Nous décrivons le séquençage équitable Services (FSS) dans la section 5 et le Transaction-Execution Framework (TEF) dans la section 6. Nous décrivons notre approche de la minimisation de la confiance dans la section 7. Nous considérons certains exigences de déploiement importantes DON, à savoir le déploiement incrémentiel de fonctionnalités, l'adhésion dynamique au grand livre et la responsabilité dans la section 8. Enfin, dans la section 9, nous donnons un aperçu de notre approche en développement en matière de conception d’incitations. Nous concluons dans la section 10. Pour aider les lecteurs qui ont une familiarité limitée avec les concepts de cet article, nous fournir un glossaire à l'annexe A. Nous présentons plus de détails sur l'interface DON et les fonctionnalités dans l'Annexe B et présentent quelques exemples d'adaptateurs dans l'Annexe C. Dans l'Annexe D, nous décrivons une primitive cryptographique pour les sources de données à confiance minimisée. authentification appelée signatures fonctionnelles et introduire une nouvelle variante appelée signatures fonctionnelles discrétisées. Nous discutons de quelques considérations portant sur le comité sélection pour DONs à l’annexe F.

Giới thiệu

Blockchain oracle ngày nay thường được xem là dịch vụ phi tập trung với một mục tiêu: để chuyển tiếp dữ liệu từ các tài nguyên ngoài chuỗi tới blockchains. Tuy nhiên, đó là một bước ngắn, từ chuyển tiếp dữ liệu đến tính toán, lưu trữ hoặc truyền dữ liệu hai chiều. Quan sát này biện minh cho khái niệm rộng hơn nhiều về chức năng của oracles. Vì vậy, quá thực hiện các yêu cầu dịch vụ ngày càng tăng của smart contract và ngày càng đa dạng công nghệ dựa trên mạng oracle. Tóm lại, oracle có thể và sẽ cần là một giao diện có mục đích chung, hai chiều, hỗ trợ tính toán giữa và giữa các hệ thống trên chuỗi và ngoài chuỗi. Vai trò của Oracles trong hệ sinh thái blockchain là nâng cao hiệu suất, chức năng và khả năng tương tác của smart contract để chúng có thể mang lại các mô hình tin cậy mới và tính minh bạch cho nhiều ngành công nghiệp. Sự chuyển đổi này sẽ diễn ra thông qua việc mở rộng việc sử dụng smart contract kết hợp, hợp nhất Thuộc tính đặc biệt của blockchains với khả năng độc đáo của các hệ thống ngoài chuỗi chẳng hạn như oracle mạng và do đó đạt được phạm vi tiếp cận và sức mạnh lớn hơn nhiều so với các hệ thống trên chuỗi trong sự cô lập. Trong sách trắng này, chúng tôi trình bày rõ tầm nhìn về cái mà chúng tôi gọi là Chainlink 2.0, một sự phát triển của Chainlink ngoài quan niệm ban đầu trong sách trắng ban đầu Chainlink [98]. Chúng tôi thấy trước vai trò ngày càng mở rộng của các mạng oracle, trong đó chúng bổ sung và nâng cao blockchain hiện có và mới bằng cách cung cấp kết nối và tính toán phổ quát nhanh chóng, đáng tin cậy và bảo mật cho kết hợp smart contracts. Chúng tôi tin rằng oracle mạng thậm chí sẽ phát triển để trở thành tiện ích để xuất dữ liệu cấp blockchain có tính toàn vẹn cao sang các hệ thống ngoài blockchain hệ sinh thái. Ngày nay, các nút Chainlink do một nhóm thực thể đa dạng điều hành kết hợp với nhau trong các mạng oracle để chuyển tiếp dữ liệu tới smart contract trong cái được gọi là báo cáo. Chúng ta có thể xem như vậy oracle nút như một ủy ban tương tự như ủy ban trong sự đồng thuận cổ điển blockchain [72], nhưng với mục tiêu hỗ trợ blockchain hiện có thay vì cung cấp chức năng độc lập. Với các chức năng ngẫu nhiên có thể xác minh (VRF) và Báo cáo Off-Chain (OCR), Chainlink đã phát triển theo hướng khung và cơ sở hạ tầng có mục đích chung để cung cấp tài nguyên tính toán mà smart contract yêu cầu cho chức năng nâng cao. Nền tảng kế hoạch của chúng tôi cho Chainlink 2.0 là cái mà chúng tôi gọi là Oracle phi tập trung Mạng hoặc gọi tắt là DON. Kể từ khi chúng tôi giới thiệu thuật ngữ “oracle mạng” trong bản gốc Chainlink sách trắng [98], oracle đã phát triển chức năng phong phú hơn bao giờ hết và bề rộng của ứng dụng. Trong bài viết này, chúng tôi đưa ra một định nghĩa mới cho thuật ngữ này theo tới tầm nhìn tương lai của chúng tôi về hệ sinh thái Chainlink. Trong chế độ xem này, DON là một mạng được duy trì bởi một ủy ban gồm Chainlink nút. Bắt nguồn từ một giao thức đồng thuận, nó hỗ trợ bất kỳ chức năng oracle nào trong phạm vi không giới hạn được chọn để triển khai bởi ủy ban. Do đó, DON hoạt động như một lớp trừu tượng blockchain, cung cấp giao diện tới các tài nguyên ngoài chuỗi cho cả smart contract và các hệ thống khác. Nó cũng cung cấp truy cập vào các tài nguyên điện toán ngoài chuỗi phi tập trung nhưng hiệu quả cao. Nói chung, a DON hỗ trợ các hoạt động trên chuỗi chính. Mục tiêu của nó là cho phép an toàn và linh hoạtble lai smart contracts, kết hợp tính toán trên chuỗi và ngoài chuỗi với kết nối với các tài nguyên bên ngoài. Chúng tôi nhấn mạnh rằng ngay cả khi sử dụng ủy ban trong DONs, chính Chainlink vốn dĩ vẫn không được phép. DON đóng vai trò là nền tảng của quyền không cần cấp phép khung trong đó các nút có thể kết hợp với nhau để triển khai các mạng oracle tùy chỉnh với chế độ riêng của họ để bao gồm nút, có thể được phép hoặc không được phép. Với DON làm nền tảng, chúng tôi dự định tập trung vào Chainlink 2.0 dựa trên những tiến bộ trong bảy các lĩnh vực chính: smart contract kết hợp, loại bỏ sự phức tạp, mở rộng quy mô, tính bảo mật, tính công bằng trong trật tự cho các giao dịch, giảm thiểu sự tin cậy và bảo mật (kinh tế tiền điện tử) dựa trên khuyến khích. Trong phần giới thiệu bài viết này, chúng tôi trình bày tổng quan về Phi tập trung Oracle Networks trong Phần 1.1 và sau đó là bảy lĩnh vực đổi mới chính của chúng tôi trong Phần 1.2. Chúng tôi mô tả cách tổ chức phần còn lại của bài viết này trong Phần 1.3. 1.1 Mạng Oracle phi tập trung Mạng Oracle phi tập trung được thiết kế để nâng cao và mở rộng khả năng trong số smart contract trên mục tiêu blockchain hoặc chuỗi chính thông qua các chức năng không có sẵn nguyên bản. Họ làm như vậy bằng cách cung cấp ba nguồn lực cơ bản được tìm thấy trong Hệ thống máy tính: mạng, lưu trữ và tính toán. DON nhằm mục đích cung cấp những tài nguyên này có đặc tính bảo mật, toàn vẹn và sẵn có mạnh mẽ,1 như cũng như trách nhiệm giải trình. DON được thành lập bởi ủy ban của các nút oracle hợp tác để thực hiện một mục tiêu cụ thể việc làm hoặc chọn thiết lập mối quan hệ lâu dài để cung cấp dịch vụ lâu dài tới khách hàng. DON được thiết kế theo cách blockchain bất khả tri. Họ hứa sẽ phục vụ như một công cụ mạnh mẽ và linh hoạt dành cho các nhà phát triển ứng dụng để tạo ra sự hỗ trợ ngoài chuỗi cho smart contract của họ trên bất kỳ chuỗi chính nào được hỗ trợ. Hai loại chức năng nhận ra khả năng của DON: thực thi và bộ điều hợp. Tệp thực thi là các chương trình chạy liên tục và theo cách phi tập trung trên DON. Mặc dù chúng không trực tiếp lưu trữ tài sản trên chuỗi chính nhưng chúng có những lợi ích quan trọng, bao gồm hiệu suất cao và khả năng thực hiện bảo mật. tính toán. Các tệp thực thi chạy tự động trên DON và thực hiện xác định hoạt động. Chúng hoạt động cùng với các bộ điều hợp liên kết DON với các tài nguyên bên ngoài và có thể được gọi bởi các tệp thực thi. Bộ điều hợp, như chúng tôi hình dung cho DON, là một tổng quát về bộ điều hợp bên ngoài trong Chainlink ngày hôm nay. Trong khi các bộ điều hợp hiện có thường chỉ lấy dữ liệu từ các nguồn dữ liệu, bộ điều hợp có thể hoạt động hai chiều; trong DONs, họ có thể tận dụng thêm khả năng tính toán chung của các nút DON để đạt được các tính năng bổ sung, chẳng hạn như mã hóa báo cáo để sử dụng bảo vệ quyền riêng tư bằng cách một tệp thực thi. Để cung cấp ý nghĩa về hoạt động cơ bản của DON, Hình 1 cho thấy một cách khái niệm cách một DON có thể được sử dụng để gửi báo cáo tới blockchain và do đó đạt được chức năng oracle truyền thống, hiện có. Tuy nhiên, DON có thể cung cấp nhiều tính năng bổ sung 1“Bộ ba CIA” về bảo mật thông tin [123, tr. 26, §2.3.5].Mạng hiện có của Chainlink. Ví dụ, trong cấu trúc chung của Hình 1, tệp thực thi có thể ghi lại dữ liệu giá tài sản được tìm nạp trên DON, sử dụng dữ liệu đó để tính toán, ví dụ: trung bình kéo dài cho các báo cáo của nó. Hình 1: Hình minh họa dưới dạng ví dụ về cách Mạng Oracle phi tập trung có thể nhận ra chức năng oracle cơ bản, tức là chuyển tiếp dữ liệu ngoài chuỗi sang hợp đồng. Một thực thi sử dụng bộ điều hợp để tìm nạp dữ liệu ngoài chuỗi mà nó tính toán, gửi đầu ra qua một bộ chuyển đổi khác tới mục tiêu blockchain. (Bộ điều hợp được khởi tạo bằng mã trong DON, được biểu thị bằng các hộp nhỏ màu xanh; mũi tên chỉ hướng của luồng dữ liệu cho việc này ví dụ cụ thể.) Ngoài ra, tệp thực thi có thể đọc và ghi vào cục bộ DON lưu trữ để giữ trạng thái và/hoặc liên lạc với các tệp thực thi khác. Kết nối mạng, tính toán và lưu trữ linh hoạt trong DON giây, tất cả đều được trình bày ở đây, cho phép một loạt tính năng mới ứng dụng. Lợi ích chính của DON là khả năng khởi động các dịch vụ blockchain mới. DONs là phương tiện giúp các mạng oracle hiện có có thể nhanh chóng triển khai các ứng dụng dịch vụ điều đó ngày nay đòi hỏi phải tạo ra các mạng lưới được xây dựng có mục đích. Chúng tôi đưa ra một số ví dụ về các ứng dụng như vậy trong Phần 4. Trong Phần 3, chúng tôi cung cấp thêm chi tiết về DONs, mô tả khả năng của họ trong về giao diện mà họ trình bày cho nhà phát triển và người dùng. 1.2 Bảy mục tiêu thiết kế chính Ở đây chúng tôi xem xét ngắn gọn bảy trọng tâm chính được liệt kê ở trên về sự phát triển của Chainlink, cụ thể là:Lai smart contracts: Trọng tâm trong tầm nhìn của chúng tôi đối với Chainlink là ý tưởng về sự an toàn kết hợp các thành phần trên chuỗi và ngoài chuỗi trong smart contract giây. Chúng tôi đề cập đến hợp đồng hiện thực hóa ý tưởng này dưới dạng hợp đồng kết hợp smart contract hoặc hợp đồng kết hợp.2 Blockchain đang và sẽ tiếp tục đóng hai vai trò quan trọng trong dịch vụ phi tập trung hệ sinh thái: Cả hai đều là nơi thể hiện quyền sở hữu tiền điện tử và những mỏ neo vững chắc cho các dịch vụ phi tập trung. Do đó, các hợp đồng thông minh phải được thể hiện hoặc thực thi trên chuỗi, nhưng khả năng trên chuỗi của chúng bị hạn chế nghiêm trọng. hoàn toàn Mã hợp đồng trên chuỗi chậm, đắt tiền và thiếu chính xác, không thể hưởng lợi từ thế giới thực dữ liệu và nhiều chức năng vốn không thể thực hiện được trên chuỗi, bao gồm nhiều hình thức tính toán bí mật khác nhau, tạo ra tính bảo mật (giả) ngẫu nhiên chống lại thao tác khai thác / validator, v.v. Do đó, để smart contract phát huy hết tiềm năng của mình, cần phải có smart contracts được cấu trúc gồm hai phần: phần trên chuỗi (mà chúng tôi thường ký hiệu là SC) và một phần ngoài chuỗi, một phần thực thi chạy trên DON (mà chúng tôi thường biểu thị bằng thực thi). Mục tiêu là đạt được sự kết hợp an toàn của chức năng trên chuỗi với sự đa dạng của các dịch vụ ngoài chuỗi mà DON hướng tới cung cấp. Cùng nhau, hai phần tạo nên một hợp đồng lai. Chúng tôi trình bày ý tưởng này một cách khái niệm trong Hình 2. Ngày nay, Chainlink các dịch vụ3 như nguồn cấp dữ liệu và VRF đang bật nhưng không thể thực hiện được smart contract ứng dụng, từ DeFi đến NFT được tạo công bằng cho đến bảo hiểm phi tập trung, là những bước đầu tiên hướng tới một khuôn khổ tổng quát hơn. Là dịch vụ Chainlink mở rộng và phát triển hiệu quả hơn theo tầm nhìn của chúng tôi trong sách trắng này sức mạnh của hệ thống smart contract trên tất cả blockchains. Sáu trọng tâm chính khác của chúng tôi trong sách trắng này có thể được coi là hoạt động trong dịch vụ đầu tiên, bao quát một trong các hợp đồng kết hợp. Những trọng tâm này liên quan đến việc loại bỏ những gì có thể nhìn thấy sự phức tạp từ các hợp đồng kết hợp, tạo ra các dịch vụ ngoài chuỗi bổ sung cho phép xây dựng các hợp đồng kết hợp có năng lực cao hơn bao giờ hết, và trong trường hợp giảm thiểu lòng tin, củng cố các đặc tính bảo mật đạt được bằng các hợp đồng kết hợp. Chúng tôi để lại ý tưởng hợp đồng kết hợp tiềm ẩn trong phần lớn bài viết, nhưng bất kỳ sự kết hợp nào của Logic MAINCHAIN có DON có thể được xem là hợp đồng kết hợp. Trừu tượng hóa sự phức tạp: DON được thiết kế để tận dụng cơ chế phi tập trung hệ thống dễ dàng cho các nhà phát triển và người dùng bằng cách loại bỏ bộ máy thường phức tạp đằng sau mảng dịch vụ mạnh mẽ và linh hoạt của DONs. Dịch vụ Chainlink hiện có đã có tính năng này rồi. Ví dụ: nguồn cấp dữ liệu trong Chainlink ngày nay trình bày các giao diện onchain không yêu cầu nhà phát triển phải quan tâm đến chi tiết cấp độ giao thức, chẳng hạn như phương tiện mà OCR thực thi báo cáo đồng thuận giữa một 2Ý tưởng về thành phần hợp đồng trên chuỗi/ngoài chuỗi đã xuất hiện trước đây ở nhiều quốc gia bị ràng buộc khác nhau. các biểu mẫu, ví dụ: hệ thống lớp 2, blockchains [80] dựa trên TEE, v.v. Mục tiêu của chúng tôi là hỗ trợ và khái quát hóa những cách tiếp cận này và đảm bảo rằng chúng có thể bao gồm quyền truy cập dữ liệu ngoài chuỗi và khóa khác oracle dịch vụ. Các dịch vụ 3Chainlink bao gồm nhiều dịch vụ và chức năng phi tập trung có sẵn thông qua mạng lưới. Chúng được cung cấp bởi nhiều nhà khai thác nút được tạo thành các mạng oracle khác nhau khắp hệ sinh thái.Hình 2: Hình khái niệm mô tả thành phần hợp đồng trên chuỗi/ngoài chuỗi. A lai smart contract 3⃝bao gồm hai thành phần bổ sung: một trên chuỗi thành phần SC 1⃝, cư trú trên blockchain và người thực thi thành phần ngoài chuỗi 2⃝đó thực thi trên DON. DON cũng đóng vai trò là cầu nối giữa hai thành phần như kết nối hợp đồng lai với các tài nguyên ngoài chuỗi như dịch vụ web, các dịch vụ khác blockchains, lưu trữ phi tập trung, v.v. tập hợp các nút phi tập trung. DON tiến thêm một bước nữa theo nghĩa là chúng mở rộng phạm vi dịch vụ mà Chainlink có thể cung cấp cho nhà phát triển một lớp trừu tượng với đi kèm các giao diện được sắp xếp hợp lý cho các dịch vụ cấp cao. Chúng tôi trình bày một số ví dụ ứng dụng trong Phần 4 làm nổi bật cách tiếp cận này. Ví dụ: chúng tôi hình dung các doanh nghiệp sử dụng DON như một dạng phần mềm trung gian an toàn để kết nối các hệ thống cũ của họ với blockchains. (Xem Phần 4.2.) Việc sử dụng DON này giúp loại bỏ sự phức tạp của động lực chung blockchain (phí, tổ chức lại, v.v.). Nó cũng trừu tượng hóa các tính năng của blockchain cụ thể, từ đó cho phép doanh nghiệp kết nối các hệ thống hiện có của họ với một loạt các hệ thống blockchain ngày càng mở rộng mà không cần nhu cầu về chuyên môn chuyên môn trong các hệ thống này hoặc nói chung hơn là phát triển hệ thống phi tập trung. Cuối cùng, tham vọng của chúng tôi là nâng cao mức độ trừu tượng mà Chainlink đạt được đến mức triển khai những gì chúng tôi gọi là một siêu dữ liệu phi tập trung. Một lớp như vậy sẽ loại bỏ sự khác biệt trên chuỗi/ngoài chuỗi đối với tất cả các tầng lớp nhà phát triển và người dùng DApps, cho phép tạo và sử dụng liền mạch các dịch vụ phi tập trung.Để đơn giản hóa quá trình phát triển, các nhà phát triển có thể chỉ định chức năng DApp trong siêu dữ liệu dưới dạng một ứng dụng ảo trong mô hình máy thống nhất. Họ có thể sau đó sử dụng trình biên dịch siêu dữ liệu phi tập trung để tự động khởi tạo DApp như một tập hợp các chức năng phi tập trung tương tác trải dài blockchains, DONs và dịch vụ bên ngoài. (Một trong những dịch vụ bên ngoài này có thể là hệ thống doanh nghiệp, làm cho siêu lớp trở nên hữu ích cho các ứng dụng liên quan đến hệ thống doanh nghiệp cũ.) quá trình biên dịch giống như cách các trình biên dịch và bộ công cụ phát triển phần mềm (SDK) hiện đại hỗ trợ các lập trình viên tổng quát trong việc sử dụng toàn bộ tiềm năng của phần cứng không đồng nhất kiến trúc bao gồm CPU có mục đích chung và phần cứng chuyên dụng như GPU, máy gia tốc học máy hoặc các khu vực đáng tin cậy. Hình 3 trình bày ý tưởng này ở mức độ khái niệm. smart contract lai là bước đầu tiên trên con đường hướng tới tầm nhìn này và tới một khái niệm mà chúng tôi gọi là hợp đồng meta. Hợp đồng meta là các ứng dụng được mã hóa trên cơ sở phi tập trung metalayer và hoàn toàn bao gồm logic trên chuỗi (smart contracts), cũng như tính toán và kết nối ngoài chuỗi giữa các blockchain khác nhau và chuỗi ngoài hiện có dịch vụ. Do nhu cầu hỗ trợ ngôn ngữ và trình biên dịch, các mô hình bảo mật mới và Tuy nhiên, sự hài hòa về mặt khái niệm và kỹ thuật của các công nghệ khác nhau của một siêu dữ liệu phi tập trung thực sự là một mục tiêu đầy tham vọng mà chúng tôi mong muốn trong một thời gian dài chân trời thời gian. Tuy nhiên, đây là một mô hình lý tưởng hữu ích cần ghi nhớ khi đọc bài viết này, không được trình bày chi tiết ở đây, nhưng là điều chúng tôi dự định tập trung vào trong công việc tương lai của mình. Chainlink. Chia tỷ lệ: Mục tiêu có tầm quan trọng vượt trội trong các thiết kế đang phát triển của chúng tôi là cho phép Chainlink mạng để đáp ứng nhu cầu mở rộng quy mô ngày càng tăng của hệ sinh thái blockchain. Với tình trạng tắc nghẽn mạng đang trở thành một vấn đề tái diễn ở các nền tảng không được phép hiện có blockchains [86], các thiết kế mới và hiệu quả hơn blockchain sắp được đưa vào sử dụng, ví dụ: [103, 120, 203], cũng như các công nghệ chia tỷ lệ lớp 2 bổ sung, ví dụ: [5, 12, 121, 141, 169, 186, 187]. Các dịch vụ của Oracle phải đạt được độ trễ và thông lượng đáp ứng nhu cầu về hiệu suất của các hệ thống này đồng thời giảm thiểu phí trên chuỗi (ví dụ: chi phí gas) cho người vận hành hợp đồng cũng như người dùng thông thường. Với DONs, Chainlink chức năng nhằm mục đích tiến xa hơn và mang lại hiệu suất đủ cao cho các hệ thống thuần túy dựa trên web. DON nhận được phần lớn hiệu suất đạt được từ việc sử dụng các giao thức đồng thuận nhanh, dựa trên ủy ban hoặc không được phép mà họ kết hợp với blockchains họ hỗ trợ. Chúng tôi mong đợi nhiều DON với cấu hình khác nhau sẽ chạy song song; các DApp và người dùng khác nhau có thể điều hướng sự đánh đổi trong các lựa chọn đồng thuận cơ bản theo yêu cầu ứng dụng của họ. DONs có thể được xem dưới dạng công nghệ lớp 2. Chúng tôi kỳ vọng rằng trong số các dịch vụ khác, DONs sẽ hỗ trợ Khung thực thi giao dịch (TEF), khung này tạo điều kiện tích hợp hiệu quả DON và do đó oracle với các hiệu suất cao khác hệ thống lớp 2—ví dụ: rollups, các hệ thống kết hợp các giao dịch ngoài chuỗi để đạt được cải tiến hiệu suất. Chúng tôi giới thiệu TEF ở Phần 6.

Hình 3: Hình vẽ khái niệm cho thấy sự hiện thực hóa lý tưởng của một siêu dữ liệu phi tập trung. cho dễ phát triển, nhà phát triển chỉ định DApp, được đánh dấu bằng màu hồng, là một ứng dụng ảo ứng dụng trong mô hình máy thống nhất. Trình biên dịch siêu lớp phi tập trung sẽ tự động tạo ra các chức năng tương tác tương ứng: smart contracts (ký hiệu là bởi SC), logic (được biểu thị bằng exec) trên DONs, bộ điều hợp kết nối với các dịch vụ bên ngoài mục tiêu, v.v., như được biểu thị bằng phần đánh dấu màu vàng. Hình 4 thể hiện một cách khái niệm cách DON cải thiện tỷ lệ blockchain (smart contract) bằng cách tập trung giao dịch và xử lý báo cáo ngoại tuyến oracle, thay vì trên chuỗi. Sự thay đổi trong vị trí tính toán chính này làm giảm độ trễ giao dịch và phí trong khi thúc đẩy thông lượng giao dịch. Tính bảo mật: Chuỗi khối cung cấp tính minh bạch chưa từng có cho smart contract và các ứng dụng mà chúng hiện thực hóa. Nhưng có một sự căng thẳng cơ bản giữa tính minh bạch và tính bảo mật. Ví dụ, ngày nay, giao dịch trao đổi phi tập trung của người dùngHình 4: Hình khái niệm cho thấy Mạng Oracle phi tập trung cải thiện chia tỷ lệ blockchain được kích hoạt smart contract giây. Hình A ⃝hiển thị oracle thông thường kiến trúc. Giao dịch được gửi trực tiếp tới blockchain, cũng như báo cáo oracle. Do đó blockchain được đánh dấu màu vàng là vị trí chính để xử lý giao dịch. Hình B⃝cho thấy việc sử dụng DON để hỗ trợ các hợp đồng trên blockchain. Một DON thực thi xử lý các giao dịch cùng với dữ liệu từ các hệ thống bên ngoài và chuyển tiếp kết quả—ví dụ: giao dịch theo nhóm hoặc thay đổi trạng thái hợp đồng do tác động của giao dịch—đối với blockchain. Do đó, DON, được đánh dấu bằng màu vàng, là thông tin chính địa điểm xử lý giao dịch. các hành động được ghi lại trên chuỗi, giúp dễ dàng theo dõi hành vi trao đổi, nhưng cũng làm cho các giao dịch tài chính của người dùng được hiển thị công khai. Tương tự, dữ liệu được chuyển tiếp tới thiết bị thông minh hợp đồng vẫn còn trong chuỗi. Điều này làm cho dữ liệu đó có thể kiểm tra được một cách thuận tiện, nhưng hoạt động như không khuyến khích các nhà cung cấp dữ liệu muốn cung cấp smart contract thông tin nhạy cảm hoặc dữ liệu độc quyền. Chúng tôi tin rằng mạng oracle sẽ đóng vai trò then chốt trong việc thúc đẩy thế hệ tiếp theo các hệ thống kết hợp tính minh bạch vốn có của blockchains với các biện pháp bảo vệ bí mật mới. Trong bài viết này, chúng tôi chỉ ra cách họ sẽ làm như vậy bằng cách sử dụng ba phương pháp chính: • Bộ điều hợp bảo mật: Hai công nghệ được triển khai theo kế hoạch trong mạng của Chainlink, DECO [234] và Town Crier [233], hãy bật các nút oracle để truy xuất dữ liệu từ các hệ thống ngoài chuỗi theo cách bảo vệ dữ liệu và quyền riêng tư của người dùng tính bảo mật. Chúng sẽ đóng vai trò quan trọng trong việc thiết kế bộ điều hợp cho DONs. (Xem Phần 3.6.2 để biết chi tiết về hai công nghệ này.) • Tính toán bí mật: DONs có thể đơn giản che giấu tính toán của chúng khỏi việc dựa vào blockchains. Bằng cách sử dụng môi trường tính toán an toàn của nhiều bên và/hoặc môi trường thực thi đáng tin cậy, cũng có thể có tính bảo mật mạnh mẽ hơn trong đó các nút DON tính toán dữ liệu mà bản thân họ không có khả năng hiển thị.


• Hỗ trợ các hệ thống lớp 2 bí mật: TEF được thiết kế để hỗ trợ nhiều hệ thống lớp 2 khác nhau, nhiều hệ thống trong số đó sử dụng bằng chứng không có kiến thức để cung cấp các hình thức bảo mật giao dịch khác nhau. Chúng tôi thảo luận về các phương pháp này trong Phần 3 (với các chi tiết bổ sung trong Phần 6, Phụ lục B.1 và Phụ lục B.2). Hình 5 trình bày quan điểm khái niệm về cách dữ liệu nhạy cảm có thể truyền từ các nguồn bên ngoài đến smart contract bằng các bộ điều hợp bảo toàn bí mật và tính toán bí mật trong DON. Hình 5: Sơ đồ khái niệm về các hoạt động bảo mật trong DON trên dữ liệu nhạy cảm (được đánh dấu màu vàng). Dữ liệu nguồn nhạy cảm (vòng tròn đen) trên web máy chủ được trích xuất tới DON bằng cách sử dụng bộ điều hợp bảo mật (dòng màu xanh lam, mũi tên đôi). DON nhận dữ liệu dẫn xuất (vòng tròn rỗng) từ các bộ điều hợp này— kết quả của việc áp dụng một chức năng hoặc, ví dụ: chia sẻ bí mật, đối với nguồn nhạy cảm dữ liệu. Tệp thực thi trên DON có thể áp dụng tính toán bí mật cho dữ liệu dẫn xuất để tạo một báo cáo (vòng tròn kép), báo cáo này sẽ gửi qua bộ chuyển đổi tới blockchain. Chúng tôi tin rằng các công cụ mạnh mẽ để xử lý dữ liệu bí mật sẽ mở ra toàn bộ phạm vi ứng dụng. Trong số này có tài chính phi tập trung (và tập trung) tư nhân, danh tính phi tập trung, cho vay theo chuỗi dựa trên tín dụng, v.v. các quy trình nhận biết khách hàng và công nhận thân thiện với người dùng, như chúng tôi thảo luận trong Phần 4. Tính công bằng trong giao dịch: Thiết kế blockchain ngày nay có hơi bẩn một chút bí mật mở: Chúng được tập trung nhất thời. Người khai thác và validator có thể yêu cầu chuyểnhành động theo cách họ chọn. Lệnh giao dịch cũng có thể bị người dùng thao túng như một chức năng của phí mạng mà họ phải trả (ví dụ: giá gas ở Ethereum) và đối với một số phạm vi bằng cách tận dụng các kết nối mạng nhanh. Sự thao túng như vậy có thể, đối với Ví dụ: sử dụng hình thức chạy trước, trong đó tác nhân chiến lược như thợ mỏ quan sát giao dịch của người dùng và chèn giao dịch khai thác của chính nó vào giao dịch trước đó vị trí trong cùng một khối—đánh cắp tiền của người dùng một cách hiệu quả bằng cách tận dụng kiến thức nâng cao về giao dịch của người dùng. Ví dụ: bot có thể đặt lệnh mua trước của người dùng. Sau đó nó có thể tận dụng sự tăng giá tài sản do giao dịch của người dùng. Chạy trước bởi một số bot gây hại cho người dùng thông thường—tương tự như tần số cao giao dịch trên Phố Wall—đã phổ biến và được ghi chép rõ ràng [90], cũng như có liên quan các cuộc tấn công như chạy ngược [159] và bắt chước giao dịch tự động [195]. Các đề xuất nhằm hệ thống hóa việc khai thác đơn hàng của thợ mỏ thậm chí còn xuất hiện gần đây [110]. Các công nghệ lớp 2 như rollup không giải quyết được vấn đề mà chỉ tái tập trung hóa đặt hàng, đặt nó vào tay thực thể tạo ra rollup. Một trong những mục tiêu của chúng tôi là giới thiệu vào Chainlink một dịch vụ có tên là Sắp xếp theo thứ tự hợp lý Dịch vụ (FSS) [137]. FSS giúp smart contract nhà thiết kế đảm bảo thứ tự công bằng cho sản phẩm của họ giao dịch và tránh các cuộc tấn công chạy trước, chạy sau và các cuộc tấn công có liên quan vào giao dịch của người dùng cũng như các loại giao dịch khác, chẳng hạn như truyền báo cáo oracle. FSS cho phép DON triển khai các ý tưởng như khái niệm nghiêm ngặt, tạm thời về trật tự công bằng được giới thiệu trong [144]. Là một lợi ích ngẫu nhiên, FSS cũng có thể hạ thấp mạng của người dùng. phí (ví dụ: chi phí gas). Tóm lại, trong FSS, các giao dịch đi qua DON, thay vì truyền trực tiếp đến mục tiêu smart contract. DON yêu cầu giao dịch rồi chuyển tiếp chúng vào hợp đồng. Hình 6: Ví dụ về lợi ích của FSS. Hình A ⃝cho thấy cách một thợ mỏ khai thác nó quyền tập trung để đặt lệnh giao dịch, có thể hoán đổi một cặp giao dịch: giao dịch 1⃝ đến trước 2⃝, nhưng thay vào đó, người khai thác sẽ sắp xếp nó sau 2⃝. Ngược lại, Hình B⃝cho thấy cách DON phân quyền quy trình đặt hàng giữa các nút DON. Nếu số đại biểu các nút trung thực nhận được 1⃝trước 2⃝, FSS khiến 1⃝xuất hiện trước 2⃝trên chuỗi— ngăn chặn việc sắp xếp lại thứ tự của thợ mỏ bằng cách đính kèm các số thứ tự có thể thực thi theo hợp đồng. Hình 6 so sánh việc khai thác tiêu chuẩn với FSS. Nó cho thấy cách khai thác tiêu chuẩn,quá trình đặt hàng giao dịch được tập trung vào người khai thác và do đó phải tuân theo thao tác, chẳng hạn như sắp xếp lại một cặp giao dịch liên quan đến thời điểm chúng đến lần. Ngược lại, trong FSS, quy trình được phân cấp giữa các nút DON. Giả sử một nhóm các nút trung thực, FSS giúp thực thi các chính sách như sắp xếp thứ tự thời gian của giao dịch, giảm cơ hội thao túng của thợ mỏ và các thực thể khác. Ngoài ra, do người dùng không cần phải cạnh tranh để được ưu đãi đặt hàng dựa trên giá gas, họ có thể trả giá xăng tương đối thấp (trong khi các giao dịch từ DON có thể được thực hiện theo đợt để tiết kiệm gas). Giảm thiểu sự tin cậy: Mục đích chung của chúng tôi khi thiết kế DON là tạo điều kiện thuận lợi cho lớp hỗ trợ đáng tin cậy cho smart contract và các hệ thống phụ thuộc oracle khác bằng phương pháp phân cấp, công cụ mật mã và đảm bảo kinh tế mật mã. Bản thân DON đã được phân cấp và người dùng có thể chọn từ bất kỳ DON nào có sẵn hỗ trợ chuỗi chính mà họ muốn vận hành hoặc sinh ra thêm DONs với ủy ban của các nút mà họ tin tưởng. Tuy nhiên, đối với một số ứng dụng, đặc biệt là smart contracts, Chainlink người dùng có thể ưu tiên mô hình tin cậy coi chuỗi chính được DON hỗ trợ là đáng tin cậy hơn hơn chính DON. Đối với những người dùng như vậy, chúng tôi đã có hoặc có kế hoạch kết hợp vào kiến trúc của mạng Chainlink một số cơ chế cho phép hợp đồng trên chuỗi chính để tăng cường đảm bảo an ninh do DONs cung cấp, trong khi tại đồng thời cũng thực thi các biện pháp bảo vệ chống lại khả năng nguồn dữ liệu bị hỏng chẳng hạn như máy chủ web mà DON lấy dữ liệu từ đó. Chúng tôi mô tả các cơ chế này trong Phần 7. Chúng thuộc năm tiêu đề chính: • Xác thực nguồn dữ liệu: Công cụ cho phép nhà cung cấp dữ liệu ký điện tử dữ liệu của họ và do đó tăng cường chuỗi hành trình sản phẩm giữa nguồn gốc và hợp đồng dựa vào. • DON báo cáo thiểu số: Cờ được phát hành bởi một tập hợp con thiểu số của DON nút quan sát thấy sự sai trái của đa số trong DON. • Đường ray bảo vệ: Logic trên chuỗi chính phát hiện các điều kiện bất thường và tạm dừng hoặc tạm dừng thực hiện hợp đồng (hoặc đưa ra các biện pháp khắc phục khác). • Quản trị giảm thiểu sự tin cậy: Sử dụng các bản cập nhật phát hành dần dần để hỗ trợ việc kiểm tra cộng đồng cũng như các biện pháp can thiệp khẩn cấp phi tập trung để nhanh chóng ứng phó với các lỗi hệ thống. • Xác thực thực thể phi tập trung: Sử dụng cơ sở hạ tầng khóa công khai (PKI) để xác định các thực thể trong mạng Chainlink. Hình 7 trình bày sơ đồ khái niệm về các mục tiêu giảm thiểu lòng tin của chúng tôi. Bảo mật dựa trên khuyến khích (kinh tế tiền điện tử): Phân quyền tạo báo cáo trên các nút oracle giúp đảm bảo tính bảo mật ngay cả khi một số nút bị hỏng.


Hình 7: Mô tả khái niệm về mục tiêu giảm thiểu sự tin cậy của Chainlink, đó là giảm thiểu nhu cầu của người dùng về hành vi chính xác của DON và các nguồn dữ liệu như web máy chủ. Điểm nổi bật màu vàng trong hình biểu thị các locus giảm thiểu độ tin cậy: DON và bộ máy chủ web cá nhân hoặc thiểu số. Điểm nổi bật màu hồng biểu thị các thành phần hệ thống có độ tin cậy cao theo giả định: hợp đồng trên blockchain và phần lớn của các máy chủ web, tức là các máy chủ web tổng hợp. Tuy nhiên, điều quan trọng không kém là đảm bảo rằng các nút có động cơ tài chính để hoạt động đúng đắn. Đặt cược, tức là yêu cầu các nút cung cấp tiền gửi LINK và cắt giảm (tịch thu) số tiền gửi này trong trường hợp có hành vi sai trái, sẽ đóng vai trò quan trọng trong Chainlink. Đây là một thiết kế khuyến khích quan trọng đã được sử dụng ở một số blockchain, ví dụ: [81, 103, 120, 204]. Tuy nhiên, việc đặt cược vào Chainlink trông rất khác so với staking ở chế độ độc lập blockchains. Đặt cược vào blockchain nhằm mục đích ngăn chặn các cuộc tấn công vào sự đồng thuận. Nó có một mục tiêu khác nhau trong Chainlink: đảm bảo gửi kịp thời các báo cáo chính xác oracle. Hệ thống staking được thiết kế tốt cho mạng oracle sẽ thực hiện các cuộc tấn công như hối lộ không có lợi cho đối thủ, ngay cả khi mục tiêu là smart contract có chỉ số cao giá trị tiền tệ. Trong bài viết này, chúng tôi trình bày cách tiếp cận chung với staking trong Chainlink bằng ba khóa đổi mới:1. Một mô hình đối nghịch mạnh mẽ bao gồm các cuộc tấn công bị bỏ qua trong cách tiếp cận. Một ví dụ là cái mà chúng tôi gọi là hối lộ tiềm năng. Đây là một hình thức hối lộ xác định nút nào nhận hối lộ trên cơ sở có điều kiện, ví dụ: đưa ra các khoản hối lộ được đảm bảo trước cho các nút mà cơ chế staking chọn tại ngẫu nhiên cho các vai trò cụ thể (chẳng hạn như kích hoạt việc xét xử báo cáo). 2. Tác động siêu tuyến tính staking, nghĩa là một cách không chính thức rằng để thành công, đối thủ phải có ngân sách $B lớn hơn tổng số tiền gửi của tất cả oracle nút. Chính xác hơn, chúng tôi muốn nói rằng đó là một hàm của n, \(B(n) ≫\)dn trong một mạng gồm n oracle nút, mỗi nút có số tiền gửi cố định $d (chính thức hơn, \(B(n) is asymptotically larger in n than \)dn). Hình 8 đưa ra một cái nhìn khái niệm về tài sản này. 3. Khung khuyến khích tiềm ẩn (IIF), một mô hình khuyến khích mà chúng tôi đã nghĩ ra để bao gồm các ưu đãi có thể đo lường được theo kinh nghiệm ngoài khoản tiền gửi rõ ràng staking tiền, bao gồm cả cơ hội tính phí trong tương lai của các nút. IIF mở rộng khái niệm về cổ phần ngoài tiền gửi nút rõ ràng. Hình 8: Sơ đồ khái niệm mô tả tỷ lệ siêu tuyến tính trong Chainlink staking. các hối lộ $B(n) mà đối thủ yêu cầu tăng nhanh hơn về n so với số tiền gửi tổng hợp $dn trong số tất cả các nút oracle. Chúng tôi cho thấy tác động của IIF và siêu tuyến tính staking cùng nhau tạo ra những gì chúng tôi gọi một chu kỳ an toàn kinh tế hiệu quả cho các mạng oracle. Khi người dùng mới vào
hệ thống, tăng thu nhập tiềm năng trong tương lai từ việc chạy các nút Chainlink, chi phí cận biên của an ninh kinh tế giảm đối với người sử dụng hiện tại và tương lai. Trong một chế độ cầu co giãn, chi phí giảm dần này sẽ khuyến khích thêm người dùng sử dụng mạng lưới, liên tục duy trì việc áp dụng trong một chu kỳ đạo đức đang diễn ra. Lưu ý: Mặc dù báo cáo chính thức này phác thảo các yếu tố quan trọng trong tầm nhìn của chúng tôi đối với sự phát triển của Chainlink nhưng nó không chính thức và bao gồm một số thông số kỹ thuật chi tiết. Chúng tôi dự định phát hành các tài liệu kỹ thuật tập trung vào các tính năng và phương pháp tiếp cận bổ sung khi chúng phát triển. Hơn nữa, điều quan trọng cần nhấn mạnh là nhiều yếu tố của tầm nhìn được trình bày ở đây (cải tiến quy mô, công nghệ bảo mật, FSS, v.v.) có thể và sẽ được triển khai ở dạng sơ bộ ngay cả trước khi DON nâng cao trở thành tính năng cơ bản của Chainlink. 1.3 Tổ chức của bài viết này Chúng tôi trình bày mô hình và ký hiệu bảo mật của mình trong Phần 2 và phác thảo Mô hình phi tập trung. API mạng Oracle trong Phần 3. Trong Phần 4, chúng tôi trình bày một số ví dụ về các ứng dụng mà DON cung cấp nền tảng triển khai hấp dẫn. Người đọc có thể tìm hiểu hầu hết các khái niệm chính của bài viết bằng cách đọc đến thời điểm này. Phần còn lại của bài viết có thêm chi tiết. Chúng tôi mô tả Trình tự hợp lý Dịch vụ (FSS) trong Phần 5 và Khung Thực thi Giao dịch (TEF) trong Phần 6. Chúng tôi mô tả cách tiếp cận của mình để giảm thiểu độ tin cậy trong Phần 7. Chúng tôi xem xét một số các yêu cầu triển khai DON quan trọng, cụ thể là triển khai tăng dần các tính năng, tư cách thành viên sổ cái động và trách nhiệm giải trình trong Phần 8. Cuối cùng, trong Phần 9, chúng tôi cung cấp tổng quan về cách tiếp cận đang phát triển của chúng tôi đối với thiết kế khuyến khích. Chúng tôi kết luận ở Phần 10. Để giúp những độc giả còn ít hiểu biết về các khái niệm trong bài viết này, chúng tôi cung cấp bảng chú giải thuật ngữ trong Phụ lục A. Chúng tôi trình bày chi tiết hơn về giao diện DON và chức năng trong Phụ lục B và trình bày một số bộ điều hợp mẫu trong Phụ lục C. Trong Phụ lục D, chúng tôi mô tả nguyên hàm mật mã cho nguồn dữ liệu được giảm thiểu độ tin cậy xác thực được gọi là chữ ký chức năng và giới thiệu một biến thể mới gọi là chữ ký chức năng rời rạc. Chúng tôi thảo luận về một số cân nhắc liên quan đến ủy ban lựa chọn cho DON trong Phụ lục F.


Modèle et objectifs de sécurité
Un réseau Oracle décentralisé est un système distribué distinct qui, nous l'espérons, être initialement mis en œuvre généralement – mais pas nécessairement – par un comité protocole de consensus et géré par un ensemble de nœuds oracle. Un DON est conçu principalement pour augmenter les capacités d'un smart contract sur une chaîne principale avec des rapports oracle et d'autres services, mais il peut fournir ces mêmes services de support à d'autres systèmes non blockchain, et n'a donc pas besoin d'être associé à une chaîne principale particulière.
Le modèle et les propriétés que nous considérons sont donc largement indépendants de l'utilisation de les applications particulières d'un DON. 2.1 Modèle architectural actuel Il est important de souligner que Chainlink n'est aujourd'hui pas un service monolithique, mais plutôt un cadre sans autorisation dans lequel il est possible de lancer des réseaux de oracle nœuds [77]. Les réseaux ont des ensembles hétérogènes d'opérateurs de nœuds et dessins. Ils peuvent également différer en termes de types de services qu'ils fournissent, ce qui peut inclure, par exemple, les flux de données, les preuves de réserves, le caractère aléatoire vérifiable, etc. Autre Les différences peuvent inclure le degré de décentralisation, la taille du réseau en termes de valeur verrouillée qu'il prend en charge et divers paramètres de niveau de service, tels que la fréquence des données et la précision. Le modèle sans autorisation de Chainlink encourage la croissance d'un écosystème dans lequel les prestataires se spécialisent dans les services qu’ils sont les plus à même de fournir à la communauté. Ceci Le modèle est susceptible d'entraîner des coûts inférieurs pour les utilisateurs et une qualité de service supérieure à celle d'un modèle. qui nécessite que tous les nœuds et réseaux fournissent une gamme complète de services, une approche qui peut facilement déboucher sur l’adoption à l’échelle du système des services représentant le moins dénominateur commun des ressources disponibles pour les nœuds. À mesure que Chainlink évolue vers des conceptions basées sur DON dans Chainlink 2.0, nous continuons à soutenir le modèle d'un cadre ouvert et sans autorisation, en gardant à l'esprit l'objectif de offrir aux utilisateurs une gamme de choix de services qui aboutissent globalement à la meilleure correspondance avec des exigences d'application particulières. 2.2 Hypothèses consensuelles Nous utilisons le terme réseau Oracle décentralisé pour englober toutes les fonctionnalités de le système oracle que nous décrivons : à la fois la structure de données que les nœuds oracle maintiennent et l'API principale superposée. Nous utilisons le terme grand livre (minuscules), noté L, pour désigner les données sous-jacentes structure maintenue par un DON et utilisée pour soutenir les services particuliers qu'elle fournit. Nous soulignons que notre framework DON ne traite pas L comme un système autonome comme a blockchain : son objectif est de prendre en charge les blockchain et d'autres systèmes. Les blockchains sont, bien sûr, une manière de réaliser un grand livre fiable, mais il en existe d’autres. Nous nous attendons DONs dans de nombreux cas pour réaliser leurs grands livres sous-jacents à l'aide de Byzantine Fault Tolerant (BFT), qui sont considérablement antérieurs aux blockchain tels que Bitcoin [174]. Nous utilisons notation et propriétés de type BFT tout au long du document pour plus de commodité, bien que nous soulignez que les DON peuvent être réalisés à l’aide de protocoles de consensus sans autorisation. Conceptuellement, un grand livre L est un tableau d'affichage sur lequel les données sont ordonnées de manière linéaire. Nous considérons généralement un grand livre comme ayant quelques propriétés clés communément attribuées à blockchains [115]. Un grand livre est : • Ajout uniquement : Les données, une fois ajoutées, ne peuvent pas être supprimées ou modifiées.• Public : Tout le monde peut lire son contenu, qui est cohérent dans le temps. vue de tous les utilisateurs.4 • Disponible : le grand livre peut toujours être écrit par des rédacteurs autorisés et lu par quiconque en temps opportun. Des propriétés alternatives sont possibles dans le grand livre pour un DON lorsqu'elles sont réalisées par un comité. Par exemple, l'accès en écriture au grand livre peut être restreint à certains utilisateurs, comme peut avoir un accès en lecture pour certaines applications, c'est-à-dire que le grand livre n'a pas besoin d'être public comme défini ci-dessus. De même, les règles du grand livre peuvent permettre la modification ou la suppression des données. Nous ne le faisons pas Cependant, nous considérons explicitement de telles variantes dans cet article. La conception modulaire des DON peut prendre en charge n'importe lequel d'une grande variété de BFT modernes protocoles, par exemple, Hotstuff[231]. Le choix exact dépendra des hypothèses de confiance et caractéristiques du réseau entre les nœuds oracle. Un DON pourrait en principe alternativement utiliser un blockchain sans autorisation hautement performant pour son grand livre dans son rôle de support d'un système de couche 2 ou blockchain également évolutif. De même, l'hybridation est également possible : Le DON pourrait en principe être composé de nœuds qui sont des validator dans un réseau existant. blockchain, par exemple, dans les systèmes de preuve de participation dans lesquels les comités sont sélectionnés pour exécuter transactions, par exemple [8, 81, 120, 146, 204]. Ce mode de fonctionnement particulier nécessite que les nœuds fonctionnent à double usage, c'est-à-dire fonctionnent à la fois en tant que nœuds blockchain et DON nœuds. (Voir la section 8.2 pour une discussion sur les techniques permettant d'assurer la continuité des changements. comités et l’annexe F pour quelques mises en garde sur la sélection aléatoire des comités.) En pratique, dans les algorithmes BFT modernes, les nœuds signent numériquement les messages sur le grand livre. Nous supposons par commodité que L est associé à une clé publique pkL et que son contenu sont signés par la clé privée correspondante. Cette notation générale s'applique même lorsque les données sur L sont signées à l’aide de signatures à seuil.5 Les signatures à seuil sont pratiques, car ils permettent une identité persistante pour un DON même avec des changements d'adhésion dans les nœuds qui l'exécutent. (Voir Annexe B.1.3.) Nous supposons donc que skL est partagé en secret d'une manière (k, n)-seuil pour certains paramètres de sécurité k, par exemple k = 2f + 1 et n = 3f + 1, où f est le nombre de nœuds potentiellement défectueux. (En choisissant k dans ce De cette manière, nous nous assurons que les nœuds défectueux ne peuvent ni apprendre skL ni monter un déni de service attaque empêchant son utilisation.) Un message sur L prend la forme M = (m, z), où m est une chaîne et z un unique numéro d'index séquentiel. Le cas échéant, nous écrivons les messages sous la forme m = ⟨MessageType : charge utile⟩. Le type de message MessageType est un sucre syntaxique qui indique la fonction d'un message particulier. 4Dans les cas où un blockchain sans finalité réalise un grand livre, l'incohérence est généralement abstraite en ignorant les blocs insuffisamment profonds ou en « élaguant » [115]. 5En pratique, certaines bases de code, par exemple LibraBFT [205], une variante de Hotstuff, ont actuellement adopté des signatures multiples, plutôt que des signatures à seuil, offrant une complexité de communication réduite pour une ingénierie plus simple. Moyennant un coût supplémentaire, les nœuds oracle peuvent ajouter des signatures de seuil aux messages écrits dans L même si le protocole de consensus utilisé pour L ne les emploie pas.2.3 Notation Nous notons l'ensemble des n nœuds oracle exécutant le grand livre par O = {Oi}n je = 1. Un tel un ensemble de nœuds est souvent appelé un comité. Pour simplifier, nous supposons que l’ensemble de oracles implémentant la fonctionnalité DON, c'est-à-dire les services au-dessus de L, est identique à cela maintenant L, mais ils peuvent être distincts. On laisse pki désigner la clé publique de joueur Oi, et skiez la clé privée correspondante. La plupart des algorithmes BFT nécessitent au moins n = 3f + 1 nœuds, où f est le nombre de nœuds potentiellement défectueux ; les nœuds restants sont honnêtes, dans le sens où ils suivent le protocole exactement comme spécifié. Nous qualifions le comité O d'honnête s'il répond à ces critères exigence, c'est-à-dire qu'elle comporte plus d'une fraction des 2/3 de nœuds honnêtes. Sauf autrement dit, nous supposons que O est honnête (et un modèle statique de corruption). Nous utilisons pkO / skO de manière interchangeable avec pkL / skL, selon le contexte. On laisse σ = Sigpk[m] désigner une signature sur le message m par rapport à pk, c'est-à-dire en utilisant clé privée correspondante sk. Soit verify(pk, σ, m) →{false, true} désignant un algorithme de vérification de signature correspondant. (Nous laissons la génération de clés implicite tout au long du document.) Nous utilisons la notation S pour désigner une source de données et S pour désigner l'ensemble complet de nS sources dans un contexte donné. Nous désignons par MAINCHAIN un contrat intelligent activé blockchain soutenu par un DON. Nous utilisons le terme contrat de confiance pour désigner tout contrat intelligent. contrat sur MAINCHAIN qui communique avec un DON, et utiliser la notation SC pour désigner un tel contrat. Nous supposons généralement qu'un DON prend en charge une seule chaîne principale MAINCHAIN, bien qu'il puisse prendre en charge plusieurs de ces chaînes, comme nous le montrons dans les exemples de la section 4. A DON peut et prendra généralement en charge plusieurs contrats dépendants de MAINCHAIN. (Comme Comme indiqué ci-dessus, un DON peut également prendre en charge des services non blockchain.) 2.4 Remarque sur les modèles de confiance Comme indiqué ci-dessus, les DON peuvent être construits sur des protocoles de consensus basés sur des comités, et nous s'attendre à ce qu'ils utilisent couramment de tels protocoles. Il existe de nombreux arguments solides selon lesquels l'une des deux alternatives, blockchains basées sur un comité ou sans autorisation, fournit sécurité plus forte que l’autre. Il est important de reconnaître que la sécurité des systèmes basés sur des comités ou sans autorisation les systèmes décentralisés sont incommensurables. Compromettre un PoW ou un PoS blockchain via une attaque à 51% nécessite qu'un adversaire obtienne des ressources majoritaires de manière éphémère et potentiellement de manière anonyme, par exemple en louant de l'énergie hash dans un système PoW. Tel les attaques en pratique ont déjà touché plusieurs blockchains [200, 34]. En revanche, compromettre un système basé sur des comités signifie corrompre un nombre seuil (généralement un tiers) de ses nœuds, lorsque ces nœuds peuvent être publiquement connus, bien dotés en ressources, et des entités dignes de confiance. D’un autre côté, les systèmes basés sur des comités (ainsi que les systèmes « hybrides » sans autorisation) systèmes qui soutiennent les comités) peuvent prendre en charge plus de fonctionnalités que ce qui est strictement prévu.systèmes sans mission. Cela inclut la capacité de conserver des secrets persistants, tels que clés de signature et/ou de chiffrement : une possibilité dans nos conceptions. Nous soulignons que les DON peuvent en principe être construits au sommet d'un comité ou d'un comité. protocole de consensus sans autorisation et les déployeurs DON peuvent finalement choisir d'adopter quelle que soit l’approche. Renforcer les modèles de confiance : Une fonctionnalité clé de Chainlink aujourd'hui est la possibilité pour les utilisateurs de sélectionner les nœuds en fonction des enregistrements décentralisés de leurs historiques de performances, comme indiqué à la section 3.6.4. Le mécanisme staking et le cadre d'incitation implicite que nous introduisons dans la section 9 constituent ensemble une conception de mécanisme rigoureuse et de grande envergure. qui donnera aux utilisateurs une capacité considérablement accrue d'évaluer la sécurité des DON. Ce même cadre permettra également aux DON eux-mêmes pour appliquer diverses exigences de sécurité sur les nœuds participants et assurer le fonctionnement dans le cadre de modèles de confiance solides. Il est également possible d'utiliser les outils décrits dans ce document pour les DON afin d'appliquer des exigences particulières du modèle de confiance, telles que la conformité aux exigences réglementaires. Pour Par exemple, en utilisant les techniques décrites à la section 4.3, les nœuds peuvent présenter des preuves de caractéristiques de l'opérateur de nœud, par exemple le territoire d'exploitation, qui peuvent être utilisées pour aider faire respecter, par exemple, l'article 3 du Règlement général sur la protection des données (RGPD) (« Champ d'application territorial ») [105]. Une telle conformité peut autrement être difficile à se réunissent dans des systèmes décentralisés [45]. De plus, dans la section 7, nous discutons des plans visant à renforcer la robustesse des DON. grâce à des mécanismes de minimisation de la confiance sur les principales chaînes qu’ils soutiennent.
Mô hình và mục tiêu bảo mật
Mạng Oracle phi tập trung là một hệ thống phân tán riêng biệt mà chúng tôi mong đợi sẽ ban đầu được thực hiện một cách thông thường—mặc dù không nhất thiết—bởi một ủy ban giao thức đồng thuận và được điều hành bởi một tập hợp các nút oracle. DON được thiết kế chủ yếu để tăng cường khả năng của smart contract trên chuỗi chính với báo cáo oracle và các dịch vụ khác, nhưng nó có thể cung cấp các dịch vụ hỗ trợ tương tự cho các hệ thống không phảiblockchain khác và do đó không cần phải liên kết với một chuỗi chính cụ thể.
Do đó, mô hình và các đặc tính mà chúng tôi xem xét phần lớn độc lập với việc sử dụng các ứng dụng cụ thể của DON. 2.1 Mô hình kiến trúc hiện tại Điều quan trọng cần nhấn mạnh là Chainlink ngày nay không phải là một dịch vụ nguyên khối mà là một khuôn khổ không cần cấp phép trong đó có thể khởi chạy các ứng dụng độc lập, khác biệt mạng gồm oracle nút [77]. Mạng có tập hợp các toán tử nút không đồng nhất và thiết kế. Họ cũng có thể khác nhau về loại dịch vụ họ cung cấp, có thể bao gồm, ví dụ: nguồn cấp dữ liệu, Bằng chứng dự trữ, tính ngẫu nhiên có thể kiểm chứng, v.v. Khác sự khác biệt có thể bao gồm mức độ phân cấp, quy mô của mạng về mặt giá trị bị khóa mà nó hỗ trợ và các tham số cấp dịch vụ khác nhau, chẳng hạn như tần số dữ liệu và độ chính xác. Mô hình không được phép của Chainlink khuyến khích sự phát triển của một hệ sinh thái trong đó các nhà cung cấp chuyên về các dịch vụ mà họ có thể cung cấp tốt nhất cho cộng đồng. Cái này mô hình có khả năng mang lại chi phí thấp hơn cho người dùng và chất lượng dịch vụ cao hơn mô hình yêu cầu tất cả các nút và mạng cung cấp đầy đủ các dịch vụ, một cách tiếp cận có thể dễ dàng chuyển sang áp dụng trên toàn hệ thống các dịch vụ đại diện cho ít nhất mẫu số chung của tài nguyên có sẵn cho các nút. Khi Chainlink phát triển theo hướng thiết kế dựa trên DON trong Chainlink 2.0, chúng tôi tiếp tục hỗ trợ mô hình của một khuôn khổ mở, không được phép, theo dõi mục tiêu của cung cấp cho người dùng nhiều lựa chọn dịch vụ mang lại kết quả phù hợp nhất trên toàn cầu với các yêu cầu ứng dụng cụ thể. 2.2 Giả định đồng thuận Chúng tôi sử dụng thuật ngữ Mạng Oracle phi tập trung để bao gồm đầy đủ chức năng của hệ thống oracle mà chúng tôi mô tả: cả cấu trúc dữ liệu mà các nút oracle duy trì và API cốt lõi được xếp chồng lên trên nó. Chúng tôi sử dụng thuật ngữ sổ cái (chữ thường), ký hiệu là L, để chỉ dữ liệu cơ bản cấu trúc được duy trì bởi DON và được sử dụng để hỗ trợ các dịch vụ cụ thể mà nó cung cấp. Chúng tôi nhấn mạnh rằng khung DON của chúng tôi không coi L là một hệ thống độc lập như a blockchain: Mục đích của nó là hỗ trợ blockchains và các hệ thống khác. Blockchain là, tất nhiên, có một cách để tạo ra một sổ cái đáng tin cậy, nhưng vẫn có những cách khác. Chúng tôi mong đợi DONs trong nhiều trường hợp để nhận ra sổ cái cơ bản của họ bằng cách sử dụng Byzantine Fault Tolerant (BFT) hệ thống có trước đáng kể các hệ thống blockchain như Bitcoin [174]. Chúng tôi sử dụng BFT-loại ký hiệu và thuộc tính xuyên suốt bài viết để thuận tiện, mặc dù chúng tôi nhấn mạnh rằng DONs có thể được thực hiện bằng cách sử dụng các giao thức đồng thuận không được phép. Về mặt khái niệm, sổ cái L là một bảng thông báo trên đó dữ liệu được sắp xếp tuyến tính. Nhìn chung, chúng tôi xem sổ cái có một số thuộc tính chính thường được gán cho blockchains [115]. Một sổ cái là: • Chỉ nối thêm: Dữ liệu sau khi được thêm vào sẽ không thể bị xóa hoặc sửa đổi.• Công khai: Bất kỳ ai cũng có thể đọc được nội dung nhất quán theo thời gian trong chế độ xem của tất cả người dùng.4 • Có sẵn: Sổ cái luôn có thể được người viết được ủy quyền viết và đọc bởi bất cứ ai một cách kịp thời. Các thuộc tính thay thế có thể có trong sổ cái cho DON khi được nhận ra bởi một ủy ban. Ví dụ: quyền truy cập ghi sổ cái có thể bị hạn chế đối với một số người dùng nhất định, vì có thể truy cập đọc đối với một số ứng dụng, tức là sổ cái không cần phải công khai như được xác định ở trên. Tương tự, các quy tắc sổ cái có thể cho phép sửa đổi hoặc biên tập lại dữ liệu. Chúng tôi không Tuy nhiên, hãy xem xét rõ ràng các biến thể như vậy trong bài viết này. Thiết kế mô-đun của DON có thể hỗ trợ bất kỳ loại BFT hiện đại nào các giao thức, ví dụ: Hotstuff[231]. Sự lựa chọn chính xác sẽ phụ thuộc vào các giả định về độ tin cậy và đặc điểm mạng giữa các nút oracle. Về nguyên tắc, DON có thể thay thế sử dụng blockchain không được phép có hiệu suất cao cho sổ cái của nó với vai trò hỗ trợ hệ thống lớp 2 hoặc blockchain có khả năng mở rộng tương đương. Tương tự, sự lai tạo cũng có thể xảy ra: Về nguyên tắc, DON có thể bao gồm các nút là validator trong một mạng hiện có blockchain, ví dụ: trong hệ thống Bằng chứng cổ phần trong đó các ủy ban được chọn để thực thi giao dịch, ví dụ: [8, 81, 120, 146, 204]. Chế độ hoạt động đặc biệt này đòi hỏi các nút hoạt động theo cách sử dụng kép, tức là hoạt động cả dưới dạng nút blockchain và DON nút. (Xem Phần 8.2 để thảo luận về các kỹ thuật nhằm đảm bảo tính liên tục trong việc thay đổi ủy ban và Phụ lục F về một số lưu ý khi lựa chọn ủy ban ngẫu nhiên.) Trong thực tế, trong thuật toán BFT hiện đại, các nút ký điện tử vào các thông báo trên sổ cái. Chúng ta giả sử để thuận tiện rằng L có một khóa công khai pkL liên quan và nội dung của nó được ký bởi khóa riêng tương ứng. Ký hiệu chung này áp dụng ngay cả khi dữ liệu trên L được ký bằng chữ ký ngưỡng.5 Chữ ký ngưỡng rất thuận tiện, vì chúng kích hoạt danh tính lâu dài cho DON ngay cả khi thay đổi tư cách thành viên trong các nút đang chạy nó. (Xem Phụ lục B.1.3.) Do đó, chúng tôi giả định rằng skL được chia sẻ bí mật theo cách ngưỡng (k, n) đối với một số tham số an toàn k, ví dụ: k = 2f + 1 và n = 3f + 1, trong đó f là số nút có khả năng bị lỗi. (Bằng cách chọn k ở đây theo cách này, chúng tôi đảm bảo rằng các nút bị lỗi không thể học skL cũng như không thể thực hiện việc từ chối dịch vụ cuộc tấn công ngăn chặn việc sử dụng nó.) Một thông báo trên L có dạng M = (m, z), trong đó m là một chuỗi và z là duy nhất số chỉ mục tuần tự. Nếu có thể, chúng ta viết tin nhắn dưới dạng m = ⟨MessageType : tải trọng⟩. Loại thông báo MessageType là cú pháp cho biết chức năng của một thông báo cụ thể. 4Trong trường hợp blockchain không có số cuối cùng nhận ra một sổ cái, sự không nhất quán thường bị loại trừ tránh xa bằng cách bỏ qua các khối không đủ sâu hoặc “cắt tỉa” [115]. 5Trong thực tế, một số cơ sở mã, ví dụ: LibraBFT [205], một biến thể của Hotstuff, hiện đã áp dụng đa chữ ký, thay vì chữ ký ngưỡng, giảm bớt độ phức tạp trong giao tiếp cho kỹ thuật đơn giản hơn. Với một số chi phí bổ sung, các nút oracle có thể thêm chữ ký ngưỡng vào tin nhắn được ghi vào L ngay cả khi giao thức đồng thuận được sử dụng cho L không sử dụng chúng.2.3 Ký hiệu Chúng ta biểu thị tập hợp n oracle nút chạy sổ cái bằng O = {Oi}n tôi = 1. Như vậy tập hợp các nút thường được gọi là một ủy ban. Để đơn giản, chúng ta giả sử rằng tập hợp oracle đang triển khai chức năng DON, tức là các dịch vụ trên L, giống hệt với duy trì L, nhưng chúng có thể khác biệt. Chúng ta đặt pki biểu thị khóa công khai của người chơi Oi và trượt khóa riêng tương ứng. Hầu hết các thuật toán BFT yêu cầu ít nhất n = 3f + 1 nút, trong đó f là số lượng các nút có khả năng bị lỗi; các nút còn lại là trung thực, theo nghĩa là chúng tuân theo giao thức chính xác như được chỉ định. Chúng tôi coi ủy ban O là trung thực nếu nó đáp ứng được điều này yêu cầu, tức là có nhiều hơn 2/3 số nút trung thực. Trừ khi có cách khác đã nêu, chúng tôi cho rằng O là trung thực (và là một mô hình tham nhũng tĩnh). Chúng tôi sử dụng pkO / skO có thể hoán đổi cho nhau bằng pkL / skL, tùy theo ngữ cảnh. Chúng ta đặt σ = Sigpk[m] biểu thị chữ ký trên thông báo m đối với pk, tức là sử dụng sk khóa riêng tương ứng. Đặt verify(pk, σ, m) →{false, true} biểu thị thuật toán xác minh chữ ký tương ứng. (Chúng tôi ngầm định việc tạo khóa trong suốt bài viết.) Chúng tôi sử dụng ký hiệu S để biểu thị nguồn dữ liệu và S để biểu thị toàn bộ nguồn nS trong một bối cảnh nhất định. Chúng tôi biểu thị bằng MAINCHAIN một hợp đồng thông minh được kích hoạt blockchain được hỗ trợ bởi DON. Chúng tôi sử dụng thuật ngữ hợp đồng dựa trên để biểu thị bất kỳ thông minh nào hợp đồng trên MAINCHAIN giao tiếp với DON và sử dụng ký hiệu SC để biểu thị một hợp đồng như vậy. Chúng tôi thường giả định rằng DON hỗ trợ một MAINCHAIN chuỗi chính duy nhất, mặc dù nó có thể hỗ trợ nhiều chuỗi như vậy, như chúng tôi trình bày trong các ví dụ ở Phần 4. A DON có thể và thường sẽ hỗ trợ nhiều hợp đồng dựa trên MAINCHAIN. (Như đã lưu ý ở trên, DON có thể hỗ trợ các dịch vụ không phải blockchain.) 2.4 Lưu ý về Mô hình Tin cậy Như đã lưu ý ở trên, DON có thể được xây dựng dựa trên các giao thức đồng thuận dựa trên ủy ban và chúng tôi mong đợi họ sẽ thường xuyên sử dụng các giao thức như vậy. Có nhiều lập luận mạnh mẽ cho rằng một trong hai lựa chọn thay thế, blockchain dựa trên ủy ban hoặc không được phép, cung cấp bảo mật mạnh hơn cái kia. Điều quan trọng là phải nhận ra rằng tính bảo mật của dựa trên ủy ban và không được phép hệ thống phi tập trung là không thể so sánh được. Thỏa hiệp PoW hoặc PoS blockchain thông qua tấn công 51% yêu cầu đối thủ phải có được phần lớn tài nguyên một cách nhất thời và có khả năng ẩn danh, chẳng hạn như bằng cách thuê nguồn điện hash trong hệ thống PoW. Như vậy các cuộc tấn công trong thực tế đã ảnh hưởng đến một số blockchains [200, 34]. Ngược lại, xâm phạm một hệ thống dựa trên ủy ban có nghĩa là làm hỏng một số ngưỡng (thường là một phần ba) các nút của nó, trong đó các nút có thể được biết đến công khai, có nguồn lực tốt, và các đơn vị đáng tin cậy. Mặt khác, các hệ thống dựa trên ủy ban (cũng như các hệ thống không cần cấp phép “kết hợp” hệ thống hỗ trợ các ủy ban) có thể hỗ trợ nhiều chức năng hơn so vớicác hệ thống phi nhiệm vụ. Điều này bao gồm khả năng duy trì các bí mật lâu dài, chẳng hạn như khóa ký và/hoặc mã hóa—một khả năng trong thiết kế của chúng tôi. Chúng tôi nhấn mạnh rằng DON về nguyên tắc có thể được xây dựng trên nền tảng dựa trên ủy ban hoặc giao thức đồng thuận không được phép và DON người triển khai cuối cùng có thể chọn áp dụng một trong hai cách tiếp cận. Củng cố các mô hình niềm tin: Tính năng chính của Chainlink ngày nay là khả năng người dùng chọn các nút dựa trên các bản ghi phi tập trung về lịch sử hiệu suất của chúng, như đã thảo luận ở Mục 3.6.4. Cơ chế staking và Khung khuyến khích ngầm định mà chúng tôi giới thiệu trong Phần 9 cùng nhau tạo thành một thiết kế cơ chế nghiêm ngặt và có phạm vi rộng khuôn khổ sẽ trao quyền cho người dùng khả năng mở rộng đáng kể để đánh giá tính bảo mật của DONs. Khung tương tự này cũng sẽ giúp chính DONs có thể thực hiện được để thực thi các yêu cầu bảo mật khác nhau trên các nút tham gia và đảm bảo hoạt động trong các mô hình niềm tin mạnh mẽ. Cũng có thể sử dụng các công cụ được mô tả trong bài viết này cho DON để thực thi các yêu cầu về mô hình tin cậy đặc biệt, chẳng hạn như tuân thủ các yêu cầu quy định. cho Ví dụ, bằng cách sử dụng các kỹ thuật được thảo luận trong Phần 4.3, các nút có thể đưa ra bằng chứng về các đặc điểm của nhà điều hành nút, ví dụ: lãnh thổ hoạt động, có thể được sử dụng để trợ giúp thực thi việc tuân thủ, ví dụ: Quy định chung về bảo vệ dữ liệu (GDPR) Điều 3 (“Phạm vi lãnh thổ”) [105]. Việc tuân thủ như vậy có thể là thách thức đối với gặp nhau trong các hệ thống phi tập trung [45]. Ngoài ra, trong Phần 7, chúng tôi thảo luận về kế hoạch tăng cường độ bền của DONs thông qua các cơ chế giảm thiểu niềm tin trên các chuỗi chính mà họ hỗ trợ.
Interface réseau Oracle décentralisée et Ca-
pabilités Ici, nous décrivons brièvement les capacités des DON en termes de fonctionnalités simples mais puissantes. interface pour laquelle ils sont conçus. Les applications sur un DON sont composées d'exécutables et d'adaptateurs. Un exécutable est un programme dont la logique de base est un programme déterministe, analogue à un smart contract. Un exécutable est également accompagné d'un certain nombre d'initiateurs, de programmes qui appellent l'entrée points dans la logique de l'exécutable lorsque des événements prédéterminés se produisent, par exemple à certains moments (comme une tâche cron), lorsqu'un prix franchit un seuil, etc., un peu comme Keepers (voir Section 3.6.3). Les adaptateurs fournissent des interfaces vers les ressources hors chaîne et peuvent être appelés par soit les initiateurs, soit la logique de base dans les exécutables. Comme leur comportement peut en dépendre des ressources externes, des initiateurs et des adaptateurs peuvent se comporter de manière non déterministe. Nous décrivons l'interface développeur DON et le fonctionnement des exécutables et adaptateurs en termes de trois ressources généralement utilisées pour caractériser les systèmes informatiques : mise en réseau, calcul et stockage. Nous donnons un bref aperçu de chacun d’eux ressources ci-dessous et fournissez plus de détails à l’annexe B.

3.1 Réseautage Les adaptateurs sont des interfaces via lesquelles les exécutables exécutés sur un DON peuvent envoyer et recevoir des données de systèmes hors-DON. Les adaptateurs peuvent être considérés comme une généralisation de les adaptateurs utilisés dans Chainlink aujourd'hui [20]. Les adaptateurs peuvent être bidirectionnels, c'est-à-dire qu'ils ne peut pas simplement extraire, mais transmettre les données d'un DON vers un serveur Web. Ils peuvent également tirer parti protocoles distribués ainsi que des fonctionnalités cryptographiques telles que le multipartite sécurisé calcul. Figure 9 : Adaptateurs connectant un DON, noté DON1, à une gamme de ressources différentes, dont un autre DON, noté DON2, un blockchain (chaîne principale) et son mempool, stockage externe, un serveur Web et des appareils IoT (via un serveur Web). Des exemples de ressources externes pour lesquelles des adaptateurs peuvent être créés sont présentés sur la figure 9. Ils comprennent : • Blockchains : un adaptateur peut définir comment envoyer des transactions à un blockchain et comment en lire des blocs, des transactions individuelles ou un autre état. Un adaptateur peut également être défini pour le pool de mémoire d’un blockchain. (Voir la section 3.5.) • Serveurs Web : les adaptateurs peuvent définir des API via lesquelles les données peuvent être récupérées. à partir de serveurs Web, y compris les systèmes existants qui ne sont pas spécialement adaptés pour interface avec les DON. De tels adaptateurs peuvent également inclure des API pour envoyer des données à de tels serveurs. Les serveurs Web auxquels se connecte un DON peuvent servir de passerelles à des ressources supplémentaires, telles que les appareils Internet des objets (IoT).• Stockage externe : un adaptateur peut définir des méthodes de lecture et d'écriture sur le stockage. services en dehors du DON, comme un système de fichiers décentralisé [40, 188] ou un cloud stockage. • Autres DON : les adaptateurs peuvent récupérer et transmettre des données entre DON. Nous prévoyons que les déploiements initiaux de DON incluront un ensemble de blocs de construction adaptateurs pour ces ressources externes couramment utilisées et permettra en outre à DON-spécifiques adaptateurs à publier par les nœuds DON. Alors que les développeurs smart contract écrivent des adaptateurs aujourd'hui, nous nous attendons à ce qu'ils construisent des adaptateurs encore plus puissants en utilisant cette avancée fonctionnalité. Nous espérons qu'à terme, il sera possible pour les utilisateurs de créer de nouveaux adaptateurs de manière simple. manière sans autorisation. Certains adaptateurs doivent être construits de manière à garantir la persistance et la disponibilité des ressources externes contrôlées par un DON. Par exemple, le stockage cloud peut nécessitent la maintenance d’un compte de services cloud. De plus, un DON peut effectuer gestion décentralisée des clés privées pour le compte des utilisateurs (comme dans, par exemple, [160]) et/ou exécutables. Par conséquent, le DON est capable de contrôler des ressources, telles que la cryptomonnaie, qui peuvent être utilisées, par exemple, pour envoyer des transactions sur une cible blockchain. Voir l'Annexe B.1 pour plus de détails sur les adaptateurs DON, ainsi que l'Annexe C pour quelques exemples d'adaptateurs. 3.2 Calcul Un exécutable est l'unité de code de base sur un DON. Un exécutable est une paire exec = (logique, initialisation). Ici, la logique est un programme déterministe avec un certain nombre d'entrées désignées points (logic1, logic2, . . . , logicℓ) et init est un ensemble d'initiateurs correspondants (init1, init2, . . . , inite). Pour garantir la pleine auditabilité du DON, la logique d'un exécutable utilise le grand livre sous-jacent L pour toutes les entrées et sorties. Ainsi, par exemple, tout adaptateur les données servant d’entrée à un exécutable doivent être stockées en premier sur L. Initiateurs : Les initiateurs de Chainlink provoquent aujourd'hui des exécutions de tâches dépendantes des événements sur Chainlink nœuds [21]. Les initiateurs des DON fonctionnent à peu près de la même manière. Un initiateur DON, cependant, est spécifiquement associé à un exécutable. Un initiateur peut dépendre sur un événement ou un état externe, sur l'heure actuelle ou sur un prédicat sur l'état DON. En raison de leur dépendance aux événements, les initiateurs peuvent bien entendu se comporter de manière non déterministe. (tout comme bien sûr les adaptateurs). Un initiateur peut s'exécuter au sein de nœuds DON individuels et il n'est donc pas nécessaire de compter sur un adaptateur. (Voir l'exemple 1 ci-dessous.) Les initiateurs sont une fonctionnalité importante qui distingue les exécutables des smart contract. Parce qu'un exécutable peut s'exécuter en réponse à un initiateur, il peut fonctionner efficacement de manière autonome, comme bien sûr par extension un contrat hybride intégrant l’exécutable. Aujourd'hui, une forme d'initiateurs sont les Chainlink Keepers, qui assurent les transactionsdes services d'automatisation, déclenchant l'exécution de smart contract, comme la liquidation de prêts sous-garantis et l'exécution de transactions à ordre limité, sur la base des rapports oracle. Idéalement, les initiateurs des DON peuvent également être considérés comme un moyen de spécifier le les contrats de service qui s'appliquent à un exécutable, car ils définissent les circonstances dans que le DON doit l'appeler. L'exemple suivant illustre le fonctionnement des initiateurs dans un exécutable : Exemple 1 (flux de prix déclenché par un écart). Un smart contract SC peut nécessiter un nouveau données d'information sur les prix (voir la section 3.6.3) chaque fois qu'il y a un changement substantiel, par exemple 1 %, dans le taux de change entre une paire d’actifs, par exemple ETH-USD. Prix sensible à la volatilité les flux sont pris en charge dans Chainlink aujourd'hui, mais il est instructif de voir comment ils peuvent être réalisé sur un DON au moyen d'un execfeed exécutable. L'exécutable execfeed maintient le prix ETH-USD le plus récent r sur L, dans le forme d'une séquence de ⟨NewPrice : j, r⟩entries, où j est un indice incrémenté de each price update. Un initiateur init1 amène chaque nœud Oi à surveiller le prix actuel ETH-USD pour des écarts d'au moins 1 % par rapport au prix r le plus récemment enregistré avec l'indice j. Upon détection d'un tel écart, Oi écrit sa vue actuelle ri du nouveau prix sur L en utilisant une entrée de la forme ⟨PriceView : i, j + 1, ri⟩. Un deuxième initiateur init2 se déclenche lorsqu'au moins k de telles entrées PriceView avec un nouveau prix les valeurs de l'index j + 1 créées par des nœuds distincts se sont accumulées sur L. Ensuite, init2 invoque une logique de point d'entrée2 pour calculer la médiane ρ des k premières valeurs priceview fraîches et valides et écrit une nouvelle valeur ⟨NewPrice : j + 1, ρ⟩to L . (Operationally, nodes peuvent se relayer en tant qu'écrivains désignés.) Un troisième initiateur, init3, surveille les entrées NewPrice sur L. Chaque fois qu'un nouveau rapport ⟨NewPrice : j, r⟩apparaît là, il invoque une logique de point d'entrée3 qui pousse (j, r) vers SC using an adapter. Comme nous l'avons noté, un exécutable est similaire dans ses capacités à un smart contract. Outre ses performances plus élevées, il diffère d'un contrat de chaîne principale typique. in two essential ways: 1. Confidentialité : un exécutable peut effectuer des calculs confidentiels, c'est-à-dire qu'un programme secret peut traiter des entrées en texte clair, ou qu'un programme publié peut traiter des entrées en texte clair. données d'entrée secrètes, ou une combinaison des deux. Dans un modèle simple, les données secrètes peuvent être accessible par les nœuds DON, qui masquent les résultats intermédiaires et ne divulguent que valeurs traitées et désinfectées vers MAINCHAIN. Il est également possible de dissimuler des données sensibles aux DON eux-mêmes : les DON sont destinés à prendre en charge des approches telles que comme le calcul multipartite, par exemple [42, 157], et les environnements d'exécution fiables (TEE) [84, 133, 152, 229] à cet effet.6 6Par extension, garder secrets les exécutables eux-mêmes vis-à-vis des nœuds DON est également possible, bien que cela ne soit pratique aujourd'hui que pour les exécutables non triviaux utilisant des TEE.2. Rôle de support : un exécutable est destiné à prendre en charge les smart contract sur un serveur principal. chaîne, plutôt que de les remplacer. Un exécutable a plusieurs limitations qu'un smart contract ne : (a) Modèle de confiance : un exécutable fonctionne dans le modèle de confiance défini par le DON : Sa bonne exécution repose sur le comportement honnête de O. (Un principal La chaîne peut cependant fournir des garde-fous contre les malversations DON, car discuté à la section 7.3.) (b) Accès aux actifs : un DON peut contrôler un compte sur un blockchain - et donc contrôler les actifs dessus via un adaptateur. Mais un DON ne peut pas faire autorité représentent les actifs créés sur une chaîne principale, par exemple Ether ou ERC20 tokens, puisque leur chaîne d'origine conserve le registre faisant autorité de leur propriété. (c) Cycle de vie : les DON peuvent être installés intentionnellement avec des durées de vie limitées, comme défini par des accords de niveau de service en chaîne entre DONs et les propriétaires de contrats de confiance. Les blockchains, en revanche, sont censées fonctionner comme systèmes d’archives permanentes. Voir l'annexe B.2 pour plus de détails sur le calcul DON. 3.3 Stockage En tant que système basé sur un comité, un DON peut stocker des quantités modérées de données de manière persistante sur L à un coût bien inférieur à un blockchain sans autorisation. De plus, via des adaptateurs, Les DON peuvent faire référence à des systèmes décentralisés externes pour le stockage de données, par exemple Filecoin [85], et peut ainsi connecter de tels systèmes aux smart contract. Cette option est particulièrement Les données en masse sont attrayantes comme moyen de résoudre le problème omniprésent du « ballonnement » dans Systèmes blockchain. Les DON peuvent ainsi stocker des données localement ou en externe pour les utiliser dans leurs services spécifiquement pris en charge. Un DON peut en outre utiliser ces données de manière confidentielle, calcul sur des données qui sont : (1) partagées en secret entre les nœuds DON ou cryptées sous une clé gérée par les nœuds DON de manière adaptée au calcul multipartite sécurisé ou un cryptage partiel ou totalement homomorphe ; ou (2) protégé à l'aide d'une exécution fiable environnement. Nous nous attendons à ce que les DON adoptent un modèle simple de gestion de la mémoire commun à Systèmes de contrats intelligents : un exécutable ne peut écrire que dans sa propre mémoire. Exécutables peut cependant lire dans la mémoire d'autres exécutables. Voir l'annexe B.3 pour plus de détails sur le stockage DON. 3.4 Cadre d'exécution de transactions (TEF) Les DON sont destinés à prendre en charge les contrats sur une chaîne principale MAINCHAIN (ou sur plusieurs chaînes principales). Le Transaction-Execution Framework (TEF), discuté en détaildans la section 6, est une approche générale de l’exécution efficace d’un contrat. SC sur MAINCHAIN et un DON. Le TEF est destiné à prendre en charge le FSS et la couche 2 technologies – simultanément, si vous le souhaitez. En effet, il est susceptible de servir de véhicule principal pour l'utilisation du FSS (et pour cette raison, nous ne discuterons pas davantage du FSS dans cette section). En bref, dans TEF un contrat cible original SC conçu ou développé pour MAINCHAIN est refactorisé dans un contrat hybride. Cette refactorisation produit les deux éléments du contrat hybride : un contrat MAINCHAIN SCa auquel nous faisons référence pour plus de clarté dans le cadre des TEF en tant que contrat d'ancrage et exécutable sur un DON. Le contract SCa conserve les actifs des utilisateurs, exécute des transitions d'état faisant autorité et également fournit des garde-corps (voir section 7.3) contre les défaillances du DON. Les exécutables séquence les transactions et fournit les données oracle associées à celles-ci. Il peut regrouper transactions pour SCa de différentes manières, par exemple en utilisant des preuves de validité ou des rollup optimistes, exécution confidentielle par les DON, etc. Nous prévoyons de développer des outils permettant aux développeurs de partager facilement un contrat. SC écrit dans un langage de haut niveau en morceaux de logique MAINCHAIN et DON, SCa et respectivement, qui composent de manière sécurisée et efficace. Utiliser TEF pour intégrer des schémas de transactions hautes performances avec des performances élevées oracles fait partie intégrante de notre approche de mise à l'échelle oracle. 3.5 Services de pool de mémoire Une fonctionnalité importante de la couche application que nous avons l'intention de déployer sur les DON en support du FSS et du TEF sont des services Mempool (MS). MS peut être considéré comme un adaptateur, mais avec un support de première classe. MS prend en charge le traitement des transactions compatible avec les anciens systèmes. Dans cette utilisation, MS ingère à partir du pool mémoire d'une chaîne principale les transactions destinées à un contrat cible SC sur MAINCHAIN. MS transmet ensuite ces transactions à un exécutable sur le DON, où ils sont traités de la manière souhaitée. Les données MS peuvent être utilisées par le DON pour composer des transactions qui peuvent ensuite être transmises directement au SC à partir du DON ou à un autre contrat qui appelle SC. Par exemple, le DON peut transférer des transactions récoltés via MS, ou il peut utiliser les données MS pour fixer les prix du gaz pour les transactions auxquelles il envoie CHAÎNE PRINCIPALE. Parce qu'il surveille le pool de mémoire, MS peut obtenir des transactions des utilisateurs interagissant directement avec SC. Ainsi les utilisateurs peuvent continuer à générer leurs transactions en utilisant logiciels hérités, c'est-à-dire des applications ignorant l'existence de MS et configurées par MS contrats. (Dans ce cas, SC doit être modifié pour ignorer les transactions d'origine et n'acceptez que ceux traités par le MS, afin d'éviter un double traitement.) A utiliser avec un contrat cible SC, MS peut être utilisé avec FSS et/ou le TEF.3.6 Tremplins : capacités Chainlink existantes 3.6.1 Rapports hors chaîne (OCR) Le reporting hors chaîne (OCR) [60] est un mécanisme dans Chainlink pour l'agrégation et la transmission des rapports oracle à un SC de contrat de confiance. Récemment déployé au prix de Chainlink réseaux d'alimentation, il représente une première étape sur la voie des DON complets. À la base, OCR est un protocole BFT conçu pour fonctionner de manière partiellement synchrone. réseau. Il assure la vivacité et l'exactitude en présence de f < n/3 arbitrairement nœuds défectueux, garantissant les propriétés de diffusion fiable byzantine, mais ce n'est pas le cas un protocole de consensus BFT complet. Les nœuds ne conservent pas de journaux de messages cohérent dans le sens de représenter un grand livre identique dans toutes leurs vues, et le leader du protocole peut tergiverser sans violer la sécurité. L'OCR est actuellement conçue pour un type de message particulier : l'agrégation médianisée de (au moins 2f +1) valeurs signalées par les nœuds participants. Il fournit une assurance clé sur les rapports qu'il produit pour SC, appelés rapports attestés : La valeur médiane dans un le rapport est égal ou se situe entre les valeurs rapportées par deux nœuds honnêtes. Cette propriété est la condition de sécurité clé pour l’OCR. Le leader peut avoir une certaine influence sur la médiane valeur dans un rapport attesté, mais uniquement sous cette condition d’exactitude. L'OCR peut être étendu aux types de messages qui regroupent les valeurs de différentes manières. Bien que les objectifs actuels de vivacité et d’exactitude du réseau Chainlink ne nécessitent pas Pour que l'OCR soit un protocole de consensus à part entière, ils nécessitent que l'OCR fournisse certaines formes supplémentaires de fonctionnalités non présentes dans les protocoles BFT conventionnels, notamment : 1. Diffusion de rapport hors chaîne tout ou rien : l'OCR garantit qu'un rapport attesté est rendu rapidement disponible à tous les nœuds honnêtes ou à aucun d'entre eux. C'est une question d'équité propriété qui permet de garantir que les nœuds honnêtes ont la possibilité de participer dans la transmission du rapport attesté. 2. Transmission fiable : l'OCR garantit, même en présence de composants défectueux ou malveillants nœuds, que tous les rapports et messages OCR sont transmis au SC dans un certain délai, intervalle de temps prédéfini. Il s'agit d'une propriété de vivacité. 3. Minimisation de la confiance basée sur le contrat : SC filtre les rapports générés par OCR potentiellement erronés, par exemple si leurs valeurs déclarées s'écartent de manière significative des autres. ceux récemment reçus. Il s’agit d’une forme d’application de l’exactitude hors protocole. Ces trois propriétés joueront un rôle naturel dans les DON. La diffusion hors chaîne tout ou rien (DON) est un élément important des garanties cryptoéconomiques autour d'une transmission fiable, qui est à son tour une propriété essentielle de l'adaptateur. Confiance la minimisation dans SC est un type de garde-corps, comme discuté dans la section 7.3. L'OCR fournit également une base pour le déploiement opérationnel et l'affinement des protocoles BFT dans les réseaux oracle de Chainlink et donc, comme indiqué ci-dessus, une voie vers la pleine fonctionnalité des DONs.3.6.2 DECO et Crieur public DECO [234] et Town Crier [233] sont deux technologies connexes actuellement en cours de développement. développé dans les réseaux Chainlink. La plupart des serveurs Web permettent aujourd'hui aux utilisateurs de se connecter via un canal sécurisé à l'aide d'un protocole appelé Transport Layer Security (TLS) [94]. (HTTPS indique une variante de HTTP qui est activé avec TLS, c'est-à-dire que les URL préfixées par « https » indiquent l'utilisation de TLS pour la sécurité.) La plupart des serveurs compatibles TLS ont cependant une limitation notable : ils ne signent pas numériquement. données. Par conséquent, un utilisateur ou un prouveur ne peut pas présenter les données qu'il reçoit d'un serveur à un tiers ou à un vérificateur, tel qu'un oracle ou smart contract, de manière à garantir l’authenticité des données. Même si un serveur signait numériquement les données, un problème de confidentialité demeurerait. Un prouveur peut souhaiter expurger ou modifier des données sensibles avant de les présenter à un Vérificateur. Cependant, les signatures numériques sont conçues spécifiquement pour invalider les données modifiées. Ils empêchent ainsi un prouveur d'apporter des modifications préservant la confidentialité. aux données. (Voir la section 7.1 pour plus de détails.) DECO et Town Crier sont conçus pour permettre à un prouveur d'obtenir des données à partir d'un site Web. serveur et le présenter à un vérificateur d'une manière qui garantit l'intégrité et la confidentialité. Les deux systèmes préservent l'intégrité dans le sens où ils garantissent que les données présentées par le prouveur au vérificateur provient authentiquement du serveur cible. Ils soutiennent confidentialité dans le sens de permettre au prouveur de caviarder ou de modifier les données (tout en préserver l’intégrité). Une caractéristique clé des deux systèmes est qu'ils ne nécessitent aucune modification d'un serveur Web cible. Ils peuvent fonctionner avec n’importe quel serveur compatible TLS existant. En fait, ils sont transparents pour le serveur : Du point de vue du serveur, le Prouveur est établir une connexion ordinaire. Les deux systèmes ont des objectifs similaires, mais diffèrent dans leurs modèles de confiance et leurs implémentations, comme nous l'expliquons maintenant brièvement. DECO utilise fondamentalement des protocoles cryptographiques pour assurer son intégrité et les propriétés de confidentialité. En établissant une session avec un serveur cible à l'aide de DECO, le Prover s'engage en même temps dans un protocole interactif avec le Vérificateur. Ce protocole permet au Prouveur de prouver au Vérificateur qu'il a reçu une donnée D donnée du serveur lors de sa session en cours. Le prouveur peut alternativement, présenter au vérificateur une preuve de connaissance nulle d'une propriété de D et donc ne pas révéler D directement. Dans une utilisation typique de DECO, un utilisateur ou un seul nœud peut exporter des données D depuis un serveur privé. session avec un serveur Web vers tous les nœuds d'un DON. En conséquence, le DON complet peut attester de l'authenticité de D (ou d'un fait dérivé de D via une preuve de connaissance nulle). En plus des exemples d'applications donnés plus loin dans ce document, cette fonctionnalité peut être utilisé pour amplifier l'accès de haute intégrité à une source de données par un DON. Même si un seul nœud a un accès direct à une source de données, grâce par exemple à un accord exclusif avec un fournisseur de données - il reste possible pour l'ensemble du DON d'attester de l'exactitude desrapports émis par ce nœud. Town Crier s'appuie sur l'utilisation d'un environnement d'exécution de confiance (TEE) tel qu'Intel SGX. En bref, un TEE fonctionne comme une sorte de boîte noire qui exécute des applications de manière de manière inviolable et confidentielle. En principe, même le propriétaire de l'hébergeur sur lequel le TEE est en cours d'exécution ne peut ni (indétectable) modifier une application protégée par TEE ni afficher l’état de l’application, qui peut inclure des données secrètes. Town Crier peut réaliser toutes les fonctionnalités de DECO et bien plus encore. DECO contraint le prouveur à interagir avec un seul vérificateur. En revanche, Town Crier permet un prouveur pour générer une preuve publiquement vérifiable sur les données D récupérées sur un serveur cible, c'est-à-dire une preuve que n'importe qui, même un smart contract, peut vérifier directement. Le crieur public peut ingérez et utilisez également en toute sécurité des secrets (par exemple, les informations d'identification des utilisateurs). La principale limitation de Town Crier est son recours aux TEE. Les TEE de production ont Il a récemment été démontré qu'elle présentait un certain nombre de vulnérabilités graves, même si la technologie en est à ses balbutiements et qu'elle arrivera sans aucun doute à maturité. Voir les annexes B.2.1 et B.2.2 pour discussion plus approfondie sur les TEE. Pour quelques exemples d'applications de DECO et Town Crier, voir les sections 4.3, 4.5. et 9.4.3 et l'Annexe C.1. 3.6.3 Services en chaîne Chainlink existants Les réseaux Chainlink oracle fournissent un certain nombre de services principaux à travers une multiplicité de blockchains et autres systèmes décentralisés aujourd'hui. Evolution ultérieure comme décrit dans ce livre blanc dotera ces services existants de capacités supplémentaires et atteindre. Trois exemples sont : Flux de données : Aujourd'hui, la majorité des utilisateurs Chainlink qui comptent sur smart contract font utilisation de flux de données. Il s'agit de rapports sur la valeur actuelle d'éléments de données clés selon à des sources hors chaîne faisant autorité. Par exemple, les flux de prix sont des flux signalant les prix d’actifs – crypto-monnaies, matières premières, forex, indices, actions, etc. – selon services d’échanges ou d’agrégation de données. De tels flux contribuent déjà aujourd’hui à sécuriser des milliards de dollars en valeur en chaîne grâce à leur utilisation dans des systèmes DeFi tels que Aave [147] et Synthétix [208]. D'autres exemples de flux de données Chainlink incluent des données météorologiques pour assurance-récolte paramétrique [75] et données électorales [93], entre autres. Le déploiement des DON et d'autres technologies décrites dans ce document améliorera la fourniture de flux de données dans les réseaux Chainlink de plusieurs manières, notamment : • Mise à l'échelle : l'OCR et, par la suite, les DON visent à permettre aux services Chainlink d'évoluer. de façon spectaculaire à travers les nombreux blockchain qu’ils soutiennent. Par exemple, nous nous attendons que DONs contribueront à augmenter le nombre de flux de données fournis par les nœuds utilisant Chainlink de 100 à 1000 et au-delà. Une telle mise à l'échelle aidera le Chainlink l’écosystème atteint son objectif de fournir des données pertinentes pour les smart contract de manière exhaustive et à la fois de répondre et d’anticiper les besoins existants et futurs.• Sécurité améliorée : en stockant les rapports intermédiaires, les DON conserveront les enregistrements. des comportements des nœuds pour une surveillance et une mesure haute fidélité de leurs performances et de leur précision, permettant une base empirique solide des systèmes de réputation pour les nœuds Chainlink. La FSS et le TEF permettront d'intégrer des flux de prix avec les données de transaction de manière flexible qui empêche les attaques telles que le front-running. (Explicite) staking renforcera la protection cryptoéconomique existante de la sécurité de flux de données. • Agilité des flux : en tant que systèmes agnostiques blockchain (en fait, plus largement, systèmes indépendants des consommateurs), les DON peuvent faciliter la fourniture de flux de données à une multiplicité des systèmes de confiance. Un seul DON peut pousser simultanément un flux donné vers un ensemble de différents blockchain, éliminant le besoin de réseaux oracle par chaîne et permettant un déploiement rapide des flux existants sur les nouveaux blockchain et des flux supplémentaires alimente les blockchain actuellement desservis. • Confidentialité : la possibilité d'effectuer des calculs généralisés dans un DON permet aux calculs sur des données sensibles d'avoir lieu hors chaîne, évitant ainsi les calculs en chaîne. exposition. De plus, en utilisant DECO ou Town Crier, il est possible d'obtenir une confidentialité encore plus forte, permettant la génération de rapports basés sur des données qui ne sont pas exposé même aux nœuds DON. Voir les sections 4.3 et 4.5 pour des exemples. Fonctions aléatoires vérifiables (VRF) : Plusieurs types de DApp nécessitent une source aléatoire vérifiable et correcte pour permettre la vérification de leur propre fonctionnement équitable. Les jetons non fongibles (NFTs) en sont un exemple. La rareté des fonctionnalités NFT dans Aavegotchi [23] et Axie Infinity [35] est déterminée par Chainlink VRF, tout comme la distribution de NFTs au moyen de tirages basés sur des tickets dans les Ether Cards [102] ; la grande variété de DApps de jeu dont les résultats sont randomisés ; et des instruments financiers non conventionnels, par exemple des jeux d'épargne sans perte tels que PoolTogether [89], qui allouent des fonds à gagnants aléatoires. D'autres applications blockchain et non-blockchain nécessitent également des sources de hasard, y compris la sélection des comités du système décentralisé et la exécution de loteries. Bien que les blocs hashes puissent servir de source de hasard imprévisible, ils sont vulnérables à la manipulation par des mineurs adverses (et dans une certaine mesure par les utilisateurs soumettant des transactions). Chainlink VRF [78] offre une alternative considérablement plus sécurisée. Un oracle a une paire de clés privée/publique associée (sk, pk) dont la clé privée est maintenue hors chaîne et dont la clé publique pk est publiée. Pour sortir une valeur aléatoire, il applique sk à une graine imprévisible x fournie par un contrat de confiance (par exemple, un bloc hash et paramètres spécifiques à DApp) en utilisant une fonction F, donnant y = Fsk(x) avec un preuve d'exactitude. (Voir [180] pour le VRF disponible sur Chainlink.) Qu'est-ce qui fait qu'un VRF vérifiable est le fait qu'avec la connaissance de pk, il est possible de vérifier l'exactitude de la preuve et donc de y. La valeur y est donc imprévisible pour un adversaire qui ne peut pas prédire x ou apprendre sk et impossible à manipuler pour le service.Chainlink VRF peut être considéré comme l'une d'une famille d'applications qui impliquent la garde de clés privées hors chaîne. Plus généralement, les DON peuvent offrir des services sécurisés, stockage décentralisé de clés individuelles pour les applications et/ou les utilisateurs, et combiner cette capacité avec le calcul généralisé. Le résultat est une multitude d'applications, de dont nous donnons quelques exemples dans cet article, y compris la gestion des clés pour la preuve de Réserves (voir section 4.1) et pour les informations d’identification décentralisées des utilisateurs (et autres actifs) (voir section 4.3). Gardiens : Chainlink Keepers [87] permettent aux développeurs d'écrire du code pour des applications décentralisées. l'exécution de tâches hors chaîne, généralement pour déclencher l'exécution de smart contract de confiance. Avant l'avènement de Keepers, il était courant que les développeurs exploitent de tels systèmes hors chaîne. logique elles-mêmes, créant des points de défaillance centralisés (ainsi qu’un effort de développement considérable en double). Les Keepers fournissent plutôt un cadre facile à utiliser pour externalisation décentralisée de ces opérations, permettant des cycles de développement plus courts et forte assurance de vivacité et autres propriétés de sécurité. Les gardiens peuvent soutenir n'importe qui d'une grande variété d'objectifs déclencheurs, y compris la liquidation de prêts en fonction des prix ou exécution de transactions financières, lancement de parachutages ou de paiements en fonction du temps dans les systèmes avec récolte de rendement, etc. Dans le cadre DON, les initiateurs peuvent être considérés comme une généralisation des Gardiens dans plusieurs sens. Les initiateurs peuvent utiliser des adaptateurs et peuvent ainsi tirer parti d'un bibliothèque modularisée d'interfaces vers les systèmes en chaîne et hors chaîne, permettant une développement de fonctionnalités sécurisées et sophistiquées. Les initiateurs lancent le calcul dans exécutables, qui eux-mêmes offrent toute la polyvalence des DON, permettant une large gamme de services décentralisés que nous présentons dans cet article pour les applications en chaîne et hors chaîne. 3.6.4 Réputation des nœuds/historique des performances L'écosystème Chainlink existant documente de manière native les historiques de performances des nœuds contributeurs sur la chaîne. Cette fonctionnalité a donné naissance à un ensemble de ressources axées sur la réputation qui ingèrent, filtrent et visualisent les données de performance sur des individus. opérateurs de nœuds et flux de données. Les utilisateurs peuvent référencer ces ressources pour informer décisions dans leur sélection de nœuds et pour surveiller le fonctionnement des réseaux existants. Des fonctionnalités similaires aideront les utilisateurs à choisir les DON. Par exemple, les marchés sans autorisation actuels, tels que market.link, autorisent node les opérateurs doivent répertorier leurs services oracle et attester de leur identité hors chaîne via des services tels que Keybase [4], qui lient le profil d'un nœud dans Chainlink à son les noms de domaine et les comptes de réseaux sociaux existants du propriétaire. De plus, les performances les outils d'analyse, tels que ceux disponibles sur market.link et Reputation.link, permettent utilisateurs pour afficher des statistiques sur les performances historiques des nœuds individuels, y compris leur latence de réponse moyenne, l'écart des valeurs dans leurs rapports par rapport aux valeurs consensuelles relayés en chaîne, les revenus générés, les emplois réalisés, et plus encore. Ces outils d'analyse également permettre aux utilisateurs de suivre l'adoption de divers réseaux oracle par d'autres utilisateurs, une forme deapprobation implicite des nœuds sécurisant ces réseaux. Le résultat est un « réseau de confiance »dans lequel, en utilisant des nœuds particuliers, des applications décentralisées de grande valeur créent un signal de leur confiance dans ces nœuds que les autres utilisateurs peuvent observer et prendre en compte dans leur propres décisions de sélection de nœuds. Avec les DON (et initialement avec l'OCR), s'accompagne d'un changement dans le traitement des transactions et activité contractuelle plus généralement hors chaîne. Un modèle décentralisé pour le nœud d'enregistrement la performance reste possible au sein du DON lui-même. En effet, les hautes performances et la capacité de données des DON permettent de construire des enregistrements de manière fine. manière et également d'effectuer des calculs décentralisés sur ces enregistrements, produisant des résumés fiables qui peuvent être consommés par les services de réputation et contrôlés sur CHAÎNE PRINCIPALE. Bien qu'il soit en principe possible pour un DON de déformer le comportement des nœuds constituants si une grande fraction des nœuds est corrompue, nous notons que le collectif les performances d'un DON lui-même dans la fourniture de données en chaîne sont visibles sur MAINCHAIN et ne peut donc pas être déformé. De plus, nous prévoyons d'explorer les mécanismes qui inciter à la création de rapports internes précis sur les comportements des nœuds dans un DON. Par exemple, en signalant le sous-ensemble de nœuds les plus performants qui renvoient le plus rapidement des données contribuant à un rapport relayé en chaîne, un DON crée une incitation pour les nœuds à contester les erreurs rapports : inclure incorrectement des nœuds dans ce sous-ensemble signifie exclure incorrectement des nœuds cela aurait dû être inclus et donc les pénaliser invalidement. Des échecs de reporting répétés par un DON inciteraient également les nœuds honnêtes à quitter le réseau. DON. Compilation décentralisée d'historiques de performances précis et les conséquences capacité des utilisateurs à identifier les nœuds les plus performants et pour les opérateurs de nœuds à créer les réputations sont des caractéristiques distinctives importantes de l’écosystème Chainlink. Nous montrer dans la section 9 comment nous pouvons raisonner à leur sujet en tant qu’élément clé d’une approche rigoureuse et vue élargie de la sécurité économique fournie par les DON.
Giao diện mạng Oracle phi tập trung và Ca-
khả năng Ở đây chúng tôi phác thảo ngắn gọn các khả năng của DON theo cách đơn giản nhưng mạnh mẽ giao diện mà chúng được thiết kế để hiện thực hóa. Các ứng dụng trên DON bao gồm các tệp thực thi và bộ điều hợp. Một tệp thực thi là một chương trình có logic cốt lõi là chương trình xác định, tương tự như smart contract. Một tệp thực thi cũng có một số bộ khởi tạo đi kèm, các chương trình gọi mục nhập chỉ vào logic của tệp thực thi khi xảy ra các sự kiện được xác định trước—ví dụ: tại một số thời điểm nhất định (như công việc định kỳ), khi giá vượt qua một ngưỡng, v.v.—giống như Người giữ (xem Phần 3.6.3). Bộ điều hợp cung cấp giao diện cho các tài nguyên ngoài chuỗi và có thể được gọi bởi hoặc là bộ khởi tạo hoặc logic cốt lõi trong các tệp thực thi. Vì hành vi của họ có thể phụ thuộc vào điều đó của các tài nguyên bên ngoài, bộ khởi tạo và bộ điều hợp có thể hoạt động không mang tính xác định. Chúng tôi mô tả giao diện nhà phát triển DON cũng như chức năng của các tệp thực thi và bộ điều hợp theo ba tài nguyên thường được sử dụng để mô tả các hệ thống máy tính: mạng, tính toán và lưu trữ. Chúng tôi cung cấp một cái nhìn tổng quan ngắn gọn về mỗi trong số này các nguồn bên dưới và cung cấp thêm chi tiết trong Phụ lục B.

3.1 Mạng Bộ điều hợp là các giao diện mà qua đó các tệp thực thi chạy trên DON có thể gửi và nhận dữ liệu từ hệ thống off-DON. Bộ điều hợp có thể được xem như là sự khái quát hóa của các bộ chuyển đổi được sử dụng trong Chainlink hôm nay [20]. Bộ điều hợp có thể là hai chiều—tức là chúng không thể chỉ kéo mà còn đẩy dữ liệu từ DON tới máy chủ web. Họ cũng có thể tận dụng các giao thức phân tán cũng như chức năng mã hóa như bảo mật đa bên tính toán. Hình 9: Bộ điều hợp kết nối DON, ký hiệu là DON1, với nhiều loại tài nguyên khác nhau, bao gồm một DON khác, ký hiệu là DON2, blockchain (chuỗi chính) và của nó mempool, bộ nhớ ngoài, máy chủ web và thiết bị IoT (thông qua máy chủ web). Ví dụ về các tài nguyên bên ngoài mà bộ điều hợp có thể được tạo được hiển thị trong Hình 9. Chúng bao gồm: • Chuỗi khối: Bộ chuyển đổi có thể xác định cách gửi giao dịch tới blockchain và cách đọc các khối, giao dịch riêng lẻ hoặc trạng thái khác từ nó. Một bộ chuyển đổi cũng có thể được xác định cho mempool của blockchain. (Xem Phần 3.5.) • Máy chủ web: Bộ điều hợp có thể xác định API thông qua đó dữ liệu có thể được truy xuất từ các máy chủ web, bao gồm cả các hệ thống cũ không được điều chỉnh đặc biệt cho giao tiếp với DONs. Các bộ điều hợp như vậy cũng có thể bao gồm các API để gửi dữ liệu tới những máy chủ như vậy. Các máy chủ web mà DON kết nối có thể đóng vai trò là cổng tới các tài nguyên bổ sung, chẳng hạn như các thiết bị Internet-of-Things (IoT).• Bộ nhớ ngoài: Bộ điều hợp có thể xác định các phương thức đọc và ghi vào bộ lưu trữ dịch vụ bên ngoài DON, chẳng hạn như hệ thống tệp phi tập trung [40, 188] hoặc đám mây lưu trữ. • Các DON khác: Bộ điều hợp có thể truy xuất và truyền dữ liệu giữa DON. Chúng tôi hy vọng rằng việc triển khai ban đầu DON sẽ bao gồm một tập hợp các khối xây dựng bộ điều hợp cho các tài nguyên bên ngoài được sử dụng phổ biến như vậy và sẽ tiếp tục cho phép DON-cụ thể bộ điều hợp sẽ được xuất bản bởi nút DON. Khi smart contract nhà phát triển viết bộ điều hợp hôm nay, chúng tôi hy vọng rằng họ sẽ xây dựng các bộ điều hợp mạnh mẽ hơn nữa bằng cách sử dụng công cụ nâng cao này chức năng. Chúng tôi hy vọng rằng cuối cùng người dùng sẽ có thể tạo các bộ điều hợp mới theo cách cách không được phép. Một số bộ điều hợp phải được xây dựng theo cách đảm bảo tính ổn định và sẵn có của các tài nguyên bên ngoài do DON kiểm soát. Ví dụ: lưu trữ đám mây có thể yêu cầu duy trì tài khoản dịch vụ đám mây. Ngoài ra, DON có thể thực hiện quản lý phi tập trung các khóa riêng thay mặt cho người dùng (như trong, ví dụ: [160]) và/hoặc thực thi. Do đó, DON có khả năng kiểm soát các tài nguyên, chẳng hạn như tiền điện tử, có thể được sử dụng, ví dụ: để gửi giao dịch trên mục tiêu blockchain. Xem Phụ lục B.1 để biết thêm chi tiết về bộ điều hợp DON, như Phụ lục C cho một số bộ điều hợp bộ điều hợp ví dụ. 3.2 tính toán Tệp thực thi là đơn vị mã cơ bản trên DON. Một tệp thực thi là một cặp exec = (lôgic, khởi tạo). Ở đây, logic là một chương trình xác định với một số mục được chỉ định các điểm (logic1, logic2, . . . , logicℓ) và init là tập hợp các điểm khởi tạo tương ứng (init1, init2,..., inite). Để đảm bảo khả năng kiểm tra đầy đủ của DON, logic của tệp thực thi sử dụng sổ cái cơ bản L cho tất cả các đầu vào và đầu ra. Vì vậy, ví dụ, bất kỳ bộ chuyển đổi nào dữ liệu phục vụ làm đầu vào cho một tệp thực thi phải được lưu trữ trước tiên trên L. Người khởi xướng: Những người khởi tạo trong Chainlink hôm nay thực hiện các công việc phụ thuộc vào sự kiện trên Chainlink nút [21]. Các bộ khởi tạo trong DONs hoạt động theo cách tương tự. Tuy nhiên, trình khởi tạo DON được liên kết cụ thể với một tệp thực thi. Người khởi xướng có thể phụ thuộc trên một sự kiện hoặc trạng thái bên ngoài, vào thời điểm hiện tại hoặc trên một vị từ trên trạng thái DON. Với sự phụ thuộc vào các sự kiện, những người khởi xướng tất nhiên có thể hành xử không mang tính xác định. (tất nhiên là có thể có bộ điều hợp). Trình khởi tạo có thể thực thi trong các nút DON riêng lẻ và do đó không cần phải dựa vào bộ chuyển đổi. (Xem ví dụ 1 bên dưới.) Trình khởi tạo là một tính năng quan trọng để phân biệt các tệp thực thi với smart contracts. Bởi vì một tập tin thực thi có thể chạy để phản hồi lại một bộ khởi tạo nên nó có thể hoạt động một cách hiệu quả. một cách tự chủ, tất nhiên bằng cách mở rộng, một hợp đồng kết hợp có thể kết hợp với tệp thực thi. Một dạng người khởi xướng hiện nay là Chainlink Người giữ, cung cấp giao dịchdịch vụ tự động hóa, kích hoạt smart contract thực thi—chẳng hạn như thanh lý các khoản vay không được thế chấp và thực hiện các giao dịch theo lệnh giới hạn—dựa trên báo cáo oracle. Thuận tiện, những người khởi xướng trong DON cũng có thể được xem như một cách chỉ định các thỏa thuận dịch vụ áp dụng cho một tệp thực thi, vì chúng xác định các trường hợp theo mà DON phải gọi nó. Ví dụ sau minh họa cách hoạt động của các trình khởi tạo trong một tệp thực thi: Ví dụ 1 (Nguồn cấp giá kích hoạt sai lệch). smart contract SC có thể yêu cầu mới dữ liệu nguồn cấp giá (xem Phần 3.6.3) bất cứ khi nào có thay đổi đáng kể, ví dụ: 1%, trong tỷ giá hối đoái giữa một cặp tài sản, ví dụ: ETH-USD. Giá nhạy cảm với biến động nguồn cấp dữ liệu được hỗ trợ trong Chainlink ngày hôm nay nhưng sẽ mang tính hướng dẫn để xem chúng có thể hoạt động như thế nào được thực hiện trên DON bằng nguồn cấp dữ liệu thực thi. Nguồn cấp dữ liệu thực thi duy trì giá ETH-USD gần đây nhất r trên L, trong dạng một chuỗi gồm ⟨NewPrice : j, r⟩entries, trong đó j là chỉ số tăng theo mỗi lần cập nhật giá. Trình khởi tạo init1 khiến mỗi nút Oi theo dõi giá ETH-USD hiện tại cho sai lệch ít nhất 1% so với giá lưu trữ gần đây nhất r với chỉ số j. Khi phát hiện ra sự sai lệch như vậy, Oi viết quan điểm hiện tại của mình về giá mới vào L bằng cách sử dụng mục nhập có dạng ⟨PriceView : i, j + 1, ri⟩. Trình khởi tạo thứ hai init2 kích hoạt khi có ít nhất k mục nhập PriceView như vậy với giá mới các giá trị cho chỉ mục j + 1 được tạo bởi các nút riêng biệt đã tích lũy trên L. Sau đó, init2 gọi một điểm vào logic2 để tính trung bình ρ của k giá trị xem giá hợp lệ, mới đầu tiên và ghi một giá trị mới ⟨NewPrice : j + 1, ρ⟩to L . (Về mặt hoạt động, các nút có thể thay phiên nhau làm người viết được chỉ định.) Trình khởi tạo thứ ba init3 theo dõi các mục NewPrice trên L. Bất cứ khi nào có báo cáo mới ⟨NewPrice : j, r⟩xuất hiện ở đó, nó gọi một điểm vào logic3 đẩy (j, r) tới SC sử dụng một bộ chuyển đổi. Như chúng tôi đã lưu ý, một tệp thực thi có khả năng tương tự như smart contract. Tuy nhiên, ngoài hiệu suất cao hơn, nó khác với hợp đồng chuỗi chính điển hình theo hai cách thiết yếu: 1. Tính bảo mật: Một tệp thực thi có thể thực hiện tính toán bí mật, tức là một chương trình bí mật có thể xử lý các đầu vào văn bản rõ ràng hoặc một chương trình đã xuất bản có thể xử lý dữ liệu đầu vào bí mật hoặc kết hợp cả hai. Trong một mô hình đơn giản, dữ liệu bí mật có thể được truy cập bởi các nút DON, nút này che giấu các kết quả trung gian và chỉ tiết lộ các giá trị được xử lý và khử trùng vào MAINCHAIN. Cũng có thể che giấu dữ liệu nhạy cảm khỏi chính DON: DON nhằm hỗ trợ các phương pháp tiếp cận như dưới dạng tính toán nhiều bên, ví dụ: [42, 157] và môi trường thực thi đáng tin cậy (TEE) [84, 133, 152, 229] cho mục đích này.6 6Bằng tiện ích mở rộng, cũng có thể giữ bí mật các tệp thực thi đối với các nút DON, mặc dù ngày nay điều này chỉ thực tế đối với các tệp thực thi không tầm thường sử dụng TEE.2. Vai trò hỗ trợ: Một tệp thực thi có nghĩa là hỗ trợ smart contract trên main chuỗi, thay vì thay thế chúng. Một tệp thực thi có một số hạn chế mà một smart contract không: (a) Mô hình tin cậy: Một tệp thực thi hoạt động trong mô hình tin cậy được xác định bởi DON: Việc thực thi chính xác dựa vào hành vi trung thực của O. (A main Tuy nhiên, chuỗi có thể cung cấp một số biện pháp bảo vệ chống lại sự cố DON, như được thảo luận trong Phần 7.3.) (b) Quyền truy cập tài sản: DON có thể kiểm soát tài khoản trên blockchain—và do đó kiểm soát tài sản trên đó thông qua một bộ chuyển đổi. Nhưng DON không thể có thẩm quyền đại diện cho các tài sản được tạo trên chuỗi chính, ví dụ: Ether hoặc ERC20 tokens, vì chuỗi gốc của họ duy trì hồ sơ có thẩm quyền về quyền sở hữu của họ. (c) Vòng đời: DON có thể được thiết lập có chủ ý với thời gian tồn tại giới hạn, vì được xác định bởi các thỏa thuận cấp độ dịch vụ trên chuỗi giữa DONs và chủ sở hữu dựa vào các hợp đồng. Ngược lại, chuỗi khối có nghĩa là hoạt động như hệ thống lưu trữ cố định. Xem Phụ lục B.2 để biết thêm chi tiết về tính toán DON. 3.3 Lưu trữ Là một hệ thống dựa trên ủy ban, DON có thể lưu trữ lượng dữ liệu vừa phải một cách liên tục trên L với chi phí thấp hơn nhiều so với blockchain không được phép. Ngoài ra, thông qua bộ điều hợp, DONs có thể tham chiếu các hệ thống phi tập trung bên ngoài để lưu trữ dữ liệu, ví dụ: Filecoin [85], và do đó có thể kết nối các hệ thống đó với smart contracts. Tùy chọn này đặc biệt hấp dẫn đối với dữ liệu số lượng lớn như một phương tiện giải quyết vấn đề phổ biến về “sự phình to” trong blockchain hệ thống. DONs do đó có thể lưu trữ dữ liệu cục bộ hoặc bên ngoài để sử dụng trong các dịch vụ được hỗ trợ cụ thể của chúng. DON cũng có thể sử dụng dữ liệu đó theo cách bí mật, tính toán trên dữ liệu: (1) được chia sẻ bí mật trên DON nút hoặc được mã hóa theo khóa được quản lý bởi các nút DON theo cách phù hợp để tính toán an toàn cho nhiều bên hoặc mã hóa đồng cấu một phần hoặc toàn bộ; hoặc (2) được bảo vệ bằng cách thực thi đáng tin cậy môi trường. Chúng tôi hy vọng rằng DONs sẽ áp dụng mô hình quản lý bộ nhớ đơn giản phổ biến cho hệ thống hợp đồng thông minh: Một tệp thực thi chỉ có thể ghi vào bộ nhớ của chính nó. Thực thi tuy nhiên, có thể đọc từ bộ nhớ của các tệp thực thi khác. Xem Phụ lục B.3 để biết thêm chi tiết về bộ lưu trữ DON. 3,4 Khung thực thi giao dịch (TEF) DON nhằm mục đích hỗ trợ các hợp đồng trên chuỗi chính MAINCHAIN (hoặc trên nhiều chuỗi chính). Khung thực thi giao dịch (TEF), được thảo luận chi tiếttrong Phần 6, là một cách tiếp cận có mục đích chung để thực hiện hợp đồng một cách hiệu quả SC trên MAINCHAIN và DON. TEF nhằm hỗ trợ FSS và lớp 2 công nghệ—đồng thời, nếu muốn. Thật vậy, nó có khả năng đóng vai trò là phương tiện chính để sử dụng FSS (và vì lý do đó, chúng tôi không thảo luận thêm về FSS trong phần này). Tóm lại, trong TEF, hợp đồng mục tiêu ban đầu được SC thiết kế hoặc phát triển cho MAINCHAIN được tái cấu trúc thành một hợp đồng lai. Việc tái cấu trúc này tạo ra hai khả năng tương tác các phần của hợp đồng kết hợp: hợp đồng MAINCHAIN SCa mà chúng tôi đề cập đến để hiểu rõ hơn trong bối cảnh TEF dưới dạng hợp đồng cố định và người thực thi có thể thực thi trên DON. các hợp đồng SCa giám sát tài sản của người dùng, thực hiện chuyển đổi trạng thái có thẩm quyền, đồng thời cung cấp các thanh chắn bảo vệ (xem Phần 7.3) chống lại các hư hỏng trong DON. Các nhà thực thi thực thi sắp xếp các giao dịch và cung cấp dữ liệu oracle liên quan cho chúng. Nó có thể bó giao dịch cho SCa theo bất kỳ cách nào—ví dụ: sử dụng dựa trên bằng chứng xác thực hoặc lạc quan rollups, thực thi bí mật bởi DON, v.v. Chúng tôi mong muốn phát triển các công cụ giúp nhà phát triển dễ dàng phân chia hợp đồng SC được viết bằng ngôn ngữ cấp cao thành các phần logic MAINCHAIN và DON, SCa và thực thi tương ứng, soạn thảo một cách an toàn và hiệu quả. Sử dụng TEF để tích hợp các sơ đồ giao dịch hiệu suất cao với các chương trình hiệu suất cao oracles là không thể thiếu đối với phương pháp mở rộng quy mô oracle của chúng tôi. 3,5 Dịch vụ Mempool Một tính năng quan trọng của lớp ứng dụng mà chúng tôi dự định triển khai trên DON để hỗ trợ của FSS và TEF là Dịch vụ Mempool (MS). MS có thể được xem như một bộ chuyển đổi, nhưng một với sự hỗ trợ hạng nhất. MS cung cấp hỗ trợ cho việc xử lý giao dịch tương thích với kế thừa. Trong việc sử dụng này, MS nhập vào từ bộ nhớ của chuỗi chính những giao dịch dành cho hợp đồng mục tiêu SC trên MAINCHAIN. Sau đó MS chuyển các giao dịch này tới một tệp thực thi trên DON, nơi chúng được xử lý theo cách mong muốn. Dữ liệu MS có thể được sử dụng bởi DON để soạn các giao dịch mà sau đó có thể được chuyển trực tiếp tới SC từ DON hoặc tới một hợp đồng khác gọi SC. Ví dụ: DON có thể chuyển tiếp giao dịch được thu thập thông qua MS hoặc nó có thể sử dụng dữ liệu MS để đặt giá gas cho các giao dịch mà nó gửi tới CHUỖI MAIN. Vì nó giám sát mempool nên MS có thể thu được các giao dịch từ người dùng tương tác trực tiếp với SC. Do đó, người dùng có thể tiếp tục tạo giao dịch của mình bằng cách sử dụng phần mềm cũ, tức là các ứng dụng không biết đến sự tồn tại của MS và được cấu hình MS hợp đồng. (Trong trường hợp này, SC phải được thay đổi để bỏ qua các giao dịch ban đầu và chỉ chấp nhận những dữ liệu được MS xử lý để tránh xử lý kép.) Để sử dụng với hợp đồng mục tiêu SC, MS có thể được sử dụng với FSS và/hoặc TEF.3.6 Bước đệm: Khả năng Chainlink hiện có 3.6.1 Báo cáo ngoài chuỗi (OCR) Báo cáo chuỗi Off (OCR) [60] là một cơ chế trong Chainlink để tổng hợp và truyền báo cáo oracle tới SC hợp đồng dựa trên. Được triển khai gần đây với giá Chainlink mạng nguồn cấp dữ liệu, nó thể hiện bước đầu tiên trên đường dẫn đến DON đầy đủ. Về cốt lõi, OCR là giao thức BFT được thiết kế để hoạt động ở chế độ đồng bộ một phần mạng. Nó đảm bảo tính sống động và đúng đắn khi có mặt f < n/3 một cách tùy ý các nút bị lỗi, đảm bảo các đặc tính của chương trình phát sóng đáng tin cậy của Byzantine, nhưng không phải vậy một giao thức đồng thuận BFT hoàn chỉnh. Các nút không duy trì nhật ký tin nhắn nhất quán theo nghĩa đại diện cho một sổ cái giống hệt nhau về mọi quan điểm của họ, và người đứng đầu giao thức có thể lập lờ mà không vi phạm an toàn. OCR hiện được thiết kế cho một loại thông báo cụ thể: tổng hợp trung bình của (ít nhất 2f +1) giá trị được báo cáo bởi các nút tham gia. Nó cung cấp một sự đảm bảo quan trọng về các báo cáo mà nó xuất ra cho SC, được gọi là các báo cáo được chứng thực: Giá trị trung bình trong một báo cáo được chứng thực báo cáo bằng hoặc nằm giữa các giá trị được báo cáo bởi hai nút trung thực. Tài sản này là điều kiện an toàn chính cho OCR. Người lãnh đạo có thể có một số ảnh hưởng ở mức trung bình giá trị trong một báo cáo được chứng thực, nhưng chỉ tuân theo điều kiện về tính chính xác này. OCR có thể được mở rộng cho các loại thông báo tổng hợp các giá trị theo nhiều cách khác nhau. Mặc dù mục tiêu về tính chính xác và hoạt động của mạng Chainlink ngày nay không yêu cầu OCR là một giao thức đồng thuận toàn diện, chúng yêu cầu OCR cung cấp một số dạng chức năng bổ sung không có trong các giao thức BFT thông thường, đáng chú ý nhất là: 1. Phát báo cáo ngoài chuỗi tất cả hoặc không có gì: OCR đảm bảo rằng báo cáo được chứng thực được cung cấp nhanh chóng cho tất cả các nút trung thực hoặc không nút nào trong số chúng. Đây là một sự công bằng thuộc tính giúp đảm bảo rằng các nút trung thực có cơ hội tham gia trong việc truyền báo cáo được chứng thực. 2. Đường truyền đáng tin cậy: OCR đảm bảo, ngay cả khi có lỗi hoặc độc hại các nút, rằng tất cả các báo cáo và tin nhắn OCR được truyền đến SC trong một khoảng thời gian nhất định, khoảng thời gian được xác định trước. Đây là một tài sản sống động. 3. Giảm thiểu độ tin cậy dựa trên hợp đồng: SC lọc ra các báo cáo do OCR tạo có khả năng sai sót, ví dụ: nếu giá trị được báo cáo của chúng sai lệch đáng kể so với các báo cáo khác những cái đã nhận được gần đây. Đây là một hình thức thực thi tính đúng đắn của giao thức bổ sung. Cả ba thuộc tính này sẽ đóng vai trò tự nhiên trong DONs. Chương trình phát sóng tất cả hoặc không có gì trên chuỗi (DON) là một khối xây dựng quan trọng để đảm bảo kinh tế tiền điện tử xung quanh việc truyền tải đáng tin cậy, do đó đây là một thuộc tính thiết yếu của bộ điều hợp. Tin tưởng giảm thiểu trong SC là một loại đường ray bảo vệ, như được thảo luận trong Phần 7.3. OCR cũng cung cấp cơ sở cho việc triển khai hoạt động và cải tiến các giao thức BFT trong mạng oracle của Chainlink và do đó, như đã lưu ý ở trên, một đường dẫn đến toàn bộ chức năng của DONs.3.6.2 DECO và Town Crier DECO [234] và Town Crier [233] là một cặp công nghệ liên quan hiện đang được sử dụng được phát triển trong mạng Chainlink. Hầu hết các máy chủ web ngày nay đều cho phép người dùng kết nối qua kênh bảo mật bằng giao thức được gọi là Bảo mật lớp vận chuyển (TLS) [94]. (HTTPS biểu thị một biến thể của HTTP được bật bằng TLS, tức là các URL có tiền tố “https” biểu thị việc sử dụng TLS để bảo mật.) Tuy nhiên, hầu hết các máy chủ hỗ trợ TLS đều có một hạn chế đáng chú ý: Chúng không ký điện tử dữ liệu. Do đó, người dùng hoặc Prover không thể hiển thị dữ liệu cô ấy nhận được từ máy chủ cho bên thứ ba hoặc Người xác minh, chẳng hạn như oracle hoặc smart contract, theo cách đảm bảo tính xác thực của dữ liệu. Ngay cả khi máy chủ ký dữ liệu bằng chữ ký điện tử thì vẫn có vấn đề về tính bảo mật. Nhà cung cấp có thể muốn biên tập lại hoặc sửa đổi dữ liệu nhạy cảm trước khi trình bày nó với Người xác minh. Tuy nhiên, chữ ký số được thiết kế đặc biệt để vô hiệu hóa dữ liệu đã sửa đổi. Do đó, chúng ngăn cản Prover thực hiện các thay đổi bảo đảm tính bảo mật tới dữ liệu. (Xem Phần 7.1 để thảo luận thêm.) DECO và Town Crier được thiết kế để cho phép Prover lấy dữ liệu từ trang web máy chủ và trình nó cho Người xác minh theo cách đảm bảo tính toàn vẹn và bảo mật. Hai hệ thống duy trì tính toàn vẹn theo nghĩa là chúng đảm bảo rằng dữ liệu được trình bày bởi Prover cho Verifier có nguồn gốc xác thực từ máy chủ mục tiêu. Họ hỗ trợ tính bảo mật theo nghĩa cho phép Prover biên tập lại hoặc sửa đổi dữ liệu (trong khi vẫn bảo toàn tính toàn vẹn). Đặc điểm chính của cả hai hệ thống là chúng không yêu cầu bất kỳ sửa đổi nào đối với máy chủ web mục tiêu. Họ có thể hoạt động với bất kỳ máy chủ hỗ trợ TLS hiện có nào. Trên thực tế, chúng minh bạch đối với máy chủ: Từ quan điểm của máy chủ, Prover là thiết lập một kết nối thông thường. Hai hệ thống này có các mục tiêu tương tự nhau, nhưng khác nhau về mô hình tin cậy và cách triển khai như chúng tôi sẽ giải thích ngắn gọn. DECO sử dụng cơ bản các giao thức mã hóa để đạt được tính toàn vẹn của nó và các thuộc tính bảo mật. Trong khi thiết lập phiên với máy chủ mục tiêu bằng DECO, Prover đồng thời tham gia vào một giao thức tương tác với Người xác minh. Giao thức này cho phép Người chứng minh chứng minh với Người xác minh rằng nó đã nhận được một phần dữ liệu D nhất định từ máy chủ trong phiên hiện tại của nó. Người Prover có thể hoặc đưa ra cho Người xác minh bằng chứng không có kiến thức về một số thuộc tính của D và do đó không tiết lộ trực tiếp D. Trong cách sử dụng DECO thông thường, người dùng hoặc một nút có thể xuất dữ liệu D từ một máy chủ riêng tư. phiên với máy chủ web tới tất cả các nút trong DON. Kết quả là toàn bộ DON có thể chứng thực tính xác thực của D (hoặc một sự thật bắt nguồn từ D thông qua bằng chứng không có kiến thức). Ngoài các ứng dụng ví dụ được đưa ra sau trong bài viết, khả năng này có thể được được sử dụng để khuếch đại quyền truy cập có tính toàn vẹn cao vào nguồn dữ liệu bằng DON. Ngay cả khi chỉ có một nút có quyền truy cập trực tiếp vào nguồn dữ liệu—ví dụ: do một thỏa thuận độc quyền với nhà cung cấp dữ liệu—toàn bộ DON vẫn có thể chứng thực tính đúng đắn củacác báo cáo được phát ra bởi nút đó. Town Crier dựa vào việc sử dụng môi trường thực thi đáng tin cậy (TEE) như Intel SGX. Tóm lại, TEE hoạt động như một loại hộp đen thực thi các ứng dụng trong một môi trường cách chống giả mạo và bí mật. Về nguyên tắc, ngay cả chủ sở hữu máy chủ lưu trữ trên đó TEE đang chạy không thể (không thể phát hiện) làm thay đổi ứng dụng được bảo vệ bởi TEE cũng như không xem trạng thái của ứng dụng, có thể bao gồm dữ liệu bí mật. Town Crier có thể đạt được tất cả chức năng của DECO và hơn thế nữa. DECO hạn chế Nhà cung cấp tương tác với một Người xác minh duy nhất. Ngược lại, Town Crier cho phép Nhà cung cấp tạo ra bằng chứng có thể xác minh công khai về dữ liệu D được tìm nạp từ máy chủ mục tiêu, tức là bằng chứng cho thấy bất kỳ ai, kể cả smart contract, đều có thể xác minh trực tiếp. Town Crier có thể cũng nhập và sử dụng các bí mật một cách an toàn (ví dụ: thông tin xác thực của người dùng). Hạn chế chính của Town Crier là sự phụ thuộc vào TEE. TEE sản xuất có gần đây đã được chứng minh là có một số lỗ hổng nghiêm trọng, mặc dù công nghệ này vẫn còn ở giai đoạn sơ khai và chắc chắn sẽ trưởng thành. Xem Phụ lục B.2.1 và B.2.2 để biết thảo luận thêm về TEE. Để biết một số ứng dụng mẫu của DECO và Town Crier, hãy xem Phần 4.3, 4.5 và 9.4.3 và Phụ lục C.1. 3.6.3 Dịch vụ trên chuỗi hiện có Chainlink Chainlink oracle mạng cung cấp một số dịch vụ chính trên nhiều mạng blockchains và các hệ thống phi tập trung khác hiện nay. Sự tiến hóa hơn nữa như mô tả trong sách trắng này sẽ cung cấp cho các dịch vụ hiện có này những khả năng và đạt được. Ba ví dụ là: Nguồn cấp dữ liệu: Ngày nay, phần lớn Chainlink người dùng dựa vào smart contracts thực hiện việc sử dụng nguồn cấp dữ liệu. Đây là những báo cáo về giá trị hiện tại của các phần dữ liệu quan trọng theo đến các nguồn có thẩm quyền ngoài chuỗi. Ví dụ: nguồn cấp dữ liệu giá là nguồn cấp dữ liệu báo cáo giá về tài sản—tiền điện tử, hàng hóa, ngoại hối, chỉ số, cổ phiếu, v.v.—theo dịch vụ trao đổi hoặc tổng hợp dữ liệu. Những nguồn cấp dữ liệu như vậy ngày nay đã giúp đảm bảo hàng tỷ giá trị đô la trên chuỗi thông qua việc sử dụng chúng trong các hệ thống DeFi như Aave [147] và Tổng hợp [208]. Các ví dụ khác về nguồn cấp dữ liệu Chainlink bao gồm dữ liệu thời tiết cho bảo hiểm cây trồng tham số [75] và dữ liệu bầu cử [93], cùng một số dữ liệu khác. Việc triển khai DON và các công nghệ khác được mô tả trong bài viết này sẽ tăng cường việc cung cấp nguồn cấp dữ liệu trong mạng Chainlink theo nhiều cách, bao gồm: • Mở rộng quy mô: OCR và sau đó là DON nhằm mục đích cho phép các dịch vụ Chainlink mở rộng quy mô đáng kể trên nhiều blockchain mà họ hỗ trợ. Ví dụ, chúng tôi mong đợi DON sẽ giúp tăng số lượng nguồn cấp dữ liệu do các nút cung cấp bằng cách sử dụng Chainlink từ 100 đến 1000 và hơn thế nữa. Việc chia tỷ lệ như vậy sẽ giúp Chainlink hệ sinh thái đạt được mục tiêu cung cấp dữ liệu liên quan đến smart contract một cách toàn diện, đồng thời vừa đáp ứng vừa dự đoán các nhu cầu hiện tại và tương lai.• Bảo mật nâng cao: Bằng cách lưu trữ các báo cáo trung gian, DONs sẽ giữ lại các bản ghi về hành vi của nút để theo dõi và đo lường độ chính xác cao về hiệu suất và độ chính xác của chúng, tạo nền tảng thực nghiệm vững chắc cho các hệ thống danh tiếng cho các nút Chainlink. FSS và TEF sẽ cho phép kết hợp nguồn cấp dữ liệu giá với dữ liệu giao dịch theo những cách linh hoạt để ngăn chặn các cuộc tấn công như chạy trước. (Rõ ràng) staking sẽ tăng cường bảo vệ an ninh kinh tế tiền điện tử hiện có của nguồn cấp dữ liệu. • Tính linh hoạt của nguồn cấp dữ liệu: Vì blockchain hệ thống bất khả tri (thực ra, rộng hơn là hệ thống bất khả tri về người tiêu dùng), DONs có thể tạo điều kiện thuận lợi cho việc cung cấp nguồn cấp dữ liệu cho nhiều nơi của các hệ thống dựa vào. Một DON có thể đẩy đồng thời một nguồn cấp dữ liệu nhất định vào một tập hợp của blockchain khác nhau, loại bỏ nhu cầu về mạng oracle trên mỗi chuỗi và cho phép triển khai nhanh chóng các nguồn cấp dữ liệu hiện có trên blockchain mới và các nguồn cấp dữ liệu bổ sung nguồn cấp dữ liệu trên blockchain hiện được phục vụ. • Tính bảo mật: Khả năng thực hiện tính toán tổng quát trong DON cho phép tính toán trên dữ liệu nhạy cảm diễn ra ngoài chuỗi, tránh xảy ra trên chuỗi tiếp xúc. Ngoài ra, bằng cách sử dụng DECO hoặc Town Crier, có thể đạt được tính bảo mật thậm chí còn mạnh mẽ hơn, cho phép tạo báo cáo dựa trên dữ liệu không chính xác tiếp xúc ngay cả với các nút DON. Xem Phần 4.3 và Phần 4.5 để biết ví dụ. Hàm ngẫu nhiên có thể xác minh (VRF): Một số loại DApp yêu cầu nguồn ngẫu nhiên chính xác có thể xác minh được để cho phép xác minh hoạt động công bằng của chính chúng. Mã thông báo không thể thay thế (NFTs) là một ví dụ. Độ hiếm của các tính năng NFT trong Aavegotchi [23] và Axie Infinity [35] được xác định bởi Chainlink VRF, cũng như sự phân bố trong số NFT bằng cách rút thăm dựa trên vé trong Thẻ Ether [102]; sự đa dạng của DApp chơi game có kết quả ngẫu nhiên; và các công cụ tài chính độc đáo, ví dụ: trò chơi tiết kiệm không thua lỗ như PoolTogether [89], phân bổ vốn cho người chiến thắng ngẫu nhiên. Các ứng dụng blockchain và không phảiblockchain khác cũng yêu cầu bảo mật nguồn ngẫu nhiên, bao gồm việc lựa chọn các ủy ban hệ thống phi tập trung và thực hiện xổ số. Mặc dù các khối hash có thể đóng vai trò là nguồn ngẫu nhiên không thể đoán trước nhưng chúng dễ bị thao túng bởi những người khai thác đối nghịch (và ở một mức độ nào đó bởi người dùng gửi giao dịch). Chainlink VRF [78] cung cấp giải pháp thay thế an toàn hơn đáng kể. Một oracle có cặp khóa riêng/chung được liên kết (sk, pk) có khóa riêng được duy trì ngoài chuỗi và khóa chung pk được công bố. Để xuất ra một giá trị ngẫu nhiên, nó áp dụng sk cho hạt giống x không thể đoán trước được cung cấp bởi một hợp đồng dựa trên (ví dụ: khối hash và các tham số dành riêng cho DApp) bằng cách sử dụng hàm F, mang lại y = Fsk(x) cùng với a bằng chứng về tính đúng đắn. (Xem [180] để biết VRF có sẵn trên Chainlink.) Điều gì tạo nên một VRF có thể kiểm chứng được là thực tế là với kiến thức về pk, có thể kiểm tra tính đúng đắn của chứng minh và do đó của y. Do đó, giá trị y không thể đoán trước được đối với một đối thủ không thể dự đoán x hoặc tìm hiểu sk và dịch vụ không thể thao túng.Chainlink VRF có thể được xem chỉ là một trong nhóm ứng dụng liên quan đến việc giám sát các khóa riêng tư trên chuỗi. Tổng quát hơn, DON có thể cung cấp tính bảo mật, lưu trữ phi tập trung các khóa riêng lẻ cho ứng dụng và/hoặc người dùng và kết hợp khả năng này với tính toán tổng quát. Kết quả là một loạt các ứng dụng, mà chúng tôi đưa ra một số ví dụ trong bài viết này, bao gồm quản lý khóa cho Bằng chứng về Dự trữ (xem Phần 4.1) và thông tin xác thực phi tập trung của người dùng (và các thông tin kỹ thuật số khác tài sản) (xem Phần 4.3). Người giữ: Chainlink Keepers [87] cho phép các nhà phát triển viết mã cho phi tập trung thực thi các công việc ngoài chuỗi, thường là để kích hoạt thực thi các smart contract dựa vào. Trước khi Keepers ra đời, các nhà phát triển thường vận hành những ứng dụng ngoài chuỗi như vậy logic, tạo ra các điểm thất bại tập trung (cũng như nỗ lực phát triển trùng lặp đáng kể). Thay vào đó, Keepers cung cấp một khuôn khổ dễ sử dụng cho gia công phần mềm phi tập trung cho các hoạt động này, cho phép chu kỳ phát triển ngắn hơn và đảm bảo mạnh mẽ về tính sống động và các đặc tính bảo mật khác. Người giữ có thể hỗ trợ bất kỳ của nhiều mục tiêu kích hoạt khác nhau, bao gồm việc thanh lý các khoản vay hoặc thực hiện các giao dịch tài chính, bắt đầu các đợt airdrop hoặc thanh toán phụ thuộc vào thời gian trong các hệ thống thu hoạch năng suất, v.v. Trong khuôn khổ DON, người khởi xướng có thể được xem là sự khái quát hóa của Người quản lý theo một số nghĩa. Người khởi xướng có thể sử dụng các bộ điều hợp và do đó có thể tận dụng thư viện giao diện được mô-đun hóa cho các hệ thống trên chuỗi và ngoài chuỗi, cho phép nhanh chóng phát triển các chức năng an toàn, phức tạp. Người khởi xướng bắt đầu tính toán trong các tệp thực thi, bản thân chúng cung cấp tính linh hoạt đầy đủ của DON, cho phép phạm vi rộng một loạt các dịch vụ phi tập trung mà chúng tôi trình bày trong bài viết này dành cho các ứng dụng trên chuỗi và ngoài chuỗi. 3.6.4 Danh tiếng nút / Lịch sử hiệu suất Hệ sinh thái Chainlink hiện tại ghi lại lịch sử hiệu suất của các nút đóng góp trên chuỗi. Tính năng này đã tạo ra một tập hợp các tài nguyên định hướng danh tiếng để thu thập, lọc và trực quan hóa dữ liệu hiệu suất trên từng cá nhân. nhà khai thác nút và nguồn cấp dữ liệu. Người dùng có thể tham khảo các tài nguyên này để cung cấp thông tin quyết định trong việc lựa chọn các nút và giám sát hoạt động của các mạng hiện có. Khả năng tương tự sẽ giúp người dùng chọn DONs. Ví dụ: các thị trường không được phép ngày nay như market.link cho phép nút nhà khai thác liệt kê các dịch vụ oracle của họ và chứng thực danh tính ngoài chuỗi của họ thông qua các dịch vụ như Keybase [4], liên kết hồ sơ của một nút trong Chainlink với nó tên miền và tài khoản truyền thông xã hội hiện có của chủ sở hữu. Ngoài ra, hiệu suất các công cụ phân tích, chẳng hạn như các công cụ có sẵn tại market.link và uy tín.link, cho phép người dùng xem số liệu thống kê về hiệu suất lịch sử của các nút riêng lẻ, bao gồm cả nút của họ độ trễ phản hồi trung bình, độ lệch của các giá trị trong báo cáo của họ so với giá trị đồng thuận được chuyển tiếp trên chuỗi, doanh thu được tạo ra, công việc được hoàn thành, v.v. Những công cụ phân tích này cũng cho phép người dùng theo dõi việc sử dụng các mạng oracle khác nhau của những người dùng khác, một dạngsự chứng thực ngầm định của các nút bảo vệ các mạng như vậy. Kết quả là một “mạng lưới” phẳng tin cậy”, trong đó, bằng cách sử dụng các nút cụ thể, các ứng dụng phi tập trung có giá trị cao sẽ tạo ra một tín hiệu về sự tin tưởng của họ đối với các nút đó mà người dùng khác có thể quan sát và tính đến quyết định lựa chọn nút riêng. Với DONs (và ban đầu là OCR) dẫn đến sự thay đổi trong xử lý giao dịch và hoạt động hợp đồng nói chung hơn là ngoài chuỗi. Một mô hình phi tập trung cho nút ghi vẫn có thể thực hiện được hiệu suất trong chính DON. Quả thực, hiệu suất cao và dung lượng dữ liệu DONs giúp có thể xây dựng các bản ghi ở dạng chi tiết cách và cũng để thực hiện tính toán phi tập trung trên các hồ sơ này, mang lại những bản tóm tắt đáng tin cậy có thể được sử dụng bởi các dịch vụ danh tiếng và được kiểm tra trên CHUỖI MAIN. Mặc dù về nguyên tắc DON có thể trình bày sai hành vi của các nút cấu thành nếu một phần lớn các nút bị hỏng, chúng tôi lưu ý rằng tập thể hiệu suất của chính DON trong việc phân phối dữ liệu trên chuỗi được hiển thị trên MAINCHAIN và do đó không thể bị trình bày sai. Ngoài ra, chúng tôi dự định khám phá các cơ chế khuyến khích báo cáo nội bộ chính xác về hành vi của nút trong DON. Ví dụ: bằng cách báo cáo tập hợp con các nút có hiệu suất cao trả về dữ liệu đóng góp nhanh nhất đối với một báo cáo được chuyển tiếp trên chuỗi, DON tạo động lực cho các nút tranh chấp không chính xác báo cáo: Việc bao gồm các nút trong tập hợp con này không chính xác có nghĩa là loại trừ các nút không chính xác điều đó lẽ ra phải được đưa vào và do đó trừng phạt họ một cách vô hiệu. Việc DON báo cáo lỗi lặp đi lặp lại cũng sẽ tạo ra động cơ khuyến khích các nút trung thực rời khỏi DON. Biên soạn phi tập trung lịch sử hiệu suất chính xác và hậu quả khả năng của người dùng trong việc xác định các nút có hiệu suất cao và để người vận hành nút xây dựng danh tiếng là đặc điểm phân biệt quan trọng của hệ sinh thái Chainlink. Chúng tôi trình bày trong Phần 9 cách chúng ta có thể suy luận về chúng như một phần quan trọng của một hệ thống chặt chẽ và cái nhìn mở rộng về an ninh kinh tế được cung cấp bởi DONs.
Services décentralisés rendus possibles par la décentralisation
Réseaux Oracle Pour illustrer la polyvalence des DON et comment ils permettent une multitude de nouveaux services, nous présentons cinq exemples d'applications basées sur DON dans cette section et décrivons les contrats hybrides qui les réalisent : (1) Proof of Reserves, une forme de service cross-chain ; (2) Interfaçage avec les systèmes d'entreprise/anciens, c'est-à-dire création d'un système basé sur un middleware couche d'abstraction qui facilite le développement d'applications blockchain avec un minimum blockchain-code ou expertise spécifique ; (3) Identité décentralisée, outils permettant aux utilisateurs de obtenir et gérer leurs propres documents d'identité et informations d'identification ; (4) Chaînes prioritaires, un service qui garantit l'inclusion en temps opportun des transactions d'infrastructure critique (par exemple, oracle rapports) sur un blockchain ; et (5) DeFi préservant la confidentialité, c'est-à-dire les informations financières. smart contracts qui dissimulent les données sensibles des parties participantes. Ici, nous
utilisez SC pour désigner la partie MAINCHAIN d'un contrat hybride et décrivez le DON composant séparément ou en termes d'exécutable. 4.1 Preuve de réserves Pour de nombreuses applications, il est utile de relayer l’état entre ou parmi les blockchain. Un L’application populaire de ces services est le packaging de crypto-monnaie. Pièces emballées telles comme WBTC [15] deviennent un atout populaire dans la finance décentralisée (DeFi). Ils implique de déposer l'actif de support « enveloppé » sur sa source blockchain MAINCHAIN(1) et créer un token correspondant sur une cible différente blockchain MAINCHAIN(2). Par exemple, WBTC est un ERC20 token sur le Ethereum blockchain qui correspond à BTC le Bitcoin blockchain. Étant donné que les contrats sur MAINCHAIN(2) n'ont pas de visibilité directe sur MAINCHAIN(1), ils doivent s'appuyer explicitement ou implicitement sur un oracle pour déclarer les dépôts des objets emballés actif dans un smart contract, produisant ce que l'on appelle parfois une preuve de réserves. Dans WBTC [15], par exemple, le dépositaire BitGo détient du BTC et émet du WBTC, avec le Réseau Chainlink fournissant des preuves de réserve [76]. Un DON peut lui-même fournir une preuve de réserves. Cependant, avec un DON, il est possible pour aller plus loin. Un DON peut gérer les secrets et, grâce à l'utilisation d'adaptateurs appropriés, peut effectuer des transactions sur n'importe quel blockchain souhaité. Par conséquent, il est possible que le DON agisse comme l'un des nombreux dépositaires - ou même comme un dépositaire unique et décentralisé - pour un actif enveloppé. Les DONs peuvent ainsi servir de plate-forme pour améliorer la sécurité des les services existants qui utilisent des preuves de réserves. Par exemple, supposons que MAINCHAIN(1) soit Bitcoin et que MAINCHAIN(2) soit Ethereum. Sur MAINCHAIN(2), un contrat SC émet des token représentant des BTC enveloppés. Le DON contrôle une adresse BTC addr(1) DON. Pour envelopper BTC, un utilisateur U envoie X BTC depuis adresse(1) U à l'adresse (1) DON avec une adresse MAINCHAIN(2) addr(2) U. Les moniteurs DON adresse(1) DON via un adaptateur vers MAINCHAIN(1). En observant le dépôt de U, avec une confirmation de probabilité suffisamment élevée, il envoie un message à SC via un adaptateur pour CHAÎNE PRINCIPALE (2). Ce message demande à SC de créer X tokens pour addr(2) U. Pour que U libère X tokens, l’inverse se produit. Cependant, sur MAINCHAIN(1), adresse(1) DON envoie X BTC à l'adresse (1) U (ou à une autre adresse, si l'utilisateur le demande). Ces protocoles peuvent bien entendu être adaptés pour fonctionner avec les échanges, plutôt que directement avec les utilisateurs. 4.2 Interfaçage avec les systèmes d'entreprise/anciens Les DON peuvent servir de ponts entre et parmi les blockchain, comme dans l'exemple de Preuve des réserves, mais un autre objectif est qu'elles agissent comme des ponts bidirectionnels entre blockchains et systèmes existants [176] ou systèmes de type blockchain tels que la banque centrale monnaies numériques [30]. Les entreprises sont confrontées à un certain nombre de défis pour connecter leurs systèmes existants et processus vers des systèmes décentralisés, notamment :• Agilité de la blockchain : les systèmes de blockchain évoluent rapidement. Une entreprise peut être confrontée à la nouvelle apparition rapide ou à la montée en popularité de blockchain sur lesquels les contreparties souhaitent effectuer des transactions, mais pour lesquelles l'entreprise n'a pas soutien dans son infrastructure existante. En général, le dynamisme des blockchain fait il est difficile pour les entreprises individuelles de rester au courant de l’ensemble de l’écosystème. • Ressources de développement spécifiques à la blockchain : pour de nombreuses organisations, recruter ou incuber une expertise blockchain de pointe est difficile, en particulier compte tenu de la défi de l'agilité. • Gestion des clés privées : la gestion des clés privées des blockchain ou des cryptomonnaies nécessite une expertise opérationnelle distincte de celle de la cybersécurité traditionnelle. pratiques et inaccessibles à de nombreuses entreprises. • Confidentialité : les entreprises hésitent à exposer leurs données sensibles et exclusives. données sur chaîne. Pour résoudre les trois premières de ces difficultés, les développeurs peuvent simplement utiliser un DON en tant que couche middleware sécurisée pour permettre aux systèmes d'entreprise de lire ou d'écrire sur blockchains. Le DON peut faire abstraction de considérations techniques détaillées telles que dynamique des gaz, réorganisation de la chaîne, etc., tant pour les développeurs que pour les utilisateurs. Par présentant une interface blockchain rationalisée aux systèmes d'entreprise, un DON peut ainsi simplifie considérablement le développement d'applications d'entreprise compatibles blockchain, éliminant ainsi le fardeau des entreprises liées à l'acquisition ou à l'incubation de ressources de développement spécifiques à blockchain. Une telle utilisation des DONs est particulièrement intéressante dans la mesure où elle permet aux développeurs d'entreprise de créer des applications de contrats intelligents qui sont largement blockchain agnostiques. En conséquence, le plus grand l'ensemble des blockchain pour lesquels un DON est instrumenté pour agir comme middleware, le élargissez l'ensemble des blockchain auxquels les utilisateurs de l'entreprise peuvent accéder facilement. Développeurs peut porter des applications de blockchain existants vers de nouveaux avec un minimum de modifications à leurs applications développées en interne. Pour résoudre le problème supplémentaire de la confidentialité, les développeurs peuvent faire appel au outils que nous présentons dans cet article et que nous prévoyons de déployer pour prendre en charge les applications DON. Il s'agit notamment de DECO et du crieur public, section 3.6.2, ainsi que des règles de préservation de la confidentialité. Les modifications de l'API abordées dans la section 7.1.2 et un certain nombre d'approches spécifiques à l'application couvertes dans le reste de cette section. Ces systèmes DON peuvent fournir attestations en chaîne de haute intégrité sur l'état du système d'entreprise sans révéler données sources d'entreprise sensibles sur la chaîne. 4.3 Identité décentralisée L'identité décentralisée est un terme général désignant la notion selon laquelle les utilisateurs devraient pouvoir obtenir et gérer leurs propres informations d'identification, plutôt que de compter sur des tiers pour le faire donc. Les identifiants décentralisés sont des attestations d'attributs ou d'affirmations du titulaire,qui sont souvent appelés réclamations. Les informations d'identification sont signées numériquement par des entités, souvent appelées émetteurs, qui peuvent associer avec autorité les réclamations aux utilisateurs. Dans la plupart des schémas proposés, les réclamations sont associées à un identifiant décentralisé (DID), un identifiant universel pour un utilisateur donné. Les informations d'identification sont liées à une clé publique dont l'utilisateur détient la clé privée. L'utilisateur peut ainsi prouver la possession d'un titre grâce à sa clé privée. Aussi visionnaire que soit l'identité décentralisée, les projets existants et proposés, par exemple [14, 92, 129, 216], présentent trois limitations sévères : • Manque de compatibilité avec l'héritage : les systèmes d'identité décentralisés existants reposent sur un communauté d’autorités, appelées émetteurs, pour produire les identifiants DID. Parce que les services web existants ne signent généralement pas numériquement les données, les émetteurs doivent être lancés comme systèmes à usage spécial. Parce qu'il n'y a aucune incitation à le faire sans écosystème d’identité décentralisé, il en résulte un problème de la poule et de l’œuf. Dans d'autres En d’autres termes, on ne sait pas comment démarrer un écosystème d’émetteurs. • Gestion des clés irréalisable : les systèmes d'identité décentralisés exigent que les utilisateurs gérer les clés privées, ce que l'expérience avec la crypto-monnaie a montré être une responsabilité irréalisable. On estime que quelque 4 000 000 Bitcoin ont été perdu à jamais à cause d'échecs de gestion des clés [194], et de nombreux utilisateurs stockent leurs actifs cryptographiques avec des échanges [193], compromettant ainsi la décentralisation. • Manque de résistance Sybil préservant la confidentialité : une exigence de sécurité de base des applications telles que le vote, l'attribution équitable des token lors des ventes de token, etc. est que les utilisateurs ne pourront pas affirmer plusieurs identités. Les propositions d'identité décentralisées existantes exigent que les utilisateurs révèlent leur identité réelle afin d'atteindre un tel objectif. Sybil résiste, compromettant ainsi d’importantes garanties de confidentialité. Il est possible de résoudre ces problèmes en utilisant une combinaison d'un comité de nœuds effectuer des calculs distribués au sein d'un DON et utiliser des outils tels que DECO ou crieur public, comme indiqué dans un système appelé CanDID [160]. DECO ou Town Crier peuvent, de par leur conception, transformer des services Web existants sans modification en émetteurs de titres de créance préservant la confidentialité. Ils permettent à un DON d'exporter les données pertinentes données à cette fin dans un identifiant tout en masquant les données sensibles qui ne devraient pas apparaître dans l'identifiant. De plus, pour faciliter la récupération des clés pour les utilisateurs, abordant ainsi le problème de gestion des clés problème, un DON peut permettre aux utilisateurs de stocker des clés privées sous forme secrète partagée. Les utilisateurs peuvent récupérez leurs clés en prouvant aux nœuds du DON — de la même manière, en utilisant Town Crier ou DECO : la possibilité de se connecter à des comptes auprès d'un ensemble de fournisseurs Web prédéterminés (par exemple, Twitter, Google, Facebook). L’avantage d’utiliser Town Crier ou DECO, par opposition à OAUTH, c'est la confidentialité des utilisateurs. Ces deux outils permettent à un utilisateur d'éviter de révéler au DON un identifiant de fournisseur Web, à partir duquel des identités réelles peuvent souvent être dérivées. Enfin, pour fournir une résistance Sybil, comme indiqué dans [160], il est possible pour un DON de effectuer une transformation préservant la confidentialité des identifiants uniques du monde réel pour les utilisateurs (par exemple, les numéros de sécurité sociale (SSN)) en identifiants en chaîne lors de l'enregistrement de l'utilisateur.Le système peut ainsi détecter les enregistrements en double sans données sensibles telles que Les SSN sont révélés à des nœuds DON individuels.7 Un DON peut fournir n'importe lequel de ces services au nom d'une identité décentralisée externe systèmes sur des blockchain sans autorisation ou avec autorisation, par exemple, des instances d'Hyperledger Indy [129]. Exemple d'application : KYC : L'identité décentralisée est prometteuse comme moyen de rationaliser les exigences pour les applications financières sur blockchains tout en améliorant les utilisateurs vie privée. Deux défis qu'il peut aider à relever sont les obligations d'accréditation et de conformité en vertu des réglementations anti-blanchiment d'argent/connaissance du client (AML/KYC). Dans de nombreux pays, les réglementations LAB exigent que les institutions financières (et autres entreprises) établissent et vérifient l'identité des individus et des entreprises avec lesquels ils effectuent des transactions. Le KYC constitue une composante de la stratégie d’une institution financière. une politique AML plus large, qui implique également généralement de surveiller les comportements des utilisateurs et de surveiller les flux de fonds, entre autres choses. KYC implique généralement la présentation par l'utilisateur d'informations d'identification sous une forme quelconque (par exemple, entrée dans un formulaire Web en ligne, tenant un document d'identité devant le visage d'un utilisateur lors d'une séance vidéo, etc.). Création et présentation sécurisées d’informations d’identification décentralisées pourrait en principe être une alternative bénéfique à plusieurs égards, notamment en : (1) le processus KYC plus efficace pour les utilisateurs et les institutions financières, car une fois l'accréditation est obtenue, elle pourrait être présentée de manière transparente à n'importe quelle institution financière ; (2) Réduire la fraude en réduisant les possibilités de vol d'identité par compromission d'informations personnellement identifiables (PII) et d'usurpation d'identité lors de la vérification vidéo ; et (3) Réduire le risque de compromission des informations personnelles dans les institutions financières, car les utilisateurs conservent le contrôle de leurs propres données. Compte tenu des pénalités de plusieurs milliards de dollars payées par les institutions financières en cas de non-respect de la LBC et des nombreuses institutions financières qui dépensent des millions de dollars chaque année en KYC, des améliorations pourraient générer des économies considérables pour les institutions financières. et, par extension, pour les consommateurs [196]. Alors que le secteur financier traditionnel est lent pour adopter de nouveaux outils de conformité, les systèmes DeFi les adoptent de plus en plus [43]. Exemple d'application : Prêts sous-garantis : La plupart des applications DeFi qui Aujourd’hui, les prêts de soutien ne proviennent que de prêts entièrement garantis. Ce sont des prêts accordés aux emprunteurs qui déposent des actifs en cryptomonnaies d’une valeur supérieure à celle des prêts. Un intérêt est apparu récemment pour ce que la communauté DeFi appelle généralement des prêts sous-garantis. Il s'agit en revanche de prêts pour lesquels la garantie correspondante a une valeur inférieure à celle du principal du prêt. Prêts sous-garantis ressemblent à des prêts souvent accordés par des institutions financières traditionnelles. Plutôt que de compter sur les garanties déposées comme garantie du remboursement du prêt, ils basent plutôt les prêts décisions sur les antécédents de crédit des emprunteurs. 7Cette transformation s'appuie sur une fonction pseudo-aléatoire distribuée (PRF).Les prêts sous-garantis constituent une partie naissante mais croissante du marché des prêts DeFi. Ils s'appuient sur des mécanismes comme ceux employés par les institutions financières traditionnelles. institutions, telles que les contrats juridiques [91]. Une condition essentielle à leur croissance sera la capacité de fournir des données sur la solvabilité des utilisateurs (un facteur clé dans les décisions de prêt conventionnelles) aux systèmes DeFi d'une manière qui assure une forte intégrité, c'est-à-dire : l'assurance de données correctes. Un système d'identité décentralisé compatible DON permettrait aux emprunteurs potentiels de générer des références de haute assurance attestant de leur solvabilité tout en préservant la confidentialité des informations sensibles. Plus précisément, les emprunteurs peuvent générer ces informations d'identification basées sur des enregistrements provenant de sources en ligne faisant autorité tout en exposant uniquement les données attestées par le DON, sans exposer d'autres données potentiellement sensibles. Pour Par exemple, un emprunteur peut générer un justificatif indiquant que son pointage de crédit avec un l’ensemble des agences d’évaluation du crédit dépasse un seuil particulier (par exemple 750), sans le révéler score précis ou toute autre donnée dans ses dossiers. De plus, si vous le souhaitez, ces informations d'identification peut être généré de manière anonyme, c'est-à-dire que le nom de l'utilisateur peut être traité comme une donnée sensible et lui-même n'est pas exposé aux nœuds oracle ou dans ses informations d'identification décentralisées. L'accréditation lui-même peut être utilisé en chaîne ou hors chaîne, selon l'application. En résumé, un emprunteur peut fournir des informations essentielles aux prêteurs sur son crédit historiques avec une forte intégrité et sans risque d’exposition de données inutiles et sensibles données. Un emprunteur peut également fournir diverses autres informations d'identification préservant la confidentialité. utile dans la prise de décisions en matière de prêt. Par exemple, les informations d’identification peuvent attester de l’identité d’un emprunteur. possession d'actifs (hors chaîne), comme nous le montrons dans notre exemple suivant. Exemple de candidature : Accréditation : De nombreuses juridictions limitent la catégorie d'investisseurs à laquelle les titres non enregistrés peuvent être vendus. Par exemple, aux États-Unis, la SEC Le règlement D stipule que pour être accrédité pour de telles opportunités d'investissement, un l'individu doit posséder une valeur nette de 1 million de dollars, satisfaire à certaines exigences de revenu minimum ou posséder certaines qualifications professionnelles [209, 210]. Accréditation actuelle les processus sont lourds et inefficaces, nécessitant souvent une lettre d’attestation de un comptable ou une preuve similaire. Un système d'identité décentralisé permettrait aux utilisateurs de générer des informations d'identification à partir de comptes de services financiers en ligne existants qui prouvent leur conformité à l'accréditation réglementations, facilitant un processus KYC plus efficace et préservant la confidentialité. Le Les propriétés de protection de la vie privée de DECO et Town Crier permettraient en outre à ces les informations d’identification doivent être générées avec une forte assurance d’intégrité sans révéler directement les détails de la situation financière d’un utilisateur. Par exemple, un utilisateur peut générer un identifiant prouver qu'elle a une valeur nette d'au moins 1 million de dollars sans révéler aucun élément supplémentaire des informations sur sa situation financière. 4.4 Canaux prioritaires Les canaux prioritaires constituent un nouveau service utile et facile à créer à l'aide d'un DON. Leur


l'objectif est de livrer des transactions sélectionnées et hautement prioritaires en temps opportun sur MAINCHAIN pendant les périodes de congestion du réseau. Les chaînes prioritaires peuvent être considérées comme une forme de contrat à terme sur l'espace de blocs et donc en tant que cryptomarchandise, terme inventé dans le cadre du Projet Chicago [61, 136]. Les canaux prioritaires sont spécifiquement destinés aux mineurs pour permettre des services d'infrastructure, tels que les oracle, les fonctions de gouvernance pour les contrats, etc., et non pour les activités ordinaires au niveau des utilisateurs telles que les transactions financières. En fait, tel que conçu ici, une priorité Le canal mis en œuvre par moins de 100 % de la puissance minière du réseau ne peut que fournir des limites lâches sur les délais de livraison, empêchant son utilisation pour des produits très dépendants de la vitesse des objectifs tels que la course en avant. Figure 10 : Un canal prioritaire est une garantie d’un mineur M – ou plus généralement d’un ensemble de mineurs M – à un utilisateur U que sa transaction τ sera extraite dans D blocs d'inclusion dans le mempool. Un SC contractuel peut utiliser la surveillance DON pour faire respecter les conditions de service de la chaîne. Un canal prioritaire prend la forme d'un accord entre un mineur ou un ensemble de mineurs (ou pools miniers) M qui fournit le canal et un utilisateur U qui paie des frais d'accès. M convient que lorsque U soumet une transaction τ au mempool (avec n'importe quel prix du gaz,mais une limite de gaz préalablement convenue), M le placera en chaîne dans les prochains blocs D.8 L’idée est représentée schématiquement sur la figure 10. Description du contrat canal prioritaire : Un canal prioritaire peut être réalisé comme un hybride smart contract à peu près comme suit. On laisse SC désigner la logique sur MAINCHAIN et cela sur le DON par exec. SC accepte un dépôt/mise en jeu \(d from M and an advance payment \)p de U. A L'exécutable DON surveille le pool de mémoire et se déclenche lors du placement d'une transaction. par U. Il envoie un message de réussite à SC si U soumet une transaction que M exploite dans en temps opportun et un message d'échec en cas de panne de service. SC envoie le paiement $p à M suite à un message de réussite et envoie tous les fonds restants, y compris $d, à U s'il reçoit un message d'échec. En cas de résiliation réussie, il remet le dépôt $d à M. Le mineur M peut bien entendu fournir des canaux prioritaires simultanément à plusieurs utilisateurs et peut ouvrir un canal prioritaire avec U pour un nombre de messages préalablement convenu. 4.5 Préservation de la confidentialité DeFi / Mixicles Aujourd'hui, les applications DeFi [1] offrent peu ou pas de confidentialité aux utilisateurs : toutes les transactions sont visibles sur la chaîne. Diverses approches basées sur une connaissance nulle, par exemple [149, 217], peuvent assurer la confidentialité des transactions, et le TEF est suffisamment général pour les prendre en charge. Mais ces approches ne sont pas exhaustives et, par exemple, ne cachent généralement pas les actif sur lequel repose une transaction. Le large éventail d'outils informatiques que nous avons l'intention de prendre en charge dans DONs sera permettre la confidentialité de différentes manières qui peuvent combler de telles lacunes, contribuant ainsi à compléter les garanties de confidentialité d'autres systèmes. Par exemple, Mixicles, un instrument de préservation de la confidentialité DeFi proposé par les chercheurs de Chainlink Labs [135], peut dissimuler le type d'actif adossant un instrument financier, et s'intègre très naturellement dans le DON cadre. Les mixicles s'expliquent le plus facilement en termes de leur utilisation pour réaliser un binaire simple choix. Une option binaire est un instrument financier dans lequel deux utilisateurs, que nous allons référez-vous ici pour plus de cohérence avec [135] en tant que joueurs, pariez sur un événement avec deux possibilités résultats, par exemple, si un actif dépasse ou non un prix cible à un moment prédéfini. L’exemple suivant illustre l’idée. Exemple 2. Alice et Bob sont parties à une option binaire basée sur la valeur d'un actif appelé Carol’s Bubble Token (CBT). Alice parie que le CBT aura un prix de marché d'au au moins 250 USD à l'heure T = midi le 21 juin 2025 ; Bob parie l'inverse. Chaque joueur dépose 100 ETH dans un délai prédéfini. Le joueur avec la position gagnante reçoit 200 ETH (c'est-à-dire gagne 100 ETH). 8D doit bien sûr être suffisamment grand pour garantir que M puisse se conformer à une probabilité élevée. Pour Par exemple, si M contrôle 20 % de la puissance minière du réseau, il pourrait choisir D = 100, garantissant ainsi une probabilité de défaillance de ≈2 × 10−10, soit moins d'un sur un milliard.Étant donné un réseau O Chainlink oracle existant, il est facile de mettre en œuvre un système intelligent contrat SC qui réalise l'accord de l'exemple 2. Les deux joueurs déposent chacun 100 ETH en SC. Quelque temps après T, une requête q est envoyée à O demandant le prix r de CBT à l'instant T. O envoie un rapport r de ce prix à SC. SC envoie ensuite de l'argent à Alice si r ≥250 et Bob sinon. Cependant, cette approche révèle r sur la chaîne, ce qui facilite pour un observateur de déduire l’actif sous-jacent à l’option binaire. Dans la terminologie des Mixicles, il est utile de penser conceptuellement au résultat de SC en termes de Switch qui transmet une valeur binaire calculée comme prédicat interrupteur(r). Dans notre exemple, switch(r) = 0 si r ≥250 ; compte tenu de ce résultat, Alice gagne. Sinon switch(r) = 1 et Bob gagne. Un DON peut réaliser un Mixicle de base en tant que contrat hybride en exécutant un exécutable exec qui calcule switch(r) et le signale en chaîne à SC. Nous montrons cette construction sur la figure 11. Figure 11 : Schéma du Mixicle de base dans l'exemple 2. Pour assurer le secret en chaîne pour rapport r, et donc l'actif sous-jacent à l'option binaire, le oracle envoie au contractez SC via Switch uniquement le switch de valeur binaire (r). Nous spécifions un adaptateur ConfSwitch dans l'Annexe C.3 qui facilite la réalisation de cet objectif. objectif dans un DON. L'idée de base derrière ConfSwitch est assez simple. Au lieu de signaler la valeur r, ConfSwitch rapporte uniquement la valeur du commutateur binaire switch(r). SC peut être conçu pour effectuer un paiement correct basé sur le switch(r) seul, et le switch(r) seul ne révèle aucune information sur l’actif sous-jacent – CBT dans notre exemple. De plus, en plaçant un texte chiffré sur (q, r) sur le registre chiffré sous pkaud, la clé publique de un auditeur, l'adaptateur ConfSwitch crée une piste d'audit préservant la confidentialité. Le Mixicle de base que nous avons choisi par souci de simplicité pour décrire ici ne cache que le actif et pariez derrière l'option binaire dans notre exemple. Un Mixicle à part entière [135] peut fournir deux formes de confidentialité. Il cache aux observateurs : (1) Quel événement le les joueurs parient sur (c'est-à-dire q et r) mais aussi (2) Quel joueur a gagné le pari. Puisque les Mixicles sont exécutés sur MAINCHAIN, un joueur devra relayer switch(r) du DON vers MAINCHAIN, ou un exécutable pourrait être créé qui
est déclenché en sortie par ConfSwitch et appelle un autre adaptateur pour envoyer le switch(r) à CHAÎNE PRINCIPALE. Un troisième type de confidentialité, plus subtil, mérite également d’être pris en considération. Dans une implémentation de base de ConfSwitch, O exécute l'adaptateur sur le DON et apprend ainsi le actif – CBT dans notre exemple – et donc la nature de l’option binaire. Comme discuté à l'annexe C.3, il est toutefois possible d'utiliser en plus DECO ou Town Crier pour cacher même cette information à O. Dans ce cas, l'O n'apprend plus aucune information qu’un observateur public de SC. Pour plus de détails sur Mixicles, nous renvoyons les lecteurs à [135].
Dịch vụ phi tập trung được kích hoạt bởi phi tập trung
Mạng Oracle Để minh họa tính linh hoạt của DON và cách chúng kích hoạt một loạt dịch vụ mới, chúng tôi trình bày năm ví dụ về các ứng dụng dựa trên DON trong phần này và mô tả hợp đồng kết hợp hiện thực hóa chúng: (1) Bằng chứng dự trữ, một hình thức dịch vụ chuỗi chéo; (2) Giao tiếp với các hệ thống doanh nghiệp/cũ, tức là tạo ra một ứng dụng dựa trên phần mềm trung gian lớp trừu tượng tạo điều kiện phát triển các ứng dụng blockchain với chi phí tối thiểu blockchain-mã hoặc chuyên môn cụ thể; (3) Nhận dạng phi tập trung, các công cụ cho phép người dùng có được và quản lý các tài liệu nhận dạng và thông tin xác thực của riêng họ; (4) Các kênh ưu tiên, một dịch vụ đảm bảo đưa vào kịp thời các giao dịch cơ sở hạ tầng quan trọng (ví dụ: oracle báo cáo) trên blockchain; và (5) Bảo đảm bí mật DeFi, nghĩa là tài chính smart contract che giấu dữ liệu nhạy cảm của các bên tham gia. Ở đây, chúng tôi
sử dụng SC để biểu thị phần MAINCHAIN của hợp đồng kết hợp và mô tả DON thành phần riêng biệt hoặc dưới dạng một chương trình thực thi có thể thực thi được. 4.1 Bằng chứng dự trữ Đối với nhiều ứng dụng, việc chuyển tiếp trạng thái giữa hoặc giữa blockchains là rất hữu ích. A ứng dụng phổ biến của các dịch vụ như vậy là gói tiền điện tử. Những đồng xu được bọc như vậy vì WBTC [15] đang trở thành tài sản phổ biến trong Tài chính phi tập trung (DeFi). Họ liên quan đến việc gửi tài sản hỗ trợ “được bao bọc” vào nguồn của nó blockchain MAINCHAIN(1) và tạo token tương ứng trên một mục tiêu khác, blockchain MAINCHAIN(2). Ví dụ: WBTC là ERC20 token trên Ethereum blockchain tương ứng tới BTC trên Bitcoin blockchain. Vì các hợp đồng trên MAINCHAIN(2) không hiển thị trực tiếp vào MAINCHAIN(1), họ phải dựa một cách rõ ràng hoặc ngầm định vào oracle để báo cáo về khoản tiền gửi của gói được bao bọc nội dung trong smart contract, tạo ra cái mà đôi khi được gọi là Bằng chứng dự trữ. trong Ví dụ: WBTC [15], người giám sát BitGo nắm giữ BTC và phát hành WBTC, với Chainlink mạng cung cấp Bằng chứng dự trữ [76]. DON có thể tự cung cấp Bằng chứng dự trữ. Tuy nhiên, với DON, có thể để đi xa hơn DON có thể quản lý bí mật và thông qua việc sử dụng bộ điều hợp thích hợp, có thể giao dịch trên bất kỳ blockchain nào mong muốn. Do đó, DON có thể hành động với tư cách là một trong số những người giám hộ—hoặc thậm chí là người giám hộ duy nhất, phi tập trung—cho một tài sản được bọc. DON do đó có thể đóng vai trò là nền tảng để nâng cao tính bảo mật của các dịch vụ hiện có sử dụng Bằng chứng dự trữ. Ví dụ: giả sử MAINCHAIN(1) là Bitcoin và MAINCHAIN(2) là Ethereum. Trên MAINCHAIN(2), SC hợp đồng phát hành tokens đại diện cho BTC được bao bọc. DON kiểm soát địa chỉ BTC (1) DON. Sau đó, để bọc BTC, người dùng U gửi X BTC từ địa chỉ (1) bạn để thêm (1) DON cùng với địa chỉ MAINCHAIN(2)-địa chỉ (2) bạn. Màn hình DON địa chỉ (1) DON thông qua bộ chuyển đổi sang MAINCHAIN(1). Khi quan sát tiền gửi của U, với xác nhận có xác suất đủ cao, nó sẽ gửi một tin nhắn đến SC thông qua bộ chuyển đổi tới CHUỖI CHÍNH(2). Thông báo này hướng dẫn SC đúc X tokens cho addr(2) bạn. Để U giải phóng X tokens thì điều ngược lại sẽ xảy ra. Tuy nhiên, trên MAINCHAIN(1), địa chỉ (1) DON gửi X BTC tới addr(1) U (hoặc đến địa chỉ khác, nếu người dùng yêu cầu). Tất nhiên, các giao thức này có thể được điều chỉnh để hoạt động với các sàn giao dịch, thay vì trực tiếp. với người dùng. 4.2 Giao diện với hệ thống doanh nghiệp / kế thừa DON có thể đóng vai trò là cầu nối giữa và giữa blockchain, như trong ví dụ về Bằng chứng của Dự trữ, nhưng một mục tiêu khác là để chúng đóng vai trò là cầu nối hai chiều giữa blockchains và các hệ thống kế thừa [176] hoặc các hệ thống tương tự blockchain chẳng hạn như ngân hàng trung ương tiền kỹ thuật số [30]. Các doanh nghiệp phải đối mặt với một số thách thức trong việc kết nối các hệ thống hiện có của họ và quy trình cho các hệ thống phi tập trung, bao gồm:• Tính linh hoạt của chuỗi khối: Hệ thống chuỗi khối thay đổi nhanh chóng. Doanh nghiệp có thể phải đối mặt với sự xuất hiện mới nhanh chóng hoặc mức độ phổ biến ngày càng tăng của blockchains các đối tác mong muốn thực hiện giao dịch nhưng doanh nghiệp không có hỗ trợ cơ sở hạ tầng hiện có của nó. Nhìn chung, sự năng động của blockchains tạo nên rất khó để các doanh nghiệp riêng lẻ có thể theo kịp hệ sinh thái đầy đủ. • Nguồn lực phát triển dành riêng cho chuỗi khối: Đối với nhiều tổ chức, việc tuyển dụng hoặc ươm tạo chuyên môn blockchain tiên tiến là rất khó khăn, đặc biệt là khi xét đến thử thách sự nhanh nhẹn. • Quản lý khóa riêng: Quản lý khóa riêng cho blockchain hoặc tiền điện tử yêu cầu chuyên môn vận hành khác với chuyên môn về an ninh mạng truyền thống thực tiễn và không có sẵn cho nhiều doanh nghiệp. • Tính bảo mật: Các doanh nghiệp rất thận trọng khi tiết lộ thông tin nhạy cảm và độc quyền của mình dữ liệu trên chuỗi. Để giải quyết ba khó khăn đầu tiên, nhà phát triển chỉ cần sử dụng DON như một lớp phần mềm trung gian an toàn để cho phép các hệ thống doanh nghiệp đọc từ hoặc ghi vào blockchains. DON có thể tóm tắt những cân nhắc kỹ thuật chi tiết như động lực khí, tổ chức lại chuỗi, v.v. cho cả nhà phát triển và người dùng. Bởi trình bày giao diện blockchain được sắp xếp hợp lý cho các hệ thống doanh nghiệp, do đó DON có thể đơn giản hóa đáng kể việc phát triển các ứng dụng doanh nghiệp nhận biết blockchain, loại bỏ gánh nặng cho các doanh nghiệp trong việc mua hoặc ươm tạo các tài nguyên phát triển cụ thể blockchain. Việc sử dụng DON như vậy đặc biệt hấp dẫn ở chỗ nó cho phép các nhà phát triển doanh nghiệp tạo các ứng dụng hợp đồng thông minh phần lớn là blockchain bất khả tri. Kết quả là, lớn hơn tập hợp blockchain trong đó DON được thiết kế để hoạt động như phần mềm trung gian, lớn hơn tập hợp blockchain mà người dùng doanh nghiệp có thể dễ dàng truy cập. Nhà phát triển có thể chuyển các ứng dụng từ blockchain hiện có sang ứng dụng mới với sự sửa đổi tối thiểu cho các ứng dụng được phát triển nội bộ của họ. Để giải quyết vấn đề bổ sung về tính bảo mật, các nhà phát triển có thể khiếu nại lên cơ quan các công cụ chúng tôi giới thiệu trong bài viết này và dự kiến sẽ triển khai để hỗ trợ các ứng dụng DON. Chúng bao gồm DECO và Town Crier Mục 3.6.2 cũng như bảo vệ bí mật Các sửa đổi API được thảo luận trong Phần 7.1.2 và một số cách tiếp cận dành riêng cho ứng dụng được đề cập trong phần còn lại của phần này. Những hệ thống DON này có thể cung cấp chứng thực trực tuyến, có tính toàn vẹn cao về trạng thái hệ thống doanh nghiệp mà không tiết lộ dữ liệu nguồn doanh nghiệp nhạy cảm trên chuỗi. 4.3 Nhận dạng phi tập trung Danh tính phi tập trung là một thuật ngữ chung cho khái niệm mà người dùng có thể lấy và quản lý thông tin xác thực của riêng họ, thay vì dựa vào bên thứ ba để thực hiện vậy. Thông tin xác thực phi tập trung là sự chứng thực cho các thuộc tính hoặc xác nhận của chủ sở hữu,thường được gọi là yêu cầu bồi thường. Thông tin xác thực được ký điện tử bởi các thực thể, thường được gọi là nhà phát hành, có thể liên kết chính xác các khiếu nại với người dùng. Trong hầu hết các phương án được đề xuất, các khiếu nại được liên kết với Mã định danh phi tập trung (DID), một mã định danh chung cho một người dùng nhất định. Thông tin xác thực được liên kết với khóa chung mà người dùng nắm giữ khóa riêng. Do đó, người dùng có thể chứng minh quyền sở hữu yêu cầu bằng cách sử dụng khóa riêng của mình. Có tầm nhìn xa trông rộng như bản sắc phi tập trung, các kế hoạch hiện có và được đề xuất, ví dụ: [14, 92, 129, 216], có ba hạn chế nghiêm trọng: • Thiếu khả năng tương thích kế thừa: Các hệ thống nhận dạng phi tập trung hiện tại dựa vào một cộng đồng các cơ quan có thẩm quyền, được gọi là tổ chức phát hành, để tạo ra thông tin xác thực DID. Bởi vì các dịch vụ web hiện tại thường không ký điện tử dữ liệu, các tổ chức phát hành phải được triển khai như các hệ thống có mục đích đặc biệt. Bởi vì không có động cơ để làm điều này mà không có hệ sinh thái nhận dạng phi tập trung sẽ dẫn đến vấn đề con gà và quả trứng. Ở nơi khác Nói cách khác, vẫn chưa rõ cách khởi động hệ sinh thái của nhà phát hành. • Quản lý khóa không thể thực hiện được: Hệ thống nhận dạng phi tập trung yêu cầu người dùng quản lý khóa riêng, điều mà trải nghiệm với tiền điện tử đã cho thấy là một trách nhiệm không thể thực hiện được. Người ta ước tính có khoảng 4.000.000 Bitcoin đã được bị mất vĩnh viễn do lỗi quản lý khóa [194] và nhiều người dùng lưu trữ tài sản tiền điện tử với các sàn giao dịch [193], do đó làm suy yếu tính phân cấp. • Thiếu khả năng chống lại Sybil bảo vệ quyền riêng tư: Yêu cầu bảo mật cơ bản của các ứng dụng như bỏ phiếu, phân bổ công bằng tokens trong khi bán token, v.v. là người dùng không thể xác nhận nhiều danh tính. Các đề xuất nhận dạng phi tập trung hiện tại yêu cầu người dùng tiết lộ danh tính trong thế giới thực của họ để đạt được điều đó. Khả năng chống lại âm thanh, do đó làm suy yếu các đảm bảo quyền riêng tư quan trọng. Có thể giải quyết những vấn đề này bằng cách sử dụng sự kết hợp của một ủy ban các nút thực hiện tính toán phân tán trong DON và sử dụng các công cụ như DECO hoặc Town Crier, như được hiển thị trong hệ thống có tên CanDID [160]. DECO hoặc Town Crier có thể thiết kế để biến đổi các dịch vụ web hiện có mà không cần sửa đổi vào các nhà phát hành thông tin xác thực bảo mật. Chúng cho phép DON xuất có liên quan dữ liệu cho mục đích này thành thông tin xác thực đồng thời che giấu dữ liệu nhạy cảm không được phép xuất hiện trong thông tin xác thực. Ngoài ra, để tạo thuận lợi cho việc khôi phục khóa cho người dùng, từ đó giải quyết vấn đề quản lý khóa. vấn đề, DON có thể cho phép người dùng lưu trữ khóa riêng tư ở dạng chia sẻ bí mật. Người dùng có thể khôi phục khóa của họ bằng cách chứng minh cho các nút trong DON—tương tự, sử dụng Town Crier hoặc DECO—khả năng đăng nhập vào tài khoản với một nhóm nhà cung cấp web được xác định trước (ví dụ: Twitter, Google, Facebook). Lợi ích của việc sử dụng Town Crier hoặc DECO, trái ngược với OAUTH, là quyền riêng tư của người dùng. Hai công cụ đó cho phép người dùng tránh tiết lộ cho DON một mã định danh nhà cung cấp web—từ đó thường có thể lấy được danh tính trong thế giới thực. Cuối cùng, để cung cấp khả năng kháng Sybil, như được hiển thị trong [160], DON có thể thực hiện chuyển đổi bảo vệ quyền riêng tư của các mã nhận dạng duy nhất trong thế giới thực cho người dùng (ví dụ: Số An sinh Xã hội (SSN)) thành số nhận dạng trên chuỗi khi đăng ký người dùng.Do đó, hệ thống có thể phát hiện các đăng ký trùng lặp mà không có dữ liệu nhạy cảm như SSN được tiết lộ cho các nút DON riêng lẻ.7 DON có thể cung cấp bất kỳ dịch vụ nào trong số này thay mặt cho danh tính phi tập trung bên ngoài các hệ thống trên blockchains không được phép hoặc được phép, ví dụ: các phiên bản của Hyperledger Ấn Độ [129]. Ứng dụng ví dụ: KYC: Bản sắc phi tập trung hứa hẹn sẽ là một phương tiện để hợp lý hóa các yêu cầu đối với các ứng dụng tài chính trên blockchains đồng thời cải thiện khả năng sử dụng của người dùng sự riêng tư. Hai thách thức mà nó có thể giúp giải quyết là các nghĩa vụ công nhận và tuân thủ theo các quy định chống rửa tiền/biết khách hàng (AML/KYC). Các quy định về AML ở nhiều quốc gia yêu cầu các tổ chức tài chính (và các doanh nghiệp khác) thiết lập và xác minh danh tính của các cá nhân và doanh nghiệp liên quan. họ thực hiện các giao dịch. KYC là một thành phần của tổ chức tài chính chính sách AML rộng hơn, thường liên quan đến việc giám sát hành vi của người dùng và theo dõi dòng vốn, cùng nhiều hoạt động khác. KYC thường yêu cầu người dùng trình bày thông tin xác thực danh tính dưới một số hình thức (ví dụ: nhập vào một biểu mẫu web trực tuyến, giơ tài liệu nhận dạng trước mặt người dùng trong một phiên video, v.v.). Tạo và trình bày an toàn thông tin xác thực phi tập trung về nguyên tắc có thể là một giải pháp thay thế có lợi ở một số khía cạnh, cụ thể là bằng cách: (1) Tạo quy trình KYC hiệu quả hơn đối với người dùng và tổ chức tài chính, bởi vì một khi có được thông tin xác thực, nó có thể được trình bày liền mạch cho bất kỳ tổ chức tài chính nào; (2) Giảm gian lận bằng cách giảm cơ hội đánh cắp danh tính thông qua thỏa hiệp thông tin nhận dạng cá nhân (PII) và giả mạo trong quá trình xác minh video; và (3) Giảm nguy cơ xâm phạm PII trong các tổ chức tài chính, khi người dùng giữ quyền kiểm soát dữ liệu của chính họ. Với các khoản phạt trị giá hàng tỷ đô la mà các tổ chức tài chính phải trả vì không tuân thủ AML và nhiều tổ chức tài chính chi hàng triệu đô la hàng năm cho KYC, các cải tiến có thể mang lại khoản tiết kiệm đáng kể cho các tổ chức tài chính. và nói rộng ra là dành cho người tiêu dùng [196]. Trong khi khu vực tài chính truyền thống chậm để áp dụng các công cụ tuân thủ mới, các hệ thống DeFi đang ngày càng áp dụng công cụ này [43]. Ứng dụng ví dụ: Các khoản vay không được thế chấp: Hầu hết DeFi ứng dụng hỗ trợ cho vay ngày nay chỉ bắt nguồn từ các khoản vay có thế chấp đầy đủ. Đây là những khoản vay được thực hiện cho những người đi vay gửi tài sản tiền điện tử có giá trị vượt quá giá trị của khoản vay. Gần đây đã nảy sinh sự quan tâm đến điều mà cộng đồng DeFi thường gọi là các khoản vay không được thế chấp. Ngược lại, đây là những khoản vay có tài sản thế chấp tương ứng có giá trị nhỏ hơn giá trị gốc của khoản vay. Các khoản vay không có tài sản thế chấp giống với các khoản vay thường được thực hiện bởi các tổ chức tài chính truyền thống. Thay vì dựa vào trên tài sản thế chấp ký gửi như một sự đảm bảo trả nợ, thay vào đó họ căn cứ vào việc cho vay quyết định về lịch sử tín dụng của người vay. 7Việc chuyển đổi này dựa trên hàm giả ngẫu nhiên phân tán (PRF).Các khoản vay không được thế chấp là một phần non trẻ nhưng đang phát triển của thị trường cho vay DeFi. Họ dựa vào các cơ chế giống như các cơ chế được sử dụng bởi các tổ chức tài chính truyền thống các tổ chức, chẳng hạn như hợp đồng pháp lý [91]. Một yêu cầu thiết yếu cho sự phát triển của họ sẽ là khả năng cung cấp dữ liệu về mức độ tín nhiệm của người dùng—yếu tố chính trong các quyết định cho vay thông thường—đến các hệ thống DeFi theo cách cung cấp tính toàn vẹn mạnh mẽ, tức là, đảm bảo số liệu chính xác. Hệ thống nhận dạng phi tập trung được kích hoạt DON sẽ cho phép những người đi vay tương lai tạo ra các thông tin có độ đảm bảo cao chứng thực mức độ tin cậy của họ trong khi vẫn bảo toàn tính bảo mật của thông tin nhạy cảm. Cụ thể, người đi vay có thể tạo ra những thông tin xác thực dựa trên hồ sơ từ các nguồn trực tuyến có thẩm quyền trong khi chỉ hiển thị thông tin dữ liệu được chứng thực bởi DON mà không làm lộ dữ liệu có thể nhạy cảm khác. cho Ví dụ: người đi vay có thể tạo thông tin xác thực cho biết rằng điểm tín dụng của cô ấy có nhóm văn phòng tín dụng vượt quá một ngưỡng cụ thể (ví dụ: 750) mà không tiết lộ thông tin của cô ấy điểm chính xác hoặc bất kỳ dữ liệu nào khác trong hồ sơ của cô ấy. Ngoài ra, nếu muốn, thông tin xác thực đó có thể được tạo ẩn danh, tức là tên người dùng có thể được coi là dữ liệu nhạy cảm và bản thân nó không được tiếp xúc với các nút oracle hoặc trong thông tin xác thực phi tập trung của cô ấy. Thông tin xác thực bản thân nó có thể được sử dụng trên chuỗi hoặc ngoài chuỗi, tùy thuộc vào ứng dụng. Tóm lại, người đi vay có thể cung cấp thông tin cần thiết cho người cho vay về tín dụng của họ. lịch sử có tính toàn vẹn cao và không có nguy cơ phơi bày những thông tin nhạy cảm, không cần thiết dữ liệu. Người vay cũng có thể cung cấp nhiều loại thông tin xác thực bảo mật khác hữu ích trong việc đưa ra quyết định cho vay. Ví dụ: thông tin xác thực có thể chứng thực quyền sở hữu của người đi vay sở hữu tài sản (ngoài chuỗi), như chúng tôi trình bày trong ví dụ tiếp theo. Ứng dụng ví dụ: Chứng nhận: Nhiều khu vực pháp lý giới hạn loại nhà đầu tư có thể bán chứng khoán chưa đăng ký. Ví dụ: ở Mỹ, SEC Quy định D quy định rằng để được công nhận cho những cơ hội đầu tư như vậy, cá nhân phải sở hữu tài sản ròng trị giá 1 triệu USD, đáp ứng các yêu cầu về thu nhập tối thiểu nhất định hoặc có trình độ chuyên môn nhất định [209, 210]. Sự công nhận hiện tại các quy trình rườm rà và kém hiệu quả, thường đòi hỏi phải có thư xác nhận từ kế toán viên hoặc bằng chứng tương tự. Một hệ thống nhận dạng phi tập trung sẽ cho phép người dùng tạo thông tin xác thực từ các tài khoản dịch vụ tài chính trực tuyến hiện có chứng minh sự tuân thủ chứng nhận các quy định, tạo điều kiện cho quy trình KYC hiệu quả hơn và bảo vệ quyền riêng tư hơn. các Hơn nữa, các đặc tính bảo vệ quyền riêng tư của DECO và Town Crier sẽ cho phép những điều này thông tin xác thực được tạo với sự đảm bảo mạnh mẽ về tính toàn vẹn mà không tiết lộ trực tiếp chi tiết về tình trạng tài chính của người dùng. Ví dụ: người dùng có thể tạo thông tin xác thực chứng minh rằng cô ấy có tài sản ròng ít nhất là 1 triệu đô la mà không tiết lộ thêm bất kỳ điều gì thông tin về tình trạng tài chính của cô ấy. 4.4 Kênh ưu tiên Kênh ưu tiên là một dịch vụ mới hữu ích, dễ xây dựng bằng DON. của họ


Mục tiêu là cung cấp các giao dịch có chọn lọc, có mức độ ưu tiên cao một cách kịp thời trên MAINCHAIN trong thời gian tắc nghẽn mạng. Các kênh ưu tiên có thể được xem như một dạng hợp đồng tương lai trên không gian khối và do đó là một loại tiền điện tử, một thuật ngữ được đặt ra như một phần của Dự án Chicago [61, 136]. Các kênh ưu tiên được dành riêng cho người khai thác để kích hoạt các dịch vụ cơ sở hạ tầng, chẳng hạn như oracles, chức năng quản trị cho hợp đồng, v.v.—không dành cho các hoạt động ở cấp độ người dùng thông thường như giao dịch tài chính. Trên thực tế, như được thiết kế ở đây, ưu tiên kênh được thực hiện bởi ít hơn 100% công suất khai thác trong mạng chỉ có thể cung cấp các giới hạn lỏng lẻo về thời gian giao hàng, ngăn cản việc sử dụng nó cho các hoạt động phụ thuộc nhiều vào tốc độ các mục tiêu như chạy trước. Hình 10: Kênh ưu tiên là sự đảm bảo của người khai thác M—hay nói chung hơn là một tập hợp các công cụ khai thác M—cho người dùng U rằng giao dịch τ của cô ấy sẽ được khai thác trong các khối D đưa vào mempool. SC hợp đồng có thể sử dụng giám sát DON để thực thi điều khoản dịch vụ của kênh. Kênh ưu tiên có dạng thỏa thuận giữa người khai thác hoặc tập hợp người khai thác (hoặc nhóm khai thác) M cung cấp kênh và người dùng U trả phí để truy cập. M đồng ý rằng khi U gửi giao dịch τ tới mempool (với bất kỳ giá gas nào,nhưng giới hạn gas đã được thỏa thuận trước), M sẽ đặt nó trên chuỗi trong các khối D tiếp theo.8 Ý tưởng này được mô tả dưới dạng sơ đồ trong Hình 10. Mô tả hợp đồng kênh ưu tiên: Một kênh ưu tiên có thể được thực hiện như một lai smart contract đại khái như sau. Chúng tôi để SC biểu thị logic trên MAINCHAIN và điều đó trên DON bởi người thực thi. SC chấp nhận khoản tiền gửi / cổ phần \(d from M and an advance payment \)p từ U. A DON người thực thi thực thi giám sát mempool, kích hoạt vị trí của giao dịch bởi U. Nó gửi thông báo thành công tới SC nếu U gửi giao dịch mà M khai thác một cách kịp thời và một thông báo lỗi trong trường hợp dịch vụ bị lỗi. SC gửi khoản thanh toán $p tới M với thông báo thành công và gửi tất cả số tiền còn lại, bao gồm $d, tới U nếu nó nhận được thông báo lỗi. Sau khi chấm dứt thành công, nó phát hành khoản tiền gửi $d cho M. Tất nhiên, công cụ khai thác M có thể cung cấp các kênh ưu tiên đồng thời cho nhiều người dùng và có thể mở kênh ưu tiên bằng U cho số lượng tin nhắn đã thỏa thuận trước. 4,5 Bảo quản bí mật DeFi / Hỗn hợp Ngày nay, DeFi ứng dụng [1] cung cấp rất ít hoặc không có tính bảo mật cho người dùng: Tất cả các giao dịch đều hiển thị trên chuỗi. Các cách tiếp cận dựa trên kiến thức không khác nhau, ví dụ: [149, 217], có thể cung cấp quyền riêng tư cho giao dịch và TEF đủ chung để hỗ trợ chúng. Nhưng những cách tiếp cận này không toàn diện và chẳng hạn, thường không che giấu được tài sản mà giao dịch dựa trên đó. Tập hợp rộng rãi các công cụ tính toán mà chúng tôi dự định hỗ trợ trong DONs sẽ cho phép quyền riêng tư theo một số cách khác nhau có thể lấp đầy những khoảng trống đó, giúp bổ sung cho việc đảm bảo quyền riêng tư của các hệ thống khác. Ví dụ: Mixicles, một công cụ bảo mật DeFi được đề xuất bởi Chainlink Các nhà nghiên cứu của Labs [135], có thể che giấu loại tài sản hỗ trợ một công cụ tài chính và rất phù hợp với DON khuôn khổ. Hỗn hợp được giải thích dễ dàng nhất về mặt sử dụng của chúng để nhận ra một hệ nhị phân đơn giản tùy chọn. Quyền chọn nhị phân là một công cụ tài chính trong đó hai người dùng, chúng ta sẽ tham khảo tại đây để biết tính nhất quán với [135] với tư cách là người chơi, đặt cược vào một sự kiện có hai khả năng kết quả, ví dụ: liệu một tài sản có vượt quá giá mục tiêu tại một thời điểm được chỉ định trước hay không. Ví dụ sau đây minh họa ý tưởng. Ví dụ 2. Alice và Bob là các bên tham gia quyền chọn nhị phân dựa trên giá trị của tài sản được gọi là Mã thông báo bong bóng của Carol (CBT). Alice đặt cược rằng CBT sẽ có giá thị trường ở mức tối thiểu 250 USD vào thời điểm T = trưa ngày 21/6/2025; Bob đặt cược ngược lại. Mỗi người chơi gửi 100 ETH theo thời hạn định trước. Người chơi có vị trí chiến thắng nhận được 200 ETH (tức là tăng 100 ETH). 8D tất nhiên phải đủ lớn để đảm bảo M có thể tuân thủ với xác suất cao. cho Chẳng hạn, nếu M kiểm soát 20% công suất khai thác trong mạng, nó có thể chọn D = 100, đảm bảo xác suất thất bại là ≈2 × 10−10, tức là nhỏ hơn một phần tỷ.Với Chainlink oracle mạng O hiện có, thật dễ dàng để triển khai một mạng thông minh hợp đồng SC thực hiện thỏa thuận trong Ví dụ 2. Hai người chơi mỗi bên gửi tiền 100 ETH trong SC. Một thời gian sau T, một truy vấn q được gửi đến O yêu cầu giá r của CBT tại thời điểm T. O gửi báo cáo r về mức giá này cho SC. SC sau đó gửi tiền cho Alice nếu r ≥250 và Bob nếu không. Tuy nhiên, cách tiếp cận này tiết lộ r trên chuỗi—làm cho việc này trở nên dễ dàng để người quan sát suy ra tài sản cơ bản của tùy chọn nhị phân. Trong thuật ngữ của Mixicles, sẽ rất hữu ích khi nghĩ về kết quả một cách khái niệm của SC dưới dạng Switch truyền giá trị nhị phân được tính toán dưới dạng vị từ chuyển đổi (r). Trong ví dụ của chúng tôi, switch(r) = 0 nếu r ≥250; với kết quả này, Alice thắng. Ngược lại switch(r) = 1 và Bob thắng. DON có thể nhận ra Mixicle cơ bản dưới dạng hợp đồng kết hợp bằng cách chạy một tệp thực thi exec tính toán switch(r) và báo cáo nó trên chuỗi cho SC. Chúng tôi hiển thị công trình này trong hình 11. Hình 11: Sơ đồ Mixicle cơ bản trong Ví dụ 2. Để cung cấp bí mật trên chuỗi cho báo cáo r và do đó, nội dung cơ bản của tùy chọn nhị phân, oracle sẽ gửi tới hợp đồng SC thông qua Chỉ chuyển đổi giá trị nhị phân switch(r). Chúng tôi chỉ định một bộ chuyển đổi ConfSwitch trong Phụ lục C.3 để giúp bạn dễ dàng đạt được điều này mục tiêu trong DON. Ý tưởng cơ bản đằng sau ConfSwitch khá đơn giản. Thay vì báo cáo giá trị r, ConfSwitch chỉ báo cáo giá trị chuyển đổi nhị phân switch(r). SC có thể được thiết kế để thực hiện thanh toán chính xác chỉ dựa trên switch(r) và chính switch(r) không tiết lộ thông tin nào về tài sản cơ bản—CBT trong ví dụ của chúng tôi. Ngoài ra, bằng cách đặt một bản mã vào (q, r) trên sổ cái được mã hóa bằng pkaud, khóa chung của kiểm toán viên, bộ điều hợp ConfSwitch tạo ra một quy trình kiểm tra bảo mật. Mixicle cơ bản mà chúng tôi đã chọn để mô tả đơn giản ở đây chỉ che giấu tài sản và đặt cược đằng sau tùy chọn nhị phân trong ví dụ của chúng tôi. Một Mixicle toàn diện [135] có thể cung cấp hai hình thức bảo mật. Nó che giấu những người quan sát: (1) Sự kiện gì người chơi đặt cược vào (tức là q và r) nhưng cũng có (2) Người chơi nào đã thắng cược. Vì Mixicles được thực thi trên MAINCHAIN nên một trong hai người chơi sẽ cần chuyển tiếp switch(r) từ DON sang MAINCHAIN hoặc có thể tạo một trình thực thi thực thi được
được kích hoạt ở đầu ra bởi ConfSwitch và gọi một bộ chuyển đổi khác để gửi switch(r) tới CHUỖI MAIN. Loại bảo mật tinh tế thứ ba cũng đáng được xem xét. Trong quá trình triển khai cơ bản của ConfSwitch, O đang chạy bộ điều hợp trên DON và do đó học được tài sản—CBT trong ví dụ của chúng tôi—và do đó là bản chất của quyền chọn nhị phân. Như đã thảo luận tuy nhiên, trong Phụ lục C.3, có thể sử dụng thêm DECO hoặc Town Crier để che giấu ngay cả thông tin này với O. Trong trường hợp này, O không biết thêm thông tin hơn là một người quan sát công khai của SC. Để biết thêm chi tiết về Mixicles, chúng tôi giới thiệu độc giả tới [135].
Services de séquençage équitables
Un service important que nous espérons que les DON offriront et qui exploite leurs capacités de mise en réseau, de calcul et de stockage est appelé Fair Sequencing Services (FSS). Bien que FSS puisse être considéré simplement comme une application réalisée dans le cadre DON, nous le soulignons comme un service qui, selon nous, sera très demandé dans l'ensemble du pays. blockchains, et que nous espérons que le réseau Chainlink soutiendra activement. Lorsqu'elles sont exécutées sur des réseaux publics blockchain, de nombreuses applications DeFi actuelles révéler des informations qui peuvent être exploitées par les utilisateurs à leur propre bénéfice, à l’instar de le type de fuites internes et d’opportunités de manipulation qui sont omniprésentes dans les systèmes existants. marchés [64, 155]. FSS ouvre plutôt la voie vers un écosystème DeFi équitable. FSS aide les développeurs à créer des contrats DeFi protégés contre les manipulations de marché résultant d’une fuite d’informations. Compte tenu des problèmes que nous soulignons ci-dessous, FSS est particulièrement attrayant pour les services de couche 2 et s'inscrit dans le cadre de tels services dont nous discutons dans la section 6. Le défi : Dans les systèmes sans autorisation existants, les transactions sont entièrement ordonnées à la discrétion des mineurs. Dans les réseaux autorisés, les nœuds validator peuvent exercer la même puissance. Il s’agit d’une forme de centralisation éphémère largement méconnue dans systèmes autrement décentralisés. Un mineur peut (temporairement) censurer les transactions pour son compte. propre bénéfice [171] ou les réorganiser pour maximiser son propre gain, une notion appelée valeur extractible par la mine (MEV) [90]. Le terme MEV est légèrement trompeur : il ne fait pas référence uniquement à la valeur que les mineurs peuvent capturer : certains MEV peuvent être capturés par les utilisateurs ordinaires. Cependant, étant donné que les mineurs ont plus de pouvoir que les utilisateurs ordinaires, le MEV représente une limite supérieure sur le montant de la valeur qu'une entité peut obtenir grâce à une réorganisation contradictoire. et insertion de transactions complémentaires. Même lorsque les mineurs commandent simplement des transactions basé sur des tarifs (gaz), sans manipulation, les utilisateurs eux-mêmes peuvent manipuler les prix du gaz pour avantager leurs transactions par rapport à celles moins sophistiquées. Daian et coll. [90] documente et quantifie les façons dont les robots (et non les mineurs) prennent avantage de la dynamique des gaz d'une manière qui nuit aux utilisateurs des systèmes DeFi aujourd'hui et comment MEV menace même la stabilité de la couche de consensus sous-jacente dans un blockchain. D’autres exemples de manipulation d’ordres de transaction font régulièrement surface, par exemple [50, 154].Les nouvelles méthodes de traitement des transactions telles que rollups constituent une approche très prometteuse aux problèmes de mise à l'échelle des blockchain à haut débit. Ils ne traitent cependant pas le problème du MEV. Au lieu de cela, ils le transfèrent vers l'entité qui génère le rollup. Cela entité, qu'il s'agisse de l'opérateur d'un smart contract ou d'un utilisateur fournissant à un (zk-)rollup une preuve de validité, a le pouvoir d'ordonner et d'insérer des transactions. En d'autres termes, rollups échangez MEV contre REV : valeur cumulable-extractible. MEV affecte les transactions à venir qui ont été soumises au mempool mais ne sont pas encore engagés sur chaîne. Les informations sur ces transactions sont largement disponible dans le réseau. Les mineurs, les validator et les participants ordinaires au réseau peuvent exploitez donc ces connaissances et créez des transactions dépendantes. De plus, les mineurs et les validator peuvent influencer l'ordre des transactions qu'ils effectuent. eux-mêmes et exploitent cela à leur avantage. Le problème de l’influence indue des dirigeants sur l’ordonnancement des transactions par consensus protocoles sont connus dans la littérature depuis les années 1990 [71, 190], mais aucun résultat satisfaisant des solutions ont été mises en pratique jusqu'à présent [97]. La principale raison est que les solutions proposées – du moins jusqu’à très récemment – ne peuvent pas être facilement intégrées aux politiques publiques. blockchains, car ils s'appuient sur le contenu des transactions qui reste secret jusqu'après leur ordre a été déterminé. Présentation des services de séquençage équitable (FSS) : DONs fournira des outils pour décentraliser l'ordre des transactions et le mettre en œuvre conformément à une politique spécifiée par un organisme de confiance. créateur de contrat, idéalement équitable et ne favorisant pas les acteurs qui souhaitent manipuler l’ordre des transactions. Collectivement, ces outils constituent FSS. FSS comprend trois composants. Le premier est le suivi des transactions. Dans la FSS, Les nœuds oracle en O surveillent tous deux le pool de mémoire de MAINCHAIN et (si vous le souhaitez) autorisent soumission hors chaîne des transactions via un canal spécialisé. La seconde est le séquençage des transactions. Les nœuds en O commandent des transactions pour un contrat de confiance selon une politique définie pour ce contrat. Le troisième est la comptabilisation des transactions. Une fois les transactions ordonnées, les nœuds en O envoient conjointement les transactions au chaîne principale. Les avantages potentiels du FSS comprennent : • Équité des commandes : FSS inclut des outils pour aider les développeurs à garantir que les transactions les contributions à un contrat particulier sont ordonnées de manière à ne pas donner lieu à un préjudice injuste avantage pour les utilisateurs disposant de ressources suffisantes et/ou techniquement avertis. Politiques de commande peuvent être spécifiés à cet effet. • Réduction ou élimination des fuites d'informations : en garantissant que les participants au réseau ne peuvent pas exploiter les informations sur les transactions à venir, le FSS peut réduire ou éliminer les attaques comme le front-running qui sont basées sur les informations disponibles dans le réseau avant que les transactions ne soient validées. Empêcher l’exploitation de ces les fuites garantissent que les transactions contradictoires qui dépendent de l'original en attente les transactions ne peuvent pas entrer dans le grand livre avant que les transactions originales ne soient validées.• Coût de transaction réduit : en éliminant le besoin de rapidité des joueurs lors de la soumission. leurs transactions vers un smart contract, FSS peut réduire considérablement le coût de traitement des transactions. • Ordre prioritaire : FSS peut automatiquement accorder une priorité spéciale aux transactions critiques. commande. Par exemple, afin de prévenir les attaques frontales contre oracle rapports, par exemple [79], FSS peut insérer un rapport oracle dans un flux de transactions rétroactivement. L'un des principaux objectifs du FSS dans les DONs est de permettre aux créateurs de DeFi de réaliser des les systèmes financiers, c’est-à-dire les systèmes qui ne profitent pas à des utilisateurs particuliers (ou à des mineurs) par rapport aux autres sur la base de la rapidité, des connaissances privilégiées ou de la capacité à exécuter des tâches techniques. manipulations. Même si une notion générale et précise d'équité est insaisissable, et l'équité parfaite dans tout sens raisonnable est irréalisable, FSS vise à fournir aux développeurs un outil puissant ensemble d'outils leur permettant d'appliquer des politiques qui les aident à atteindre leurs objectifs de conception pour DeFi. Nous notons que même si l'objectif principal du FSS est d'agir comme un service de séquençage équitable pour le MAINCHAIN que cible DON, certains des mêmes desiderata d'équité que FSS les garanties peuvent également être appropriées pour les protocoles (décentralisés) gérés entre DON fêtes. Ainsi, le SFS peut être considéré plus largement comme un service fourni par un sous-ensemble de nœuds DON pour séquencer équitablement non seulement les transactions envoyées par les utilisateurs de MAINCHAIN mais aussi des transactions (c'est-à-dire des messages) partagées entre d'autres nœuds DON. Dans cette rubrique, nous nous concentrerons principalement sur l’objectif de séquençage des transactions MAINCHAIN. Organisation de la section : dans la section 5.1, nous décrivons deux applications de haut niveau qui motivent la conception du FSS : empêcher le lancement en amont des rapports oracle et empêcher front-running des transactions des utilisateurs. Nous fournissons ensuite plus de détails sur la conception du FSS à la section 5.2. La section 5.3 décrit des exemples de garanties et de moyens de commande équitables pour les atteindre. Enfin, les sections 5.4 et 5.5 discutent des menaces au niveau du réseau pour ces politiques et moyens pour y remédier, respectivement pour l'inondation du réseau et Sybil attaques. 5.1 Le problème de premier plan Pour expliquer les objectifs et la conception du FSS, nous décrivons deux formes générales attaques et les limites des solutions existantes. Les leaders illustrent une classe des attaques par ordre de transactions : il existe un certain nombre d'attaques connexes telles que le backrunning et le sandwiching (front-running plus back-running) [237] que nous ne couvrons pas ici, mais que la FSS aide également à résoudre. 5.1.1 Oracle Front-Running Dans leur rôle traditionnel de fournir des données hors chaîne aux applications blockchain, oracles devenir une cible naturelle pour des attaques de premier plan.Considérez le modèle de conception courant consistant à utiliser un oracle pour fournir divers flux de prix. à un échange en chaîne : périodiquement (disons toutes les heures), le oracle collecte des données de prix pour différents actifs et les envoie à un contrat d'échange. Ces transactions de données sur les prix présentent des opportunités d'arbitrage évidentes : par exemple, si le rapport oracle le plus récent répertorie un prix beaucoup plus élevé pour certains actifs, un adversaire pourrait être en avance sur le rapport oracle pour acheter des actifs et les revendre immédiatement une fois le rapport de oracle traité. Ralentisseurs et tarification rétroactive : Une solution naturelle au problème initial oracle consiste à accorder aux rapports oracle une priorité particulière par rapport aux autres transactions. Pour Par exemple, les rapports oracle pourraient être envoyés avec des frais élevés pour encourager les mineurs à traiter eux en premier. Mais cela n’empêchera pas le front-running si l’opportunité d’arbitrage est élevée, cela ne peut pas non plus empêcher l’arbitrage des mineurs eux-mêmes. Certaines bourses ont donc eu recours à la mise en œuvre de « ralentisseurs » plus lourds, tels que la mise en file d'attente des transactions des utilisateurs pendant un certain nombre de blocs avant de les traiter. ou en ajustant rétroactivement les prix lorsqu'un nouveau rapport oracle arrive. Les inconvénients de ces solutions sont qu'elles ajoutent de la complexité à la mise en œuvre de l'échange, augmenter les besoins de stockage et donc les coûts de transaction, et perturber l'expérience utilisateur car les échanges d'actifs ne sont confirmés qu'après une période de temps significative. Ferroutage : Avant de passer au FSS, nous discutons du ferroutage, une solution assez simple et solution élégante au problème principal oracle. Il ne s'applique pas à l'adresse cependant, en tête dans d’autres scénarios. En bref, au lieu d'envoyer périodiquement des rapports au contrat en chaîne, oracles publier des rapports signés que les utilisateurs joignent à leurs transactions lors de l'achat ou de la vente actifs en chaîne. L'échange vérifie alors simplement que le rapport est valide et récent (par exemple, le oracle peut signer une plage de blocs pour lesquels le rapport est valide), et extrait le prix correspondant en découle. Cette approche simple présente un certain nombre d’avantages par rapport au « ralentisseur » ci-dessus. approche : (1) Le contrat d’échange n’a pas besoin de conserver l’état des flux de prix, qui devraient conduire à une baisse des coûts de transaction ; (2) Comme les rapports oracle sont publiés sur la chaîne selon les besoins, les oracle peuvent générer des mises à jour plus fréquentes (par exemple, toutes les minutes), ainsi minimiser les opportunités d’arbitrage lors de la publication d’un rapport9 ; (3) Les transactions peuvent être validés immédiatement, car ils incluent toujours un nouveau flux de prix. L’approche n’est cependant pas parfaite. Premièrement, cette solution de superposition met le il incombe aux utilisateurs de l'échange de récupérer des rapports oracle à jour et de les joindre à leur transactions. Deuxièmement, même si le recours au ferroutage minimise les opportunités d’arbitrage, il ne peut les empêcher complètement sans affecter la vivacité du contrat en chaîne. En effet, si un Le rapport oracle est valide jusqu'à un numéro de bloc n, puis une transaction soumise au bloc n + 1 nécessiterait un nouveau rapport valide. En raison des retards inhérents à la propagation de rapports de oracles aux utilisateurs, le nouveau rapport valable pour le bloc n + 1 aurait 9L’arbitrage ne vaut la peine que si la différence exploitable des prix des actifs dépasse les les frais requis pour acheter et vendre les actifs, par exemple ceux collectés par les mineurs et la bourse.être rendu public quelque temps avant que le bloc n + 1 ne soit extrait, disons au bloc n −k, ainsi créer une séquence de k blocs où existe une opportunité d'arbitrage de courte durée. Nous décrivez maintenant comment FSS contourne ces limitations. Priorisation des rapports oracle avec FSS : La FSS peut répondre au problème de premier plan oracle problème en s'appuyant sur la solution de ferroutage ci-dessus, mais en poussant les travail d'augmentation des transactions avec des rapports oracle au réseau Oracle décentralisé. À un niveau élevé, les nœuds oracle collectent les transactions destinées à un échange en chaîne, convenir d'un flux de prix en temps réel et publier le flux de prix ainsi que les transactions collectées sur le contrat de la chaîne principale. Conceptuellement, on peut considérer cette approche comme une « traitement par lots de transactions augmenté par les données », où le oracle garantit qu'un le flux de prix est toujours ajouté aux transactions. Les solutions FSS peuvent être mises en œuvre de manière transparente pour les utilisateurs de la bourse, et avec des changements minimes à la logique contractuelle, comme nous le décrivons plus en détail à la section 5.2. Assurer le fait que les nouveaux rapports oracle soient toujours prioritaires sur les transactions des utilisateurs n'est qu'un exemple d'une politique de commande que la FSS peut adopter et appliquer. Politiques de la FSS pour assurer l'ordre l’équité sont décrites de manière plus générale à la section 5.3. 5.1.2 Transactions utilisateur de premier plan Passons maintenant au front-running dans les applications génériques, où la méthode de défense ci-dessus ne fonctionne pas. Le problème peut être globalement capturé à travers le scénario suivant : Un adversaire voit une transaction utilisateur tx1 envoyée dans le réseau P2P et injecte sa propre transaction contradictoire tx2, de sorte que tx2 soit traitée avant tx1 (par exemple, en payant des frais de transaction plus élevés). Par exemple, ce type de front-running est courant parmi les des robots qui exploitent les opportunités d'arbitrage dans les systèmes DeFi [90] et qui ont affecté les utilisateurs de diverses applications décentralisées [101]. Imposer un ordre équitable entre les transactions traité sur le blockchain résout ce problème. Plus fondamentalement, voir les détails de tx1 n'est parfois même pas nécessaire et la simple connaissance de sa simple existence peut permettre à un adversaire de devancer tx1 à travers son posséder tx2 et frauder l'utilisateur innocent qui a créé tx1. Par exemple, l'utilisateur pourrait être connu pour négocier un actif particulier à des heures régulières. Prévenir de telles attaques nécessite des atténuations qui évitent également les fuites de métadonnées [62]. Quelques solutions à ce problème existent, mais ils introduisent des retards et des problèmes d’utilisabilité. De la commande réseau à la commande finalisée avec FSS : Des opportunités pour être en avance se produire parce que les systèmes existants ne disposent d’aucun mécanisme pour garantir que l’ordre dans lequel les transactions apparaissent sur la chaîne respecte l’ordre des événements et le flux d’informations en dehors du réseau. Cela représente un problème résultant de déficiences dans la mise en œuvre d'applications (par exemple, des plateformes de trading) sur un blockchain. Idéalement, on s'assurer que les transactions sont validées sur le blockchain dans le même ordre qu'elles l'étaient créé et envoyé au réseau P2P de blockchain. Mais puisque le réseau blockchain

est distribué, aucune commande de ce type ne peut être capturée. FSS introduit donc des mécanismes pour se prémunir contre les violations de l'équité, qui surviennent uniquement en raison de la distribution nature du réseau blockchain. 5.2 Détails du FSS Figure 12 : Un pool de mémoire équitable avec deux chemins de transaction différents : directe et basé sur mempool. La figure 12 montre un schéma général du FSS. Pour garantir l'équité, le DON fournissant le FSS doit interférer avec le flux des transactions lorsqu'elles entrent dans MAINCHAIN. Des ajustements aux clients, aux smart contract sur MAINCHAIN, ou aux deux, peuvent être nécessaires. À un niveau élevé, le traitement des transactions par FSS peut être décomposé en trois phases, décrites ci-dessous : (1) Surveillance des transactions ; (2) Séquençage des transactions ; et (3) Comptabilisation des transactions. En fonction de la méthode de classement utilisée pour le séquençage des transactions, des étapes de protocole supplémentaires sont nécessaires, comme décrit dans la section suivante. 5.2.1 Traitement des transactions Surveillance des transactions : Nous envisageons deux approches différentes pour que le FSS puisse surveiller transactions utilisateur destinées à un smart contract spécifique, directes et basées sur mempool : • Directe : L'approche directe est conceptuellement la plus simple, mais nécessite des changements clients utilisateurs afin que les transactions soient envoyées directement à l'Oracle décentraliséNœuds du réseau, plutôt qu'aux nœuds de la chaîne principale. Le DON collecte transactions utilisateur destinées à un smart contract SC spécifique et les commande en fonction sur une politique de commande. Le DON envoie ensuite les transactions commandées au smart contract sur la chaîne principale. Certains mécanismes de commande nécessitent également l'approche directe car l'utilisateur qui crée une transaction doit cryptographiquement protégez-le avant de l’envoyer à la FSS. • Basé sur Mempool : pour faciliter l'intégration de FSS avec les clients existants, le DON peut utiliser Mempool Services (MS) pour surveiller le pool de mémoire de la chaîne principale et collecter transactions. Le transport direct sera probablement la mise en œuvre privilégiée pour de nombreux contrats, et nous pensons que cela devrait être assez pratique dans de nombreux cas. Nous discutons brièvement de la manière dont les DApps existantes pourraient être modifiées de manière minimale pour prendre en charge transmission directe tout en préservant une bonne expérience utilisateur. Nous décrivons les approches en utilisant Ethereum et MetaMask [6] puisque ce sont les choix les plus populaires aujourd'hui, mais les techniques mentionnées devraient s'étendre à d'autres chaînes et portefeuilles. Un Ethereum récent Proposition d'amélioration, "EIP-3085 : Wallet ajoute la méthode RPC de chaîne Ethereum" [100], facilitera le ciblage des chaînes Ethereum personnalisées (en utilisant un ID CHAIN différent de celui celui de MAINCHAIN pour empêcher les attaques par relecture) de MetaMask et d'autres portefeuilles basés sur un navigateur. Après la mise en œuvre de cette proposition, un DApp cherchant à utiliser un DON ajouterait simplement un seul appel de méthode à leur front-end pour pouvoir transmettre directement transactions vers n’importe quel DON exposant une API compatible Ethereum. En attendant, "EIP-712 : Ethereum données structurées typées hashing et signature" [49] fournit un léger alternative plus impliquée mais déjà largement déployée, où un utilisateur de DApp peut utiliser MetaMask pour signer des données structurées spécifiant une transaction DON. Le DApp peut envoyer ces données structurées signées au DON. Notons enfin que des approches hybrides sont également possibles. Par exemple, l'héritage les clients peuvent continuer à envoyer des transactions dans le pool de mémoire de la chaîne principale, mais c'est essentiel les transactions (par exemple, les rapports oracle) sont envoyées directement aux nœuds DON (en particulier, le ensemble de nœuds fournissant des rapports oracle tels que des mises à jour de flux de prix et l'ensemble de nœuds à condition que le FSS puisse se chevaucher ou être identique). Séquençage des transactions : L'objectif principal de FSS est de garantir que les transactions des utilisateurs sont ordonnées selon une politique prédéfinie. La nature de cette politique dépendent des besoins de l’application et des types d’ordres de transactions déloyales qu’elle vise à prévenir. Étant donné que le FSS sur le DON est capable de traiter les données et de maintenir l'état local, ils peuvent imposer une politique de séquencement arbitraire basée sur les informations disponibles. disponible aux oracles. Les politiques de commande particulières et leur mise en œuvre sont discutées ultérieurement dans la section 5.3.Validation des transactions : Après avoir collecté et ordonné les transactions des utilisateurs, reçues soit directement des utilisateurs, soit collectées à partir du mempool, le DON envoie ces transactions à la chaîne principale. En tant que tel, les interactions d'un DON avec la chaîne principale restent soumis à un ordre de transaction (potentiellement injuste) régi par les mineurs de la chaîne principale. Pour exploiter les avantages de la commande décentralisée des transactions, la cible intelligente Le contrat SC doit donc être conçu pour traiter le DON comme un citoyen de « première classe ». Nous distinguer deux approches : • Contrats DON uniquement : l'option de conception la plus simple consiste à avoir la chaîne principale intelligente. contract SC n'accepte que les transactions qui ont été traitées par le DON. Ceci s'assure que le smart contract traite les transactions dans l'ordre proposé par le DON, mais restreint de facto le smart contract à fonctionner dans un système basé sur un comité (c'est-à-dire que le comité DON a désormais le pouvoir continu de déterminer le classement et inclusion des transactions). • Contrats à deux classes : une conception privilégiée, plus granulaire, rend la chaîne principale intelligente Le contrat SC accepte les transactions provenant à la fois du DON et de l'héritage utilisateurs,10 mais place des « ralentisseurs » traditionnels sur les transactions qui n’ont pas été traitées par le DON. Par exemple, les transactions du DON peuvent être traitées immédiatement, alors que les transactions existantes sont « mises en mémoire tampon » par le smart contract pour une période de temps déterminée. Autres mécanismes standards pour empêcher le front-running tels que les schémas de validation-révélation ou les VDF [53] pourraient également être appliqués aux anciens transactions. Cela garantit que les transactions commandées par DON seront traitées dans l'ordre convenu, sans donner au DON le pouvoir indésirable de censurer transactions. Comme l'imposition de l'ordre des transactions par FSS nécessite que les transactions soient agrégées « hors chaîne », cette solution est naturellement combinée avec d'autres techniques d'agrégation visant à réduire les coûts de traitement en chaîne. Par exemple, après avoir collecté et commandant des transactions, le DON peut envoyer ces transactions à la chaîne principale en tant que une seule « transaction groupée » (par exemple, un rollup), réduisant ainsi la transaction globale frais. Exécution de l'ordre de transaction : Que ce soit dans une conception DON uniquement ou à deux classes, la chaîne principale smart contract SC et le DON doivent être co-conçus de manière à garantir que l'ordre des transactions du DON est respecté. Ici aussi, nous envisageons différents options de conception : • Numéros de séquence : le DON peut ajouter un numéro de séquence à chaque transaction et envoyer ces transactions dans le pool mémoire de la chaîne principale. Le principal 10Si la surveillance des transactions du DON est basée sur le mempool, les transactions héritées doivent être distinctes des transactions DON afin qu'elles ne soient pas collectées par le DON, par exemple via une balise spéciale. intégré à la transaction ou en spécifiant un prix de gaz particulier, par ex. Les transactions DON contiennent du gaz prix inférieurs à un certain seuil.La chaîne smart contract SC ignore les transactions qui arrivent « hors séquence ». Nous notez que dans ce contexte, les mineurs de la chaîne principale peuvent décider d'ignorer les DON l'ordre des transactions, provoquant ainsi l'échec des transactions. Il est possible, en conservant l'état (coûteux), que SC applique un ordre correct des transactions, quelque peu de la même manière que TCP met en mémoire tampon les paquets dans le désordre jusqu'à ce que les paquets manquants soient supprimés. reçu. • Transaction nonces : Pour de nombreux blockchains, et en particulier pour Ethereum, le L'approche de numérotation séquentielle ci-dessus peut exploiter les transactions intégrées nonce pour imposer que la chaîne principale smart contract SC traite les transactions dans l'ordre. Ici, les nœuds DON envoient des transactions à la chaîne principale via un seul compte de chaîne principale, protégé par une clé partagée entre les nœuds DON. Le compte la transaction nonce garantit que les transactions sont extraites et traitées dans le bon ordre. • Regrouper les transactions : le DON peut regrouper plusieurs transactions dans un rollup. (ou dans un bundle similaire à un rollup). La chaîne principale smart contract doit être conçu pour gérer de telles transactions globales. • Regrouper les transactions avec un proxy de chaîne principale : ici, le DON regroupe de la même manière les transactions en une seule « méta-transaction » pour la chaîne principale, mais s'appuie sur un proxy personnalisé smart contract pour décompresser les transactions et les relayer vers le contrat cible SC. Cette technique peut être utile pour la compatibilité existante. Les métatransactions agissent comme les rollup mais diffèrent en ce sens qu'elles consistent en un contenu non compressé. liste des transactions publiées une fois sur la chaîne principale. Cette dernière conception présente l'avantage de prendre en charge de manière transparente les transactions des utilisateurs qui sont eux-mêmes mandatés par le biais d'un contrat de chaîne principale avant d'atteindre l'objectif de DON contrat SC. Par exemple, considérons un utilisateur qui envoie une transaction vers un portefeuille contrat, qui à son tour envoie une transaction interne à SC. Attribution d'une séquence à une telle transaction serait délicat, à moins que le contrat de portefeuille de l'utilisateur ne soit spécialement conçu pour transmettre le numéro de séquence à chaque transaction interne à SC. De même, ces transactions internes ne peuvent pas être facilement regroupées en une métatransaction envoyée directement au SC. Nous discutons d'autres considérations de conception pour ces transactions par procuration ci-dessous. 5.2.2 Atomicité des transactions Notre discussion jusqu’à présent a implicitement supposé que les transactions interagissent avec un seul en chaîne smart contract (par exemple, un utilisateur envoie une demande d'achat à un échange). Pourtant, dans Dans des systèmes tels que Ethereum, une seule transaction peut consister en plusieurs transactions internes, par exemple, une smart contract appelant une fonction dans un autre contrat. Ci-dessous, nous décrire deux stratégies de haut niveau pour séquencer les transactions « multi-contrats », tandis que préservant l'atomicité de la transaction (c'est-à-dire la séquence d'actions prescrite par les transactions sont toutes exécutées dans le bon ordre, voire pas du tout).Forte atomicité : La solution la plus simple consiste à appliquer le FSS, comme décrit ci-dessus, directement à des transactions « multi-contrats » entières. Autrement dit, les utilisateurs envoient leurs transactions dans le réseau et FSS surveille, séquence et publie ces transactions sur le chaîne principale. Cette approche est techniquement simple, mais présente une limite potentielle : si un utilisateur la transaction interagit avec deux contrats SC1 et SC2 qui veulent tous deux tirer parti d'un effet de levier équitable services de séquençage, alors la politique de séquençage de ces deux contrats doit être cohérente. Autrement dit, étant donné deux transactions différentes tx1 et tx2 avec lesquelles chacune interagit à la fois SC1 et SC2, il ne faut pas que la politique de SC1 commande tx1 avant tx2 alors que la politique du SC2 prescrit l’ordre inverse. Pour la grande majorité des scénarios d’intérêt, nous envisageons que les politiques de séquençage adoptées par les différents contrats seront cohérentes. Par exemple, SC1 et SC2 peut vouloir que les transactions soient classées en fonction de leur heure d'arrivée approximative dans le mempool, et SC1 peut en outre souhaiter que certains rapports oracle soient toujours livrés en premier. Comme le ces dernières oracle signalent que les transactions n'interagissent pas avec SC2, les politiques sont cohérentes. Faible atomicité : Dans toute sa généralité, le FSS pourrait être appliqué au niveau des individus. transactions internes. Considérons des transactions de la forme tx = { ˜txpre, ˜txSC, ˜txpost}, constituées de quelques transaction(s) ˜txpre, qui aboutit à une transaction interne ˜txSC à SC, qui à son tour émet des transactions internes ˜txpost. La politique de séquençage du SC pourrait déterminer comment la transaction interne ˜txSC doit être ordonnée par rapport aux autres transactions envoyées vers SC, mais laissez ouvert l’ordre de séquençage pour ˜txpre et ˜txpost. Compte tenu des caractéristiques intrinsèques du traitement des transactions dans des systèmes tels que Ethereum, développer un service de séquençage ciblant des transactions internes spécifiques n'est pas simple. Avec un contrat SC spécialement conçu, cela peut être réalisé comme suit : 1. La transaction tx est envoyée dans le réseau et extraite (sans aucun séquençage réalisée par la FSS). Le ˜txpre initial est exécuté et appelle ˜txSC. 2. SC n'exécute pas ˜txSC et retourne. 3. FSS surveille les transactions internes de SC, les séquence et les publie à SC (c'est-à-dire en envoyant des transactions ˜txSC directement à SC). 4. SC traite les transactions ˜txSC reçues de FSS et émet les transactions internes ˜txpost qui résultent de ˜txSC. Avec cette approche, les transactions ne sont pas exécutées de manière entièrement atomique (c'est-à-dire la transaction tx est divisée en plusieurs transactions en chaîne), mais l'ordre des les transactions internes sont préservées. Cette solution implique un certain nombre de contraintes de conception. Par exemple, ˜txpre ne peut pas supposons que ˜txSC et ˜txpost seront exécutés. De plus, SC doit être conçu de manière à exécuter les transactions ˜txSC et ˜txpost pour le compte d'un certain utilisateur, même si elles étaientenvoyé par la FSS. Pour ces raisons, la solution « Atomicité forte » plus grossière ci-dessus est probablement préférable dans la pratique. Pour respecter des dépendances plus complexes, impliquant plusieurs transactions et leurs transactions internes respectives, le planificateur de transactions de FSS peut contenir des fonctions élaborées qui ressemblent à celles trouvées dans les gestionnaires de transactions des relations gestionnaires de bases de données. 5.3 Séquençage équitable des transactions Nous discutons ici de deux notions d'équité pour le séquençage des transactions et des implémentations correspondantes, qui peuvent être réalisées par FSS : l'équité des ordres basée sur une politique imposé par FSS et la préservation sécurisée de la causalité, ce qui nécessite des méthodes cryptographiques supplémentaires dans FSS. Équité des commandes : L'équité de l'ordre est une notion d'équité temporelle dans les protocoles de consensus qui a été formellement introduit pour la première fois par Kelkar et al. [144]. Kelkar et coll. visent à parvenir à une forme de politique naturelle dans laquelle les transactions sont commandés en fonction de l'heure à laquelle ils sont reçus pour la première fois par le DON (ou le réseau P2P, dans le cas d'un FSS basé sur mempool). Cependant, dans un système décentralisé, les nœuds peuvent voir les transactions arriver dans un ordre différent. Etablir une commande totale sur toutes les transactions est le problème même résolu par le protocole de consensus qui sous-tend CHAÎNE PRINCIPALE. Kelkar et coll. [144] introduisent donc une notion plus faible qui peut être réalisé avec l’aide d’un réseau Oracle décentralisé, appelé « équité des commandes en bloc ». Il regroupe les transactions que le DON a reçues pendant un intervalle de temps dans un « bloquer » et insère toutes les transactions du bloc simultanément et à la même position (c'est-à-dire la hauteur) dans MAINCHAIN. Ils sont donc ordonnés ensemble et doivent être exécutables en parallèle, sans créer de conflits entre eux. En gros, l’équité de l’ordre stipule alors que si une grande fraction des nœuds voit la transaction τ1 avant τ2, alors τ1 sera séquencé avant ou dans le même bloc que τ2. En imposant une mesure aussi grossière la granularité de l'ordre des transactions, les possibilités d'attaques frontales et autres attaques liées à l'ordre sont considérablement réduites. Kelkar et coll. proposent une famille de protocoles appelée Aequitas [144], qui aborde différents modèles de déploiement, y compris les paramètres réseau synchrone, partiellement synchrone et asynchrone. Les protocoles Aequitas imposent une surcharge de communication importante par rapport au consensus de base BFT et ne sont donc pas idéaux pour une utilisation pratique. Nous pensons cependant que des variantes pratiques d'Aequitas apparaîtront et pourront être utilisées pour le séquençage des transactions dans FSS et d'autres applications. Certains régimes connexes ont déjà été proposés qui ont moins de formalisme d'accompagnement et des propriétés plus faibles, par exemple, [36, 151, 236], mais de meilleures performances pratiques. Ces programmes peuvent être soutenus en FSS également. Il convient également de noter que le terme « équité » apparaît ailleurs dans le blockchain littérature avec un sens différent, à savoir l'équité dans le sens d'opportunité pourmineurs proportionnellement à leurs ressources engagées [106, 181] ou pour validators en termes de l’égalité des chances [153]. Préservation sécurisée de la causalité : L'approche la plus connue pour empêcher le frontrunning et autres violations d'ordre sur les plates-formes distribuées repose sur la cryptographie. techniques. Leur caractéristique commune est de masquer les données de transaction elles-mêmes, en attendant l'ordre au niveau de la couche consensus a été établi et pour révéler les données de transaction plus tard pour le traitement. Cela préserve l'ordre causal entre les transactions qui sont exécuté par le blockchain. Les notions de sécurité et protocoles cryptographiques pertinents ont été considérablement développés avant l’avènement des blockchains [71, 190]. Les conditions de sécurité de la « causalité d'entrée » [190] et de la « préservation sécurisée de la causalité » [71, 97] exigent formellement qu'aucune information sur une transaction ne soit connue. avant que la position de cette transaction dans l’ordre global n’ait été déterminée. Un adversaire ne doit pas être en mesure de déduire aucune information avant ce moment, de manière cryptographique. sens fort. On peut distinguer quatre techniques cryptographiques pour préserver la causalité : • Protocoles de validation-révélation [29, 142, 145] : au lieu d'annoncer une transaction en clair, seul un engagement cryptographique sur la transaction est diffusé. Une fois que toutes les transactions validées mais cachées ont été ordonnées (au début du blockchain systèmes sur MAINCHAIN lui-même, mais ici par FSS), l'expéditeur doit ouvrir l'engagement et révéler les données de la transaction dans un intervalle de temps prédéterminé. Le réseau vérifie ensuite que l'ouverture satisfait à l'engagement antérieur. Le les origines de cette méthode datent d’avant l’avènement des blockchains. Bien qu’elle soit particulièrement simple, cette approche présente des inconvénients considérables et n’est pas facile à mettre en œuvre pour deux raisons. Premièrement, puisque seul l’engagement existe au niveau du protocole de commande, la sémantique de la transaction ne peut être validé lors du consensus. Un aller-retour supplémentaire chez le client est requis. Mais, plus sévèrement, la possibilité qu'aucune ouverture ne soit possible jamais arriver, ce qui pourrait équivaloir à une attaque par déni de service. De plus, il Il est difficile de déterminer si l’ouverture est valide dans un contexte cohérent et distribué. manière car tous les participants doivent se mettre d’accord sur le fait que l’ouverture soit arrivée dans le temps. • Protocoles de validation-révélation avec récupération retardée [145] : un défi avec le L’approche commit-reveal est qu’un client peut s’engager dans une transaction de manière spéculative et la révéler plus tard uniquement si les transactions ultérieures la rendent rentable. Un une variante récente de l'approche commit-reveal améliore la résilience contre cela une sorte de mauvaise conduite. En particulier, le protocole TEX [145] résout ce problème en utilisant une approche intelligente dans laquelle les transactions cryptées incluent une clé de déchiffrement pouvant être obtenu en calculant une fonction de retard vérifiable (VDF) [53, 221]. Si un client ne parvient pas à déchiffrer sa transaction en temps opportun, d'autres personnes dans le système déchiffreront en son nom en résolvant un casse-tête cryptographique moyennement difficile.• Chiffrement à seuil [71, 190] : cette méthode exploite ce que DON peut effectuer opérations cryptographiques à seuil. Supposons que FSS maintient un chiffrement public key pkO et les oracle partagent entre eux la clé privée correspondante. Les clients chiffrent ensuite les transactions sous pkO et les envoient au FSS. Commandes FSS transactions sur le DON, puis les décrypte, et enfin les injecte dans MAINCHAIN dans l’ordre fixe. Le cryptage garantit donc que la commande est non pas basé sur le contenu de la transaction, mais sur le fait que les données elles-mêmes sont disponibles lorsque nécessaire. Cette méthode a été initialement proposée par Reiter et Birman [190] et affinée plus tard par Cachin et al. [71], où il a été intégré avec un consensus autorisé protocole. Des travaux plus récents ont exploré l'utilisation de la cryptographie à seuil comme mécanisme de niveau consensus pour les messages génériques [33, 97] et pour les calculs généraux avec des données partagées [41]. Comparé aux protocoles de révélation de validation, le chiffrement à seuil empêche les simples attaques par déni de service (bien qu'il faille faire preuve de prudence étant donné le coût de calcul du décryptage). Il permet au DON d'avancer de manière autonome, à son rythme et sans en attendant d'autres actions du client. Les transactions peuvent être validées immédiatement après avoir été déchiffrées. De plus, les clients chiffrent toutes les transactions avec un seul clé pour le DON et le modèle de communication reste le même qu'avec les autres transactions. Gérer la clé de seuil en toute sécurité et avec des nœuds changeants dans O, cependant, peut poser des difficultés supplémentaires. • Partage de secret engagé [97] : au lieu de chiffrer les données de transaction sous une clé détenue par le DON, le client peut également la partager en secret pour les nœuds en O. Grâce à un système de partage de secrets hybride et informatiquement sécurisé, la transaction est d’abord chiffré à l’aide d’un chiffre symétrique avec une clé aléatoire. Seule la clé symétrique correspondante est partagée et le texte chiffré est soumis au DON. Le client doit envoyer un partage de clé à chaque nœud en O à l'aide d'un message chiffré séparément. Les étapes restantes du protocole sont les mêmes que pour le seuil cryptage, sauf que les données de transaction sont déchiffrées avec le chiffrement symétrique algorithme après avoir reconstruit la clé par transaction à partir de ses partages. Cette méthode ne nécessite pas la configuration ou la gestion d'un système de cryptographie à clé publique associé au DON. Cependant, les clients doivent connaître les nœuds dans O et communiquer dans un contexte sécurisé avec chacun d’eux, ce qui place charge supplémentaire pour les clients. Bien que les méthodes cryptographiques offrent une protection complète contre les informations fuyant les transactions soumises au réseau, ils ne cachent pas les métadonnées. Pour Par exemple, une adresse IP ou une adresse Ethereum de l'expéditeur pourrait toujours être utilisée par un adversaire pour effectuer des attaques de front et autres. Diverses mesures améliorant la confidentialité les techniques déployées au niveau de la couche réseau, par exemple [52, 95, 107], ou de la couche transaction, par exemple, [13, 65], serait nécessaire pour atteindre cet objectif. L'impact d'une pièce particulière des métadonnées, à savoir à quel contrat une transaction est envoyée, peuvent être (partiellement) masquéesen multiplexant de nombreux contrats sur le même DON. Dissimulation cryptographique des transactions en soi n’empêche pas non plus la priorisation des transactions par des entités corrompues. DON nœuds en collusion avec les expéditeurs de transactions. La causalité sécurisée garantie par les protocoles cryptographiques complète les garanties d'équité de l'ordre pour toute politique, et nous avons l'intention d'explorer une combinaison des deux. méthodes, lorsque cela est possible. Si un adversaire ne peut pas tirer un avantage significatif de en observant les métadonnées, les protocoles sécurisés de préservation de la causalité pourraient être utilisés parallèlement une approche de commande naïve également. Par exemple, les nœuds oracle peuvent écrire des transactions à L dès leur réception, sans duplication. Les transactions seraient alors classés en fonction de leur apparition sur L et ensuite décryptés. Nous prévoyons également d’envisager l’utilisation des TEE comme moyen de contribuer à faire respecter un ordre équitable ; pour Par exemple, Tesseract [44] peut être considéré comme réalisant une forme d'ordre causal, mais un renforcé par la capacité du TEE à traiter les transactions sous forme explicite tout en en gardant leur confidentialité. 5.4 Considérations relatives à la couche réseau Jusqu'à présent, notre description du FSS s'est principalement concentrée sur le problème de l'application du principe L’ordre finalisé des transactions correspond à leur ordre observé dans le réseau. Ci-après, nous considérons les problèmes d'équité qui pourraient survenir au niveau de la couche réseau elle-même. Les traders à haute fréquence sur les marchés électroniques conventionnels investissent des sommes considérables ressources pour obtenir une vitesse de réseau supérieure [64], et les traders sur les bourses de crypto-monnaie présentent un comportement similaire [90]. La vitesse du réseau confère un avantage à la fois observer les transactions des autres parties et soumettre des transactions concurrentes. Un remède déployé dans la pratique et popularisé dans le livre Flash Boys [155] est le « ralentisseur » introduit initialement dans l'échange IEX [128] et plus tard dans d'autres échanges [179] (avec résultats mitigés [19]). Ce mécanisme impose un délai (350 microsecondes en IEX) à l'accès au marché, dans le but de neutraliser les avantages en vitesse. Des preuves empiriques, par ex. [128], soutient son efficacité à diminuer certains échanges coûts pour les investisseurs ordinaires. FSS peut être utilisé simplement pour mettre en œuvre un système asymétrique. ralentisseur – celui qui retarde les transactions entrantes. Budish, Cramton et Shim [64] soutiennent que l'exploitation des avantages de la vitesse est incontournable sur les marchés en temps continu, et plaident en faveur d'un remède structurel dans le forme de marchés basés sur des enchères par lots. Mais cette approche n’a pas été largement adoptée sur les plateformes de trading existantes. Les systèmes commerciaux conventionnels sont centralisés et reçoivent généralement des transactions via une seule connexion réseau. En revanche, dans un système décentralisé, il est possible de observez la propagation des transactions à partir de plusieurs points de vue. Par conséquent, il est possible d’observer des comportements tels que l’inondation du réseau dans un réseau P2P. Nous avons l'intention explorer les approches de couche réseau du FSS qui aident les développeurs à spécifier des politiques interdire de tels comportements de réseau indésirables.5.5 Politiques d’équité au niveau de l’entité L’équité des ordres et la causalité sécurisée visent à imposer un ordre aux transactions qui respecte l’époque à laquelle ils ont été créés et soumis pour la première fois au réseau. Une limite de cette notion d'équité est qu'elle n'empêche pas les attaques dans lesquelles un adversaire obtient un avantage en inondant un système avec de nombreuses transactions, une stratégie observée dans la nature comme moyen d'effectuer des transactions efficaces dans les ventes token [159] et de créer une congestion entraînant la liquidation des positions de dette garantie (CDP) [48]. En d’autres termes, l’équité de l’ordre impose l’équité à l’égard des transactions, et non des joueurs. Tel que démontré dans le système CanDID [160], il est possible d'utiliser des outils oracle tels que DECO ou crieur public en collaboration avec un comité de nœuds (tels qu'un DON) pour atteindre diverses formes de résistance Sybil tout en protégeant la vie privée. Les utilisateurs peuvent enregistrer des identités et fournir la preuve de leur caractère unique sans divulguer leur identité. Les informations d’identification résistantes à Sybil offrent une approche possible pour enrichir l’ordre des transactions politiques de manière à limiter les possibilités d’attaques par inondations. Par exemple, un La vente token peut autoriser une seule transaction par utilisateur enregistré, lorsque l'inscription nécessite une preuve du caractère unique d'un identifiant national, tel qu'un numéro de sécurité sociale. Une telle approche n’est pas infaillible, mais peut s’avérer utile pour atténuer les attaques par inondation de transactions.
Dịch vụ sắp xếp công bằng
Một dịch vụ quan trọng mà chúng tôi mong đợi DON sẽ cung cấp nhằm tận dụng khả năng kết nối mạng, tính toán và lưu trữ của họ được gọi là Dịch vụ tuần tự công bằng (FSS). Mặc dù FSS có thể được xem đơn giản là một ứng dụng được triển khai trong khuôn khổ DON nhưng chúng tôi nhấn mạnh đây là một dịch vụ mà chúng tôi tin rằng sẽ có nhu cầu cao trên toàn thế giới. blockchains và chúng tôi mong đợi mạng Chainlink sẽ tích cực hỗ trợ. Khi được thực thi trên các mạng blockchain công cộng, nhiều ứng dụng DeFi ngày nay tiết lộ thông tin mà người dùng có thể khai thác vì lợi ích riêng của họ, tương tự như các loại rò rỉ nội bộ và các cơ hội thao túng đang tràn lan trong thị trường [64, 155]. Thay vào đó, FSS mở đường hướng tới một hệ sinh thái DeFi công bằng. FSS giúp các nhà phát triển xây dựng các hợp đồng DeFi được bảo vệ khỏi sự thao túng thị trường do rò rỉ thông tin. Với những vấn đề chúng tôi nêu dưới đây, FSS là đặc biệt hấp dẫn đối với các dịch vụ lớp 2 và phù hợp trong khuôn khổ các dịch vụ đó mà chúng ta thảo luận ở Phần 6. Thử thách: Trong các hệ thống không được phép hiện có, các giao dịch được sắp xếp hoàn toàn theo quyết định của thợ mỏ. Trong các mạng được phép, các nút validator có thể phát huy tác dụng sức mạnh như nhau. Đây là một hình thức tập trung nhất thời phần lớn không được công nhận trong các hệ thống phi tập trung khác. Người khai thác có thể (tạm thời) kiểm duyệt các giao dịch của mình lợi ích riêng [171] hoặc sắp xếp lại chúng để tối đa hóa lợi ích của chính nó, một khái niệm được gọi là giá trị có thể khai thác được (MEV) [90]. Thuật ngữ MEV hơi gây nhầm lẫn: Nó không đề cập đến chỉ với giá trị mà người khai thác có thể nắm bắt: Một số MEV có thể được người dùng thông thường nắm bắt. Tuy nhiên, do thợ đào có nhiều quyền lực hơn người dùng thông thường nên MEV đại diện cho giới hạn trên về lượng giá trị mà bất kỳ thực thể nào có thể có được thông qua việc sắp xếp lại đối nghịch. và chèn giao dịch bổ sung. Ngay cả khi thợ mỏ yêu cầu giao dịch một cách đơn giản dựa trên phí (gas), không cần thao túng, người dùng có thể tự mình thao túng giá gas để tạo thuận lợi cho các giao dịch của họ so với những giao dịch kém tinh vi hơn. Daian và cộng sự. [90] ghi lại và định lượng các cách mà bot (không phải thợ mỏ) thực hiện lợi dụng động lực học khí theo cách gây hại cho người dùng hệ thống DeFi ngày nay và cách thức MEV thậm chí còn đe dọa sự ổn định của lớp đồng thuận cơ bản trong blockchain. Các ví dụ khác về thao túng lệnh giao dịch thường xuyên xuất hiện, ví dụ: [50, 154].Các phương thức xử lý giao dịch mới như rollups là một cách tiếp cận rất hứa hẹn đối với các vấn đề mở rộng quy mô của blockchains thông lượng cao. Tuy nhiên, họ không đề cập đến vấn đề MEV Thay vào đó, họ chuyển nó sang thực thể tạo ra rollup. Đó thực thể, dù là người vận hành smart contract hay người dùng cung cấp (zk-)rollup với bằng chứng hợp lệ, có quyền ra lệnh và chèn các giao dịch. Nói cách khác, rollups hoán đổi MEV lấy REV: Giá trị có thể trích xuất tổng hợp. MEV ảnh hưởng đến các giao dịch sắp tới đã được gửi tới mempool nhưng chưa được cam kết trên chuỗi. Thông tin về các giao dịch như vậy được phổ biến rộng rãi có sẵn trong mạng. Người khai thác, validator và người tham gia mạng thông thường có thể do đó khai thác kiến thức này và tạo ra các giao dịch phụ thuộc. Ngoài ra, người khai thác và validator có thể ảnh hưởng đến thứ tự của các giao dịch mà họ thực hiện và khai thác điều này để có lợi cho mình. Vấn đề ảnh hưởng quá mức của lãnh đạo đến việc sắp xếp giao dịch theo sự đồng thuận các giao thức đã được biết đến trong tài liệu từ những năm 1990 [71, 190], nhưng chưa thỏa mãn các giải pháp đã được hiện thực hóa trong thực tế cho đến nay [97]. Lý do chính là các giải pháp được đề xuất – ít nhất cho đến gần đây – không thể dễ dàng tích hợp với các giải pháp công cộng. blockchains, vì chúng dựa vào nội dung của các giao dịch được giữ bí mật cho đến sau đó thứ tự của chúng đã được xác định. Tổng quan về Dịch vụ tuần tự công bằng (FSS): DONs sẽ cung cấp các công cụ để phân cấp việc đặt hàng giao dịch và triển khai nó theo chính sách được chỉ định bởi một cơ quan phụ thuộc người tạo hợp đồng, lý tưởng nhất là người tạo ra hợp đồng công bằng và không mang lại lợi ích cho những người muốn Thao tác đặt hàng giao dịch. Nói chung, các công cụ này tạo thành FSS. FSS bao gồm ba thành phần. Đầu tiên là giám sát các giao dịch. Trong FSS, Các nút oracle trong O đều giám sát bộ nhớ của MAINCHAIN và cho phép (nếu muốn) gửi các giao dịch ngoài chuỗi thông qua một kênh chuyên biệt. Thứ hai là trình tự các giao dịch. Các nút trong giao dịch theo thứ tự O cho một hợp đồng dựa trên theo chính sách được xác định cho hợp đồng đó. Thứ ba là đăng tải các giao dịch. Sau khi các giao dịch được sắp xếp, các nút trong O cùng nhau gửi các giao dịch đến chuỗi chính. Những lợi ích tiềm năng của FSS bao gồm: • Tính công bằng của đơn hàng: FSS bao gồm các công cụ giúp nhà phát triển đảm bảo rằng các giao dịch đầu vào của một hợp đồng cụ thể được sắp xếp theo cách không gây ra sự thiếu công bằng lợi thế cho người dùng có nguồn lực tốt và/hoặc hiểu biết về kỹ thuật. Chính sách đặt hàng có thể được chỉ định cho mục đích này. • Giảm hoặc loại bỏ rò rỉ thông tin: Bằng cách đảm bảo rằng những người tham gia mạng không thể khai thác kiến thức về các giao dịch sắp tới, FSS có thể giảm bớt hoặc loại bỏ các cuộc tấn công như chạy trước dựa trên thông tin có sẵn trong mạng trước khi giao dịch được thực hiện. Ngăn chặn việc khai thác như vậy rò rỉ đảm bảo rằng các giao dịch đối nghịch phụ thuộc vào bản gốc đang chờ xử lý giao dịch không thể vào sổ cái trước khi giao dịch ban đầu được thực hiện.• Giảm chi phí giao dịch: Bằng cách loại bỏ yêu cầu của người chơi về tốc độ gửi giao dịch của họ tới smart contract, FSS có thể giảm đáng kể chi phí xử lý giao dịch. • Thứ tự ưu tiên: FSS có thể tự động ưu tiên đặc biệt cho các giao dịch quan trọng đặt hàng. Ví dụ: để ngăn chặn các cuộc tấn công trực tiếp chống lại oracle báo cáo, ví dụ: [79], FSS có thể chèn báo cáo oracle vào luồng giao dịch hồi tố. Mục tiêu bao quát của FSS trong DONs là trao quyền cho DeFi người sáng tạo để thực hiện công bằng hệ thống tài chính, nghĩa là các hệ thống không mang lại lợi ích cho người dùng (hoặc thợ mỏ) cụ thể hơn người khác trên cơ sở tốc độ, kiến thức nội bộ hoặc khả năng thực hiện kỹ thuật thao túng. Trong khi một khái niệm chung chung và sắc nét về sự công bằng là khó nắm bắt, thì sự công bằng hoàn hảo trong mọi ý nghĩa hợp lý đều không thể đạt được, FSS nhằm mục đích cung cấp cho các nhà phát triển một giải pháp mạnh mẽ bộ công cụ để họ có thể thực thi các chính sách giúp đáp ứng mục tiêu thiết kế của họ cho DeFi. Chúng tôi lưu ý rằng mặc dù mục tiêu chính của FSS là hoạt động như một dịch vụ giải trình tự công bằng cho MAINCHAIN mà DON nhắm tới, một số mong muốn công bằng tương tự như FSS đảm bảo cũng có thể phù hợp với các giao thức (phi tập trung) được chạy giữa DON bữa tiệc. Do đó, FSS có thể được xem rộng hơn như một dịch vụ được cung cấp bởi một tập hợp con trong số DON nút có trình tự khá hợp lý, không chỉ các giao dịch được gửi bởi người dùng MAINCHAIN mà còn cả các giao dịch (tức là tin nhắn) được chia sẻ giữa các nút DON khác. Trong phần này, chúng tôi sẽ tập trung chủ yếu vào mục tiêu sắp xếp thứ tự các giao dịch MAINCHAIN. Tổ chức phần: Trong Phần 5.1, chúng tôi mô tả hai ứng dụng cấp cao thúc đẩy thiết kế FSS: ngăn chặn việc chạy trước các báo cáo oracle và ngăn chặn chạy trước các giao dịch của người dùng. Sau đó chúng tôi cung cấp thêm chi tiết về thiết kế của FSS trong Phần 5.2. Phần 5.3 mô tả các ví dụ về đảm bảo trật tự công bằng và các biện pháp để đạt được chúng. Cuối cùng, Phần 5.4 và Phần 5.5 thảo luận về các mối đe dọa ở cấp độ mạng đối với các chính sách và phương tiện đó để giải quyết chúng, tương ứng với tình trạng tràn mạng và Sybil các cuộc tấn công. 5.1 Vấn đề chạy trước Để giải thích các mục tiêu và thiết kế của FSS, chúng tôi mô tả hai dạng chung của hoạt động chạy trước các cuộc tấn công và những hạn chế của các giải pháp hiện có. Chạy trước minh họa một lớp về các cuộc tấn công đặt hàng giao dịch: Có một số cuộc tấn công liên quan như chạy ngược và xen kẽ (chạy trước và chạy sau) [237] mà chúng tôi không đề cập đến ở đây, nhưng FSS nào cũng giúp giải quyết. 5.1.1 Oracle chạy trước Với vai trò truyền thống là cung cấp dữ liệu ngoài chuỗi cho blockchain ứng dụng, oracles trở thành mục tiêu tự nhiên cho các cuộc tấn công trực diện.Hãy xem xét mẫu thiết kế phổ biến về việc sử dụng oracle để cung cấp các nguồn cấp dữ liệu giá khác nhau đến trao đổi trên chuỗi: định kỳ (giả sử mỗi giờ), oracle thu thập dữ liệu giá cho các tài sản khác nhau và gửi chúng tới một hợp đồng trao đổi. Các giao dịch dữ liệu giá này đưa ra các cơ hội chênh lệch giá rõ ràng: Ví dụ: nếu báo cáo oracle mới nhất liệt kê giá cao hơn nhiều cho một số nội dung, đối thủ có thể chạy trước báo cáo oracle tới mua tài sản và bán lại ngay sau khi báo cáo của oracle được xử lý. Giảm tốc độ và định giá hồi tố: Một giải pháp tự nhiên cho vấn đề chạy trước oracle là ưu tiên đặc biệt cho các báo cáo của oracle so với các giao dịch khác. cho ví dụ: oracle báo cáo có thể được gửi với mức phí cao để khuyến khích người khai thác xử lý họ đầu tiên. Nhưng điều này sẽ không ngăn cản việc chạy trước nếu cơ hội kinh doanh chênh lệch giá cao, nó cũng không thể ngăn chặn sự chênh lệch giá của chính những người khai thác. Do đó, một số sàn giao dịch đã phải sử dụng đến việc triển khai các “tốc độ tăng tốc” nặng nề hơn, chẳng hạn như xếp hàng các giao dịch của người dùng cho một số khối trước khi xử lý. chúng hoặc điều chỉnh giá trở về trước khi có báo cáo oracle mới. Nhược điểm của các giải pháp này là chúng làm tăng thêm độ phức tạp cho việc thực hiện trao đổi, tăng yêu cầu lưu trữ và do đó chi phí giao dịch, đồng thời làm gián đoạn trải nghiệm người dùng vì việc trao đổi tài sản chỉ được xác nhận sau một khoảng thời gian đáng kể. Cõng: Trước khi chuyển sang FSS, chúng ta thảo luận về việc cõng, một cách khá đơn giản và giải pháp tinh tế cho vấn đề chạy trước oracle. Nó không áp dụng cho địa chỉ Tuy nhiên, chạy trước trong các tình huống khác. Tóm lại, thay vì gửi báo cáo định kỳ tới hợp đồng trên chuỗi, oracles xuất bản các báo cáo đã ký mà người dùng thêm vào giao dịch của họ khi mua hoặc bán tài sản trên chuỗi. Sau đó, sàn giao dịch chỉ cần kiểm tra xem báo cáo có hợp lệ và mới không (ví dụ: oracle có thể ký một phạm vi khối mà báo cáo hợp lệ) và trích xuất nguồn cấp dữ liệu giá có liên quan từ nó. Cách tiếp cận đơn giản này có một số ưu điểm so với cách “tăng tốc” ở trên cách tiếp cận: (1) Hợp đồng trao đổi không cần giữ trạng thái nguồn cấp giá, điều này sẽ dẫn đến chi phí giao dịch thấp hơn; (2) Vì các báo cáo oracle được đăng trên chuỗi khi cần thiết, oracles có thể tạo ra các cập nhật thường xuyên hơn (ví dụ: mỗi phút), do đó giảm thiểu cơ hội chênh lệch giá từ việc chạy trước một báo cáo9; (3) Giao dịch có thể được xác thực ngay lập tức vì chúng luôn bao gồm nguồn cấp dữ liệu giá mới. Tuy nhiên, cách tiếp cận này không hoàn hảo. Đầu tiên, giải pháp cõng này đặt trách nhiệm của người dùng sàn giao dịch là tìm nạp các báo cáo oracle cập nhật và đính kèm chúng vào giao dịch. Thứ hai, mặc dù việc cõng làm giảm thiểu cơ hội kinh doanh chênh lệch giá nhưng nó không thể ngăn chặn hoàn toàn chúng mà không ảnh hưởng đến tính tồn tại của hợp đồng trên chuỗi. Thật vậy, nếu một oracle báo cáo có hiệu lực cho đến khi khối số n nào đó, sau đó giao dịch được gửi tới khối n + 1 sẽ yêu cầu một báo cáo hợp lệ mới. Do sự chậm trễ cố hữu trong việc truyền bá báo cáo từ oracle tới người dùng, báo cáo mới hợp lệ cho khối n + 1 sẽ có 9 Kinh doanh chênh lệch giá chỉ có giá trị nếu chênh lệch có thể khai thác được trong giá tài sản vượt quá chênh lệch không liên quan phí cần thiết để mua và bán tài sản, ví dụ: phí do người khai thác và sàn giao dịch thu.được công bố một khoảng thời gian trước khi khối n + 1 được khai thác, chẳng hạn tại khối n −k, do đó tạo ra một chuỗi k khối trong đó tồn tại cơ hội chênh lệch giá trong thời gian ngắn. Chúng tôi bây giờ hãy mô tả cách FSS khắc phục những hạn chế này. Ưu tiên oracle báo cáo với FSS: FSS có thể giải quyết oracle chạy trước vấn đề bằng cách xây dựng dựa trên giải pháp hỗ trợ ở trên nhưng đẩy mạnh thêm công việc tăng cường các giao dịch với oracle báo cáo cho Mạng Oracle phi tập trung. Ở mức cao, các nút oracle thu thập các giao dịch dành cho trao đổi trên chuỗi, đồng ý về nguồn cấp giá theo thời gian thực và đăng nguồn cấp giá cùng với các giao dịch đã thu thập lên hợp đồng chuỗi chính. Về mặt khái niệm, người ta có thể coi cách tiếp cận này như một “phân nhóm giao dịch tăng cường dữ liệu”, trong đó oracle đảm bảo rằng giao dịch được cập nhật nguồn cấp dữ liệu giá luôn được thêm vào các giao dịch. Các giải pháp FSS có thể được triển khai một cách minh bạch cho người dùng sàn giao dịch và với những thay đổi tối thiểu đối với logic hợp đồng, như chúng tôi mô tả chi tiết hơn trong Phần 5.2. Đảm bảo các báo cáo oracle mới luôn được ưu tiên hơn các giao dịch của người dùng chỉ là một ví dụ của chính sách đặt hàng mà FSS có thể áp dụng và thực thi. Chính sách của FSS nhằm đảm bảo trật tự sự công bằng được mô tả tổng quát hơn ở Phần 5.3. 5.1.2 Giao dịch người dùng chạy trước Bây giờ chúng ta chuyển sang chạy trước trong các ứng dụng chung, trong đó phương pháp bảo vệ ở trên không hoạt động. Vấn đề có thể được nắm bắt rộng rãi thông qua kịch bản sau: Kẻ tấn công nhìn thấy một số giao dịch tx1 của người dùng được gửi vào mạng P2P và tiêm vào giao dịch đối nghịch tx2 của chính nó, do đó tx2 được xử lý trước tx1 (ví dụ: bằng cách thanh toán phí giao dịch cao hơn). Ví dụ, kiểu chạy trước này phổ biến ở các bot khai thác cơ hội chênh lệch giá trong DeFi hệ thống [90] và đã ảnh hưởng đến người dùng các ứng dụng phi tập trung khác nhau [101]. Thiết lập trật tự công bằng giữa các giao dịch được xử lý trên blockchain sẽ giải quyết được vấn đề này. Cơ bản hơn, việc xem chi tiết tx1 đôi khi còn không cần thiết và biết về sự tồn tại đơn thuần của nó có thể cho phép kẻ thù chiếm ưu thế trước tx1 thông qua nó. sở hữu tx2 và lừa gạt người dùng vô tội đã tạo ra tx1. Ví dụ, người dùng có thể được biết là giao dịch một tài sản cụ thể vào thời điểm thường xuyên. Ngăn chặn các cuộc tấn công như vậy đòi hỏi các biện pháp giảm thiểu cũng tránh rò rỉ siêu dữ liệu [62]. Một số giải pháp cho vấn đề này tồn tại, nhưng chúng gây ra sự chậm trễ và những lo ngại về khả năng sử dụng. Từ đơn hàng mạng đến đơn hàng cuối cùng với FSS: Cơ hội đi trước phát sinh do các hệ thống hiện tại không có cơ chế để đảm bảo rằng thứ tự trong đó các giao dịch xuất hiện trên chuỗi tôn trọng thứ tự của các sự kiện và luồng thông tin bên ngoài mạng. Điều này thể hiện sự cố phát sinh từ những thiếu sót trong việc triển khai ứng dụng (ví dụ: nền tảng giao dịch) trên blockchain. Lý tưởng nhất là người ta sẽ đảm bảo rằng các giao dịch được cam kết trên blockchain theo đúng thứ tự như trước đây được tạo và gửi tới mạng P2P của blockchain. Nhưng vì mạng blockchain

được phân phối thì không thể nắm bắt được thứ tự như vậy. Do đó FSS giới thiệu các cơ chế
để bảo vệ khỏi những hành vi vi phạm sự công bằng phát sinh chỉ vì sự phân bổ
bản chất của mạng blockchain.
5.2
Chi tiết FSS
Hình 12:
Mempool hợp lý với hai đường dẫn giao dịch khác nhau:
trực tiếp và
dựa trên mempool.
Hình 12 thể hiện sơ đồ chung của FSS. Để đảm bảo tính công bằng, DON cung cấp FSS phải can thiệp vào luồng giao dịch khi chúng tham gia MAINCHAIN.
Có thể cần phải điều chỉnh đối với khách hàng, đối với smart contract trên MAINCHAIN hoặc đối với cả hai. Ở mức độ cao, việc xử lý các giao dịch bằng FSS có thể được chia thành ba
các giai đoạn được mô tả dưới đây: (1) Giám sát giao dịch; (2) Trình tự giao dịch; và
(3) Đăng tải giao dịch. Tùy thuộc vào phương thức đặt hàng được sử dụng để sắp xếp trình tự giao dịch, cần có các bước giao thức bổ sung, như được mô tả trong phần tiếp theo.
5.2.1
Xử lý giao dịch
Giám sát giao dịch:
Chúng tôi hình dung ra hai cách tiếp cận khác nhau để FSS giám sát
giao dịch của người dùng dành cho một smart contract cụ thể, trực tiếp và dựa trên mempool:
• Trực tiếp: Cách tiếp cận trực tiếp đơn giản nhất về mặt khái niệm nhưng đòi hỏi phải thay đổi
khách hàng người dùng để các giao dịch được gửi trực tiếp đến Oracle phi tập trungCác nút mạng, thay vì các nút của chuỗi chính. DON thu thập
giao dịch của người dùng hướng đến một smart contract SC cụ thể và sắp xếp chúng dựa trên
về một số chính sách đặt hàng. DON sau đó gửi các giao dịch đã đặt hàng tới
smart contract trên chuỗi chính. Một số cơ chế đặt hàng cũng yêu cầu cách tiếp cận trực tiếp vì người dùng tạo giao dịch phải sử dụng mật mã
bảo vệ nó trước khi gửi nó đến FSS.
• Dựa trên Mempool: Để tạo điều kiện thuận lợi cho việc tích hợp FSS với các máy khách cũ, DON
có thể sử dụng Dịch vụ Mempool (MS) để giám sát mempool của chuỗi chính và thu thập
giao dịch.
Truyền trực tiếp có thể là cách thực hiện được ưu tiên cho nhiều hợp đồng,
và chúng tôi tin rằng nó sẽ khá thực tế trong nhiều trường hợp.
Chúng tôi thảo luận ngắn gọn về cách các DApp hiện tại có thể được sửa đổi ở mức tối thiểu để hỗ trợ
truyền trực tiếp trong khi vẫn duy trì trải nghiệm tốt cho người dùng. Chúng tôi mô tả các phương pháp tiếp cận
sử dụng Ethereum và MetaMask [6] vì đây là những lựa chọn phổ biến nhất hiện nay, nhưng
các kỹ thuật được đề cập sẽ mở rộng sang các chuỗi và ví khác. Ethereum gần đây
Đề xuất cải tiến, “EIP-3085: Ví thêm Ethereum phương thức RPC chuỗi” [100],
sẽ giúp dễ dàng nhắm mục tiêu các chuỗi Ethereum tùy chỉnh (sử dụng ID CHAIN khác với
của MAINCHAIN để ngăn chặn các cuộc tấn công lặp lại) từ MetaMask và các ví dựa trên trình duyệt khác. Sau khi triển khai đề xuất này, DApp đang tìm cách sử dụng DON
chỉ cần thêm một lệnh gọi phương thức vào giao diện người dùng của họ để có thể truyền trực tiếp
giao dịch với bất kỳ DON nào có API tương thích với Ethereum. Trong khi đó,
“EIP-712: Ethereum đã nhập dữ liệu có cấu trúc hash nhập và ký” [49] cung cấp một chút
giải pháp thay thế có liên quan nhiều hơn nhưng đã được triển khai rộng rãi, nơi người dùng DApp có thể sử dụng
MetaMask để ký dữ liệu có cấu trúc chỉ định giao dịch DON. DApp có thể gửi
dữ liệu có cấu trúc đã được ký này vào DON.
Cuối cùng, chúng tôi lưu ý rằng các phương pháp kết hợp cũng có thể thực hiện được.
Ví dụ, di sản
khách hàng có thể tiếp tục gửi giao dịch vào mempool của chuỗi chính, nhưng điều quan trọng là
các giao dịch (ví dụ: báo cáo oracle) được gửi trực tiếp đến DON nút (cụ thể là
tập hợp các nút cung cấp oracle báo cáo chẳng hạn như cập nhật nguồn cấp dữ liệu giá và tập hợp các nút
việc cung cấp FSS có thể trùng lặp hoặc giống hệt nhau).
Trình tự giao dịch:
Mục đích chính của FSS là đảm bảo rằng các giao dịch của người dùng được sắp xếp theo chính sách được xác định trước. Bản chất của chính sách này sẽ
tùy thuộc vào nhu cầu của ứng dụng và các loại lệnh giao dịch không công bằng mà nó
nhằm mục đích ngăn chặn.
Vì FSS trên DON có khả năng xử lý dữ liệu và duy trì trạng thái cục bộ,
họ có thể áp đặt chính sách sắp xếp thứ tự tùy ý dựa trên thông tin được
có sẵn tại oracles.
Các chính sách đặt hàng cụ thể và việc triển khai chúng sẽ được thảo luận sau trong Phần 5.3.Đăng giao dịch:
Sau khi thu thập và sắp xếp các giao dịch của người dùng, nhận trực tiếp từ người dùng hoặc được thu thập từ mempool, DON sẽ gửi các giao dịch này đến chuỗi chính. Do đó, các tương tác của DON với chuỗi chính vẫn được duy trì
tùy thuộc vào thứ tự giao dịch (có khả năng không công bằng) được quản lý bởi các thợ mỏ của chuỗi chính. Để khai thác lợi ích của việc đặt hàng giao dịch phi tập trung, mục tiêu thông minh
do đó, hợp đồng SC phải được thiết kế để đối xử với DON như một công dân “hạng nhất”. Chúng tôi
phân biệt hai cách tiếp cận:
• Hợp đồng chỉ DON: Tùy chọn thiết kế đơn giản nhất là có chuỗi chính thông minh
hợp đồng SC chỉ chấp nhận các giao dịch đã được xử lý bởi DON. Cái này
đảm bảo rằng smart contract xử lý các giao dịch theo thứ tự được đề xuất bởi
DON, nhưng trên thực tế hạn chế smart contract hoạt động trong hệ thống dựa trên ủy ban (tức là ủy ban DON hiện có quyền liên tục để xác định
đặt hàng và bao gồm các giao dịch).
• Hợp đồng hai lớp: Thiết kế được ưu tiên, chi tiết hơn có chuỗi chính thông minh
hợp đồng SC chấp nhận các giao dịch có nguồn gốc từ cả DON và từ kế thừa
người dùng,10 nhưng đặt những "gờ giảm tốc" truyền thống đối với các giao dịch không được DON xử lý. Ví dụ: các giao dịch từ DON có thể được xử lý
ngay lập tức, trong khi các giao dịch kế thừa được smart contract “đệm” cho
một khoảng thời gian nhất định. Các cơ chế tiêu chuẩn khác để ngăn chặn việc chạy trước
chẳng hạn như các kế hoạch tiết lộ cam kết hoặc VDF [53] cũng có thể được áp dụng cho các kế hoạch cũ
giao dịch. Điều này đảm bảo rằng các giao dịch theo thứ tự DON được xử lý trong
mệnh lệnh đã được thống nhất mà không trao cho DON quyền kiểm duyệt không mong muốn
giao dịch.
Do việc FSS áp dụng thứ tự giao dịch yêu cầu các giao dịch phải được tổng hợp “ngoài chuỗi”, nên giải pháp này được kết hợp một cách tự nhiên với các kỹ thuật tổng hợp khác nhằm giảm chi phí xử lý trên chuỗi. Ví dụ, sau khi thu thập và
đặt hàng các giao dịch, DON có thể gửi các giao dịch này đến chuỗi chính dưới dạng
"giao dịch theo đợt" duy nhất (ví dụ: rollup), do đó làm giảm giao dịch tổng hợp
phí.
Thực thi lệnh giao dịch:
Dù ở thiết kế chỉ DON hay thiết kế hai lớp,
chuỗi chính smart contract SC và DON phải được đồng thiết kế để đảm bảo rằng thứ tự giao dịch của DON được duy trì. Ở đây cũng vậy, chúng tôi hình dung khác nhau
tùy chọn thiết kế:
• Số thứ tự: DON có thể thêm số thứ tự vào mỗi giao dịch và gửi các giao dịch này vào mempool của chuỗi chính.
chính
10Nếu việc giám sát giao dịch của DON dựa trên mempool thì các giao dịch kế thừa phải được phân biệt với các giao dịch DON để chúng không bị DON thu thập, ví dụ: thông qua một thẻ đặc biệt
được nhúng vào giao dịch hoặc bằng cách chỉ định một mức giá gas cụ thể, ví dụ: DON giao dịch có gas
giá dưới một ngưỡng nhất định.chuỗi smart contract SC bỏ qua các giao dịch đến “không theo trình tự”. Chúng tôi
lưu ý rằng trong cài đặt này, người khai thác chuỗi chính có thể quyết định bỏ qua DON
đặt hàng giao dịch, do đó làm cho giao dịch thất bại. Có thể bằng cách giữ trạng thái (đắt) để SC thực thi thứ tự giao dịch chính xác, phần nào
tương tự như cách TCP đệm các gói không đúng thứ tự cho đến khi các gói bị thiếu được
đã nhận được.
• Giao dịch nonce: Đối với nhiều blockchain và đặc biệt đối với Ethereum,
Cách tiếp cận đánh số thứ tự ở trên có thể tận dụng giao dịch tích hợp nonces để
buộc chuỗi chính smart contract SC xử lý các giao dịch theo trình tự.
Tại đây, các nút DON gửi giao dịch đến chuỗi chính thông qua một tài khoản chuỗi chính duy nhất, được bảo vệ bằng khóa được chia sẻ giữa các nút DON. Tài khoản của
giao dịch nonce đảm bảo rằng các giao dịch được khai thác và xử lý theo đúng thứ tự.
• Tổng hợp các giao dịch: DON có thể tổng hợp nhiều giao dịch trong rollup
(hoặc trong một gói tương tự như rollup). Chuỗi chính smart contract cần phải được
được thiết kế để xử lý các giao dịch tổng hợp như vậy.
• Tổng hợp các giao dịch bằng proxy chuỗi chính: Ở đây, DON tương tự gói các giao dịch thành một “giao dịch meta” cho chuỗi chính, nhưng dựa vào một
proxy tùy chỉnh smart contract để giải nén các giao dịch và chuyển tiếp chúng tới
hợp đồng mục tiêu SC. Kỹ thuật này có thể hữu ích cho khả năng tương thích cũ. Siêu giao dịch hoạt động giống như rollup nhưng khác ở chỗ chúng bao gồm một giao dịch không nén
danh sách các giao dịch được đăng một lần lên chuỗi chính.
Thiết kế cuối cùng có ưu điểm là hỗ trợ liền mạch các giao dịch của người dùng
bản thân họ được ủy quyền thông qua hợp đồng chuỗi chính trước khi đạt được mục tiêu của DON
hợp đồng SC. Ví dụ: hãy xem xét một người dùng gửi giao dịch đến một số ví
hợp đồng, sau đó sẽ gửi một giao dịch nội bộ tới SC. Chỉ định một trình tự
số lượng giao dịch như vậy sẽ rất phức tạp, trừ khi hợp đồng ví của người dùng được
được thiết kế đặc biệt để chuyển tiếp số thứ tự với mọi giao dịch nội bộ tới
SC.
Tương tự, các giao dịch nội bộ như vậy không thể dễ dàng tổng hợp thành siêu giao dịch được gửi trực tiếp đến SC. Chúng tôi thảo luận thêm về những cân nhắc thiết kế cho
các giao dịch ủy quyền dưới đây.
5.2.2
Tính nguyên tử của giao dịch
Cuộc thảo luận của chúng ta cho đến nay đã ngầm giả định rằng các giao dịch tương tác với một
trên chuỗi smart contract (ví dụ: người dùng gửi yêu cầu mua tới một sàn giao dịch). Tuy nhiên, trong
các hệ thống như Ethereum, một giao dịch có thể bao gồm nhiều giao dịch nội bộ, ví dụ: một smart contract gọi một hàm trong một hợp đồng khác. Dưới đây, chúng tôi
mô tả hai chiến lược cấp cao để sắp xếp các giao dịch “nhiều hợp đồng”, trong khi
duy trì tính nguyên tử của giao dịch (tức là chuỗi hành động được quy định bởi
tất cả các giao dịch đều được thực hiện theo đúng thứ tự hoặc hoàn toàn không).Tính nguyên tử mạnh:
Giải pháp đơn giản nhất là áp dụng FSS, như được mô tả ở trên, trực tiếp cho toàn bộ giao dịch “nhiều hợp đồng”. Nghĩa là, người dùng gửi giao dịch của họ
vào mạng và FSS giám sát, sắp xếp và đăng các giao dịch này lên
chuỗi chính.
Cách tiếp cận này đơn giản về mặt kỹ thuật nhưng có một hạn chế tiềm ẩn: Nếu người dùng
giao dịch tương tác với hai hợp đồng SC1 và SC2 đều muốn tận dụng công bằng
các dịch vụ sắp xếp thứ tự thì chính sách sắp xếp thứ tự của hai hợp đồng này phải nhất quán. Nghĩa là, với hai giao dịch tx1 và tx2 khác nhau mà mỗi giao dịch tương tác với
cả SC1 và SC2, không được xảy ra trường hợp chính sách của SC1 đặt hàng tx1 trước tx2
trong khi chính sách của SC2 lại quy định thứ tự ngược lại.
Đối với phần lớn các kịch bản quan tâm, chúng tôi hình dung rằng các chính sách trình tự được áp dụng bởi các hợp đồng khác nhau sẽ nhất quán. Ví dụ: cả SC1 và SC2
có thể muốn các giao dịch được sắp xếp theo thời gian đến gần đúng của chúng trong mempool,
và SC1 có thể muốn một số báo cáo oracle nhất định luôn được gửi trước. Như
sau đó oracle báo cáo các giao dịch không tương tác với SC2, các chính sách đều nhất quán.
Tính nguyên tử yếu:
Nói chung, FSS có thể được áp dụng ở cấp độ cá nhân
giao dịch nội bộ.
Xét các giao dịch có dạng tx = { ˜txpre, ˜txSC, ˜txpost}, bao gồm một số giao dịch ban đầu
(các) giao dịch ˜txpre, dẫn đến một giao dịch nội bộ ˜txSC tới SC, do đó
phát hành (các) giao dịch nội bộ ˜txpost. Chính sách giải trình tự của SC có thể xác định cách thức
giao dịch nội bộ ˜txSC phải được sắp xếp theo các giao dịch khác được gửi
tới SC, nhưng để ngỏ thứ tự tuần tự cho txpre vàtxpost.
Do bản chất của việc xử lý giao dịch trong các hệ thống như Ethereum, việc phát triển dịch vụ tuần tự hướng tới các giao dịch nội bộ cụ thể không hề đơn giản. Với hợp đồng SC được thiết kế đặc biệt, điều này có thể được thực hiện như sau:
1. Giao dịch tx được gửi vào mạng và được khai thác (không có bất kỳ trình tự nào
được thực hiện bởi FSS). ˜txpre ban đầu được thực thi và gọi ˜txSC.
2. SC không thực thi txSC và trả về.
3. FSS giám sát các giao dịch nội bộ tới SC, sắp xếp chúng và gửi lại chúng
tới SC (tức là bằng cách gửi giao dịch ˜txSC trực tiếp đến SC).
4. SC xử lý các giao dịchtxSC nhận được từ FSS và phát hành các giao dịch nội bộ txpost phát sinh từtxSC.
Với cách tiếp cận này, các giao dịch không được thực hiện hoàn toàn nguyên tử (tức là giao dịch gốc
giao dịch tx được chia thành nhiều giao dịch trên chuỗi), nhưng thứ tự của
giao dịch nội bộ được bảo tồn.
Giải pháp này đòi hỏi một số hạn chế về thiết kế. Ví dụ: ‘txpre không thể
giả sử rằng ˜txSC và ˜txpost sẽ được thực thi. Hơn nữa, SC nên được thiết kế sao cho
thực hiện các giao dịch ˜txSC và ˜txpost thay mặt cho một người dùng nhất định, ngay cả khi họđược gửi bởi FSS. Vì những lý do này, giải pháp “Tính nguyên tử mạnh” chi tiết hơn
ở trên có thể thích hợp hơn trong thực tế.
Để tôn trọng sự phụ thuộc phức tạp hơn, liên quan đến nhiều giao dịch và
các giao dịch nội bộ tương ứng của họ, bộ lập lịch giao dịch của FSS có thể chứa
các chức năng phức tạp giống với các chức năng được tìm thấy trong các trình quản lý giao dịch của quan hệ
những người quản lý cơ sở dữ liệu.
5.3
Trình tự giao dịch công bằng
Ở đây chúng ta thảo luận về hai khái niệm về tính công bằng trong trình tự giao dịch và các triển khai tương ứng, có thể được FSS nhận ra: tính công bằng của trật tự dựa trên chính sách
do FSS áp đặt và bảo toàn quan hệ nhân quả, đòi hỏi các phương pháp mã hóa bổ sung trong FSS.
Trật tự-công bằng:
Công bằng trật tự là một khái niệm về sự công bằng tạm thời trong các giao thức đồng thuận
lần đầu tiên được giới thiệu chính thức bởi Kelkar et al. [144].
Kelkar và cộng sự. nhằm đạt được một hình thức chính sách tự nhiên trong đó các giao dịch được thực hiện
được sắp xếp dựa trên thời gian chúng được nhận lần đầu tiên bởi DON (hoặc mạng P2P,
trong trường hợp FSS dựa trên mempool). Tuy nhiên, trong một hệ thống phi tập trung, khác nhau
các nút có thể thấy các giao dịch đến theo thứ tự khác nhau.
Thiết lập một trật tự tổng thể
trên tất cả các giao dịch chính là vấn đề được giải quyết bằng giao thức đồng thuận cơ bản
CHUỖI MAIN.
Kelkar và cộng sự. [144] do đó đưa ra một khái niệm yếu hơn có thể
đạt được với sự trợ giúp của Mạng Oracle phi tập trung, được gọi là “sự công bằng theo thứ tự khối”.
Nó nhóm các giao dịch mà DON đã nhận được trong một khoảng thời gian thành một
“chặn” và chèn tất cả các giao dịch của khối một cách đồng thời và ở cùng một vị trí
(tức là chiều cao) vào MAINCHAIN. Do đó, chúng được sắp xếp cùng nhau và phải có thể thực thi được
song song mà không tạo ra bất kỳ xung đột nào giữa chúng.
Nói một cách đại khái, tính công bằng trật tự phát biểu rằng nếu một phần lớn các nút nhìn thấy giao dịch τ1 trước τ2, thì
τ1 sẽ được sắp xếp trước hoặc trong cùng khối với τ2. Bằng cách áp đặt một cách thô thiển như vậy
mức độ chi tiết của lệnh giao dịch, cơ hội cho các cuộc tấn công chạy trước và các cuộc tấn công liên quan đến lệnh khác sẽ giảm đi đáng kể.
Kelkar và cộng sự. đề xuất một họ giao thức có tên là Aequitas [144], địa chỉ
các mô hình triển khai khác nhau, bao gồm cài đặt mạng đồng bộ, đồng bộ một phần và không đồng bộ. Các giao thức Aequitas áp đặt chi phí liên lạc đáng kể so với sự đồng thuận cơ bản BFT và do đó không lý tưởng để sử dụng thực tế.
Tuy nhiên, chúng tôi tin rằng các biến thể thực tế của Aequitas sẽ xuất hiện và có thể được sử dụng
để giải trình tự giao dịch trong FSS và các ứng dụng khác. Một số sơ đồ liên quan có
đã được đề xuất có ít chủ nghĩa hình thức đi kèm hơn và các đặc tính yếu hơn,
ví dụ: [36, 151, 236], nhưng hiệu suất thực tế tốt hơn. Những kế hoạch này có thể được hỗ trợ
trong FSS cũng vậy.
Cũng cần lưu ý rằng thuật ngữ “công bằng” xuất hiện ở nơi khác trong blockchain
văn học với một ý nghĩa khác, cụ thể là sự công bằng trong ý nghĩa cơ hội chocông cụ khai thác tỷ lệ thuận với tài nguyên đã cam kết của họ [106, 181] hoặc cho validators tính theo
cơ hội bình đẳng [153].
Bảo toàn nhân quả:
Cách tiếp cận được biết đến rộng rãi nhất để ngăn chặn việc chạy trước và các hành vi vi phạm trật tự khác trong các nền tảng phân tán dựa vào mật mã.
kỹ thuật. Đặc điểm chung của chúng là ẩn dữ liệu giao dịch, đợi đến khi
trật tự ở lớp đồng thuận đã được thiết lập và tiết lộ dữ liệu giao dịch
sau để xử lý. Điều này duy trì trật tự nhân quả giữa các giao dịch được thực hiện
được thực thi bởi blockchain. Các khái niệm bảo mật và giao thức mật mã có liên quan
đã được phát triển đáng kể trước sự ra đời của blockchains [71, 190].
Các điều kiện bảo mật của “quan hệ nhân quả đầu vào” [190] và “bảo toàn quan hệ nhân quả” [71, 97] yêu cầu chính thức rằng không có thông tin nào về giao dịch được biết đến
trước khi vị trí của giao dịch này trong trật tự toàn cầu được xác định. Kẻ thù không được phép suy ra bất kỳ thông tin nào cho đến thời điểm đó, dưới dạng mật mã.
giác quan mạnh mẽ.
Người ta có thể phân biệt bốn kỹ thuật mật mã để bảo toàn quan hệ nhân quả:
• Giao thức tiết lộ cam kết [29, 142, 145]: Thay vì công bố giao dịch
rõ ràng, chỉ có cam kết mật mã đối với giao dịch được phát đi. Sau khi tất cả các giao dịch đã cam kết nhưng bị ẩn đã được đặt hàng (vào đầu blockchain
hệ thống trên chính MAINCHAIN, nhưng ở đây là bởi FSS), người gửi phải mở cam kết và tiết lộ dữ liệu giao dịch trong một khoảng thời gian định trước.
Sau đó, mạng sẽ xác minh rằng việc mở có đáp ứng được cam kết trước đó hay không. các
nguồn gốc của phương pháp này có từ trước khi blockchains ra đời.
Mặc dù nó đặc biệt đơn giản nhưng cách tiếp cận này có những hạn chế đáng kể và không dễ áp dụng vì hai lý do. Đầu tiên, vì chỉ có cam kết tồn tại ở cấp độ giao thức đặt hàng nên ngữ nghĩa của giao dịch
không thể được xác nhận trong quá trình đồng thuận. Một chuyến khứ hồi bổ sung cho khách hàng
được yêu cầu. Tuy nhiên, nghiêm trọng hơn, cân nhắc khả năng không có sự mở cửa nào có thể
bao giờ đến, điều này có thể dẫn đến một cuộc tấn công từ chối dịch vụ. Hơn nữa, nó
thật khó để xác định liệu phần mở đầu có hợp lệ trong một cách nhất quán, phân tán hay không
theo cách này bởi vì tất cả những người tham gia phải đồng ý về việc liệu thời điểm khai mạc đã đến
thời gian.
• Các giao thức tiết lộ cam kết có quá trình khôi phục bị trì hoãn [145]: Một thách thức với
Cách tiếp cận cam kết tiết lộ là khách hàng có thể cam kết thực hiện một giao dịch theo cách suy đoán và chỉ tiết lộ nó sau này nếu các giao dịch tiếp theo mang lại lợi nhuận. A
biến thể gần đây của phương pháp tiết lộ cam kết cải thiện khả năng phục hồi chống lại điều này
loại hành vi sai trái. Đặc biệt, giao thức TEX [145] giải quyết vấn đề này
sử dụng một cách tiếp cận thông minh trong đó các giao dịch được mã hóa bao gồm khóa giải mã
có thể đạt được bằng cách tính toán hàm trễ có thể kiểm chứng (VDF) [53, 221]. Nếu một khách hàng
không giải mã được giao dịch của mình kịp thời, những người khác trong hệ thống sẽ giải mã
nó thay mặt cô ấy bằng cách giải một câu đố mật mã có độ khó vừa phải.• Mã hóa ngưỡng [71, 190]: Phương pháp này khai thác rằng DON có thể thực hiện
hoạt động ngưỡng mật mã. Giả sử FSS duy trì mã hóa công khai
khóa pkO và oracle chia sẻ khóa riêng tương ứng với nhau.
Sau đó, khách hàng mã hóa các giao dịch theo pkO và gửi chúng đến FSS. Đơn đặt hàng FSS
giao dịch trên DON, sau đó giải mã chúng và cuối cùng đưa chúng vào
MAINCHAIN theo thứ tự cố định. Do đó, mã hóa đảm bảo rằng việc đặt hàng được
không dựa trên nội dung giao dịch mà chính dữ liệu đó có sẵn khi
cần thiết.
Phương pháp này ban đầu được đề xuất bởi Reiter và Birman [190] và sau đó được Cachin et al cải tiến. [71], nơi nó được tích hợp với sự đồng thuận được phép
giao thức. Công việc gần đây hơn đã khám phá việc sử dụng mật mã ngưỡng như một
cơ chế mức đồng thuận cho các thông báo chung [33, 97] và cho các tính toán chung với dữ liệu được chia sẻ [41].
So với các giao thức tiết lộ cam kết, mã hóa ngưỡng ngăn chặn các cuộc tấn công từ chối dịch vụ đơn giản (mặc dù cần phải cẩn thận do chi phí tính toán của việc giải mã). Nó cho phép DON hoạt động tự động, theo tốc độ riêng của nó và không cần
chờ đợi những hành động tiếp theo của khách hàng. Các giao dịch có thể được xác thực ngay sau khi chúng được giải mã. Hơn nữa, khách hàng mã hóa tất cả các giao dịch bằng một
khóa cho DON và kiểu giao tiếp vẫn giống như các kiểu khác
giao dịch. Quản lý khóa ngưỡng một cách an toàn và với các nút thay đổi trong
Tuy nhiên, O có thể gây thêm khó khăn.
• Chia sẻ bí mật đã cam kết [97]: Thay vì mã hóa dữ liệu giao dịch theo
khóa được giữ bởi DON, khách hàng cũng có thể chia sẻ bí mật khóa đó cho các nút trong O.
Sử dụng sơ đồ chia sẻ bí mật kết hợp, an toàn về mặt tính toán, giao dịch
được mã hóa đầu tiên bằng mật mã đối xứng với khóa ngẫu nhiên. Chỉ có khóa đối xứng tương ứng mới được chia sẻ và bản mã được gửi tới DON.
Máy khách phải gửi một khóa chia sẻ tới mỗi nút trong O bằng một tin nhắn được mã hóa riêng. Các bước giao thức còn lại tương tự như với ngưỡng
mã hóa, ngoại trừ dữ liệu giao dịch được giải mã bằng cơ chế đối xứng
thuật toán sau khi xây dựng lại khóa cho mỗi giao dịch từ các chia sẻ của nó.
Phương pháp này không yêu cầu thiết lập hoặc quản lý hệ thống mật mã khóa công khai
được liên kết với DON. Tuy nhiên, khách hàng phải nhận thức được các nút trong
O và liên lạc trong bối cảnh an toàn với từng người trong số họ, nơi đặt
thêm gánh nặng cho khách hàng.
Mặc dù các phương pháp mật mã cung cấp sự bảo vệ hoàn toàn chống lại thông tin
rò rỉ từ các giao dịch đã gửi lên mạng, chúng không che giấu siêu dữ liệu. cho
ví dụ: địa chỉ IP hoặc địa chỉ Ethereum của người gửi vẫn có thể được sử dụng bởi
một đối thủ để thực hiện các cuộc tấn công chạy trước và các cuộc tấn công khác. Tăng cường quyền riêng tư khác nhau
các kỹ thuật được triển khai ở lớp mạng, ví dụ: [52, 95, 107] hoặc lớp giao dịch,
ví dụ: [13, 65] sẽ cần thiết để hoàn thành mục tiêu này. Tác động của một phần cụ thể
siêu dữ liệu, cụ thể là giao dịch được gửi đến hợp đồng nào, có thể được che giấu (một phần)thông qua việc ghép nhiều hợp đồng trên cùng một DON. Che giấu mật mã
bản thân các giao dịch cũng không ngăn cản việc ưu tiên các giao dịch do lỗi
DON nút thông đồng với người gửi giao dịch.
Đảm bảo tính nhân quả được đảm bảo bởi các giao thức mật mã bổ sung cho các đảm bảo về tính công bằng trật tự cho bất kỳ chính sách nào và chúng tôi dự định khám phá sự kết hợp của cả hai
phương pháp, nếu điều này có thể. Nếu đối thủ không thể đạt được lợi thế đáng kể từ
quan sát siêu dữ liệu, các giao thức bảo toàn quan hệ nhân quả an toàn có thể được sử dụng cùng với
cũng là một cách tiếp cận đặt hàng ngây thơ. Ví dụ: nút oracle có thể ghi giao dịch
tới L ngay khi họ nhận được chúng mà không bị trùng lặp. Các giao dịch sau đó sẽ được
được sắp xếp theo sự xuất hiện của chúng trên L và sau đó được giải mã.
Chúng tôi cũng có kế hoạch xem xét việc sử dụng TEE như một cách giúp thực thi trật tự công bằng; cho
ví dụ: Tesseract [44] có thể được xem là đạt được một dạng trật tự nhân quả, nhưng một
được củng cố bởi khả năng của TEE xử lý các giao dịch ở dạng rõ ràng trong khi
duy trì tính bảo mật của chúng.
5,4
Những cân nhắc về lớp mạng
Cho đến nay, mô tả của chúng tôi về FSS chủ yếu tập trung vào vấn đề thực thi
thứ tự cuối cùng của các giao dịch khớp với thứ tự được quan sát của chúng trong mạng. Sau đây,
chúng tôi xem xét các vấn đề công bằng có thể phát sinh ở chính lớp mạng.
Các nhà giao dịch tần số cao trong các thị trường điện tử thông thường đầu tư đáng kể
tài nguyên để có được tốc độ mạng vượt trội [64] và các nhà giao dịch trong các sàn giao dịch tiền điện tử thể hiện hành vi tương tự [90]. Tốc độ mạng mang lại lợi thế cả về mặt
giám sát các giao dịch của các bên khác và gửi các giao dịch cạnh tranh.
Một biện pháp khắc phục được triển khai trong thực tế và phổ biến trong cuốn sách Flash Boys [155] là
“tăng tốc” được giới thiệu ban đầu trong sàn giao dịch IEX [128] và sau đó ở sàn giao dịch khác
trao đổi [179] (với kết quả hỗn hợp [19]). Cơ chế này áp đặt độ trễ (350 micro giây trong IEX) khi tiếp cận thị trường, nhằm mục đích vô hiệu hóa các lợi thế trong
tốc độ. Bằng chứng thực nghiệm, ví dụ: [128], hỗ trợ hiệu quả của nó trong việc giảm giao dịch nhất định
chi phí cho các nhà đầu tư thông thường. FSS có thể được sử dụng đơn giản để thực hiện một cơ chế bất đối xứng
giảm tốc độ—làm trì hoãn các giao dịch đến.
Budish, Cramton và Shim [64] cho rằng việc khai thác lợi thế về tốc độ
là không thể tránh khỏi trong các thị trường thời gian liên tục và tranh luận về một biện pháp khắc phục mang tính cơ cấu trong
hình thức thị trường đấu giá hàng loạt. Nhưng cách tiếp cận này chưa được áp dụng rộng rãi
trong các nền tảng giao dịch hiện có.
Các hệ thống giao dịch thông thường được tập trung hóa, thường nhận giao dịch thông qua
một kết nối mạng duy nhất. Ngược lại, trong một hệ thống phi tập trung, có thể
quan sát việc truyền bá giao dịch từ nhiều điểm thuận lợi. Do đó, có thể quan sát các hành vi như tràn mạng trong mạng P2P.
chúng tôi dự định
để khám phá các cách tiếp cận lớp mạng đối với FSS giúp các nhà phát triển chỉ định các chính sách
cấm các hành vi mạng không mong muốn như vậy.5,5
Chính sách công bằng ở cấp độ thực thể
Tính công bằng trong trật tự và tính nhân quả an toàn nhằm mục đích thực thi trật tự đối với các giao dịch
tôn trọng thời điểm chúng được tạo và lần đầu tiên được gửi lên mạng. Hạn chế của khái niệm công bằng này là nó không ngăn chặn được các cuộc tấn công mà đối thủ
đạt được lợi thế bằng cách làm tràn ngập một hệ thống có nhiều giao dịch, một chiến lược được quan sát
ngoài tự nhiên như một cách để thực hiện việc theo dõi giao dịch hiệu quả trong token doanh số [159] và để
tạo ra tắc nghẽn dẫn đến việc thanh lý các vị trí nợ thế chấp (CDP) [48].
Nói cách khác, sự công bằng trong trật tự đảm bảo sự công bằng đối với các giao dịch chứ không phải đối với người chơi.
Như được hiển thị trong hệ thống CanDID [160], có thể sử dụng các công cụ oracle như DECO
hoặc Town Crier kết hợp với một ủy ban gồm các nút (chẳng hạn như DON) để đạt được
nhiều hình thức kháng Sybil khác nhau trong khi vẫn bảo vệ quyền riêng tư. Người dùng có thể đăng ký danh tính
và cung cấp bằng chứng về tính độc đáo của họ mà không tiết lộ danh tính.
Thông tin xác thực chống lại âm thanh cung cấp một cách tiếp cận khả thi để làm phong phú thêm việc đặt hàng giao dịch
chính sách theo cách có thể hạn chế cơ hội cho các cuộc tấn công tràn ngập. Ví dụ, một
token chương trình giảm giá chỉ có thể cho phép một giao dịch cho mỗi người dùng đã đăng ký, trong trường hợp đăng ký
yêu cầu bằng chứng về tính duy nhất của mã định danh quốc gia, chẳng hạn như Số An sinh Xã hội.
Cách tiếp cận như vậy không phải là hoàn hảo nhưng có thể chứng tỏ là một chính sách hữu ích để giảm thiểu các cuộc tấn công tràn ngập giao dịch.
Le cadre d'exécution des transactions DON
(DON-TEF) DONs fournira oracle et un support de ressources décentralisées pour les solutions de couche 2 au sein ce que nous appelons le cadre d'exécution de transactions décentralisées du réseau Oracle (DONTEF) ou TEF en abrégé. Aujourd'hui, la fréquence des mises à jour des contrats DeFi est limitée par les latences de la chaîne principale, par exemple, l'intervalle de bloc moyen de 10 à 15 secondes dans Ethereum [104], ainsi que le coût de poussant de grandes quantités de données sur la chaîne et un débit de calcul/tx limité : des approches de mise à l'échelle motivantes telles que le partitionnement [148, 158, 232] et l'exécution de couche 2 [5, 12, 121, 141, 169, 186, 187]. Même les blockchain avec des temps de transaction beaucoup plus rapides, par exemple, [120], ont proposé des stratégies de mise à l'échelle qui impliquent un calcul hors chaîne [168]. TEF est censé agir comme une ressource de couche 2 pour de tels systèmes de couche 1/MAINCHAIN. Grâce à TEF, les DON peuvent prendre en charge des mises à jour plus rapides dans un contrat MAINCHAIN tout en conserver les principales assurances de confiance fournies par la chaîne principale. Le TEF peut accompagner l'un des nombreux paradigmes et techniques d'exécution de couche 2, y compris les rollups,11 rollup optimistes, Validium, etc., ainsi qu'un modèle de confiance à seuil dans lequel DON les nœuds exécutent des transactions. Le TEF est complémentaire du FSS et destiné à le soutenir. En d'autres termes, n'importe quel Les applications exécutées dans le TEF peuvent utiliser FSS. 11Souvent appelés « zk-rollups », un terme inapproprié, car ils n’ont pas nécessairement besoin de preuves de connaissance nulle.

6.1 Présentation du TEF Le TEF est un modèle de conception pour la construction et l'exécution d'un hybride performant smart contract SC. Conformément à l’idée principale des smart contract hybrides, le TEF implique un décomposition du SC en deux morceaux : (1) Ce que nous appelons dans le contexte du TEF une ancre contrat SCa sur MAINCHAIN et (2) DON exécution logique que nous appelons l'exécutable TEF. Nous utilisons ici SC pour désigner le contrat logique mis en œuvre par la combinaison de SCa et s'attendre. (Comme indiqué ci-dessus, nous prévoyons de développer des outils de compilation pour décomposer un contractez automatiquement SC dans ces composants.) L'exécutable TEF est le moteur qui traite les transactions des utilisateurs dans SC. Il peut s'exécuter de manière performante, car il s'exécute sur DON. Il a plusieurs fonctions : • Ingestion de transactions : exect reçoit ou récupère les transactions des utilisateurs. Cela peut le faire directement, c'est-à-dire via la soumission de transaction sur le DON, ou via le MAINCHAIN pool de mémoire utilisant MS. • Exécution rapide des transactions : exect traite les transactions impliquant des actifs au sein de SC. Il le fait localement, c'est-à-dire sur le DON. • Accès oracle/adaptateur rapide et peu coûteux : exect dispose d'un accès natif aux rapports oracle et d'autres données d'adaptateur conduisant, par exemple, à un actif plus rapide, moins cher et plus précis prix que l’exécution MAINCHAIN. De plus, l'accès hors chaîne oracle réduit le coût de fonctionnement du oracle, donc le coût d’utilisation du système, en évitant stockage en chaîne coûteux. • Synchronisation : exect envoie périodiquement les mises à jour de DON vers MAINCHAIN, mettant ainsi à jour SCa. Le contrat d’ancrage est le frontal MAINCHAIN de SC. En tant que composant de confiance plus élevée de SC, il répond à plusieurs objectifs : • Conservation des actifs : les fonds des utilisateurs sont déposés, détenus et retirés de SCa. • Vérification de la synchronisation : SCa peut vérifier l'exactitude des mises à jour d'état lorsqu'elles sont exécutées. synchronise, par exemple, les SNARK attachés aux rollup. • Garde-corps : la SCa peut inclure des dispositions visant à protéger contre la corruption ou les défaillances. en exect. (Voir la section 7 pour plus de détails.) Dans TEF, les fonds des utilisateurs sont conservés sur MAINCHAIN, ce qui signifie que le DON n'est lui-même pas dépositaire. En fonction du choix du mécanisme de synchronisation (voir ci-dessous), les utilisateurs peuvent avoir besoin faire confiance au DON uniquement pour des rapports oracle précis et une synchronisation rapide avec MAINCHAIN. Le modèle de confiance qui en résulte est très similaire à celui des DEX basés sur un carnet de commandes, par exemple [2], qui comprennent aujourd'hui généralement un composant hors chaîne pour l'appariement des ordres et un composant en chaîne pour la compensation et le règlement.Pour reprendre le vocabulaire des systèmes de paiement, on peut considérer excet comme le composant de SC est responsable de la compensation, tandis que SCa s'occupe du règlement. Voir la Fig. 13 pour un schéma représentation du TEF. Figure 13 : Schéma du TEF. Dans cet exemple, les transactions transitent par le mempool de MAINCHAIN via MS au DON. Les avantages du TEF : Le TEF présente trois avantages principaux : • Hautes performances : SC hérite du débit beaucoup plus élevé du DON que celui du MAINCHAIN. pour les transactions et les rapports oracle. De plus, exect peut traiter les transactions plus rapidement et répondre aux rapports oracle plus rapidement qu'une implémentation sur MAINCHAIN seule. • Frais réduits : le processus de synchronisation est moins sensible au temps que le traitement des transactions, et les transactions peuvent être envoyées du DON vers MAINCHAIN par lots. Par conséquent, les frais en chaîne par transaction (par exemple, les coûts du gaz) avec cette approche sont bien inférieurs à ceux d'un contrat fonctionnant uniquement sur MAINCHAIN. • Confidentialité : Les mécanismes de confidentialité du DON peuvent être amenés à porter sur SC.
Limites du TEF : L'une des limites de TEF est qu'il ne prend pas en charge les retraits, car ils se produisent uniquement sur MAINCHAIN : lors de l'envoi d'une demande de retrait vers SCa, un utilisateur devra peut-être attendre qu'exect effectue une mise à jour d'état qui inclut le transaction de retrait avant qu’elle puisse être approuvée. Nous discutons de quelques remèdes partiels, cependant, à la section 6.2. Une autre limitation du TEF est qu'il ne prend pas en charge la composition atomique de DeFi. contrats sur MAINCHAIN, en particulier la possibilité d'acheminer les actifs via plusieurs DeFi contrats en une seule transaction. Le TEF peut cependant prendre en charge une telle atomicité entre Contrats DeFi exécutés sur le même DON. Nous discutons également de certaines façons de résoudre ce problème problème dans la section 6.2. 6.2 Routage des transactions Les transactions pour SC peuvent être envoyées par les utilisateurs directement au DON ou peuvent être acheminées via le mempool dans MAINCHAIN (via FSS). Il existe quatre types de transactions distincts, chacun dont nécessitent une manipulation différente : Opérations intra-contractuelles : Parce qu'il évite les complications de la dynamique des gaz, le TEF offre à SC plus de flexibilité dans la gestion des transactions qu'elle ne le ferait. disponible dans un contrat de couche 1. Par exemple, alors qu'une transaction mempool dans Ethereum peut être écrasé par une nouvelle transaction avec un prix du gaz plus élevé, SC peut traiter une transaction qui opère sur des actifs au sein de SC comme faisant autorité dès qu'elle devient visible dans le pool de mémoire. Par conséquent, SC n'a pas besoin d'attendre qu'une transaction soit confirmée dans un bloc, ce qui entraîne une latence considérablement réduite. Proxy : Un utilisateur peut souhaiter envoyer une transaction τ à SC via un contrat de portefeuille ou autre contrat sur MAINCHAIN. Il est possible pour le DON de simuler l'exécution de τ sur MAINCHAIN pour déterminer si cela entraîne une transaction ultérieure vers SC. Si tel est le cas, τ peut être séquencé avec d’autres transactions pour SC qui le font. Il y en a quelques-uns possibilités sur la manière dont le DON identifie de telles transactions : (1) Le DON peut simuler toutes les transactions dans le mempool (une approche coûteuse) ; (2) Certains contrats ou les types de contrats, par exemple les portefeuilles, peuvent être répertoriés pour être surveillés par le DON ; ou (3) les utilisateurs peuvent annoter les transactions pour l'inspection DON. Les choses se compliquent lorsqu’une seule transaction interagit avec deux contrats, SC1 et SC2, qui utilisent tous deux des services de séquençage équitable et ont des politiques de commande incompatibles. Le DON pourrait, par exemple, séquencer τ au plus tard qui est compatible avec les deux. Dépôts : Une transaction déposant un actif MAINCHAIN dans SC doit être confirmée dans un bloc avant que SC puisse la traiter comme valide. Lorsqu'il détecte l'exploitation minière d'un transaction qui envoie des actifs (par exemple, Ether) dans SCa, exect peut confirmer instantanément ledépôt. Par exemple, il peut appliquer un prix actuel déclaré oracle sur le DON au atout. Retraits : Comme indiqué ci-dessus, une limitation du TEF est que les retraits ne peuvent pas toujours être exécutés instantanément. Dans un modèle d'exécution de type rollup, le retrait La demande doit être séquencée avec d'autres transactions, c'est-à-dire cumulée, afin d'être traitée en toute sécurité. traité. Il existe cependant quelques solutions partielles à cette limitation. Si le DON peut calculer rapidement une preuve de validité rollup jusqu'à la transaction de retrait, alors l'observation de la transaction τ d'un utilisateur dans l'exécutable mempool peut envoyer une transaction de mise à jour d'état τ ′ pour τ à un prix du gaz plus élevé, une sorte de front-running bénéfique. À condition que τ ne soit pas extrait avant que τ ′ n'atteigne le mempool, τ ′ précédera τ, et τ entraînera un retrait approuvé. Dans une variante TEF où DON est utilisé pour calculer les mises à jour d'état (voir la variante de signature de seuil ci-dessous), le DON peut alternativement déterminer hors chaîne si τ doit être approuvé compte tenu de l'état du SC lors de son exécution. Le DON peut alors envoyer une transaction τ ′ qui approuve le retrait τ – sans effectuer de paiement complet. mise à jour de l'état. Si cette approche n'est pas possible, ou dans les cas où elle ne réussit pas, une procédure initiée par DON la transaction τ ′ peut envoyer des fonds à l'utilisateur en réponse à τ afin que l'utilisateur n'ait pas besoin lancer une transaction supplémentaire. 6.3 Synchronisation L'exécutable TEF envoie périodiquement les mises à jour de DON vers MAINCHAIN, mettre à jour l’état de SCa dans un processus que nous appelons synchronisation. La synchronisation peut être envisagée comme propagation des transactions de couche 2 vers la couche 1, de sorte que TEF peut s'appuyer sur n'importe lequel d'un certain nombre des techniques existantes à cet effet, y compris rollups [5, 12, 16, 69], optimistes rollups [10, 11, 141], Validium [201] ou signature de seuil de base, par exemple seuil BLS, Schnorr, ou ECDSA [24, 54, 116, 202]. En principe, les environnements d'exécution fiables peut également attester de l'exactitude des changements d'état, offrant un système beaucoup plus performant. alternative aux rollups, mais avec un modèle de confiance dépendant du matériel. (Voir, par exemple, [80].) Ci-dessous, nous comparons ces options de synchronisation par rapport à trois propriétés clés dans TEF : • Disponibilité des données : où l'état du SC est-il stocké ? Au moins trois options sont disponible en TEF : sur le MAINCHAIN, sur un DON, ou par un stockage tiers fournisseurs tels que IPFS. Ils obtiennent différentes garanties de sécurité, de disponibilité niveaux et profils de performance. En bref, le stockage de l'état sur le MAINCHAIN permet auditabilité en chaîne et élimine la dépendance à l'égard d'une quelconque partie pour la disponibilité de l'État ; d'un autre côté, le stockage hors chaîne peut réduire les coûts de stockage et améliorer débit, au prix de la confiance dans les fournisseurs de stockage (DON ou tiers) pour disponibilité des données. Bien entendu, des modèles flexibles combinant ces options sont également possible. Nous indiquons la forme requise de disponibilité des données dans le tableau 1.• Garanties d'exactitude : comment SCa vérifie-t-elle l'exactitude des mises à jour ? poussé par Exect ? Cela affecte la charge de calcul sur exect et SCa et le latence de synchronisation (voir ci-dessous). • Latence : la latence de synchronisation a trois facteurs contributifs : (1) Le temps nécessaire par exemple, générer une transaction de synchronisation τsync ; (2) Le temps nécessaire pour τsync à confirmer sur MAINCHAIN ; et (3) Le temps nécessaire à τsync pour prendre effet sur SCa. En TEF, la latence est particulièrement importante pour les retraits (mais moins pour les transactions intra-contractuelles) car les retraits nécessitent nécessairement un (au moins partielle) synchronisation d'état. Synchronisation choix Données disponibilité Exactitude garanties Latence Cumul [5, 12, 16, 69] En chaîne Preuves de validité Temps nécessaire à la génération preuves de validité (par exemple, procès-verbaux dans les systèmes actuels) Validium [201] Hors chaîne Preuves de validité Idem que ci-dessus Optimiste rollup [10, 11, 141] En chaîne Preuves de fraude Durée du défi période (par exemple, jours ou semaines) Signature de seuil [24, 54, 116, 202] Flexible Seuil de signatures par DON Instantané Environnements d'exécution fiables [80] Flexible Basé sur le matériel attestations Instantané Tableau 1 : Diverses options de synchronisation dans TEF et leurs propriétés. Le tableau 1 résume ces propriétés dans les cinq principales options de synchronisation dans TEF. (Remarque que nous n'avons pas l'intention de comparer ces technologies en tant que mise à l'échelle autonome de couche 2 solutions. Pour cela, nous renvoyons les lecteurs à, par exemple, [121].) Nous discutons maintenant de chaque option de synchronisation. Cumuls : Un rollup [69] est un protocole dans lequel la transition d'état effectuée par un le lot de transactions est calculé hors chaîne. Le changement d'état se propage ensuite sur MAINCHAIN. Pour implémenter rollups, l'ancre smart contract SCa stocke une représentation compacte Rstate (par exemple, une racine Merkle) de l'état réel. Pour synchroniser, exect envoie τsync = (T, R′ état) à SCa où T est l’ensemble des transactions qu’il a traitées depuis le derniersynchronisation et R′ state est la représentation compacte du nouvel état calculée en appliquant transactions en T vers l’état précédent Rstate. Il existe deux variantes populaires qui diffèrent dans la manière dont SCa vérifie les mises à jour d'état dans τsync. Le premier, (zk-)rollups, joint un argument succinct de justesse, parfois appelé une preuve de validité, pour la transition Rstate →R′ état. Pour implémenter cette variante, exécutez calcule et soumet la preuve de validité (par exemple, une preuve zk-SNARK) avec τsync, prouvant que R′ L’état est le résultat de l’application de T à l’état actuel de SCa. L'ancre Le contrat n'accepte la mise à jour de l'état qu'après avoir vérifié la preuve. Les rollup optimistes n'incluent pas d'arguments d'exactitude, mais ont staking et des procédures de contestation qui facilitent la vérification distribuée des transitions d’état. Pour cela Variante rollup, SCa accepte provisoirement τsync en supposant qu'il est correct (d'où l'optimisme) mais τsync ne prend effet qu'après une période de contestation, pendant laquelle toute partie la surveillance de MAINCHAIN peut identifier les mises à jour d'état erronées et informer SCa de prendre actions nécessaires (par exemple, pour restaurer l'état et infliger une pénalité en cas d'exécution). Les deux variantes rollup assurent la disponibilité des données en chaîne, au fur et à mesure que les transactions sont publiées en chaîne, à partir duquel l'état complet peut être construit. La latence des zk-rollups est dominé par le temps nécessaire pour générer des preuves de validité, qui est généralement au ordre de minutes dans les systèmes existants [16] et verra probablement des améliorations au fil du temps. Les rollup optimistes, en revanche, ont une latence plus élevée (par exemple, jours ou semaines) car la période de contestation doit être suffisamment longue pour que les preuves de fraude fonctionnent. Le L'implication d'une confirmation lente est subtile et parfois spécifique au schéma, de sorte que une analyse approfondie est hors de portée. Par exemple, certains régimes considèrent le paiement transactions comme « finales sans confiance » [109] avant que la mise à jour de l'état ne soit confirmée, car un un utilisateur régulier pourrait vérifier un rollup beaucoup plus rapidement que le MAINCHAIN. Validium : Validium est une forme de (zk-)rollup qui rend les données disponibles uniquement hors chaîne et ne conserve pas toutes les données sur MAINCHAIN. Plus précisément, exect envoie uniquement le nouveau l'état et la preuve mais pas les transactions à SCa. Avec la synchronisation de style Validium, exécutez et le DON qui l'exécute sont les seuls à stocker l'état complet et qui exécutent des transactions. Comme pour les zk-rollups, la latence de synchronisation est dominée par la validité temps de génération de preuve. Contrairement aux zk-rollups, cependant, la synchronisation de style Validium réduit le le coût de stockage et augmente le débit. Signature du seuil par DON : En supposant qu'un seuil de DON nœuds soit honnête, un L'option de synchronisation simple et rapide consiste à faire en sorte que les nœuds DON signent collectivement le nouvel état. Cette approche peut prendre en charge la disponibilité des données en chaîne et hors chaîne. Notez que si les utilisateurs font confiance à DON pour les mises à jour oracle, ils n'ont pas besoin de lui faire davantage confiance pour accepter mises à jour d'état, car elles le sont déjà dans un modèle de confiance à seuil. Un autre avantage de la signature à seuil est à faible latence. Prise en charge de nouveaux formats de signature de transaction proposé dans EIP-2938 [70] et connu sous le nom d'abstraction de compte établirait un seuil la signature est considérablement plus facile à mettre en œuvre, car elle éliminerait le besoin de seuil ECDSA, qui implique des protocoles considérablement plus complexes (par exemple, [116, 117, 118])que des alternatives telles que les signatures à seuil Schnorr [202] ou BLS [55]. Environnements d'exécution de confiance (TEE) : Les TEE sont des environnements d'exécution isolés (généralement réalisés par du matériel) qui visent à fournir de solides protections de sécurité. pour les programmes exécutés à l’intérieur. Certains TEE (par exemple, Intel SGX [84]) peuvent produire des preuves, connues sous le nom d'attestations, qu'une sortie est correctement calculée par un programme spécifique pour une entrée particulière12. Une variante de synchronisation TEF basée sur TEE peut être implémentée en remplacer les preuves en (zk-)rollups ou Validium par des attestations TEE en utilisant des techniques à partir de [80]. Comparés aux preuves sans connaissance utilisées dans les rollup et Validium, les TEE sont beaucoup plus performant. Par rapport à la signature à seuil, les TEE suppriment la complexité de générer des signatures ECDSA seuil car il ne doit en principe y avoir qu'un seul TEE impliqué. L'utilisation des TEE introduit cependant des hypothèses de confiance supplémentaires dépendant du matériel. On peut également combiner les TEE avec la signature de seuil pour créer de la résilience contre la compromission d'une fraction des instances TEE, bien que cette mesure de protection réintroduit la complexité de la génération de signatures ECDSA à seuil. Flexibilité supplémentaire : Ces options de synchronisation peuvent être affinées pour offrir plus de flexibilité des manières suivantes. • Déclenchement flexible : l'application TEF peut déterminer les conditions dans lesquelles la synchronisation est déclenchée. Par exemple, la synchronisation peut être basée sur des lots, par exemple après toutes les N transactions, basées sur le temps, par exemple tous les 10 blocs, ou basées sur des événements, par exemple, se produisent chaque fois que les prix cibles des actifs évoluent de manière significative. • Synchronisation partielle : elle est possible et dans certains cas souhaitable (par exemple, avec rollups, la synchronisation partielle peut réduire la latence), par exemple pour fournir une synchronisation rapide des petits quantités d'état, effectuant une synchronisation complète peut-être seulement périodiquement. Par exemple, exect peut approuver une demande de retrait en mettant à jour le solde d'un utilisateur dans SCa sans autrement mettre à jour l’état MAINCHAIN. 6.4 Réorganisations Réorganisations de la blockchain résultant de l'instabilité du réseau ou même d'attaques à 51 % peut constituer une menace pour l’intégrité d’une chaîne principale. En pratique, les adversaires ont utilisé pour qu'ils montent des attaques à double dépense [34]. Même si de telles attaques contre les grandes chaînes sont difficiles à monter, ils restent réalisables pour certaines chaînes [88]. Parce qu'il fonctionne indépendamment de MAINCHAIN, un DON offre l'intéressant possibilité d’observer et d’apporter quelques protections contre les réorganisations associées attaques. Par exemple, un DON peut signaler à un contrat SC de confiance sur MAINCHAIN l'existence d'un fork concurrent d'une certaine longueur seuil τ. Le DON peut en outre 12Des détails supplémentaires peuvent être trouvés à l’annexe B.2.1. Ils ne sont pas nécessaires à la compréhension.
fournir la preuve, dans un contexte PoW ou PoS, de l'existence d'un tel fork. Le Le contrat SC peut mettre en œuvre des actions défensives appropriées, telles que la suspension de l'exécution de transactions ultérieures pendant un certain temps (par exemple, pour permettre aux échanges de mettre sur liste noire les transactions doublement dépensées). actifs). Notez que même si un adversaire lançant une attaque à 51% peut chercher à censurer rapports d'un DON, une contre-mesure en SC consiste à exiger des rapports périodiques du DON afin de traiter des transactions (c'est-à-dire un battement de cœur) ou d'exiger un nouveau rapport pour valider une transaction de grande valeur. Bien que de telles alertes de bifurcation soient en principe un service général, le DON peut fournir à diverses fins, notre plan est de les intégrer au TEF.
Khung thực thi giao dịch DON
(DON-TEF) DONs sẽ cung cấp oracle và hỗ trợ tài nguyên phi tập trung cho các giải pháp lớp 2 trong cái mà chúng tôi gọi là Khung thực thi giao dịch mạng Oracle phi tập trung (DONTEF) hay gọi tắt là TEF. Ngày nay, tần suất cập nhật các hợp đồng DeFi bị giới hạn bởi độ trễ của chuỗi chính, ví dụ: khoảng thời gian chặn trung bình là 10-15 giây trong Ethereum [104]—cũng như chi phí của đẩy lượng lớn dữ liệu trên chuỗi và thông lượng tính toán/tx bị hạn chế— thúc đẩy các phương pháp mở rộng quy mô như sharding [148, 158, 232] và thực thi lớp 2 [5, 12, 121, 141, 169, 186, 187]. Kể cả blockchain có thời gian giao dịch nhanh hơn nhiều, ví dụ: [120], đã đề xuất các chiến lược mở rộng quy mô liên quan đến tính toán ngoài chuỗi [168]. TEF có nghĩa là hoạt động như một tài nguyên lớp 2 cho bất kỳ hệ thống lớp 1 / MAINCHAIN nào như vậy. Sử dụng TEF, DONs có thể hỗ trợ cập nhật nhanh hơn trong hợp đồng MAINCHAIN trong khi giữ lại các đảm bảo tin cậy quan trọng được cung cấp bởi chuỗi chính. TEF có thể hỗ trợ bất kỳ kỹ thuật và mô hình thực thi lớp 2 nào, bao gồm rollups,11 lạc quan rollups, Validium, v.v., cũng như mô hình ngưỡng tin cậy trong đó DON các nút thực hiện giao dịch. TEF bổ sung cho FSS và nhằm hỗ trợ nó. Nói cách khác, bất kỳ ứng dụng chạy trong TEF có thể sử dụng FSS. 11Thường được gọi là “zk-rollups”, một cách gọi sai vì chúng không nhất thiết cần bằng chứng không có kiến thức.

6.1 Tổng quan về TEF TEF là một mẫu thiết kế để xây dựng và thực hiện một hệ thống hybrid hiệu suất smart contract SC. Theo ý tưởng chính đằng sau smart contracts lai, TEF bao gồm một phân tách SC thành hai phần: (1) Cái mà chúng ta gọi trong ngữ cảnh TEF là mỏ neo hợp đồng SCa trên MAINCHAIN và logic (2) DON yêu cầu chúng tôi gọi là tệp thực thi TEF. Chúng ta sử dụng SC ở đây để biểu thị hợp đồng logic được thực hiện bằng sự kết hợp của SCa và mong đợi. (Như đã lưu ý ở trên, chúng tôi mong đợi phát triển các công cụ biên dịch để phân tách một tự động ký hợp đồng SC vào các thành phần này.) Phần thực thi TEF là công cụ xử lý các giao dịch của người dùng trong SC. Nó có thể thực thi một cách hiệu quả vì nó chạy trên DON. Nó có một số chức năng: • Nhập giao dịch: yêu cầu nhận hoặc tìm nạp giao dịch của người dùng. Nó có thể làm như vậy trực tiếp, tức là thông qua việc gửi giao dịch trên DON hoặc qua MAINCHAIN mempool bằng MS. • Thực hiện giao dịch nhanh: yêu cầu xử lý các giao dịch liên quan đến tài sản trong SC. Nó thực hiện điều đó cục bộ, tức là trên DON. • Truy cập bộ chuyển đổi / nhanh chóng và chi phí thấp oracle: exect có quyền truy cập riêng vào báo cáo oracle và dữ liệu bộ điều hợp khác dẫn đến nội dung, ví dụ: nhanh hơn, rẻ hơn và chính xác hơn định giá hơn so với việc thực hiện MAINCHAIN. Hơn nữa, quyền truy cập oracle ngoài chuỗi giảm chi phí vận hành của oracle, do đó chi phí sử dụng hệ thống, bằng cách tránh lưu trữ trên chuỗi đắt tiền. • Đồng bộ hóa: yêu cầu đẩy các bản cập nhật định kỳ từ DON lên MAINCHAIN, cập nhật SCa. Hợp đồng neo là giao diện người dùng MAINCHAIN của SC. Là thành phần có độ tin cậy cao hơn của SC, nó phục vụ một số mục đích: • Giám sát tài sản: Tiền của người dùng được gửi vào, giữ và rút khỏi SCa. • Đồng bộ hóa xác minh: SCa có thể xác minh tính chính xác của các cập nhật trạng thái khi được kích hoạt đồng bộ hóa, ví dụ: SNARK được đính kèm với rollups. • Đường ray bảo vệ: SCa có thể bao gồm các điều khoản để bảo vệ chống tham nhũng hoặc hư hỏng mong đợi. (Xem Phần 7 để biết thêm chi tiết.) Trong TEF, tiền của người dùng được lưu giữ trên MAINCHAIN, nghĩa là DON bản thân nó không được giám sát. Tùy thuộc vào việc lựa chọn cơ chế đồng bộ hóa (xem bên dưới), người dùng có thể cần chỉ tin cậy DON để có báo cáo oracle chính xác và đồng bộ hóa kịp thời với MAINCHAIN. Mô hình tin cậy thu được rất giống với mô hình dành cho DEX dựa trên sổ đặt hàng, ví dụ: [2], mà ngày nay thường bao gồm một thành phần ngoài chuỗi để khớp lệnh và một thành phần trên chuỗi để thanh toán bù trừ.Để sử dụng từ vựng về hệ thống thanh toán, người ta có thể coi exect là thành phần của SC chịu trách nhiệm thanh toán bù trừ, trong khi SCa xử lý việc quyết toán. Xem Hình 13 để biết sơ đồ mô tả của TEF. Hình 13: Sơ đồ TEF. Trong ví dụ này, các giao dịch đi qua mempool của MAINCHAIN qua MS tới DON. Lợi ích của TEF: TEF mang lại ba lợi ích chính: • Hiệu suất cao: SC kế thừa thông lượng cao hơn nhiều của DON so với MAINCHAIN cho cả giao dịch và báo cáo oracle. Ngoài ra, exect có thể xử lý các giao dịch nhanh hơn và phản hồi các báo cáo oracle một cách kịp thời hơn so với việc chỉ triển khai trên MAINCHAIN. • Phí thấp hơn: Quá trình đồng bộ hóa ít nhạy cảm về thời gian hơn so với xử lý giao dịch và các giao dịch có thể được gửi từ DON tới MAINCHAIN theo đợt. Do đó, phí trên mỗi giao dịch trên chuỗi (ví dụ: chi phí gas) với phương pháp này thấp hơn nhiều so với hợp đồng chỉ chạy trên MAINCHAIN. • Tính bảo mật: Cơ chế bảo mật của DON có thể được áp dụng chịu đựng SC.
Giới hạn của TEF: Một hạn chế của TEF là nó không hỗ trợ tức thời rút tiền, vì chúng chỉ xảy ra trên MAINCHAIN: Khi gửi yêu cầu rút tiền tới SCa, người dùng có thể phải chờ đợi để thực hiện cập nhật trạng thái bao gồm giao dịch rút tiền trước khi nó có thể được phê duyệt. Chúng tôi thảo luận về một số biện pháp khắc phục từng phần, tuy nhiên, trong Phần 6.2. Một hạn chế khác của TEF là nó không hỗ trợ thành phần nguyên tử DeFi hợp đồng trên MAINCHAIN, cụ thể là khả năng định tuyến tài sản qua nhiều DeFi hợp đồng trong một giao dịch duy nhất. Tuy nhiên, TEF có thể hỗ trợ tính nguyên tử như vậy giữa DeFi hợp đồng chạy trên cùng DON. Chúng tôi cũng thảo luận về một số cách để giải quyết vấn đề này vấn đề trong Phần 6.2. 6.2 Định tuyến giao dịch Giao dịch cho SC có thể được người dùng gửi trực tiếp tới DON hoặc có thể được chuyển qua mempool trong MAINCHAIN (thông qua FSS). Có bốn loại giao dịch riêng biệt, mỗi loại trong đó yêu cầu xử lý khác nhau: Giao dịch trong hợp đồng: Bởi vì nó tránh được sự phức tạp của động lực khí, TEF mang lại cho SC sự linh hoạt hơn trong việc xử lý các giao dịch so với trước đây. có sẵn trong hợp đồng lớp 1. Ví dụ: trong khi giao dịch mempool trong Ethereum có thể bị ghi đè bằng một giao dịch mới với giá gas cao hơn, SC có thể coi giao dịch hoạt động trên các tài sản trong SC là có thẩm quyền ngay khi nó hiển thị trong mempool. Do đó, SC không cần đợi giao dịch được xác nhận trong một khối, dẫn đến độ trễ giảm đáng kể. Ủy quyền: Người dùng có thể muốn gửi giao dịch τ tới SC thông qua hợp đồng ví hoặc hợp đồng khác trên MAINCHAIN. DON có thể mô phỏng việc thực thi τ trên MAINCHAIN để xác định xem liệu nó có dẫn đến giao dịch tiếp theo với SC hay không. Nếu vậy, τ có thể được sắp xếp theo trình tự với các giao dịch khác dành cho SC thực hiện. Có một vài khả năng về cách DON xác định các giao dịch đó: (1) DON có thể mô phỏng tất cả các giao dịch trong mempool (một cách tiếp cận tốn kém); (2) Một số hợp đồng hoặc các loại hợp đồng, ví dụ: ví, có thể được liệt kê để theo dõi bởi DON; hoặc (3) Người dùng có thể chú thích các giao dịch để kiểm tra DON. Vấn đề trở nên phức tạp hơn khi một giao dịch đơn lẻ tương tác với hai hợp đồng SC1 và SC2, cả hai đều sử dụng Dịch vụ sắp xếp thứ tự công bằng và có chính sách đặt hàng không tương thích. Ví dụ: DON có thể là chuỗi τ vào thời điểm gần nhất đó là tương thích với cả hai. Tiền gửi: Giao dịch gửi tài sản MAINCHAIN vào SC cần phải được xác nhận trong một khối trước khi SC có thể coi nó là hợp lệ. Khi nó phát hiện việc khai thác một giao dịch gửi tài sản (ví dụ: Ether) vào SCa, có thể xác nhận ngay lập tứctiền gửi. Ví dụ: nó có thể áp dụng giá được báo cáo oracle hiện tại trên DON cho tài sản. Rút tiền: Như đã lưu ý ở trên, hạn chế của TEF là việc rút tiền không phải lúc nào cũng được thực hiện ngay lập tức. Trong mô hình thực thi loại rollup, việc rút tiền yêu cầu phải được sắp xếp theo thứ tự với các giao dịch khác, tức là được cuộn lại, để được an toàn đã được xử lý. Tuy nhiên, có một số biện pháp khắc phục một phần hạn chế này. Nếu DON có thể nhanh chóng tính toán bằng chứng hợp lệ rollup cho giao dịch rút tiền thì việc quan sát giao dịch của người dùng τ trong mempool có thể gửi giao dịch cập nhật trạng thái τ ′ với giá gas cao hơn, một kiểu chạy trước có lợi. Với điều kiện là τ không được khai thác trước khi τ ′ đến mempool, τ ′ sẽ đứng trước τ và τ sẽ có hiệu lực đối với việc rút tiền đã được phê duyệt. Trong biến thể TEF trong đó DON được dựa vào để tính toán các cập nhật trạng thái (xem biến thể ký ngưỡng bên dưới), DON có thể xác định ngoài chuỗi liệu τ có nên được phê duyệt dựa trên trạng thái của SC khi thực thi nó hay không. DON sau đó có thể gửi một giao dịch τ ′ phê duyệt việc rút tiền τ—mà không ảnh hưởng đến toàn bộ giao dịch cập nhật trạng thái. Nếu cách tiếp cận này không thể thực hiện được hoặc trong trường hợp nó không thành công, thì DON đã bắt đầu giao dịch τ ′ có thể gửi tiền cho người dùng để phản hồi lại τ để người dùng không cần phải bắt đầu một giao dịch bổ sung. 6.3 Đang đồng bộ hóa Tệp thực thi TEF đẩy các bản cập nhật định kỳ từ DON lên MAINCHAIN, cập nhật trạng thái của SCa trong quy trình mà chúng tôi gọi là đồng bộ hóa. Đồng bộ hóa có thể được nghĩ đến như việc truyền bá các giao dịch lớp 2 sang lớp 1, do đó TEF có thể rút ra bất kỳ số nào kỹ thuật hiện có cho mục đích này, bao gồm rollups [5, 12, 16, 69], lạc quan rollups [10, 11, 141], Validium [201] hoặc ký ngưỡng cơ bản, ví dụ: BLS ngưỡng, Schnorr hoặc ECDSA [24, 54, 116, 202]. Về nguyên tắc, môi trường thực thi đáng tin cậy cũng có thể chứng thực tính đúng đắn của các thay đổi trạng thái, mang lại hiệu suất cao hơn nhiều thay thế cho rollups, nhưng với mô hình tin cậy phụ thuộc vào phần cứng. (Xem ví dụ: [80].) Dưới đây chúng tôi so sánh các tùy chọn đồng bộ hóa này với ba thuộc tính chính trong TEF: • Tính sẵn có của dữ liệu: Trạng thái của SC được lưu trữ ở đâu? Ít nhất ba lựa chọn là có sẵn dưới dạng TEF: trên MAINCHAIN, trên DON hoặc bởi một số bộ lưu trữ của bên thứ ba các nhà cung cấp như IPFS. Họ đạt được các đảm bảo an ninh, tính sẵn sàng khác nhau cấp độ và hồ sơ thực hiện. Tóm lại, việc lưu trữ trạng thái trên MAINCHAIN cho phép khả năng kiểm toán trực tuyến và loại bỏ sự phụ thuộc vào bất kỳ bên nào về tính khả dụng của trạng thái; mặt khác, việc lưu trữ trạng thái ngoài chuỗi có thể giảm chi phí lưu trữ và cải thiện thông lượng, với chi phí phải trả là tin tưởng nhà cung cấp dịch vụ lưu trữ (DON hoặc bên thứ ba) cho tính sẵn có của dữ liệu. Tất nhiên, các mô hình linh hoạt kết hợp các tùy chọn này cũng có thể. Chúng tôi chỉ ra dạng yêu cầu sẵn có của dữ liệu trong Bảng 1.• Đảm bảo tính chính xác: SCa xác định tính chính xác của các bản cập nhật bằng cách nào được thúc đẩy bởi sự mong đợi? Điều này ảnh hưởng đến tải tính toán trên exect và SCa và độ trễ đồng bộ hóa (xem bên dưới). • Độ trễ: Độ trễ đồng bộ hóa có ba yếu tố góp phần: (1) Thời gian thực hiện để mong đợi tạo giao dịch đồng bộ hóa τsync; (2) Thời gian cần thiết cho τsync được xác nhận trên MAINCHAIN; và (3) Thời gian để τsync phát huy tác dụng SCa. Trong TEF, độ trễ đặc biệt quan trọng đối với việc rút tiền (nhưng ít hơn đối với giao dịch trong hợp đồng) vì việc rút tiền nhất thiết phải có (ít nhất đồng bộ hóa trạng thái một phần). Đang đồng bộ hóa tùy chọn dữ liệu sẵn có Tính đúng đắn đảm bảo Độ trễ Tổng hợp [5, 12, 16, 69] Trên chuỗi Bằng chứng hiệu lực Thời gian thực hiện để tạo ra bằng chứng hợp lệ (ví dụ: số phút trong hệ thống hiện tại) Xác thực [201] Chuỗi Off Bằng chứng hiệu lực Tương tự như trên Lạc quan rollup [10, 11, 141] Trên chuỗi bằng chứng gian lận Độ dài của thử thách thời kỳ (ví dụ: ngày hoặc tuần) Ngưỡng ký [24, 54, 116, 202] Linh hoạt Ngưỡng chữ ký của DON tức thời Môi trường thực thi đáng tin cậy [80] Linh hoạt Dựa trên phần cứng chứng thực tức thời Bảng 1: Các tùy chọn đồng bộ hóa khác nhau trong TEF và các thuộc tính của chúng. Bảng 1 tóm tắt các thuộc tính này trong năm tùy chọn đồng bộ hóa chính trong TEF. (Lưu ý rằng chúng tôi không có ý định so sánh các công nghệ này như việc mở rộng quy mô lớp 2 độc lập giải pháp. Vì lý do đó, chúng tôi giới thiệu người đọc đến ví dụ: [121].) Bây giờ chúng ta thảo luận về từng tùy chọn đồng bộ hóa. Bản tổng hợp: rollup [69] là một giao thức trong đó quá trình chuyển đổi trạng thái được thực hiện bởi một lô giao dịch được tính toán ngoài chuỗi. Sự thay đổi trạng thái sau đó được lan truyền lên MAINCHAIN. Để triển khai rollups, neo smart contract SCa lưu trữ trạng thái đại diện thu gọn Rstate (ví dụ: gốc Merkle) của trạng thái thực tế. Để đồng bộ, exect gửi τsync = (T, R' state) tới SCa trong đó T là tập hợp các giao dịch được xử lý kể từ lần cuối cùngđồng bộ và R′ trạng thái là biểu diễn thu gọn của trạng thái mới được tính bằng cách áp dụng các giao dịch trong T sang trạng thái R trước đó. Có hai biến thể phổ biến khác nhau về cách SCa xác minh cập nhật trạng thái trong τsync. Đầu tiên, (zk-)rollups, đính kèm một lập luận ngắn gọn về tính đúng đắn, đôi khi được gọi là một bằng chứng hợp lệ cho quá trình chuyển đổi Rstate →R′ trạng thái. Để triển khai biến thể này, hãy mong đợi tính toán và gửi bằng chứng hợp lệ (ví dụ: bằng chứng zk-SNARK) cùng với τsync, chứng minh rằng R’ state là kết quả của việc áp dụng T vào trạng thái hiện tại của SCa. mỏ neo hợp đồng chỉ chấp nhận cập nhật trạng thái sau khi nó đã xác minh bằng chứng. Những rollup lạc quan không bao gồm những lập luận về tính đúng đắn nhưng có staking và thách thức các thủ tục tạo điều kiện thuận lợi cho việc xác minh phân tán các chuyển đổi trạng thái. Vì điều này rollup biến thể, SCa tạm chấp nhận τsync giả sử nó đúng (do đó mang lại sự lạc quan) nhưng τsync không có hiệu lực cho đến sau thời gian thử thách, trong thời gian đó bất kỳ bên nào giám sát MAINCHAIN có thể xác định các cập nhật trạng thái sai sót và thông báo cho SCa để thực hiện các hành động cần thiết (ví dụ: khôi phục trạng thái và đưa ra một hình phạt theo yêu cầu.) Cả hai biến thể rollup đều đạt được tính khả dụng của dữ liệu trên chuỗi khi các giao dịch được đăng trên chuỗi, từ đó trạng thái đầy đủ có thể được xây dựng. Độ trễ của zk-rollups là bị chi phối bởi thời gian cần thiết để tạo ra các bằng chứng hợp lệ, thường là về thứ tự phút trong các hệ thống hiện có [16] và có thể sẽ thấy sự cải thiện theo thời gian. Mặt khác, rollup lạc quan có độ trễ cao hơn (ví dụ: ngày hoặc tuần) bởi vì thời gian thử thách cần phải đủ dài để các bằng chứng gian lận có thể phát huy tác dụng. các hàm ý của việc xác nhận chậm là tinh tế và đôi khi cụ thể đối với sơ đồ, do đó một phân tích kỹ lưỡng là nằm ngoài phạm vi. Ví dụ: một số chương trình nhất định coi việc thanh toán giao dịch là "cuối cùng không cần sự tin cậy" [109] trước khi cập nhật trạng thái được xác nhận, vì một người dùng thông thường có thể xác minh rollup nhanh hơn nhiều so với MAINCHAIN. Xác thực: Validium là một dạng (zk-)rollup chỉ cung cấp dữ liệu ngoài chuỗi và không duy trì tất cả dữ liệu trên MAINCHAIN. Cụ thể, exect chỉ gửi cái mới nêu và bằng chứng nhưng không giao dịch với SCa. Với đồng bộ hóa kiểu Validium, ngoại trừ và DON thực thi nó là các bên duy nhất lưu trữ trạng thái hoàn chỉnh và thực hiện các giao dịch. Giống như zk-rollups, độ trễ đồng bộ hóa bị chi phối bởi tính hợp lệ thời gian tạo bằng chứng. Tuy nhiên, không giống như zk-rollups, đồng bộ hóa kiểu Validium làm giảm chi phí lưu trữ và tăng thông lượng. Ngưỡng ký bởi DON: Giả sử ngưỡng DON nút là trung thực, tùy chọn đồng bộ hóa đơn giản và nhanh chóng là có các nút DON ký tên chung vào trạng thái mới. Cách tiếp cận này có thể hỗ trợ cả tính khả dụng của dữ liệu trên chuỗi và ngoài chuỗi. Lưu ý rằng nếu người dùng tin cậy DON cho oracle cập nhật, họ không cần phải tin cậy hơn nữa để chấp nhận cập nhật trạng thái, vì chúng đã ở trong mô hình ngưỡng tin cậy. Một lợi ích khác của ngưỡng ký là độ trễ thấp. Hỗ trợ các định dạng chữ ký giao dịch mới như được đề xuất trong EIP-2938 [70] và được gọi là trừu tượng hóa tài khoản sẽ tạo ra ngưỡng việc ký kết dễ thực hiện hơn nhiều vì nó sẽ loại bỏ sự cần thiết của ngưỡng ECDSA, bao gồm các giao thức phức tạp hơn đáng kể (ví dụ: [116, 117, 118])hơn các lựa chọn thay thế như chữ ký ngưỡng Schnorr [202] hoặc BLS [55]. Môi trường thực thi đáng tin cậy (TEE): TEE là môi trường thực thi biệt lập (thường được thực hiện bằng phần cứng) nhằm mục đích cung cấp các biện pháp bảo vệ an ninh mạnh mẽ cho các chương trình đang chạy bên trong. Một số TEE (ví dụ: Intel SGX [84]) có thể tạo ra bằng chứng, được gọi là chứng thực, rằng đầu ra được tính toán chính xác bởi một chương trình cụ thể cho một đầu vào cụ thể12. Một biến thể đồng bộ hóa TEF dựa trên TEE có thể được triển khai bởi thay thế bằng chứng trong (zk-)rollups hoặc Validium bằng chứng thực TEE bằng kỹ thuật từ [80]. So với bằng chứng không có kiến thức được sử dụng trong rollups và Validium, TEE có nhiều hiệu quả hơn. So với việc ký ngưỡng, TEE loại bỏ sự phức tạp của tạo ra các chữ ký ECDSA ngưỡng vì về nguyên tắc chỉ cần một TEE có liên quan. Tuy nhiên, việc sử dụng TEE sẽ đưa ra thêm các giả định về độ tin cậy phụ thuộc vào phần cứng. Người ta cũng có thể kết hợp TEE với việc ký ngưỡng để tạo khả năng phục hồi chống lại sự xâm phạm của một phần nhỏ các trường hợp TEE, mặc dù biện pháp bảo vệ này giới thiệu lại sự phức tạp của việc tạo chữ ký ECDSA ngưỡng. Tính linh hoạt bổ sung: Các tùy chọn đồng bộ hóa này có thể được tinh chỉnh để mang lại sự linh hoạt hơn theo những cách sau. • Kích hoạt linh hoạt: Ứng dụng TEF có thể xác định các điều kiện đồng bộ hóa được kích hoạt. Ví dụ: việc đồng bộ hóa có thể dựa trên hàng loạt, ví dụ: xảy ra sau mọi N giao dịch, dựa trên thời gian, ví dụ: cứ sau 10 khối hoặc dựa trên sự kiện, ví dụ: xảy ra bất cứ khi nào giá tài sản mục tiêu thay đổi đáng kể. • Đồng bộ hóa một phần: Có thể và trong một số trường hợp là mong muốn (ví dụ: với rollups, đồng bộ hóa một phần có thể giảm độ trễ) để mong muốn cung cấp khả năng đồng bộ hóa nhanh các nội dung nhỏ lượng trạng thái, có lẽ chỉ thực hiện đồng bộ hóa đầy đủ theo định kỳ. Ví dụ, ngoại trừ có thể phê duyệt yêu cầu rút tiền bằng cách cập nhật số dư của người dùng trong SCa mà không cập nhật trạng thái MAINCHAIN. 6,4 tổ chức lại Tổ chức lại chuỗi khối do mất ổn định mạng hoặc thậm chí từ các cuộc tấn công 51% có thể gây ra mối đe dọa cho tính toàn vẹn của chuỗi chính. Trong thực tế, đối thủ đã sử dụng chúng để thực hiện các cuộc tấn công chi tiêu gấp đôi [34]. Trong khi các cuộc tấn công như vậy vào các chuỗi lớn là thách thức để gắn kết, chúng vẫn khả thi đối với một số chuỗi [88]. Vì nó hoạt động độc lập với MAINCHAIN nên DON mang đến những điều thú vị khả năng quan sát và cung cấp một số biện pháp bảo vệ chống lại việc tổ chức lại liên quan đến các cuộc tấn công. Ví dụ: DON có thể báo cáo cho một hợp đồng dựa trên SC trên MAINCHAIN về sự tồn tại của một nhánh phân nhánh cạnh tranh có độ dài ngưỡng nào đó τ. Ngoài ra DON có thể 12Chi tiết bổ sung có thể được tìm thấy trong Phụ lục B.2.1. Họ không cần thiết cho sự hiểu biết.
cung cấp bằng chứng—trong cài đặt PoW hoặc PoS—về sự tồn tại của một đợt phân nhánh như vậy. các hợp đồng SC có thể thực hiện các hành động phòng thủ phù hợp, chẳng hạn như tạm dừng thực hiện giao dịch tiếp theo trong một khoảng thời gian (ví dụ: để cho phép các sàn giao dịch đưa vào danh sách đen chi tiêu gấp đôi tài sản). Lưu ý rằng mặc dù đối thủ tiến hành tấn công 51% có thể tìm cách kiểm duyệt báo cáo từ DON, biện pháp đối phó trong SC là yêu cầu báo cáo định kỳ từ DON để xử lý các giao dịch (tức là nhịp tim) hoặc để yêu cầu báo cáo mới cho xác thực một giao dịch có giá trị cao. Mặc dù các cảnh báo phân nhánh như vậy về nguyên tắc là một dịch vụ chung mà DON có thể cung cấp vì bất kỳ mục đích nào, kế hoạch của chúng tôi là kết hợp chúng với TEF.
Minimisation de la confiance
En tant que système décentralisé avec la participation d'un ensemble hétérogène d'entités, le Le réseau Chainlink offre une protection solide contre les pannes, tant en termes de vivacité (disponibilité) que de sécurité (intégrité du rapport). La plupart des systèmes décentralisés varient cependant le degré de décentralisation de leurs éléments constitutifs. Ceci est vrai même pour les grands systèmes, où une décentralisation limitée parmi les mineurs [32] et les intermédiaires [51] sont présents depuis longtemps. Le but de tout effort de décentralisation est de minimiser la confiance : nous cherchons à réduire les effets néfastes de la corruption ou de la défaillance systémique au sein du réseau Chainlink, même si en raison d'un DON malveillant. Notre principe directeur est le principe du moindre privilège [197]. Les composants du système et les acteurs au sein du système doivent avoir des privilèges strictement limités pour permettre uniquement la réussite des rôles qui leur sont assignés. Nous présentons ici plusieurs mécanismes concrets que Chainlink doit adopter dans son entraînement vers une minimisation toujours plus grande de la confiance. Nous caractérisons ces mécanismes en termes des loci, c'est-à-dire les composants du système, dans lesquels ils sont enracinés, illustrés à la figure 14. Nous abordent chaque lieu dans une sous-section respective. 7.1 Authentification de la source de données Les modèles opérationnels actuels pour les oracle sont limités par le fait que peu de sources de données signer numériquement les données qu'ils omettent, en grande partie parce que TLS ne signe pas nativement données. TLS utilise des signatures numériques dans son protocole de « poignée de main » (pour établir une clé partagée entre un serveur et un client). Les serveurs compatibles HTTPS ont donc des certificats sur des clés publiques qui peuvent en principe servir à signer des données, mais elles n'utilisent généralement pas ces certificats pour prendre en charge la signature des données. Par conséquent, la sécurité d'un DON, comme dans les réseaux oracle d'aujourd'hui, s'appuie sur des nœuds oracle qui relayent fidèlement les données d'un système de données. source d’un contrat. Un élément important à long terme de notre vision de minimisation de la confiance dans Chainlink implique une authentification plus forte des sources de données grâce à la prise en charge d'outils et de normes pour la signature des données. La signature des données peut aider à renforcer les garanties d'intégrité de bout en bout. En principe, si un contrat accepte en entrée une donnée D signée directement par un data

Figure 14 : Locus des mécanismes de minimisation de la confiance abordés dans cette section. 1⃝Données les sources fournissent des données au 2⃝DON, qui relaie une fonction des données à un dépendant 3⃝smart contract. De plus, le réseau DON ou oracle comprend 4⃝nœuds gestion smart contracts sur MAINCHAIN pour, par exemple, les nœuds de compensation, la garde rails, etc. source, alors le réseau oracle ne peut pas altérer D. Divers encouragements Des efforts visant à permettre une telle signature de données ont vu le jour, notamment OpenID Connect, qui est conçu principalement pour l'authentification des utilisateurs [9], TLS-N, un projet académique visant à étendez TLS [191] en réutilisant les certificats TLS et les extensions de preuves TLS [63]. Même si OpenID Connect a connu une certaine adoption, les extensions de preuves TLS et TLS-N n’ont pas encore été adoptés. Une autre voie potentielle d’authentification de la source de données consiste à utiliser les propres Échanges HTTP signés (SXG) [230], qu'ils peuvent mettre en cache sur les réseaux de diffusion de contenu dans le cadre du protocole Accelerated Mobile Pages (AMP) [225]. Le navigateur mobile Chrome affiche le contenu des SXG mis en cache AMP comme s'ils étaient servis depuis les domaines réseau de leurs éditeurs au lieu du domaine du serveur de cache. Cette incitation à la marque, associée à la relative facilité de l'activer à l'aide de services tels que l'URL réelle [83] de CloudFlare et l'amppackager de Google [124], pourrait conduire à l'adoption généralisée des SXG dans le contenu d'actualités en cache, ce qui permettrait un accès simple et inviolable. moyen pour les Chainlink oracle de se déclencher sur des événements dignes d'intérêt signalés dans des SXG valides. Même si les SXG mis en cache par AMP provenant d'éditeurs de presse ne seraient pas utiles pour les applications telles que les rapports sur les données de trading, elles pourraient constituer une source sécurisée de données personnalisées. contrats relatifs à des événements du monde réel comme des conditions météorologiques extrêmes ou des résultats d'élections. Nous pensons qu'un déploiement simple, des outils matures et la flexibilité seront essentiels pour accélération de la signature des sources de données. Permettre aux fournisseurs de données d'utiliser les nœuds Chainlink comme un frontal API authentifié semble une approche prometteuse. Nous avons l'intention de créer unpossibilité pour les nœuds de fonctionner dans ce mode, avec ou sans participation au réseau comme un oracle à part entière. Nous appelons cette capacité l'origine de données authentifiées. (ADO). En utilisant les nœuds Chainlink avec ADO, les sources de données pourront bénéficier de l'expérience et des outils développés par la communauté Chainlink dans l'ajout du numérique capacités de signature à leur suite existante d'API hors chaîne. Devraient-ils choisir de courir leurs nœuds en tant que oracles, ils peuvent en outre ouvrir de nouvelles sources de revenus potentielles selon le même modèle que les fournisseurs de données existants, par exemple Kraken [28], Kaiko [140] et d'autres, qui exécutent des nœuds Chainlink pour vendre des données API en chaîne. 7.1.1 Les limites de l’origine des données authentifiées La signature numérique par source de données, même si elle peut contribuer à renforcer l'authentification, n'est pas suffisante en soi pour atteindre tous les objectifs naturels de sécurité ou opérationnels d'un oracle. réseau. Pour commencer, une donnée D donnée doit encore être relayée de manière robuste et opportune. depuis une source de données vers smart contract ou un autre consommateur de données. Autrement dit, même dans un cadre idéal dans lequel toutes les données sont signées à l'aide de clés préprogrammées en dépendance contrats, un DON serait toujours nécessaire pour communiquer les données de manière fiable à partir des sources aux contrats. De plus, il existe un certain nombre de cas dans lesquels des contrats ou d'autres données oracle les consommateurs veulent accéder à la sortie authentifiée de diverses fonctions calculées sur données sources pour deux raisons principales : • Confidentialité : une API de source de données peut fournir des données sensibles ou propriétaires. qui doit être expurgé ou nettoyé avant d'être rendu publiquement visible sur la chaîne. Toutefois, toute modification des données signées invalidait la signature. Mettez-en un autre D’une manière ou d’une autre, l’ADO naïve et la désinfection des données sont incompatibles. Nous montrons dans l'exemple 3 comment les deux peuvent être réconciliés grâce à une forme améliorée d’ADO. • Défauts de source de données : les erreurs et les échecs peuvent affecter les sources de données, et les signatures numériques ne résolvent aucun de ces problèmes. Depuis sa création [98], Chainlink a incluait déjà un mécanisme pour remédier à ces défauts : la redondance. Les rapports émis par les réseaux oracle représentent généralement les données combinées de plusieurs sources. Nous discutons maintenant des schémas que nous explorons dans le cadre ADO pour améliorer la confidentialité des données sources et combiner en toute sécurité les données provenant de plusieurs sources. 7.1.2 Confidentialité Les sources de données peuvent ne pas anticiper et mettre à disposition toute la gamme d'API souhaitées par les utilisateurs. Plus précisément, les utilisateurs peuvent souhaiter accéder à des données prétraitées pour garantir confidentialité. L'exemple suivant illustre le problème.Exemple 3. Alice souhaite obtenir un identifiant d'identité décentralisée (DID) indiquant qu'elle a plus de 18 ans (et peut donc, par exemple, contracter un emprunt). Faire elle doit donc prouver ce fait concernant son âge à un émetteur de titres de compétences DID. Alice espère utiliser les données du Département des véhicules automobiles (DMV) de son État site Web à cet effet. Le DMV a un enregistrement de sa date de naissance et émettra un une attestation A signée numériquement sur celle-ci et de la forme suivante : A = {Nom : Alice, Date de naissance : 16/02/1999}. Dans cet exemple, l'attestation A peut suffire à Alice pour prouver au DID émetteur de titres de compétences qu'elle a plus de 18 ans. Mais cela divulgue inutilement des informations sensibles : Alice's date de naissance exacte. Idéalement, ce qu'Alice souhaiterait du DMV, c'est une signature sur un simple déclaration A′ selon laquelle «Alice a plus de 18 ans». En d'autres termes, elle veut sortie d'une fonction G à sa date de naissance X, où (officieusement), A′ = G(X) = True si CurrentDate −X ≥18 ans ; sinon, G(X) = Faux. Pour généraliser, Alice aimerait pouvoir demander à la source de données un attestation A′ de la forme : A′ = {Nom : Alice, Func:G(X), Résultat : True}, où G(X) désigne une spécification d'une fonction G et de ses entrées X. Nous envisageons qu'un utilisateur devrait être en mesure de fournir un G(X) souhaité en entrée avec sa demande de attestation correspondante A′. Notez que l’attestation A′ de la source de données doit inclure la spécification G(X) pour s’assurer que A′ est correctement interprété. Dans l’exemple ci-dessus, G(X) définit la signification de la valeur booléenne dans A′ et donc que Vrai signifie le sujet de l'attestation est âgé de plus de 18 ans. Nous faisons référence à des requêtes flexibles dans lesquelles un utilisateur peut spécifier G(X) comme requêtes fonctionnelles. Afin de prendre en charge des cas d'utilisation comme celui de l'exemple 3, ainsi que ceux impliquant des requêtes directement à partir des contrats, nous avons l'intention d'inclure la prise en charge des requêtes fonctionnelles impliquant fonctions simples G dans le cadre d'ADO. 7.1.3 Combinaison des données sources Pour réduire les coûts en chaîne, les contrats sont généralement conçus pour consommer des données combinées à partir de plusieurs sources, comme illustré dans l’exemple suivant. Exemple 4 (médianisation des données de prix). Pour fournir un flux de prix, c'est-à-dire la valeur d'un actif (par exemple, ETH) par rapport à un autre (par exemple, USD), un réseau oracle sera généralement obtenir les prix courants à partir d’un certain nombre de sources, telles que les bourses. Le réseau oracle envoie généralement à un contrat dépendant SC la médiane de ces valeurs. Dans un environnement avec signature de données, un réseau oracle fonctionnant correctement obtient à partir des sources de données S = {S1, . . . , SnS} une séquence de valeurs V = {v1, v2, . . . , vnS} de nS sources accompagnées de signatures spécifiques à la source Σ = {σ1, σ2, . . . , σnS}. Sur vérifiant les signatures, il transmet le prix v = médian(V ) à SC.Malheureusement, il n'existe pas de moyen simple pour un réseau oracle de transmettre la médiane valeur v dans l'exemple 4 à SC avec une preuve succincte σ∗que v a été correctement calculé sur les entrées signées. Une approche naïve consisterait à encoder en SC les clés publiques de toutes les sources de données nS. Le réseau oracle relayerait alors (V, Σ) et permettrait à SC de calculer la médiane de V . Cependant, cela donnerait une preuve σ de taille O(nS) — c'est-à-dire que σ∗ ne serait pas succincte. Cela entraînerait également des coûts de gaz élevés pour SC, qui devrait vérifier toutes les signatures dans Σ. L’utilisation des SNARK, en revanche, permet une preuve succincte des valeurs sources authentifiées correctement combinées. Cela peut être réalisable dans la pratique, mais impose des des coûts de calcul sur le prouveur et des coûts de gaz quelque peu élevés sur la chaîne. Utilisation de Le crieur public est également une possibilité, mais nécessite l'utilisation de TEE, ce qui ne convient pas à tous. modèles de confiance des utilisateurs. Un concept utile pour encadrer les solutions au problème général de la signature de données combinées à partir de sources est un outil cryptographique connu sous le nom de signatures fonctionnelles [59, 132]. En bref, les signatures fonctionnelles permettent à un signataire de déléguer une capacité de signature, de telle sorte que le délégataire ne peut signer des messages que dans le cadre d'une fonction F choisie par le signataire. Nous montrons en Annexe D comment cette contrainte fonctionnelle peut servir à délimiter la gamme de valeurs de rapport émises par un DON en fonction des valeurs signées par les sources de données. Nous introduisons également une nouvelle primitive, appelée signature fonctionnelle discrétisée, qui inclut une exigence de précision assouplie, mais qui est potentiellement beaucoup plus performante. que les approches telles que les SNARK. Le problème de la combinaison de sources de données d'une manière qui inclut l'authentification de la source des résultats s'applique également aux agrégateurs de données, par exemple CoinCap, CoinMarketCap, CoinGecko, CryptoCompare, etc., qui obtiennent des données d'une multiplicité d'échanges, qu'ils pondération basée sur les volumes, en utilisant des méthodologies qu'ils rendent dans certains cas publiques et sont dans d'autres cas propriétaires. Un agrégateur qui souhaite publier une valeur avec l'authentification source est confrontée au même défi qu'un ensemble de nœuds regroupant données sources. 7.1.4 Traitement des données sources Les smart contract sophistiqués dépendront probablement de statistiques globales personnalisées sur sources de données primaires, telles que la volatilité de l'historique récent des prix sur de nombreux actifs, ou textes et photographies tirés de l'actualité sur des événements pertinents. Étant donné que le calcul et la bande passante sont relativement bon marché dans un DON, ces statistiques : même des modèles d'apprentissage automatique complexes avec de nombreuses entrées peuvent être traités de manière économique, à condition que toute valeur de sortie destinée à un blockchain soit suffisamment concise. Pour les tâches à forte intensité de calcul où les participants DON peuvent avoir des compétences différentes. points de vue sur des entrées complexes, des cycles de communication supplémentaires entre les participants DON peuvent être nécessaires pour établir un consensus sur les entrées avant de calculer le résultat. Tant que la valeur finale est entièrement déterminée par les entrées, une fois le consensus d'entrée établi, chaque participant peut simplement calculer la valeur et la diffuser à l'autre.participants avec leur signature partielle, ou l'envoyer à un agrégateur. 7.2 DON Minimisation de la confiance Nous envisageons deux manières principales de minimiser la confiance placée dans les composants du DON : clients de basculement et rapports minoritaires. 7.2.1 Clients de basculement Les modèles contradictoires dans la littérature sur la cryptographie et les systèmes distribués sont généralement considérons un adversaire capable de corrompre (c'est-à-dire de compromettre) un sous-ensemble de nœuds, par exemple, moins d'un tiers pour de nombreux protocoles BFT. On observe cependant couramment que si tous les nœuds exécutent un logiciel identique, un adversaire qui identifie un exploit fatal pourrait en principe, compromettre tous les nœuds plus ou moins simultanément. Ce paramètre est souvent appelée monoculture logicielle [47]. Diverses propositions visant à diversifier automatiquement les logiciels et les configurations logicielles ont été avancées pour résoudre le problème, par exemple [47, 113]. Comme indiqué dans [47], cependant, la diversité des logiciels est une question complexe et nécessite un examen attentif. La diversification des logiciels, par exemple, peut entraîner une sécurité pire qu'une monoculture si elle augmente la surface d’attaque d’un système et donc ses vecteurs d’attaque possibles au-delà de les avantages de sécurité qu’il offre. Nous pensons que la prise en charge de clients de basculement robustes, c'est-à-dire des clients vers quels nœuds peut changer face à un événement catastrophique – est une forme particulièrement attrayante de diversification des logiciels. Les clients de basculement n'augmentent pas le nombre de vecteurs potentiels d'attaque, car ils ne sont pas déployés en tant que logiciels principaux. Ils offrent des avantages évidents, cependant, comme deuxième ligne de défense. Nous avons l'intention de prendre en charge les clients de basculement dans les DON comme un moyen clé de réduire leur dépendance en matière de sécurité à l’égard d’un seul client. Chainlink dispose déjà d'un système robuste de clients de basculement. Notre approche implique de conserver les versions client précédentes et testées au combat. Aujourd'hui, par exemple, les nœuds Chainlink avec Off-Chain Reporting (OCR) comme client principal incluent la prise en charge pour le système FluxMonitor précédent de Chainlink si nécessaire. Ayant été utilisé pendant certains Au fil du temps, FluxMonitor a fait l'objet d'audits de sécurité et de tests sur le terrain. Il fournit la même chose des fonctionnalités telles que l'OCR, mais à un coût plus élevé, un coût uniquement encouru en fonction des besoins. 7.2.2 Rapports minoritaires Étant donné un ensemble minoritaire suffisamment important d’Ominorité – une fraction de nœuds honnêtes qui observent les malversations de la majorité – il peut être utile pour eux de générer une minorité. rapport. Il s'agit d'un rapport ou d'un indicateur parallèle, relayé vers un contrat dépendant SC en chaîne par Ominorité. SC peut utiliser ce drapeau conformément à sa propre politique spécifique au contrat. Par exemple, pour un contrat dans lequel la sécurité est plus importante que la vivacité ou la réactivité, un rapport minoritaire peut amener le contrat à demander des rapports supplémentaires. d'un autre DON, ou déclencher un disjoncteur (voir la section suivante).Les rapports minoritaires peuvent jouer un rôle important même lorsque la majorité est honnête, car tout schéma d'agrégation de rapports, même s'il utilise des signatures fonctionnelles, doit fonctionner de manière seuil, pour garantir la résilience contre oracle ou panne de données. Dans en d'autres termes, il doit être possible de produire un rapport valide basé sur les entrées de kS < nS oracles, pour un certain seuil kS. Cela signifie qu'un DON corrompu a des latitude dans la manipulation des valeurs du rapport en sélectionnant ses valeurs kS préférées parmi les nS rapporté en V par l'ensemble complet des oracle, même si toutes les sources sont honnêtes. Par exemple, supposons que nS = 10 et kS = 7 dans un système qui utilise un signature pour authentifier le calcul de la médiane sur V pour le prix en USD de l'ETH. Supposons que cinq sources rapportent un prix de \(500, while the other five report \)1000. Ensuite, en médianisant les 7 rapports les plus bas, le DON peut générer une valeur valide v = 500 $, et en médianisant le plus élevé, il peut produire v = 1 000 $. En améliorant le protocole DON afin que tous les nœuds sachent quelles données ont été disponibles et quelles données ont été utilisées pour construire un rapport, les nœuds pouvaient détecter et signaler tendances statistiquement significatives à privilégier un ensemble de rapports plutôt qu'un autre et à produire un rapport minoritaire en conséquence. 7.3 Garde-corps Notre modèle de confiance pour les DON traite MAINCHAIN comme un système de sécurité et de privilèges plus élevés. système que DONs. (Bien que ce modèle de confiance ne soit pas toujours vrai, il est plus facile d'adapter le mécanisme résultant aux situations où le DON est la sécurité la plus élevée plate-forme que l'inverse.) Une stratégie naturelle de minimisation de la confiance implique donc la mise en œuvre de mécanismes de surveillance et de sécurité dans les smart contract, soit dans un frontal MAINCHAIN pour un DON ou directement dans un contrat dépendant SC. Nous appelons ces mécanismes garde-corps, et énumérez ici quelques-uns des plus importants : • Disjoncteurs : le SC peut suspendre ou arrêter les mises à jour d'état en fonction des caractéristiques des mises à jour d'état elles-mêmes (par exemple, une grande variance au cours des mises à jour séquentielles). rapports) ou sur la base d’autres entrées. Par exemple, un disjoncteur peut se déclencher cas où les rapports oracle varient de manière invraisemblable au fil du temps. Un disjoncteur pourrait également être déclenché par un rapport minoritaire. Ainsi, les disjoncteurs peuvent empêcher les DONs de faire des rapports grossièrement erronés. Les disjoncteurs peuvent laisser le temps d’envisager des interventions supplémentaires ou exercé. L’une de ces interventions concerne les trappes de secours. • Trappes de secours : dans des circonstances défavorables, telles qu'identifiées par un ensemble de gardiens, de détenteurs de token communautaires ou d'autres organes d'administration, un contrat peut invoquer une installation d'urgence parfois appelée trappe d'évacuation [163]. Une trappe de secours provoque l'arrêt du SC d'une manière ou d'une autre et/ou se termine en attente et éventuellement transactions futures. Par exemple, il peut restituer les fonds déposés aux utilisateurs [17]),peut résilier les termes du contrat [162], ou annuler les transactions en cours et/ou futures [173]. Les trappes de secours peuvent être déployées dans tout type de contrat, pas seulement celui qui s'appuie sur un DON, mais ils sont intéressants en tant que tampon potentiel contre DON malversation. • Basculement : dans les systèmes où SC s'appuie sur DON pour les services essentiels, il est possible pour SC de fournir des mécanismes de basculement qui garantissent la continuité du service même en cas d'échec ou de mauvaise conduite DON. Par exemple, dans le TEF (Section 6), le contrat d'ancrage SCa peut fournir des interfaces doubles où à la fois en chaîne et les interfaces d'exécution hors chaîne sont prises en charge pour certaines opérations critiques (par exemple, retrait), ou pour les transactions ordinaires, avec un délai approprié pour éviter le frontrunning des transactions DON. Dans les cas où les sources de données signent des données, les utilisateurs peuvent fournir également des rapports à SCa lorsque le DON ne parvient pas à le faire. Les preuves de fraude, telles que proposées pour diverses formes de rollup optimistes (voir section 6.3), ont une saveur similaire et sont complémentaires aux mécanismes que nous avons énumérés ci-dessus. Ils fournissent également une forme de surveillance en chaîne et de protection contre les pannes potentielles dans composants du système hors chaîne. 7.4 Gouvernance minimisée par la confiance Comme tous les systèmes décentralisés, le réseau Chainlink nécessite des mécanismes de gouvernance pour ajuster les paramètres dans le temps, répondre aux urgences et guider son évolution. Certains de ces mécanismes résident actuellement sur MAINCHAIN et pourraient continuer à exister. faites-le même avec le déploiement de DONs. Un exemple est le mécanisme de paiement pour les fournisseurs de nœuds oracle (nœuds DON). DON contrats front-end sur MAINCHAIN contenir des mécanismes supplémentaires, tels que des garde-corps, qui peuvent être soumis à des contrôles périodiques. modification. Nous prévoyons deux classes de mécanismes de gouvernance : évolutifs et d’urgence. Gouvernance évolutive : De nombreuses modifications de l'écosystème Chainlink sont de sorte que leur mise en œuvre ne constitue pas une urgence : Amélioration des performances, améliorations des fonctionnalités, mises à niveau de sécurité (non urgentes), etc. À mesure que Chainlink s’oriente progressivement vers davantage de participants à sa gouvernance, nous nous attendons à ce que de nombreux ou la plupart de ces changements doivent être ratifiés par la communauté d'un DON spécifique concerné par ceux qui changements. Entre-temps, et peut-être à terme comme mécanisme parallèle, nous pensons qu'une notion de moindre privilège temporel peut être un moyen utile de mettre en œuvre une gouvernance évolutive. Très simplement, l'idée est que les changements se déploient progressivement, garantissant à la communauté une occasion d'y répondre. Par exemple, la migration vers un nouveau Le contrat MAINCHAIN peut être contraint afin que le nouveau contrat doive être déployé au moins trente jours avant l'activation.Gouvernance d’urgence : Vulnérabilités exploitables ou exploitées dans MAINCHAIN les contrats ou d’autres formes de défaillances de vivacité ou de sécurité peuvent nécessiter une intervention immédiate pour se prémunir contre des conséquences catastrophiques. Notre intention est de prendre en charge un multisig mécanisme d'intervention dans lequel, pour garantir contre les malversations de toute organisation, les signataires seront dispersés dans les organisations. Assurer une disponibilité constante des signataires et un accès rapide aux chaînes de commandement appropriées pour l'autorisation d'une situation d'urgence les changements nécessiteront clairement une planification opérationnelle minutieuse et un examen régulier. Ces les défis sont similaires à ceux impliqués dans les tests d’autres réponses aux incidents de cybersécurité capacités [134], avec un besoin similaire de lutter contre des problèmes courants tels que le décrément de vigilance [223]. La gouvernance des DON diffère de celle de nombreux systèmes décentralisés dans sa nature. degré potentiel d’hétérogénéité. Chaque DON peut avoir des sources de données, des exécutables, des exigences de niveau de service telles que la disponibilité et des utilisateurs distincts. Le réseau Chainlink les mécanismes de gouvernance doivent être suffisamment flexibles pour s’adapter à de telles variations objectifs et paramètres opérationnels. Nous explorons activement des idées de conception et prévoyons de publier des recherches sur ce sujet à l’avenir. 7.5 Infrastructure à clé publique La décentralisation progressive nécessitera une identification solide des participants au réseau, y compris les nœuds DON. En particulier, Chainlink nécessite une solide Infrastructure à clé publique (PKI). Une PKI est un système qui lie les clés aux identités. Pour Par exemple, une PKI sous-tend le système de connexions sécurisées (TLS) d’Internet : lorsque vous vous connectez à un site Web via HTTPS (par exemple, https://www.chainlinklabs.com) et un apparaît dans votre navigateur, cela signifie que la clé publique du propriétaire du domaine a été lié à ce propriétaire par une autorité, en particulier par le biais d'une signature numérique dans un soi-disant certificat. Un système hiérarchique d'autorités de certification (CA), dont les autorités racine de niveau supérieur sont intégrées dans les navigateurs populaires, permet de garantir que les certificats sont délivrés uniquement aux propriétaires légitimes des domaines. Nous prévoyons que Chainlink utilisera à terme des services de noms décentralisés, initialement le Ethereum Name Service (ENS) [22], comme base de notre PKI. Comme son nom l'indique, ENS est analogue au DNS, le système de noms de domaine qui mappe (lisibles par l'homme) aux adresses IP sur Internet. Cependant, ENS mappe à la place les noms Ethereum lisibles par l'homme aux adresses blockchain. Parce que l'ENS opère sur le Ethereum blockchain, sauf compromis clé, altération de son l’espace de noms est en principe aussi difficile que de falsifier le contrat qui l’administre et/ou le blockchain sous-jacent. (Le DNS, en revanche, a toujours été vulnérable à l'usurpation d'identité, au détournement et à d'autres attaques.) Nous avons enregistré data.eth auprès de l'ENS sur le réseau principal Ethereum et avons l'intention de établissez-le en tant qu'espace de noms racine sous lequel les identités des services de données oracle et d'autres entités du réseau Chainlink résident. Les domaines à l'ENS sont hiérarchiques, ce qui signifie que chaque domaine peut contenir des références à d'autres noms en dessous. Les sous-domaines de l'ENS peuvent servir à organiser etdéléguer la confiance. Le rôle principal de data.eth sera de servir de service d'annuaire en chaîne pour flux de données. Traditionnellement, les développeurs et les utilisateurs de oracle ont utilisé des sources hors chaîne (par exemple, des sites Web comme docs.chain.link ou data.chain.link, ou des réseaux sociaux tels que Twitter) pour publier et obtenir des adresses de flux de données oracle (telles que le prix ETH-USD nourrir). Avec un espace de noms racine hautement fiable tel que data.eth, il est possible d'établir un mappage de eth-usd.data.eth avec, par exemple, l'adresse smart contract. d'un agrégateur de réseau oracle en chaîne pour le flux de prix ETH-USD. Ce serait créer un chemin sécurisé permettant à quiconque de se référer au blockchain comme source de vérité pour ce flux de données de cette paire prix/nom (ETH-USD). Par conséquent, une telle utilisation de l’ENS réalise deux avantages non disponibles dans les sources de données hors chaîne : • Sécurité renforcée : toutes les modifications et mises à jour du domaine sont enregistrées de manière immuable et sécurisées par cryptographie, par opposition aux adresses texte sur un site Web, qui ne bénéficient d'aucune de ces deux propriétés de sécurité. • Propagation automatisée en chaîne : les mises à jour de l'adresse sous-jacente du smart contract d'un flux de données peuvent déclencher des notifications qui se propagent aux smart dépendants. contrats et peut, par exemple, mettre à jour automatiquement les contrats dépendants avec les nouvelles adresses.13 Cependant, les espaces de noms comme ENS ne valident pas automatiquement la propriété légitime de noms affirmés. Ainsi, par exemple, si l'espace de noms inclut l'entrée ⟨« Acme Oracle Node Co. », adresse⟩, alors un utilisateur obtient l'assurance que l'adresse appartient au demandeur du nom Acme Oracle Node Co. Sans mécanismes supplémentaires autour de l'administration des espaces de noms, cependant, elle n'obtient pas l'assurance que le nom appartient légitimement à une entité appelé Acme Oracle Node Co. dans un sens significatif du monde réel. Notre approche de la validation des noms, c'est-à-dire garantir leur propriété par des entités correspondantes et légitimes du monde réel, repose sur plusieurs éléments. Aujourd'hui, les laboratoires Chainlink agit efficacement en tant qu'autorité de certification pour le réseau Chainlink. Pendant que les Chainlink Labs continueront pour valider les noms, notre PKI évoluera vers un modèle plus décentralisé de deux manières : • Modèle de réseau de confiance : la contrepartie décentralisée d'une PKI hiérarchique est souvent appelée réseau de confiance.14 Des variantes ont été proposées depuis les années 1990, par exemple, [98], et un certain nombre de chercheurs ont observé que les blockchain peuvent faciliter l'utilisation de l'idée, par exemple, [227] en enregistrant les certificats dans un format globalement cohérent. grand livre. Nous explorons des variantes de ce modèle pour valider les identités des entités dans le réseau Chainlink de manière plus décentralisée. 13Un contrat dépendant peut éventuellement inclure un délai prédéterminé pour permettre une inspection manuelle et l'intervention des administrateurs de contrats dépendants. 14Terme inventé par Phil Zimmermann pour PGP [238].• Lien avec les données de validation : aujourd'hui, une quantité substantielle de données de performances des nœuds oracle est visible sur la chaîne, et donc liée de manière archivistique aux adresses des nœuds. Ces données peuvent être considérées comme enrichissant une identité au sein de l’IGC en fournissant des preuves historiques de sa participation (fiable) au réseau. De plus, des outils pour une identité décentralisée basée sur DECO et Town Crier [160] activer les nœuds pour accumuler des informations d'identification dérivées de données du monde réel. À titre d'exemple, un l'opérateur de nœud peut attacher un identifiant à son identité PKI qui prouve la possession d'une notation Dun et Bradstreet. Ces formes supplémentaires de validation peuvent compléter staking pour créer l'assurance de la sécurité du réseau. Un nœud oracle avec une identité réelle établie peut être considéré comme ayant un enjeu dans un système qui découle de sa réputation. (Voir les sections 4.3 et 9.6.3.) Une dernière exigence pour la PKI Chainlink est un amorçage sécurisé, c'est-à-dire un démarrage sécurisé. publiant le nom racine du réseau Chainlink, actuellement data.eth (de manière analogue au câblage des domaines de premier niveau dans les navigateurs). En d’autres termes, comment les utilisateurs Chainlink déterminer que data.eth est bien le domaine de premier niveau associé au Chainlink projet ? La solution à ce problème pour le réseau Chainlink est à plusieurs volets et peut impliquer: • Ajout d'un enregistrement TXT [224] à notre enregistrement de domaine pour chain.link qui spécifie data.eth comme domaine racine de l'écosystème Chainlink. (Chainlink exploite ainsi implicitement la PKI pour les domaines Internet pour valider son domaine ENS racine.) • Création d'un lien vers data.eth à partir du site Web existant de Chainlink, par exemple depuis https://docs.chain.link. (Une autre utilisation implicite de la PKI pour les domaines Internet.) • Faire connaître l'utilisation de data.eth via différents documents, dont ce livre blanc. • Publier data.eth publiquement sur nos réseaux sociaux, tels que Twitter, et le blog Chainlink [18]. • Placer une grande quantité de LINK sous le contrôle de la même adresse de déclarant comme data.eth.
Giảm thiểu sự tin cậy
Là một hệ thống phi tập trung với sự tham gia của một tập hợp các thực thể không đồng nhất, Mạng Chainlink cung cấp khả năng bảo vệ mạnh mẽ chống lại các lỗi về cả tính khả dụng (tính khả dụng) và độ an toàn (tính toàn vẹn của báo cáo). Tuy nhiên, hầu hết các hệ thống phi tập trung đều khác nhau về mức độ mà các thành phần cấu thành của chúng được phân cấp. Cái này đúng ngay cả với các hệ thống lớn, nơi có sự phân quyền hạn chế giữa các thợ mỏ [32] và trung gian [51] đã có mặt từ lâu. Mục tiêu của bất kỳ nỗ lực phân cấp nào là giảm thiểu sự tin cậy: Chúng tôi tìm cách giảm tác động bất lợi của tham nhũng hoặc trục trặc hệ thống trong mạng Chainlink, thậm chí cả điều đó do DON độc hại. Nguyên tắc chỉ đạo của chúng tôi là Nguyên tắc đặc quyền tối thiểu [197]. Các thành phần và tác nhân hệ thống trong hệ thống phải có đặc quyền trong phạm vi nghiêm ngặt chỉ cho phép hoàn thành thành công vai trò được giao của họ. Ở đây chúng tôi trình bày một số cơ chế cụ thể để Chainlink áp dụng trong quá trình phát triển của nó hướng tới việc giảm thiểu sự tin cậy ngày càng lớn hơn. Chúng tôi mô tả các cơ chế này theo thuật ngữ của locus, tức là các thành phần hệ thống mà chúng có gốc rễ, được hiển thị trong Hình 14. Chúng ta giải quyết từng địa điểm trong một tiểu mục tương ứng. 7.1 Xác thực nguồn dữ liệu Mô hình hoạt động hiện tại cho oracle bị hạn chế bởi thực tế là có ít nguồn dữ liệu ký điện tử vào dữ liệu họ bỏ qua, phần lớn là do TLS không ký tự nhiên dữ liệu. TLS sử dụng chữ ký số trong giao thức “bắt tay” của nó (để thiết lập khóa chung giữa máy chủ và máy khách). Do đó, các máy chủ hỗ trợ HTTPS có chứng chỉ trên các khóa công khai về nguyên tắc có thể dùng để ký dữ liệu, nhưng chúng thường không sử dụng những chứng chỉ này để hỗ trợ việc ký dữ liệu. Do đó, tính bảo mật của DON, như trong các mạng oracle ngày nay, dựa vào các nút oracle chuyển tiếp dữ liệu một cách trung thực từ một mạng dữ liệu nguồn cho một hợp đồng. Một thành phần quan trọng lâu dài trong tầm nhìn của chúng tôi nhằm giảm thiểu sự tin cậy trong Chainlink liên quan đến việc xác thực nguồn dữ liệu mạnh mẽ hơn thông qua việc hỗ trợ các công cụ và tiêu chuẩn để ký dữ liệu. Việc ký dữ liệu có thể giúp thực thi các đảm bảo tính toàn vẹn từ đầu đến cuối. Về nguyên tắc, nếu một hợp đồng chấp nhận đầu vào là một phần dữ liệu D được ký trực tiếp bởi bên dữ liệu.

Hình 14: Các cơ chế giảm thiểu sự tin cậy được thảo luận trong phần này. 1⃝Dữ liệu các nguồn cung cấp dữ liệu cho 2⃝DON, chuyển tiếp chức năng của dữ liệu đến bộ phận phụ thuộc 3⃝smart contract. Ngoài ra, mạng DON hoặc oracle bao gồm 4⃝nút quản lý smart contract trên MAINCHAIN, ví dụ: các nút bù, bảo vệ đường ray, vân vân. nguồn thì mạng oracle không thể giả mạo D. Có nhiều lời khuyến khích khác nhau những nỗ lực cho phép việc ký dữ liệu như vậy đã xuất hiện, bao gồm cả OpenID Connect, được thiết kế chủ yếu để xác thực người dùng [9], TLS-N, một dự án học thuật nhằm mục đích mở rộng TLS [191] bằng cách sử dụng lại chứng chỉ TLS và Tiện ích mở rộng bằng chứng TLS [63]. Tuy nhiên, mặc dù OpenID Connect đã được áp dụng một số, nhưng Tiện ích mở rộng bằng chứng TLS và TLS-N vẫn chưa được áp dụng. Một cách xác thực nguồn dữ liệu tiềm năng khác là sử dụng Trao đổi HTTP đã ký (SXG) [230], họ có thể lưu vào bộ nhớ đệm trên mạng phân phối nội dung như một phần của giao thức Trang di động tăng tốc (AMP) [225]. Trình duyệt dành cho thiết bị di động Chrome hiển thị nội dung từ SXG được lưu trong bộ nhớ đệm AMP như thể chúng được phân phát từ miền mạng riêng của nhà xuất bản của họ thay vì miền máy chủ bộ đệm. Khuyến khích xây dựng thương hiệu này, cùng với việc tương đối dễ dàng cho phép nó sử dụng các dịch vụ như URL thực của CloudFlare [83] và amppackager [124] của Google, có thể dẫn đến việc áp dụng rộng rãi SXG trong nội dung tin tức được lưu trong bộ nhớ đệm, điều này sẽ cho phép một quy trình đơn giản, chống giả mạo cách để Chainlink oracle kích hoạt các sự kiện đáng chú ý được báo cáo trong SXG hợp lệ. Mặc dù SXG được lưu trong bộ nhớ đệm AMP từ các nhà xuất bản tin tức sẽ không hữu ích cho các ứng dụng có nhịp độ cao. các ứng dụng như báo cáo về dữ liệu giao dịch, chúng có thể là nguồn an toàn cho các giao dịch tùy chỉnh. các hợp đồng liên quan đến các sự kiện trong thế giới thực như thời tiết khắc nghiệt hoặc kết quả bầu cử. Chúng tôi tin rằng việc triển khai đơn giản, các công cụ hoàn thiện và tính linh hoạt sẽ rất quan trọng đối với tăng tốc việc ký nguồn dữ liệu. Cho phép nhà cung cấp dữ liệu sử dụng các nút Chainlink làm giao diện người dùng API được xác thực có vẻ là một cách tiếp cận đầy hứa hẹn. Chúng tôi dự định tạo ra mộttùy chọn cho các nút hoạt động ở chế độ này, có hoặc không có sự tham gia vào mạng dưới dạng oracle toàn diện. Chúng tôi gọi khả năng này là nguồn gốc dữ liệu được xác thực (ADO). Bằng cách sử dụng các nút Chainlink với ADO, các nguồn dữ liệu sẽ có thể được hưởng lợi từ kinh nghiệm và công cụ do cộng đồng Chainlink phát triển trong việc bổ sung kỹ thuật số khả năng ký kết vào bộ API ngoài chuỗi hiện có của họ. Liệu họ có nên chọn chạy các nút của họ dưới dạng oracle, họ cũng có thể mở ra các luồng doanh thu mới tiềm năng theo cùng mô hình với các nhà cung cấp dữ liệu hiện có, ví dụ: Kraken [28], Kaiko [140] và những người khác chạy các nút Chainlink để bán dữ liệu API trên chuỗi. 7.1.1 Những hạn chế của nguồn gốc dữ liệu được xác thực Ký kỹ thuật số bằng nguồn dữ liệu, mặc dù có thể giúp tăng cường xác thực nhưng bản chất nó không đủ để thực hiện tất cả các mục tiêu hoạt động hoặc bảo mật tự nhiên của oracle mạng. Đầu tiên, một phần dữ liệu D nhất định vẫn phải được chuyển tiếp một cách mạnh mẽ và kịp thời. cách từ nguồn dữ liệu tới smart contract hoặc người tiêu dùng dữ liệu khác. Tức là ngay cả trong một cài đặt lý tưởng trong đó tất cả dữ liệu được ký bằng các khóa được lập trình sẵn thành phụ thuộc hợp đồng, vẫn cần có DON để truyền đạt dữ liệu một cách đáng tin cậy từ các nguồn đến các hợp đồng. Ngoài ra, có một số trường hợp trong đó hợp đồng hoặc dữ liệu oracle khác người tiêu dùng muốn truy cập vào đầu ra được xác thực của các chức năng khác nhau được tính toán trên dữ liệu nguồn vì hai lý do chính: • Tính bảo mật: API nguồn dữ liệu có thể cung cấp dữ liệu nhạy cảm hoặc độc quyền cần phải được biên tập lại hoặc khử trùng trước khi nó được hiển thị công khai trên chuỗi. Tuy nhiên, bất kỳ sửa đổi nào đối với dữ liệu đã ký đều làm mất hiệu lực của chữ ký. Đặt cái khác Nói cách khác, ADO ngây thơ và việc dọn dẹp dữ liệu không tương thích. Chúng tôi hiển thị trong ví dụ 3 làm thế nào cả hai có thể được dung hòa thông qua một hình thức ADO nâng cao. • Lỗi nguồn dữ liệu: Cả lỗi và lỗi đều có thể ảnh hưởng đến nguồn dữ liệu và chữ ký số không giải quyết được vấn đề gì. Từ khi thành lập [98], Chainlink đã đã bao gồm một cơ chế để khắc phục những lỗi đó: sự dư thừa. Báo cáo do mạng oracle đưa ra thường trình bày dữ liệu kết hợp của nhiều nguồn. Bây giờ chúng tôi thảo luận về các kế hoạch mà chúng tôi đang khám phá trong cài đặt ADO để nâng cao tính bảo mật của dữ liệu nguồn và kết hợp dữ liệu từ nhiều nguồn một cách an toàn. 7.1.2 Tính bảo mật Các nguồn dữ liệu có thể không dự đoán và cung cấp đầy đủ các API mong muốn bởi người dùng. Cụ thể, người dùng có thể muốn truy cập dữ liệu được xử lý trước để giúp đảm bảo tính bảo mật. Ví dụ sau đây minh họa vấn đề.Ví dụ 3. Alice mong muốn có được thông tin xác thực danh tính phi tập trung (DID) nêu rõ rằng cô ấy trên 18 tuổi (và do đó, chẳng hạn, có thể vay tiền). để làm vì vậy, cô ấy cần phải chứng minh sự thật này về tuổi của mình với tổ chức cấp chứng chỉ DID. Alice hy vọng sẽ sử dụng dữ liệu từ Bộ phương tiện cơ giới (DMV) của bang cô ấy trang web cho mục đích này. DMV có hồ sơ về ngày sinh của cô ấy và sẽ phát ra một chứng thực được ký điện tử A trên đó có dạng sau: A = {Tên: Alice, DoB: 16/02/1999}. Trong ví dụ này, chứng thực A có thể đủ để Alice chứng minh cho DID nhà cấp chứng chỉ xác thực rằng cô ấy trên 18 tuổi. Nhưng nó không cần thiết làm rò rỉ thông tin nhạy cảm: của Alice DoB chính xác. Lý tưởng nhất là điều Alice muốn từ DMV thay vào đó là chữ ký trên một câu nói đơn giản A′ rằng “Alice trên 18 tuổi.” Nói cách khác, cô ấy muốn đầu ra của hàm G vào ngày sinh của cô ấy X, trong đó (một cách không chính thức), A′ = G(X) = True nếu Ngày hiện tại −X ≥18 năm; ngược lại, G(X) = Sai. Để khái quát hóa, Alice muốn có thể yêu cầu từ nguồn dữ liệu một chứng thực A′ có dạng: A′ = {Tên: Alice, Func:G(X), Kết quả: Đúng}, trong đó G(X) biểu thị đặc tả của hàm G và (các) đầu vào X của nó. Chúng ta hình dung rằng người dùng sẽ có thể cung cấp G(X) mong muốn làm đầu vào cho yêu cầu của mình về chứng thực tương ứng A′. Lưu ý rằng chứng thực của nguồn dữ liệu A′ phải bao gồm thông số G(X) để đảm bảo rằng A′ được giải thích chính xác. Trong ví dụ trên, G(X) định nghĩa ý nghĩa của giá trị Boolean trong A′ và do đó True biểu thị chủ đề của chứng thực trên 18 tuổi. Chúng tôi đề cập đến các truy vấn linh hoạt trong đó người dùng có thể chỉ định G(X) làm truy vấn chức năng. Để hỗ trợ các trường hợp sử dụng như trong Ví dụ 3, cũng như các trường hợp liên quan đến truy vấn trực tiếp từ hợp đồng, chúng tôi dự định bao gồm hỗ trợ cho các truy vấn chức năng liên quan đến các hàm đơn giản G như một phần của ADO. 7.1.3 Kết hợp dữ liệu nguồn Để giảm chi phí trên chuỗi, các hợp đồng thường được thiết kế để sử dụng dữ liệu kết hợp từ nhiều nguồn, như được minh họa trong ví dụ sau. Ví dụ 4 (Trung gian hóa dữ liệu giá). Để cung cấp nguồn cấp giá, tức là giá trị của một tài sản (ví dụ: ETH) so với tài sản khác (ví dụ: USD), mạng oracle thường sẽ có được giá hiện tại từ một số nguồn, chẳng hạn như trao đổi. Mạng oracle thường gửi đến SC hợp đồng phụ thuộc giá trị trung bình của các giá trị này. Trong môi trường có ký dữ liệu, mạng oracle hoạt động chính xác sẽ nhận được từ nguồn dữ liệu S = {S1, . . . , SnS} dãy các giá trị V = {v1, v2, . . . , vnS} từ nS nguồn có chữ ký nguồn cụ thể đi kèm Σ = {σ1, σ2, . . . , σnS}. Khi xác minh chữ ký, nó truyền giá v = trung vị (V ) tới SC.Thật không may, không có cách đơn giản nào để mạng oracle truyền giá trị trung vị giá trị v trong Ví dụ 4 đến SC cùng với bằng chứng ngắn gọn σ∗rằng v đã được tính toán chính xác trên đầu vào đã ký. Một cách tiếp cận ngây thơ sẽ là mã hóa trong SC các khóa chung của tất cả các nguồn dữ liệu nS. Mạng oracle sau đó sẽ chuyển tiếp (V, Σ) và cho phép SC tính toán trung vị của V . Tuy nhiên, điều này sẽ dẫn đến một bằng chứng σ có kích thước O(nS)—tức là, σ∗sẽ không ngắn gọn. Nó cũng sẽ phải chịu chi phí gas cao cho SC, cần phải xác minh tất cả chữ ký trong Σ. Ngược lại, việc sử dụng SNARK cho phép chứng minh ngắn gọn về các giá trị nguồn được xác thực được kết hợp chính xác. Nó có thể khả thi trong thực tế, nhưng áp đặt khá cao chi phí tính toán trên bộ chuẩn và chi phí gas hơi cao trên dây chuyền. Sử dụng Town Crier cũng là một lựa chọn, nhưng yêu cầu sử dụng TEE, không phù hợp với tất cả mọi người. mô hình niềm tin của người dùng. Một khái niệm hữu ích để đưa ra các giải pháp cho vấn đề chung về ký dữ liệu kết hợp từ các nguồn là một công cụ mật mã được gọi là chữ ký chức năng [59, 132]. Tóm lại, chữ ký chức năng cho phép người ký ủy quyền khả năng ký, sao cho người được ủy quyền chỉ có thể ký các tin nhắn trong phạm vi chức năng F do người ký chọn. Chúng tôi trình bày trong Phụ lục D cách ràng buộc chức năng này có thể dùng để giới hạn phạm vi của các giá trị báo cáo do DON phát ra dưới dạng hàm của các giá trị được ký bởi nguồn dữ liệu. Chúng tôi cũng giới thiệu một dạng nguyên thủy mới, được gọi là chữ ký hàm rời rạc, bao gồm yêu cầu thoải mái về độ chính xác nhưng có khả năng hoạt động hiệu quả hơn nhiều. hơn các phương pháp tiếp cận như SNARK. Bài toán kết hợp các nguồn dữ liệu theo cách bao gồm xác thực nguồn của đầu ra cũng áp dụng cho các công cụ tổng hợp dữ liệu, ví dụ: CoinCap, CoinMarketCap, CoinGecko, CryptoCompare, v.v., thu thập dữ liệu từ nhiều sàn giao dịch mà chúng trọng lượng dựa trên khối lượng, sử dụng các phương pháp mà trong một số trường hợp họ công bố và trong các trường hợp khác là độc quyền. Một trình tổng hợp muốn xuất bản một giá trị với xác thực nguồn phải đối mặt với thách thức tương tự như việc tập hợp các nút tổng hợp dữ liệu nguồn. 7.1.4 Đang xử lý dữ liệu nguồn smart contract phức tạp có thể phụ thuộc vào số liệu thống kê tổng hợp tùy chỉnh trên nguồn dữ liệu chính, chẳng hạn như sự biến động trong lịch sử giá gần đây của nhiều tài sản hoặc văn bản và hình ảnh từ tin tức về các sự kiện thích hợp. Vì khả năng tính toán và băng thông tương đối rẻ trong DON nên những thống kê này— ngay cả các mô hình học máy phức tạp có nhiều đầu vào—cũng có thể được xử lý một cách tiết kiệm, miễn là mọi giá trị đầu ra dành cho blockchain đều đủ ngắn gọn. Đối với các công việc đòi hỏi tính toán chuyên sâu trong đó DON người tham gia có thể có các ý kiến khác nhau quan điểm về đầu vào phức tạp, các vòng giao tiếp bổ sung giữa những người tham gia DON có thể được yêu cầu thiết lập sự đồng thuận về đầu vào trước khi tính toán kết quả. Miễn là giá trị cuối cùng được xác định đầy đủ bởi đầu vào, khi sự đồng thuận đầu vào được thiết lập, mỗi người tham gia có thể chỉ cần tính giá trị và truyền nó cho người khácngười tham gia bằng chữ ký một phần của họ hoặc gửi nó đến một công cụ tổng hợp. 7.2 DON Giảm thiểu sự tin cậy Chúng tôi hình dung hai cách chính để giảm thiểu sự tin cậy đặt vào các thành phần của DON: khách hàng chuyển đổi dự phòng và báo cáo thiểu số. 7.2.1 Khách hàng chuyển đổi dự phòng Các mô hình đối nghịch trong tài liệu về mật mã và hệ thống phân tán thường xem xét một đối thủ có khả năng làm hỏng (tức là xâm phạm) một tập hợp con các nút, ví dụ: ít hơn một phần ba đối với nhiều giao thức BFT. Tuy nhiên, người ta thường quan sát thấy, rằng nếu tất cả các nút chạy phần mềm giống hệt nhau, kẻ thù xác định được một lỗi khai thác nghiêm trọng có thể về nguyên tắc thỏa hiệp tất cả các nút ít nhiều cùng một lúc. Cài đặt này thường được gọi là độc canh phần mềm [47]. Nhiều đề xuất khác nhau về việc tự động đa dạng hóa phần mềm và cấu hình phần mềm đã được đưa ra để giải quyết vấn đề, ví dụ: [47, 113]. Như đã lưu ý trong [47], tuy nhiên, tính đa dạng của phần mềm là một vấn đề phức tạp và cần được xem xét cẩn thận. Ví dụ, đa dạng hóa phần mềm có thể dẫn đến tình trạng bảo mật kém hơn so với độc canh nếu nó tăng bề mặt tấn công của hệ thống và do đó các vectơ tấn công có thể vượt quá những lợi ích bảo mật mà nó mang lại. Chúng tôi tin rằng sự hỗ trợ dành cho các ứng dụng khách chuyển đổi dự phòng mạnh mẽ—tức là các ứng dụng khách với nút nào có thể chuyển đổi khi đối mặt với một sự kiện thảm khốc—là một hình thức đặc biệt hấp dẫn của đa dạng hóa phần mềm. Máy khách chuyển đổi dự phòng không làm tăng số lượng vectơ tiềm năng bị tấn công vì chúng không được triển khai như phần mềm chính. Chúng mang lại lợi ích rõ ràng, tuy nhiên, như một tuyến phòng thủ thứ hai. Chúng tôi dự định hỗ trợ các máy khách chuyển đổi dự phòng trong DONs như một phương tiện chính để giảm sự phụ thuộc vào bảo mật của họ vào một khách hàng. Chainlink đã có sẵn một hệ thống máy khách chuyển đổi dự phòng mạnh mẽ. Cách tiếp cận của chúng tôi liên quan đến việc duy trì các phiên bản máy khách đã được thử nghiệm trong trận chiến trước đó. Ví dụ: ngày nay, các nút Chainlink với Báo cáo chuỗi Off (OCR) là khách hàng chính của họ bao gồm hỗ trợ cho hệ thống FluxMonitor trước đó của Chainlink nếu cần. Đã được sử dụng một số hiện tại, FluxMonitor đã nhận được kiểm tra bảo mật và thử nghiệm hiện trường. Nó cung cấp tương tự chức năng như OCR, nhưng với chi phí cao hơn—chi phí chỉ phát sinh khi cần thiết. 7.2.2 Báo cáo thiểu số Với một tập hợp thiểu số đủ lớn Ominority—một phần nhỏ các nút trung thực quan sát thấy sự sai trái của đa số—việc chúng tạo ra thiểu số có thể hữu ích. báo cáo. Đây là một báo cáo hoặc cờ song song, được chuyển tiếp đến hợp đồng phụ thuộc SC trên chuỗi của Ominority. SC có thể sử dụng cờ này theo chính sách dành riêng cho hợp đồng của mình. Ví dụ: đối với một hợp đồng trong đó sự an toàn quan trọng hơn tính sống động hoặc khả năng đáp ứng, báo cáo thiểu số có thể khiến hợp đồng yêu cầu báo cáo bổ sung. từ DON khác hoặc kích hoạt cầu dao (xem phần tiếp theo).Báo cáo của thiểu số có thể đóng một vai trò quan trọng ngay cả khi đa số là trung thực, bởi vì bất kỳ sơ đồ tổng hợp báo cáo nào, ngay cả khi nó sử dụng chữ ký chức năng, đều phải hoạt động theo ngưỡng để đảm bảo khả năng phục hồi trước oracle hoặc lỗi dữ liệu. trong nói cách khác, phải có khả năng tạo ra một báo cáo hợp lệ dựa trên thông tin đầu vào của kS < nS oracles, đối với một số ngưỡng kS. Điều này có nghĩa là DON bị hỏng có một số vĩ độ trong việc thao tác các giá trị báo cáo bằng cách chọn các giá trị kS ưa thích của nó trong số nS được báo cáo trong V bởi tập hợp đầy đủ oracles, ngay cả khi tất cả các nguồn đều trung thực. Ví dụ, giả sử nS = 10 và kS = 7 trong hệ thống sử dụng hàm chữ ký để xác thực tính toán trung bình trên V đối với giá ETH bằng USD. Giả sử có năm nguồn báo cáo mức giá \(500, while the other five report \)1000. Sau đó, bằng cách tính trung bình 7 báo cáo thấp nhất, DON có thể tạo ra giá trị hợp lệ v = $500, và bằng cách tính trung bình mức cao nhất, nó có thể tạo ra v = $1000. Bằng cách nâng cao giao thức DON để tất cả các nút đều biết dữ liệu nào được có sẵn và dữ liệu nào được sử dụng để xây dựng báo cáo, các nút có thể phát hiện và gắn cờ xu hướng có ý nghĩa thống kê để ưu tiên một tập hợp báo cáo hơn tập hợp khác và tạo ra kết quả là một báo cáo thiểu số. 7.3 Đường ray bảo vệ Mô hình tin cậy của chúng tôi dành cho DON coi MAINCHAIN là đặc quyền cao hơn, bảo mật cao hơn hệ thống hơn DONs. (Mặc dù mô hình tin cậy này có thể không phải lúc nào cũng đúng nhưng nó dễ dàng hơn để điều chỉnh cơ chế kết quả cho phù hợp với các tình huống trong đó DON có độ bảo mật cao hơn nền tảng hơn là ngược lại.) Do đó, chiến lược giảm thiểu sự tin cậy tự nhiên bao gồm việc triển khai các cơ chế giám sát và an toàn dự phòng trong smart contracts—trong giao diện người dùng MAINCHAIN cho DON hoặc trực tiếp trong hợp đồng phụ thuộc SC. Chúng tôi gọi những cơ chế này là lan can bảo vệ và liệt kê một số điều quan trọng nhất ở đây: • Bộ ngắt mạch: SC có thể tạm dừng hoặc dừng cập nhật trạng thái do chức năng của các đặc điểm của chính bản cập nhật trạng thái đó (ví dụ: phương sai lớn giữa các lần cập nhật trạng thái báo cáo) hoặc dựa trên các đầu vào khác. Ví dụ, một cầu dao có thể ngắt điện các trường hợp trong đó báo cáo oracle thay đổi đáng kể theo thời gian. Bộ ngắt mạch có thể cũng bị vấp ngã bởi một báo cáo thiểu số. Do đó, bộ ngắt mạch có thể ngăn chặn DONs khỏi việc đưa ra những báo cáo sai lầm trầm trọng. Bộ ngắt mạch có thể cung cấp thời gian để xem xét các biện pháp can thiệp bổ sung hoặc tập thể dục. Một sự can thiệp như vậy là cửa thoát hiểm. • Cửa thoát hiểm: Trong các trường hợp bất lợi, được xác định bởi một nhóm người giám hộ, chủ sở hữu token cộng đồng hoặc các cơ quan quản trị khác, hợp đồng có thể viện dẫn cơ sở khẩn cấp đôi khi được gọi là cửa thoát hiểm [163]. Một lối thoát hiểm khiến SC tắt theo cách nào đó và/hoặc chấm dứt đang chờ xử lý và có thể các giao dịch trong tương lai. Ví dụ: nó có thể trả lại tiền được lưu ký cho người dùng [17]),có thể chấm dứt các điều khoản hợp đồng [162] hoặc có thể hủy các giao dịch đang chờ xử lý và/hoặc trong tương lai [173]. Cửa thoát hiểm có thể được triển khai trong bất kỳ loại hợp đồng nào, không chỉ một cái dựa trên DON, nhưng chúng được quan tâm như một bộ đệm tiềm năng chống lại DON sự cố. • Chuyển đổi dự phòng: Trong các hệ thống mà SC dựa vào DON cho các dịch vụ thiết yếu, SC có thể cung cấp cơ chế chuyển đổi dự phòng để đảm bảo dịch vụ luôn được tiếp tục trong trường hợp DON thất bại hoặc hành vi sai trái. Ví dụ: trong TEF (Phần 6), hợp đồng neo SCa có thể cung cấp giao diện kép trong đó cả trên chuỗi và Giao diện thực thi ngoài chuỗi được hỗ trợ cho một số hoạt động quan trọng nhất định (ví dụ: rút tiền) hoặc đối với các giao dịch thông thường, với độ trễ phù hợp để ngăn chặn việc chạy trước các giao dịch DON. Trong trường hợp nguồn dữ liệu ký dữ liệu, người dùng có thể cũng cung cấp báo cáo cho SCa khi DON không thực hiện được. Bằng chứng gian lận, như được đề xuất cho các hình thức lạc quan khác nhau rollup (xem Phần 6.3), có hương vị tương tự và bổ sung cho các cơ chế mà chúng tôi liệt kê ở trên. Họ cũng cung cấp một hình thức giám sát và bảo vệ trên chuỗi chống lại các lỗi tiềm ẩn trong các thành phần hệ thống ngoài chuỗi. 7.4 Quản trị tối thiểu hóa niềm tin Giống như tất cả các hệ thống phi tập trung, mạng Chainlink yêu cầu cơ chế quản trị để điều chỉnh các thông số theo thời gian, ứng phó với các trường hợp khẩn cấp và hướng dẫn sự phát triển của nó. Một số cơ chế này hiện có trên MAINCHAIN và có thể tiếp tục làm như vậy ngay cả khi triển khai DONs. Một ví dụ là cơ chế thanh toán dành cho nhà cung cấp nút oracle (DON nút). DON hợp đồng giao diện người dùng trên MAINCHAIN chứa các cơ chế bổ sung, chẳng hạn như đường ray bảo vệ, có thể phải chịu sự kiểm soát định kỳ sửa đổi. Chúng tôi thấy trước hai loại cơ chế quản trị: tiến hóa và khẩn cấp. Quản trị tiến hóa: Nhiều sửa đổi đối với hệ sinh thái Chainlink được thực hiện sao cho việc thực hiện chúng không phải là vấn đề cấp bách: Cải thiện hiệu suất, cải tiến tính năng, nâng cấp bảo mật (không khẩn cấp), v.v. Khi Chainlink dần dần hướng tới nhiều người tham gia hơn nữa vào việc quản trị, chúng tôi mong đợi nhiều hoặc hầu hết những thay đổi như vậy sẽ được phê chuẩn bởi cộng đồng DON cụ thể bị ảnh hưởng bởi những thay đổi đó những thay đổi. Tạm thời và có lẽ cuối cùng là một cơ chế song song, chúng tôi tin rằng rằng khái niệm về đặc quyền tối thiểu tạm thời có thể là một phương tiện hữu ích để thực hiện quản trị tiến hóa. Rất đơn giản, ý tưởng là những thay đổi sẽ được triển khai dần dần, đảm bảo cộng đồng có cơ hội đáp ứng lại chúng. Ví dụ: di chuyển sang một nơi mới Hợp đồng MAINCHAIN có thể bị hạn chế để hợp đồng mới phải được triển khai ít nhất ba mươi ngày trước khi kích hoạt.Quản lý khẩn cấp: Các lỗ hổng có thể bị khai thác hoặc bị khai thác trong MAINCHAIN hợp đồng hoặc các hình thức mất an toàn hoặc sự sống khác có thể yêu cầu can thiệp ngay lập tức để đảm bảo chống lại các hậu quả thảm khốc. Mục đích của chúng tôi là hỗ trợ multisig cơ chế can thiệp trong đó, để đảm bảo chống lại hành vi sai trái của bất kỳ tổ chức nào, người ký sẽ được phân tán khắp các tổ chức. Đảm bảo sự sẵn có nhất quán của người ký và tiếp cận kịp thời các chuỗi lệnh thích hợp để cấp phép cho tình huống khẩn cấp những thay đổi rõ ràng sẽ yêu cầu lập kế hoạch hoạt động cẩn thận và xem xét thường xuyên. Những cái này những thách thức tương tự như những thách thức liên quan đến việc thử nghiệm khả năng ứng phó với sự cố an ninh mạng khác khả năng [134], với nhu cầu tương tự để chống lại các vấn đề thường gặp như suy giảm cảnh giác [223]. Việc quản trị DON khác với nhiều hệ thống phi tập trung trong đó mức độ tiềm tàng của sự không đồng nhất. Mỗi DON có thể có các nguồn dữ liệu, tệp thực thi, yêu cầu cấp độ dịch vụ như thời gian hoạt động và người dùng riêng biệt. Mạng Chainlink Cơ chế quản trị phải đủ linh hoạt để thích ứng với những thay đổi trong mục tiêu và thông số hoạt động. Chúng tôi đang tích cực khám phá các ý tưởng thiết kế và lên kế hoạch công bố nghiên cứu về chủ đề này trong tương lai. 7,5 Cơ sở hạ tầng khóa công khai Với sự phân cấp tiến bộ sẽ xuất hiện nhu cầu xác định rõ ràng các những người tham gia mạng, bao gồm các nút DON. Đặc biệt, Chainlink yêu cầu mạnh mẽ Cơ sở hạ tầng khóa công khai (PKI). PKI là một hệ thống liên kết các khóa với danh tính. cho Ví dụ: PKI hỗ trợ hệ thống kết nối an toàn (TLS) của Internet: Khi bạn kết nối với một trang web qua HTTPS (ví dụ: https://www.chainlinklabs.com) và một lock xuất hiện trong trình duyệt của bạn, điều đó có nghĩa là khóa chung của chủ sở hữu tên miền có được cơ quan có thẩm quyền ràng buộc với chủ sở hữu đó—cụ thể là thông qua chữ ký số trong cái gọi là chứng chỉ. Một hệ thống phân cấp của các cơ quan cấp chứng chỉ (CA), có các cơ quan cấp cao nhất được cài đặt sẵn vào các trình duyệt phổ biến, giúp đảm bảo rằng các chứng chỉ chỉ được cấp cho chủ sở hữu hợp pháp của tên miền. Chúng tôi hy vọng rằng Chainlink cuối cùng sẽ sử dụng các dịch vụ tên phi tập trung, ban đầu là Ethereum Dịch vụ tên (ENS) [22], làm nền tảng cho PKI của chúng tôi. Như Tên của nó gợi ý, ENS tương tự như DNS, Hệ thống tên miền ánh xạ (người có thể đọc được) thành địa chỉ IP trên internet. Tuy nhiên, thay vào đó, ENS ánh xạ các tên Ethereum mà con người có thể đọc được tới các địa chỉ blockchain. Bởi vì ENS hoạt động trên Ethereum blockchain, ngăn chặn việc xâm phạm khóa, giả mạo khóa của nó không gian tên về nguyên tắc cũng khó như việc giả mạo hợp đồng quản lý nó và/hoặc blockchain cơ bản. (Ngược lại, DNS trước đây dễ bị tấn công để giả mạo, chiếm quyền điều khiển và các cuộc tấn công khác.) Chúng tôi đã đăng ký data.eth với ENS trên mạng chính Ethereum và dự định thiết lập nó như một không gian tên gốc, trong đó danh tính của các dịch vụ dữ liệu oracle và Chainlink thực thể mạng khác cư trú. Các miền trong ENS có tính phân cấp, nghĩa là mỗi miền có thể chứa các tham chiếu với các tên khác dưới nó. Tên miền phụ trong ENS có thể dùng như một cách để tổ chức vàủy thác sự tin tưởng. Vai trò chính của data.eth sẽ là phục vụ như một dịch vụ thư mục trên chuỗi cho nguồn cấp dữ liệu. Theo truyền thống, các nhà phát triển và người dùng oracle thường sử dụng các nguồn ngoài chuỗi (ví dụ: các trang web như docs.chain.link hoặc data.chain.link hoặc các mạng xã hội như Twitter) để xuất bản và lấy oracle địa chỉ nguồn cấp dữ liệu (chẳng hạn như giá ETH-USD thức ăn). Với không gian tên gốc có độ tin cậy cao như data.eth, thay vào đó, có thể thiết lập ánh xạ eth-usd.data.eth tới địa chỉ smart contract của công cụ tổng hợp mạng oracle trên chuỗi cho nguồn cấp dữ liệu giá ETH-USD. Điều này sẽ tạo đường dẫn an toàn để mọi người tham khảo blockchain làm nguồn thông tin chính xác cho nguồn cấp dữ liệu của cặp giá/tên đó (ETH-USD). Do đó, việc sử dụng ENS như vậy nhận ra hai lợi ích không có sẵn trong các nguồn dữ liệu ngoài chuỗi: • Bảo mật mạnh mẽ: Mọi thay đổi, cập nhật tên miền đều được ghi lại bất biến và được bảo mật bằng mật mã, trái ngược với địa chỉ văn bản trên một trang web, không được hưởng cả hai đặc tính bảo mật này. • Tuyên truyền tự động trên chuỗi: Cập nhật địa chỉ cơ bản của smart contract của nguồn cấp dữ liệu có thể kích hoạt thông báo truyền đến thông minh phụ thuộc hợp đồng và có thể, ví dụ, tự động cập nhật các hợp đồng phụ thuộc với các địa chỉ mới.13 Tuy nhiên, các không gian tên như ENS không tự động xác thực quyền sở hữu hợp pháp của những cái tên đã được khẳng định. Vì vậy, ví dụ, nếu không gian tên bao gồm mục ⟨“Acme Oracle Node Co.”, addr⟩, sau đó người dùng nhận được sự đảm bảo rằng addr thuộc về người yêu cầu tên Acme Oracle Node Co. Nếu không có cơ chế bổ sung về quản trị vùng tên, tuy nhiên, cô ấy không có được sự đảm bảo rằng tên đó thuộc về một thực thể một cách hợp pháp được gọi là Acme Oracle Node Co. theo nghĩa có ý nghĩa trong thế giới thực. Cách tiếp cận của chúng tôi để xác thực tên, tức là đảm bảo quyền sở hữu của chúng bởi các thực thể hợp pháp, tương ứng trong thế giới thực, dựa vào một số thành phần. Hôm nay, Chainlink Phòng thí nghiệm hoạt động hiệu quả như một CA cho mạng Chainlink. Trong khi Chainlink Lab sẽ tiếp tục để xác thực tên, PKI của chúng tôi sẽ phát triển thành một mô hình phi tập trung hơn theo hai cách: • Mô hình web-of-trust: Đối tác phi tập trung của PKI phân cấp thường được gọi là web-of-trust.14 Các biến thể đã được đề xuất từ những năm 1990, ví dụ: [98] và một số nhà nghiên cứu đã quan sát thấy rằng blockchain có thể tạo điều kiện thuận lợi cho việc sử dụng ý tưởng, ví dụ: [227] bằng cách ghi lại các chứng chỉ theo cách nhất quán trên toàn cầu sổ cái. Chúng tôi đang khám phá các biến thể của mô hình này để xác thực danh tính của các thực thể trong mạng Chainlink theo cách phi tập trung hơn. Hợp đồng phụ thuộc 13A có thể tùy chọn bao gồm thời gian trì hoãn được xác định trước để cho phép kiểm tra thủ công và sự can thiệp của các quản trị viên hợp đồng phụ thuộc. 14Thuật ngữ do Phil Zimmermann đặt ra cho PGP [238].• Liên kết với dữ liệu xác thực: Ngày nay, một lượng đáng kể dữ liệu hiệu suất nút oracle được hiển thị trên chuỗi và do đó được liên kết lưu trữ với các địa chỉ nút. Dữ liệu đó có thể được xem là làm phong phú thêm danh tính trong PKI bằng cách cung cấp bằng chứng lịch sử về sự tham gia (đáng tin cậy) của nó trong mạng. Ngoài ra, công cụ để nhận dạng phi tập trung dựa trên DECO và Town Crier [160] kích hoạt các nút để tích lũy thông tin xác thực có nguồn gốc từ dữ liệu trong thế giới thực. Chỉ là một ví dụ, một nhà điều hành nút có thể đính kèm thông tin xác thực vào danh tính PKI của nó để chứng minh quyền sở hữu theo xếp hạng của Dun và Bradstreet. Những hình thức xác nhận bổ sung này có thể bổ sung staking trong việc tạo sự đảm bảo an ninh mạng. Nút oracle có danh tính trong thế giới thực đã được thiết lập có thể được xem là có cổ phần trong một hệ thống xuất phát từ danh tiếng của nó. (Xem Phần 4.3 và Phần 9.6.3.) Yêu cầu cuối cùng đối với Chainlink PKI là khởi động an toàn, tức là an toàn xuất bản tên gốc cho mạng Chainlink, hiện tại là data.eth (tương tự nối cứng các tên miền cấp cao nhất trong trình duyệt). Nói cách khác, làm thế nào để Chainlink người dùng xác định rằng data.eth thực sự là miền cấp cao nhất được liên kết với Chainlink dự án? Giải pháp cho vấn đề này cho mạng Chainlink là đa hướng và có thể liên quan đến: • Thêm bản ghi TXT [224] vào bản ghi tên miền của chúng tôi cho chain.link chỉ định data.eth làm miền gốc cho hệ sinh thái Chainlink. (Chainlink do đó ngầm tận dụng PKI cho các miền internet để xác thực miền ENS gốc của nó.) • Liên kết tới data.eth từ trang web hiện tại của Chainlink, ví dụ: từ https://docs.chain.link. (Một cách sử dụng PKI ngầm khác cho các miền internet.) • Sử dụng data.eth được biết đến qua nhiều tài liệu khác nhau, bao gồm cả báo cáo chính thức này. • Đăng công khai data.eth trên các kênh truyền thông xã hội của chúng tôi, chẳng hạn như Twitter và blog Chainlink [18]. • Đặt một số lượng lớn LINK dưới sự kiểm soát của cùng một địa chỉ người đăng ký như data.eth.
DON Considérations relatives au déploiement
Bien que cela ne fasse pas partie de notre conception principale, il existe plusieurs considérations techniques importantes. dans la réalisation de DONs qui méritent d'être traités ici.
8.1 Approche de déploiement Cet article présente une vision ambitieuse des fonctionnalités avancées Chainlink dont sa réalisation nécessitera des solutions à de nombreux défis en cours de route. Ce livre blanc identifie certains défis, mais des défis imprévus surgiront certainement. Nous prévoyons de mettre en œuvre les éléments de cette vision de manière progressive sur une période période prolongée. Nous nous attendons à ce que les DONs soient initialement lancés avec prise en charge de composants prédéfinis spécifiques construits en collaboration par les équipes au sein du Communauté Chainlink. L'intention est que des utilisations plus larges des DON, par exemple la capacité de lancer des exécutables arbitraires, verra le support plus tard. L’une des raisons d’une telle prudence est que la composition des smart contract peut avoir des effets secondaires complexes, involontaires et dangereux, comme l’ont montré les récentes attaques basées sur les prêts flash. par exemple montré [127, 189]. De même, la composition des smart contracts, des adaptateurs et les exécutables nécessiteront une extrême prudence. Dans notre déploiement initial de DONs, nous prévoyons d'inclure uniquement un ensemble prédéfini d'exécutables et d'adaptateurs modélisés. Cela permettra d’étudier la sécurité compositionnelle de ces fonctionnalités en utilisant des méthodes formelles [46, 170] et d'autres approches. Ce sera simplifie également la tarification : la tarification des fonctionnalités peut être établie par les nœuds DON sur une base de fonctionnalité, plutôt que via un comptage généralisé, une approche adoptée dans, par exemple, [156]. Nous attendons également que la communauté Chainlink participe à la création de modèles supplémentaires, combinant divers adaptateurs et exécutables dans des formats de plus en plus services décentralisés utiles qui peuvent être gérés par des centaines, voire des milliers de personnes DONs. De plus, cette approche peut aider à prévenir la surcharge de l'État, c'est-à-dire le besoin de DON nœuds pour conserver une quantité d’état irréalisable dans la mémoire de travail. Ce problème est déjà apparue dans les blockchain sans autorisation, des approches motivantes telles que « apatrides clients » (voir, par exemple, [206]). Cela peut être plus aigu dans les systèmes à plus haut débit, motivant une approche dans laquelle un DON déploie uniquement des exécutables optimisés en termes de taille d'état. À mesure que les DON évoluent et mûrissent et incluent des garde-corps robustes, comme indiqué dans la section 7, des mécanismes de sécurité cryptoéconomiques et basés sur la réputation, comme indiqué dans la section 9, et d'autres fonctionnalités qui fournissent un degré élevé d'assurance aux utilisateurs de DON, nous nous espérons également développer un cadre et des outils pour faciliter un lancement et une utilisation plus larges de DONs par la communauté. Idéalement, ces outils permettront à un ensemble d'opérateurs de nœuds se réunir en un réseau oracle et lancer leurs propres DON dans un environnement sans autorisation ou en libre-service, ce qui signifie qu'ils peuvent le faire unilatéralement. 8.2 Adhésion dynamique DON L'ensemble de nœuds exécutant un DON donné peut changer au fil du temps. Il existe deux approches à la gestion des clés pour skL étant donné l'adhésion dynamique à O. La première consiste à mettre à jour les parts de skL détenues par les nœuds lors des changements d'adhésion, tout en gardant pkL inchangé. Cette approche, explorée dans [41, 161, 198], a le mérite de ne pas exiger que les parties utilisatrices mettent à jour pkL.La technique classique de repartage de partage, introduite dans [122], fournit un moyen simple et efficace de réaliser de telles mises à jour de partage. Il permet de transférer un secret entre un ensemble de nœuds O(1) et un second, éventuellement coupant un O(2). Dans ce approche, chaque nœud O(1) je effectue un partage secret (k(2), n(2)) de son partage secret à travers nœuds dans O(2) pour n(2) = |O(2)| et le seuil k(2) souhaité (éventuellement nouveau). Divers systèmes de partage de secrets vérifiables (VSS) [108] peuvent assurer la sécurité contre un adversaire qui corrompt activement les nœuds, c'est-à-dire introduit un comportement malveillant dans le protocole. Les techniques de [161] visent à le faire tout en réduisant la complexité de la communication et en fournissant résilience contre les échecs des hypothèses de dureté cryptographique. Une deuxième approche consiste à mettre à jour la clé du grand livre pkL. Cela a l'avantage d'avancer sécurité : la compromission des anciennes actions de pkL (c'est-à-dire les anciens nœuds de comité) ne serait pas entraîner une compromission de la clé actuelle. Les mises à jour de pkL présentent cependant deux inconvénients : (1) Les données chiffrées sous pkL doivent être rechiffrées lors d'une actualisation de clé et (2) Les mises à jour clés doivent être propagées aux parties utilisatrices. Nous avons l’intention d’explorer les deux approches, ainsi que les hybridations des deux. 8.3 DON Responsabilité Comme pour les réseaux Chainlink oracle existants, les DON incluront des mécanismes de responsabilité, c'est-à-dire l'enregistrement, la surveillance et l'application du comportement correct des nœuds. DONs auront capacité de données beaucoup plus importante que de nombreux blockchain sans autorisation existants, en particulier compte tenu de leur capacité à se connecter à un stockage décentralisé externe. Par conséquent, ils pourront enregistrer en détail l’historique des performances des nœuds, permettant des mécanismes de responsabilisation plus précis. Par exemple, le calcul hors chaîne de les prix des actifs peuvent impliquer des intrants qui sont rejetés avant qu'un résultat médian ne soit envoyé chaîne. Dans un DON, ces résultats intermédiaires pourraient être enregistrés. Un mauvais comportement ou des erreurs de performance de la part de nœuds individuels dans un DON peuvent ainsi être corrigés ou pénalisés sur le DON de manière fine. Nous avons également discuté des approches pour construire les garde-corps de la section 7.3 qui traitent de l'impact spécifique au contrat des défaillances systémiques. Cependant, il est également important de disposer de mécanismes de sécurité pour les DON eux-mêmes, c'est-à-dire des protections contre les défaillances systémiques et potentiellement catastrophiques DON, en particulier les échecs de fork/équivoque et d'accord de niveau de service (SLA), comme nous l'expliquons maintenant. Fourche / équivoque : Étant donné suffisamment de nœuds défectueux, un DON peut bifurquer ou équivoque, produisant deux blocs ou séquences de blocs distincts et incohérents dans L. Cependant, étant donné qu'un DON signe numériquement le contenu de L, il est possible d'exploiter un chaîne principale MAINCHAIN pour prévenir et/ou pénaliser les équivoques. Le DON peut vérifier périodiquement l'état du point de L dans un contrat d'audit sur MAINCHAIN. Si son état futur s'écarte d'un état de point de contrôle, un utilisateur/auditeur peut présenter une preuve de cette mauvaise conduite au contrat d'audit. Une telle preuve peut être utilisée pour générer une alerte ou pénaliser les nœuds DON en réduisant le contrat. Cette dernière approche introduit un problème de conception d'incitations similaire à celui des flux oracle spécifiques, et peut s'appuyer sur notre travail décrit à la section 9.Application des accords de niveau de service : Bien que les DON ne soient pas nécessairement destinés à fonctionnent indéfiniment, il est important qu’ils respectent les accords de niveau de service (SLA) avec leurs utilisateurs. L’application de base des SLA est possible sur une chaîne principale. Par exemple, Les nœuds DON peuvent s'engager à maintenir le DON jusqu'à une certaine date, ou à fournir un préavis de résiliation du service (par exemple, un préavis de trois mois). Un contrat sur MAINCHAIN peut assurer l’application de base des SLA cryptoéconomiques. Par exemple, le contrat SLA peut réduire considérablement les fonds déposés DON si les points de contrôle sont pas fournis aux intervalles requis. Un utilisateur peut déposer des fonds et contester le DON prouver qu'un point de contrôle représente correctement une séquence de blocs valides (de manière analogue, par ex. [141]). Bien entendu, production de blocs n’est pas synonyme de transaction. traitement, mais le contrat SLA peut également servir à faire respecter ce dernier. Par exemple, dans Dans la version compatible avec l'héritage de FSS dans laquelle les transactions sont extraites du mempool (voir Section 5.2), les transactions sont finalement extraites et placées sur la chaîne. Un utilisateur peut prouver un délit de DON en fournissant au contrat SLA une transaction qui a été extrait mais n'a pas été transmis par le DON pour traitement par le contrat cible dans un intervalle de temps approprié.15 Il est également possible de prouver l’existence et de sanctionner des SLA plus fins. échecs, y compris les erreurs de calcul utilisant les exécutables (via, par exemple, les mécanismes pour prouver l'exactitude des transactions d'état hors chaîne décrites dans la section 6.3) ou l'échec de l'exécution exécutables basés sur des initiateurs visibles sur un DON, échec du relais des données sur le DON vers MAINCHAIN en temps opportun, et ainsi de suite.
DON Cân nhắc triển khai
Mặc dù không phải là một phần trong thiết kế cốt lõi của chúng tôi nhưng có một số cân nhắc kỹ thuật quan trọng trong việc nhận ra DON đáng được điều trị ở đây.
8.1 Phương pháp triển khai Bài viết này đưa ra một tầm nhìn đầy tham vọng về chức năng Chainlink nâng cao mà Việc hiện thực hóa sẽ đòi hỏi các giải pháp cho nhiều thách thức trên đường đi. Sách trắng này xác định một số thách thức, nhưng những thách thức không lường trước được chắc chắn sẽ phát sinh. Chúng tôi dự định triển khai các yếu tố của tầm nhìn này theo cách tăng dần theo thời gian. khoảng thời gian kéo dài. Kỳ vọng của chúng tôi là DON ban đầu sẽ khởi chạy với hỗ trợ cho các thành phần dựng sẵn cụ thể được các nhóm trong nhóm hợp tác xây dựng Chainlink cộng đồng. Mục đích là sử dụng DONs rộng rãi hơn, ví dụ: khả năng khởi chạy các tệp thực thi tùy ý, sẽ thấy hỗ trợ sau. Một lý do cần thận trọng như vậy là thành phần của smart contract có thể có những tác dụng phụ phức tạp, ngoài ý muốn và nguy hiểm, như các cuộc tấn công dựa trên khoản vay nhanh gần đây đã gây ra ví dụ được hiển thị [127, 189]. Tương tự, thành phần của smart contract, bộ điều hợp và các tệp thực thi sẽ yêu cầu hết sức cẩn thận. Trong quá trình triển khai DON ban đầu, chúng tôi dự định chỉ bao gồm một tập hợp các bộ điều hợp và thực thi được tạo khuôn mẫu dựng sẵn. Điều này sẽ cho phép nghiên cứu về an ninh thành phần của các chức năng này bằng cách sử dụng các phương pháp hình thức [46, 170] và các cách tiếp cận khác. Nó sẽ cũng đơn giản hóa việc định giá: Việc định giá chức năng có thể được thiết lập bởi các nút DON trên cơ sở chức năng, thay vì thông qua đo lường tổng quát, một cách tiếp cận được áp dụng trong, ví dụ: [156]. Chúng tôi cũng mong muốn cộng đồng Chainlink tham gia vào quá trình tạo các mẫu bổ sung, kết hợp nhiều bộ điều hợp và tệp thực thi khác nhau để ngày càng các dịch vụ phi tập trung hữu ích có thể được điều hành bởi hàng trăm, nếu không phải hàng nghìn cá nhân DONs. Ngoài ra, cách tiếp cận này có thể giúp ngăn ngừa sự phình to của trạng thái, tức là nhu cầu DON các nút để giữ lại một lượng trạng thái không thể thực hiện được trong bộ nhớ làm việc. Vấn đề này là đã phát sinh trong blockchains không được phép, thúc đẩy các phương pháp tiếp cận như “không quốc tịch khách hàng” (xem ví dụ: [206]). Nó có thể gay gắt hơn trong các hệ thống thông lượng cao hơn, thúc đẩy một cách tiếp cận trong đó DON chỉ triển khai các tệp thực thi được tối ưu hóa theo quy mô trạng thái. Khi DON phát triển và hoàn thiện, đồng thời bao gồm các rào chắn bảo vệ mạnh mẽ, như được thảo luận trong Phần 7, các cơ chế bảo mật dựa trên danh tiếng và kinh tế tiền điện tử như được thảo luận trong Phần 9, cũng như các tính năng khác cung cấp mức độ đảm bảo cao cho người dùng DON, chúng tôi cũng mong muốn phát triển một khuôn khổ và các công cụ để tạo điều kiện cho việc triển khai và sử dụng rộng rãi hơn DON bởi cộng đồng. Lý tưởng nhất là những công cụ này sẽ cho phép một tập hợp các toán tử nút kết hợp với nhau thành một mạng oracle và khởi chạy DON của riêng họ theo cách không cần cấp phép hoặc theo cách tự phục vụ, nghĩa là họ có thể đơn phương thực hiện việc đó. 8.2 Năng động DON Tư cách thành viên Tập hợp các nút chạy DON nhất định có thể thay đổi theo thời gian. Có hai cách tiếp cận quản lý khóa cho skL với tư cách thành viên năng động trong O. Đầu tiên là cập nhật phần chia sẻ của skL do các nút nắm giữ khi có thay đổi về tư cách thành viên, trong khi vẫn giữ pkL không thay đổi. Cách tiếp cận này, được khám phá trong [41, 161, 198], có giá trị không yêu cầu các bên liên quan cập nhật pkL.Kỹ thuật chia sẻ lại chia sẻ cổ điển, được giới thiệu trong [122], cung cấp một cách đơn giản và cách hiệu quả để hiện thực hóa các cập nhật chia sẻ đó. Nó cho phép một bí mật được chuyển giao giữa một tập hợp các nút O(1) và một giây, có thể giao nhau với một O(2). Trong này cách tiếp cận, mỗi nút O(1) tôi thực hiện (k(2), n(2)) chia sẻ bí mật việc chia sẻ bí mật của nó trên các nút trong O(2) với n(2) = |O(2)| và ngưỡng mong muốn (có thể là mới) k(2). Các sơ đồ chia sẻ bí mật có thể xác minh (VSS) khác nhau [108] có thể cung cấp bảo mật chống lại kẻ thù chủ động làm hỏng các nút, tức là đưa hành vi nguy hiểm vào giao thức. Các kỹ thuật trong [161] nhằm mục đích thực hiện điều đó đồng thời giảm độ phức tạp trong giao tiếp và cung cấp khả năng phục hồi chống lại các thất bại trong các giả định về độ cứng của mật mã. Cách tiếp cận thứ hai là cập nhật khóa sổ cái pkL. Điều này có lợi ích về phía trước bảo mật: Việc thỏa hiệp các cổ phiếu cũ của pkL (tức là các nút ủy ban cũ) sẽ không dẫn đến sự thỏa hiệp của khóa hiện tại. Tuy nhiên, các bản cập nhật lên pkL có hai nhược điểm: (1) Dữ liệu được mã hóa theo pkL cần được mã hóa lại trong quá trình làm mới khóa và (2) Các cập nhật quan trọng cần được phổ biến tới các bên tin cậy. Chúng tôi dự định khám phá cả hai cách tiếp cận cũng như sự kết hợp của cả hai. 8.3 DON Trách nhiệm Giống như các mạng Chainlink oracle hiện có, DON sẽ bao gồm các cơ chế về trách nhiệm giải trình, tức là ghi lại, giám sát và thực thi hành vi chính xác của nút. DONs sẽ có dung lượng dữ liệu đáng kể hơn nhiều so với nhiều blockchain không được phép hiện có, đặc biệt là khả năng kết nối với bộ lưu trữ phi tập trung bên ngoài. Do đó, họ sẽ có thể ghi lại lịch sử hiệu suất của các nút một cách chi tiết, cho phép cơ chế trách nhiệm giải trình chi tiết hơn. Ví dụ: tính toán ngoài chuỗi của giá tài sản có thể liên quan đến các yếu tố đầu vào bị loại bỏ trước khi kết quả trung bình được gửi đi chuỗi. Trong DON, những kết quả trung gian này có thể được ghi lại. Do đó, hành vi sai trái hoặc mất hiệu suất của các nút riêng lẻ trong DON có thể được khắc phục hoặc bị phạt đối với DON một cách chi tiết. Chúng tôi cũng đã thảo luận thêm về các phương pháp xây dựng lan can bảo vệ trong Phần 7.3 đề cập đến tác động cụ thể theo hợp đồng của các lỗi hệ thống. Tuy nhiên, điều quan trọng là phải có cơ chế an toàn cho chính DON, tức là, các biện pháp bảo vệ chống lại các lỗi hệ thống, có khả năng gây thảm họa DON, cụ thể là các lỗi phân nhánh/không rõ ràng và thỏa thuận cấp độ dịch vụ (SLA), như chúng tôi giải thích hiện nay. Phân nhánh/không rõ ràng: Với đủ nhiều nút bị lỗi, DON có thể phân nhánh hoặc lập lờ, tạo ra hai khối hoặc chuỗi khối riêng biệt, không nhất quán trong L. Tuy nhiên, vì DON ký điện tử vào nội dung của L nên có thể tận dụng chuỗi chính MAINCHAIN để ngăn chặn và/hoặc trừng phạt hành vi không rõ ràng. DON có thể kiểm tra định kỳ trạng thái điểm từ L trong hợp đồng kiểm tra trên MAINCHAIN. Nếu trạng thái trong tương lai của nó khác với trạng thái được kiểm tra, người dùng/kiểm toán viên có thể đưa ra bằng chứng về hành vi sai trái này đối với hợp đồng kiểm toán. Bằng chứng như vậy có thể được sử dụng để tạo ra một cảnh báo hoặc phạt DON nút bằng cách gạch chéo trong hợp đồng. Cách tiếp cận sau này giới thiệu một vấn đề thiết kế khuyến khích tương tự như vấn đề đối với các nguồn cấp dữ liệu oracle cụ thể và có thể xây dựng dựa trên công việc của chúng tôi được nêu trong Phần 9.Thực thi các thỏa thuận cấp độ dịch vụ: Mặc dù DON không nhất thiết nhằm mục đích chạy vô thời hạn, điều quan trọng là chúng phải tuân thủ các thỏa thuận cấp độ dịch vụ (SLA) với người dùng của họ. Có thể thực thi SLA cơ bản trên chuỗi chính. Ví dụ, Các nút DON có thể cam kết duy trì DON cho đến một ngày nhất định hoặc cung cấp thông báo trước về việc chấm dứt dịch vụ (ví dụ: thông báo trước ba tháng). Một hợp đồng trên MAINCHAIN có thể cung cấp việc thực thi SLA kinh tế tiền điện tử cơ bản. Ví dụ: hợp đồng SLA có thể cắt giảm số tiền ký gửi DON nếu điểm kiểm tra không được cung cấp ở những khoảng thời gian cần thiết. Người dùng có thể gửi tiền và thách thức DON để chứng minh rằng điểm kiểm tra thể hiện chính xác một chuỗi các khối hợp lệ (theo cách tương tự như, ví dụ: [141]). Tất nhiên, sản xuất khối không đồng nghĩa với giao dịch. xử lý, nhưng hợp đồng SLA cũng có thể dùng để thực thi quy trình sau. Ví dụ, trong phiên bản tương thích cũ của FSS trong đó các giao dịch được tìm nạp từ mempool (xem Phần 5.2), các giao dịch cuối cùng sẽ được khai thác và đặt trên chuỗi. Một người dùng có thể chứng minh DON hành vi sai trái bằng cách cung cấp cho hợp đồng SLA một giao dịch đã được khai thác nhưng không được DON truyền đi để hợp đồng mục tiêu xử lý trong khoảng thời gian thích hợp.15 Cũng có thể chứng minh sự tồn tại và xử phạt SLA chi tiết hơn các lỗi, bao gồm các lỗi trong tính toán sử dụng các tệp thực thi (ví dụ: thông qua các cơ chế để chứng minh các giao dịch trạng thái ngoài chuỗi chính xác được nêu trong Phần 6.3) hoặc không chạy được các tệp thực thi dựa trên các trình khởi tạo hiển thị trên DON, không thể chuyển tiếp dữ liệu trên DON tới MAINCHAIN một cách kịp thời, v.v.
Économie et cryptoéconomie
Pour que le réseau Chainlink atteigne une sécurité renforcée dans un modèle de confiance décentralisé, il est essentiel que les nœuds présentent collectivement un comportement correct, c'est-à-dire qu'ils adhèrent la plupart du temps, exactement selon les protocoles DON. Dans cette section, nous discutons des approches pour aider à faire respecter un tel comportement au moyen d'incitations économiques, c'est-à-dire cryptoéconomiques incitations. Ces incitations se répartissent en deux catégories : explicites et implicites, réalisées respectivement via staking et l'opportunité de frais futurs (FFO). Jalonnement : Le jalonnement dans Chainlink, comme dans d'autres systèmes blockchain, implique les participants du réseau, c'est-à-dire les nœuds oracle, déposant des fonds bloqués sous la forme de LINK token. Ces les fonds, que nous appelons également participation ou participation explicite, sont une incitation explicite. Ils sont sujets à confiscation en cas de défaillance ou de malversation du nœud. Dans le contexte blockchain, cette procédure est souvent appelée « slashing ». Le jalonnement par les nœuds oracle dans Chainlink diffère cependant fondamentalement de celui de staking. par validators dans des blockchains sans autorisation. Les validateurs peuvent se comporter mal en équivoque ou en ordonnant des transactions de manière contradictoire. Le protocole de consensus sous-jacent dans un 15Comme les utilisateurs peuvent remplacer les transactions dans le mempool, il faut veiller à assurer une correspondance correcte entre les transactions extraites et les transactions soumises par DON.blockchain sans autorisation, cependant, utilise des règles de validation de bloc strictes et des primitives cryptographiques pour empêcher validator de générer des blocs invalides. En revanche, les protections programmatiques ne peuvent pas empêcher un réseau oracle tricheur de générer rapports invalides. La raison en est une différence clé entre les deux types de système : la validation des transactions dans blockchains est une propriété de cohérence interne, tandis que l'exactitude des rapports oracle sur un blockchain est une propriété de données externes, c'est-à-dire hors chaîne. Nous avons conçu un mécanisme préliminaire staking pour le réseau Chainlink basé sur sur un protocole interactif entre les nœuds oracle pouvant utiliser des données externes. Ceci Le mécanisme crée des incitations financières pour un comportement correct en utilisant des récompenses explicites et pénalités (tranchage). Le mécanisme étant économique, il est conçu pour empêcher le nœud corruption par un adversaire qui utilise des ressources financières pour corrompre les nœuds au moyen de corruption. (Un tel adversaire est très général et s’étend, par exemple, aux nœuds coopérant extraire de la valeur de leur mauvaise conduite collective.) Le mécanisme Chainlink staking que nous avons conçu possède des fonctionnalités puissantes et novatrices. caractéristiques.16 La principale de ces caractéristiques est l'impact super-linéaire staking (plus précisément quadratique). Un adversaire doit disposer de ressources considérablement supérieures aux fonds déposés par les nœuds dans afin de renverser le mécanisme. Notre mécanisme staking offre en outre une protection contre un adversaire plus fort que celui envisagé auparavant dans des systèmes similaires, à savoir un adversaire qui peut créer des pots-de-vin conditionnés au comportement futur des nœuds. De plus, nous discutons de la manière dont les outils Chainlink tels que DECO peuvent nous aider à renforcer notre staking mécanisme en facilitant une décision correcte en cas de comportement défectueux du nœud. Opportunité de frais futurs (FFO) : blockchains sans autorisation – des deux PoW et la variété des PoS – reposent aujourd’hui essentiellement sur ce que nous appelons des incitations implicites. Ce sont des incitations économiques pour un comportement honnête qui ne découlent pas de récompenses explicites, mais de la participation à la plateforme elle-même. Par exemple, la communauté minière Bitcoin est incitée à ne pas lancer une attaque à 51 % en raison du risque de saper la confiance dans Bitcoin, déprimant sa valeur et érodant par conséquent la valeur de leur collectif investissements en capital dans les infrastructures minières [150]. Le réseau Chainlink bénéficie d’une incitation implicite similaire à celle que nous appelons comme opportunité de frais futurs (FFO). Nœuds Oracle avec de solides historiques de performances ou les réputations attirent des frais de la part des utilisateurs. Le mauvais comportement d'un nœud oracle met en péril l'avenir paiements de frais et pénalise ainsi le nœud avec un coût d'opportunité en termes de potentiel revenus gagnés grâce à la participation au réseau. Par analogie avec l'enjeu explicite, Les FFO peuvent être considérés comme une forme d’enjeu implicite, une incitation à un comportement honnête qui découle de l’avantage partagé de maintenir la confiance dans la plateforme sur laquelle l’activité des opérateurs de nœuds dépend, c’est-à-dire de la performance positive et de la réputation du réseau. Cette incitation est inhérente mais n'est pas explicitement exprimée dans le réseau Chainlink protocoles. En Bitcoin, maintenir la valeur des opérations minières comme mentionné ci-dessus 16Le mécanisme staking que nous décrivons ici vise actuellement uniquement à imposer la livraison de rapports corrects. par les réseaux oracle. Nous espérons, dans les travaux futurs, l'étendre pour garantir la bonne exécution des nombreux d'autres fonctionnalités que DON fourniront.peut également être considérée comme une forme d’enjeu implicite. Nous soulignons que FFO existe déjà dans Chainlink et permet de sécuriser le réseau aujourd'hui. Notre principale contribution au développement ultérieur de Chainlink sera une approche fondée sur des principes et empirique pour évaluer les incitations implicites telles que les FFO à travers ce que nous appelons le cadre d’incitation implicite (IIF). Pour estimer des quantités telles que future opportunité de frais des nœuds, l'IIF s'appuiera en permanence sur l'ensemble des données de performance et de paiement collectées par le réseau Chainlink. De telles estimations permettra un paramétrage basé sur IIF des systèmes staking qui reflète les incitations des nœuds avec une plus grande précision que les modèles heuristiques et/ou statiques actuels. Pour résumer, donc, les deux principales incitations économiques pour un bon nœud oracle le comportement dans le réseau Chainlink en développement sera : • Staking (mise déposée) o Incitation explicite • Opportunité de frais futurs (FFO) o Incitation implicite Ces deux formes d'incitation sont complémentaires. Les nœuds Oracle peuvent simultanément participez au protocole Chainlink staking, profitez d'une source de revenus continue de utilisateurs et bénéficions collectivement de leur bon comportement continu. Ainsi, les deux incitations contribuer à la sécurité cryptoéconomique apportée par un réseau oracle. De plus, les deux incitations peuvent se renforcer et/ou être échangées l’une contre l’autre. Par exemple, un nouvel opérateur oracle sans historique de performances ni flux de revenus peut miser un une grande quantité de LINK comme garantie d'un comportement honnête, attirant ainsi les utilisateurs et les frais. À l’inverse, un opérateur oracle établi avec une longue expérience relativement sans problème l'historique des performances peut facturer des frais substantiels à une large base d'utilisateurs et donc s'appuyer sur plus lourdement sur ses FFO comme forme d’incitation implicite. En général, l'approche que nous considérons ici vise une quantité donnée de oracle-réseau ressource pour créer les plus grandes incitations économiques possibles en Chainlink pour une les agents – c’est-à-dire les nœuds maximisant leur utilité financière – se comportent honnêtement. Mettez-en un autre De cette manière, l’objectif est de maximiser les ressources financières nécessaires à un adversaire pour attaquer. le réseau avec succès. En formulant un protocole staking avec mathématiquement bien sécurité économique définie et en utilisant également l’IIF, nous visons à mesurer la force de les incitations de Chainlink aussi précisément que possible. Les créateurs de contrats de confiance alors être en mesure de déterminer avec une grande confiance si un réseau oracle répond leurs niveaux requis de sécurité cryptoéconomique. Le cercle vertueux de la sécurité économique : Les incitations dont nous discutons dans cette section, staking et FFO, ont un impact au-delà de leur renforcement de la sécurité des DONs. Ils promettent d’induire ce que nous appelons un cercle vertueux de sécurité économique. L'impact super-linéaire staking (et d'autres économies d'échelle) entraîne une réduction des coûts opérationnels. coût à mesure que la sécurité d’un DON augmente. Un coût inférieur attire des utilisateurs supplémentaires vers le DON,augmenter le paiement des frais. L’augmentation du paiement des frais continue de stimuler la croissance du réseau, qui perpétue le cycle vertueux. Nous pensons que le cercle vertueux de la sécurité économique n'est qu'un exemple d'une l’économie d’échelle et l’effet de réseau, entre autres, que nous aborderons plus loin dans cette section. Organisation des sections : le jalonnement présente des défis techniques et conceptuels notables pour pour lequel nous avons conçu un mécanisme doté de fonctionnalités inédites. Le jalonnement sera donc notre objectif principal dans cette section. Nous donnons un aperçu de l'approche staking que nous introduisons dans cet article dans la section 9.1, suivi d'une discussion détaillée dans les sections 9.2 à 9.5. Nous présentons l'IFF à la section 9.6. Nous présentons une vue récapitulative des incitations du réseau Chainlink dans la section 9.7. Dans la section 9.8, nous discutons du cercle vertueux de sécurité économique que notre approche staking proposée peut apporter aux réseaux oracle. Enfin, nous décrivons brièvement d’autres potentiels effets propulsant la croissance du réseau Chainlink dans la section 9.9. 9.1 Aperçu du jalonnement La conception du mécanisme staking que nous introduisons ici, comme indiqué ci-dessus, implique un protocole interactif entre les nœuds oracle permettant la résolution des incohérences dans le reporting des données externes. Le jalonnement vise à garantir un comportement honnête de la part des nœuds oracle rationnels. On peut donc modéliser un adversaire attaquant un protocole staking comme un pot-de-vin : la stratégie de l'adversaire consiste à corrompre les nœuds oracle en utilisant des incitations financières. L’adversaire peut tirer des ressources financières de manière prospective en altérant avec succès avec un rapport oracle, par exemple, proposez de partager le profit qui en résulte avec des nœuds corrompus. Dans la conception de notre mécanisme staking, nous visons simultanément deux objectifs ambitieux : 1. Résister à un adversaire puissant : Le mécanisme staking est conçu pour protéger oracle réseaux contre une large classe d'adversaires capables de complexes, les stratégies de corruption conditionnelle, y compris la corruption potentielle, qui offrent des pots-de-vin à des oracle dont l'identité est déterminée après coup (par exemple, offre des pots-de-vin à oracles sélectionnés au hasard pour les alertes hautement prioritaires). Alors que d'autres modèles oracle ont envisagé un ensemble restreint d'attaques sans toutes les capacités d'un système réaliste. adversaire, au meilleur de nos connaissances, le mécanisme contradictoire que nous introduisons voici le premier à aborder explicitement un large éventail de stratégies de corruption et à montrer résistance dans ce modèle. Notre modèle suppose que les nœuds autres que l'attaquant sont économiquement rationnel (par opposition à honnête), et nous supposons l'existence d'un source de vérité dont le coût est prohibitif pour une utilisation typique, mais qui est disponible en cas de désaccord (discuté plus loin). 2. Obtenir un impact staking super-linéaire : Notre objectif est de garantir qu'un réseau oracle composé d'agents rationnels rapporte honnêtement même en présence d'un attaquant avec un budget super-linéairedans la mise totale déposée par l'ensemble du réseau. Dans les systèmes staking existants, si chacun des n nœuds mise $d, un attaquant peut émettre un pot-de-vin crédible qui demande que les nœuds se comportent de manière malhonnête en échange d'un paiement légèrement supérieur à \(d to each node, using a total budget of about \)dn. C'est déjà une barre haute car l'attaquant doit disposer d'un budget liquide de l'ordre des dépôts combinés de tous les acteurs du réseau. Notre objectif est d'atteindre un degré de sécurité économique encore plus élevé que cet obstacle déjà important. Notre objectif est de concevoir le premier système staking qui peut assurer la sécurité d'un attaquant général avec un budget super-linéaire en n. Bien que des considérations pratiques puissent avoir un impact moindre, comme nous le discutons ci-dessous, notre conception préliminaire atteint une exigence budgétaire contradictoire supérieure à $dn2/2, c'est-à-dire une mise à l'échelle quadratique en n, rendant la corruption largement peu pratique, même lorsque les nœuds ne misent que des montants modérés. Atteindre ces deux objectifs nécessite une combinaison innovante de conception d'incitations et la cryptographie. Idées clés : Notre approche staking repose sur une idée que nous appelons la priorité de surveillance. Un rapport généré par un réseau Chainlink oracle et envoyé à un contrat de confiance (par exemple, sur le prix d'un actif) est agrégé à partir de rapports individuels fournis par les nœuds participants (par exemple, en prenant la médiane). Généralement un accord de niveau de service (SLA) spécifie les limites d'écart acceptables pour les rapports, c'est-à-dire dans quelle mesure le rapport d'un nœud peut s'écarter du rapport global et dans quelle mesure l'agrégat doit être autorisé à s'écarter de la valeur réelle pour être considéré comme correct. Dans notre système staking, pour un cycle de reporting donné, chaque nœud oracle peut agir comme un chien de garde pour déclencher une alerte s’il estime que le rapport global est incorrect. Dans chacun cycle de reporting, chaque nœud oracle se voit attribuer une priorité publique qui détermine le ordre dans lequel son alerte (le cas échéant) sera traitée. Notre mécanisme vise à récompenser concentration, ce qui signifie que le chien de garde le plus prioritaire pour déclencher une alerte gagne le récompense entière obtenue en confisquant les dépôts des nœuds défectueux. Nos conceptions de systèmes staking impliquent deux niveaux : le premier, niveau par défaut, et le second, niveau de soutien. Le premier niveau est le réseau oracle lui-même, un ensemble de n nœuds. (Pour simplifier, nous supposons que n est impair.) Si une majorité de nœuds signalent des valeurs incorrectes, un chien de garde dans le le premier niveau est fortement incité à déclencher une alerte. Si une alerte est déclenchée, le reporting La décision concernant le réseau est ensuite transmise à un deuxième niveau : un système coûteux et à fiabilité maximale qui peut être spécifié par l'utilisateur dans l'accord de niveau de service du réseau. Il peut s'agir d'un système qui, par exemple, est composé uniquement de nœuds à forte scores de fiabilité historiques, ou ceux qui ont un ordre de grandeur supérieur à oracles que le premier niveau. De plus, comme indiqué dans la section 9.4.3, DECO ou Town Crier peut servir comme des outils puissants pour contribuer à garantir une décision efficace et concluante au deuxième niveau. Par souci de simplicité, nous supposons donc que ce système de deuxième niveau parvient à un rapport correct. valeur. Même s'il peut sembler intéressant de s'appuyer uniquement sur le deuxième niveau pour générer tous les rapports, l'avantage de notre conception est qu'elle atteint systématiquement les propriétés de sécurité dusystème de deuxième niveau tout en ne payant que le coût de fonctionnement, dans le cas typique, du système de premier niveau. La priorité du chien de garde entraîne un impact super-linéaire staking de la manière suivante : si le Le réseau oracle de premier niveau génère un résultat incorrect et un certain nombre de nœuds de surveillance alerte, le mécanisme d'incitation staking récompense le chien de garde le plus prioritaire avec plus de $dn/2 tirés des dépôts des nœuds (majoritaires) qui se comportent mal. Le la récompense totale est ainsi concentrée entre les mains de ce chien de garde unique, qui détermine le minimum qu'un adversaire doit promettre à un chien de garde potentiel l’inciter à ne pas alerter. Puisque notre mécanisme garantit que chaque oracle obtient le possibilité d'agir en tant que chien de garde si les chiens de garde prioritaires ont accepté leurs pots-de-vin (et choisi de ne pas alerter), l’adversaire doit donc offrir un pot-de-vin de plus de $dn/2 à chaque nœud pour empêcher toute alerte. Puisqu’il y a n nœuds, le Le budget requis par l’adversaire pour un pot-de-vin réussi s’élève à plus de 2/2 dollars, ce qui est quadratique en nombre n de nœuds du réseau. 9.2 Contexte Notre approche de staking s'appuie sur des recherches dans les domaines de la théorie et des mécanismes des jeux. design (MD) (pour une référence de manuel, voir [177]). La théorie des jeux est mathématiquement étude formalisée de l’interaction stratégique. Dans ce contexte, un jeu est un modèle d'une telle une interaction, typiquement dans le monde réel, qui codifie des ensembles d'actions disponibles pour participants au jeu, appelés joueurs. Un jeu précise également les gains obtenus par les joueurs individuels - des récompenses qui dépendent des actions choisies par un joueur et de la actions des autres joueurs. Peut-être l'exemple le plus connu d'un jeu étudié en jeu La théorie est le dilemme du prisonnier [178]. Les théoriciens des jeux visent généralement à comprendre le ou les équilibres (le cas échéant) représentés dans un jeu donné. Un équilibre est un ensemble de stratégies (une pour chaque joueur) telles qu'aucun joueur ne puisse obtenir un score plus élevé gain en s’écartant unilatéralement de sa stratégie. La conception de mécanismes, quant à elle, est la science qui consiste à concevoir des incitations telles que l'équilibre d'une interaction (et de son jeu associé) possède une propriété souhaitable. MD peut être considéré comme l’inverse de la théorie des jeux : la question canonique dans le jeu La théorie est la suivante : « étant donné les incitations et le modèle, quel sera l’équilibre ? En MD, le La question est plutôt : « Quelles incitations donneront lieu à un jeu présentant un équilibre souhaitable ? » L'un des objectifs typiques d'un concepteur de mécanisme est de créer un mécanisme « compatible avec les incitations », ce qui signifie que les participants au mécanisme (par exemple, une vente aux enchères ou d'autres informations) système d'élicitation [228]) sont incités à rapporter la vérité sur un sujet (par exemple, comment ils apprécient beaucoup un article particulier). La vente aux enchères Vickrey (second prix) est peut-être la mécanisme compatible avec les incitations le plus connu, dans lequel les participants soumettent des offres scellées pour un article et le plus offrant remporte l'article mais paie le deuxième prix le plus élevé [214]. La cryptoéconomie est une forme de MD spécifique à un domaine qui exploite la cryptographie. techniques pour créer des équilibres souhaitables au sein des systèmes décentralisés. La corruption et la collusion créent des défis importants dans tout le domaine du MD. Presque tous les mécanismes se brisent en présence de collusion, définie comme des contrats parallèles.entre les parties participant à un mécanisme [125, 130]. La corruption, dans laquelle une partie externe introduit de nouvelles incitations dans le jeu, présente un problème encore plus difficile. que la collusion ; la collusion peut être considérée comme un cas particulier de corruption participants. Les systèmes blockchain peuvent souvent être conceptualisés comme des jeux avec des gains monétaires (basés sur des cryptomonnaies). Un exemple simple est le minage de preuve de travail : les mineurs disposent d'un espace d'action dans lequel ils peuvent choisir le taux hash avec lequel extraire des blocs. Le bénéfice du minage est une récompense négative garantie (coût de l'électricité et de l'équipement) plus un effet stochastique. récompense positive (subvention minière) qui dépend du nombre d'autres mineurs actifs [106, 172] et les frais de transaction. Les oracle participatifs comme SchellingCoin [68] sont un autre exemple : l'espace d'action est l'ensemble des rapports possibles qu'un oracle peut envoyer, tandis que le paiement est la récompense spécifiée par le mécanisme oracle, par exemple, le paiement peut dépendre sur la proximité du rapport d'un oracle par rapport à la médiane des autres rapports [26, 68, 119, 185]. Les jeux blockchain offrent de bonnes opportunités pour les attaques de collusion et de corruption ; en effet, Les smart contract peuvent même faciliter de telles attaques [96, 165]. Peut-être le plus connu L'attaque de corruption contre des oracle issus du crowdsourcing est l'attaque p-plus-epsilon [67]. Cette attaque se produit dans le contexte d'un mécanisme de type SchellingCoin dans lequel les joueurs soumettent des rapports de valeur booléenne (c'est-à-dire faux ou vrai) et sont récompensés par p s'ils sont d'accord avec le proposition majoritaire. Dans une attaque p-plus-epsilon, l'attaquant promet de manière crédible : par exemple, payez les utilisateurs $p + ϵ pour avoir voté faux si et seulement si la proposition majoritaire est vraie. Le résultat est un équilibre dans lequel tous les acteurs sont incités à signaler de fausses informations. indépendamment de ce que font les autres joueurs ; par conséquent, le corrupteur peut inciter les nœuds grâce à sa promesse de pot-de-vin pour signaler de fausses déclarations sans réellement payer le pot-de-vin (!). Cependant, l’exploration d’autres stratégies de corruption dans le contexte des oracle – et en particulier des oracle qui ne font pas l’objet d’un crowdsourcing – s’est limitée à des stratégies contradictoires assez faibles. modèles. Par exemple, dans le cadre du PoW, les chercheurs ont étudié les les pots-de-vin, c'est-à-dire les pots-de-vin versés uniquement si un message cible est censuré avec succès et ne apparaissent dans un bloc, quelle que soit l’action d’un mineur individuel [96, 165]. Dans le cas de oracles, cependant, autre que l'attaque p-plus-epsilon, nous sommes au courant uniquement du travail dans un modèle de corruption strictement limité dans lequel un corrupteur envoie un pot-de-vin conditionné à un l’action d’un joueur individuel, et non sur le résultat qui en résulte. Nous esquissons ici des conceptions de mécanismes d'obtention d'informations qui restent incitatifs compatible même dans un modèle fortement contradictoire, comme décrit dans la sous-section suivante. 9.3 Hypothèses de modélisation Dans cette sous-section, nous expliquons comment nous modélisons le comportement et les capacités des acteurs dans notre système, en particulier les nœuds oracle de premier niveau, les nœuds de deuxième niveau (arbitrage) couche et adversaires.9.3.1 Modèle d’incitation de premier niveau : acteurs rationnels De nombreux systèmes blockchain reposent pour leur sécurité sur l'hypothèse d'un certain nombre d'honnêtes nœuds participants. Les nœuds sont définis comme étant honnêtes s'ils suivent le protocole même lorsque cela n’est pas dans leur intérêt financier de le faire. Systèmes de preuve de travail généralement nécessitent la majorité du pouvoir hash pour être honnête, les systèmes de preuve de participation nécessitent généralement 2/3 ou plus de toutes les participations pour être honnêtes, et même les systèmes de couche 2 comme L'arbitrage [141] exige au moins un seul participant honnête. Lors de la modélisation de notre mécanisme staking, nous faisons une hypothèse beaucoup plus faible. (Être des hypothèses claires et plus faibles signifient des propriétés de sécurité plus fortes et sont donc préférables.) Nous supposons que l'adversaire a corrompu, c'est-à-dire les contrôles, une partie (minorité) fraction des nœuds oracle de premier niveau. Nous modélisons les nœuds restants non pas comme des agents honnêtes, mais en tant que maximisateurs rationnels de l'utilité attendue. Ces nœuds agissent entièrement selon des incitations financières intéressées, choisissant des actions qui aboutissent à un résultat financier attendu. gagner. Par exemple, si un nœud se voit offrir un pot-de-vin supérieur à la récompense résultant de comportement honnête, il acceptera le pot-de-vin. Remarque sur les nœuds contradictoires : Conformément à la modélisation de confiance commune pour systèmes décentralisés, nous supposons que tous les nœuds sont rationnels, c'est-à-dire cherchant à maximiser revenus nets, plutôt que contrôlés par un adversaire malveillant. Cependant, nos affirmations... impact staking spécifiquement super-linéaire ou quadratique - maintien asymptotiquement fourni que l’ensemble des nœuds contrôlés de manière contradictoire est au plus (1/2 −c)n, pour certains positifs constante c. 9.3.2 Modèle d’arbitrage de deuxième niveau : justesse par hypothèse Rappelez-vous qu'une fonctionnalité essentielle de notre mécanisme staking qui contribue à assurer la sécurité contre les nœuds rationnels se trouve son système de deuxième niveau. Dans notre mécanisme staking proposé, tout oracle peut déclencher une alerte indiquant que il pense que le résultat du mécanisme est incorrect. Une alerte entraîne une confiance élevée système de deuxième niveau activant et signalant le résultat correct. Ainsi, une modélisation clé L'exigence de notre approche est une décision correcte, c'est-à-dire un rapport correct par le système de deuxième niveau. Notre modèle staking suppose un système de deuxième niveau qui agit comme une source de vérité incorruptible et fiable au maximum. Un tel système risque d'être coûteux et lent, et donc inapproprié pour une utilisation dans le cas typique. Cependant, dans le cas d’équilibre, c’est-à-dire lorsque le système du premier niveau fonctionne correctement, le système du deuxième niveau ne sera pas invoqué. Au lieu de cela, son existence renforce la sécurité de l'ensemble du système oracle en fournissant un un filet de sécurité de haute assurance. L'utilisation d'une couche de décision hautement fiable et coûteuse ressemble au processus d'appel. au cœur de la plupart des systèmes judiciaires. C'est également déjà courant dans la conception de oracle systèmes, par exemple [119, 185]. Nous discutons brièvement des approches de réalisation du deuxième niveau dans notre mécanisme à la section 9.4.3.Notre protocole staking utilise la décision supposée correcte du système de deuxième niveau comme une menace crédible pour imposer des rapports corrects par les nœuds oracle. Le protocole confisque une partie ou la totalité de la participation des nœuds oracle qui génèrent des rapports identifiés par le système de deuxième niveau comme étant incorrect. Les nœuds Oracle sont ainsi dissuadés de se comporter mal par la pénalité financière qui en résulte. Cette approche est similaire en saveur à celle utilisée dans rollup optimistes, par exemple, [141, 10]. 9.3.3 Modèle contradictoire Notre mécanisme staking est conçu pour obtenir des informations véridiques tout en assurant la sécurité contre une classe large et bien définie d'adversaires. Il améliore les travaux antérieurs, qui soit omettent un modèle accusatoire explicite, soit se concentrent sur des sous-classes étroites d’adversaires, par exemple l’adversaire p-plus-epsilon évoqué ci-dessus. Notre objectif est de concevoir un staking mécanisme avec une sécurité formellement prouvée contre l’ensemble des adversaires probables à rencontrer dans la pratique. Nous modélisons notre adversaire comme ayant un budget fixe (paramétrable), noté G$. L'adversaire peut communiquer individuellement et de manière confidentielle avec chaque oracle dans le réseau, et peut secrètement offrir à tout individu oracle le paiement garanti d'un pot-de-vin dépend des résultats du mécanisme publiquement observables. Résultats déterminants les pots-de-vin peuvent inclure, par exemple, la valeur rapportée par le oracle, tout message public envoyées par n'importe quel oracle au mécanisme (par exemple, une alerte), les valeurs rapportées par d'autres oracles et la valeur émise par le mécanisme. Aucun mécanisme ne peut protéger contre un attaquant doté de capacités illimitées. Nous considérons donc certains comportements comme irréalistes ou hors de portée. Nous supposons que notre attaquant ne peut pas briser les primitives cryptographiques standards et, comme indiqué ci-dessus, a une valeur fixe (si potentiellement important) budget de G$. Nous supposons en outre que l'adversaire ne contrôle pas communication dans le réseau oracle, en particulier qu'il ne peut pas retarder considérablement trafic entre les nœuds de premier et/ou de deuxième niveau. (Le fait que l’adversaire puisse observer une telle communication dépend du mécanisme particulier, comme nous l’expliquons ci-dessous.) Cependant, de manière informelle, comme indiqué ci-dessus, nous supposons que l'adversaire peut : (1) Corrompre une fraction de oracle nœuds ((1/2 −c)-fraction pour une constante c), c'est-à-dire contrôler entièrement eux, et (2) Offrir des pots-de-vin à tous les nœuds souhaités, avec un paiement garanti conditionné sur les résultats spécifiés par l’adversaire, comme décrit ci-dessus. Bien que nous n’offrions pas de modèle formel ni de taxonomie complète de l’ensemble de l’adversaire. gamme de capacités de corruption dans ce livre blanc, voici des exemples des types de pots-de-vin englobés dans notre modèle. Pour plus de simplicité, nous supposons que les oracle émettent des booléens rapports dont la valeur correcte (w.l.o.g.) est vraie, et qu'un résultat final est calculé comme un ensemble de ces rapports à utiliser par un smart contract consommateur. Le corrupteur le but est que le résultat final soit incorrect, c’est-à-dire faux. • Pot-de-vin inconditionnel : le pot-de-vin offre un pot-de-vin de $b à tout oracle qui déclare de fausses informations. • Pot-de-vin probabiliste : le pot-de-vin propose un pot-de-vin $b avec une certaine probabilité q à n'importe quel oracle qui rapporte faux.• Pot-de-vin conditionné à un résultat faux : le pot-de-vin offre un pot-de-vin de $b à tout oracle qui déclare faux à condition que le résultat final soit faux. • Pot-de-vin sans condition d'alerte : le pot-de-vin offre un pot-de-vin de milliards $ à tout oracle qui signale false tant qu'aucune alerte n'est déclenchée. • Pot-de-vin p-plus-epsilon : le pot-de-vin offre un pot-de-vin de $b à tout oracle qui déclare faux comme tant que la majorité des oracle ne déclarent pas de faux. • Pot-de-vin potentiel : le pot-de-vin offre un pot-de-vin d'un montant de milliards $ à l'avance au oracle sélectionné. pour un rôle randomisé et des rapports faux. Dans notre protocole staking proposé, tous les nœuds agissent comme des chiens de garde potentiels, et nous sommes en mesure de montrer que la randomisation Les priorités des organismes de surveillance ne se prêtent pas à des pots-de-vin potentiels. De nombreux systèmes de preuve de travail, proof-of-stake et autorisés sont susceptibles de corruption, ce qui montre l’importance de la considérer dans notre débat contradictoire. modèle et en veillant à ce que nos protocoles staking y soient résilients. Voir l'Annexe E pour plus de détails. 9.3.4 Dans quelle mesure la sécurité cryptoéconomique est-elle suffisante ? Un adversaire rationnel ne dépensera de l’argent pour attaquer un système que s’il peut en tirer un profit. supérieur à ses dépenses. Ainsi pour notre modèle contradictoire et proposé staking mécanisme, $B peut être considéré comme une mesure du profit potentiel qu’un adversaire est en mesure de réaliser. pour extraire des smart contract fiables en corrompant un réseau oracle et en le provoquant pour générer un rapport ou un ensemble de rapports incorrect. Pour décider si un réseau oracle offre un degré suffisant de sécurité cryptoéconomique pour ses besoins, un utilisateur doit évaluer le réseau dans cette perspective. Pour les adversaires plausibles dans des contextes pratiques, nous nous attendons à ce que G$ soit généralement sensiblement inférieur à l'actif total en s'appuyant sur smart contracts. Dans la plupart des cas, il Il est impossible pour un adversaire d’extraire ces atouts dans leur totalité. 9.4 Mécanisme de jalonnement : croquis Nous présentons ici les idées principales et la structure générale du mécanisme staking que nous envisagent actuellement. Pour faciliter la présentation, nous décrivons un processus simple mais lent protocole (multi-tours) dans cette sous-section. Nous notons cependant que ce schéma est assez pratique. Compte tenu des garanties économiques fournies par le mécanisme, c'est-à-dire la pénalisation et l'incitation conséquente contre les nœuds défectueux, de nombreux utilisateurs pourraient être disposés à accepter les rapports avec optimisme. En d'autres termes, ces utilisateurs peuvent accepter les rapports avant arbitrage potentiel par le deuxième niveau. Les utilisateurs peu disposés à accepter les rapports avec optimisme peuvent choisir d'attendre que le protocole soit mis en œuvre. l'exécution se termine, c'est-à-dire jusqu'à ce qu'une escalade potentielle vers le deuxième niveau se produise. Ceci, cependant, cela peut ralentir considérablement le temps de confirmation des rapports. Nous avons donc brièvementFigure 15 : Schéma du schéma staking avec alerte. Dans cet exemple, 1⃝une majorité des nœuds sont corrompus / soudoyés et émettent une valeur incorrecte ˜r, plutôt que la bonne rapporter la valeur r. Le nœud de surveillance 2⃝envoie une alerte au comité de deuxième niveau, qui 3⃝détermine et émet la valeur de rapport correcte r, entraînant des nœuds corrompus perdant leurs dépôts - chaque $d au nœud de surveillance 4⃝. décrivent quelques optimisations qui se traduisent par un tour plus rapide (en un seul tour), voire un peu plus conception complexe à la section 9.5. Rappelons que le premier niveau de notre mécanisme staking se compose des éléments de base oracle réseau lui-même. La structure principale de notre mécanisme, telle que décrite ci-dessus, est qu'à chaque tour, chaque nœud peut agir comme un « chien de garde » avec une certaine priorité, et il a ainsi la capacité de déclencher une alerte si le mécanisme arrive à une sortie incorrecte ˜r, plutôt qu'à une sortie correcte un r. Cette alerte provoque une résolution de deuxième niveau, qui, nous supposons, aboutit à un résultat correct. rapport. Les nœuds avec des rapports incorrects sont punis, dans le sens où leurs enjeux sont réduit et attribué aux chiens de garde. Cette structure de base est courante dans les systèmes oracle, comme dans, par exemple, [119, 185]. L'innovation clé de notre conception, mentionnée brièvement ci-dessus, est que chaque nœud est s'est vu attribuer une priorité distincte dans l'ordre des chiens de garde potentiels. C'est-à-dire des chiens de garde ont la possibilité d’alerter par ordre de priorité. Rappelons que si un nœud a le priorité absolue pour déclencher une alerte, il reçoit le dépôt réduit $d de chaque mauvais comportement nœud, pour un total supérieur à \(dn/2 = \)d × n/2, car un rapport incorrect implique un majorité de nœuds défectueux. Par conséquent, l'adversaire doit payer au moins cette récompense à corrompre un nœud arbitraire. Ainsi, pour corrompre une majorité de nœuds, l’adversaire doit payer une somme un pot-de-vin important à une majorité de nœuds, à savoir strictement plus de $dn2/2. Nous montrons schématiquement comment fonctionnent les alertes et les escalades de surveillance dans la figure 15.9.4.1 Plus de détails sur le mécanisme Le système anti-corruption que nous décrivons maintenant plus en détail est une esquisse simplifiée de la construction à deux niveaux que nous avons l'intention de construire. Nous nous concentrerons principalement sur la description le réseau de premier niveau (désormais simplement « réseau » si cela ressort clairement du contexte) ainsi que avec son mécanisme d'incitation et la procédure de remontée au deuxième niveau. Considérons un réseau Chainlink composé de n nœuds oracle responsables de régulièrement (par exemple, une fois par minute) en signalant une valeur booléenne (par exemple, si le marché la capitalisation du BTC dépasse celle de l’ETH). Dans le cadre du mécanisme staking, les nœuds doit fournir deux cautions : une caution $d sujette à des coupures en cas de désaccord avec la majorité et un chien de garde, dépôt $dw susceptible d'être réduit en cas de défaut escalade. Nous supposons que les nœuds ne peuvent pas copier les soumissions d'autres nœuds, par exemple : via un système de validation-révélation comme discuté dans la section 5.3. A chaque tour, les nœuds en premier s'engager dans leur rapport, et une fois que tous les nœuds se sont engagés (ou qu'un délai d'attente a expiré), les nœuds révèlent leurs rapports. Pour chaque rapport à générer, chaque nœud reçoit également une priorité de surveillance comprise entre 1 et n choisie au hasard, 1 étant la priorité absolue. Cette priorité permet au concentration de la récompense entre les mains d'un seul chien de garde. Une fois que tous les rapports sont publics, une phase d’alerte s’ensuit. Sur une séquence de n tours (synchrones), le nœud avec priorité j'ai la possibilité d'alerter au premier tour. Considérons les résultats possibles du mécanisme une fois que les nœuds ont révélé leurs rapports. En supposant encore une fois un rapport binaire, supposons que la valeur correcte soit vraie et l'incorrect est faux. Supposons également que le mécanisme de premier niveau génère le valeur majoritaire sortie par les nœuds comme rapport final r. Il y a trois résultats possibles dans le mécanisme : • Accord complet : dans le meilleur des cas, les nœuds sont en accord complet : tous les nœuds sont disponibles et ont fourni en temps opportun un rapport de la même valeur r (soit vraie ou faux). Dans ce cas, le réseau n'a qu'à transmettre r aux contrats de confiance et récompensez chaque nœud avec un paiement fixe par tour $p, qui est beaucoup plus petit que $d. • Accord partiel : il est possible que certains nœuds soient hors ligne ou qu'il y ait un désaccord sur la valeur correcte, mais la plupart des nœuds rapportent vrai et seulement un les rapports minoritaires sont faux. Ce cas est également simple. La valeur majoritaire (vrai) est calculé, ce qui donne un rapport correct r. Tous les nœuds qui ont rapporté r sont récompensé par $p tandis que les oracle qui ont signalé des erreurs ont leurs dépôts modestement réduit, par exemple de 10 pence. • Alerte : dans le cas où un chien de garde estime que la sortie du réseau est incorrecte, il déclenche publiquement une alerte, faisant remonter le mécanisme au réseau de deuxième niveau. Il y a alors deux résultats possibles : – Alerte correcte : si le réseau de deuxième niveau confirme que la sortie duFigure 16 : Amplifier le coût des pots-de-vin grâce à des récompenses d’alerte concentrées. Une corruption l'adversaire doit soudoyer chaque nœud avec plus que la récompense qu'il peut gagner en alertant (représenté par une barre rouge). Si les récompenses d’alerte sont partagées, alors cette récompense peut être relativement petit. Les récompenses d'alerte concentrées augmentent la récompense que n'importe quel nœud peut obtenir (grande barre rouge). Par conséquent, le paiement total par l'adversaire pour un pot-de-vin viable (régions grises) est beaucoup plus grande avec des récompenses d'alerte concentrées que partagées. Le réseau de premier niveau était incorrect, le nœud de surveillance d'alerte reçoit une récompense constitué de tous les dépôts réduits, et donc de plus de $dn/2. – Alerte défectueuse : si les oracles de deuxième et de premier niveaux sont d'accord, l'escalade est est jugé défectueux et le nœud d'alerte perd son dépôt $dw. En cas d'acceptation optimiste des rapports, les alertes de surveillance ne provoquent pas tout changement dans l’exécution des contrats de confiance. Pour les contrats conçus pour attendre arbitrage potentiel par le comité de deuxième niveau, les alertes du chien de garde tardent mais ne gèlez pas l’exécution du contrat. Il est également possible que les contrats désignent un basculement DON pour les périodes d’arbitrage. 9.4.2 Impact du jalonnement quadratique La capacité de chaque nœud à agir comme un chien de garde, combinée à une priorité stricte des nœuds assurer des récompenses concentrées, permet au mécanisme d'atteindre le staking quadratique impact pour chaque type d’attaquant de corruption décrit à la section 9.3.3. Rappelons que ceci signifie spécifiquement dans notre cadre que, pour un réseau à n nœuds chacun avec un dépôt $d, un corrompu (de l’un des types ci-dessus) doit disposer d’un budget supérieur à $dn2/2. Pour être précis, le corrupteur doit corrompre au moins (n+1)/2 nœuds, puisque le corrupteur doit corrompre une majorité de n nœuds (pour n impair, par hypothèse). Ainsi, un organisme de surveillance doit gagnez une récompense de $d(n + 1)/2. Le corrupteur doit donc payer ce montant à chaquenœud pour garantir qu’aucun n’agit comme chien de garde. Nous travaillons à montrer formellement que si le corrupteur a un budget d'au plus $d(n2 + n)/2, alors l'équilibre parfait du sous-jeu du jeu entre les corrupteurs et les oracle – en d’autres termes, l’équilibre à à tout moment pendant le jeu - est pour le corrupteur de ne pas verser de pot-de-vin et pour chaque oracle rapporte honnêtement ses vraies valeurs. Nous avons expliqué ci-dessus comment il est possible qu'un corrompu qui réussisse exige une budget significativement plus grand que celui de la somme des dépôts des nœuds. Pour illustrer cela Résultat intuitif, la figure 16 montre graphiquement l'impact des récompenses d'alerte concentrées. Comme nous le voyons ici, si la récompense pour l'alerte du chien de garde, à savoir les dépôts de pots-de-vin, nœuds signalant faux) - ont été répartis entre toutes les alertes potentielles, le montant total qui auquel tout nœud d'alerte individuel pourrait s'attendre serait relativement petit, de l'ordre de $d. Un corrupteur, sachant qu’un paiement supérieur à d $ était improbable, pourrait utiliser un pot-de-vin conditionnel à faux résultat pour soudoyer chacun des n nœuds avec un peu plus de $d + ϵ. Contre-intuitivement, la figure 16 montre qu’un système qui distribue largement une récompense parmi les nœuds signalant une alerte est bien plus faible que celui qui concentre la récompense dans entre les mains d’un seul organisme de surveillance. Exemples de paramètres : Considérons un réseau (de premier niveau) avec n = 100 nœuds, chacun déposant \(d = \)20K. Ce réseau aurait un total de 2 M$ déposés mais être protégé contre un pot-de-vin avec le budget \(100M = \)dn2/2. Augmenter le nombre de oracles est bien sûr plus efficace que d'augmenter $d, et peut avoir un effet dramatique : un réseau avec n = 300 nœuds et des dépôts \(d = \)20K serait protégé contre un un pot-de-vin avec un budget allant jusqu'à 900 millions de dollars. Notez qu'un système staking peut dans de nombreux cas protéger les smart contract représentant plus de valeur que le niveau de protection contre la corruption offert. C'est parce qu'un adversaire Dans de nombreux cas, attaquer ces contrats ne peut pas en extraire la pleine valeur. Par exemple, un Un contrat alimenté par Chainlink garantissant une valeur de 1 milliard de dollars ne peut exiger qu'une garantie contre un un pot-de-vin avec 100 millions de dollars de ressources, car un tel adversaire peut vraisemblablement en tirer un profit de seulement 10% de la valeur du contrat. Remarque : L’idée selon laquelle la valeur d’un réseau peut croître de façon quadratique s’exprime dans la célèbre loi de Metcalfe [167, 235], qui stipule que la valeur d’un réseau croît quadratiquement en nombre d’entités connectées. Cependant, la loi de Metcalfe découle de la croissance du nombre de connexions réseau potentielles par paires, un phénomène différent de celui sous-jacent à l'impact quadratique staking de notre incitation mécanisme. 9.4.3 Réalisation du deuxième niveau Deux caractéristiques opérationnelles facilitent la réalisation d'un deuxième niveau de haute fiabilité : (1) L'arbitrage de deuxième niveau devrait être un événement rare dans les réseaux oracle et peut donc être significativement plus coûteux que le fonctionnement normal du premier niveau et (2) En supposantdes rapports acceptés avec optimisme – ou des contrats dont l’exécution peut attendre l’arbitrage – le deuxième niveau n'a pas besoin d'être exécuté en temps réel. Ces fonctionnalités se traduisent par une gamme de options de configuration pour le deuxième niveau afin de répondre aux exigences de DON particuliers. À titre d'exemple d'approche, un comité de deuxième niveau peut être composé de nœuds sélectionnés par un DON (c'est-à-dire, premier niveau) à partir des nœuds les plus anciens et les plus fiables du Chainlink réseau. En plus d'une expérience opérationnelle pertinente et considérable, les opérateurs de ces nœuds ont une incitation implicite considérable dans le FFO qui motive un désir pour garantir que le réseau Chainlink reste hautement fiable. Ils ont également publiquement des historiques de performances disponibles qui assurent la transparence de leur fiabilité. Il convient de noter que les nœuds de deuxième niveau ne doivent pas nécessairement participer au réseau de premier niveau, et peut évaluer les défauts sur plusieurs réseaux de premier niveau. Les nœuds dans un DON donné peuvent pré-désigner et s'engager publiquement sur un ensemble de n' tels nœuds comme constituant le comité de deuxième niveau pour ce DON. De plus, DON les nœuds publient un paramètre k′ ≤n′ qui détermine le nombre de votes de deuxième niveau nécessaire pour pénaliser un nœud de premier niveau. Lorsqu'une alerte est générée pour un rapport donné, les membres du deuxième niveau votent sur l'exactitude des valeurs fournies par chacun des nœuds de premier niveau. Tout nœud de premier niveau qui reçoit k' votes négatifs perd son statut. dépôts au nœud de surveillance. En raison de la rareté des jugements et de la possibilité d’une exécution prolongée Comme indiqué ci-dessus, contrairement au premier niveau, les nœuds du deuxième niveau peuvent : 1. Soyez hautement rémunéré pour la conduite de l’arbitrage. 2. S'appuyer sur des sources de données supplémentaires, au-delà même de l'ensemble diversifié utilisé par la première. 3. S'appuyer sur une inspection et une intervention manuelles et/ou expertes, par exemple pour identifier et concilier les erreurs dans les données sources et faire la distinction entre un relais de nœud honnête des données défectueuses et un nœud qui se comporte mal. Nous soulignons que l'approche que nous venons de décrire pour la sélection des nœuds de second niveau et la politique régissant l'arbitrage ne représente qu'un point dans un vaste ensemble. espace de conception des réalisations possibles du deuxième niveau. Notre mécanisme d’incitation offre une flexibilité totale quant à la manière dont le deuxième niveau est réalisé. Les DON individuels peuvent ainsi constituer et fixer des règles pour leurs deuxièmes niveaux qui répondent aux exigences particulières et les attentes des nœuds et des utilisateurs participants. DECO et Town Crier comme outils d’arbitrage : C'est essentiel pour le deuxième niveau dans notre mécanisme pour pouvoir distinguer les nœuds adverses de premier niveau qui produire intentionnellement des rapports incorrects et des nœuds honnêtes de premier niveau qui, involontairement, relayer des données incorrectes à la source. Ce n'est qu'alors que le deuxième niveau pourra mettre en œuvre couper pour décourager la triche, le but de notre mécanisme. DECO et Crieur public sont des outils puissants qui peuvent permettre aux nœuds de deuxième niveau de faire cette distinction critique de manière fiable.Les nœuds de deuxième niveau peuvent dans certains cas être en mesure d'interroger directement la source de données utilisée par un nœud de premier niveau ou utilisez la section ADO 7.1 afin de vérifier si un rapport incorrect résulte d'une source de données défectueuse. Dans d'autres cas, cependant, les nœuds de deuxième niveau peuvent manquer accès direct à la source de données d’un nœud de premier niveau. Dans de tels cas, une décision correcte serait semblent irréalisables ou nécessitent de s’appuyer sur un jugement subjectif. Précédent oracle Les systèmes de règlement des différends se sont appuyés sur des tours de scrutin inefficaces et de plus en plus nombreux pour résoudre ces problèmes. défis. Cependant, en utilisant DECO ou Town Crier, un nœud de premier niveau peut prouver un comportement correct. aux nœuds de deuxième niveau. (Voir la section 3.6.2 pour plus de détails sur les deux systèmes.) Plus précisément, si le nœud de deuxième niveau identifie un nœud de premier niveau comme ayant généré une valeur de rapport erronée ˜r, le nœud de premier niveau peut utiliser DECO ou Town Crier pour générer des preuves inviolables pour nœuds de deuxième niveau qu'il relaie correctement ou correctement à partir d'une source (compatible TLS) reconnu comme faisant autorité par le DON. Il est important de noter que le nœud de premier niveau peut le faire sans nœuds de deuxième niveau nécessitant un accès direct à la source de données.17 Par conséquent, une évaluation correcte est possible dans Chainlink pour toute source de données souhaitée. 9.4.4 Fausse déclaration d'assurance La forte résistance à la corruption obtenue grâce à notre mécanisme staking repose fondamentalement sur les fonds réduits accordés aux alerteurs. Sans récompense monétaire, les alerteurs n’ont aucune incitation directe à rejeter les pots-de-vin. En conséquence, toutefois, les fonds réduits ne sont pas disponible pour indemniser les utilisateurs lésés par des rapports incorrects, par exemple les utilisateurs qui perdent de l'argent lorsque des données de prix incorrectes sont transmises à un smart contract. Par hypothèse, les rapports incorrects ne posent pas de problème si les rapports sont acceptés par un contrat seulement après une éventuelle arbitrage, c'est-à-dire une action du deuxième niveau. Comme expliqué cependant, pour obtenir la meilleure performance possible, les contrats peuvent plutôt s'appuyer sur avec optimisme quant au mécanisme permettant d'imposer des rapports corrects, ce qui signifie qu'ils acceptent rapports avant une éventuelle décision de deuxième niveau. En effet, un tel comportement optimiste est sûr dans notre modèle en supposant des adversaires rationnels dont les budgets ne dépassent pas le staking impact du mécanisme. Les utilisateurs préoccupés par l'éventualité improbable d'une défaillance du mécanisme résultant, Par exemple, des adversaires disposant de ressources financières considérables pourraient souhaiter utiliser une couche supplémentaire de sécurité économique sous la forme d’une assurance contre les fausses déclarations. Nous connaissons plusieurs assureurs ont déjà l’intention de proposer des polices de ce type adossées à des contrats intelligents pour les protocoles sécurisés Chainlink dans un avenir proche, notamment via des mécanismes innovants tels que les DAO, par exemple [7]. L'existence d'un historique de performances pour Chainlink Les nœuds et d'autres données sur les nœuds, telles que les montants de leurs mises, fournissent une base exceptionnellement solide pour les évaluations actuarielles du risque, permettant ainsi de fixer le prix des politiques. d’une manière peu coûteuse pour les assurés mais durable pour les assureurs. 17Avec Town Crier, il est en outre possible pour les nœuds de premier niveau de générer localement des attestations. d'exactitude des rapports qu'ils génèrent et fournissent ces attestations aux nœuds de deuxième niveau sur un selon les besoins.Des formes de base d’assurance contre les fausses déclarations peuvent être mises en œuvre de manière fiable et fiable. de manière efficace en utilisant les smart contract. A titre d'exemple simple, une assurance paramétrique Les SCins contractuelles peuvent indemniser automatiquement les assurés si notre mécanisme d’incitation le deuxième niveau identifie une erreur dans un rapport généré au premier niveau. Un utilisateur U qui souhaite souscrire une police d'assurance, par exemple le créateur d'une cible contrat SC, peut introduire une demande auprès d'un assureur décentralisé pour un montant de police M$ sur le contrat. En approuvant U, l'assureur peut fixer un montant continu (par exemple mensuel) prime de $P en SCins. Pendant que U paie la prime, sa police reste active. Si un échec de reporting se produit dans SC, le résultat sera l'émission d'une paire (r1, r2) de rapports contradictoires pour SC, où r1 est signé par le premier niveau de notre mécanisme et r2, le rapport corrigé correspondant, est signé par le deuxième niveau. Si le U fournit une telle paire valide (r1, r2) à SCins, le contrat lui verse automatiquement M$, à condition ses paiements de primes sont à jour. 9.5 Variante à un tour Le protocole décrit dans la sous-section précédente exige que le comité de deuxième niveau attende plusieurs tours pour déterminer si un organisme de surveillance a déclenché une alerte. Ceci Cette exigence est valable même dans le cas optimiste, c'est-à-dire lorsque le premier niveau fonctionne. correctement. Pour les utilisateurs peu disposés à accepter les rapports avec optimisme, c'est-à-dire avant décision, les délais associés à cette approche seraient irréalisables. Pour cette raison, nous étudions également des protocoles alternatifs qui ne nécessitent qu'un seul rond. Dans cette approche, tous les nœuds oracle soumettent des bits secrets indiquant si oui ou non ils souhaitent lancer une alerte. Le comité de deuxième niveau vérifie ensuite ces valeurs ordre de priorité. Pour donner une idée générale, un tel schéma pourrait impliquer les éléments suivants étapes : 1. Soumission du bit de surveillance : chaque nœud Oi partage un secret avec une valeur de surveillance d'un bit. wi ∈{no alert, alert} parmi les nœuds du deuxième niveau pour chaque rapport qu'il génère. 2. Conseils anonymes : n'importe quel nœud oracle peut soumettre un conseil anonyme α au comité de deuxième niveau au cours du même cycle au cours duquel les bits de surveillance sont soumis. Cette astuce α est un message indiquant qu'une alerte a été déclenchée pour le rapport en cours. 3. Vérification des bits de surveillance : le comité de deuxième niveau révèle le chien de garde des nœuds oracle bits par ordre de priorité. Notez que les nœuds ne doivent envoyer aucun bit de surveillance d’alerte lorsqu’ils n’alertent pas : sinon, l’analyse du trafic révèle les bits de tous les nœuds. Le protocole révèle l'absence d'alerte bits de surveillance des nœuds avec une priorité plus élevée que le chien de garde d'alerte ayant la priorité la plus élevée. Observez que ce qui est révélé est identique à celui de notre protocole n-round. Les récompenses sont également distribuées de manière identique à ce système, c'est-à-dire le premier chien de garde identifié reçoit les dépôts réduits des nœuds qui ont soumis des rapports incorrects.L'utilisation de conseils anonymes permet au comité de deuxième niveau de rester non interactif dans les cas où aucune alerte n'a été déclenchée, réduisant ainsi la complexité de la communication. dans le cas commun. Notez que tout organisme de surveillance qui déclenche une alerte est économiquement incité à soumettre un signalement anonyme : si aucun signalement n'est soumis, aucune récompense n'est versée à quiconque. nœud. Pour garantir que l'expéditeur Oi d'un signalement anonyme α ne puisse pas être identifié par le adversaire basé sur les données du réseau, le conseil anonyme peut être envoyé via un canal, par exemple via Tor, ou, plus pratiquement, via un proxy via un fournisseur de services cloud. À authentifier la pointe comme provenant de O, Oi peut signer α en utilisant une signature en anneau [39, 192]. Alternativement, pour empêcher les attaques par déni de service non attribuables contre le comité de deuxième niveau par un nœud oracle malveillant, α peut être un identifiant anonyme avec anonymat révocable [73]. Ce protocole, bien que pratiquement réalisable, nécessite une ingénierie quelque peu lourde exigences (que nous étudions les moyens de réduire). Les nœuds de premier niveau, par exemple, doit communiquer directement avec les nœuds de deuxième niveau, nécessitant la maintenance d'un annuaire. Le besoin de canaux anonymes et de signatures en anneau s'ajoute à l'ingénierie complexité du schéma. Enfin, il existe une exigence particulière de confiance, brièvement évoquée dans la note ci-dessous. Nous étudions donc également des schémas plus simples qui permettent néanmoins d'atteindre impact super-linéaire staking, mais peut-être moins que quadratique, dans lequel un corrupteur a asymptotiquement besoin de ressources d'au moins $n log n, par exemple. Certains des régimes visés la considération implique la sélection aléatoire d'un sous-ensemble strict de nœuds pour agir en tant que chiens de garde, auquel cas la corruption éventuelle devient une attaque particulièrement puissante. Remarque : La sécurité de ce mécanisme staking à un tour nécessite des ressources inexploitables. canaux entre oracle et les nœuds de deuxième niveau - une exigence standard dans les systèmes résistants à la coercition, par exemple le vote [82, 138], et une exigence raisonnable dans la pratique. De plus, cependant, un nœud Oi qui cherche à coopérer avec un corrupteur peut construire ses secrets sont partagés de manière à montrer au corrupteur qu'il a codé un code particulier valeur. Par exemple, si Oi ne sait pas quels nœuds contrôle le corrupteur, alors Oi peut soumettre des actions de valeur 0 à tous les membres du comité. Le corrupteur peut alors vérifier les Oi conformité de manière probabiliste. Pour éviter ce problème dans tout protocole à un seul tour, nous exiger que Oi connaisse l’identité d’au moins un nœud honnête de deuxième niveau. Avec un protocole interactif dans lequel chaque nœud de deuxième niveau ajoute une randomisation facteur aux actions, le mieux que le corrupteur puisse faire est d'imposer la sélection par Oi d'un peu de chien de garde. 9.6 Cadre d'incitation implicite (IIF) Le FFO est une forme d'incitation implicite au comportement correct dans le réseau Chainlink. Il fonctionne comme une participation explicite, c’est-à-dire des dépôts, dans la mesure où elle contribue à renforcer la sécurité économique des le réseau. En d’autres termes, les FFO devraient être inclus dans le cadre du dépôt (efficace) $d d'un nœud du réseau.La question est : comment mesurer les FFO et d’autres formes d’incitations implicites ? au sein du réseau Chainlink ? Le cadre d'incitation implicite (IIF) est un ensemble de principes et techniques que nous envisageons de développer à cet effet. Systèmes de blockchain fournissent de nombreuses formes de transparence sans précédent et les enregistrements de haute confiance des nœuds Les performances qu’ils créent constituent un tremplin pour notre vision du fonctionnement de l’IIF. Nous esquissons ici très brièvement des idées sur les éléments clés du CII. L'IIF lui-même comprendra un ensemble de facteurs que nous identifions comme importants pour évaluer des incitations implicites, ainsi que des mécanismes de publication de données pertinentes sous une forme de haute assurance pour être utilisées par des algorithmes d'analyse. Différents utilisateurs Chainlink peuvent souhaitent utiliser l’IIF de différentes manières, par exemple en accordant une pondération différente à différents facteurs. Nous nous attendons à ce que des services d'analyse apparaissent dans la communauté pour aider les utilisateurs à appliquer l'IIF. en fonction de leurs préférences individuelles en matière d'évaluation des risques, et notre objectif est de faciliter ces services en garantissant leur accès à des données de support de haute assurance et en temps opportun, comme nous le discutons ci-dessous (section 9.6.4). 9.6.1 Opportunité de frais futurs Les nœuds participent à l'écosystème Chainlink pour gagner une part des frais que les réseaux paient pour l'un des différents services que nous avons décrits dans cet article, de les données ordinaires alimentent des services avancés tels que l'identité décentralisée, le séquençage équitable, et la préservation de la confidentialité DeFi. Les frais du réseau Chainlink prennent en charge les coûts des opérateurs de nœuds, par exemple pour l'exécution des serveurs, l'acquisition des licences de données nécessaires et la maintenance. une équipe mondiale pour garantir une disponibilité élevée. Le FFO désigne les frais de service, nets de frais, qu'un nœud a tout à gagner à l'avenir, ou à perdre s'il démontre un comportement défectueux. Le FFO est une forme de participation qui permet de sécuriser le réseau. Une caractéristique utile de FFO est le fait que les données en chaîne (complétées par des données hors chaîne) données) établissent un enregistrement de haute confiance de l’historique d’un nœud, permettant le calcul du FFO de manière transparente et empirique. Une mesure simple et de premier ordre des FFO peut être dérivée du revenu net moyen d'un nœud sur une période donnée (c’est-à-dire les revenus bruts moins les dépenses d’exploitation). FFO peut puis être calculé comme, par exemple, la valeur actuelle nette [114] des revenus nets futurs cumulés, en d’autres termes, la valeur actualisée dans le temps de tous les gains futurs. Les revenus des nœuds peuvent toutefois être volatils, comme le montre par exemple la figure 17. Plus important encore, les revenus des nœuds peuvent ne pas suivre une distribution stationnaire au fil du temps. Par conséquent, d’autres facteurs que nous prévoyons d’explorer dans l’estimation des FFO comprennent : • Historique des performances : l'historique des performances d'un opérateur, y compris l'exactitude et l'actualité de ses rapports, ainsi que sa disponibilité, fournit un objectif. pierre de touche permettant aux utilisateurs d'évaluer sa fiabilité. L'historique des performances sera ainsi fournir un facteur critique dans la sélection par les utilisateurs des nœuds oracle (ou, avec l'avènement de DONs, leur sélection de DONs). Un solide historique de performances est susceptible de sont en corrélation avec des revenus continus élevés.18 18Une question de recherche importante que nous entendons aborder est la détection des volumes de services falsifiés.Figure 17 : Revenus gagnés par les nœuds Chainlink sur un seul flux de données (ETH-USD) pendant une semaine représentative en mars 2021. • Accès aux données : même si les oracle peuvent obtenir de nombreuses formes de données à partir d'API ouvertes, certaines formes de données ou certaines sources de haute qualité peuvent être disponibles uniquement sur un par abonnement ou par le biais d'accords contractuels. Un accès privilégié à certains les sources de données peuvent jouer un rôle dans la création d’un flux de revenus stable. • Participation DON : avec l'avènement des DON, des communautés de nœuds viendront ensemble pour fournir des services particuliers. Nous nous attendons à ce que de nombreux DON incluent opérateurs sur une base sélective, établissant la participation dans des DON réputés en tant que position privilégiée sur le marché qui permet d’assurer une source de revenus constante. • Activité multiplateforme : certains opérateurs de nœuds peuvent avoir une présence bien établie et des antécédents de performances dans d'autres contextes, par exemple en tant que PoS validator ou fournisseurs de données dans des contextes non blockchain. Leurs performances dans ces autres systèmes (lorsque les données les concernant sont disponibles sous une forme fiable) peuvent éclairer l'évaluation. de leur historique de performances. De même, comportement défectueux dans le réseau Chainlink peut compromettre les revenus de ces autres systèmes en chassant les utilisateurs, c'est-à-dire les FFO peut s’étendre sur toutes les plateformes. 9.6.2 FFO spéculatifs Les opérateurs de nœuds participent au réseau Chainlink non seulement pour générer des revenus grâce à opérations, mais de créer et de se positionner pour profiter de nouvelles opportunités de gestion d'emplois. En d’autres termes, les dépenses des nœuds oracle du réseau sont également une déclaration positive sur l'avenir de DeFi et d'autres applications de contrats intelligents domaines ainsi que les applications émergentes non-blockchain des réseaux oracle. Les opérateurs de nœuds gagnent aujourd'hui les frais disponibles sur les réseaux Chainlink existants et simultanément Ceux-ci sont vaguement analogues aux faux avis sur les sites Internet, sauf que le problème est plus simple dans le oracle parce que nous avons un enregistrement définitif indiquant si les marchandises, c'est-à-dire les rapports, ont été commandées et livrés, par opposition aux biens physiques commandés dans les boutiques en ligne, par exemple. Autrement dit, dans le oracle Dans ce contexte, les performances peuvent être validées, même si la véracité du client ne le peut pas.bâtir une réputation, un historique de performance et une expertise opérationnelle qui positionneront avantageusement pour gagner des frais disponibles dans les futurs réseaux (sous réserve, bien sûr, sur un comportement honnête). Les nœuds opérant aujourd'hui dans l'écosystème Chainlink seront dans ce cadre sens d'avoir un avantage sur les nouveaux arrivants en gagnant les frais supplémentaires Chainlink les services deviennent disponibles. Cet avantage s'applique aux nouveaux opérateurs, ainsi qu'aux entreprises technologiques jouissant d'une réputation établie ; par exemple, T-Systems, une société traditionnelle fournisseur de technologie (filiale de Deutsche Telekom) et Kraken, une grande société centralisée échange, ont établi des présences précoces dans l’écosystème Chainlink [28, 143]. Une telle participation des nœuds oracle à des opportunités futures peut être considérée comme elle-même comme une sorte de FFO spéculatif, et constitue ainsi une forme de participation dans le Chainlink réseau. 9.6.3 Réputation externe L'IIF tel que nous l'avons décrit peut fonctionner en réseau avec des acteurs strictement pseudonymes. opérateurs, c’est-à-dire sans divulgation des personnes ou des entités du monde réel impliquées. Toutefois, un facteur potentiellement important dans la sélection des prestataires par les utilisateurs est l’externe. réputation. Par réputation externe, nous entendons la perception de fiabilité attachée aux identités du monde réel, plutôt qu’aux pseudonymes. Risque de réputation lié à les identités du monde réel peuvent être considérées comme une forme d’incitation implicite. Nous considérons la réputation à travers le prisme de l’IIF, c’est-à-dire, dans un sens cryptoéconomique, comme moyen d’établir activité multiplateforme qui peut être intégrée aux estimations des FFO. L’avantage d’utiliser la réputation externe comme facteur dans les estimations des FFO, par opposition au lien pseudonyme, c'est que la réputation externe lie la performance non seulement à un aux activités existantes de l’opérateur, mais également aux activités futures. Si, par exemple, une mauvaise réputation s’attache à un individu, il peut entacher les futures entreprises de cette personne. En d’autres termes, la réputation externe peut capter une part plus large des FFO que les pseudonymes. les dossiers de performance, comme l'impact d'un malversation attaché à une personne ou établi Il est plus difficile d’échapper à une entreprise que celle associée à une opération pseudonyme. Chainlink est compatible avec les technologies d'identité décentralisées (Section 4.3) qui peut fournir un soutien pour l’utilisation de la réputation externe au sein de l’IIF. De telles technologies peut valider et ainsi contribuer à garantir la véracité des affirmations du monde réel affirmées par les opérateurs. identités.19 9.6.4 Ouvrir l'analyse IIF L'IIF, comme nous l'avons noté, vise à fournir des données et des outils open source fiables pour analyses incitatives implicites. L'objectif est de permettre aux prestataires de la communauté développer des analyses adaptées aux besoins d’évaluation des risques des différentes parties du secteur Base d'utilisateurs Chainlink. 19Les identifiants décentralisés peuvent également, si désiré, embellir les pseudonymes avec des informations complémentaires. Par exemple, un opérateur de nœud pourrait en principe utiliser ces informations d'identification pour prouver qu'il s'agit d'une entreprise Fortune 500, sans révéler laquelle.Une quantité considérable de données historiques concernant les revenus et les performances des nœuds réside sur la chaîne sous une forme immuable et de haute confiance. Notre objectif est cependant de fournir le des données les plus complètes possibles, y compris des données sur les comportements visibles uniquement hors chaîne, comme le reporting hors chaîne (OCR) ou l'activité DON. De telles données peuvent potentiellement être volumineux. La meilleure façon de le conserver et d'assurer son intégrité, c'est-à-dire de le protéger des la falsification, nous pensons, se fera avec l'aide de DON, en utilisant les techniques discutées à la section 3.3. Certaines incitations se prêtent à des formes directes de mesure, telles que staking dépôts et FFO de base. D’autres, comme les FFO spéculatifs et la réputation, sont plus difficiles à évaluer. mesurer de manière objective, mais nous pensons que les formes de données de support, y compris croissance historique de l'écosystème Chainlink, mesures de réputation sur les réseaux sociaux, etc., peut prendre en charge les modèles d'analyse IIF même pour ces éléments plus difficiles à quantifier. Nous pouvons imaginer que des DON dédiés apparaissent spécifiquement pour surveiller, valider et enregistrer des données relatives aux enregistrements de performances hors chaîne des nœuds, ainsi que d'autres données utilisées dans l'IIF, telles que les informations d'identité validées. Ces DON peuvent fournir des données IIF uniformes et hautement fiables à tous les fournisseurs d'analyse desservant la communauté Chainlink. Ils fourniront également un record en or qui fait valoir les affirmations des fournisseurs d'analyses. vérifiable de manière indépendante par la communauté. 9.7 Rassembler tout cela : incitations pour les opérateurs de nœuds Synthèse de nos discussions ci-dessus sur les incitations explicites et implicites pour les opérateurs de nœuds fournit une vue globale de la manière dont les opérateurs de nœuds participent et bénéficient de le réseau Chainlink. À titre de guide conceptuel, nous pouvons exprimer le total des actifs en jeu par un Chainlink donné. opérateur de nœud $S sous une forme grossière et stylisée comme : \(S ≈\)D + \(F + \)FS + $R, où : • $D est la somme de toutes les mises explicitement déposées sur tous les réseaux dans lesquels l'opérateur participe ; • $F est la valeur actuelle nette de l'ensemble de tous les FFO sur tous les réseaux du pays. auquel l'opérateur participe ; • $FS est la valeur actuelle nette des FFO spéculatifs de l'opérateur ; et • $R est le capital de réputation de l'opérateur en dehors de l'écosystème Chainlink. qui pourrait être compromis par un mauvais comportement identifié dans ses nœuds oracle. Bien que largement conceptuelle, cette égalité approximative montre utilement qu'il existe une multiplicité de facteurs économiques favorisant les performances de haute fiabilité des nœuds Chainlink. Tous ces facteurs autres que $D sont présents dans les réseaux Chainlink d'aujourd'hui.9.8 Le cycle vertueux de la sécurité économique La combinaison de l'impact super-linéaire staking avec la représentation des paiements de frais car les opportunités de frais futurs (FFO) dans l'IIF peuvent conduire à ce que nous appelons le cercle vertueux de sécurité économique dans un réseau oracle. Cela peut être considéré comme une sorte d’économie d'échelle. À mesure que le montant total garanti par un réseau particulier augmente, le montant de l’enjeu supplémentaire qu’il faut pour ajouter un montant fixe de sécurité économique diminue tout comme le coût moyen par utilisateur. Il est donc moins cher, en termes de frais, pour un utilisateur d’adhérer un réseau déjà existant que d'obtenir la même augmentation de l'économie du réseau sécurité en créant un nouveau réseau. Il est important de noter que l'ajout de chaque nouvel utilisateur réduit le coût du service pour tous les utilisateurs précédents de ce réseau. Étant donné une structure de frais particulière (par exemple un taux de rendement particulier sur le montant misé), si le total des frais perçus par un réseau augmente, cela encourage le flux de revenus supplémentaires. participation dans le réseau pour le sécuriser à un taux plus élevé. Plus précisément, si la mise totale qu'un nœud individuel peut détenir dans le système est plafonné, puis lorsque de nouveaux paiements de frais entrez dans le système en augmentant son FFO, le nombre de nœuds n augmentera. Merci au impact super-linéaire staking de la conception de notre système d'incitation, la sécurité économique de le système augmentera plus vite que n, par exemple comme n2 dans le mécanisme que nous avons esquissé à la section 9.4. En conséquence, le coût moyen de la sécurité économique, c'est-à-dire le montant de la participation un dollar de sécurité économique va chuter. Le réseau peut donc facturer à ses utilisateurs des frais inférieurs. En supposant que la demande de services oracle est élastique (voir, par exemple, [31] pour un bref explication), la demande va augmenter, générant des frais et des FFO supplémentaires. Nous illustrons ce point avec l’exemple suivant. Exemple 5. Depuis la sécurité économique d'un réseau oracle avec notre incitation le programme est \(dn2 for stake \)dn, la sécurité économique apportée par un dollar de mise est n et donc le coût moyen par dollar de sécurité économique, c'est-à-dire le montant de la mise contribuer à un dollar de sécurité économique – est de 1/n. Considérons un réseau dans lequel les incitations économiques sont entièrement constituées de FFO, plafonnées à \(d ≤\)10K par nœud. Supposons que le réseau ait n = 3 nœuds. Alors le coût moyen par dollar de sécurité économique est d’environ 0,33 $. Supposons que le FFO total du réseau dépasse \(30K (e.g., to \)31K). Étant donné le plafond du FFO par nœud, le réseau s'étend jusqu'à (au moins) n = 4. Maintenant, le coût moyen par dollar de sécurité économique tombe à environ 0,25 dollar. Nous illustrons schématiquement le cycle vertueux complet de la sécurité économique dans les réseaux oracle sur la figure 18. Nous soulignons que le cercle vertueux de la sécurité économique découle de l’effet des utilisateurs mutualisant leurs tarifs. C'est leur FFO collectif qui œuvre en faveur d'un plus grand taille des réseaux et donc une plus grande sécurité collective. Nous notons également que le cercle vertueux de la sécurité économique favorise la réalisation de la viabilité financière des DON. Une fois créés, les DON qui répondent aux besoins des utilisateurs devraient se développer jusqu'au point où les revenus provenant des frais dépassent les coûts opérationnels des nœuds oracle.



Figure 18 : Schéma du cycle vertueux de Chainlink staking. Une hausse des frais d’utilisation les paiements à un réseau oracle 1⃝ provoquent sa croissance, entraînant une croissance de son économie sécurité 2⃝. Cette croissance super-linéaire réalise des économies d'échelle dans les réseaux Chainlink 3⃝. Plus précisément, cela signifie une réduction du coût moyen de la sécurité économique, c'est-à-dire la sécurité économique par dollar découlant du paiement de frais ou d’autres sources de participation augmente. Des coûts inférieurs, répercutés sur les utilisateurs, stimulent une demande accrue de oracle prestations 4⃝. 9.9 Facteurs supplémentaires qui stimulent la croissance du réseau Alors que l'écosystème Chainlink continue de se développer, nous pensons que son attractivité aux utilisateurs et leur importance à mesure que l’infrastructure pour l’économie blockchain va s’accélérer. La valeur fournie par les réseaux oracle est super-linéaire, ce qui signifie qu'elle croît plus rapidementque la taille des réseaux eux-mêmes. Cette croissance de la valeur provient à la fois des économies d’échelle (une plus grande rentabilité par utilisateur à mesure que les volumes de services augmentent) et effets de réseau : augmentation de l'utilité du réseau à mesure que les utilisateurs adoptent plus largement les DON. Alors que les smart contract existants continuent de voir davantage de valeur sécurisée et entièrement nouvelle Les candidatures smart contract sont rendues possibles par des services plus décentralisés, le total l'utilisation et les frais globaux payés aux DON devraient augmenter. Augmentation des pools de frais dans se traduire à son tour par les moyens et les incitations nécessaires pour créer des services encore plus décentralisés, ce qui crée un cercle vertueux. Ce cercle vertueux résout un problème critique de la poule et de l’œuf problème dans l’écosystème hybride smart contract : fonctionnalités innovantes smart contract nécessitent souvent des services décentralisés qui n'existent pas encore (par exemple, de nouveaux marchés DeFi souvent nécessitent de nouveaux flux de données) mais nécessitent une demande économique suffisante pour voir le jour. La mise en commun des frais par divers smart contract pour les DON existants signalera une demande de services décentralisés supplémentaires provenant d'une base d'utilisateurs croissante, donnant lieu à leur création par DONs et une activation continue de smart contract hybrides nouveaux et variés. En résumé, nous pensons que la croissance de la sécurité des réseaux portée par des Les cycles du mécanisme Chainlink staking illustrent des modèles de croissance plus larges qui le réseau Chainlink peut contribuer à créer une économie en chaîne pour la décentralisation prestations.

Kinh tế và kinh tế tiền điện tử
Để mạng Chainlink đạt được mức độ bảo mật mạnh mẽ trong mô hình tin cậy phi tập trung, điều cần thiết là các nút phải thể hiện hành vi đúng đắn một cách tập thể, nghĩa là chúng tuân thủ phần lớn thời gian đều chính xác với các giao thức DON. Trong phần này, chúng tôi thảo luận về các phương pháp để giúp thực thi hành vi đó bằng các biện pháp khuyến khích kinh tế, hay còn gọi là kinh tế tiền điện tử khuyến khích. Những ưu đãi này được chia thành hai loại: rõ ràng và tiềm ẩn, được thực hiện tương ứng thông qua staking và cơ hội thu phí trong tương lai (FFO). Đặt cọc: Đặt cược vào Chainlink, giống như trong các hệ thống blockchain khác, bao gồm những người tham gia mạng, tức là các nút oracle, gửi tiền bị khóa dưới dạng LINK tokens. Những cái này quỹ mà chúng tôi còn gọi là cổ phần hoặc cổ phần rõ ràng là một động lực rõ ràng. Họ có thể bị mất khi nút bị lỗi hoặc trục trặc. Trong ngữ cảnh blockchain, thủ tục này thường được gọi là chém. Tuy nhiên, việc đặt cược bởi các nút oracle trong Chainlink về cơ bản khác với staking bởi validator giây trong blockchain giây không được phép. Người xác nhận có thể hoạt động sai bằng cách đặt hàng các giao dịch không rõ ràng hoặc đối nghịch. Giao thức đồng thuận cơ bản trong một 15Vì người dùng có thể thay thế các giao dịch trong mempool nên cần phải cẩn thận để đảm bảo sự tương ứng chính xác giữa các giao dịch được khai thác và DON đã gửi.Tuy nhiên, blockchain không được phép sử dụng các quy tắc xác thực khối nhanh chóng và nguyên gốc bằng mật mã để ngăn validator tạo các khối không hợp lệ. Ngược lại, các biện pháp bảo vệ có lập trình không thể ngăn mạng oracle gian lận tạo ra báo cáo không hợp lệ. Lý do là sự khác biệt chính giữa hai loại hệ thống: xác thực giao dịch trong blockchains là thuộc tính của tính nhất quán nội bộ, trong khi tính chính xác của oracle báo cáo về blockchain là thuộc tính của dữ liệu bên ngoài, tức là dữ liệu ngoài chuỗi. Chúng tôi đã thiết kế cơ chế staking sơ bộ cho mạng Chainlink dựa trên trên giao thức tương tác giữa các nút oracle có thể sử dụng dữ liệu bên ngoài. Cái này cơ chế tạo ra các khuyến khích tài chính cho hành vi đúng đắn bằng cách sử dụng các phần thưởng và hình phạt (chém). Vì cơ chế này mang tính kinh tế nên nó được thiết kế để ngăn chặn nút tham nhũng bởi kẻ thù sử dụng nguồn tài chính để làm hỏng các nút bằng cách hối lộ. (Đối thủ như vậy rất chung chung và mở rộng, ví dụ: tới các nút hợp tác với rút ra giá trị từ hành vi sai trái tập thể của họ.) Cơ chế Chainlink staking mà chúng tôi đã thiết kế có một số cơ chế mạnh mẽ và mới lạ tính năng.16 Tính năng chính như vậy là tác động siêu tuyến tính staking (cụ thể là bậc hai). Đối thủ phải có tài nguyên vượt quá đáng kể số tiền gửi của các nút trong nhằm phá hoại cơ chế. Cơ chế staking của chúng tôi còn cung cấp thêm khả năng bảo vệ chống lại đối thủ mạnh hơn so với những gì đã được xem xét trước đây trong các hệ thống tương tự, cụ thể là một kẻ thù có thể đưa ra hối lộ điều chỉnh hành vi trong tương lai của các nút. Ngoài ra, chúng tôi còn thảo luận về cách các công cụ Chainlink như DECO có thể giúp củng cố staking của chúng tôi cơ chế bằng cách tạo điều kiện cho việc xét xử chính xác trong trường hợp nút hoạt động bị lỗi. Cơ hội thu phí trong tương lai (FFO): blockchains không được phép—của cả PoW và sự đa dạng của PoS—ngày nay chủ yếu dựa vào cái mà chúng tôi gọi là động cơ ngầm. Đây là khuyến khích kinh tế cho hành vi trung thực không xuất phát từ những phần thưởng rõ ràng, mà là từ chính sự tham gia của nền tảng. Ví dụ: cộng đồng thợ mỏ Bitcoin được khuyến khích chống lại việc thực hiện cuộc tấn công 51% do nguy cơ làm suy yếu niềm tin vào Bitcoin, làm giảm giá trị của nó và do đó làm xói mòn giá trị tập thể của họ đầu tư vốn vào cơ sở hạ tầng khai thác mỏ [150]. Mạng Chainlink được hưởng lợi từ động cơ ngầm tương tự mà chúng tôi đề cập đến như cơ hội phí trong tương lai (FFO). Các nút Oracle có lịch sử hiệu suất mạnh mẽ hoặc danh tiếng thu hút phí từ người dùng. Hành vi sai trái của nút oracle gây nguy hiểm cho tương lai thanh toán phí và do đó phạt nút bằng chi phí cơ hội về mặt tiềm năng doanh thu kiếm được thông qua việc tham gia vào mạng lưới. Bằng cách tương tự với cổ phần rõ ràng, FFO có thể được xem như một dạng cổ phần tiềm ẩn, một động cơ khuyến khích hành vi trung thực bắt nguồn từ lợi ích chung của việc duy trì niềm tin vào nền tảng mà trên đó Hoạt động kinh doanh của nhà khai thác nút phụ thuộc vào, tức là hiệu suất tích cực và danh tiếng của mạng. Khuyến khích này vốn có nhưng không được thể hiện rõ ràng trong mạng Chainlink giao thức. Trong Bitcoin, duy trì giá trị của hoạt động khai thác như đã đề cập ở trên 16Cơ chế staking mà chúng tôi mô tả ở đây hiện chỉ nhằm mục đích thực thi việc gửi báo cáo chính xác bởi oracle mạng. Chúng tôi hy vọng trong công việc tương lai sẽ mở rộng nó để đảm bảo thực hiện đúng nhiều các chức năng khác DON sẽ cung cấp.tương tự có thể được xem như một hình thức cổ phần tiềm ẩn. Chúng tôi nhấn mạnh rằng FFO đã tồn tại trong Chainlink và giúp bảo mật mạng hôm nay. Đóng góp chính của chúng tôi trong việc phát triển hơn nữa Chainlink sẽ là cách tiếp cận có nguyên tắc, dựa trên kinh nghiệm để đánh giá các biện pháp khuyến khích ngầm như FFO thông qua cái mà chúng tôi gọi là Khung khuyến khích tiềm ẩn (IIF). Để ước tính số lượng như cơ hội thu phí trong tương lai của các nút, IIF sẽ liên tục dựa trên toàn diện dữ liệu hiệu suất và thanh toán được mạng Chainlink tích lũy. Những ước tính như vậy sẽ cho phép tham số hóa dựa trên IIF của các hệ thống staking phản ánh khuyến khích nút với độ chính xác cao hơn các mô hình heuristic và/hoặc tĩnh hiện tại. Tóm lại, hai động lực kinh tế chính cho nút oracle chính xác hành vi trong mạng Chainlink đang phát triển sẽ là: • Đặt cọc (đặt cọc) ồ Khuyến khích rõ ràng • Cơ hội thu phí trong tương lai (FFO) ồ Khuyến khích ngầm Hai hình thức khuyến khích này bổ sung cho nhau. Các nút Oracle có thể đồng thời tham gia vào giao thức Chainlink staking, tận hưởng luồng doanh thu liên tục từ người dùng và cùng được hưởng lợi từ hành vi tốt liên tục của họ. Như vậy cả hai biện pháp khuyến khích góp phần bảo mật kinh tế tiền điện tử do mạng oracle cung cấp. Ngoài ra, hai động cơ khuyến khích này có thể củng cố và/hoặc được trao đổi với nhau. Ví dụ, toán tử oracle mới không có lịch sử hiệu suất và luồng doanh thu có thể đặt cược số lượng lớn LINK như một sự đảm bảo cho hành vi trung thực, từ đó thu hút người dùng và phí. Ngược lại, một toán tử oracle đã được thiết lập có thời gian dài, tương đối không có lỗi lịch sử hiệu suất có thể tính phí đáng kể từ cơ sở người dùng lớn và do đó dựa vào nặng nề hơn vào FFO của nó như một hình thức khuyến khích ngầm. Nói chung, cách tiếp cận mà chúng tôi xem xét ở đây nhằm vào số lượng oracle mạng nhất định nguồn lực để tạo ra các khuyến khích kinh tế lớn nhất có thể trong Chainlink cho hợp lý các đại lý—tức là các nút tối đa hóa tiện ích tài chính của họ—hành xử trung thực. Đặt cái khác theo cách này, mục tiêu là tối đa hóa nguồn tài chính cần thiết để đối thủ tấn công mạng thành công. Bằng cách xây dựng giao thức staking với tính toán tốt an ninh kinh tế được xác định và cũng sử dụng IIF, chúng tôi mong muốn đo lường sức mạnh của Ưu đãi của Chainlink chính xác nhất có thể. Những người tạo ra các hợp đồng dựa trên sẽ sau đó có thể xác định một cách chắc chắn liệu mạng oracle có đáp ứng được không mức độ bảo mật kinh tế tiền điện tử cần thiết của họ. Chu kỳ đạo đức của an ninh kinh tế: Các biện pháp khuyến khích mà chúng ta thảo luận trong phần này, staking và FFO, có tác động vượt ra ngoài việc tăng cường tính bảo mật của DONs. Họ hứa sẽ tạo ra cái mà chúng ta gọi là một chu kỳ an ninh kinh tế có đạo đức. Tác động siêu tuyến tính staking (và tính kinh tế theo quy mô khác) dẫn đến hiệu quả hoạt động thấp hơn chi phí khi mức độ bảo mật của DON tăng lên. Chi phí thấp hơn sẽ thu hút thêm người dùng vào DON,tăng cường thanh toán phí. Sự gia tăng trong thanh toán phí tiếp tục khuyến khích sự tăng trưởng của mạng lưới, giúp duy trì chu kỳ đạo đức. Chúng tôi tin rằng chu kỳ lành mạnh của an ninh kinh tế chỉ là một ví dụ về tính kinh tế theo quy mô và hiệu ứng mạng trong số những vấn đề khác mà chúng ta sẽ thảo luận sau trong phần này. Tổ chức phần: Đặt cọc đưa ra những thách thức đáng chú ý về mặt kỹ thuật và khái niệm cho mà chúng tôi đã thiết kế một cơ chế với các tính năng mới. Do đó, việc đặt cược sẽ được trọng tâm chính của chúng tôi trong phần này. Chúng tôi cung cấp tổng quan về cách tiếp cận staking mà chúng tôi giới thiệu trong bài viết này ở Phần 9.1, sau đó là thảo luận chi tiết trong Phần 9.2 đến 9.5. Chúng tôi trình bày IFF trong Phần 9.6. Chúng tôi trình bày quan điểm tóm tắt về Chainlink ưu đãi mạng trong Phần 9.7. Trong Phần 9.8, chúng tôi thảo luận về chu kỳ hợp lý của an ninh kinh tế mà phương pháp staking được đề xuất của chúng tôi có thể mang lại cho các mạng oracle. Cuối cùng, chúng tôi mô tả ngắn gọn các tiềm năng khác tác động thúc đẩy sự phát triển của mạng Chainlink trong Phần 9.9. 9.1 Tổng quan về đặt cược Thiết kế cơ chế staking mà chúng tôi giới thiệu ở đây, như đã lưu ý ở trên, bao gồm một giao thức tương tác giữa các nút oracle cho phép giải quyết sự không nhất quán trong báo cáo dữ liệu bên ngoài. Đặt cược nhằm mục đích đảm bảo hành vi trung thực từ các nút oracle hợp lý. Do đó, chúng ta có thể lập mô hình đối thủ tấn công giao thức staking dưới dạng kẻ hối lộ: Chiến lược của kẻ thù là mua chuộc các nút oracle bằng cách sử dụng các biện pháp khuyến khích tài chính. Kẻ thù có thể lấy được nguồn tài chính từ việc giả mạo thành công với báo cáo oracle, ví dụ: đề nghị chia sẻ lợi nhuận thu được với các nút bị hỏng. Chúng tôi hướng tới thiết kế cơ chế staking của mình đồng thời hai mục tiêu đầy tham vọng: 1. Chống lại kẻ thù hùng mạnh: Cơ chế staking được thiết kế để bảo vệ oracle mạng lưới chống lại một nhóm đối thủ rộng lớn có khả năng phức tạp, chiến lược hối lộ có điều kiện, bao gồm cả hối lộ tiềm năng, đưa hối lộ tới oracle có danh tính được xác định sau sự việc (ví dụ: đưa hối lộ cho oracle được chọn ngẫu nhiên để cảnh báo mức độ ưu tiên cao). Trong khi các thiết kế oracle khác đã xem xét một loạt các cuộc tấn công hẹp mà không có đầy đủ khả năng thực tế đối thủ, theo hiểu biết tốt nhất của chúng tôi, cơ chế đối nghịch mà chúng tôi giới thiệu đây là lần đầu tiên đề cập một cách rõ ràng một loạt các chiến lược hối lộ và chỉ ra kháng cự trong mô hình này. Mô hình của chúng tôi giả định rằng các nút bên cạnh kẻ tấn công là hợp lý về mặt kinh tế (trái ngược với trung thực) và chúng tôi giả định sự tồn tại của một nguồn sự thật cực kỳ tốn kém cho việc sử dụng thông thường nhưng có sẵn trong trường hợp không đồng ý (được thảo luận thêm bên dưới). 2. Đạt được tác động siêu tuyến tính staking: Mục tiêu của chúng tôi là đảm bảo rằng mạng oracle bao gồm các báo cáo tác nhân hợp lý trung thực ngay cả khi có sự hiện diện của kẻ tấn công với ngân sách siêu tuyến tínhtrong tổng số cổ phần được gửi bởi toàn bộ mạng lưới. Trong các hệ thống staking hiện có, nếu mỗi nút trong số n nút đặt cược $d, kẻ tấn công có thể đưa ra một khoản hối lộ đáng tin cậy yêu cầu các nút đó hành xử không trung thực để đổi lấy khoản thanh toán nhiều hơn một chút \(d to each node, using a total budget of about \)dn. Đây đã là một thanh cao như kẻ tấn công phải có một ngân sách thanh khoản theo thứ tự tổng số tiền gửi của tất cả các staker trong mạng. Mục tiêu của chúng tôi là mức độ an ninh kinh tế cao hơn nữa hơn trở ngại vốn đã đáng kể này. Chúng tôi mong muốn thiết kế hệ thống staking đầu tiên có thể đạt được sự bảo mật cho kẻ tấn công thông thường với ngân sách siêu tuyến tính trong n. Mặc dù những cân nhắc thực tế có thể đạt được tác động thấp hơn, như chúng tôi thảo luận dưới đây, thiết kế sơ bộ của chúng tôi đạt được yêu cầu ngân sách đối nghịch lớn hơn $dn2/2, tức là, chia tỷ lệ bậc hai theo n, thậm chí khiến việc hối lộ hầu như không thực tế khi các nút chỉ đặt cược số tiền vừa phải. Để đạt được hai mục tiêu này đòi hỏi sự kết hợp sáng tạo giữa thiết kế khuyến khích và mật mã. Ý tưởng chính: Cách tiếp cận staking của chúng tôi xoay quanh một ý tưởng mà chúng tôi gọi là ưu tiên của cơ quan giám sát. Báo cáo được tạo bởi mạng Chainlink oracle và được gửi tới hợp đồng phụ thuộc (ví dụ: về giá tài sản) được tổng hợp từ các báo cáo riêng lẻ do các nút tham gia đóng góp (ví dụ: bằng cách lấy giá trị trung bình). Điển hình là thỏa thuận cấp độ dịch vụ (SLA) chỉ định giới hạn độ lệch có thể chấp nhận được cho các báo cáo, tức là báo cáo của nút có thể đi được bao xa đi chệch khỏi báo cáo tổng hợp và mức độ tổng hợp được phép lệch khỏi giá trị thực thì được coi là đúng. Trong hệ thống staking của chúng tôi, đối với một vòng báo cáo nhất định, mỗi nút oracle có thể hoạt động như cơ quan giám sát đưa ra cảnh báo nếu họ tin rằng báo cáo tổng hợp là không chính xác. Trong mỗi vòng báo cáo, mỗi nút oracle được chỉ định một mức độ ưu tiên công khai xác định thứ tự cảnh báo của nó (nếu có) sẽ được xử lý. Cơ chế của chúng tôi nhằm mục đích khen thưởng tập trung, có nghĩa là cơ quan giám sát có mức độ ưu tiên cao nhất đưa ra cảnh báo sẽ nhận được toàn bộ phần thưởng thu được bằng cách tịch thu tiền gửi của các nút bị lỗi. Thiết kế hệ thống staking của chúng tôi bao gồm hai cấp: cấp đầu tiên, mặc định và cấp thứ hai, tầng cản trở. Tầng đầu tiên chính là mạng oracle, một tập hợp n nút. (Để đơn giản, chúng tôi giả sử n là số lẻ.) Nếu phần lớn các nút báo cáo giá trị không chính xác, cơ quan giám sát trong cấp đầu tiên được khuyến khích mạnh mẽ để đưa ra cảnh báo. Nếu cảnh báo được đưa ra, báo cáo quyết định của mạng sau đó được chuyển lên cấp thứ hai—một hệ thống có chi phí cao, độ tin cậy tối đa có thể được người dùng chỉ định trong thỏa thuận cấp độ dịch vụ mạng. Ví dụ, đây có thể là một hệ thống chỉ bao gồm các nút có điểm số về độ tin cậy lịch sử hoặc điểm có độ lớn hơn oracles so với bậc đầu tiên. Ngoài ra, như đã thảo luận trong Phần 9.4.3, DECO hoặc Town Crier có thể phục vụ là những công cụ mạnh mẽ giúp đảm bảo việc xét xử hiệu quả và có tính kết luận ở cấp độ thứ hai. Để đơn giản, chúng tôi giả định rằng hệ thống cấp hai này đưa ra một báo cáo chính xác giá trị. Mặc dù việc dựa vào cấp thứ hai để tạo tất cả các báo cáo có vẻ hấp dẫn, Lợi ích của thiết kế của chúng tôi là nó luôn đạt được các đặc tính bảo mật củahệ thống cấp hai trong khi chỉ phải trả chi phí vận hành, trong trường hợp điển hình, của hệ thống cấp một. Mức độ ưu tiên của cơ quan giám sát dẫn đến tác động staking siêu tuyến tính theo cách sau: nếu mạng oracle cấp một đưa ra kết quả không chính xác và một số nút cơ quan giám sát cảnh báo, cơ chế khuyến khích staking thưởng cho cơ quan giám sát có mức độ ưu tiên cao nhất hơn $dn/2 được rút từ tiền gửi của (phần lớn) các nút hoạt động sai. các do đó, tổng phần thưởng tập trung vào tay cơ quan giám sát duy nhất này, do đó xác định mức tối thiểu mà đối thủ phải hứa với một cơ quan giám sát tiềm năng để khuyến khích nó không cảnh báo. Vì cơ chế của chúng tôi đảm bảo rằng mọi oracle đều nhận được cơ hội đóng vai trò là cơ quan giám sát nếu các cơ quan giám sát có mức độ ưu tiên cao hơn đã nhận hối lộ của họ (và được chọn không cảnh báo), do đó đối thủ phải đưa hối lộ nhiều hơn $dn/2 tới mọi nút để ngăn chặn bất kỳ cảnh báo nào được đưa ra. Vì có n nút nên Ngân sách cần thiết của đối phương để hối lộ thành công lên tới hơn $dn2/2, tức là là bậc hai của số n nút trong mạng. 9,2 Nền Cách tiếp cận của chúng tôi đối với staking dựa trên nghiên cứu trong lĩnh vực lý thuyết và cơ chế trò chơi thiết kế (MD) (để tham khảo sách giáo khoa, xem [177]). Lý thuyết trò chơi là lý thuyết toán học nghiên cứu chính thức về tương tác chiến lược. Trong bối cảnh này, trò chơi là một mô hình của một sự tương tác, điển hình là trong thế giới thực, mã hóa các tập hợp hành động có sẵn để người tham gia trò chơi, được gọi là người chơi. Trò chơi cũng chỉ định số tiền nhận được bởi từng người chơi—phần thưởng phụ thuộc vào hành động được lựa chọn của người chơi và hành động của những người chơi khác. Có lẽ ví dụ nổi tiếng nhất về trò chơi được nghiên cứu trong trò chơi lý thuyết là Thế tiến thoái lưỡng nan của tù nhân [178]. Các nhà lý thuyết trò chơi thường hướng tới việc hiểu trạng thái cân bằng hoặc cân bằng (nếu có) thể hiện trong một trò chơi nhất định. Một trạng thái cân bằng là một tập hợp các chiến lược (mỗi người chơi một chiến lược) sao cho không người chơi nào có thể đạt được điểm cao hơn thanh toán bằng cách đơn phương đi chệch khỏi chiến lược của mình. Trong khi đó, thiết kế cơ chế là khoa học thiết kế các biện pháp khuyến khích sao cho trạng thái cân bằng của một tương tác (và trò chơi liên quan của nó) có một số đặc tính mong muốn. MD có thể được coi là nghịch đảo của lý thuyết trò chơi: Câu hỏi kinh điển trong trò chơi lý thuyết là “với các động cơ và mô hình được đưa ra, trạng thái cân bằng sẽ như thế nào?” Ở MD, Thay vào đó, câu hỏi là “những khuyến khích nào sẽ mang lại một trò chơi có trạng thái cân bằng mong muốn?” Mục tiêu điển hình của người thiết kế cơ chế là tạo ra một cơ chế 'tương thích khuyến khích', nghĩa là những người tham gia cơ chế (ví dụ: đấu giá hoặc thông tin khác) hệ thống gợi ý [228]) được khuyến khích báo cáo sự thật về một số vấn đề (ví dụ: làm thế nào họ đánh giá cao một mặt hàng cụ thể). Cuộc đấu giá Vickrey (giá thứ hai) có lẽ là cơ chế khuyến khích tương thích được biết đến nhiều nhất, trong đó người tham gia nộp hồ sơ dự thầu kín cho một món hàng và người trả giá cao nhất sẽ thắng món hàng đó nhưng phải trả mức giá cao thứ hai [214]. Kinh tế học mật mã là một dạng MD dành riêng cho từng miền, tận dụng kỹ thuật mã hóa kỹ thuật để tạo ra sự cân bằng mong muốn trong các hệ thống phi tập trung. Hối lộ và thông đồng tạo ra những thách thức đáng kể trong lĩnh vực MD. Hầu như tất cả các cơ chế đều bị phá vỡ khi có sự thông đồng, được định nghĩa là các hợp đồng phụgiữa các bên tham gia cơ chế [125, 130]. Hối lộ, trong đó một bên bên ngoài đưa các khuyến khích mới vào trò chơi, gây ra một vấn đề thậm chí còn khó khăn hơn hơn là thông đồng; thông đồng có thể được coi là một trường hợp đặc biệt của hối lộ trong trò chơi người tham gia. Các hệ thống chuỗi khối thường có thể được khái niệm hóa như một trò chơi với các khoản thanh toán bằng tiền (dựa trên tiền điện tử). Một ví dụ đơn giản là khai thác Bằng chứng công việc: thợ mỏ có không gian hành động trong đó họ có thể chọn tỷ lệ hash để khai thác khối. Lợi ích của việc khai thác là phần thưởng âm được đảm bảo (chi phí điện và thiết bị) cộng với chi phí ngẫu nhiên phần thưởng tích cực (trợ cấp khai thác) phụ thuộc vào số lượng người khai thác đang hoạt động khác [106, 172] và phí giao dịch. oracle được cộng đồng đóng góp như SchellingCoin [68] là một ví dụ khác: không gian hành động là tập hợp các báo cáo có thể có mà oracle có thể gửi, trong khi khoản thanh toán là phần thưởng được chỉ định bởi cơ chế oracle, ví dụ: khoản thanh toán có thể phụ thuộc vào về mức độ gần gũi giữa báo cáo của oracle với giá trị trung bình của các báo cáo khác [26, 68, 119, 185]. Trò chơi chuỗi khối mang lại cơ hội chín muồi cho các cuộc tấn công thông đồng và hối lộ; thực sự, smart contracts thậm chí có thể tạo điều kiện thuận lợi cho các cuộc tấn công như vậy [96, 165]. Có lẽ được biết đến nhiều nhất cuộc tấn công hối lộ vào oracle được cộng đồng sử dụng là cuộc tấn công p-plus-epsilon [67]. Cuộc tấn công này phát sinh trong bối cảnh cơ chế giống như SchellingCoin trong đó người chơi gửi báo cáo có giá trị boolean (nghĩa là sai hoặc đúng) và được thưởng p nếu họ đồng ý với sự đệ trình của đa số. Trong cuộc tấn công p-plus-epsilon, kẻ tấn công hứa hẹn một cách đáng tin cậy: ví dụ: trả tiền cho người dùng $p + ϵ để bỏ phiếu sai khi và chỉ khi ý kiến đa số là đúng. Kết quả là một trạng thái cân bằng, trong đó tất cả người chơi được khuyến khích báo cáo sai bất kể người chơi khác làm gì; do đó, kẻ hối lộ có thể xúi giục các nút thông qua việc hối lộ đã hứa để báo cáo sai sự thật mà không thực sự trả tiền hối lộ (!). Tuy nhiên, việc khám phá các chiến lược hối lộ khác trong bối cảnh oracle—và đặc biệt là oracle không sử dụng nguồn lực từ cộng đồng—đã bị giới hạn ở đối thủ khá yếu các mô hình. Ví dụ, trong bối cảnh PoW, các nhà nghiên cứu đã nghiên cứu các yếu tố phụ thuộc vào kết quả hối lộ, tức là hối lộ chỉ được trả nếu thông điệp mục tiêu được kiểm duyệt thành công và không xuất hiện trong một khối, bất kể hành động của từng người khai thác [96, 165]. Trong trường hợp Tuy nhiên, trong số oracle, ngoài cuộc tấn công p-plus-epsilon, chúng tôi chỉ biết về công việc trong một mô hình hối lộ có giới hạn nghiêm ngặt, trong đó người đưa hối lộ gửi hối lộ với điều kiện hành động của từng người chơi chứ không phải kết quả đạt được. Ở đây chúng tôi phác thảo các thiết kế của cơ chế khơi gợi thông tin vẫn mang tính khuyến khích tương thích ngay cả trong một mô hình đối nghịch mạnh, như được mô tả trong tiểu mục tiếp theo. 9,3 Giả định mô hình hóa Trong tiểu mục này, chúng tôi giải thích cách chúng tôi mô hình hóa hành vi và khả năng của người chơi trong hệ thống của chúng tôi, cụ thể là các nút oracle cấp một, các nút ở cấp hai (xác định) lớp và đối thủ.9.3.1 Mô hình khuyến khích cấp một: Tác nhân hợp lý Nhiều hệ thống blockchain dựa vào tính bảo mật dựa trên giả định về một số thông tin trung thực các nút tham gia. Các nút được xác định là trung thực nếu chúng tuân theo giao thức ngay cả khi khi việc làm đó không mang lại lợi ích tài chính cho họ. Hệ thống Bằng chứng công việc thường yêu cầu phần lớn quyền lực hash phải trung thực, hệ thống Bằng chứng cổ phần thường yêu cầu 2/3 tổng số cổ phần tham gia phải trung thực và thậm chí cả các hệ thống lớp 2 như Trọng tài [141] yêu cầu ít nhất một người tham gia trung thực. Khi lập mô hình cho cơ chế staking, chúng tôi đưa ra giả định yếu hơn nhiều. (Trở thành các giả định rõ ràng, yếu hơn có nghĩa là các thuộc tính bảo mật mạnh hơn và do đó được ưu tiên hơn.) Chúng tôi cho rằng đối thủ đã làm hỏng, tức là các quyền kiểm soát, một số (thiểu số) một phần của nút oracle cấp một. Chúng tôi lập mô hình các nút còn lại không phải là tác nhân trung thực, mà là tối đa hóa tiện ích kỳ vọng hợp lý. Các nút này hoạt động hoàn toàn theo các khuyến khích tài chính mang tính tư lợi, lựa chọn các hành động mang lại hiệu quả tài chính dự kiến. đạt được. Ví dụ: nếu một nút được đưa hối lộ lớn hơn phần thưởng thu được từ hành vi trung thực thì sẽ nhận hối lộ. Lưu ý về các nút đối nghịch: Theo mô hình tin cậy phổ biến cho hệ thống phi tập trung, chúng tôi giả định rằng tất cả các nút đều hợp lý, tức là tìm cách tối đa hóa doanh thu ròng, thay vì bị kiểm soát bởi một đối thủ độc hại. Tuy nhiên, những tuyên bố của chúng tôi— tác động đặc biệt là siêu tuyến tính hoặc bậc hai staking—giữ được cung cấp tiệm cận rằng tập hợp các nút bị kiểm soát đối nghịch tối đa là (1/2 −c)n, đối với một số giá trị dương hằng số c. 9.3.2 Mô hình xét xử cấp hai: Tính đúng đắn dựa trên giả định Hãy nhớ rằng một tính năng quan trọng của cơ chế staking của chúng tôi giúp đạt được bảo mật chống lại các nút hợp lý là hệ thống cấp hai của nó. Trong cơ chế staking được đề xuất của chúng tôi, bất kỳ oracle nào cũng có thể đưa ra cảnh báo cho biết rằng nó tin rằng đầu ra của cơ chế này là không chính xác. Một cảnh báo mang lại độ tin cậy cao hệ thống cấp hai kích hoạt và báo cáo kết quả chính xác. Vì vậy, một mô hình chính yêu cầu đối với cách tiếp cận của chúng tôi là sự đánh giá chính xác, tức là báo cáo chính xác của hệ thống bậc hai. Mô hình staking của chúng tôi giả định hệ thống cấp hai hoạt động như một nguồn sự thật không thể bị hỏng, có độ tin cậy tối đa. Một hệ thống như vậy có thể sẽ tốn kém và chậm, và do đó không phù hợp để sử dụng cho trường hợp điển hình. Tuy nhiên, trong trường hợp cân bằng, tức là khi hệ thống cấp một hoạt động chính xác thì hệ thống cấp hai sẽ không được gọi. Thay vào đó, sự tồn tại của nó giúp tăng cường tính bảo mật của toàn bộ hệ thống oracle bằng cách cung cấp một backstop có độ đảm bảo cao. Việc sử dụng lớp xét xử có độ tin cậy cao, chi phí cao tương tự như quy trình kháng cáo trung tâm của hầu hết các hệ thống tư pháp. Nó cũng đã phổ biến trong thiết kế của oracle hệ thống, ví dụ: [119, 185]. Chúng tôi thảo luận ngắn gọn các cách tiếp cận để hiện thực hóa cấp độ thứ hai trong cơ chế của chúng tôi ở Mục 9.4.3.Giao thức staking của chúng tôi sử dụng phán đoán chính xác giả định của hệ thống cấp hai như một mối đe dọa đáng tin cậy để buộc các nút oracle báo cáo chính xác. giao thức tịch thu một phần hoặc toàn bộ cổ phần của các nút oracle tạo báo cáo được xác định bởi hệ thống cấp hai là không chính xác. Do đó, các nút của Oracle bị ngăn chặn hoạt động sai bởi hình phạt tài chính phát sinh. Cách tiếp cận này có tính chất tương tự như cách được sử dụng trong lạc quan rollups, ví dụ: [141, 10]. 9.3.3 Mô hình đối nghịch Cơ chế staking của chúng tôi được thiết kế để thu thập thông tin trung thực đồng thời đạt được sự bảo mật trước một nhóm đối thủ được xác định rõ ràng và rộng rãi. Nó cải thiện các tác phẩm trước đó, hoặc bỏ qua mô hình đối thủ rõ ràng hoặc tập trung vào các phân nhóm đối thủ hẹp, ví dụ: đối thủ p-plus-epsilon đã thảo luận ở trên. Mục tiêu của chúng tôi là thiết kế staking cơ chế bảo mật đã được chứng minh chính thức chống lại đầy đủ các đối thủ có khả năng phải gặp trong thực tế. Chúng ta mô hình đối thủ của mình là có ngân sách cố định (có thể tham số hóa), ký hiệu là $B. Kẻ thù có thể liên lạc riêng lẻ và bí mật với mỗi oracle trong mạng và có thể bí mật đưa ra bất kỳ cá nhân nào oracle khoản hối lộ được đảm bảo phụ thuộc vào các kết quả có thể quan sát được một cách công khai của cơ chế. Kết quả xác định hối lộ có thể bao gồm, ví dụ: giá trị được báo cáo bởi oracle, bất kỳ tin nhắn công khai nào được gửi bởi bất kỳ oracle nào tới cơ chế (ví dụ: cảnh báo), các giá trị được báo cáo bởi người khác oracles và giá trị đầu ra theo cơ chế. Không có cơ chế nào có thể bảo mật trước kẻ tấn công với khả năng không giới hạn. Do đó, chúng tôi coi một số hành vi là không thực tế hoặc nằm ngoài phạm vi. Chúng tôi cho rằng kẻ tấn công của chúng tôi không thể phá vỡ các nguyên tắc mã hóa tiêu chuẩn và, như đã lưu ý ở trên, có một điểm cố định (nếu có khả năng lớn) ngân sách $B. Chúng tôi còn giả định thêm rằng đối thủ không kiểm soát liên lạc trong mạng oracle, cụ thể là nó không thể trì hoãn đáng kể lưu lượng giữa các nút cấp một và/hoặc cấp hai. (Việc đối phương có thể quan sát được hoạt động giao tiếp như vậy hay không còn tùy thuộc vào cơ chế cụ thể, như chúng tôi giải thích bên dưới.) Tuy nhiên, một cách không chính thức, như đã lưu ý ở trên, chúng tôi cho rằng đối thủ có thể: (1) Tham nhũng một phần của oracle nút ((1/2 −c)-phân số cho một số hằng số c), tức là kiểm soát hoàn toàn họ, và (2) Đưa hối lộ cho bất kỳ nút nào mong muốn, với khoản thanh toán được đảm bảo về các kết quả do đối thủ quy định, như được mô tả ở trên. Mặc dù chúng tôi không cung cấp một mô hình chính thức hoặc phân loại đầy đủ về đối thủ nhiều khả năng hối lộ trong báo cáo nghiên cứu chuyên sâu này, sau đây là ví dụ về các loại những kẻ hối lộ nằm trong mô hình của chúng tôi. Để đơn giản, chúng tôi giả sử rằng oracle phát ra Boolean báo cáo có giá trị đúng (w.l.o.g.) là đúng và kết quả cuối cùng được tính là tổng hợp các báo cáo này sẽ được sử dụng bởi smart contract. Của kẻ hối lộ mục đích là làm cho kết quả cuối cùng không chính xác, tức là sai. • Kẻ hối lộ vô điều kiện: Kẻ hối lộ đưa hối lộ $b cho bất kỳ oracle nào báo cáo sai. • Kẻ hối lộ xác suất: Kẻ hối lộ đưa hối lộ $b với xác suất q nào đó cho bất kỳ oracle nào báo cáo đó là sai.• Kẻ hối lộ có điều kiện đưa ra kết quả sai: Kẻ hối lộ đưa hối lộ $b cho bất kỳ oracle nào báo cáo sai với điều kiện là kết quả cuối cùng là sai. • Kẻ hối lộ không có cảnh báo: Kẻ hối lộ đưa hối lộ $b cho bất kỳ oracle nào báo cáo sai miễn là không có cảnh báo nào được đưa ra. • p-plus-epsilon Kẻ hối lộ: Kẻ hối lộ đề nghị hối lộ $b cho bất kỳ oracle nào báo cáo sai là miễn là phần lớn oracle không báo cáo sai. • Người hối lộ tiềm năng: Kẻ hối lộ đưa hối lộ trước $b cho bất kỳ oracle nào được chọn cho một vai trò ngẫu nhiên và báo cáo sai. Trong giao thức staking được đề xuất của chúng tôi, tất cả các nút hoạt động như cơ quan giám sát tiềm năng và chúng tôi có thể chỉ ra rằng sự ngẫu nhiên trong số các ưu tiên của cơ quan giám sát không có khả năng dẫn đến hối lộ. Nhiều bằng chứng công việc, proof-of-stake và các hệ thống được cấp phép dễ bị tấn công tuy nhiên, hối lộ cho thấy tầm quan trọng của việc xem xét vấn đề này trong bối cảnh đối thủ của chúng ta mô hình và đảm bảo rằng các giao thức staking của chúng tôi có khả năng phục hồi theo mô hình đó. Xem Phụ lục E để biết thêm chi tiết. 9.3.4 Bao nhiêu bảo mật kinh tế tiền điện tử là đủ? Một đối thủ hợp lý sẽ chỉ chi tiền để tấn công một hệ thống nếu nó có thể thu được lợi nhuận lớn hơn chi phí của nó. Do đó, đối với mô hình đối nghịch của chúng tôi và đề xuất staking cơ chế, $B có thể được xem như thước đo lợi nhuận tiềm năng mà đối thủ có thể có được để trích xuất từ việc dựa vào smart contract bằng cách làm hỏng mạng oracle và khiến nó để tạo ra một báo cáo hoặc tập hợp các báo cáo không chính xác. Khi quyết định xem mạng oracle cung cấp mức độ bảo mật kinh tế tiền điện tử phù hợp cho mục đích của mình, người dùng nên đánh giá mạng từ quan điểm này. Đối với những đối thủ đáng tin cậy trong bối cảnh thực tế, chúng tôi kỳ vọng rằng $B nhìn chung sẽ nhỏ hơn đáng kể so với tổng tài sản tính theo smart contracts. Trong hầu hết các trường hợp, nó Đối phương không thể chiếm được toàn bộ tài sản này. 9,4 Cơ chế đặt cược: Phác thảo Ở đây chúng tôi trình bày các ý chính và cấu trúc chung của cơ chế staking mà chúng tôi hiện đang xem xét. Để dễ trình bày, chúng tôi mô tả một cách đơn giản nhưng chậm (nhiều vòng) trong tiểu mục này. Tuy nhiên, chúng tôi lưu ý rằng kế hoạch này khá thiết thực. Với những đảm bảo kinh tế được cung cấp bởi cơ chế, tức là việc trừng phạt và khuyến khích các nút bị lỗi, nhiều người dùng có thể sẵn sàng chấp nhận báo cáo một cách lạc quan. Nói cách khác, những người dùng như vậy có thể chấp nhận báo cáo trước khi sự xét xử tiềm năng của cấp thứ hai. Người dùng không muốn chấp nhận báo cáo một cách lạc quan có thể chọn đợi cho đến khi giao thức việc thực thi chấm dứt, tức là cho đến khi xảy ra bất kỳ sự leo thang tiềm năng nào lên tầng thứ hai. Cái này, tuy nhiên, có thể làm chậm đáng kể thời gian xác nhận báo cáo. Do đó chúng tôi tóm tắtHình 15: Sơ đồ lược đồ staking có cảnh báo. Trong ví dụ này, 1⃝a đa số của các nút bị hỏng/bị mua chuộc và phát ra giá trị ˜r không chính xác, thay vì giá trị chính xác giá trị báo cáo r. Nút cơ quan giám sát 2⃝ gửi cảnh báo đến ủy ban cấp hai, 3⃝xác định và đưa ra giá trị báo cáo chính xác r, dẫn đến các nút bị hỏng mất tiền gửi của họ—mỗi $d vào nút cơ quan giám sát 4⃝. phác thảo một số tối ưu hóa mang lại kết quả nhanh hơn (một vòng) nếu nhiều hơn một chút thiết kế phức tạp trong Phần 9.5. Hãy nhớ lại rằng tầng đầu tiên trong cơ chế staking của chúng tôi bao gồm oracle cơ bản bản thân mạng. Cấu trúc chính của cơ chế của chúng tôi, như được mô tả ở trên, là trong mỗi vòng, mỗi nút có thể hoạt động như một “cơ quan giám sát” với mức độ ưu tiên nhất định và do đó nó có khả năng đưa ra cảnh báo nếu cơ chế đạt được đầu ra không chính xác ˜r, thay vì đầu ra đúng một r. Cảnh báo này gây ra độ phân giải cấp hai mà chúng tôi cho rằng đạt đến độ phân giải chính xác báo cáo. Các nút có báo cáo không chính xác sẽ bị trừng phạt, theo nghĩa là cổ phần của họ bị chém và trao cho cơ quan giám sát. Cấu trúc cơ bản này phổ biến trong các hệ thống oracle, như trong, ví dụ: [119, 185]. Sự đổi mới quan trọng trong thiết kế của chúng tôi, được đề cập ngắn gọn ở trên, là mọi nút đều được giao một mức độ ưu tiên riêng biệt trong việc sắp xếp các cơ quan giám sát tiềm năng. Tức là cơ quan giám sát được tạo cơ hội để cảnh báo theo thứ tự ưu tiên. Hãy nhớ lại rằng nếu một nút có ưu tiên cao nhất để đưa ra cảnh báo, nó sẽ nhận được khoản tiền gửi bị cắt giảm $d cho mỗi hành vi sai trái nút, với tổng số lớn hơn \(dn/2 = \)d × n/2, vì một báo cáo không chính xác ngụ ý một phần lớn các nút xấu. Do đó, đối thủ ít nhất phải trả phần thưởng này cho hối lộ một nút tùy ý. Do đó, để hối lộ phần lớn các nút, đối thủ phải trả một khoản tiền hối lộ lớn cho phần lớn các nút, cụ thể là hơn $dn2/2. Chúng tôi trình bày dưới dạng sơ đồ cách thức hoạt động của cảnh báo và cơ quan giám sát trong Hình 15.9.4.1 Chi tiết cơ chế khác Hệ thống chống hối lộ mà chúng tôi mô tả chi tiết hơn bây giờ là một bản phác thảo đơn giản về công trình hai tầng mà chúng tôi dự định xây dựng. Hầu hết trọng tâm của chúng tôi sẽ là mô tả mạng cấp một (từ đây gọi đơn giản là “mạng” nếu không phù hợp với ngữ cảnh) cùng với cơ chế khuyến khích và thủ tục chuyển lên cấp thứ hai. Hãy xem xét một mạng Chainlink bao gồm n nút oracle chịu trách nhiệm thường xuyên (ví dụ: mỗi phút một lần) báo cáo giá trị boolean (ví dụ: liệu thị trường có vốn hóa của BTC vượt quá ETH). Là một phần của cơ chế staking, các nút phải cung cấp hai khoản đặt cọc: một khoản đặt cọc $d có thể bị cắt giảm trong trường hợp không đồng ý với phần lớn và khoản đặt cọc của cơ quan giám sát $dw có thể bị cắt giảm trong trường hợp có lỗi leo thang. Chúng tôi giả định rằng các nút không thể sao chép nội dung gửi của các nút khác, ví dụ: thông qua sơ đồ tiết lộ cam kết như được thảo luận trong Phần 5.3. Trong mỗi vòng, các nút đầu tiên cam kết với báo cáo của họ và khi tất cả các nút đã cam kết (hoặc hết thời gian chờ), các nút tiết lộ báo cáo của họ. Đối với mỗi báo cáo được tạo, mọi nút cũng được cấp mức độ ưu tiên theo dõi từ 1 đến n được chọn ngẫu nhiên, trong đó 1 là mức độ ưu tiên hàng đầu. Ưu tiên này cho phép tập trung phần thưởng vào tay một cơ quan giám sát. Sau khi tất cả các báo cáo được công khai, một giai đoạn cảnh báo xảy ra sau đó. Qua một chuỗi n vòng (đồng bộ), nút có ưu tiên tôi có cơ hội cảnh báo ở vòng i. Chúng ta hãy xem xét các kết quả có thể xảy ra đối với cơ chế sau khi các nút được tiết lộ báo cáo của họ. Một lần nữa giả sử một báo cáo nhị phân, giả sử giá trị đúng là đúng và cái sai là sai. Cũng giả sử rằng cơ chế bậc một tạo ra đầu ra giá trị đa số theo các nút làm báo cáo cuối cùng r. Có ba kết quả có thể xảy ra trong cơ chế này: • Thỏa thuận hoàn chỉnh: Trong trường hợp tốt nhất, các nút đều hoàn toàn đồng ý: tất cả các nút có sẵn và đã cung cấp báo cáo kịp thời có cùng giá trị r (hoặc đúng hoặc sai). Trong trường hợp này, mạng chỉ cần chuyển tiếp r tới các hợp đồng dựa trên và thưởng cho mỗi nút một khoản thanh toán cố định cho mỗi vòng $p, số tiền này nhỏ hơn nhiều hơn $d. • Thỏa thuận một phần: Có thể một số nút đang ngoại tuyến hoặc có sự bất đồng về giá trị nào là đúng, nhưng hầu hết các nút đều báo cáo là đúng và chỉ có một báo cáo thiểu số sai. Trường hợp này cũng đơn giản thôi. Giá trị đa số (đúng) được tính toán, dẫn đến báo cáo đúng r. Tất cả các nút báo cáo r đều được thưởng $p trong khi oracle được báo cáo không chính xác có tiền gửi của họ giảm một cách khiêm tốn, ví dụ: 10 xu. • Cảnh báo: Trong trường hợp cơ quan giám sát tin rằng đầu ra của mạng không chính xác, nó công khai kích hoạt cảnh báo, chuyển cơ chế này sang mạng cấp hai. Khi đó có hai kết quả có thể xảy ra: – Cảnh báo đúng: Nếu mạng cấp hai xác nhận rằng đầu ra củaHình 16: Tăng chi phí của kẻ hối lộ thông qua các phần thưởng cảnh báo tập trung. Một sự hối lộ đối thủ phải hối lộ mỗi nút nhiều hơn phần thưởng mà nó có thể nhận được bằng cách cảnh báo (hiển thị dưới dạng thanh màu đỏ). Nếu phần thưởng cảnh báo được chia sẻ thì phần thưởng này có thể tương đối nhỏ. Phần thưởng cảnh báo tập trung làm tăng phần thưởng mà bất kỳ nút đơn lẻ nào cũng có thể có được (thanh cao màu đỏ). Do đó, tổng số tiền mà đối phương phải trả cho một khoản hối lộ khả thi (vùng màu xám) lớn hơn nhiều với phần thưởng cảnh báo tập trung hơn so với phần thưởng cảnh báo được chia sẻ. mạng cấp một không chính xác, nút cơ quan giám sát cảnh báo sẽ nhận được phần thưởng bao gồm tất cả các khoản tiền gửi bị cắt giảm, và do đó nhiều hơn $dn/2. – Cảnh báo lỗi: Nếu oracle cấp hai và cấp một đồng ý, thì mức tăng sẽ là được coi là bị lỗi và nút cảnh báo sẽ mất khoản tiền gửi $dw. Trong trường hợp chấp nhận báo cáo một cách lạc quan, cảnh báo của cơ quan giám sát không gây ra bất kỳ sự thay đổi nào trong việc thực hiện các hợp đồng căn cứ. Đối với các hợp đồng được thiết kế để chờ đợi khả năng được phân xử bởi ủy ban cấp hai, cơ quan giám sát sẽ trì hoãn cảnh báo nhưng không đình chỉ việc thực hiện hợp đồng. Hợp đồng cũng có thể chỉ định một chuyển đổi dự phòng DON trong thời gian xem xét. 9.4.2 Tác động đặt cược bậc hai Khả năng cho mọi nút hoạt động như một cơ quan giám sát, kết hợp với mức độ ưu tiên nghiêm ngặt của nút đảm bảo phần thưởng tập trung, cho phép cơ chế đạt được bậc hai staking tác động đối với từng loại kẻ tấn công hối lộ được mô tả trong Phần 9.3.3. Hãy nhớ lại rằng điều này có nghĩa cụ thể trong cài đặt của chúng tôi là, đối với một mạng có n nút, mỗi nút có tiền gửi $d, kẻ hối lộ thành công (thuộc bất kỳ loại nào ở trên) phải có ngân sách lớn hơn $dn2/2. Nói chính xác, kẻ hối lộ phải làm hỏng ít nhất (n+1)/2 nút, vì kẻ hối lộ phải làm hỏng phần lớn n nút (đối với n lẻ, theo giả định). Vì vậy, một cơ quan giám sát đứng ra kiếm được phần thưởng $d(n + 1)/2. Do đó, người hối lộ phải trả số tiền này cho mọi người.nút để đảm bảo rằng không có nút nào hoạt động như cơ quan giám sát. Chúng tôi đang làm việc để chứng tỏ một cách chính thức rằng nếu người hối lộ có ngân sách tối đa là $d(n2 + n)/2, khi đó trò chơi con sẽ có trạng thái cân bằng hoàn hảo của trò chơi giữa những kẻ hối lộ và oracle—nói cách khác, điểm cân bằng tại bất kỳ thời điểm nào trong quá trình chơi trò chơi—là người đưa hối lộ không được đưa hối lộ và mỗi oracle báo cáo giá trị thực của nó một cách trung thực. Ở trên chúng tôi đã giải thích tại sao một kẻ hối lộ thành công có thể yêu cầu một ngân sách lớn hơn đáng kể so với tổng số tiền gửi của nút. Để minh họa điều này kết quả trực quan, Hình 16 cho thấy tác động của phần thưởng cảnh báo tập trung bằng đồ họa. Như chúng ta thấy ở đó, nếu phần thưởng cho việc cảnh báo cơ quan giám sát—cụ thể là tiền gửi hối lộ các nút báo cáo sai)—được chia cho tất cả các cảnh báo tiềm năng, tổng số tiền bất kỳ nút cảnh báo riêng lẻ nào có thể mong đợi sẽ tương đối nhỏ, theo thứ tự $d. Một kẻ hối lộ biết rằng khoản tiền lớn hơn $d là không thể xảy ra nên có thể sử dụng một khoản hối lộ có điều kiện có kết quả sai để hối lộ từng nút trong số n nút nhiều hơn một chút $d + ϵ. Ngược lại, Hình 16 cho thấy rằng một hệ thống phân phối phần thưởng một cách rộng rãi giữa các nút báo hiệu cảnh báo yếu hơn nhiều so với nút tập trung phần thưởng vào bàn tay của một cơ quan giám sát duy nhất. Các tham số ví dụ: Hãy xem xét một mạng (cấp đầu tiên) có n = 100 nút, mỗi nút gửi tiền \(d = \)20K. Mạng này sẽ có tổng số tiền gửi là 2 triệu USD nhưng sẽ được bảo vệ khỏi kẻ hối lộ với ngân sách \(100M = \)dn2/2. Tăng số lượng Tất nhiên, oracles sẽ hiệu quả hơn việc tăng $d và có thể có tác động mạnh mẽ: một mạng có n = 300 nút và tiền gửi \(d = \)20K sẽ được bảo vệ chống lại một kẻ hối lộ với ngân sách lên tới 900 triệu USD. Lưu ý rằng trong nhiều trường hợp, hệ thống staking có thể bảo vệ smart contract đại diện có giá trị cao hơn mức độ bảo vệ chống hối lộ được đưa ra. Điều này là do đối thủ tấn công các hợp đồng này không thể trích xuất toàn bộ giá trị trong nhiều trường hợp. Ví dụ, một Hợp đồng do Chainlink cung cấp đảm bảo giá trị 1 tỷ USD chỉ có thể yêu cầu bảo đảm chống lại một kẻ hối lộ với nguồn lực 100 triệu đô la vì kẻ thù như vậy có thể kiếm được lợi nhuận chỉ 10% giá trị hợp đồng. Lưu ý: Ý tưởng rằng giá trị của một mạng có thể tăng theo phương pháp bậc hai được thể hiện trong Định luật Metcalfe nổi tiếng [167, 235], trong đó nêu rõ rằng giá trị của một mạng tăng bậc hai về số lượng thực thể được kết nối. Tuy nhiên, định luật Metcalfe phát sinh từ sự tăng trưởng về số lượng kết nối mạng theo cặp tiềm năng, một hiện tượng khác với tác động bậc hai cơ bản staking trong khuyến khích của chúng tôi cơ chế. 9.4.3 Hiện thực hóa tầng thứ hai Hai tính năng vận hành tạo điều kiện thuận lợi cho việc hiện thực hóa tầng thứ hai có độ tin cậy cao: (1) Việc phân xử cấp hai phải là một sự kiện hiếm gặp trong các mạng oracle và do đó có thể tốn kém hơn đáng kể so với hoạt động bình thường của cấp một và (2) Giả sửnhững báo cáo được chấp nhận một cách lạc quan—hoặc những hợp đồng mà việc thực hiện có thể chờ phân xử— tầng thứ hai không cần thực thi trong thời gian thực. Những đặc điểm này dẫn đến một loạt các các tùy chọn cấu hình cho tầng thứ hai để đáp ứng các yêu cầu của DON cụ thể. Theo cách tiếp cận ví dụ, một ủy ban cấp hai có thể bao gồm các nút được chọn bởi một DON (tức là cấp đầu tiên) từ các nút hoạt động lâu nhất và đáng tin cậy nhất trong Chainlink mạng. Ngoài kinh nghiệm hoạt động có liên quan đáng kể, các nhà khai thác trong số các nút như vậy có động cơ ngầm đáng kể trong FFO thúc đẩy mong muốn để đảm bảo rằng mạng Chainlink vẫn có độ tin cậy cao. Họ cũng đã công khai lịch sử hiệu suất có sẵn cung cấp sự minh bạch về độ tin cậy của chúng. Điều đáng chú ý là các nút cấp hai không cần phải là người tham gia vào mạng cấp một và có thể phân xử các lỗi trên nhiều mạng cấp một. Các nút trong DON nhất định có thể chỉ định trước và cam kết công khai với một tập hợp n′ như vậy các nút cấu thành ủy ban cấp hai cho DON đó. Ngoài ra, DON các nút xuất bản tham số k′ ≤n′ xác định số phiếu bầu cấp hai cần thiết để trừng phạt nút cấp một. Khi cảnh báo được tạo cho một báo cáo nhất định, các thành viên của cấp thứ hai bỏ phiếu về tính chính xác của các giá trị do mỗi người cung cấp của các nút lớp đầu tiên. Bất kỳ nút cấp 1 nào nhận được k′ phiếu bầu tiêu cực sẽ bị mất quyền tiền gửi đến nút cơ quan giám sát. Bởi vì hiếm có cơ hội xét xử và cơ hội thi hành án kéo dài đã lưu ý ở trên, trái ngược với tầng thứ nhất, các nút ở tầng thứ hai có thể: 1. Được trả thù lao cao khi tiến hành xét xử. 2. Sử dụng các nguồn dữ liệu bổ sung, thậm chí vượt ra ngoài tập hợp đa dạng được sử dụng đầu tiên. 3. Dựa vào sự kiểm tra và can thiệp thủ công và/hoặc chuyên gia, ví dụ: để xác định và điều chỉnh các lỗi trong dữ liệu nguồn và phân biệt giữa một nút chuyển tiếp trung thực dữ liệu bị lỗi và một nút hoạt động sai. Chúng tôi nhấn mạnh rằng cách tiếp cận mà chúng tôi vừa mô tả để lựa chọn các nút cấp hai và việc xét xử quản lý chính sách chỉ đại diện cho một điểm trong một phạm vi rộng lớn. không gian thiết kế của các khả năng thực hiện của tầng thứ hai. Cơ chế khuyến khích của chúng tôi cung cấp hoàn toàn linh hoạt về cách thực hiện tầng thứ hai. Do đó, DON cá nhân có thể cấu thành và đặt ra các quy tắc cho cấp thứ hai đáp ứng các yêu cầu cụ thể và kỳ vọng của các nút tham gia và người dùng. DECO và Town Crier làm công cụ xét xử: Nó rất cần thiết cho tầng thứ hai trong cơ chế của chúng tôi để có thể phân biệt giữa các nút cấp một đối thủ cố ý tạo ra các báo cáo không chính xác và các nút cấp một trung thực vô tình chuyển tiếp dữ liệu không chính xác tại nguồn. Chỉ khi đó tầng thứ hai mới có thể thực hiện chém để ngăn chặn gian lận, mục tiêu của cơ chế của chúng tôi. DECO và Town Crier là những công cụ mạnh mẽ có thể cho phép các nút cấp hai tạo ra sự khác biệt quan trọng này đáng tin cậy.Trong một số trường hợp, các nút cấp hai có thể truy vấn trực tiếp nguồn dữ liệu được sử dụng bởi nút cấp một hoặc sử dụng ADO Mục 7.1 để kiểm tra xem báo cáo không chính xác có do nguồn dữ liệu bị lỗi. Tuy nhiên, trong các trường hợp khác, các nút cấp hai có thể thiếu truy cập trực tiếp vào nguồn dữ liệu của nút cấp một. Trong những trường hợp như vậy, việc xét xử đúng sẽ dường như không khả thi hoặc đòi hỏi phải dựa vào đánh giá chủ quan. Trước oracle các hệ thống tranh chấp đã dựa vào các vòng bỏ phiếu leo thang, không hiệu quả để giải quyết các vấn đề đó những thách thức. Tuy nhiên, bằng cách sử dụng DECO hoặc Town Crier, nút cấp một có thể chứng minh hành vi đúng tới các nút lớp thứ hai. (Xem Phần 3.6.2 để biết chi tiết về hai hệ thống.) Cụ thể, nếu nút cấp thứ hai xác định nút cấp một có giá trị báo cáo bị lỗi ˜r, nút cấp một có thể sử dụng DECO hoặc Town Crier để tạo ra bằng chứng chống giả mạo cho các nút cấp hai đang chuyển tiếp chính xác từ nguồn (kích hoạt TLS) được công nhận là có thẩm quyền bởi DON. Điều quan trọng là nút cấp một có thể thực hiện việc này không có các nút cấp hai yêu cầu quyền truy cập trực tiếp vào nguồn dữ liệu.17 Do đó, việc đánh giá chính xác là khả thi ở Chainlink đối với bất kỳ nguồn dữ liệu mong muốn nào. 9.4.4 Báo cáo sai bảo hiểm Khả năng chống hối lộ mạnh mẽ mà cơ chế staking của chúng tôi đạt được về cơ bản phụ thuộc vào về số tiền bị cắt giảm được trao cho người cảnh báo. Nếu không có phần thưởng bằng tiền, người cảnh báo sẽ không có động cơ trực tiếp để từ chối hối lộ. Tuy nhiên, kết quả là số tiền bị cắt giảm không phải là có sẵn để bồi thường cho người dùng bị tổn hại do báo cáo không chính xác, ví dụ: người dùng bị mất tiền khi dữ liệu giá không chính xác được chuyển tiếp tới smart contract. Theo giả định, các báo cáo không chính xác sẽ không gây ra vấn đề gì nếu báo cáo được một cơ quan chấp nhận. chỉ ký hợp đồng sau khi có sự phân xử tiềm năng, tức là hành động của cấp thứ hai. Như đã giải thích Tuy nhiên, ở trên, để đạt được hiệu suất tốt nhất có thể, thay vào đó, hợp đồng có thể dựa vào lạc quan về cơ chế thực thi việc báo cáo đúng, nghĩa là họ chấp nhận báo cáo trước khi xét xử cấp hai tiềm năng. Quả thực, hành vi lạc quan như vậy là an toàn trong mô hình của chúng tôi giả sử các đối thủ hợp lý có ngân sách không vượt quá staking tác động của cơ chế. Người dùng lo ngại về khả năng xảy ra lỗi cơ chế do, ví dụ: đối thủ có nguồn tài chính dồi dào, có thể muốn sử dụng một lớp bảo đảm kinh tế bổ sung dưới hình thức bảo hiểm báo cáo sai. Chúng tôi biết về nhiều công ty bảo hiểm đã có ý định cung cấp các chính sách hỗ trợ hợp đồng thông minh thuộc loại này cho các giao thức được bảo mật Chainlink trong tương lai gần, bao gồm thông qua các cơ chế cải tiến như DAOs, ví dụ: [7]. Sự tồn tại của lịch sử hiệu suất cho Chainlink các nút và dữ liệu khác về các nút, chẳng hạn như số tiền đặt cọc của chúng, cung cấp cơ sở đặc biệt mạnh mẽ để đánh giá rủi ro theo mô hình thống kê, giúp cho việc định giá chính sách có thể thực hiện được. theo những cách không tốn kém cho người mua bảo hiểm nhưng vẫn bền vững cho các công ty bảo hiểm. 17Với Town Crier, các nút cấp một cũng có thể tạo chứng thực cục bộ về tính chính xác của các báo cáo mà họ xuất ra và cung cấp những chứng thực này cho các nút cấp hai trên một cơ sở theo nhu cầu.Các hình thức báo cáo sai cơ bản về bảo hiểm có thể được thực hiện một cách đáng tin cậy và cách hiệu quả bằng cách sử dụng smart contracts. Một ví dụ đơn giản, một bảo hiểm tham số SCins hợp đồng có thể tự động bồi thường cho các chủ hợp đồng nếu cơ chế khuyến khích của chúng tôi cấp thứ hai xác định lỗi trong báo cáo được tạo ở cấp đầu tiên. Người dùng U mong muốn mua hợp đồng bảo hiểm, ví dụ: người tạo mục tiêu hợp đồng SC, có thể gửi yêu cầu tới một công ty bảo hiểm phi tập trung về số tiền hợp đồng $M trên hợp đồng. Khi phê duyệt U, công ty bảo hiểm có thể đặt ra thời hạn liên tục (ví dụ: hàng tháng) phí bảo hiểm $P trong SCins. Trong khi U trả phí bảo hiểm, hợp đồng của cô ấy vẫn có hiệu lực. Nếu xảy ra lỗi báo cáo trong SC thì kết quả sẽ là phát ra một cặp (r1, r2) về các báo cáo xung đột cho SC, trong đó r1 được ký bởi cấp đầu tiên trong cơ chế của chúng tôi và r2, báo cáo đã sửa tương ứng, được cấp thứ hai ký. Nếu U cung cấp một cặp hợp lệ (r1, r2) cho SCins, hợp đồng sẽ tự động trả cho cô ấy M $, với điều kiện là các khoản thanh toán phí bảo hiểm của cô ấy được cập nhật. 9,5 Biến thể một vòng Giao thức được mô tả trong tiểu mục trước yêu cầu ủy ban cấp hai đợi n vòng để xác định xem cơ quan giám sát có đưa ra cảnh báo hay không. Cái này yêu cầu vẫn đúng ngay cả trong trường hợp lạc quan, tức là khi tầng đầu tiên hoạt động một cách chính xác. Đối với người dùng không muốn chấp nhận các báo cáo một cách lạc quan, tức là trước khi có khả năng xảy ra xét xử, sự chậm trễ liên quan đến cách tiếp cận đó sẽ không thể thực hiện được. Vì lý do này, chúng tôi cũng đang khám phá các giao thức thay thế chỉ yêu cầu một tròn. Theo cách tiếp cận này, tất cả các nút oracle gửi các bit bí mật cho biết có hay không họ muốn đưa ra một cảnh báo. Ủy ban cấp hai sau đó sẽ kiểm tra các giá trị này trong thứ tự ưu tiên. Để cung cấp một bản phác thảo thô, sơ đồ như vậy có thể bao gồm những điều sau đây: các bước: 1. Gửi bit cơ quan giám sát: Mỗi nút Oi chia sẻ bí mật một giá trị cơ quan giám sát một bit wi ∈{không có cảnh báo, cảnh báo} giữa các nút ở cấp thứ hai cho mỗi báo cáo mà nó tạo ra. 2. Mẹo ẩn danh: Bất kỳ nút oracle nào cũng có thể gửi mẹo ẩn danh α tới ủy ban cấp hai trong cùng vòng mà các bit cơ quan giám sát được gửi. Mẹo này à là thông báo cho biết cảnh báo đã được đưa ra cho báo cáo hiện tại. 3. Kiểm tra bit cơ quan giám sát: Ủy ban cấp hai tiết lộ cơ quan giám sát của nút oracle các bit theo thứ tự ưu tiên. Lưu ý rằng các nút không được gửi các bit cơ quan giám sát cảnh báo khi chúng không cảnh báo: nếu không, phân tích lưu lượng sẽ tiết lộ tất cả các bit của nút. Giao thức không tiết lộ cảnh báo không các bit cơ quan giám sát của các nút có mức độ ưu tiên cao hơn cơ quan giám sát cảnh báo có mức ưu tiên cao nhất. Quan sát rằng những gì được tiết lộ giống hệt với giao thức vòng n của chúng tôi. Phần thưởng cũng được phân phối giống hệt với chương trình đó, tức là cơ quan giám sát được xác định đầu tiên nhận được khoản tiền gửi bị cắt giảm của các nút đã gửi báo cáo không chính xác.Việc sử dụng các mẹo ẩn danh cho phép ủy ban cấp hai duy trì trạng thái không tương tác trong trường hợp không có cảnh báo nào được đưa ra, giảm độ phức tạp trong giao tiếp trong trường hợp thông thường. Lưu ý rằng bất kỳ cơ quan giám sát nào đưa ra cảnh báo đều có động cơ kinh tế để gửi mẹo ẩn danh: Nếu không gửi mẹo nào, sẽ không có phần thưởng nào được trả cho bất kỳ ai. nút. Để đảm bảo rằng người gửi Oi của một mẹo ẩn danh α không thể được xác định bởi đối thủ dựa trên dữ liệu mạng, mẹo ẩn danh có thể được gửi qua địa chỉ ẩn danh kênh, ví dụ: thông qua Tor hoặc thực tế hơn là được ủy quyền thông qua nhà cung cấp dịch vụ đám mây. Đến xác thực mẹo có nguồn gốc từ O, Oi có thể ký α bằng chữ ký vòng [39, 192]. Ngoài ra, để ngăn chặn các cuộc tấn công từ chối dịch vụ không thể phân bổ nhằm vào ủy ban cấp hai bằng nút oracle độc hại, α có thể là thông tin xác thực ẩn danh với ẩn danh có thể hủy bỏ [73]. Giao thức này, mặc dù có thể đạt được trên thực tế, nhưng có kỹ thuật hơi nặng nề yêu cầu (mà chúng tôi đang tìm cách giảm bớt). Ví dụ, các nút cấp một, phải giao tiếp trực tiếp với các nút cấp hai, yêu cầu duy trì một thư mục. Nhu cầu về các kênh ẩn danh và chữ ký vòng làm tăng thêm kỹ thuật sự phức tạp của sơ đồ. Cuối cùng, có một yêu cầu tin cậy đặc biệt được thảo luận ngắn gọn trong ghi chú dưới đây. Do đó, chúng tôi cũng đang khám phá các kế hoạch đơn giản hơn mà vẫn đạt được tác động siêu tuyến tính staking, nhưng có lẽ ít hơn bậc hai, chẳng hạn, trong đó kẻ hối lộ tiệm cận cần tài nguyên ít nhất $n log n. Một số phương án theo việc xem xét liên quan đến việc lựa chọn ngẫu nhiên một tập hợp con nghiêm ngặt các nút để hoạt động như cơ quan giám sát, trong trường hợp đó việc hối lộ tiềm năng sẽ trở thành một cuộc tấn công đặc biệt mạnh mẽ. Nhận xét: Tính bảo mật của cơ chế staking một vòng này yêu cầu không thể truy cập được các kênh giữa oracle và các nút cấp hai—một yêu cầu tiêu chuẩn trong các hệ thống chống cưỡng chế, ví dụ: biểu quyết [82, 138] và một yêu cầu hợp lý trong thực tế. Tuy nhiên, ngoài ra, nút Oi tìm cách hợp tác với kẻ hối lộ có thể xây dựng các chia sẻ bí mật của nó theo cách để cho kẻ hối lộ thấy rằng nó đã mã hóa một thông tin cụ thể giá trị. Ví dụ: nếu Oi không biết kẻ hối lộ kiểm soát nút nào thì Oi có thể gửi cổ phiếu có giá trị 0 cho tất cả các thành viên ủy ban. Sau đó, kẻ hối lộ có thể xác minh Oi tuân thủ theo xác suất. Để tránh vấn đề này trong bất kỳ giao thức một vòng nào, chúng tôi yêu cầu Oi biết danh tính của ít nhất một nút cấp hai trung thực. Với giao thức tương tác trong đó mỗi nút cấp hai thêm một sự ngẫu nhiên yếu tố chia sẻ, điều tốt nhất mà kẻ hối lộ có thể làm là ép buộc Oi lựa chọn ngẫu nhiên chút canh gác. 9,6 Khung khuyến khích tiềm ẩn (IIF) FFO là một hình thức khuyến khích ngầm cho hành vi đúng trong mạng Chainlink. Nó các chức năng như cổ phần rõ ràng, tức là tiền gửi, trong đó nó giúp thực thi an ninh kinh tế cho mạng lưới. Nói cách khác, FFO nên được đưa vào như một phần của khoản tiền gửi (có hiệu lực) $d của một nút trong mạng.Câu hỏi đặt ra là: Làm cách nào để đo lường FFO và các hình thức khuyến khích tiềm ẩn khác? trong mạng Chainlink? Khung khuyến khích tiềm ẩn (IIF) là một tập hợp các nguyên tắc và kỹ thuật mà chúng tôi dự định phát triển cho mục đích này. Hệ thống chuỗi khối cung cấp nhiều hình thức minh bạch chưa từng có và các bản ghi có độ tin cậy cao của nút hiệu suất mà họ tạo ra là bàn đạp cho tầm nhìn của chúng tôi về cách thức hoạt động của IIF. Ở đây chúng tôi phác thảo rất ngắn gọn các ý tưởng về các yếu tố chính của IIF. Bản thân IIF sẽ bao gồm một tập hợp các yếu tố mà chúng tôi xác định là quan trọng trong việc đánh giá các biện pháp khuyến khích tiềm ẩn, cùng với các cơ chế xuất bản dữ liệu liên quan ở dạng có độ bảo đảm cao để các thuật toán phân tích sử dụng. Những người dùng Chainlink khác nhau có thể muốn sử dụng IIF theo nhiều cách khác nhau, ví dụ: đưa ra trọng số khác nhau cho các yếu tố khác nhau. Chúng tôi hy vọng các dịch vụ phân tích sẽ xuất hiện trong cộng đồng giúp người dùng áp dụng IIF theo sở thích đánh giá rủi ro cá nhân của họ và mục tiêu của chúng tôi là tạo điều kiện thuận lợi các dịch vụ đó bằng cách đảm bảo quyền truy cập của họ vào dữ liệu hỗ trợ kịp thời và có độ bảo đảm cao, như chúng ta thảo luận dưới đây (Phần 9.6.4). 9.6.1 Cơ hội phí trong tương lai Các nút tham gia vào hệ sinh thái Chainlink để kiếm được một phần phí mà mạng chi trả cho bất kỳ dịch vụ nào trong số các dịch vụ khác nhau mà chúng tôi đã mô tả trong bài viết này, từ nguồn cấp dữ liệu thông thường đến các dịch vụ nâng cao như nhận dạng phi tập trung, sắp xếp công bằng, và bảo mật DeFi. Các khoản phí trong mạng Chainlink hỗ trợ chi phí của người vận hành nút, ví dụ: chạy máy chủ, lấy giấy phép dữ liệu cần thiết và duy trì một đội ngũ nhân viên toàn cầu để đảm bảo thời gian hoạt động cao. FFO biểu thị phí dịch vụ, chi phí ròng, rằng một nút sẽ được lợi trong tương lai—hoặc bị mất nếu nó thể hiện hành vi bị lỗi. FFO là một hình thức stake giúp bảo mật mạng. Một tính năng hữu ích của FFO là dữ liệu trên chuỗi (được bổ sung bởi các dữ liệu ngoài chuỗi data) thiết lập bản ghi có độ tin cậy cao về lịch sử của nút, cho phép tính toán FFO một cách minh bạch, mang tính thực nghiệm. Một phép đo FFO đơn giản, bậc nhất có thể được lấy từ doanh thu ròng trung bình của một nút trong một khoảng thời gian (tức là tổng doanh thu trừ đi chi phí hoạt động). FFO có thể sau đó được tính như sau, ví dụ: giá trị hiện tại ròng [114] của doanh thu ròng tích lũy trong tương lai, nói cách khác, giá trị chiết khấu theo thời gian của tất cả thu nhập trong tương lai. Tuy nhiên, doanh thu từ nút có thể không ổn định, như minh họa trong Hình 17. Quan trọng hơn, doanh thu từ nút có thể không tuân theo sự phân phối cố định theo thời gian. Do đó, các yếu tố khác mà chúng tôi dự định khám phá khi ước tính FFO bao gồm: • Lịch sử hiệu suất: Lịch sử hiệu suất của nhà điều hành—bao gồm tính chính xác và kịp thời của các báo cáo cũng như thời gian hoạt động của nó—cung cấp một mục tiêu tiêu chuẩn để người dùng đánh giá độ tin cậy của nó. Do đó, lịch sử hiệu suất sẽ cung cấp yếu tố quan trọng trong việc người dùng lựa chọn các nút oracle (hoặc, với sự xuất hiện trong số DONs, lựa chọn DONs của họ). Một lịch sử hiệu suất mạnh mẽ có thể tương quan với doanh thu liên tục cao.18 18Một câu hỏi nghiên cứu quan trọng mà chúng tôi dự định giải quyết là phát hiện khối lượng dịch vụ giả mạo.Hình 17: Doanh thu kiếm được từ các nút Chainlink trên một nguồn cấp dữ liệu duy nhất (ETH-USD) trong một tuần điển hình vào tháng 3 năm 2021. • Truy cập dữ liệu: Mặc dù oracles có thể lấy nhiều dạng dữ liệu từ các API mở, một số dạng dữ liệu nhất định hoặc một số nguồn chất lượng cao nhất định có thể chỉ có sẵn trên một cơ sở đăng ký hoặc thông qua các thỏa thuận hợp đồng. Quyền truy cập đặc quyền vào một số nguồn dữ liệu có thể đóng vai trò tạo ra nguồn doanh thu ổn định. • Sự tham gia của DON: Với sự xuất hiện của DONs, cộng đồng các nút sẽ xuất hiện cùng nhau cung cấp các dịch vụ cụ thể. Chúng tôi hy vọng rằng nhiều DON sẽ bao gồm các nhà khai thác trên cơ sở chọn lọc, thiết lập sự tham gia vào các DON có uy tín với tư cách là một vị trí thị trường đặc quyền giúp đảm bảo nguồn doanh thu ổn định. • Hoạt động đa nền tảng: Một số nhà khai thác nút có thể có sự hiện diện và hồ sơ theo dõi hiệu suất được thiết lập tốt trong các bối cảnh khác, ví dụ: như PoS validators hoặc nhà cung cấp dữ liệu trong ngữ cảnh không phải blockchain. Hiệu suất của chúng trong các hệ thống khác này (khi dữ liệu trên đó có sẵn ở dạng đáng tin cậy) có thể đưa ra đánh giá lịch sử hoạt động của họ. Tương tự, hành vi bị lỗi trong mạng Chainlink có thể gây nguy hiểm cho doanh thu trong các hệ thống khác này bằng cách khiến người dùng rời xa, tức là FFO có thể mở rộng trên các nền tảng. 9.6.2 FFO đầu cơ Các nhà khai thác nút tham gia vào mạng Chainlink không chỉ để tạo doanh thu từ mà là tạo dựng và định vị bản thân để tận dụng các cơ hội mới để thực hiện công việc. Nói cách khác, chi tiêu của các nút oracle trong mạng cũng tuyên bố tích cực về tương lai của DeFi và ứng dụng hợp đồng thông minh khác các miền cũng như các ứng dụng không thuộc blockchain mới nổi của mạng oracle. Các nhà khai thác nút ngày nay kiếm được khoản phí có sẵn trên các mạng Chainlink hiện có và đồng thời Những điều này gần giống với các đánh giá giả mạo trên các trang internet, ngoại trừ vấn đề dễ xảy ra hơn ở phần oracle cài đặt vì chúng tôi có hồ sơ chính xác về việc hàng hóa, tức là các báo cáo, đã được đặt hàng và chưa được giao—trái ngược với, ví dụ: hàng hóa vật chất được đặt hàng trong các cửa hàng trực tuyến. Nói cách khác, trong oracle cài đặt, hiệu suất có thể được xác thực, ngay cả khi tính xác thực của khách hàng không thể.xây dựng danh tiếng, lịch sử hoạt động và chuyên môn điều hành sẽ định vị họ một cách thuận lợi để kiếm được phí sẵn có trong các mạng trong tương lai (tất nhiên, về hành vi trung thực). Các nút hoạt động trong hệ sinh thái Chainlink ngày nay sẽ tham gia vào việc này cảm thấy có lợi thế hơn người mới trong việc kiếm thêm phí Chainlink dịch vụ trở nên sẵn có. Lợi thế này áp dụng cho các nhà khai thác mới cũng như các công ty công nghệ đã có danh tiếng; ví dụ: T-Systems, một công ty truyền thống nhà cung cấp công nghệ (công ty con của Deutsche Telekom) và Kraken, một công ty tập trung lớn Exchange, đã thiết lập sự hiện diện sớm trong hệ sinh thái Chainlink [28, 143]. Sự tham gia như vậy của các nút oracle trong các cơ hội trong tương lai có thể được coi là chính nó như một loại FFO đầu cơ và do đó tạo thành một dạng cổ phần trong Chainlink mạng. 9.6.3 Danh tiếng bên ngoài IIF như chúng tôi đã mô tả, nó có thể hoạt động trong một mạng có biệt danh hoàn toàn các nhà điều hành, tức là không tiết lộ những người hoặc các thực thể trong thế giới thực có liên quan. Tuy nhiên, một yếu tố quan trọng tiềm tàng đối với việc người dùng lựa chọn nhà cung cấp là bên ngoài. danh tiếng. Khi nói đến danh tiếng bên ngoài, chúng tôi muốn nói đến nhận thức về độ tin cậy gắn liền với danh tính trong thế giới thực chứ không phải là bút danh. Rủi ro danh tiếng gắn liền với danh tính trong thế giới thực có thể được xem như một hình thức khuyến khích ngầm. Chúng tôi xem danh tiếng thông qua lăng kính của IIF, tức là theo nghĩa kinh tế học mật mã, như một phương tiện để thiết lập hoạt động đa nền tảng có thể được đưa vào ước tính FFO. Lợi ích của việc sử dụng danh tiếng bên ngoài làm yếu tố ước tính FFO, trái ngược với với liên kết biệt danh, là danh tiếng bên ngoài liên kết hiệu quả hoạt động không chỉ với các hoạt động hiện tại của nhà điều hành cũng như các hoạt động trong tương lai. Ví dụ, nếu mang tiếng xấu gắn liền với một cá nhân, nó có thể làm hoen ố doanh nghiệp tương lai của người đó. Nói cách khác, danh tiếng bên ngoài có thể nắm bắt được phạm vi FFO rộng hơn so với bút danh hồ sơ hoạt động, vì tác động của hành vi sai trái gắn liền với một người hoặc tổ chức công ty khó trốn thoát hơn công ty liên quan đến hoạt động dưới danh nghĩa. Chainlink tương thích với các công nghệ nhận dạng phi tập trung (Phần 4.3) có thể cung cấp hỗ trợ cho việc sử dụng danh tiếng bên ngoài trong IIF. Những công nghệ như vậy có thể xác nhận và do đó giúp đảm bảo tính xác thực của các nhà khai thác trong thế giới thực được khẳng định danh tính.19 9.6.4 Mở phân tích IIF IIF, như chúng tôi đã lưu ý, nhằm mục đích cung cấp các công cụ và dữ liệu nguồn mở đáng tin cậy cho phân tích khuyến khích ngầm. Mục tiêu là cho phép các nhà cung cấp trong cộng đồng để phát triển các phân tích phù hợp với nhu cầu đánh giá rủi ro của các bộ phận khác nhau trong Chainlink cơ sở người dùng. 19Thông tin xác thực danh tính phi tập trung cũng có thể, nếu muốn, tô điểm cho các bút danh bằng các tên đã được xác thực thông tin bổ sung. Ví dụ: về nguyên tắc, người vận hành nút có thể sử dụng thông tin xác thực đó để chứng minh rằng đó là công ty Fortune 500 mà không tiết lộ đó là công ty nào.Một lượng dữ liệu lịch sử đáng kể liên quan đến doanh thu và hiệu suất của các nút nằm trên chuỗi ở dạng có độ tin cậy cao, không thể thay đổi. Tuy nhiên, mục tiêu của chúng tôi là cung cấp dữ liệu toàn diện nhất có thể, bao gồm dữ liệu về các hành vi chỉ có thể nhìn thấy được chuỗi, chẳng hạn như hoạt động Báo cáo Off-Chain (OCR) hoặc DON. Những dữ liệu như vậy có khả năng hãy đồ sộ. Cách tốt nhất để lưu trữ và đảm bảo tính toàn vẹn của nó, tức là bảo vệ nó khỏi chúng tôi tin rằng việc giả mạo sẽ được thực hiện với sự trợ giúp của DONs, sử dụng các kỹ thuật được thảo luận trong Phần 3.3. Một số khuyến khích phù hợp với các hình thức đo lường trực tiếp, chẳng hạn như staking tiền gửi và FFO cơ bản. Những thứ khác, chẳng hạn như FFO đầu cơ và danh tiếng, khó bị ảnh hưởng hơn. đo lường một cách khách quan, nhưng chúng tôi tin rằng các dạng dữ liệu hỗ trợ, bao gồm sự phát triển lịch sử của hệ sinh thái Chainlink, số liệu về danh tiếng trên mạng xã hội, v.v., có thể hỗ trợ các mô hình phân tích IIF ngay cả đối với các yếu tố khó định lượng hơn này. Chúng ta có thể tưởng tượng rằng DON chuyên dụng phát sinh đặc biệt để giám sát, xác thực và ghi lại dữ liệu liên quan đến bản ghi hiệu suất ngoài chuỗi của các nút, cũng như các dữ liệu khác được sử dụng trong IIF, chẳng hạn như thông tin nhận dạng được xác thực. Những DON này có thể cung cấp dữ liệu IIF thống nhất, có độ tin cậy cao cho bất kỳ nhà cung cấp phân tích nào phục vụ cộng đồng Chainlink. Họ cũng sẽ cung cấp một bản ghi vàng đưa ra tuyên bố của các nhà cung cấp phân tích được cộng đồng xác minh độc lập. 9,7 Kết hợp tất cả lại với nhau: Khuyến khích người vận hành nút Tổng hợp các cuộc thảo luận của chúng tôi ở trên về các ưu đãi rõ ràng và tiềm ẩn đối với các nhà khai thác nút cung cấp cái nhìn toàn diện về cách mà các nhà khai thác nút tham gia và hưởng lợi từ mạng Chainlink. Theo hướng dẫn khái niệm, chúng tôi có thể biểu thị tổng tài sản đang bị đe dọa bằng Chainlink nhất định toán tử nút $S ở dạng thô, cách điệu như: \(S ≈\)D + \(F + \)FS + $R, ở đâu: • $D là tổng hợp của tất cả cổ phần được ký gửi rõ ràng trên tất cả các mạng trong đó người điều hành tham gia; • $F là giá trị hiện tại ròng của tổng hợp tất cả FFO trên tất cả các mạng trong mà nhà điều hành tham gia; • $FS là giá trị hiện tại ròng của FFO đầu cơ của nhà điều hành; và • $R là giá trị danh tiếng của nhà điều hành bên ngoài hệ sinh thái Chainlink có thể bị nguy hiểm do hành vi sai trái được xác định trong các nút oracle của nó. Mặc dù phần lớn chỉ mang tính khái niệm, nhưng sự bình đẳng sơ bộ này cho thấy một cách hữu ích rằng có rất nhiều yếu tố kinh tế ủng hộ hiệu suất có độ tin cậy cao của các nút Chainlink. Tất cả những yếu tố này ngoài $D đều có trong mạng Chainlink ngày nay.9,8 Chu kỳ đạo đức của an ninh kinh tế Sự kết hợp giữa tác động siêu tuyến tính staking với việc thể hiện các khoản thanh toán phí vì cơ hội phí trong tương lai (FFO) trong IIF có thể dẫn đến cái mà chúng ta gọi là chu kỳ đạo đức về an ninh kinh tế trong mạng oracle. Đây có thể coi là một loại hình kinh tế về quy mô. Khi tổng số tiền được bảo đảm bởi một mạng cụ thể tăng lên, số lượng số cổ phần bổ sung cần có để tăng thêm một lượng cố định về an ninh kinh tế sẽ giảm đi chi phí trung bình cho mỗi người dùng. Do đó, về mặt phí, người dùng tham gia sẽ rẻ hơn một mạng lưới đã tồn tại hơn là đạt được mức tăng trưởng kinh tế mạng tương tự bảo mật bằng cách tạo ra một mạng mới. Điều quan trọng là việc thêm mỗi người dùng mới sẽ làm giảm chi phí dịch vụ cho tất cả người dùng trước đây của mạng đó. Với một cấu trúc phí cụ thể (ví dụ: tỷ suất lợi nhuận cụ thể trên số tiền đặt cược), nếu tổng phí mà mạng kiếm được tăng lên, điều này sẽ khuyến khích dòng tiền bổ sung tham gia vào mạng để bảo mật nó ở mức cao hơn. Cụ thể, nếu tổng số cổ phần một nút riêng lẻ có thể giữ trong hệ thống bị giới hạn, sau đó khi thanh toán phí mới vào hệ thống, tăng FFO của nó, số lượng nút n sẽ tăng lên. Nhờ có tác động siêu tuyến tính staking của thiết kế hệ thống khuyến khích của chúng tôi, an ninh kinh tế của hệ thống sẽ tăng nhanh hơn n, ví dụ như n2 trong cơ chế chúng ta phác họa ở Phần 9.4. Kết quả là, chi phí trung bình cho an ninh kinh tế - tức là lượng cổ phần đóng góp một đô la an ninh kinh tế – sẽ giảm. Do đó, mạng có thể tính phí người dùng của nó phí thấp hơn. Giả sử rằng nhu cầu về dịch vụ oracle co giãn (xem ví dụ: [31] để biết thông tin tóm tắt giải thích), nhu cầu sẽ tăng lên, tạo ra phí bổ sung và FFO. Chúng tôi minh họa điểm này bằng ví dụ sau. Ví dụ 5. Vì tính bảo mật kinh tế của mạng oracle với sự khuyến khích của chúng tôi kế hoạch là \(dn2 for stake \)dn, an ninh kinh tế được đóng góp bởi một đô la cổ phần là n và do đó chi phí trung bình trên mỗi đô la của an ninh kinh tế—tức là số lượng cổ phần đóng góp vào một đô la an ninh kinh tế - là 1/n. Hãy xem xét một mạng lưới trong đó các khuyến khích kinh tế bao gồm toàn bộ FFO, có giới hạn ở mức \(d ≤\)10K mỗi nút. Giả sử mạng có n = 3 nút. Khi đó chi phí trung bình mỗi đô la an ninh kinh tế là khoảng 0,33 đô la. Giả sử tổng FFO của mạng tăng lên trên \(30K (e.g., to \)31K). Cho giới hạn trên FFO mỗi nút, mạng sẽ tăng lên (ít nhất) n = 4. Bây giờ chi phí trung bình mỗi đô la an ninh kinh tế giảm xuống còn khoảng 0,25 đô la. Chúng tôi minh họa chu trình tốt đẹp đầy đủ của an ninh kinh tế trong các mạng oracle một cách sơ đồ trong Hình 18. Chúng tôi nhấn mạnh rằng chu kỳ lành mạnh của an ninh kinh tế bắt nguồn từ hiệu ứng người dùng gộp phí của họ. Đó là FFO tập thể của họ hoạt động vì lợi ích lớn hơn quy mô mạng và do đó an ninh tập thể lớn hơn. Chúng tôi cũng lưu ý rằng chu kỳ đạo đức của an ninh kinh tế hoạt động có lợi cho DON đạt được sự bền vững về tài chính. Một lần đã tạo, DON đáp ứng nhu cầu của người dùng sẽ tăng lên đến mức mà tại đó doanh thu từ phí vượt quá chi phí hoạt động cho oracle nút.



Hình 18: Sơ đồ chu trình đạo đức của Chainlink staking. Phí sử dụng tăng thanh toán cho mạng oracle 1⃝ khiến mạng này phát triển, dẫn đến tăng trưởng về mặt kinh tế an ninh 2⃝. Sự tăng trưởng siêu tuyến tính này hiện thực hóa tính kinh tế theo quy mô trong mạng Chainlink 3⃝. Cụ thể, nó có nghĩa là giảm chi phí trung bình của an ninh kinh tế, tức là, đảm bảo kinh tế trên mỗi đô la phát sinh từ việc thanh toán phí hoặc các nguồn cổ phần khác tăng lên. Chi phí thấp hơn, được chuyển tới người dùng, kích thích nhu cầu tăng lên đối với oracle dịch vụ 4⃝. 9,9 Các yếu tố bổ sung thúc đẩy tăng trưởng mạng lưới Khi hệ sinh thái Chainlink tiếp tục mở rộng, chúng tôi tin rằng sức hấp dẫn của nó đối với người dùng và tầm quan trọng của cơ sở hạ tầng đối với nền kinh tế blockchain sẽ tăng tốc. Giá trị do mạng oracle cung cấp là siêu tuyến tính, nghĩa là giá trị này tăng nhanh hơnhơn kích thước của mạng. Sự tăng trưởng về giá trị này xuất phát từ cả tính kinh tế theo quy mô—hiệu quả chi phí cho mỗi người dùng lớn hơn khi khối lượng dịch vụ tăng lên—và hiệu ứng mạng—sự gia tăng tiện ích mạng khi người dùng áp dụng DON rộng rãi hơn. Vì smart contract hiện tại tiếp tục nhận được nhiều giá trị được bảo đảm hơn và hoàn toàn mới smart contract các ứng dụng được thực hiện nhờ nhiều dịch vụ phi tập trung hơn, tổng cộng việc sử dụng và tổng phí trả cho DON sẽ tăng lên. Tăng các khoản phí trong biến dịch thành phương tiện và động lực để tạo ra nhiều dịch vụ phi tập trung hơn, dẫn đến một chu kỳ đạo đức. Chu kỳ đạo đức này giải quyết vấn đề con gà và quả trứng quan trọng vấn đề trong hệ sinh thái lai smart contract: Các tính năng smart contract đổi mới thường yêu cầu các dịch vụ phi tập trung chưa tồn tại (ví dụ: các thị trường DeFi mới thường yêu cầu nguồn cấp dữ liệu mới) nhưng vẫn cần có đủ nhu cầu kinh tế để tồn tại. Việc gộp phí theo nhiều smart contract khác nhau cho DON hiện tại sẽ báo hiệu nhu cầu về các dịch vụ phi tập trung bổ sung từ cơ sở người dùng ngày càng tăng, dẫn đến sự sáng tạo của chúng bởi DONs và sự hỗ trợ liên tục của smart contracts kết hợp mới và đa dạng. Tóm lại, chúng tôi tin rằng sự tăng trưởng về an ninh mạng được thúc đẩy bởi đạo đức các chu kỳ trong cơ chế Chainlink staking minh họa cho các mô hình tăng trưởng lớn hơn mạng Chainlink có thể giúp mang lại nền kinh tế trực tuyến cho phi tập trung dịch vụ.

Conclusion
Dans cet article, nous avons présenté une vision de l’évolution de Chainlink. Le thème principal dans cette vision se trouve la capacité des réseaux oracle à fournir une gamme de services beaucoup plus large pour smart contracts que la simple livraison de données. En utilisant les DON comme base pour les services décentralisés du futur, Chainlink visera à fournir des fonctionnalités oracle performantes et à confidentialité améliorée. Ses réseaux oracle offriront une forte minimisation de la confiance grâce à une combinaison de mécanismes cryptoéconomiques fondés sur des principes tels que staking et des garde-corps soigneusement conçus et une application du niveau de service sur les chaînes principales fiables. DONs aidera également les systèmes de couche 2 à appliquer des politiques de commande flexibles et équitables sur les transactions, ainsi qu'à réduire les coûts de gaz pour les transactions acheminées par mempool. Pris ensemble, ces capacités vont toutes dans le sens d’une smart hybride sécurisée et richement fonctionnelle contrats. La flexibilité des DON améliorera les services Chainlink existants et donnera lieu à de nombreuses fonctionnalités et applications smart contract supplémentaires. Parmi ceux-ci sont sans couture connexion à une grande variété de systèmes hors chaîne, création d'identité décentralisée à partir de données existantes, canaux prioritaires pour garantir la livraison en temps opportun des infrastructures critiques transactions et instruments préservant la confidentialité DeFi. La vision que nous présentons ici est ambitieuse. À court terme, nous cherchons à responsabiliser contrats hybrides pour atteindre des objectifs hors de portée des smart contract aujourd'hui, tandis que à long terme, nous visons à réaliser une métacouche décentralisée. Heureusement, nous pouvons dessiner sur de nouveaux outils et idées, allant des algorithmes de consensus à la preuve sans connaissance systèmes – que la communauté développe à la suite d’une recherche en évolution rapide.
De même, nous prévoyons de donner la priorité à la mise en œuvre des idées contenues dans ce document en réponse aux besoins de la communauté d’utilisateurs de Chainlink. Nous attendons avec impatience la prochaine étape dans notre quête pour autonomiser les smart contract grâce à une connectivité universelle et établir les technologies décentralisées comme épine dorsale de la prochaine génération de systèmes financiers mondiaux et les systèmes juridiques. Remerciements Merci à Julian Alterini et Shawn Lee pour le rendu des figures dans cet article.
Phần kết luận
Trong bài viết này, chúng tôi đã đặt ra tầm nhìn về sự phát triển của Chainlink. Chủ đề chính trong tầm nhìn này là khả năng của các mạng oracle trong việc cung cấp phạm vi dịch vụ rộng hơn nhiều cho smart contracts hơn là chỉ phân phối dữ liệu. Sử dụng DON làm nền tảng cho các dịch vụ phi tập trung trong tương lai, Chainlink sẽ nhằm mục đích cung cấp chức năng oracle được nâng cao hiệu quả, bảo mật. Mạng oracle của nó sẽ cung cấp khả năng giảm thiểu tin cậy mạnh mẽ thông qua sự kết hợp của các cơ chế kinh tế mật mã nguyên tắc như staking và các đường ray bảo vệ được hình thành cẩn thận và thực thi cấp độ dịch vụ dựa trên các chuỗi chính. DONs cũng sẽ giúp các hệ thống lớp 2 thực thi các chính sách đặt hàng công bằng, linh hoạt đối với các giao dịch cũng như giảm chi phí gas cho các giao dịch được định tuyến theo mempool. Gộp lại với nhau, tất cả những khả năng này đều hướng tới sự an toàn và đa chức năng kết hợp thông minh hợp đồng. Tính linh hoạt của DON sẽ nâng cao các dịch vụ Chainlink hiện có và làm phát sinh nhiều tính năng và ứng dụng smart contract bổ sung. Trong số này là liền mạch kết nối với nhiều hệ thống ngoài chuỗi, tạo danh tính phi tập trung từ dữ liệu hiện có, các kênh ưu tiên để giúp đảm bảo cung cấp kịp thời các cơ sở hạ tầng quan trọng giao dịch và các công cụ DeFi bảo mật bí mật. Tầm nhìn chúng tôi đặt ra ở đây đầy tham vọng. Trong ngắn hạn, chúng tôi tìm cách trao quyền hợp đồng kết hợp để hoàn thành các mục tiêu ngoài tầm với của smart contract giây hôm nay, trong khi về lâu dài, chúng tôi mong muốn hiện thực hóa một lớp kim loại phi tập trung. Thật hạnh phúc khi chúng ta có thể vẽ về các công cụ và ý tưởng mới—từ thuật toán đồng thuận đến bằng chứng không có kiến thức hệ thống—mà cộng đồng đang phát triển là thành quả của nghiên cứu đang phát triển nhanh chóng.
Tương tự, chúng tôi hy vọng sẽ ưu tiên thực hiện các ý tưởng trong bài viết này để đáp ứng đáp ứng nhu cầu của cộng đồng người dùng Chainlink. Chúng tôi mong chờ giai đoạn tiếp theo trong nỗ lực của chúng tôi nhằm trao quyền cho smart contract thông qua kết nối toàn cầu và thiết lập công nghệ phi tập trung như là xương sống của thế hệ tài chính tiếp theo của thế giới và các hệ thống pháp luật. Lời cảm ơn Cảm ơn Julian Alterini và Shawn Lee đã đưa ra các số liệu trong bài viết này.