Chainlink: Mạng Oracle phi tập trung

Chainlink 2.0: Next Steps in the Evolution of Decentralized Oracle Networks

بقلم Steve Ellis, Ari Juels and Sergey Nazarov · 2017

وضع فردي chain.link

Abstract

Abstract

In this whitepaper, we articulate a vision for the evolution of Chainlink beyond its initial conception in the original Chainlink whitepaper. We foresee an increasingly expansive role for oracle networks, one in which they complement and enhance existing and new blockchains by providing fast, reliable, and confidentiality-preserving universal connectivity and off-chain computation for smart contracts. The foundation of our plan is what we call Decentralized Oracle Networks, or DONs for short. A DON is a network maintained by a committee of Chainlink nodes. It supports any of an unlimited range of oracle functions chosen for deployment by the committee. A DON thus acts as a powerful abstraction layer, offering interfaces for smart contracts to extensive off-chain resources and highly efficient yet decentralized off-chain computing resources within the DON itself. With DONs as a springboard, Chainlink plans to focus on advances in seven key areas: • Hybrid smart contracts: Offering a powerful, general framework for augmenting existing smart contract capabilities by securely composing on-chain and off-chain computing resources into what we call hybrid smart contracts. • Abstracting away complexity: Presenting developers and users with simple functionality eliminates the need for familiarity with complex underlying protocols and system boundaries. • Scaling: Ensuring that oracle services achieve the latencies and throughputs demanded by high-performance decentralized systems. • Confidentiality: Enabling next-generation systems that combine blockchains’ innate transparency with strong new confidentiality protections for sensitive data. • Order-fairness for transactions: Supporting transaction sequencing in ways that are fair for end users and prevent front-running and other attacks by bots and exploitative miners. • Trust-minimization: Creating a highly trustworthy layer of support for smart contracts and other oracle-dependent systems by means of decentralization, strong anchoring in high-security blockchains, cryptographic techniques, and cryptoeconomic guarantees. • Incentive-based (cryptoeconomic) security: Rigorously designing and robustly deploying mechanisms that ensure nodes in DONs have strong economic incentives to behave reliably and correctly, even in the face of wellresourced adversaries. We present preliminary and ongoing innovations by the Chainlink community in each of these areas, providing a picture of the broadening and increasingly powerful capabilities planned for the Chainlink network.

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

Introduction

Blockchain oracles are often viewed today as decentralized services with one objective: to forward data from off-chain resources onto blockchains. It’s a short step, though, from forwarding data to computing on it, storing it, or transmitting it bidirectionally. This observation justifies a much broader notion of oracles’ functionality. So too do the growing service requirements of smart contracts and increasingly multifaceted technologies that rely on oracle networks. In short, an oracle can and will need to be a general-purpose, bidirectional, compute-enabled interface between and among onchain and off-chain systems. Oracles’ role in the blockchain ecosystem is to enhance the performance, functionality, and interoperability of smart contracts so that they can bring new trust models and transparency to a multiplicity of industries. This transformation will come about through broadening use of hybrid smart contracts, which fuse blockchains’ special properties with the unique capabilities of off-chain systems such as oracle networks and thereby achieve far greater reach and power than on-chain systems in isolation. In this whitepaper, we articulate a vision for what we call Chainlink 2.0, an evolution of Chainlink beyond its initial conception in the original Chainlink whitepaper [98]. We foresee an increasingly expansive role for oracle networks, one in which they complement and enhance existing and new blockchains by providing fast, reliable, and confidentiality-preserving universal connectivity and computation for hybrid smart contracts. We believe that oracle networks will even evolve to become utilities for exporting high-integrity blockchain-grade data to systems beyond the blockchain ecosystem. Today, Chainlink nodes run by a diverse set of entities come together in oracle networks to relay data to smart contracts in what are known as reports. We can view such oracle nodes as a committee similar to that in a classical-consensus blockchain [72], but with the goal of supporting existing blockchains, rather than providing freestanding functionality. With verifiable random functions (VRF) and Off-Chain Reporting (OCR), Chainlink is already evolving toward a general-purpose framework and infrastructure for providing the computational resources that smart contracts require for advanced functionality. The foundation of our plan for Chainlink 2.0 is what we call Decentralized Oracle Networks, or DONs for short. Since we introduced the term “oracle network” in the original Chainlink whitepaper [98], oracles have developed ever richer functionality and breadth of application. In this paper, we offer a fresh definition of the term according to our future vision for the Chainlink ecosystem. In this view, a DON is a network maintained by a committee of Chainlink nodes. Rooted in a consensus protocol, it supports any of an unlimited range of oracle functions chosen for deployment by the committee. A DON thus acts as a blockchain abstraction layer, providing interfaces to off-chain resources for both smart contracts and other systems. It also provides access to highly efficient yet decentralized off-chain computing resources. In general, a DON supports operations on a main chain. Its goal is to enable secure and flexi-

ble hybrid smart contracts, which combine on-chain and off-chain computation with connection to external resources. We emphasize that even with the use of committees in DONs, Chainlink itself remains inherently permissionless. DONs act as the foundation of a permissionless framework in which nodes can come together to implement custom oracle networks with their own regimes for node inclusion, which may be permissioned or permissionless. With DONs as a foundation, we plan to focus in Chainlink 2.0 on advances in seven key areas: hybrid smart contracts, abstracting away complexity, scaling, confidentiality, order-fairness for transactions, trust minimization, and incentive-based (cryptoeconomic) security. In this paper introduction, we present an overview of Decentralized Oracle Networks in Section 1.1 and then our seven key areas of innovation in Section 1.2. We describe the organization of the rest of this paper in Section 1.3. 1.1 Decentralized Oracle Networks Decentralized Oracle Networks are designed to enhance and extend the capabilities of smart contracts on a target blockchain or main chain through functions that are not available natively. They do so by providing the three basic resources found in computing systems: networking, storage, and computation. A DON aims to offer these resources with strong confidentiality, integrity, and availability properties,1 as well as accountability. DONs are formed by committees of oracle nodes that cooperate to fulfill a specific job or choose to establish a long-lived relationship in order to provide persistent services to clients. DONs are designed in a blockchain-agnostic way. They promise to serve as a powerful and flexible tool for application developers to create off-chain support for their smart contracts on any supported main chain. Two types of functionalities realize the capabilities of a DON: executables and adapters. Executables are programs that run continuously and in a decentralized manner on the DON. While they do not directly store main-chain assets, they have important benefits, including high performance and the ability to perform confidential computation. Executables run autonomously on a DON and perform deterministic operations. They work in hand with adapters that link the DON to external resources and may be called by executables. Adapters, as we envision them for DONs, are a generalization of the external adapters in Chainlink today. While existing adapters typically only fetch data from data sources, adapters may operate bidirectionally; in DONs, they may additionally leverage joint computation by DON nodes to achieve additional features, such as encrypting reports for privacy-preserving consumption by an executable. To provide a sense of a DON’s basic operation, Fig. 1 shows conceptually how a DON might be used to send reports to a blockchain and thus achieve traditional, existing oracle functionality. DONs can provide many additional features, however, beyond 1The “CIA triad” of information security [123, p. 26, §2.3.5].

Conceptual figure showing how a Decentralized Oracle Network can realize basic oracle functionality by relaying off-chain data to a contract

Chainlink’s existing networks. For example, within the general structure of Fig. 1, the executable could record fetched asset-price data on the DON, using such data to compute, e.g., a trailing average for its reports. Figure 1: Conceptual figure showing as an example how a Decentralized Oracle Network can realize basic oracle functionality, i.e., relay off-chain data to a contract. An executable uses adapters to fetch off-chain data, which it computes on, sending output over another adapter to a target blockchain. (Adapters are initiated by code in the DON, represented by small blue boxes; arrows show the direction of data flow for this particular example.) The executable can additionally read and write to local DON storage to keep state and/or communicate with other executables. Flexible networking, computation, and storage in DONs, all represented here, enable a host of novel applications. A major benefit of DONs is their ability to bootstrap new blockchain services. DONs are a vehicle by which existing oracle networks can quickly stand up service applications that would today require the creation of purpose-built networks. We give a number of examples of such applications in Section 4. In Section 3, we provide more details on DONs, describing their capabilities in terms of the interface they present to developers and users. 1.2 Seven Key Design Goals Here we briefly review the seven key focuses enumerated above for the evolution of Chainlink, namely:

Hybrid smart contracts: Central to our vision for Chainlink is the idea of securely combining on-chain and off-chain components in smart contracts. We refer to contracts realizing this idea as hybrid smart contracts or hybrid contracts.2 Blockchains are and will continue to play two critical roles in decentralized-service ecosystems: They are both the loci where cryptocurrency ownership is represented and robust anchors for decentralized services. Smart contracts must therefore be represented or executed on chain, but their on-chain capabilities are severely limited. Purely on-chain contract code is slow, expensive, and insular, unable to benefit from real-world data and a variety of functionalities that are inherently unachievable on chain, including various forms of confidential computation, generation of (pseudo)randomness secure against miner / validator manipulation, etc. For smart contracts to realize their full potential therefore requires smart contracts to be architected with two parts: an on-chain part (which we typically denote by SC) and an off-chain part, an executable running on a DON (which we typically denote by exec). The goal is to achieve a secure composition of on-chain functionality with the multiplicity of off-chain services that DONs aim to provide. Together, the two parts make up a hybrid contract. We present the idea conceptually in Fig. 2. Already today, Chainlink services3 such as data feeds and VRFs are enabling otherwise unachievable smart contract applications, ranging from DeFi to fairly generated NFTs to decentralized insurance, as first steps toward a more general framework. As Chainlink services expand and grow more performant according to our vision in this whitepaper, so too will the power of smart contract systems across all blockchains. Our other six key focuses in this whitepaper may be viewed as acting in the service of the first, overarching one of hybrid contracts. These focuses involve removing visible complexity from hybrid contracts, creating additional off-chain services that enable the construction of ever more capable hybrid contracts, and, in the case of trust minimization, bolstering the security properties achieved by hybrid contracts. We leave the idea of hybrid contracts implicit throughout much of the paper, but any combination of MAINCHAIN logic with a DON may be viewed as a hybrid contract. Abstracting away complexity: DONs are designed to make use of decentralized systems easy for developers and users by abstracting away the often complex machinery behind DONs’ powerful and flexible array of services. Existing Chainlink services already have this feature. For example, data feeds in Chainlink today present onchain interfaces that do not require developers to concern themselves with protocollevel details, such as the means by which OCR enforces consensus reporting among a 2The idea of on-chain / off-chain contract composition has arisen previously in various constrained forms, e.g., layer-2 systems, TEE-based blockchains [80], etc. Our goal is to support and generalize these approaches and ensure that they can encompass off-chain data access and other key oracle services. 3Chainlink services comprise a variety of decentralized services and functionality available through the network. They are offered by the numerous node operators composed into various oracle networks across the ecosystem.

Conceptual figure depicting on-chain and off-chain contract composition in a hybrid smart contract architecture

Figure 2: Conceptual figure depicting on-chain / off-chain contract composition. A hybrid smart contract 3⃝consists of two complementary components: an on-chain component SC 1⃝, resident on a blockchain, and an off-chain component exec 2⃝that executes on a DON. The DON serves as a bridge between the two components as well as connecting the hybrid contract with off-chain resources such as web services, other blockchains, decentralized storage, etc. decentralized set of nodes. DONs go a step further in the sense that they expand the range of services for which Chainlink can offer developers an abstraction layer with accompanying streamlined interfaces for high-level services. We present several application examples in Section 4 that highlight this approach. We envision enterprises, for instance, using DONs as a form of secure middleware to connect their legacy systems to blockchains. (See Section 4.2.) This use of DONs abstracts away the complexity of general blockchain dynamics (fees, reorgs, etc.). It also abstracts away the features of specific blockchains, thereby enabling enterprises to connect their existing systems to an ever-broadening array of blockchain systems without a need for specialized expertise in these systems or, more generally, in decentralizedsystems development. Ultimately, our ambition is to push the degree of abstraction achieved by Chainlink to the point of implementing what we refer to as a decentralized metalayer. Such a layer would abstract away the on-chain / off-chain distinction for all classes of developers and users of DApps, allowing seamless creation and use of decentralized services.

To simplify the development process, developers could specify DApp functionality in the metalayer as a virtual application in a unified machine model. They could then use a decentralized-metalayer compiler to instantiate the DApp automatically as a set of interoperating decentralized functionalities spanning blockchains, DONs, and external services. (One of these external services could be an enterprise system, making the metalayer useful for applications involving legacy enterprise systems.) Such compilation is akin to how modern compilers and software-development kits (SDKs) support generalist programmers in using the full potential of heterogeneous hardware architectures consisting of a general-purpose CPU and specialized hardware like GPUs, machine-learning accelerators, or trusted enclaves. Fig. 3 presents this idea at a conceptual level. Hybrid smart contracts are a first step along the way to this vision and to a concept we call meta contracts. Meta contracts are applications coded on a decentralized metalayer and implicitly encompass on-chain logic (smart contracts), as well as offchain computation and connectivity among various blockchains and existing off-chain services. Given the need for language and compiler support, new security models, and conceptual and technical harmonization of disparate technologies, however, realization of a true decentralized metalayer is an ambitious goal to which we aspire over a long time horizon. It is nonetheless a helpful ideal model to keep in mind while reading this paper, not detailed here, but something we plan to focus on in our future work on Chainlink. Scaling: A goal of preeminent importance in our evolving designs is enabling the Chainlink network to meet the growing scaling needs of the blockchain ecosystem. With network congestion becoming a recurring problem in existing permissionless blockchains [86], new and more performant blockchain designs are coming into use, e.g., [103, 120, 203], as well as complementary layer-2 scaling technologies, e.g., [5, 12, 121, 141, 169, 186, 187]. Oracle services must achieve latencies and throughputs that meet the performance demands of these systems while minimizing on-chain fees (e.g., gas costs) for contract operators and ordinary users alike. With DONs, Chainlink functionality aims to go further and deliver performance high enough for purely webbased systems. DONs derive much of their performance gain from their use of fast, committeebased or permissionless consensus protocols, which they combine with the blockchains they support. We expect many DONs with different configurations to run in parallel; different DApps and users can navigate tradeoffs in underlying consensus choices according to their application requirements. DONs may be viewed in effect as layer-2 technologies. We expect that among other services, DONs will support the Transaction Execution Framework (TEF), which facilitates efficient integration of DONs and thus oracles with other high-performance layer-2 systems—e.g., rollups, systems which bundle transactions offchain to achieve performance improvements. We introduce the TEF in Section 6.

Conceptual figure showing ideal realization of a decentralized metalayer that abstracts blockchain and DON complexity

Figure 3: Conceptual figure showing ideal realization of a decentralized metalayer. For ease of development, a developer specifies a DApp, highlighted in pink, as a virtual application in a unified machine model. A decentralized-metalayer compiler automatically generates corresponding interoperating functionalities: smart contracts (denoted by SC), logic (denoted by exec) on DONs, adapters connecting to target external services, and so forth, as indicated in yellow highlight. Fig. 4 shows conceptually how DONs improve blockchain (smart contract) scaling by concentrating transaction and oracle-report processing offchain, rather than on chain. This shift in the main locus of computation reduces transaction latency and fees while boosting transaction throughput. Confidentiality: Blockchains provide unprecedented transparency for smart contracts and the applications they realize. But there is a basic tension between transparency and confidentiality. Today, for example, users’ decentralized exchange trans-

Conceptual figure showing how DONs improve blockchain smart contract scaling by moving computation off-chain

Figure 4: Conceptual figure showing how Decentralized Oracle Networks improve the scaling of blockchain-enabled smart contracts. Figure A ⃝shows a conventional oracle architecture. Transactions are sent directly to the blockchain, as are oracle reports. Thus the blockchain, highlighted in yellow, is the main locus for transaction processing. Figure B⃝shows use of a DON to support contracts on the blockchain. A DON executable processes transactions along with data from external systems and forwards results—e.g., bundled transactions or contract state changes resulting from the transactions’ effects—to the blockchain. The DON, highlighted in yellow, is thus the main locus for transaction processing. actions are recorded on chain, making it easy to monitor exchange behavior, but also making users’ financial transactions publicly visible. Similarly, data relayed to smart contracts remains on chain. This makes such data conveniently auditable, but acts as a disincentive for data providers wishing to furnish smart contracts with sensitive or proprietary data. We believe that oracle networks will play a pivotal role in catalyzing next-generation systems that combine blockchains’ innate transparency with new confidentiality protections. In this paper, we show how they will do so using three main approaches: • Confidentiality-preserving adapters: Two technologies with planned deployment in Chainlink’s networks, DECO [234] and Town Crier [233], enable oracle nodes to retrieve data from off-chain systems in ways that protect user privacy and data confidentiality. They will play a key role in the design of adapters for DONs. (See Section 3.6.2 for details on these two technologies.) • Confidential computation: DONs can simply conceal their computation from relying blockchains. Using secure multi-party computation and/or trusted execution environments, stronger confidentiality is also possible in which DON nodes compute over data into which they themselves do not have visibility.

Conceptual diagram of confidentiality-preserving operations in a DON processing sensitive data through adapters

• Support for confidential layer-2 systems: The TEF is designed to support a variety of layer-2 systems, many of which use zero-knowledge proofs to provide various forms of transaction confidentiality. We discuss these approaches in Section 3 (with additional details in Section 6, Appendix B.1, and Appendix B.2). Fig. 5 presents a conceptual view of how sensitive data might flow from external sources to a smart contract by means of confidentiality-preserving adapters and confidential computation in a DON. Figure 5: Conceptual diagram of confidentiality-preserving operations in a DON on sensitive data (highlighted in yellow). Sensitive source data (black circles) in web servers is extracted to the DON using confidentiality-preserving adapters (blue, doublearrowed lines). The DON receives derived data (hollow circles) from these adapters— the result of applying either a function or, e.g., secret-sharing, to the sensitive source data. An executable on the DON may apply confidential computation to derived data to construct a report (double circle), which it sends over an adapter to the blockchain. We believe that powerful tools for handling confidential data will open up a whole range of applications. Among these are private decentralized (and centralized) finance, decentralized identity, credit-based on-chain lending, and more efficient and user-friendly know-your-customer and accreditation protocols, as we discuss in Section 4. Order-fairness for transactions: Today’s blockchain designs have a dirty little open secret: They are ephemerally centralized. Miners and validators can order trans-

Example comparing standard mining with Fair Sequencing Services showing how FSS prevents transaction reordering

actions however they choose. Transaction order can also be manipulated by users as a function of the network fees they pay (e.g., gas prices in Ethereum) and to some extent by taking advantage of fast network connections. Such manipulation can, for example, take the form of front-running, in which a strategic actor such as a miner observes a user’s transaction and inserts its own exploitative transaction into an earlier position in the same block—effectively stealing money from the user by leveraging advance knowledge of the user’s transaction. For example, a bot may place a buy order before a user’s. It can then take advantage of the asset price increase induced by the user’s trade. Front-running by some bots that harms ordinary users—analogous to high-frequency trading on Wall Street—is already prevalent and well documented [90], as are related attacks such as back-running [159] and automated transaction mimicking [195]. Proposals to systematize order exploitation by miners have even surfaced recently [110]. Layer-2 technologies such as rollups don’t solve the problem, but merely re-centralize ordering, placing it in the hands of the entity that creates a rollup. One of our goals is to introduce into Chainlink a service called Fair Sequencing Services (FSS) [137]. FSS helps smart contract designers ensure fair ordering for their transactions and avoid front-running, back-running, and related attacks on user transactions as well as other types of transactions, such as oracle report transmission. FSS enables a DON to implement ideas such as the rigorous, temporal notion of orderfairness introduced in [144]. As an incidental benefit, FSS can also lower users’ network fees (e.g., gas costs). Briefly, in FSS, transactions pass through the DON, rather than propagating directly to a target smart contract. The DON orders the transactions and then forwards them to the contract. Figure 6: Example of how FSS is beneficial. Fig. A ⃝shows how a miner, exploiting its centralized power to order transactions, may swap a pair of transactions: transaction 1⃝ arrives before 2⃝, but the miner instead sequences it after 2⃝. In contrast, Fig. B⃝shows how a DON decentralizes the ordering process among DON nodes. If a quorum of honest nodes receive 1⃝before 2⃝, the FSS causes 1⃝to appear before 2⃝on chain— preventing miner reordering by attaching contract-enforceable sequence numbers. Fig. 6 compares standard mining with FSS. It shows how in standard mining,

the process of transaction ordering is centralized with the miner and thus subject to manipulation, such as reordering a pair of transactions with respect to their arrival times. In contrast, in FSS, the process is decentralized among DON nodes. Assuming a quorum of honest nodes, FSS helps enforce policies such as temporal ordering of transactions, reducing opportunities for manipulation by miners and other entities. Additionally, since users need not compete for preferential ordering based on gas price, they can pay relatively low gas prices (while transactions from the DON can be batched for gas savings). Trust minimization: Our general aim in the design of DONs is to facilitate a highly trustworthy layer of support for smart contracts and other oracle-dependent systems by means of decentralization, cryptographic tools, and cryptoeconomic guarantees. A DON itself is decentralized, and users can choose from any available DON that supports the main chain on which they wish to operate or spawn additional DONs with committees of nodes they trust. For some applications, however, particularly smart contracts, Chainlink users may favor a trust model that treats the main chain supported by a DON as more trustworthy than the DON itself. For such users, we already have or plan to incorporate into the architecture of the Chainlink network a number of mechanisms that enable contracts on a main chain to strengthen the security assurances provided by DONs, while at the same time also enforcing protections against the possibility of corrupted data sources such as the web servers from which the DON obtains data. We describe these mechanisms in Section 7. They fall under five main headings: • Data-source authentication: Tools that enable data providers to digitally sign their data and thereby strengthen the chain of custody between the origin and relying contract. • DON minority reports: Flags issued by a minority subset of DON nodes that observes majority malfeasance in the DON. • Guard rails: Logic on a main chain that detects anomalous conditions and pauses or halts contract execution (or invokes other remediations). • Trust-minimized governance: Use of gradual-release updates to facilitate community inspection, as well as decentralized emergency interventions for rapid response to system failures. • Decentralized entity authentication: Use of public-key infrastructure (PKI) to identify entities in the Chainlink network. Fig. 7 presents a conceptual schematic of our trust-minimization goals. Incentive-based (cryptoeconomic) security: Decentralization of report generation across oracle nodes helps ensure security even when some nodes are corrupted.

Conceptual depiction of Chainlink trust-minimization goal showing DON and data source trust loci

Figure 7: Conceptual depiction of Chainlink’s trust-minimization goal, which is to minimize users’ need for correct behavior of the DON and data sources such as web servers. Yellow highlights in the figure indicate trust-minimization loci: the DON and individual or minority sets of web servers. Pink highlights indicate system components that are highly trustworthy by assumption: contracts on the blockchain and a majority of web servers, i.e., web servers in the aggregate. Equally important, though, is ensuring that nodes have a financial incentive to behave correctly. Staking, i.e., requiring nodes to provide deposits of LINK and slashing (confiscating) these deposits in case of misbehavior, will play a key role in Chainlink. It is an important incentive design already used in a number of blockchains, e.g., [81, 103, 120, 204]. Staking in Chainlink, however, looks very different from staking in standalone blockchains. Staking in blockchains aims to prevent attacks on consensus. It has a different goal in Chainlink: to ensure timely delivery of correct oracle reports. A welldesigned staking system for an oracle network should render attacks such as bribery unprofitable for an adversary, even when the target is a smart contract with high monetary value. In this paper, we present a general approach to staking in Chainlink with three key innovations:

Conceptual diagram depicting super-linear scaling in Chainlink staking where briber cost grows faster than combined node deposits

  1. A powerful adversarial model that encompasses attacks overlooked in existing approaches. One example is what we call prospective bribery. This is a form of bribery that determines which nodes receive bribes on a conditional basis, e.g., offers guaranteed bribes in advance to nodes that a staking mechanism selects at random for particular roles (such as triggering report adjudication).
  2. Super-linear staking impact, meaning informally that to be successful, an adversary must have a budget $B greater than the combined deposits of all oracle nodes. More precisely, we mean that as a function of n, \(B(n) ≫\)dn in a network of n oracle nodes each with a fixed deposit amount $d (more formally, \(B(n) is asymptotically larger in n than \)dn). Fig. 8 gives a conceptual view of this property.
  3. The Implicit-Incentive Framework (IIF), an incentive model we have devised to encompass empirically measurable incentives beyond explicit deposited staking funds, including nodes’ future fee opportunities. The IIF extends the notion of stake beyond explicit node deposits. Figure 8: Conceptual diagram depicting super-linear scaling in Chainlink staking. The bribe $B(n) required by an adversary grows faster in n than the combined deposits $dn of all oracle nodes. We show how the IIF and super-linear staking impact together induce what we call a virtuous cycle of economic security for oracle networks. When new users enter

the system, increasing potential future earnings from running Chainlink nodes, the marginal cost of economic security drops for current and future users. In a regime of elastic demand, this diminished cost incentivizes additional users to make use of the network, continuously perpetuating adoption in an ongoing virtuous cycle. Note: While this whitepaper outlines important elements of our vision for the evolution of Chainlink, it is informal and includes few detailed technical specifics. We plan to release focused technical papers on additional features and approaches as they evolve. Furthermore, it is important to emphasize that many elements of the vision presented here (scaling improvements, confidentiality technologies, FSS, etc.) can and will be deployed in preliminary form even before advanced DONs become a basic feature of Chainlink. 1.3 Organization of this Paper We present our security model and notation in Section 2 and outline the Decentralized Oracle Network API in Section 3. In Section 4, we present a number of examples of applications for which DONs provide an appealing deployment platform. Readers can learn most of the key concepts of the paper by reading up to this point. The remainder of the paper contains further details. We describe Fair Sequencing Services (FSS) in Section 5 and the Transaction-Execution Framework (TEF) in Section 6. We describe our approach to trust minimization in Section 7. We consider some important DON deployment requirements, namely incremental rollout of features, dynamic ledger membership, and accountability in Section 8. Finally, in Section 9, we give an overview of our developing approach to incentive design. We conclude in Section 10. To help readers who have limited familiarity with the concepts in this paper, we provide a glossary in Appendix A. We present further detail on the DON interface and functionality in Appendix B and present some example adapters in Appendix C. In Appendix D, we describe a cryptographic primitive for trust-minimized data-source authentication called functional signatures and introduce a new variant called discretized functional signatures. We discuss some considerations bearing on committee selection for DONs in Appendix F.

Giới thiệu

Conceptual figure showing how a Decentralized Oracle Network can realize basic oracle functionality by relaying off-chain data to a contract

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.

Conceptual figure showing ideal realization of a decentralized metalayer that abstracts blockchain and DON complexity

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ị.

Example comparing standard mining with Fair Sequencing Services showing how FSS prevents transaction reordering

Conceptual diagram of confidentiality-preserving operations in a DON processing sensitive data through adapters

• 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.

Conceptual diagram depicting super-linear scaling in Chainlink staking where briber cost grows faster than combined node deposits

Conceptual depiction of Chainlink trust-minimization goal showing DON and data source trust loci

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.

Conceptual figure showing how DONs improve blockchain smart contract scaling by moving computation off-chain

Conceptual figure depicting on-chain and off-chain contract composition in a hybrid smart contract architecture

Security Model and Goals

Security Model and Goals

A Decentralized Oracle Network is a distinct distributed system that we expect will initially be implemented typically—although not necessarily—by a committee-based consensus protocol and run by a set of oracle nodes. A DON is designed primarily to augment the capabilities of a smart contract on a main chain with oracle reports and other services, but it can provide those same supporting services to other nonblockchain systems, and thus need not be associated with a particular main chain.

The model and properties we consider are therefore largely independent of the use of the particular applications of a DON. 2.1 Current Architectural Model It is important to emphasize that Chainlink today is not a monolithic service, but rather a permissionless framework within which it is possible to launch distinct, independent networks of oracle nodes [77]. Networks have heterogeneous sets of node operators and designs. They may also differ in terms of the types of services they provide, which can include, e.g., data feeds, Proof of Reserves, verifiable randomness, and so forth. Other differences can include the degree of decentralization, size of the network in terms of locked value it supports, and various service-level parameters, such as data frequency and accuracy. Chainlink’s permissionless model encourages the growth of an ecosystem in which providers specialize in the services they are best able to furnish to the community. This model is likely to result in lower costs to users and higher service quality than a model that requires all nodes and networks to provide a full range of services, an approach that can easily devolve into system-wide adoption of the services representing the least common denominator of resources available to nodes. As Chainlink evolves toward DON-based designs in Chainlink 2.0, we continue to support the model of a permissionless, open framework, keeping in view the goal of providing users with a range of service choices that globally result in the best match with particular application requirements. 2.2 Consensus Assumptions We use the term Decentralized Oracle Network to encompass the full functionality of the oracle system we describe: both the data structure that oracle nodes maintain and the core API layered on top of it. We use the term ledger (lower case), denoted by L, to mean the underlying data structure maintained by a DON and used to support the particular services it provides. We emphasize that our DON framework does not treat L as a freestanding system like a blockchain: Its purpose is to support blockchains and other systems. Blockchains are, of course, one way of realizing a trustworthy ledger, but there are others. We expect DONs in many cases to realize their underlying ledgers using Byzantine Fault Tolerant (BFT) systems, which considerably predate blockchains such as Bitcoin [174]. We use BFT-type notation and properties throughout the paper for convenience, although we emphasize that DONs can be realized using permissionless consensus protocols. Conceptually, a ledger L is a bulletin board on which data is linearly ordered. We view a ledger generally as having a few key properties commonly ascribed to blockchains [115]. A ledger is: • Append-only: Data, once added, cannot be removed or modified.

• Public: Anyone can read its contents, which are consistent across time in the view of all users.4 • Available: The ledger can always be written to by authorized writers and read by anyone in a timely way. Alternative properties are possible in the ledger for a DON when realized by a committee. For instance, ledger write access might be restricted to certain users, as might read access for some applications, i.e., the ledger need not be public as defined above. Similarly, ledger rules might permit modification or redaction of data. We don’t explicitly consider such variants in this paper, however. The modular design of DONs can support any of a wide variety of modern BFT protocols, e.g., Hotstuff[231]. The exact choice will depend on trust assumptions and network characteristics among the oracle nodes. A DON could in principle alternatively use a highly performant permissionless blockchain for its ledger in its role supporting an equally scalable layer-2 or blockchain system. Similarly, hybridization is also possible: The DON could in principle be composed of nodes that are validators in an existing blockchain, e.g., in Proof-of-Stake systems in which committees are selected to execute transactions, e.g., [8, 81, 120, 146, 204]. This particular mode of operation requires that nodes operate in a dual-use manner, i.e., operate both as blockchain nodes and DON nodes. (See Section 8.2 for a discussion of techniques to ensure continuity in changing committees and Appendix F for some caveats on random committee selection.) In practice, in modern BFT algorithms, nodes digitally sign messages on the ledger. We assume for convenience that L has an associated public key pkL and that its contents are signed by the corresponding private key. This general notation applies even when data on L are signed using threshold signatures.5 Threshold signatures are convenient, as they enable a persistent identity for a DON even with changes of membership in the nodes running it. (See Appendix B.1.3.) We thus assume that \(sk_L\) is secret-shared in a \((k, n)\)-threshold manner for some security parameter \(k\), e.g., \(k = 2f + 1\) and \(n = 3f + 1\), where \(f\) is the number of potentially faulty nodes. (By choosing \(k\) in this way, we ensure that faulty nodes can neither learn \(sk_L\) nor mount a denial-of-service attack preventing its use.) A message on L takes the form M = (m, z), where m is a string and z a unique sequential index number. Where applicable, we write messages in the form m = ⟨MessageType : payload⟩. The message type MessageType is syntactic sugar that indicates the function of a particular message. 4In cases where a blockchain without finality realizes a ledger, inconsistency is typically abstracted away by disregarding insufficiently deep blocks or “pruning” [115]. 5In practice, some code bases, e.g., LibraBFT [205], a variant of Hotstuff, have currently adopted multi-signatures, rather than threshold signatures, trading offreduced communication complexity for simpler engineering. With some added cost, oracle nodes can append threshold signatures to messages written to L even if the consensus protocol used for L doesn’t employ them.

2.3 Notation We denote the set of \(n\) oracle nodes running the ledger by \(O = \{O_i\}_{i=1}^{n}\). Such a set of nodes is often called a committee. For simplicity, we assume that the set of oracles implementing DON functionality, i.e., services on top of L, is identical with that maintaining L, but they can be distinct. We let \(pk_i\) denote the public key of player \(O_i\), and \(sk_i\) the corresponding private key. Most BFT algorithms require at least \(n = 3f + 1\) nodes, where \(f\) is the number of potentially faulty nodes; remaining nodes are honest, in the sense that they follow the protocol exactly as specified. We refer to the committee O as honest if it meets this requirement, i.e., has greater than a \(2/3\)-fraction of honest nodes. Unless otherwise stated, we assume that O is honest (and a static model of corruption). We use \(pk_O\) / \(sk_O\) interchangeably with \(pk_L\) / \(sk_L\), depending on the context. We let \(\sigma = \text{Sig}_{pk}[m]\) denote a signature on message \(m\) with respect to \(pk\), i.e., using corresponding private key \(sk\). Let \(\text{verify}(pk, \sigma, m) \rightarrow \{false, true\}\) denote a corresponding signature verification algorithm. (We leave key generation implicit throughout the paper.) We use the notation \(S\) to denote a data source and \(\mathcal{S}\) to denote the full set of \(n_S\) sources in a given context. We denote by MAINCHAIN a smart-contract enabled blockchain supported by a DON. We use the term relying contract to denote any smart contract on MAINCHAIN that communicates with a DON, and use the notation SC to denote such a contract. We generally assume that a DON supports a single main chain MAINCHAIN, although it can support multiple such chains, as we show in examples in Section 4. A DON can and typically will support multiple relying contracts on MAINCHAIN. (As noted above, a DON can alternatively support non-blockchain services.) 2.4 Note on Trust Models As noted above, DONs may be built atop committee-based consensus protocols, and we expect they will commonly use such protocols. There are many strong arguments that one of the two alternatives, committee-based or permissionless blockchains, provides stronger security than the other. It is important to recognize that the security of committee-based vs. permissionless decentralized systems is incommensurable. Compromising a PoW or a PoS blockchain via 51% attack requires that an adversary obtain majority resources ephemerally and potentially anonymously, for example by renting hash power in a PoW system. Such attacks in practice have already impacted several blockchains [200, 34]. In contrast, compromising a committee-based system means corrupting a threshold number (typically one-third) of its nodes, where the nodes may be publicly known, well resourced, and trustworthy entities. On the other hand, committee-based systems (as well as “hybrid” permissionless systems that support committees) can support more functionality than strictly per-

missionless systems. This includes the ability to maintain persistent secrets, such as signing and/or encryption keys—one possibility in our designs. We emphasize that DONs can in principle be built atop either a committee-based or permissionless consensus protocol and DON deployers may ultimately choose to adopt either approach. Bolstering trust models: A key feature of Chainlink today is the ability of users to select nodes based on decentralized records of their performance histories, as discussed in Section 3.6.4. The staking mechanism and Implicit-Incentive Framework we introduce in Section 9 together constitute a broadly scoped and rigorous mechanism-design framework that will empower users with a greatly expanded ability to gauge the security of DONs. This same framework will also make it possible for DONs themselves to enforce various security requirements on participating nodes and ensure operation within strong trust models. It is also possible using tools described in this paper for DONs to enforce special trust-model requirements, such as compliance with regulatory requirements. For example, using techniques discussed in Section 4.3, nodes can present evidence of node-operator characteristics, e.g., territory of operation, that can be used to help enforce compliance with, e.g., the General Data Protection Regulation (GDPR) Article 3 (“Territorial Scope”) [105]. Such compliance can otherwise be challenging to meet in decentralized systems [45]. Additionally, in Section 7 we discuss plans to strengthen the robustness of DONs through trust-minimization mechanisms on the main chains they support.

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ợ.

Decentralized Oracle Network Interface and Ca-

Decentralized Oracle Network Interface and Ca-

pabilities Here we briefly sketch the capabilities of DONs in terms of the simple but powerful interface they are designed to realize. Applications on a DON are composed of executables and adapters. An executable is a program whose core logic is a deterministic program, analogous to a smart contract. An executable also has a number of accompanying initiators, programs that call entry points in the executable’s logic when predetermined events occur—e.g., at certain times (like a cron job), when a price crosses a threshold, etc.—much like Keepers (see Section 3.6.3). Adapters provide interfaces to off-chain resources and may be called by either the initiators or core logic in executables. As their behavior may depend on that of external resources, initiators and adapters may behave non-deterministically. We describe the DON developer interface and the functioning of executables and adapters in terms of the three resources typically used to characterize computing systems: networking, compute, and storage. We give a brief overview of each of these resources below and provide more details in Appendix B.

Adapters connecting a DON with different resources including blockchains, web servers, storage, and IoT devices

3.1 Networking Adapters are interfaces through which executables running on a DON can send and receive data from off-DON systems. Adapters may be viewed as a generalization of the adapters used in Chainlink today [20]. Adapters may be bidirectional—i.e., they cannot just pull, but push data from a DON to a web server. They may also leverage distributed protocols as well as cryptographic functionality such as secure multi-party computation. Figure 9: Adapters connecting a DON, denoted DON1, with a range of different resources, including another DON, denoted DON2, a blockchain (main chain) and its mempool, external storage, a web server, and IoT devices (via a web server). Examples of external resources for which adapters might be created are shown in Fig. 9. They include: • Blockchains: An adapter can define how to send transactions to a blockchain and how to read blocks, individual transactions, or other state from it. An adapter can also be defined for a blockchain’s mempool. (See Section 3.5.) • Web servers: Adapters can define APIs through which data may be retrieved from web servers, including legacy systems that are not specially adapted for interfacing with DONs. Such adapters can also include APIs to send data to such servers. The web servers to which a DON connects may serve as gateways to additional resources, such as Internet-of-Things (IoT) devices.

• External storage: An adapter can define methods to read and write to storage services outside the DON, such as a decentralized file system [40, 188] or cloud storage. • Other DONs: Adapters can retrieve and transmit data between DONs. We expect that initial deployments of DONs will include a set of building block adapters for such commonly used external resources and will further allow DON-specific adapters to be published by DON nodes. As smart contract developers write adapters today, we expect that they will build even more powerful adapters using this advanced functionality. We expect that ultimately it will be possible for users to create new adapters in a permissionless manner. Some adapters must be constructed in a way that ensures the persistence and availability of external resources controlled by a DON. For example, cloud storage may require maintenance of a cloud services account. Additionally, a DON can perform decentralized management of private keys on behalf of users (as in, e.g., [160]) and/or executables. Consequently, the DON is capable of controlling resources, such as cryptocurrency, that may be used, e.g., for sending transactions on a target blockchain. See Appendix B.1 for further details on DON adapters, as Appendix C for a few example adapters. 3.2 Computation An executable is the basic unit of code on a DON. An executable is a pair exec = (logic, init). Here, logic is a deterministic program with a number of designated entry points (logic1, logic2, . . . , logicℓ) and init is a set of corresponding initiators (init1, init2, . . . , inite). To ensure the full auditability of the DON, an executable’s logic uses the underlying ledger L for all inputs and outputs. Thus, for instance, any adapter data serving as input to an executable must be stored first on L. Initiators: Initiators in Chainlink today cause event-dependent job executions on Chainlink nodes [21]. Initiators in DONs function in much the same way. A DON initiator, however, is specifically associated with an executable. An initiator may depend on an external event or state, on the current time, or on a predicate on DON state. With their dependency on events, initiators may of course behave non-deterministically (as of course may adapters). An initiator can execute within individual DON nodes and so need not rely on an adapter. (See Example 1 below.) Initiators are an important feature distinguishing executables from smart contracts. Because an executable can run in response to an initiator, it can effectively operate autonomously, as of course by extension can a hybrid contract incorporating the executable. One form of initiators today are Chainlink Keepers, which provide transaction

automation services, triggering smart contract execution—such as liquidation of undercollateralized loans and execution of limit-order trades—based on oracle reports. Conveniently, initiators in DONs may also be viewed as a way of specifying the service agreements that apply to an executable, as they define the circumstances under which the DON must call it. The following example illustrates how initiators work within an executable: Example 1 (Deviation-triggered price feed). A smart contract SC may require fresh price-feed data (see Section 3.6.3) whenever there is a substantial change, e.g., 1%, in the exchange rate between a pair of assets, e.g., ETH-USD. Volatility-sensitive price feeds are supported in Chainlink today, but it is instructive to see how they can be realized on a DON by means of an executable execfeed. The executable execfeed maintains the most recent ETH-USD price r on L, in the form of a sequence of ⟨NewPrice : j, r⟩entries, where j is an index incremented with each price update. An initiator init1 causes each node Oi to monitor the current ETH-USD price for deviations of at least 1% from the most recently stored price r with index j. Upon detection of such a deviation, Oi writes its current view ri of the new price to L using an entry of the form ⟨PriceView : i, j + 1, ri⟩. A second initiator init2 fires when at least k such PriceView-entries with new price values for index j + 1 created by distinct nodes have accumulated on L. Then, init2 invokes an entry point logic2 to compute the median \(\rho\) of the first \(k\) fresh, valid priceview values and writes a fresh value ⟨NewPrice : j + 1, ρ⟩to L . (Operationally, nodes may take turns as designated writers.) A third initiator init3 watches for NewPrice entries on L. Whenever a new report ⟨NewPrice : j, r⟩appears there, it invokes an entry point logic3 that pushes (j, r) to SC using an adapter. As we have noted, an executable is similar in its capabilities to a smart contract. Apart from its higher performance, though, it differs from a typical main chain contract in two essential ways: 1. Confidentiality: An executable can perform confidential computation, i.e., a secret program may process cleartext inputs, or a published program may process secret input data, or a combination of both. In a simple model, secret data can be accessed by DON nodes, which conceal intermediate results and disclose only processed and sanitized values to MAINCHAIN. It is also possible to conceal sensitive data from DONs themselves: DONs are meant to support approaches such as multi-party computation, e.g., [42, 157], and trusted execution environments (TEEs) [84, 133, 152, 229] for this purpose.6 6By extension, keeping executables themselves secret with respect to DON nodes is also possible, although this is only practical today for non-trivial executables using TEEs.

  1. Supporting role: An executable is meant to support smart contracts on a main chain, rather than replace them. An executable has several limitations that a smart contract does not: (a) Trust model: An executable operates within the trust model defined by the DON: Its correct execution relies on the honest behavior of O. (A main chain can, however, provide some guard rails against DON malfeasance, as discussed in Section 7.3.) (b) Asset access: A DON can control an account on a blockchain—and thus control assets on it through an adapter. But a DON cannot authoritatively represent assets created on a main chain, e.g., Ether or ERC20 tokens, since their native chain maintains the authoritative record of their ownership. (c) Lifecycle: DONs may be stood up intentionally with limited lifetimes, as defined by on-chain service level agreements between DONs and the owners of relying contracts. Blockchains, in contrast, are meant to function as permanent archival systems. See Appendix B.2 for further details on DON computation. 3.3 Storage As a committee-based system, a DON can store moderate amounts of data persistently on L at much lower cost than a permissionless blockchain. Additionally, via adapters, DONs can reference external decentralized systems for data storage, e.g., Filecoin [85], and can thereby connect such systems to smart contracts. This option is particularly attractive for bulk data as a means of addressing the pervasive problem of “bloat” in blockchain systems. DONs can thus store data locally or externally for use in their specifically supported services. A DON can additionally make use of such data in a confidential way, computing on data that is: (1) secret-shared across DON nodes or encrypted under a key managed by DON nodes in ways suitable for secure multi-party computation or partial or fully homomorphic encryption; or (2) protected using a trusted execution environment. We expect that DONs will adopt a simple memory-management model common to smart-contract systems: An executable may only write to its own memory. Executables may, however, read from the memory of other executables. See Appendix B.3 for further details on DON storage. 3.4 Transaction-Execution Framework (TEF) DONs are intended to support contracts on a main chain MAINCHAIN (or on multiple main chains). The Transaction-Execution Framework (TEF), discussed in detail

in Section 6, is a general-purpose approach to the efficient execution of a contract SC across MAINCHAIN and a DON. The TEF is intended to support FSS and layer-2 technologies—simultaneously, if desired. Indeed, it is likely to serve as the main vehicle for use of FSS (and for that reason, we do not further discuss FSS in this section). Briefly, in TEF an original target contract SC designed or developed for MAINCHAIN is refactored into a hybrid contract. This refactoring produces the two interoperating pieces of the hybrid contract: a MAINCHAIN contract SCa that we refer to for clarity in the context of TEFs as an anchor contract and an executable execs on a DON. The contract SCa custodies users’ assets, executes authoritative state transitions, and also provides guard rails (see Section 7.3) against failures in the DON. The executable execs sequences transactions and provides associated oracle data for them. It can bundle transactions for SCa in any of a number of ways—e.g., using validity-proof-based or optimistic rollups, confidential execution by the DON, etc. We expect to develop tools that make it easy for developers to partition a contract SC written in a high-level language into pieces of MAINCHAIN and DON logic, SCa and execs respectively, that compose securely and efficiently. Using TEF to integrate high-performance transaction schemes with high-performance oracles is integral to our oracle scaling approach. 3.5 Mempool Services An important application-layer feature that we intend to deploy on DONs in support of FSS and the TEF are Mempool Services (MS). MS may be viewed as an adapter, but one with first-class support. MS provides support for legacy-compatible transaction processing. In this use, MS ingests from a main chain’s mempool those transactions intended for a target contract SC on MAINCHAIN. MS then passes these transactions to an executable on the DON, where they are processed in the desired way. MS data can be used by the DON to compose transactions that can then be passed directly to SC from the DON or to another contract that calls SC. For example, the DON can forward transactions harvested via MS, or it can use MS data to set gas prices for transactions it sends to MAINCHAIN. Because it monitors the mempool, MS can obtain transactions from users interacting directly with SC. Thus users may continue to generate their transactions using legacy software, i.e., applications unaware of the existence of MS and MS-configured contracts. (In this case, SC must be changed to ignore the original transactions and accept only those processed by the MS, so as to avoid double-processing.) For use with a target contract SC, MS can be used with FSS and/or the TEF.

3.6 Stepping Stones: Existing Chainlink Capabilities 3.6.1 Off-Chain Reporting (OCR) Off-Chain Reporting (OCR) [60] is a mechanism in Chainlink for oracle report aggregation and transmission to a relying contract SC. Recently deployed for Chainlink price feed networks, it represents a first step along the path to full DONs. At its core, OCR is a BFT protocol designed to operate in a partially synchronous network. It ensures liveness and correctness in the presence of \(f < n/3\) arbitrarily faulty nodes, guaranteeing the properties of Byzantine reliable broadcast, but it is not a complete BFT consensus protocol. Nodes do not maintain message logs that are consistent in the sense of representing a ledger that is identical in all of their views, and the leader of the protocol may equivocate without violating safety. OCR is currently designed for a particular message type: medianized aggregation of (at least \(2f + 1\)) values reported by participating nodes. It provides a key assurance on the reports it outputs for SC, called attested reports: The median value in an attested report is equal to or lies between values reported by two honest nodes. This property is the key safety condition for OCR. The leader may have some influence on the median value in an attested report, but only subject to this correctness condition. OCR can be extended to message types that aggregate values in different ways. While the Chainlink network’s liveness and correctness goals today do not require OCR to be a full-blown consensus protocol, they do require OCR to provide some additional forms of functionality not present in conventional BFT protocols, most notably: 1. All-or-nothing off-chain report broadcast: OCR ensures that an attested report is made quickly available to all honest nodes or none of them. This is a fairness property that helps ensure that honest nodes have an opportunity to participate in attested report transmission. 2. Reliable transmission: OCR ensures, even in the presence of faulty or malicious nodes, that all OCR reports and messages are transmitted to SC within a certain, pre-defined interval of time. This is a liveness property. 3. Contract-based trust minimization: SC filters out potentially erroneous OCRgenerated reports, e.g., if their reported values deviate significantly from other recently received ones. This is a form of extra-protocol correctness enforcement. All three of these properties will play a natural role in DONs. All-or-nothing offchain (DON) broadcast is an important building block for cryptoeconomic assurances around reliable transmission, which is in turn an essential adapter property. Trust minimization in SC is a type of guard rail, as discussed in Section 7.3. OCR also provides a basis for operational deployment and refinement of BFT protocols in Chainlink’s oracle networks and thus, as noted above, a path to the full functionality of DONs.

3.6.2 DECO and Town Crier DECO [234] and Town Crier [233] are a pair of related technologies currently being developed in Chainlink networks. Most web servers today allow users to connect over a secure channel using a protocol called Transport Layer Security (TLS) [94]. (HTTPS indicates a variant of HTTP that is enabled with TLS, i.e., URLs prefixed with “https” denote use of TLS for security.) Most TLS-enabled servers have a notable limitation, though: They don’t digitally sign data. Consequently, a user or Prover cannot present the data she receives from a server to a third party or Verifier, such as an oracle or smart contract, in a way that ensures the data’s authenticity. Even if a server were to digitally sign data, there remains a problem of confidentiality. A Prover may wish to redact or modify sensitive data before presenting it to a Verifier. Digital signatures are designed specifically to invalidate modified data, however. They thus prevent a Prover from making confidentiality-preserving alterations to data. (See Section 7.1 for more discussion.) DECO and Town Crier are designed to allow a Prover to obtain data from a web server and present it to a Verifier in a way that ensures integrity and confidentiality. The two systems preserve integrity in the sense that they ensure that data presented by the Prover to the Verifier originates authentically from the target server. They support confidentiality in the sense of allowing the Prover to redact or modify data (while still preserving integrity). A key feature of both systems is that they do not require any modifications to a target web server. They can operate with any existing TLS-enabled server. In fact, they are transparent to the server: From the viewpoint of the server, the Prover is establishing an ordinary connection. The two systems have similar goals, but differ in their trust models and implementations as we now briefly explain. DECO makes fundamental use of cryptographic protocols to achieve its integrity and confidentiality properties. While establishing a session with a target server using DECO, the Prover engages at the same time in an interactive protocol with the Verifier. This protocol enables the Prover to prove to the Verifier that it has received a given piece of data D from the server during its current session. The Prover can alternatively present the Verifier with a zero-knowledge proof of some property of D and thus not reveal D directly. In a typical use of DECO, a user or a single node can export data D from a private session with a web server to all of the nodes in a DON. As a result, the full DON can attest to the authenticity of D (or a fact derived from D via a zero-knowledge proof). In addition to the example applications given later in the paper, this capability can be used to amplify high-integrity access to a data source by a DON. Even if only one node has direct access to a data source—due, for instance, to an exclusive arrangement with a data provider—it remains possible for the entire DON to attest to the correctness of

reports emitted by that node. Town Crier relies on the use of a trusted execution environment (TEE) such as Intel SGX. Briefly, a TEE functions as a kind of black box that executes applications in a tamperproof and confidential way. In principle, even the owner of the host on which the TEE is running can neither (undetectably) alter a TEE-protected application nor view the application’s state, which may include secret data. Town Crier can achieve all of the functionality of DECO and more. DECO constrains the Prover to interaction with a single Verifier. In contrast, Town Crier enables a Prover to generate a publicly verifiable proof on data D fetched from a target server, i.e., a proof that anyone, even a smart contract, can verify directly. Town Crier can also securely ingest and make use of secrets (e.g., user credentials). The main limitation of Town Crier is its reliance on TEEs. Production TEEs have recently been shown to have a number of serious vulnerabilities, although the technology is in its infancy and will undoubtedly mature. See Appendices B.2.1 and B.2.2 for further discussion of TEEs. For a few example applications of DECO and Town Crier, see Sections 4.3, 4.5 and 9.4.3 and Appendix C.1. 3.6.3 Existing On-Chain Chainlink Services Chainlink oracle networks provide a number of main services across a multiplicity of blockchains and other decentralized systems today. Further evolution as described in this whitepaper will endow these existing services with additional capabilities and reach. Three examples are: Data feeds: Today, the majority of Chainlink users relying on smart contracts make use of data feeds. These are reports on the current value of key pieces of data according to authoritative off-chain sources. For example, price feeds are feeds reporting the prices of assets—cryptocurrencies, commodities, forex, indexes, equities, etc.—according to exchanges or data-aggregation services. Such feeds today already help secure billions of dollars in on-chain value through their use in DeFi systems such as Aave [147] and Synthetix [208]. Other examples of Chainlink data feeds include weather data for parametric crop insurance [75] and election data [93], among a number of others. The deployment of DONs and other technologies described in this paper will enhance provision of data feeds in Chainlink networks in many ways, including: • Scaling: OCR and subsequently DONs aim to enable Chainlink services to scale dramatically across the many blockchains they support. For example, we expect that DONs will help increase the number of data feeds provided by nodes using Chainlink from 100s to 1000s and beyond. Such scaling will help the Chainlink ecosystem achieve its goal of furnishing data relevant to smart contracts comprehensively and both meeting and anticipating existing and future needs.

• Enhanced security: By storing intermediate reports, DONs will retain records of node behaviors for high-fidelity monitoring and measurement of their performance and accuracy, enabling strong empirical grounding of reputation systems for Chainlink nodes. FSS and the TEF will enable price feeds to be incorporated with transaction data in flexible ways that prevent attacks such as front-running. (Explicit) staking will bolster existing cryptoeconomic protection of the security of data feeds. • Feed agility: As blockchain-agnostic systems (indeed, more broadly, consumeragnostic systems), DONs can facilitate the provision of data feeds to a multiplicity of relying systems. A single DON can push a given feed simultaneously to a set of different blockchains, eliminating the need for per-chain oracle networks and enabling rapid deployment of existing feeds on new blockchains and of additional feeds across currently serviced blockchains. • Confidentiality: The ability to perform generalized computation in a DON enables computations on sensitive data to take place offchain, avoiding on-chain exposure. Additionally, using DECO or Town Crier, it is possible to achieve even stronger confidentiality, allowing report generation based on data that isn’t exposed even to DON nodes. See Section 4.3 and Section 4.5 for examples. Verifiable Random Functions (VRFs): Several types of DApps require a verifiably correct source of randomness to enable verification of their own fair operation. Non-Fungible Tokens (NFTs) are an example. The rarity of NFT features in Aavegotchi [23] and Axie Infinity [35] is determined by Chainlink VRF, as is the distribution of NFTs by means of ticket-based drawings in Ether Cards [102]; the wide variety of gaming DApps whose outcomes are randomized; and unconventional financial instruments, e.g., no-loss savings games such as PoolTogether [89], which allocate funds to random winners. Other blockchain and non-blockchain applications also require secure sources of randomness, including selection of decentralized-system committees and the execution of lotteries. While block hashes can serve as a source of unpredictable randomness, they are vulnerable to manipulation by adversarial miners (and to some extent by users submitting transactions). Chainlink VRF [78] offers a considerably more secure alternative. An oracle has an associated private / public key pair (sk, pk) whose private key is maintained offchain and whose public key pk is published. To output a random value, it applies sk to an unpredictable seed x furnished by a relying contract (e.g., a block hash and DApp-specific parameters) using a function F, yielding y = Fsk(x) along with a proof of correctness. (See [180] for the VRF available on Chainlink.) What makes a VRF verifiable is the fact that with knowledge of pk, it is possible to check the correctness of the proof and therefore of y. The value y is consequently unpredictable to an adversary that cannot predict x or learn sk and infeasible for the service to manipulate.

Chainlink VRF may be viewed as just one of a family of applications that involve custodianship of private keys offchain. More generally, DONs can offer secure, decentralized storage of individual keys for applications and/or users, and combine this capability with generalized computation. The result is a host of applications, of which we give some examples in this paper, including key management for Proof of Reserves (see Section 4.1) and for users’ decentralized credentials (and other digital assets) (see Section 4.3). Keepers: Chainlink Keepers [87] enable developers to write code for decentralized execution of off-chain jobs, generally to trigger execution of relying smart contracts. Before the advent of Keepers, it was common for developers to operate such off-chain logic themselves, creating centralized points of failure (as well as considerable duplicated development effort). Keepers instead provide an easy-to-use framework for decentralized outsourcing of these operations, enabling shorter development cycles and strong assurance of liveness and other security properties. Keepers can support any of a wide variety of triggering goals, including price-dependent liquidation of loans or execution of financial transactions, time-dependent initiation of airdrops or payments in systems with yield harvesting, and so forth. In the DON framework, initiators may be viewed as a generalization of Keepers in several senses. Initiators may make use of adapters, and thus can leverage a modularized library of interfaces to on-chain and off-chain systems, permitting rapid development of secure, sophisticated functionality. Initiators initiate computation in executables, which themselves offer the full versatility of DONs, permitting the wide range of decentralized services we present in this paper for on-chain and off-chain applications. 3.6.4 Node Reputation / Performance History The existing Chainlink ecosystem natively documents the performance histories of contributing nodes on chain. This feature has given rise to a collection of reputationoriented resources that ingest, filter, and visualize performance data on individual node operators and data feeds. Users can reference these resources to make informed decisions in their selection of nodes and to monitor the operation of existing networks. Similar capabilities will help users choose DONs. For example, permissionless marketplaces today such as market.link allow node operators to list their oracle services and attest to their off-chain identities through services such as Keybase [4], which bind the profile of a node in Chainlink to its owner’s existing domain names and social media accounts. Additionally, performance analytics tools, such as those available at market.link and reputation.link, allow users to view statistics on the historical performance of individual nodes, including their average response latency, the deviation of values in their reports from consensus values relayed on chain, revenue generated, jobs fulfilled, and more. These analytics tools also allow users to track the adoption of various oracle networks by other users, a form of

implicit endorsement of the nodes securing such networks. The result is a flat “web of trust” in which, by using particular nodes, high-value decentralized applications create a signal of their trust in those nodes that other users can observe and factor into their own node-selection decisions. With DONs (and initially with OCR) comes a shift in transaction processing and contract activity more generally offchain. A decentralized model for recording node performance remains possible within the DON itself. Indeed, the high performance and data capacity of DONs make it possible to construct records in a fine-grained way and also to perform decentralized computation on these records, yielding trustworthy summaries that can be consumed by reputation services and checkpointed on MAINCHAIN. While it is possible for a DON in principle to misrepresent the behavior of constituent nodes if a large fraction of nodes is corrupted, we note that the collective performance of a DON itself in delivering on-chain data is visible on MAINCHAIN and thus cannot be misrepresented. Additionally, we plan to explore mechanisms that incentivize accurate internal reporting of node behaviors in a DON. For example, by reporting the subset of high-performing nodes that most quickly return data contributing to a report relayed on chain, a DON creates an incentive for nodes to contest incorrect reports: Incorrectly including nodes in this subset means incorrectly excluding nodes that should have been included and therefore invalidly penalizing them. Repeated reporting failures by a DON would also create an incentive for honest nodes to leave the DON. Decentralized compilation of accurate performance histories and the consequent ability of users to identify high-performing nodes and for node operators to build reputations are important distinguishing features of the Chainlink ecosystem. We show in Section 9 how we can reason about them as a key piece of a rigorous and expansive view of the economic security provided by DONs.

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.

Adapters connecting a DON with different resources including blockchains, web servers, storage, and IoT devices

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.

Decentralized Services Enabled by Decentralized

Decentralized Services Enabled by Decentralized

Oracle Networks To illustrate the versatility of DONs and how they enable a host of new services, we present five examples of DON-based applications in this section and describe the hybrid contracts that realize them: (1) Proof of Reserves, a form of cross-chain service; (2) Interfacing with enterprise / legacy systems, that is, creating a middleware-based abstraction layer that facilitates development of blockchain applications with minimal blockchain-specific code or expertise; (3) Decentralized identity, tools enabling users to obtain and manage their own identity documents and credentials; (4) Priority channels, a service that ensures timely inclusion of critical-infrastructure transactions (e.g., oracle reports) on a blockchain; and (5) Confidentiality-preserving DeFi, that is, financial smart contracts that conceal the sensitive data of participating parties. Here, we

use SC to denote the MAINCHAIN part of a hybrid contract and describe the DON component separately or in terms of an executable exec. 4.1 Proof of Reserves For many applications, it is useful to relay state between or among blockchains. A popular application of such services is cryptocurrency wrapping. Wrapped coins such as WBTC [15] are becoming a popular asset in Decentralized Finance (DeFi). They involve depositing the “wrapped” backing asset on its source blockchain MAINCHAIN(1) and creating a corresponding token on a different, target blockchain MAINCHAIN(2). For example, WBTC is an ERC20 token on the Ethereum blockchain that corresponds to BTC on the Bitcoin blockchain. Because contracts on MAINCHAIN(2) do not have direct visibility into MAINCHAIN(1), they must rely explicitly or implicitly on an oracle to report on deposits of the wrapped asset in a smart contract, producing what is sometimes called a Proof of Reserves. In WBTC [15], for example, custodian BitGo holds BTC and issues WBTC, with the Chainlink network providing Proofs of Reserve [76]. A DON can itself provide a Proof of Reserves. With a DON, however, it is possible to go further. A DON can manage secrets and, through use of appropriate adapters, can transact on any desired blockchain. Consequently, it is possible for the DON to act as one among a number of custodians—or even as a sole, decentralized custodian—for a wrapped asset. DONs can thereby serve as a platform to enhance the security of existing services that use Proofs of Reserves. For example, suppose that MAINCHAIN(1) is Bitcoin and MAINCHAIN(2) is Ethereum. On MAINCHAIN(2), a contract SC issues tokens representing wrapped BTC. The DON controls a BTC address addr(1) DON. To wrap BTC, then, a user U sends X BTC from addr(1) U to addr(1) DON along with a MAINCHAIN(2)-address addr(2) U . The DON monitors addr(1) DON via an adapter to MAINCHAIN(1). On observing U’s deposit, with sufficiently high-probability confirmation, it sends a message to SC via an adapter to MAINCHAIN(2). This message instructs SC to mint X tokens for addr(2) U . For U to release X tokens, the reverse happens. On MAINCHAIN(1), however, addr(1) DON sends X BTC to addr(1) U (or to another address, if thus requested by the user). These protocols can be adapted, of course, to work with exchanges, rather than directly with users. 4.2 Interfacing with Enterprise / Legacy Systems DONs can serve as bridges between and among blockchains, as in the example of Proof of Reserves, but another objective is for them to act as bidirectional bridges between blockchains and legacy systems [176] or blockchain-like systems such as central bank digital currencies [30]. Enterprises face a number of challenges in connecting their existing systems and processes to decentralized systems, including:

• Blockchain agility: Blockchain systems change rapidly. An enterprise may confront the rapid new appearance or rise in popularity of blockchains on which counterparties wish to conduct transactions, but for which the enterprise has no support in its existing infrastructure. In general, blockchains’ dynamism makes it difficult for individual enterprises to remain abreast of the full ecosystem. • Blockchain-specific development resources: For many organizations, hiring or incubating cutting-edge blockchain expertise is difficult, particularly in view of the challenge of agility. • Private-key management: Managing private keys for blockchains or cryptocurrencies requires operational expertise distinct from that of traditional cybersecurity practices and unavailable to many enterprises. • Confidentiality: Enterprises are leery of exposing their sensitive and proprietary data on chain. To address the first three of these difficulties, developers can simply use a DON as a secure middleware layer to enable enterprise systems to read from or write to blockchains. The DON can abstract away detailed technical considerations such as gas dynamics, chain reorganization, and so forth, for both developers and users. By presenting a streamlined blockchain interface to enterprise systems, a DON can thus considerably simplify the development of blockchain-aware enterprise applications, removing the burden from enterprises of acquiring or incubating blockchain-specific development resources. Such use of DONs is especially attractive in that it enables enterprise developers to create smart-contract applications that are largely blockchain agnostic. As a result, the larger the set of blockchains for which a DON is instrumented to act as middleware, the larger the set of blockchains to which enterprise users can gain easy access. Developers can port applications from existing blockchains to new ones with minimal modification to their internally developed applications. To address the additional problem of confidentiality, developers can appeal to the tools we introduce in this paper and expect to deploy in support of DON applications. These include DECO and Town Crier Section 3.6.2 as well as confidentiality-preserving API modifications discussed in Section 7.1.2 and a number of application-specific approaches covered in the remainder of this section. These DON systems can provide high-integrity, on-chain attestations about enterprise system state without revealing sensitive enterprise source data on chain. 4.3 Decentralized Identity Decentralized identity is a general term for the notion that users should be able to obtain and manage their own credentials, rather than relying on third parties to do so. Decentralized credentials are attestations to attributes or assertions of the holder,

which are often called claims. Credentials are digitally signed by entities, often called issuers, that can authoritatively associate claims with users. In most proposed schemes, claims are associated with a Decentralized Identifier (DID), a universal identifier for a given user. Credentials are bound to a public key whose private key the user holds. The user can thus prove possession of a claim using her private key. Visionary as decentralized identity is, existing and proposed schemes, e.g., [14, 92, 129, 216], have three severe limitations: • Lack of legacy compatibility: Existing decentralized identity systems rely on a community of authorities, called issuers, to produce DID credentials. Because existing web services do not generally digitally sign data, issuers must be launched as special-purpose systems. Because there is no incentive to do this without a decentralized-identity ecosystem, a chicken-and-the-egg problem results. In other words, it’s unclear how to bootstrap an issuer ecosystem. • Unworkable key management: Decentralized identity systems require users to manage private keys, something that experience with cryptocurrency has shown to be an unworkable onus. It is estimated that some 4,000,000 Bitcoin have been lost forever because of key management failures [194], and many users store their crypto assets with exchanges [193], thereby undermining decentralization. • Lack of privacy-preserving Sybil resistance: A basic security requirement of applications such as voting, fair allocation of tokens during token sales, etc. is that users be unable to assert multiple identities. Existing decentralized identity proposals require users to reveal their real-world identities in order to achieve such Sybil resistance, thereby undermining important privacy assurances. It is possible to address these problems using a combination of a committee of nodes performing distributed computation within a DON and the use of tools such as DECO or Town Crier, as shown in a system called CanDID [160]. DECO or Town Crier can by design turn existing web services without modification into confidentiality-preserving credential issuers. They enable a DON to export relevant data for this purpose into a credential while concealing sensitive data that should not appear in the credential. In addition, to facilitate key recovery for users, thus addressing the key-management problem, a DON can allow users to store private keys in secret-shared form. Users can recover their keys by proving to the nodes in the DON—similarly, using Town Crier or DECO—an ability to log into accounts with a set of predetermined web providers (e.g., Twitter, Google, Facebook). The benefit of using Town Crier or DECO, as opposed to OAUTH, is user privacy. Those two tools enable a user to avoid revealing to the DON a web provider identifier—from which real-world identities can often be derived. Finally, to provide Sybil resistance, as shown in [160], it is possible for a DON to perform a privacy-preserving transformation of unique real-world identifiers for users (e.g., Social Security Numbers (SSNs)) into on-chain identifiers upon user registration.

The system can thereby detect duplicate registrations without sensitive data such as SSNs being revealed to individual DON nodes.7 A DON can provide any of these services on behalf of external decentralized identity systems on permissionless or permissioned blockchains, e.g., instances of Hyperledger Indy [129]. Example application: KYC: Decentralized identity holds promise as a means to streamline requirements for financial applications on blockchains while improving user privacy. Two challenges it can help address are accreditation and compliance obligations under anti-money-laundering / know-your-customer (AML / KYC) regulations. AML regulations in many countries require financial institutions (and other businesses) to establish and verify the identities of individuals and businesses with which they perform transactions. KYC forms one component of a financial institution’s broader AML policy, which also typically involves monitoring user behaviors and watching fund flows, among other things. KYC typically involves user presentation of identity credentials in some form (e.g., entry into an online web form, holding up an identity document in front of a user’s face in a video session, etc.). Secure creation of and presentation of decentralized credentials could in principle be a beneficial alternative in several respects, namely by: (1) Making the KYC process more efficient for users and financial institutions, because once a credential is obtained, it could be presented seamlessly to any financial institution; (2) Reducing fraud by reducing opportunities for identity theft through compromise of personally identifiable information (PII) and spoofing during video verification; and (3) Reducing the risk of PII compromise in financial institutions, as users retain control of their own data. Given the multi-billion-dollar penalties paid by financial institutions for AML compliance failures, and the many financial institutions spending millions of dollars annually on KYC, improvements could yield considerable savings for financial institutions and, by extension, for consumers [196]. While the traditional financial sector is slow to adopt new compliance tools, DeFi systems are increasingly embracing it [43]. Example application: Under-collateralized loans: Most DeFi applications that support lending today originate only fully collateralized loans. These are loans made to borrowers who deposit cryptocurrency assets of value exceeding that of the loans. Interest has arisen recently in what the DeFi community generally refers to as undercollateralized loans. These, by contrast, are loans for which the corresponding collateral has value that is less than that of the principal of the loan. Under-collateralized loans resemble loans often made by traditional financial institutions. Rather than relying on deposited collateral as a guarantee of loan repayment, they instead base lending decisions on the credit histories of borrowers. 7This transformation relies on a distributed pseudorandom function (PRF).

Under-collateralized loans constitute a nascent but growing part of the DeFi lending market. They rely upon mechanisms like those employed by traditional financial institutions, such as legal contracts [91]. An essential requirement for their growth will be the ability to furnish data on user creditworthiness—a key factor in conventional lending decisions—to DeFi systems in a way that provides strong integrity, i.e., assurance of correct data. A DON-enabled decentralized identity system would enable would-be borrowers to generate high-assurance credentials attesting to their creditworthiness while preserving the confidentiality of sensitive information. Specifically, borrowers can generate these credentials based on records from authoritative online sources while exposing only the data attested to by the DON, without exposing other, potentially sensitive data. For example, a borrower can generate a credential indicating that her credit score with a set of credit bureaus exceeds a particular threshold (e.g., 750), without revealing her precise score or any other data in her records. Additionally, if desired, such credentials can be generated anonymously, i.e., the user’s name can be treated as sensitive data and itself not exposed to oracle nodes or in her decentralized credential. The credential itself can be used on chain or offchain, depending on the application. In summary, a borrower can provide essential information to lenders on their credit histories with strong integrity and without risk of exposure of unnecessary, sensitive data. A borrower can also provide a variety of other confidentiality-preserving credentials helpful in making lending decisions. For example, credentials can attest to a borrower’s possession of (off-chain) assets, as we show in our next example. Example application: Accreditation: Many jurisdictions limit the class of investor to which unregistered securities may be sold. For example, in the U.S., SEC Regulation D stipulates that to be accredited for such investment opportunities, an individual must possess a net worth of $1 million, meet certain minimum income requirements, or have certain professional qualifications [209, 210]. Current accreditation processes are cumbersome and inefficient, often requiring a letter of attestation from an accountant, or similar evidence. A decentralized identity system would enable users to generate credentials from existing online financial services accounts that prove compliance with accreditation regulations, facilitating a more efficient and privacy-preserving KYC process. The privacy-preserving properties of DECO and Town Crier, moreover, would allow these credentials to be generated with a strong assurance of integrity without directly revealing details of a user’s financial status. For example, a user could generate a credential proving that she has a net worth of at least $1 million without revealing any additional information about her financial status. 4.4 Priority Channels Priority channels are a useful new service that is easy to build using a DON. Their

Priority channel diagram showing a miner guarantee for transaction ordering to protect against MEV

goal is to deliver select, high-priority transactions in a timely way on MAINCHAIN during periods of network congestion. Priority channels may be viewed as a form of futures contract on block space and thus as a cryptocommodity, a term coined as part of Project Chicago [61, 136]. Priority channels are intended specifically for miners to enable infrastructure services, such as oracles, governance functions for contracts, etc.—not for ordinary userlevel activities such as financial transactions. In fact, as designed here, a priority channel implemented by less than 100% of the mining power in the network can only provide loose bounds on delivery times, preventing its use for highly speed-dependent goals such as front-running. Figure 10: A priority channel is a guarantee by a miner M—or, more generally, a set of miners M—to a user U that her transaction \(\tau\) will be mined within D blocks of inclusion in the mempool. A contract SC can use DON monitoring to enforce the service terms of the channel. A priority channel takes the form of an agreement between a miner or set of miners (or mining pools) M that provides the channel and a user U that pays a fee for access. M agrees that when U submits a transaction \(\tau\) to the mempool (with any gas price,

but a pre-agreed-upon gas limit), M will place it on chain within the next D blocks.8 The idea is depicted schematically in Fig. 10. Priority-channel contract description: A priority channel may be realized as a hybrid smart contract roughly as follows. We let SC denote the logic on MAINCHAIN and that on the DON by exec. SC accepts a deposit / stake \(d from M and an advance payment \)p from U. A DON executable exec monitors the mempool, triggering on placement of a transaction by U. It sends a success message to SC if U submits a transaction that M mines in a timely way and a failure message in case of a service failure. SC sends payment $p to M given a success message and sends all remaining funds, including $d, to U if it receives a failure message. Upon successful termination, it releases deposit $d to M. The miner M can of course provide priority channels simultaneously to multiple users and can open a priority channel with U for a pre-agreed-upon number of messages. 4.5 Confidentiality-Preserving DeFi / Mixicles Today, DeFi applications [1] provide little to no confidentiality for users: All transactions are visible on chain. Various zero-knowledge-based approaches, e.g., [149, 217], can provide transaction privacy, and the TEF is general enough to support them. But these approaches are not comprehensive, and do not, for example, typically conceal the asset on which a transaction is based. The broad set of computational tools we ultimately intend to support in DONs will enable privacy in a number of different ways that can plug such gaps, helping complement the privacy assurances of other systems. For example, Mixicles, a confidentialitypreserving DeFi instrument proposed by Chainlink Labs researchers [135], can conceal the asset type backing a financial instrument, and fit very naturally into the DON framework. Mixicles are most easily explained in terms of their use to realize a simple binary option. A binary option is a financial instrument in which two users, which we’ll refer to here for consistency with [135] as players, bet on an event with two possible outcomes, e.g., whether or not an asset exceeds a target price at a predesignated time. The following example illustrates the idea. Example 2. Alice and Bob are parties to a binary option based on the value of an asset called Carol’s Bubble Token (CBT). Alice bets that CBT will have a market price of at least 250 USD at time T = noon on 21 June 2025; Bob bets the reverse. Each player deposits 100 ETH by a prespecified deadline. The player with the winning position receives 200 ETH (i.e., gains 100 ETH). 8D must of course be large enough to ensure that M can comply with high probability. For instance, if M controls 20% of the mining power in the network, it might choose D = 100, ensuring a failure probability of ≈2 × 10−10, i.e., less than one in a billion.

Diagram of basic Mixicle showing on-chain secrecy with private oracle reporting

Given an existing Chainlink oracle network O, it is easy to implement a smart contract SC that realizes the agreement in Example 2. The two players each deposit 100 ETH in SC. Sometime after T, a query q is sent to O requesting the price r of CBT at time T. O sends a report r of this price to SC. SC then sends money to Alice if \(r \geq 250\) and Bob if not. This approach, however, reveals \(r\) on chain—making it easy for an observer to deduce the asset underlying the binary option. In the terminology of Mixicles, it is helpful to think conceptually of the outcome of SC in terms of a Switch that transmits a binary value computed as a predicate switch(\(r\)). In our example, switch(\(r\)) = 0 if \(r \geq 250\); given this outcome, Alice wins. Otherwise switch(r) = 1 and Bob wins. A DON can realize a basic Mixicle as a hybrid contract by running an executable exec that computes switch(r) and reports it on chain to SC. We show this construction in Fig. 11. Figure 11: Diagram of basic Mixicle in Example 2. To provide on-chain secrecy for report r, and thus the asset underlying the binary option, the oracle sends to the contract SC via Switch only the binary value switch(r). We specify an adapter ConfSwitch in Appendix C.3 that makes it easy to achieve this goal in a DON. The basic idea behind ConfSwitch is quite simple. Instead of reporting the value r, ConfSwitch reports only the binary switch value switch(r). SC can be designed to make a correct payment based on switch(r) alone, and switch(r) by itself reveals no information about the underlying asset—CBT in our example. Additionally, by placing a ciphertext on (q, r) on the ledger encrypted under pkaud, the public key of an auditor, the adapter ConfSwitch creates a confidentiality-preserving audit trail. The basic Mixicle we’ve chosen for simplicity to describe here conceals only the asset and bet behind the binary option in our example. A full-blown Mixicle [135] can provide two forms of confidentiality. It conceals from observers: (1) What event the players bet on (i.e., q and r) but also (2) Which player won the bet. Since Mixicles are executed on MAINCHAIN, either one player would need to relay switch(r) from the DON to MAINCHAIN, or an executable exec could be created that

is triggered on output by ConfSwitch and calls another adapter to send switch(r) to MAINCHAIN. A third, subtle type of confidentiality is also worth considering. In a basic implementation of ConfSwitch, O is running the adapter on the DON and thus learns the asset—CBT in our example—and thus the nature of the binary option. As discussed in Appendix C.3, however, it is additionally possible to use DECO or Town Crier to conceal even this information from O. In this case, the O learns no more information than a public observer of SC. For further details on Mixicles, we refer readers to [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ọ

Diagram of basic Mixicle showing on-chain secrecy with private oracle reporting

Priority channel diagram showing a miner guarantee for transaction ordering to protect against MEV

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].

Fair Sequencing Services

Fair Sequencing Services

One important service that we expect DONs will offer that leverages their networking, computation, and storage capabilities is called Fair Sequencing Services (FSS). Although FSS may be viewed simply as an application realized within the DON framework, we highlight it as a service that we believe will be in high demand across blockchains, and which we expect the Chainlink network to support actively. When executed on public blockchain networks, many of today’s DeFi applications reveal information that can be exploited by users to their own benefit, analogous to the kind of insider leaks and manipulation opportunities that are pervasive in existing markets [64, 155]. FSS instead paves the way toward a fair DeFi ecosystem. FSS helps developers to build DeFi contracts that are protected from market manipulation resulting from information leakage. Given the problems we highlight below, FSS is especially attractive for layer-2 services and fits within the framework for such services that we discuss in Section 6. The challenge: In existing permissionless systems, transactions are ordered entirely at the discretion of miners. In permissioned networks, the validator nodes may exert the same power. This is a form of largely unrecognized ephemeral centralization in otherwise decentralized systems. A miner can (temporarily) censor transactions for its own benefit [171] or reorder them to maximize its own gain, a notion called minerextractable value (MEV) [90]. The term MEV is slightly deceptive: It does not refer only to value that miners can capture: Some MEV can be captured by ordinary users. Because miners have more power than ordinary users, however, MEV represents an upper bound on the amount of value any entity can obtain through adversarial reordering and complementary transaction insertion. Even when miners order transactions simply based on fees (gas), without manipulation, users themselves can manipulate gas prices to advantage their transactions over those of less sophistication. Daian et al. [90] document and quantify ways in which bots (not miners) take advantage of gas dynamics in a way that harms users of DeFi systems today and how MEV even threatens the stability of the underlying consensus layer in a blockchain. Other examples of transaction-order manipulation surface regularly, e.g., [50, 154].

New transaction-processing methods such as rollups are a very promising approach to the scaling problems of high-throughput blockchains. They do not, however, address the problem of MEV. Instead, they shift it to the entity that generates the rollup. That entity, whether the operator of a smart contract or a user furnishing a (zk-)rollup with a validity proof, has the power to order and insert transactions. In other words, rollups swap MEV for REV: Rollup-Extractable Value. MEV affects upcoming transactions that have been submitted to the mempool but are not yet committed on chain. Information about such transactions is broadly available in the network. Miners, validators, and ordinary network participants can therefore exploit this knowledge and create dependent transactions. In addition, miners and validators may influence the order of those transactions that they commit themselves and exploit this to their advantage. The problem of undue influence by leaders on transaction ordering in consensus protocols has been known in the literature since the 1990s [71, 190], but no satisfying solutions have been realized in practice so far [97]. The main reason is that proposed solutions—at least until very recently—cannot readily be integrated with public blockchains, as they rely on the content of transactions remaining secret until after their ordering has been determined. Fair Sequencing Services (FSS) overview: DONs will provide tools to decentralize transaction ordering and implement it according to a policy specified by a relying contract creator, ideally one that is fair, and not advantaging actors who wish to manipulate transaction ordering. Collectively, these tools constitute FSS. FSS includes three components. The first is monitoring of transactions. In FSS, oracle nodes in O both monitor the mempool of MAINCHAIN and (if desired) permit off-chain submission of transactions through a specialized channel. The second is sequencing of transactions. The nodes in O order transactions for a relying contract according to a policy defined for that contract. The third is posting of transactions. After the transactions are ordered, the nodes in O jointly send the transactions to the main chain. The potential benefits of FSS include: • Order-fairness: FSS includes tools to help developers ensure that transactions input to a particular contract are ordered in a way that does not give an unfair advantage to well-resourced and/or technically savvy users. Ordering policies can be specified for this purpose. • Reduction or elimination of information leaks: By ensuring that network participants cannot exploit knowledge about upcoming transactions, FSS can abate or eliminate attacks like front-running that are based on information available in the network before transactions are committed. Preventing exploitation of such leakage ensures that adversarial transactions which depend on original pending transactions cannot enter the ledger before the original transactions are committed.

• Reduced transaction cost: By eliminating players’ need for speed in submitting their transactions to a smart contract, FSS can greatly reduce the cost of transaction processing. • Priority ordering: FSS can automatically give critical transactions special priority ordering. For example, in order to prevent front-running attacks against oracle reports, e.g., [79], FSS can insert an oracle report into a stream of transactions retroactively. An overarching goal of the FSS in DONs is to empower DeFi creators to realize fair financial systems, that is, systems that don’t advantage particular users (or miners) over others on the basis of speed, insider knowledge, or ability to perform technical manipulation. While a crisp, general notion of fairness is elusive, and perfect fairness in any reasonable sense is unachievable, FSS aims to provide developers with a powerful set of tools so that they can enforce policies that help meet their design goals for DeFi. We note that while the main goal of FSS is to act as a fair sequencing service for the MAINCHAIN that DONs target, some of the same fairness desiderata that FSS guarantees can also be appropriate for (decentralized) protocols that are run among DON parties. Thus, FSS can be viewed more broadly as a service provided by a subset of DON nodes to fairly sequence not only transactions sent by users of MAINCHAIN but also transactions (i.e., messages) shared among other DON nodes. In this section, we will focus primarily on the goal of sequencing MAINCHAIN transactions. Section organization: In Section 5.1, we describe two high-level applications that motivate the design of FSS: preventing front-running of oracle reports and preventing front-running of user transactions. We then provide more details on the design of FSS in Section 5.2. Section 5.3 describes examples of fair ordering guarantees and means to achieve them. Finally, Section 5.4 and Section 5.5 discuss network-level threats to such policies and means to address them, respectively for network flooding and Sybil attacks. 5.1 The Front-Running Problem To explain the goals and design of FSS, we describe two general forms of front-running attacks and the limitations of existing solutions. Front-running exemplifies a class of transaction-ordering attacks: There are a number of related attacks such as backrunning and sandwiching (front-running plus back-running) [237] that we don’t cover here, but which FSS also helps address. 5.1.1 Oracle Front-Running In their traditional role of providing off-chain data to blockchain applications, oracles become a natural target for front-running attacks.

Consider the common design pattern of using an oracle to supply various price feeds to an on-chain exchange: periodically (say every hour), the oracle collects price data for different assets and sends these to an exchange contract. These price-data transactions present obvious arbitrage opportunities: For example, if the newest oracle report lists a much higher price for some asset, an adversary could front-run the oracle report to buy up assets and immediately resell them once the oracle’s report is processed. Speed bumps and retroactive pricing: A natural solution to the oracle frontrunning problem is to give oracle reports special priority over other transactions. For example, oracle reports could be sent with high fees to encourage miners to process them first. But this will not prevent front-running if the arbitrage opportunity is high, nor can it prevent arbitrage by the miners themselves. Some exchanges have thus resorted to implementing more heavyweight “speedbumps,” such as queuing user transactions for a number of blocks before processing them, or retroactively adjusting prices when a new oracle report arrives. The disadvantages of these solutions are that they add complexity to the exchange implementation, increase storage requirements and thus transaction costs, and disrupt the user experience as asset exchanges are only confirmed after a significant time period. Piggybacking: Before moving on to FSS, we discuss piggybacking, a quite simple and elegant solution to the oracle front-running problem. It is not applicable to address front-running in other scenarios, however. In short, instead of periodically sending reports to the on-chain contract, oracles publish signed reports that users append to their transactions when buying or selling on-chain assets. The exchange then simply checks that the report is valid and fresh (e.g., the oracle can sign a range of blocks for which the report is valid), and extracts the relevant price feed from it. This simple approach has a number of advantages over the above “speed bump” approach: (1) The exchange contract need not keep state of price feeds, which should lead to lower transaction costs; (2) As oracle reports are posted on chain on a byneed basis, oracles can generate more frequent updates (e.g., every minute), thereby minimizing arbitrage opportunities from front-running a report9; (3) Transactions can be validated immediately, as they always include a fresh price feed. The approach is not perfect, however. First, this piggybacking solution puts the onus on the exchange’s users to fetch up-to-date oracle reports and attach them to their transactions. Second, while piggybacking minimizes arbitrage opportunities, it cannot fully prevent them without affecting the liveness of the on-chain contract. Indeed, if an oracle report is valid until some block number n, then a transaction submitted to block n + 1 would require a new valid report. Due to inherent delays in the propagation of reports from oracles to users, the new report that is valid for block n + 1 would have 9Arbitrage is only worthwhile if the exploitable difference in asset prices exceeds the extraneous fees required to buy and sell the assets, e.g., those collected by miners and the exchange.

to be publicized some period before block n + 1 is mined, say at block n −k, thereby creating a sequence of k blocks where a short-lived arbitrage opportunity exists. We now describe how FSS gets around these limitations. Prioritizing oracle reports with FSS: FSS can address the oracle front-running problem by building upon the above piggybacking solution, but pushing the additional work of augmenting transactions with oracle reports to the Decentralized Oracle Network. At a high level, oracle nodes collect transactions destined for an on-chain exchange, agree on a real-time price feed, and post the price feed along with the collected transactions to the main-chain contract. Conceptually, one can think of this approach as a “data-augmented transaction batching”, where the oracle ensures that an up-to-date price feed is always added to transactions. FSS solutions can be implemented transparently to the exchange’s users, and with minimal changes to contract logic, as we describe in more detail in Section 5.2. Ensuring that fresh oracle reports are always prioritized over user transactions is just one example of an ordering policy that FSS can adopt and enforce. Policies of FSS for ensuring order fairness are described more generally in Section 5.3. 5.1.2 Front-Running User Transactions We now turn to front-running in generic applications, where the defense method above does not work. The problem can be captured broadly through the following scenario: An adversary sees some user transaction tx1 sent into the P2P network and injects its own adversarial transaction tx2, so that tx2 is processed before tx1 (e.g., by paying a higher transaction fee). For instance, this kind of front-running is common among bots that exploit arbitrage opportunities in DeFi systems [90] and has affected users of various decentralized applications [101]. Imposing a fair order among the transactions processed on the blockchain addresses this problem. More fundamentally, seeing the details of tx1 is sometimes not even necessary and knowledge of its mere existence may allow an adversary to front-run tx1 through its own tx2 and defraud the innocent user that created tx1. For example, the user might be known to trade a particular asset at regular times. Preventing such attacks requires mitigations that avoid leakage of metadata as well [62]. Some solutions for this problem exist, but they introduce delays and usability concerns. From network-order to finalized-order with FSS: Opportunities for front-running arise because existing systems have no mechanisms to ensure that the order in which transactions appear on chain respects the order of events and the information flow outside the network. This represents a problem arising from deficiencies in the implementation of applications (e.g., trading platforms) on a blockchain. Ideally, one would ensure that transactions are committed on the blockchain in the same order as they were created and sent to the blockchain’s P2P network. But since the blockchain network

Fair Sequencing Services general schematic showing transaction flow from users through DON to main chain

is distributed, no such order can be captured. FSS therefore introduces mechanisms to safeguard against violations of fairness, which arise only because of the distributed nature of the blockchain network. 5.2 FSS Details Figure 12: Order-fair mempool with two different transaction paths: direct and mempool-based. Fig. 12 shows a general schematic of the FSS. For ensuring fairness, the DON providing FSS must interfere with the flow of transactions as they enter MAINCHAIN. Adjustments to clients, to smart contracts on MAINCHAIN, or to both may be necessary. At a high level, processing of transactions by FSS can be decomposed into three phases, described below: (1) Transaction monitoring; (2) Transaction sequencing; and (3) Transaction posting. Depending on the ordering method used for transaction sequencing, additional protocol steps are needed, as described in the next section. 5.2.1 Transaction Processing Transaction monitoring: We envision two different approaches for FSS to monitor user transactions destined for a specific smart contract, direct and mempool-based: • Direct: The direct approach is conceptually simplest, but requires changes to user clients so that transactions are sent directly to the Decentralized Oracle

Network nodes, rather than to the nodes of the main chain. The DON collects user transactions destined to a specific smart contract SC and orders them based on some ordering policy. The DON then sends the ordered transactions to the smart contract on the main chain. Some ordering mechanisms also require the direct approach because the user that creates a transaction must cryptographically protect it before sending it to FSS. • Mempool-based: To facilitate the integration of FSS with legacy clients, the DON can use Mempool Services (MS) to monitor the main chain’s mempool and collect transactions. Direct transmission is likely to be the preferred implementation for many contracts, and we believe it should be fairly practical in many cases. We briefly discuss how existing DApps could be minimally modified to support direct transmission while preserving a good user experience. We describe approaches using Ethereum and MetaMask [6] since these are the most popular choices today, but the mentioned techniques should extend to other chains and wallets. A recent Ethereum Improvement Proposal, “EIP-3085: Wallet add Ethereum chain RPC method” [100], will make it easy to target custom Ethereum chains (using a different CHAIN ID than that of MAINCHAIN to prevent replay attacks) from MetaMask and other browserbased wallets. After implementation of this proposal, a DApp seeking to use a DON would simply add a single method call to their front-end to be able to directly transmit transactions to any DON exposing an Ethereum-compatible API. In the meantime, “EIP-712: Ethereum typed structured data hashing and signing” [49] provides a slightly more involved but already widely deployed alternative, where a DApp user can use MetaMask to sign structured data specifying a DON transaction. The DApp can send this signed structured data to the DON. Finally, we note that hybrid approaches are also possible. For example, legacy clients can continue to send transactions into the main chain’s mempool, but critical transactions (e.g., oracle reports) are sent to DON nodes directly (in particular, the set of nodes providing oracle reports such as price-feed updates and the set of nodes providing FSS may overlap or be identical). Transaction sequencing: The main purpose of FSS is to guarantee that user transactions are ordered according to a pre-defined policy. The nature of this policy will depend on the application’s needs and the types of unfair transaction orderings that it aims to prevent. Since FSS on the DON is capable of processing data and maintaining local state, they may impose an arbitrary sequencing policy based on the information that is available at the oracles. The particular ordering policies and their implementation are discussed subsequently in Section 5.3.

Transaction posting: After collecting and ordering user transactions, received either directly from users or collected from the mempool, the DON sends these transactions to the main chain. As such, a DON’s interactions with the main chain remain subject to (potentially unfair) transaction ordering governed by the main chain’s miners. To harness the benefits of decentralized transaction ordering, the target smart contract SC thus has to be designed to treat the DON as a “first-class” citizen. We distinguish two approaches: • DON-only contracts: The simplest design option is to have the main chain smart contract SC only accept transactions that have been processed by the DON. This ensures that the smart contract processes transactions in the order proposed by the DON, but de-facto restricts the smart contract to operating in a committeebased system (i.e., the DON committee now has ongoing power to determine the ordering and inclusion of transactions). • Dual-class contracts: A preferred, more granular design has the main chain smart contract SC accept transactions originating both from the DON and from legacy users,10 but places traditional “speed bumps” on transactions that were not processed by the DON. For example, transactions from the DON may be processed immediately, whereas legacy transactions get “buffered” by the smart contract for a fixed period of time. Other standard mechanisms for preventing front-running such as commit-reveal schemes or VDFs [53] could also be applied to legacy transactions. This ensures that DON-ordered transactions do get processed in the order agreed upon, without giving the DON the unwanted power to censor transactions. As the imposition of transaction ordering by FSS requires that transactions are aggregated “off-chain,” this solution is naturally combined with other aggregation techniques that aim to reduce on-chain processing costs. For example, after collecting and ordering transactions, the DON may send these transactions to the main chain as a single “batched transaction” (e.g., a rollup), thereby reducing the aggregate transaction fee. Enforcing the transaction order: Whether in a DON-only or dual-class design, the main chain smart contract SC and the DON have to be co-designed so as to guarantee that the DON’s transaction ordering is upheld. Here also, we envision different design options: • Sequence numbers: The DON can append a sequence number to each transaction, and send these transactions into the main chain’s mempool. The main 10If the DON’s transaction monitoring is based on the mempool, legacy transactions must be distinguishable from DON transactions so that they are not collected by the DON, e.g., via a special tag embedded in the transaction or by specifying a particular gas price, e.g. DON transactions have gas prices below a certain threshold.

chain smart contract SC ignores transactions that arrive “out-of-sequence.” We note that in this setting, the main-chain miners can decide to ignore the DON’s transaction ordering, thereby causing transactions to fail. It is possible by keeping (expensive) state for SC to enforce correct transaction ordering, somewhat analogously to how TCP buffers out-of-order packets until missing packets are received. • Transaction nonces: For many blockchains, and in particular for Ethereum, the above sequence-numbering approach can leverage built-in transaction nonces to enforce that the main-chain smart contract SC processes transactions in sequence. Here, the DON nodes send transactions to the main chain through a single mainchain account, protected with a key shared among the DON nodes. The account’s transaction nonce ensures that transactions are mined and processed in the correct order. • Aggregate transactions: The DON can aggregate multiple transactions in a rollup (or in a bundle similar to a rollup). The main-chain smart contract needs to be designed to handle such aggregate transactions. • Aggregate transactions with a main chain proxy: Here, the DON similarly bundles transactions into one “meta-transaction” for the main chain, but relies on a custom proxy smart contract to unpack the transactions and relay them to the target contract SC. This technique can be useful for legacy compatibility. Metatransactions act like rollups but differ in that they consist of an uncompressed list of transactions posted once to the main chain. The last design has the advantage of seamlessly supporting user transactions that are themselves proxied through a main chain contract before reaching the DON’s target contract SC. For example, consider a user who sends a transaction to some wallet contract, which in turn sends an internal transaction to SC. Assigning a sequence number to such a transaction would be tricky, unless the user’s wallet contract is specially designed to forward the sequence number with every internal transaction to SC. Similarly, such internal transactions cannot be easily aggregated into a metatransaction that is sent directly to SC. We discuss further design considerations for such proxied transactions below. 5.2.2 Transaction Atomicity Our discussion thus far has implicitly assumed that transactions interact with a single on-chain smart contract (e.g., a user sends a buy request to an exchange). Yet, in systems such as Ethereum, a single transaction can consist of multiple internal transactions, e.g., one smart contract calling a function in another contract. Below, we describe two high-level strategies for sequencing “multi-contract” transactions, while preserving the atomicity of the transaction (i.e., the sequence of actions prescribed by the transaction are all executed in the correct order, or not at all).

Strong atomicity: The simplest solution is to apply FSS, as described above, directly to entire “multi-contract” transactions. That is, users send their transactions into the network and FSS monitors, sequences, and posts these transactions to the main chain. This approach is technically simple, but has one potential limitation: If a user transaction interacts with two contracts SC1 and SC2 that both want to leverage fair sequencing services, then the sequencing policy of these two contracts has to be consistent. That is, given two different transactions tx1 and tx2 that each interacts with both SC1 and SC2, it must not be the case that the policy of SC1 orders tx1 before tx2 whereas the policy of SC2 prescribes the opposite order. For the vast majority of scenarios of interest, we envision that the sequencing policies adopted by different contracts will be consistent. For example, both SC1 and SC2 may want transactions to be ordered by their approximate arrival time in the mempool, and SC1 may further want certain oracle reports to always be delivered first. As the latter oracle report transactions do not interact with SC2, the policies are consistent. Weak atomicity: In its full generality, FSS could be applied at the level of individual internal transactions. Consider transactions of the form tx = { ˜txpre, ˜txSC, ˜txpost}, consisting of some initial transaction(s) ˜txpre, which results in an internal transaction ˜txSC to SC, which in turn issues internal transaction(s) ˜txpost. The sequencing policy of SC might determine how the internal transaction ˜txSC has to be ordered with respect to other transactions sent to SC, but leave open the sequencing order for ˜txpre and ˜txpost. Given the intrinsics of transaction processing in systems such as Ethereum, developing a sequencing service that targets specific internal transactions is not straightforward. With a specially designed contract SC, this may be realizable as follows: 1. The transaction tx is sent into the network and mined (without any sequencing performed by FSS). The initial ˜txpre is executed, and calls ˜txSC. 2. SC does not execute ˜txSC and returns. 3. FSS monitors internal transactions to SC, sequences them, and posts them back to SC (i.e., by sending transactions ˜txSC directly to SC). 4. SC processes the transactions ˜txSC received from FSS, and issues internal transactions ˜txpost that result from ˜txSC. With this approach, transactions are not executed fully atomically (i.e., the original transaction tx gets broken up into multiple on-chain transactions), but the ordering of internal transactions is preserved. This solution entails a number of design constraints. For example, ˜txpre cannot assume that ˜txSC and ˜txpost will be executed. Moreover, SC should be designed so as to execute transactions ˜txSC and ˜txpost on behalf of a certain user, even though they were

sent by FSS. For these reasons, the more coarse-grained “Strong Atomicity” solution above is likely preferable in practice. For respecting more complex dependencies, involving multiple transactions and their respective internal transactions, the transaction scheduler of FSS may contain elaborate functions that resemble those found in transaction managers of relational database managers. 5.3 Fair Transaction Sequencing Here we discuss two notions of fairness for transaction sequencing and the corresponding implementations, which may be realized by FSS: order-fairness based on a policy imposed by FSS and secure causality preservation, which requires additional cryptographic methods in FSS. Order-fairness: Order-fairness is a notion of temporal fairness in consensus protocols that has first been introduced formally by Kelkar et al. [144]. Kelkar et al. aim to achieve a form of natural policy in which transactions are ordered based on the time they are first received by the DON (or the P2P network, in the case of a mempool-based FSS). In a decentralized system, however, different nodes may see transactions arrive in a different order. Establishing a total order on all transactions is the very problem solved by the consensus protocol underlying MAINCHAIN. Kelkar et al. [144] therefore introduce a weaker notion that can be achieved with the help of a Decentralized Oracle Network, called “block-order fairness.” It groups the transactions that the DON has received during a time interval into a “block” and inserts all transactions of the block concurrently and at the same position (i.e., height) into MAINCHAIN. They are thus ordered together and must be executable in parallel, without creating any conflicts among them. Roughly speaking, orderfairness then states that if a large fraction of nodes see transaction \(\tau_1\) before \(\tau_2\), then \(\tau_1\) will be sequenced before or in the same block as \(\tau_2\). By imposing such a coarse granularity on transaction order, the opportunities for front-running and other orderrelated attacks are greatly reduced. Kelkar et al. propose a family of protocols called Aequitas [144], which address different deployment models, including synchronous, partially synchronous, and asynchronous network settings. Aequitas protocols impose significant communication overhead relative to basic BFT consensus and are therefore not ideal for practical use. We believe, however, that practical variants of Aequitas will emerge that can be used for transaction sequencing in FSS and other applications. Some related schemes have already been proposed that have less accompanying formalism and weaker properties, e.g., [36, 151, 236], but better practical performance. These schemes can be supported in FSS as well. It is also worth noting that the term “fairness” appears elsewhere in the blockchain literature with a different meaning, namely fairness in the sense of opportunity for

miners proportional to their committed resources [106, 181] or for validators in terms of equal opportunity [153]. Secure causality preservation: The most widely known approach to prevent frontrunning and other ordering violations in distributed platforms relies on cryptographic techniques. Their common feature is to hide the transaction data itself, waiting until the order at the consensus layer has been established, and to reveal the transaction data later for processing. This preserves the causal order among the transactions that are executed by the blockchain. The relevant security notions and cryptographic protocols have been developed considerably before the advent of blockchains [71, 190]. The security conditions of “input causality” [190] and “secure causality preservation” [71, 97] require formally that no information about a transaction becomes known before the position of this transaction in the global order has been determined. An adversary must not be able to infer any information until that time, in a cryptographically strong sense. One can distinguish four cryptographic techniques to preserve causality: • Commit-reveal protocols [29, 142, 145]: Instead of a transaction being announced in the clear, only a cryptographic commitment to the transaction is broadcast. After all committed but hidden transactions have been ordered (in early blockchain systems on MAINCHAIN itself, but here by FSS), the sender must open the commitment and reveal the transaction data within a predetermined time interval. The network then verifies that the opening satisfies the earlier commitment. The origins of this method date prior to the advent of blockchains. Although it is particularly simple, the approach introduces considerable drawbacks and is not easy to employ for two reasons. First, since only the commitment exists at the level of the ordering protocol, the semantics of the transaction cannot be validated during consensus. An additional round-trip to the client is required. More severely, though, weighs the possibility that no opening may ever arrive, which could amount to a denial-of-service attack. Furthermore, it is difficult to determine whether the opening is valid in a consistent, distributed manner because all participants must agree on whether the opening arrived in time. • Commit-reveal protocols with delayed recovery [145]: One challenge with the commit-reveal approach is that a client may commit to a transaction speculatively and reveal it later only if subsequent transactions make it profitable. A recent variant of the commit-reveal approach improves the resilience against this kind of misbehavior. In particular, the TEX protocol [145] addresses this problem using a clever approach in which encrypted transactions include a decryption key obtainable by computing a verifiable delay function (VDF) [53, 221]. If a client fails to decrypt her transaction in a timely way, others in the system will decrypt it on her behalf by solving a moderately hard cryptographic puzzle.

• Threshold encryption [71, 190]: This method exploits that the DON may perform threshold-cryptographic operations. Assume FSS maintains an encryption public key pkO and the oracles share the corresponding private key among themselves. Clients then encrypt transactions under pkO and send them to FSS. FSS orders transactions on the DON, then decrypts them, and finally injects them into MAINCHAIN in the fixed order. Encryption therefore ensures that ordering is not based on the transaction content, but that the data itself is available when needed. This method was originally proposed by Reiter and Birman [190] and later refined by Cachin et al. [71], where it was integrated with a permissioned consensus protocol. More recent work has explored the use of threshold cryptography as a consensus-level mechanism for generic messages [33, 97] and for general computations with shared data [41]. Compared to commit-reveal protocols, threshold encryption prevents simple denialof-service attacks (although care is required given the computational cost of decryption). It lets the DON proceed autonomously, at its own speed and without waiting for further client actions. Transactions may be validated immediately after they have been decrypted. Moreover, clients encrypt all transactions with one key for the DON and the communication pattern remains the same as with other transactions. Managing the threshold key securely and with changing nodes in O, however, may pose additional difficulties. • Committed secret sharing [97]: Instead of encrypting the transaction data under a key held by the DON, the client may also secret-share it for the nodes in O. Using a hybrid, computationally secure secret sharing scheme, the transaction is encrypted first using a symmetric cipher with a random key. Only the corresponding symmetric key is shared and the ciphertext is submitted to the DON. The client must send one key share to each node in O using a separately encrypted message. The remaining protocol steps are the same as with threshold encryption, except that the transaction data is decrypted with the symmetric algorithm after reconstructing the per-transaction key from its shares. This method does not require setup or management of a public-key cryptosystem associated with the DON. However, the clients must be aware of the nodes in O and communicate in a secure context with each one of them, which places additional burden on the clients. Although the cryptographic methods offer complete protection against information leaking from submitted transactions to the network, they do not conceal metadata. For example, an IP address or an Ethereum address of the sender could still be used by an adversary to perform front-running and other attacks. Various privacy-enhancing techniques deployed at the network layer, e.g., [52, 95, 107], or the transaction layer, e.g., [13, 65], would be needed to accomplish this goal. The impact of a particular piece of metadata, namely to which contract a transaction is sent, can be (partially) concealed

through multiplexing many contracts on the same DON. Cryptographic concealment of transactions per se also doesn’t prevent prioritization of transactions by corrupted DON nodes in collusion with transaction senders. Secure causality as guaranteed by cryptographic protocols complement the orderfairness guarantees for any policy, and we intend to explore a combination of the two methods, where this is possible. If an adversary cannot gain significant advantage from observing metadata, the secure causality-preservation protocols could be used alongside a na¨ıve ordering approach as well. For example, oracle nodes can write transactions to L as soon as they receive them, without duplication. Transactions would then be ordered according to their appearance on L and subsequently decrypted. We also plan to consider the use of TEEs as a way to help enforce fair ordering; for example, Tesseract [44] may be viewed as achieving a form of causal ordering, but one strengthened by the ability of the TEE to process transactions in explicit form while retaining their confidentiality. 5.4 Network-Layer Considerations So far, our description of FSS has mainly focused on the problem of enforcing that the finalized order of transactions matches their observed order in the network. Hereafter, we consider fairness issues that could arise at the network layer itself. High-frequency traders in conventional electronic marketplaces invest considerable resources to obtain superior network speed [64], and traders in cryptocurrency exchanges exhibit similar behavior [90]. Network speed confers an advantage both in observing the transactions of other parties and in submitting competing transactions. One remedy deployed in practice and popularized in the book Flash Boys [155] is the “speed bump” introduced initially in the IEX exchange [128] and later in other exchanges [179] (with mixed results [19]). This mechanism imposes a delay (350 microseconds in IEX) on access to the market, with the aim of neutralizing advantages in speed. Empirical evidence, e.g. [128], supports its efficacy in decreasing certain trading costs for ordinary investors. FSS can be used simply to implement an asymmetrical speed bump—one that delays incoming transactions. Budish, Cramton, and Shim [64] argue that exploitation of advantages in speed is inescapable in continuous-time markets, and argue for a structural remedy in the form of batch-auction-based markets. But this approach has not taken hold broadly in existing trading platforms. Conventional trading systems are centralized, typically receiving transactions through a single network connection. In a decentralized system, by contrast, it is possible to observe transaction propagation from multiple vantage points. Consequently, it is possible to observe behaviors such as network flooding in a P2P network. We intend to explore network-layer approaches to FSS that help developers to specify policies prohibiting such undesirable network behaviors.

5.5 Entity-Level Fairness Policies Order-fairness and secure causality aim at enforcing an ordering on transactions that respects the time when they were created and first submitted to the network. A limitation of this notion of fairness is that it does not prevent attacks in which an adversary gains an advantage by flooding a system with many transactions, a strategy observed in the wild as a way to perform effective transaction sniping in token sales [159] and to create congestion resulting in liquidation of collateralized debt positions (CDPs) [48]. In other words, order-fairness enforces fairness with respect to transactions, not players. As shown in the CanDID system [160], it is possible to use oracle tools such as DECO or Town Crier in conjunction with a committee of nodes (such as a DON) to achieve various forms of Sybil-resistance while protecting privacy. Users can register identities and provide evidence of their uniqueness without disclosing the identities themselves. Sybil-resistant credentials offer a possible approach to enriching transaction-ordering policies in a way that would limit opportunities for flooding attacks. For example, a token sale might permit only one transaction per registered user, where registration requires a proof of uniqueness of a national identifier, such as a Social Security Number. Such an approach isn’t foolproof, but may prove a useful policy to mitigate transactionflooding attacks.

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

Fair Sequencing Services general schematic showing transaction flow from users through DON to main chain

đượ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.

The DON Transaction-Execution Framework

The DON Transaction-Execution Framework

(DON-TEF) DONs will provide oracle and decentralized-resource support for layer-2 solutions within what we call the Decentralized Oracle Network Transaction-Execution Framework (DONTEF) or TEF for short. Today, the frequency of updates to DeFi contracts is limited by main chain latencies, e.g., the 10-15 second average block interval in Ethereum [104]—as well as the cost of pushing large amounts of data on chain and limited computational/tx throughput— motivating scaling approaches such as sharding [148, 158, 232] and layer-2 execution [5, 12, 121, 141, 169, 186, 187]. Even blockchains with much faster transaction times, e.g., [120], have proposed scaling strategies that involve off-chain computation [168]. TEF is meant to act as a layer-2 resource for any such layer-1 / MAINCHAIN systems. Using TEF, DONs can support faster updates in a MAINCHAIN contract while retaining the key trust assurances provided by the main chain. TEF can support any of a number of layer-2 execution techniques and paradigms, including rollups,11 optimistic rollups, Validium, etc., as well as a threshold trust model in which DON nodes execute transactions. The TEF is complementary to FSS and intended to support it. In other words, any application running in the TEF can use FSS. 11Often called “zk-rollups,” a misnomer, as they do not necessarily need zero-knowledge proofs.

6.1 TEF Overview The TEF is a design pattern for the construction and execution of a performant hybrid smart contract SC. In accordance with the main idea behind hybrid smart contracts, TEF involves a decomposition of SC into two pieces: (1) What we call in the TEF context an anchor contract SCa on MAINCHAIN and (2) DON logic exect that we call the TEF executable. We use SC here to denote the logical contract implemented by the combination of SCa and exect. (As noted above, we expect to develop compiler tools to decompose a contract SC automatically into these components.) The TEF executable exect is the engine that processes users’ transactions in SC. It can execute in a performant way, as it runs on the DON. It has several functions: • Transaction ingestion: exect receives or fetches users’ transactions. It can do so directly, i.e., through transaction submission on the DON, or via the MAINCHAIN mempool using MS. • Fast transaction execution: exect processes transactions involving assets within SC. It does so locally, i.e., on the DON. • Fast and low-cost oracle / adapter access: exect has native access to oracle reports and other adapter data leading to, e.g., faster, cheaper, and more accurate asset pricing than MAINCHAIN execution. Moreover, off-chain oracle access reduces the oracle’s operational cost, hence the cost of using the system, by avoiding expensive on-chain storage. • Syncing: exect periodically pushes updates from DON onto MAINCHAIN, updating SCa. The anchor contract is the MAINCHAIN front end of SC. As the higher-trust component of SC, it serves several purposes: • Asset custody: Users’ funds are deposited into, held in, and withdrawn from SCa. • Syncing verification: SCa may verify the correctness of state updates when exect syncs, e.g., SNARKs attached to rollups. • Guard rails: SCa may include provisions to protect against corruption or failures in exect. (See Section 7 for more details.) In TEF, users’ funds are custodied on MAINCHAIN, meaning the DON is itself noncustodial. Depending on the choice of syncing mechanism (see below), users may need to trust the DON only for accurate oracle reports and timely syncing with MAINCHAIN. The resulting trust model is very similar to that for order-book-based DEXes, e.g., [2], which today generally include an off-chain component for order matching and an onchain component for clearing and settlement.

Transaction Execution Framework schematic showing mempool, clearing, and settlement flow

To use the vocabulary of payment systems, one may think of exect as the component of SC responsible for clearing, while SCa handles settlement. See Fig. 13 for a schematic depiction of TEF. Figure 13: TEF schematic. In this example, transactions pass through the mempool of MAINCHAIN via MS to the DON. TEF benefits: TEF carries three main benefits: • High performance: SC inherits the DON’s much higher throughput than MAINCHAIN for both transactions and oracle reports. Additionally, exect can process transactions faster and respond to oracle reports in a more timely way than an implementation on MAINCHAIN alone. • Lower fees: The process of syncing is less time-sensitive than transaction processing, and transactions can be sent from the DON to MAINCHAIN in batches. Consequently, the per-transaction on-chain fees (e.g., gas costs) with this approach are much lower than for a contract that runs only on MAINCHAIN. • Confidentiality: The confidentiality mechanisms of the DON can be brought to bear on SC.

TEF limitations: One limitation of TEF is that it does not support instantaneous withdrawals, as they occur only on MAINCHAIN: Upon sending a withdrawal request to SCa, a user may need to wait for exect to perform a state update that includes the withdrawal transaction before it can be approved. We discuss some partial remedies, however, in Section 6.2. Another limitation of TEF is that it does not support atomic composition of DeFi contracts on MAINCHAIN, specifically the ability to route assets through multiple DeFi contracts in a single transaction. TEF can, however, support such atomicity among DeFi contracts running on the same DON. We also discuss some ways to address this problem in Section 6.2. 6.2 Transaction Routing Transactions for SC can be sent by users directly to the DON or can be routed through the mempool in MAINCHAIN (via FSS). There are four distinct transaction types, each of which requires different handling: Within-contract transactions: Because it sidesteps the complications of gas dynamics, TEF provides SC more flexibility in its handling of transactions than would be available in a layer-1 contract. For example, while a mempool transaction in Ethereum can be overwritten by a fresh transaction with a higher gas price, SC can treat a transaction that operates on assets within SC as authoritative as soon as it becomes visible in the mempool. Consequently, SC need not wait for a transaction to be confirmed within a block, resulting in considerably reduced latency. Proxying: A user may wish to send a transaction \(\tau\) to SC via a wallet contract or other contract on MAINCHAIN. It is possible for the DON to simulate execution of \(\tau\) on MAINCHAIN to determine whether it results in a follow-on transaction to SC. If so, \(\tau\) can be sequenced with other transactions for SC that do. There are a few possibilities for how the DON identifies such transactions: (1) The DON can simulate all transactions in the mempool (an expensive approach); (2) Certain contracts or contract types, e.g., wallets, can be listed for monitoring by the DON; or (3) Users can annotate transactions for DON inspection. Matters become more complicated when a single transaction interacts with two contracts, SC1 and SC2, both of which use Fair Sequencing Services and have incompatible ordering policies. The DON might, for example, sequence \(\tau\) at the latest time that is compatible with both. Deposits: A transaction depositing a MAINCHAIN asset into SC needs to be confirmed in a block before SC can treat it as valid. When it detects the mining of a transaction that sends assets (e.g., Ether) into SCa, exect can instantly confirm the

deposit. For example, it can apply a current oracle-reported price on the DON to the asset. Withdrawals: As noted above, a limitation of TEF is that withdrawals cannot always be executed instantaneously. In a rollup-type execution model, the withdrawal request must be sequenced with other transactions, i.e., rolled up, in order to be safely processed. There are, however, some partial remedies to this limitation. If the DON can quickly compute a rollup validity proof up to the withdrawal transaction, then observing a user's transaction \(\tau\) in the mempool exect can send a stateupdate transaction \(\tau'\) for \(\tau\) at a higher gas price, a kind of beneficial front-running. Provided that \(\tau\) isn't mined before \(\tau'\) reaches the mempool, \(\tau'\) will precede \(\tau\), and \(\tau\) will effect an approved withdrawal. In a TEF variant where the DON is relied upon to compute state updates (see the threshold signing variant below), the DON can alternatively determine off-chain whether \(\tau\) ought to be approved given the state of SC upon its execution. The DON can then send a transaction \(\tau'\) that approves withdrawal \(\tau\)—without effecting a full state update. If this approach isn’t possible, or in cases where it doesn’t succeed, a DON-initiated transaction \(\tau'\) can send funds to the user in response to \(\tau\) so that the user need not initiate an additional transaction. 6.3 Syncing The TEF executable exect periodically pushes updates from DON to MAINCHAIN, updating the state of SCa in a process we refer to as syncing. Syncing may be thought of as propagation of layer-2 transactions to layer-1, so TEF can draw on any of a number of existing techniques for this purpose, including rollups [5, 12, 16, 69], optimistic rollups [10, 11, 141], Validium [201], or basic threshold signing, e.g., threshold BLS, Schnorr, or ECDSA [24, 54, 116, 202]. In principle, trusted execution environments can also attest to the correctness of state changes, offering a much more performant alternative to rollups, but with a hardware-dependent trust model. (See, e.g., [80].) Below we compare these syncing options with respect to three key properties in TEF: • Data availability: Where is the state of SC stored? At least three options are available in TEF: on the MAINCHAIN, on a DON, or by some third-party storage providers such as IPFS. They achieve different security guarantees, availability levels, and performance profiles. Briefly, storing state on the MAINCHAIN enables on-chain auditability and eliminates reliance on any party for state availability; on the other hand, storing state off-chain can reduce storage cost and improve throughput, at the cost of trusting storage providers (DON or third parties) for data availability. Of course, flexible models that combine these options are also possible. We indicate the required form of data availability in Table 1.

• Correctness guarantees: How does SCa ascertain the correctness of the updates pushed by exect? This affects the computational load on exect and SCa and the syncing latency (see below). • Latency: Syncing latency has three contributing factors: (1) The time taken for exect to generate a syncing transaction \(\tau_{\text{sync}}\); (2) The time taken for \(\tau_{\text{sync}}\) to be confirmed on MAINCHAIN; and (3) The time for \(\tau_{\text{sync}}\) to take effect on SCa. In TEF, latency is particularly important for withdrawals (but less so for within-contract transactions) because withdrawals necessarily require an (at least partial) state sync. Syncing options Data availability Correctness guarantees Latency Rollup [5, 12, 16, 69] On-chain Validity proofs Time taken to generate validity proofs (e.g., minutes in current systems) Validium [201] Off-chain Validity proofs Same as above Optimistic rollup [10, 11, 141] On-chain Fraud proofs Length of the challenge period (e.g., days or weeks) Threshold signing [24, 54, 116, 202] Flexible Threshold signatures by DON Instantaneous Trusted execution environments [80] Flexible Hardware-based attestations Instantaneous Table 1: Various syncing options in TEF and their properties. Table 1 summarizes these properties in the five main syncing options in TEF. (Note that we do not intend to compare these technologies as standalone layer-2 scaling solutions. For that we refer readers to e.g., [121].) Now we discuss each syncing option. Rollups: A rollup [69] is a protocol in which the state transition effected by a batch of transactions is computed off-chain. The state change is then propagated onto MAINCHAIN. To implement rollups, the anchor smart contract SCa stores a compact representation Rstate (e.g., a Merkle root) of the actual state. To sync, exect sends \(\tau_{\text{sync}}\) = (T, R′ state) to SCa where T is the set of the transactions it processed since the last

sync and R′ state is the compact representation of the new state calculated by applying transactions in T to the previous state Rstate. There are two popular variants that differ in how SCa verifies state updates in \(\tau_{\text{sync}}\). The first, (zk-)rollups, attach a succinct argument of correctness, sometimes called a validity proof, for the transition Rstate →R′ state. To implement this variant, exect computes and submits the validity proof (e.g., a zk-SNARK proof) along with \(\tau_{\text{sync}}\), proving that R′ state is the result of applying T to the current state of SCa. The anchor contract accepts the state update only after it has verified the proof. Optimistic rollups do not include arguments of correctness, but have staking and challenge procedures that facilitate distributed verification of state transitions. For this rollup variant, SCa tentatively accepts \(\tau_{\text{sync}}\) assuming it is correct (hence the optimism) but \(\tau_{\text{sync}}\) does not take effect until after a challenge period, during which any party monitoring MAINCHAIN can identify erroneous state updates and inform SCa to take necessary actions (e.g., to rollback the state and inflict a penalty on exect.) Both rollup variants achieve on-chain data availability, as transactions are posted on-chain, from which the full state can be constructed. The latency of zk-rollups is dominated by the time needed to generate validity proofs, which typically is on the order of minutes in existing systems [16] and will likely see improvements over time. Optimistic rollups, on the other hand, have a higher latency (e.g., days or weeks) because the challenge period needs to be long enough for fraud proofs to work. The implication of slow confirmation is subtle and sometimes specific to the scheme, so that a thorough analysis is out of scope. For instance, certain schemes consider payment transactions as “trustless final” [109] before the state update is confirmed, since a regular user could verify a rollup much more quickly than the MAINCHAIN. Validium: Validium is a form of (zk-)rollup that makes data available off-chain only and does not maintain all data on MAINCHAIN. Specifically, exect sends only the new state and the proof but not transactions to SCa. With Validium-style syncing, exect and the DON that executes it are the only parties that store the complete state and that execute transactions. As with zk-rollups, syncing latency is dominated by validity proof generation time. Unlike zk-rollups, however, Validium style syncing reduces the storage cost and increases the throughput. Threshold signing by DON: Assuming a threshold of DON nodes is honest, a simple and fast syncing option is to have DON nodes collectively sign the new state. This approach can support both on-chain and off-chain data availability. Note that if users trust DON for oracle updates, they do not need to trust it more for accepting state updates, as they are already in a threshold trust model. Another benefit of threshold signing is low latency. Support for new transaction signature formats as proposed in EIP-2938 [70] and known as account abstraction would make threshold signing considerably easier to implement, as it would eliminate the need for threshold ECDSA, which involves considerably more complex protocols (e.g., [116, 117, 118])

than alternatives such as threshold Schnorr [202] or BLS [55] signatures. Trusted Execution Environments (TEEs): TEEs are isolated execution environments (usually realized by hardware) that aim to provide strong security protections for programs running inside. Some TEEs (e.g., Intel SGX [84]) can produce proofs, known as attestations, that an output is correctly computed by a specific program for a particular input12. A TEE-based variant of TEF syncing can be implemented by replacing proofs in (zk-)rollups or Validium with TEE attestations using techniques from [80]. Compared to zero-knowledge proofs used in rollups and Validium, TEEs are much more performant. Compared to threshold signing, TEEs remove the complexity of generating threshold ECDSA signatures as there need in principle be only one TEE involved. Using TEEs does, however, introduce extra hardware-dependent trust assumptions. One can also combine TEEs with threshold signing to create resilience against compromise of a fraction of TEE instances, although this protective measure reintroduces the complexity of generating threshold ECDSA signatures. Additional flexibility: These syncing options can be refined to provide more flexibility in the following ways. • Flexible triggering: TEF application can determine the conditions under which syncing is triggered. For example, syncing can be batch-based, e.g., occur after every N transactions, time-based, e.g., every 10 blocks, or event-based, e.g., occur whenever target asset prices move significantly. • Partial syncing: It is possible and in some cases desirable (e.g., with rollups, partial syncing can reduce latency) for exect to provide fast syncing of small amounts of state, performing full syncing perhaps only periodically. For example, exect can approve a withdrawal request by updating a user’s balance in SCa without otherwise updating MAINCHAIN state. 6.4 Reorgs Blockchain reorganizations resulting from network instability or even from 51%-attacks can pose a threat to the integrity of a main chain. In practice, adversaries have used them to mount double-spending attacks [34]. While such attacks on major chains are challenging to mount, they remain feasible for some chains [88]. Because it operates independently of MAINCHAIN, a DON offers the interesting possibility of observing and providing some protections against reorgs associated with attacks. For example, a DON can report to a relying contract SC on MAINCHAIN the existence of a competing fork of some threshold length \(\tau\). The DON can additionally 12Supplementary details can be found in Appendix B.2.1. They are not required for understanding.

provide proof—in either a PoW or PoS setting—of the existence of such a fork. The contract SC can implement suitable defensive actions, such as suspending further transaction execution for a period of time (e.g., to allow exchanges to blacklist double-spent assets). Note that although an adversary mounting a 51%-attack can seek to censor reports from a DON, a countermeasure in SC is to require periodic reports from the DON in order to process transactions (i.e., a heartbeat) or to require a fresh report to validate a high-value transaction. While such forking alerts are in principle a general service the DON can provide for any of a number of purposes, our plan is to incorporate them with the 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.

Transaction Execution Framework schematic showing mempool, clearing, and settlement flow

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.

Trust Minimization

Trust Minimization

As a decentralized system with participation from a heterogeneous set of entities, the Chainlink network provides strong protection against failures in both liveness (availability) and safety (report integrity). Most decentralized systems, however, vary in the degree to which their constituent components are themselves decentralized. This is true even of large systems, where limited decentralization among miners [32] and intermediaries [51] has long been present. The goal of any decentralization effort is trust minimization: We seek to reduce the adverse effects of systemic corruption or failure within the Chainlink network, even that due to a malicious DON. Our guiding principle is the Principle of Least Privilege [197]. System components and actors within the system should have privileges strictly scoped to allow only for the successful completion of their assigned roles. Here we lay out several concrete mechanisms for Chainlink to adopt in its drive toward ever-greater trust minimization. We characterize these mechanisms in terms of the loci, i.e., system components, in which they are rooted, shown in Fig. 14. We address each locus in a respective subsection. 7.1 Data-Source Authentication Current operating models for oracles are constrained by the fact that few data sources digitally sign the data they omit, in large part because TLS does not natively sign data. TLS does make use of digital signatures in its “handshake” protocol (to establish a shared key between a server and client). HTTPS-enabled servers thus have certificates on public keys that can in principle serve to sign data, but they do not generally use these certificates to support data signing. Consequently, the security of a DON, as in today’s oracle networks, relies on oracle nodes faithfully relaying data from a data source to a contract. An important long-term component of our vision for trust minimization in Chainlink involves stronger data-source authentication through support of tools and standards for data signing. Data signing can help enforce end-to-end integrity guarantees. In principle, if a contract accepts as input a piece of data D signed directly by a data

Loci of trust-minimizing mechanisms in the Chainlink network showing data quality, node selection, and oracle report verification

Figure 14: Loci of trust-minimizing mechanisms discussed in this section. 1⃝Data sources provide data to the 2⃝DON, which relays a function of the data to a dependent 3⃝smart contract. Additionally, the DON or the oracle network includes 4⃝node management smart contracts on MAINCHAIN for, e.g., compensating nodes, guard rails, and so forth. source, then the oracle network cannot feasibly tamper with D. Various encouraging efforts to enable such signing of data have emerged, including OpenID Connect, which is designed primarily for user authentication [9], TLS-N, an academic project aiming to extend TLS [191] by repurposing TLS certificates, and TLS Evidence Extensions [63]. While OpenID Connect has seen some adoption, however, TLS Evidence Extensions and TLS-N have yet to see adoption. Another potential avenue of data-source authentication is to use publishers’ own Signed HTTP Exchanges (SXG) [230], which they can cache on content-delivery networks as part of the Accelerated Mobile Pages (AMP) protocol [225]. The Chrome mobile browser displays the content from AMP-cached SXGs as if they were served from their publishers’ own network domains instead of the cache-server domain. This branding incentive, coupled with the relative ease of enabling it using services like CloudFlare’s Real URL [83] and Google’s amppackager [124], may lead to widespread adoption of SXGs in cached news content, which would enable a simple, tamper-resistant way for Chainlink oracles to trigger on newsworthy events reported in valid SXGs. While AMP-cached SXGs from news publishers would not be useful for high-tempo applications like reports on trading data, they could be a secure source for custom contracts pertaining to real-world events like extreme weather or election outcomes. We believe that simple deployment, mature tools, and flexibility will be vital to accelerating data-source signing. Enabling data providers to use Chainlink nodes as an authenticated API front end seems a promising approach. We intend to create an

option for nodes to function in this mode, with or without participation in the network as a full-blown oracle. We refer to this capability as authenticated data origination (ADO). By using Chainlink nodes with ADO, data sources will be able to benefit from the experience and tools developed by the Chainlink community in adding digital signing capabilities to their existing suite of off-chain APIs. Should they choose to run their nodes as oracles, they can additionally open up potential new revenue streams under the same model as existing data providers, e.g., Kraken [28], Kaiko [140], and others, that run Chainlink nodes to sell API data on chain. 7.1.1 The Limitations of Authenticated Data Origination Digital signing by data sources, while it can help strengthen authentication, isn’t sufficient per se to accomplish all of the natural security or operational goals of an oracle network. To begin with, a given piece of data D must still be relayed in a robust and timely way from a data source to smart contract or other data consumer. That is, even in an ideal setting in which all data is signed using keys pre-programmed into dependent contracts, a DON would still be needed to communicate the data reliably from sources to contracts. Additionally, there are a number of cases in which contracts or other oracle-data consumers want access to authenticated output of various functions computed over source data for two main reasons: • Confidentiality: A data source API may provide sensitive or proprietary data that needs to be redacted or sanitized before it is made publicly visible on chain. Any modification to signed data, however, invalidated the signature. Put another way, na¨ıve ADO and data sanitization are incompatible. We show in Example 3 how the two can be reconciled through an enhanced form of ADO. • Data source faults: Both errors and failures can affect data sources, and digital signatures address neither problem. From its inception [98], Chainlink has already included a mechanism to remediate such faults: redundancy. The reports issued by oracle networks typically represent the combined data of multiple sources. We now discuss schemes we are exploring in the ADO setting to enhance the confidentiality of source data and to combine data from multiple sources securely. 7.1.2 Confidentiality Data sources may not anticipate and make available the full gamut of APIs desired by users. Specifically, users may wish to access pre-processed data to help ensure confidentiality. The following example illustrates the problem.

Example 3. Alice wishes to obtain a decentralized identity (DID) credential stating that she is over 18 years of age (and thus can, for instance, take out a loan). To do so, she needs to prove this fact about her age to a DID credential issuer. Alice hopes to use data from her state’s Department of Motor Vehicles (DMV) website for the purpose. The DMV has a record of her birthdate and will emit a digitally signed attestation A on it of the following form: A = {Name: Alice, DoB: 02/16/1999}. In this example, the attestation A may be sufficient for Alice to prove to the DID credential issuer that she’s over 18. But it needlessly leaks sensitive information: Alice’s exact DoB. Ideally, what Alice would like from the DMV instead is a signature on a simple statement A′ that “Alice is over 18 years of age.” In other words, she wants the output of a function G on her birthdate X, where (informally), A′ = G(X) = True if CurrentDate −X ≥18 years; otherwise, G(X) = False. To generalize, Alice would like to be able to request from the data source a signed attestation A′ of the form: A′ = {Name: Alice, Func:G(X), Result: True}, where G(X) denotes a specification of a function G and its input(s) X. We envision that a user should be able to provide a desired G(X) as input with her request for a corresponding attestation A′. Note that the data source’s attestation A′ must include the specification G(X) to ensure that A′ is correctly interpreted. In the above example, G(X) defines the meaning of the Boolean value in A′ and thus that True signifies the subject of the attestation is over 18 years of age. We refer to flexible queries in which a user can specify G(X) as functional queries. In order to support use cases like that in Example 3, as well as those involving queries directly from contracts, we intend to include support for functional queries involving simple functions G as part of ADO. 7.1.3 Combining Source Data To reduce on-chain costs, contracts are generally designed to consume combined data from multiple sources, as illustrated in the following example. Example 4 (Medianizing price data). To provide a price feed, i.e., the value of one asset (e.g., ETH) with respect to another (e.g., USD), an oracle network will generally obtain current prices from a number of sources, such as exchanges. The oracle network typically sends to a dependent contract SC the median of these values. In an environment with data signing, a correctly functioning oracle network obtains from data sources \(S = \{S_1, \ldots, S_{n_S}\}\) a sequence of values \(V = \{v_1, v_2, \ldots, v_{n_S}\}\) from \(n_S\) sources with accompanying source-specific signatures \(\Sigma = \{\sigma_1, \sigma_2, \ldots, \sigma_{n_S}\}\). Upon verifying the signatures, it transmits the price \(v = \text{median}(V)\) to SC.

Unfortunately, there is no simple way for an oracle network to transmit the median value \(v\) in Example 4 to SC along with a succinct proof \(\sigma^*\) that \(v\) was correctly computed over signed inputs. A na¨ıve approach would be to encode in SC the public keys of all \(n_S\) data sources. The oracle network would then relay \((V, \Sigma)\) and allow SC to compute the median of \(V\). This, however, would result in a proof \(\sigma\) of size \(O(n_S)\)—i.e., \(\sigma^*\) would not be succinct. It would also incur high gas costs for SC, which would need to verify all signatures in \(\Sigma\). Use of SNARKs, in contrast, enables a succinct proof of correctly combined authenticated source values. It may be workable in practice, but imposes fairly high computational costs on the prover, and somewhat high gas costs on chain. Use of Town Crier is also a possibility, but requires the use of TEEs, which does not suit all users’ trust models. A helpful concept in which to frame solutions to the general problem of signing combined data from sources is a cryptographic tool known as functional signatures [59, 132]. Briefly, functional signatures allow a signer to delegate signing capability, such that the delegatee can only sign messages in the range of a function F chosen by the signer. We show in Appendix D how this functional constraint can serve to bound the range of report values emitted by a DON as a function of the values signed by data sources. We also introduce a new primitive, called a discretized functional signature, that includes a relaxed requirement for accuracy, but is potentially much more performant than approaches such as SNARKs. The problem of combining data sources in a way that includes source authentication of outputs also applies to data aggregators, e.g., CoinCap, CoinMarketCap, CoinGecko, CryptoCompare, etc., which obtain data from a multiplicity of exchanges, which they weight based on volumes, using methodologies that they in some cases make public and are in other cases proprietary. An aggregator that wishes to publish a value with source authentication faces the same challenge as a collection of nodes aggregating source data. 7.1.4 Processing Source Data Sophisticated smart contracts are likely to depend on custom aggregate statistics over primary data sources, such as volatility in recent price history over many assets, or text and photographs from news about pertinent events. Because computation and bandwidth are relatively cheap in a DON, these statistics— even complex machine-learning models with many inputs—can be processed economically, as long as any output value destined for a blockchain is sufficiently concise. For computationally intensive jobs where DON participants may have differing views on complex inputs, extra rounds of communication between the DON participants may be required to establish consensus on the inputs before computing the result. As long as the final value is fully determined by the inputs, once input consensus is established each participant can simply compute the value and broadcast it to the other

participants with their partial signature, or send it to an aggregator. 7.2 DON Trust Minimization We envision two main ways of minimizing the trust placed in components of the DON: failover clients and minority reports. 7.2.1 Failover Clients Adversarial models in the cryptography and distributed systems literature typically consider an adversary capable of corrupting (i.e., compromising) a subset of nodes, e.g., fewer than one-third for many BFT protocols. It is commonly observed, however, that if all nodes run identical software, an adversary that identifies a fatal exploit could in principle compromise all nodes more or less simultaneously. This setting is often referred to as a software monoculture [47]. Various proposals for automatically diversifying software and software configurations have been put forth to address the problem, e.g., [47, 113]. As noted in [47], however, software diversity is a complex issue and requires careful consideration. Software diversification, for example, can result in worse security than a monoculture if it increases a system’s attack surface and thus its possible vectors of attack in excess of the security benefits it offers. We believe that support for robust failover clients—i.e., clients to which nodes can switch in the face of a catastrophic event—is an especially attractive form of software diversification. Failover clients do not increase the number of potential vectors of attack, as they are not deployed as mainline software. They offer clear benefits, however, as a second line of defense. We intend to support failover clients in DONs as a key means of reducing their dependence for security on a single client. Chainlink already has in place a robust system of failover clients. Our approach involves maintaining previous, battle-tested client versions. Today, for example, Chainlink nodes with Off-Chain Reporting (OCR) as their primary client include support for Chainlink’s previous FluxMonitor system if needed. Having been in use for some time, FluxMonitor has received security audits and field testing. It provides the same functionality as OCR, just at higher cost—a cost only incurred on an as-needed basis. 7.2.2 Minority Reports Given a sufficiently large minority set \(O_{\text{minority}}\)—a fraction of honest nodes that observe malfeasance by the majority—it can be helpful for them to generate a minority report. This is a parallel report or flag, relayed to a dependent contract SC on-chain by \(O_{\text{minority}}\). SC can make use of this flag according to its own contract-specific policy. For example, for a contract in which safety is more important than liveness or responsiveness, a minority report might cause the contract to request supplementary reports from another DON, or trigger a circuit breaker (see the next section).

Minority reports can play an important role even when the majority is honest, because any report-aggregation scheme, even if it uses functional signatures, must operate in a threshold manner, to ensure resilience against oracle or data failure. In other words, it must be possible to produce a valid report based on the inputs of \(k_S < n_S\) oracles, for some threshold \(k_S\). This means a corrupted DON has some latitude in manipulating report values by selecting its preferred \(k_S\) values among the \(n_S\) reported in \(V\) by the full set of oracles, even if all sources are honest. For example, suppose that nS = 10 and kS = 7 in a system that uses a functional signature to authenticate computation of median over V for the USD price of ETH. Suppose that five sources report a price of \(500, while the other five report \)1000. Then by medianizing the lowest 7 reports, the DON can output a valid value v = $500, and by medianizing the highest, it can output v = $1000. By enhancing the DON protocol so that all nodes are aware of which data was available, and which data was used to construct a report, nodes could detect and flag statistically significant tendencies to favor one set of reports over another, and produce a minority report as a result. 7.3 Guard Rails Our trust model for DONs treats MAINCHAIN as a higher-security, higher-privilege system than DONs. (While this trust model may not always hold true, it is easier to adapt the resulting mechanism to situations where the DON is the higher security platform than vice versa.) A natural trust minimization strategy thus involves the implementation of monitoring and failsafe mechanisms in smart contracts—either in a MAINCHAIN front end for a DON or directly in a dependent contract SC. We refer to these mechanisms as guard rails, and enumerate some of the most important here: • Circuit breakers: SC may pause or halt state updates as a function either of characteristics of the state updates themselves (e.g., large variance across sequential reports) or based on other inputs. For example, a circuit breaker might trip in cases where oracle reports vary implausibly over time. A circuit breaker might also be tripped by a minority report. Thus, circuit breakers can prevent DONs from making grossly erroneous reports. Circuit breakers can provide time for additional interventions to be considered or exercised. One such intervention is escape hatches. • Escape hatches: Under adverse circumstances, as identified by a set of custodians, community token holders, or other bodies of trustees, a contract may invoke an emergency facility sometimes called an escape hatch [163]. An escape hatch causes SC to shut down in some manner and/or terminates pending and possibly future transactions. For example, it may return custodied funds to users [17]),

may terminate contract terms [162], or may cancel pending and/or future transactions [173]. Escape hatches can be deployed in any type of contract, not just one that relies on a DON, but they are of interest as a potential buffer against DON malfeasance. • Failover: In systems where SC relies on the DON for essential services, it is possible for SC to provide failover mechanisms that ensure service continuation even in the case of DON failure or misbehavior. For example, in the TEF (Section 6), the anchor contract SCa may provide dual interfaces where both on-chain and off-chain execution interfaces are supported for certain critical operations (e.g., withdrawal), or for ordinary transactions, with a suitable delay to prevent frontrunning of DON transactions. In cases where data sources sign data, users could also furnish reports to SCa when the DON fails to do so. Fraud proofs, as proposed for various forms of optimistic rollup (see Section 6.3), are similar in flavor and complementary to the mechanisms we enumerate above. They too provide a form of on-chain monitoring and protection against potential failures in off-chain system components. 7.4 Trust-Minimized Governance Like all decentralized systems, the Chainlink network requires governance mechanisms to adjust parameters over time, respond to emergencies, and guide its evolution. Some of these mechanisms currently reside on MAINCHAIN, and may continue to do so even with the deployment of DONs. One example is the payment mechanism for oracle node providers (DON nodes). DON front end contracts on MAINCHAIN contain additional mechanisms, such as guard rails, that may be subject to periodic modification. We foresee two classes of governance mechanisms: evolutionary and emergency. Evolutionary governance: Many modifications to the Chainlink ecosystem are such that their implementation is not a matter of urgency: Performance improvements, feature enhancements, (non-urgent) security upgrades, and so forth. As Chainlink progressively moves toward even more participants in its governance, we expect many or most such changes to be ratified by the community of a specific DON affected by those changes. In the interim, and perhaps ultimately as a parallel mechanism, we believe that a notion of temporal least privilege can be a useful means of implementing evolutionary governance. Very simply, the idea is for changes to deploy gradually, ensuring the community an opportunity to respond to them. For example, migration to a new MAINCHAIN contract can be constrained so that the new contract must be deployed at least thirty days before activation.

Emergency governance: Exploitable or exploited vulnerabilities in MAINCHAIN contracts or other forms of liveness or safety failures may require immediate intervention to ensure against catastrophic outcomes. Our intention is to support a multisig intervention mechanism in which, to ensure against malfeasance by any organization, signers will be dispersed across organizations. Ensuring consistent availability of signers and timely access to appropriate chains of command for authorization of emergency changes will clearly require careful operational planning and regular review. These challenges are similar to those involved in testing other cybersecurity incident-response capabilities [134], with a similar need to combat common problems like vigilance decrement [223]. The governance of DONs differs from that of many decentralized systems in its potential degree of heterogeneity. Each DON may have distinct data sources, executables, service-level requirements such as uptime, and users. The Chainlink network’s governance mechanisms must be flexible enough to accommodate such variations in operational goals and parameters. We are actively exploring design ideas and plan to publish research on this topic in the future. 7.5 Public-Key Infrastructure With progressive decentralization will come the need for a robust identification of network participants, including DON nodes. In particular, Chainlink requires a strong Public-Key Infrastructure (PKI). A PKI is a system that binds keys to identities. For example, a PKI undergirds the Internet’s system of secure connections (TLS): When you connect to a website via HTTPS (e.g., https://www.chainlinklabs.com) and a lock appears in your browser, that means that the public key of the domain owner has been bound to that owner by an authority—specifically, through a digital signature in a so-called certificate. A hierarchical system of certificate authorities (CAs), whose toplevel root authorities are hardwired into popular browsers, helps ensure that certificates are issued only to the legitimate owners of domains. We expect that Chainlink will eventually make use of decentralized name services, initially the Ethereum Name Service (ENS) [22], as the foundation for our PKI. As its name suggests, ENS is analogous to DNS, the Domain Name System that maps (human-readable) domain names to IP addresses on the internet. ENS, however, instead maps human-readable Ethereum names to blockchain addresses. Because ENS operates on the Ethereum blockchain, barring key compromise, tampering with its namespace is in principle as difficult as tampering with the contract administering it and/or the underlying blockchain. (DNS, in contrast, has historically been vulnerable to spoofing, hijacking, and other attacks.) We have registered data.eth with ENS on the Ethereum mainnet, and intend to establish it as a root namespace under which the identities of oracle data services and other Chainlink network entities reside. Domains in ENS are hierarchical, meaning that each domain may contain references to other names under it. Subdomains in ENS can serve as a way to organize and

delegate trust. The main role of data.eth will be to serve as an on-chain directory service for data feeds. Traditionally, developers and users of oracles have used off-chain sources (e.g., websites like docs.chain.link or data.chain.link, or social networks such as Twitter) to publish and obtain oracle data feed addresses (such as the ETH-USD price feed). With a highly trustworthy root namespace such as data.eth, it is possible instead to establish a mapping of eth-usd.data.eth to, e.g., the smart contract address of an on-chain oracle network aggregator for the ETH-USD price feed. This would create a secure path for anyone to refer to the blockchain as the source of truth for that data feed of that price/name pair (ETH-USD). Consequently, such use of ENS realizes two benefits unavailable in off-chain data sources: • Strong security: All changes and updates to the domain are recorded immutably and secured cryptographically, as opposed to text addresses on a website, which enjoy neither of these two security properties. • Automated on-chain propagation: Updates to the underlying address of a datafeed’s smart contract can trigger notifications that propagate to dependent smart contracts and can, for example, automatically update dependent contracts with the new addresses.13 Namespaces like ENS, however, do not automatically validate legitimate ownership of asserted names. Thus, for example, if the namespace includes the entry ⟨“Acme Oracle Node Co.”, addr⟩, then a user obtains the assurance that addr belongs to the claimant of the name Acme Oracle Node Co. Without additional mechanisms around namespace administration, however, she does not obtain assurance that the name belongs to an entity legitimately called Acme Oracle Node Co. in a meaningful real world sense. Our approach to validation of names, i.e., ensuring their ownership by corresponding, legitimate real-world entities, relies on several components. Today, Chainlink Labs effectively acts as a CA for the Chainlink network. While Chainlink Labs will continue to validate names, our PKI will evolve into a more decentralized model in two ways: • Web-of-trust model: The decentralized counterpart of a hierarchical PKI is often referred to as a web-of-trust.14 Variants have been proposed since the 1990s, e.g., [98], and a number of researchers have observed that blockchains can facilitate use of the idea, e.g., [227] by recording certificates in a globally consistent ledger. We are exploring variants of this model to validate the identities of entities in the Chainlink network in a more decentralized way. 13A dependent contract can optionally include a predetermined delay to allow for manual inspection and intervention by dependent-contract administrators. 14A term coined by Phil Zimmermann for PGP [238].

• Linkage to validating data: Today, a substantial amount of oracle node performance data is visible on-chain, and thus archivally bound to node addresses. Such data may be viewed as enriching an identity in the PKI by providing historical evidence of its (reliable) participation in the network. Additionally, tools for decentralized identity based on DECO and Town Crier [160] enable nodes to accumulate credentials derived from real-world data. As just one example, a node operator can attach a credential to its PKI identity that proves possession of a Dun and Bradstreet rating. These supplementary forms of validation can supplement staking in creating assurance of the security of the network. An oracle node with an established real-world identity may be viewed as having stake in a system deriving from its reputation. (See Section 4.3 and Section 9.6.3.) A final requirement for the Chainlink PKI is secure bootstrapping, i.e., securely publishing the root name for the Chainlink network, currently data.eth (analogously to hardwiring of top-level domains in browsers). In other words, how do Chainlink users determine that data.eth is indeed the top-level domain associated with the Chainlink project? The solution to this problem for the Chainlink network is multi-pronged and may involve: • Adding a TXT record [224] to our domain record for chain.link that specifies data.eth as the root domain for the Chainlink ecosystem. (Chainlink thus implicitly leverages the PKI for internet domains to validate its root ENS domain.) • Linking to data.eth from Chainlink’s existing website, e.g., from https://docs.chain.link. (Another implicit use of the PKI for internet domains.) • Making the use of data.eth known via various documents, including this whitepaper. • Posting data.eth publicly on our social-media channels, such as Twitter, and the Chainlink blog [18]. • Placing a large quantity of LINK under the control of the same registrant address as 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.

Loci of trust-minimizing mechanisms in the Chainlink network showing data quality, node selection, and oracle report verification

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 Deployment Considerations

DON Deployment Considerations

While not a part of our core design, there are several important technical considerations in the realization of DONs that deserve treatment here.

8.1 Rollout Approach This paper lays out an ambitious vision of advanced Chainlink functionality whose realization will require solutions to many challenges along the way. This whitepaper identifies some challenges, but unanticipated ones are sure to arise. We plan to implement elements of this vision in an incremental fashion over an extended period of time. Our expectation is that DONs will initially launch with support for specific pre-built components built collaboratively by teams within the Chainlink community. The intention is that broader uses of DONs, e.g., the ability to launch arbitrary executables, will see support at a later time. One reason for such caution is that composition of smart contracts can have complex, unintended, and dangerous side effects, as recent flash-loan-based attacks have for instance shown [127, 189]. Similarly, composition of smart contracts, adapters, and executables will require extreme care. In our initial deployment of DONs, we plan to include only a pre-built set of templatized executables and adapters. This will enable study of the compositional security of these functionalities using formal methods [46, 170] and other approaches. It will also simplify pricing: Functionality pricing can be established by DON nodes on a perfunctionality basis, rather than through generalized metering, an approach adopted in, e.g., [156]. We also expect the Chainlink community to take part in the creation of additional templates, combining various adapters and executables into increasingly useful decentralized services that can be run by hundreds, if not thousands of individual DONs. Additionally, this approach can help prevent state bloat, i.e., the need for DON nodes to retain an unworkable amount of state in working memory. This problem is already arising in permissionless blockchains, motivating approaches such as “stateless clients” (see, e.g., [206]). It can be more acute in higher throughput systems, motivating an approach in which a DON deploys only state-size-optimized executables. As DONs evolve and mature and include robust guard rails, as discussed in Section 7, cryptoeconomic and reputation-based security mechanisms as discussed in Section 9, and other features that provide a high degree of assurance for DON users, we also expect to develop a framework and tools to facilitate broader launch and use of DONs by the community. Ideally, these tools will enable a collection of node operators to come together as an oracle network and launch their own DONs in a permissionless or self-service manner, meaning that they can do so unilaterally. 8.2 Dynamic DON Membership The set of nodes running a given DON may change over time. There are two approaches to key management for skL given dynamic membership in O. The first is to update shares of skL held by the nodes upon changes in membership, while keeping pkL unchanged. This approach, explored in [41, 161, 198], has the merit of not requiring that relying parties update pkL.

The classical technique of share resharing, introduced in [122], provides a simple and efficient way of realizing such share updates. It enables a secret to be transferred between one set of nodes O(1) and a second, possibly intersecting one O(2). In this approach, each node O(1) i performs a (k(2), n(2)) secret sharing of its secret share across nodes in O(2) for n(2) = |O(2)| and desired (possibly new) threshold k(2). Various verifiable secret sharing (VSS) schemes [108] can provide security against an adversary that actively corrupts nodes, i.e., introduces malicious behavior into the protocol. Techniques in [161] aim to do so while reducing communication complexity and providing resilience against failures in cryptographic hardness assumptions. A second approach is to update the ledger key pkL. This has the benefit of forward security: Compromise of old shares of pkL (i.e., former committee nodes) would not result in compromise of the current key. Updates to pkL, however, carry two drawbacks: (1) Data encrypted under pkL needs to be re-encrypted during a key refresh and (2) Key updates need to be propagated to relying parties. We intend to explore both approaches, as well as hybridizations of the two. 8.3 DON Accountability As with existing Chainlink oracle networks, DONs will include mechanisms for accountability, i.e., recording, monitoring, and enforcing correct node behavior. DONs will have much more substantial data capacity than many existing permissionless blockchains, particularly given their ability to connect to external decentralized storage. Consequently, they will be able to record nodes’ performance history in detail, allowing for more fine-grained accountability mechanisms. For example, off-chain computation of asset prices may involve inputs that are discarded before a median result is sent on chain. In a DON, these intermediate results could be recorded. Misbehavior or performance lapses by individual nodes in a DON can thus be remedied or penalized on the DON in a fine-grained way. We have additionally discussed approaches to building guard rails in Section 7.3 that address the contract-specific impact of systemic failures. It is also important, however, to have failsafe mechanisms for DONs themselves, i.e., protections against systemic, potentially catastrophic DON failures, specifically forking / equivocation and service-level agreement (SLA) failures, as we now explain. Forking / equivocation: Given sufficiently many faulty nodes, a DON can fork or equivocate, producing two distinct, inconsistent blocks or sequences of blocks in L. Because a DON digitally signs the contents of L, however, it is possible to leverage a main chain MAINCHAIN to prevent and/or penalize equivocation. The DON can periodically checkpoint state from L in an audit contract on MAINCHAIN. If its future state deviates from a checkpointed state, a user / auditor can present proof of this misbehavior to the audit contract. Such proof can be used to generate an alert or penalize DON nodes via slashing in the contract. This latter approach introduces an incentive design problem similar to that for specific oracle feeds, and can build on our work outlined in Section 9.

Enforcing service-level agreements: While DONs are not necessarily meant to run indefinitely, it is important that they adhere to service level agreements (SLAs) with their users. Basic SLA enforcement is possible on a main chain. For example, DON nodes might commit to maintaining the DON until a certain date, or to providing advance notice of service termination (e.g., three months’ notice). A contract on MAINCHAIN can provide basic cryptoeconomic SLA enforcement. For example, the SLA contract can slash DON-deposited funds if checkpoints are not provided at required intervals. A user can deposit funds and challenge the DON to prove that a checkpoint correctly represents a sequence of valid blocks (in a manner analogous to, e.g. [141]). Of course, block production does not equate with transaction processing, but the SLA contract can also serve to enforce the latter. For example, in the legacy-compatible version of FSS in which transactions are fetched from the mempool (see Section 5.2), transactions are eventually mined and placed on chain. A user can prove DON malfeasance by furnishing the SLA contract with a transaction that was mined but wasn’t transmitted by the DON for processing by the target contract within the appropriate interval of time.15 It is also possible to prove the existence of and penalize more fine-grained SLA failures, including errors in computation using executables (via, e.g., the mechanisms for proving correct off-chain state transactions outlined in Section 6.3) or failure to run executables based on initiators visible on a DON, failure to relay data on the DON to MAINCHAIN in a timely way, and so forth.

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.

Economics and Cryptoeconomics

Economics and Cryptoeconomics

For the Chainlink network to achieve strong security within a decentralized trust model, it is essential that nodes collectively exhibit correct behavior, meaning that they adhere a majority of the time exactly to DON protocols. In this section, we discuss approaches to helping enforce such behavior by means of economic incentives, a.k.a. cryptoeconomic incentives. These incentives fall into two categories: explicit and implicit, realized respectively through staking and future fee opportunity (FFO). Staking: Staking in Chainlink, as in other blockchain systems, involves network participants, i.e., oracle nodes, depositing locked funds in the form of LINK tokens. These funds, which we also refer to as stake or explicit stake are an explicit incentive. They are subject to forfeiture upon node failure or malfeasance. In the blockchain context, this procedure is often called slashing. Staking by oracle nodes in Chainlink, however, differs fundamentally from staking by validators in permissionless blockchains. Validators can misbehave by equivocating or adversarially ordering transactions. The underlying consensus protocol in a 15As users can replace transactions in the mempool, care is required to ensure a correct correspondence between the mined and DON-submitted transactions.

permissionless blockchain, though, uses hard-and-fast block-validation rules and cryptographic primitives to prevent validators from generating invalid blocks. In contrast, programmatic protections cannot prevent a cheating oracle network from generating invalid reports. The reason is a key difference between the two types of system: transaction validation in blockchains is a property of internal consistency, while the correctness of oracle reports on a blockchain is a property of external, i.e., off-chain data. We have designed a preliminary staking mechanism for the Chainlink network based on an interactive protocol among oracle nodes that may make use of external data. This mechanism creates financial incentives for correct behavior using explicit rewards and penalties (slashing). As the mechanism is economic, it is designed to prevent node corruption by an adversary that uses financial resources to corrupt nodes by means of bribery. (Such an adversary is very general, and extends, e.g., to nodes cooperating to extract value from their collective misbehavior.) The Chainlink staking mechanism we have designed has some powerful and novel features.16 The main such feature is super-linear staking impact (specifically, quadratic). An adversary must have resources considerably in excess of nodes’ deposited funds in order to subvert the mechanism. Our staking mechanism additionally provides protection against a stronger adversary than previously considered in similar systems, namely an adversary that can create bribes conditioning on nodes’ future behavior. Additionally, we discuss how Chainlink tools such as DECO can help strengthen our staking mechanism by facilitating correct adjudication in the case of faulty node behavior. Future fee opportunity (FFO): Permissionless blockchains—of both the PoW and PoS variety—today rely critically on what we call implicit incentives. These are economic incentives for honest behavior that derive not from explicit rewards, but from platform participation itself. For example, the Bitcoin miner community is incentivized against mounting a 51% attack by the risk of undermining confidence in Bitcoin, depressing its value, and consequently eroding the value of their collective capital investments in mining infrastructure [150]. The Chainlink network benefits from a similar implicit incentive that we refer to as future fee opportunity (FFO). Oracle nodes with strong performance histories or reputations attract fees from users. Misbehavior by an oracle node jeopardizes future fee payments and thus penalizes the node with an opportunity cost in terms of potential revenue earned through participation in the network. By analogy with explicit stake, FFO may be viewed as a form of implicit stake, an incentive for honest behavior that derives from the shared benefit of maintaining confidence in the platform on which node operators’ business depends, i.e., the positive performance and reputation of the network. This incentive is inherent in but not explicitly expressed in Chainlink network protocols. In Bitcoin, maintaining the value of mining operations as mentioned above 16The staking mechanism we describe here currently aims only to enforce delivery of correct reports by oracle networks. We expect in future work to extend it to ensure correct execution of the many other functionalities DONs will provide.

may similarly be viewed as a form of implicit stake. We emphasize that FFO already exists in Chainlink and helps secure the network today. Our main contribution in the further development of Chainlink will be a principled, empirically driven approach to evaluating implicit incentives such as FFO through what we call the Implicit-Incentive Framework (IIF). To estimate quantities such as the future fee opportunity of nodes, the IIF will draw continuously on the comprehensive performance and payment data amassed by the Chainlink network. Such estimates will enable IIF-based parameterization of staking systems that reflects node incentives with greater accuracy than current heuristic and/or static models. To summarize, then, the two main economic incentives for correct oracle node behavior in the developing Chainlink network will be: • Staking (deposited stake) o Explicit incentive • Future fee opportunity (FFO) o Implicit incentive These two forms of incentive are complementary. Oracle nodes can simultaneously participate in the Chainlink staking protocol, enjoy an ongoing revenue stream from users, and collectively benefit from their continued good behavior. Thus both incentives contribute to the cryptoeconomic security provided by an oracle network. Additionally, the two incentives can reinforce and/or be traded offagainst one another. For example, a new oracle operator without a performance history and revenue stream can stake a large quantity of LINK as a guarantee of honest behavior, thereby attracting users and fees. Conversely, an established oracle operator with a long, relatively fault-free performance history can charge substantial fees from a large user base and thus rely more heavily on its FFO as a form of implicit incentive. In general, the approach we consider here aims for a given amount of oracle-network resource to create the greatest possible economic incentives in Chainlink for rational agents—i.e., nodes maximizing their financial utility—to behave honestly. Put another way, the goal is to maximize the financial resources required for an adversary to attack the network successfully. By formulating a staking protocol with mathematically well defined economic security and also using the IIF, we aim to measure the strength of Chainlink’s incentives as accurately as possible. The creators of relying contracts will then be able to determine with strong confidence whether an oracle network meets their required levels of cryptoeconomic security. The virtuous cycle of economic security: The incentives we discuss in this section, staking and FFO, have an impact beyond their reinforcement of the security of DONs. They promise to induce what we call a virtuous cycle of economic security. Super-linear staking impact (and other economies of scale) result in lower operational cost as a DON’s security grows. Lower cost attracts additional users to the DON,

boosting fee payments. A rise in fee payments continues to incentivize growth of the network, which perpetuates the virtuous cycle. We believe that the virtuous cycle of economic security is just one example of an economy of scale and network effect among others that we discuss later in this section. Section organization: Staking presents notable technical and conceptual challenges for which we have designed a mechanism with novel features. Staking will therefore be our main focus in this section. We give an overview of the staking approach we introduce in this paper in Section 9.1, followed by detailed discussion in Sections 9.2 to 9.5. We present the IFF in Section 9.6. We present a summary view of Chainlink network incentives in Section 9.7. In Section 9.8, we discuss the virtuous cycle of economic security our proposed staking approach can bring to oracle networks. Finally, we briefly describe other potential effects propelling growth of the Chainlink network in Section 9.9. 9.1 Staking Overview The staking mechanism design we introduce here, as noted above, involves an interactive protocol among oracle nodes allowing for resolution of inconsistencies in the reporting of external data. Staking aims to ensure honest behavior from rational oracle nodes. We can therefore model an adversary attacking a staking protocol as a briber: The adversary’s strategy is to corrupt oracle nodes using financial incentives. The adversary may derive financial resources prospectively from successfully tampering with an oracle report, e.g., offer to share the resulting profit with corrupted nodes. We aim in our staking mechanism design simultaneously at two ambitious goals: 1. Resisting a powerful adversary: The staking mechanism is designed to protect oracle networks against a broad class of adversaries that are capable of complex, conditional bribing strategies, including prospective bribery, which offers bribes to oracles whose identities are determined after the fact (e.g., offers bribes to oracles randomly selected for high-priority alerting). While other oracle designs have considered a narrow set of attacks without the full capabilities of a realistic adversary, to the best of our knowledge the adversarial mechanism we introduce here is the first to explicitly address a broad set of bribing strategies and show resistance in this model. Our model assumes that nodes besides the attacker are economically rational (as opposed to honest), and we assume the existence of a source of truth that is prohibitively expensive for typical usage but is available in case of disagreement (discussed further below). 2. Achieving super-linear staking impact: Our aim is to ensure that an oracle network composed of rational agents reports truthfully even in the presence of an attacker with a budget that is super-linear

in the total stake deposited by the entire network. In existing staking systems, if each of n nodes stakes $d, an attacker can issue a credible bribe which requests that nodes behave dishonestly in exchange for a payment of slightly more than \(d to each node, using a total budget of about \)dn. This is already a high bar as the attacker has to have a liquid budget on the order of the combined deposits of all stakers in the network. Our goal is a still stronger degree of economic security than this already substantial hurdle. We aim to design the first staking system that can achieve security for a general attacker with a budget super-linear in n. While practical considerations may achieve a lower impact, as we discuss below, our preliminary design achieves an adversarial budget requirement greater than $dn2/2, i.e., scaling quadratic in n, rendering bribery largely impractical even when nodes stake only moderate amounts. Reaching these two goals requires an innovative combination of incentive design and cryptography. Key ideas: Our staking approach hinges on an idea we call watchdog priority. A report generated by a Chainlink oracle network and sent to a relying contract (e.g., on an asset price) is aggregated from individual reports contributed by participating nodes (e.g., by taking the median). Typically a service-level agreement (SLA) specifies acceptable bounds of deviation for reports, i.e., how far a node’s report can deviate from the aggregate report and how far the aggregate should be permitted to deviate from the true value to be considered correct. In our staking system, for a given reporting round, each oracle node can act as a watchdog to raise an alert if it believes the aggregate report is incorrect. In each reporting round, each oracle node is assigned a public priority that determines the order in which its alert (if any) will be processed. Our mechanism aims at reward concentration, meaning that the highest-priority watchdog to raise an alert earns the entire reward yielded by confiscating the deposits of faulty nodes. Our staking system designs involve two tiers: the first, default tier, and the second, backstop tier. The first tier is the oracle network itself, a set of n nodes. (For simplicity, we assume n is odd.) If a majority of nodes report incorrect values, a watchdog in the first tier is strongly incentivized to raise an alert. If an alert is raised, the reporting decision of the network is then escalated to a second tier—a high-cost, maximumreliability system that can be user-specified in the network service-level agreement. This could be a system which, for example, is composed only of nodes with strong historical reliability scores, or one that has an order of magnitude more oracles than the first tier. Additionally, as discussed in Section 9.4.3, DECO or Town Crier can serve as powerful tools to help ensure efficient and conclusive adjudication in the second tier. For simplicity we thus assume that this second-tier system arrives at a correct report value. While it might seem attractive just to rely on the second tier to generate all reports, the benefit of our design is that it consistently achieves the security properties of the

second-tier system while only paying the operating cost, in the typical case, of the first-tier system. Watchdog priority results in super-linear staking impact in the following way: if the first-tier oracle network outputs an incorrect result and a number of watchdog nodes alert, the staking incentive mechanism rewards the highest-priority watchdog with more than $dn/2 drawn from the deposits of the (majority) misbehaving nodes. The total reward is thus concentrated in the hands of this single watchdog, which therefore determines the minimum that an adversary must promise a potential watchdog to incentivize it not to alert. Since our mechanism ensures that every oracle gets the chance to act as watchdog if the higher-priority watchdogs have accepted their bribes (and chosen not to alert), the adversary must therefore offer a bribe of more than $dn/2 to every node to prevent any alert being raised. Since there are n nodes, the adversary’s requisite budget for a successful bribe amounts to more than $dn2/2, which is quadratic in the number n of nodes in the network. 9.2 Background Our approach to staking draws on research in the fields of game theory and mechanism design (MD) (for a textbook reference, see [177]). Game theory is the mathematically formalized study of strategic interaction. In this context, a game is a model of such an interaction, typically in the real world, that codifies sets of actions available to participants in the game, known as players. A game also specifies the payoffs obtained by the individual players—rewards that depend on a player’s chosen actions and the actions of the other players. Perhaps the best known example of a game studied in game theory is the Prisoners’ Dilemma [178]. Game theorists generally aim to understand the equilibrium or equilibria (if any) represented in a given game. An equilibrium is a set of strategies (one for each player) such that no one player can obtain a higher payoffby unilaterally deviating from its strategy. Mechanism design, meanwhile, is the science of designing incentives such that the equilibrium of an interaction (and its associated game) has some desirable property. MD may be viewed as the inverse of game theory: The canonical question in game theory is, “given the incentives and model, what will the equilibrium be?” In MD, the question is instead, “what incentives will result in a game with a desirable equilibrium?” A typical goal of a mechanism designer is to create an ‘incentive compatible’ mechanism, meaning that participants in the mechanism (e.g., an auction or other information elicitation system [228]) are incentivized to report the truth on some matter (e.g., how much they value a particular item). The Vickrey (second-price) auction is perhaps the best known incentive compatible mechanism, in which participants submit sealed bids for an item and the highest bidder wins the item but pays the second-highest price [214]. Cryptoeconomics is a domain-specific form of MD that leverages cryptographic techniques to create desirable equilibria within decentralized systems. Bribery and collusion create significant challenges throughout the field of MD. Almost all mechanisms break in the presence of collusion, defined as side contracts be-

tween the parties participating in a mechanism [125, 130]. Bribery, in which an external party introduces novel incentives into the game, presents an even tougher problem than does collusion; collusion may be viewed as a special case of bribery among game participants. Blockchain systems can often be conceptualized as games with monetary (cryptocurrencybased) payoffs. A simple example is Proof-of-Work mining: miners have an action space in which they can choose the hashrate with which to mine for blocks. The payoffof mining is a guaranteed negative reward (cost of electricity and equipment) plus a stochastic positive reward (mining subsidy) that depends on the number of other active miners [106, 172] and transaction fees. Crowdsourced oracles like SchellingCoin [68] are another example: the action space is the set of possible reports an oracle may send, while the payoffis the reward specified by the oracle mechanism, e.g., payment might depend on how close an oracle’s report is to the median of the other reports [26, 68, 119, 185]. Blockchain games offer ripe opportunities for collusion and bribery attacks; indeed, smart contracts can even facilitate such attacks [96, 165]. Perhaps the best known bribery attack on crowdsourced oracles is the p-plus-epsilon attack [67]. This attack arises in the context of a SchellingCoin-like mechanism in which players submit booleanvalued reports (i.e., false or true) and are rewarded with p if they agree with the majority submission. In a p-plus-epsilon attack, the attacker credibly promises to, e.g., pay users $p + ϵ for voting false if and only if the majority submission is true. The result is an equilibrium, in which all players are incentivized to report false irrespective of what other players do; consequently, the briber can induce the nodes through its promised bribe to report false without actually paying the bribe (!). Exploration of other briber strategies in the context of oracles, however—and particularly oracles that are not crowdsourced—has been limited to fairly weak adversarial models. For example, in the PoW setting, researchers have studied outcome-contingent bribes, i.e., bribes paid only if a target message is successfully censored and does not appear in a block, irrespective of an individual miner’s action [96, 165]. In the case of oracles, however, other than the p-plus-epsilon attack, we are aware only of work in a strictly limited model of bribery in which a briber sends a bribe conditioned on an individual player’s action, not on the resulting outcome. Here we sketch designs of information-elicitation mechanisms that remain incentive compatible even in a strong adversarial model, as described in the next subsection. 9.3 Modeling Assumptions In this subsection, we explain how we model the behavior and capabilities of players in our system, specifically first-tier oracle nodes, nodes in the second-tier (adjudication) layer, and adversaries.

9.3.1 First-Tier Incentive Model: Rational Actors Many blockchain systems rely for security on the assumption of some number of honest participating nodes. Nodes are defined to be honest if they follow the protocol even when it is not in their financial interest to do so. Proof-of-Work systems typically require the majority of hash power to be honest, Proof-of-Stake systems typically require \(2/3\) or more of all participating stake to be honest, and even layer-2 systems like Arbitrum [141] require at least a single honest participant. In modeling for our staking mechanism, we make a much weaker assumption. (To be clear, weaker assumptions mean stronger security properties and are therefore preferable.) We assume that the adversary has corrupted, i.e., controls, some (minority) fraction of first-tier oracle nodes. We model the remaining nodes not as honest agents, but as rational expected-utility maximizers. These nodes act entirely according to selfinterested financial incentives, choosing actions that result in an expected financial gain. For example, if a node is offered a bribe larger than the reward resulting from honest behavior, it will accept the bribe. Note on adversarial nodes: In accordance with the trust modeling common for decentralized systems, we assume that all nodes are rational, i.e., seeking to maximize net revenue, rather than controlled by a malicious adversary. Our claims, however— specifically super-linear or quadratic staking impact—hold asymptotically provided that the set of adversarially controlled nodes is at most \((1/2 - c)n\), for some positive constant \(c\). 9.3.2 Second-Tier Adjudication Model: Correctness by Assumption Recall that a critical feature of our staking mechanism that helps achieve security against rational nodes is its second-tier system. In our proposed staking mechanism, any oracle may raise an alert indicating that it believes the output of the mechanism is incorrect. An alert results in a high-trust second-tier system activating and reporting the correct result. Thus, a key modeling requirement for our approach is correct adjudication, i.e., correct reporting by the second-tier system. Our staking model assumes a second-tier system that acts as an incorruptible, maximally reliable source of truth. Such a system is likely to be expensive and slow, and thus inappropriate for use for the typical case. In the equilibrium case, however, i.e., when the first-tier system functions correctly, the second-tier system will not be invoked. Instead, its existence boosts the security of the whole oracle system by providing a high-assurance backstop. The use of a high-trust, high-cost adjudication layer resembles the appeals process at the heart of most judicial systems. It is also already common in the design of oracle systems, e.g., [119, 185]. We briefly discuss approaches to realization of the second tier in our mechanism in Section 9.4.3.

Our staking protocol uses the assumed correct adjudication of the second-tier system as a credible threat to enforce correct reporting by oracle nodes. The protocol confiscates part or all of the stake of oracle nodes that generate reports identified by the second-tier system as incorrect. Oracle nodes are thus deterred from misbehaving by the resulting financial penalty. This approach is similar in flavor to that used in optimistic rollups, e.g., [141, 10]. 9.3.3 Adversarial Model Our staking mechanism is designed to elicit truthful information while achieving security against a broad, well-defined class of adversaries. It improves upon prior works, which either omit an explicit adversarial model or focus on narrow sub-classes of adversaries, e.g., the p-plus-epsilon adversary discussed above. Our goal is to design a staking mechanism with formally proven security against the full spectrum of adversaries likely to be encountered in practice. We model our adversary as having a fixed (parameterizable) budget, denoted by $B. The adversary can communicate individually and confidentially with each oracle in the network, and can secretly offer any individual oracle guaranteed payment of a bribe contingent on publicly observable outcomes of the mechanism. Outcomes determining bribes can include, for example, the value reported by the oracle, any public messages sent by any oracle to the mechanism (e.g., an alert), the values reported by other oracles, and the value output by the mechanism. No mechanism can secure against an attacker with unlimited capabilities. We therefore consider some behaviors as unrealistic or out-of-scope. We assume our attacker cannot break standard cryptographic primitives, and, as noted above, has a fixed (if potentially large) budget $B. We further assume that the adversary does not control communication in the oracle network, specifically that it cannot substantially delay traffic between first-tier and/or second-tier nodes. (Whether the adversary can observe such communication depends on the particular mechanism, as we explain below.) Informally, however, as noted above, we assume that the adversary can: (1) Corrupt a fraction of oracle nodes (\((1/2 - c)\)-fraction for some constant \(c\)), i.e., fully control them, and (2) Offer bribes to any desired nodes, with guaranteed payment contingent on outcomes specified by the adversary, as described above. While we don’t offer a formal model or complete taxonomy of the adversary’s full range of bribing capabilities in this whitepaper, here are examples of the kinds of bribers encompassed by our model. For simplicity, we assume that oracles emit Boolean reports whose correct value (w.l.o.g.) is true, and that a final outcome is computed as an aggregate of these reports to be used by a consuming smart contract. The briber’s aim is for the final outcome to be incorrect, i.e., false. • Unconditional briber: Briber offers bribe $b to any oracle that reports false. • Probabilistic briber: Briber offers bribe $b with some probability q to any oracle that reports false.

• false-outcome conditioned briber: Briber offers bribe $b to any oracle that reports false provided that the final outcome is false. • No-alert-conditioned briber: Briber offers bribe $b to any oracle that reports false as long as no alert is raised. • p-plus-epsilon Briber: Briber offers bribe $b to any oracle that reports false as long as the majority of oracles do not report false. • Prospective briber: Briber offers bribe $b in advance to whichever oracle is selected for a randomized role and reports false. In our proposed staking protocol, all nodes act as potential watchdogs, and we are able to show that randomization of watchdog priorities does not lend itself to prospective bribery. Many proofof-work, proof-of-stake, and permissioned systems are susceptible to prospective bribery, however, which shows the importance of considering it in our adversarial model and ensuring that our staking protocols are resilient to it. See Appendix E for more details. 9.3.4 How Much Cryptoeconomic Security Is Enough? A rational adversary will only spend money to attack a system if it can obtain a profit larger than its expenditure. Thus for our adversarial model and proposed staking mechanism, $B may be viewed as a measure of the potential profit an adversary is able to extract from relying smart contracts by corrupting an oracle network and causing it to generate an incorrect report or set of reports. In deciding whether an oracle network offers a sufficient degree of cryptoeconomic security for their purposes, a user should assess the network from this perspective. For plausible adversaries in practical settings, we expect that $B will generally be substantially smaller than the total assets in relying smart contracts. In most cases, it is infeasible for an adversary to extract these assets in their totality. 9.4 Staking Mechanism: Sketch Here we present the main ideas and general structure of the staking mechanism we are currently considering. For ease of presentation, we describe a simple but slow (multi-round) protocol in this subsection. We note, however, that this scheme is quite practical. Given the economic assurances provided by the mechanism, i.e., the penalization of and consequent incentive against faulty nodes, many users may be willing to accept reports optimistically. In other words, such users may accept reports prior to potential adjudication by the second tier. Users unwilling to accept reports optimistically can choose to wait until the protocol execution terminates, i.e., until any potential escalation to the second tier occurs. This, however, can substantially slow the confirmation time for reports. We therefore briefly

Schematic of Chainlink staking scheme with alerting showing watchdog escalation and penalty mechanisms

Figure 15: Schematic of staking scheme with alerting. In this example, 1⃝a majority of nodes are corrupted / bribed and emit an incorrect value ˜r, rather than the correct report value r. The watchdog node 2⃝sends an alert to the second-tier committee, which 3⃝determines and emits the correct report value r, resulting in corrupted nodes forfeiting their deposits—each $d to the watchdog node 4⃝. outline some optimizations that result in a faster (single-round) if somewhat more complex design in Section 9.5. Recall that the first tier in our staking mechanism consists of the basic oracle network itself. The main structure of our mechanism, as described above, is that in each round, each node can act as a “watchdog” with some priority, and it thus has the ability to raise an alert if the mechanism arrives at an incorrect output ˜r, rather than a correct one r. This alert causes second-tier resolution, which we assume arrives at a correct report. Nodes with incorrect reports are punished, in the sense that their stakes are slashed and awarded to watchdogs. This basic structure is common in oracle systems, as in, e.g., [119, 185]. The key innovation in our design, mentioned briefly above, is that every node is assigned a distinct priority in the ordering of potential watchdogs. That is, watchdogs are given opportunities to alert in priority sequence. Recall that if a node has the highest priority to raise an alert, it receives the slashed deposit $d of every misbehaving node, for a total of more than \(dn/2 = \)d × n/2, as an incorrect report implies a majority of bad nodes. Consequently, the adversary must pay at least this reward to bribe an arbitrary node. Thus, to bribe a majority of nodes, the adversary must pay a large bribe to a majority of nodes, namely, strictly more than $dn2/2. We show schematically how alerting and watchdog escalation works in Fig. 15.

9.4.1 Further Mechanism Details The bribery-resistant system we now describe in further detail is a simplified sketch of the two-tiered construction we intend to build. Most of our focus will be on describing the first-tier network (henceforth simply “network” where clear from context) along with its incentive mechanism and the procedure for escalation to the second tier. Consider a Chainlink network composed of n oracle nodes that are responsible for regularly (e.g., once a minute) reporting a boolean value (e.g., whether the market capitalization of BTC exceeds that of ETH). As part of the staking mechanism, nodes must provide two deposits: a deposit $d subject to slashing in the event of disagreement with the majority and a watchdog deposit $dw subject to slashing in the event of a faulty escalation. We assume that the nodes cannot copy the submissions of other nodes, e.g., through a commit-reveal scheme as discussed in Section 5.3. In each round, nodes first commit to their report, and once all nodes have committed (or a timeout has expired), nodes reveal their reports. For each report to be generated, every node is also given a watchdog priority between 1 and n chosen at random, with 1 being top priority. This priority enables the concentration of reward in the hands of one watchdog. After all reports are public, an alerting phase ensues. Over a sequence of n (synchronous) rounds, the node with priority i has the opportunity to alert in round i. Let us consider the possible outcomes for the mechanism after nodes have revealed their reports. Again assuming a binary report, suppose the correct value is true and the incorrect one is false. Suppose also that the first-tier mechanism outputs the majority value output by nodes as the final report r. There are three possible outcomes in the mechanism: • Complete agreement: In the best case, nodes are in complete agreement: all nodes are available and have provided a timely report of the same value r (either true or false). In this case, the network need only forward r to relying contracts and reward each node with a fixed per-round payment $p, which is much smaller than $d. • Partial agreement: It is possible that some nodes are offline or there is disagreement about which value is correct, but most nodes report true and only a minority reports false. This case is also straightforward. The majority value (true) is computed, resulting in a correct report r. All nodes that reported r are rewarded with $p while the oracles that reported incorrectly have their deposits slashed modestly, e.g., by $10p. • Alert: In the event that a watchdog believes the output of the network is incorrect, it publicly triggers an alert, escalating the mechanism to the second-tier network. There are then two possible results: – Correct alert: If the second-tier network confirms that the output of the

Diagram showing how concentrated alerting rewards amplify the cost for a briber attempting to corrupt the oracle network

Figure 16: Amplifying briber’s cost through concentrated alerting rewards. A bribing adversary must bribe each node with more than the reward it stands to gain by alerting (shown as a red bar). If alerting rewards are shared, then this reward may be relatively small. Concentrated alerting rewards increase the reward that any single node may obtain (tall red bar). Consequently the total payout by the adversary for a viable bribe (gray regions) is much larger with concentrated than shared alerting rewards. first-tier network was incorrect, the alerting watchdog node receives a reward consisting of all slashed deposits, and thus more than $dn/2. – Faulty alert: If the second-tier and first-tier oracles agree, the escalation is deemed faulty and the alerting node loses its $dw deposit. In the case of optimistic acceptance of reports, watchdog alerts do not cause any change in execution of relying contracts. For contracts designed to await potential arbitration by the second-tier committee, watchdog alerts delay but do not freeze contract execution. It is also possible for contracts to designate a failover DON for periods of adjudication. 9.4.2 Quadratic Staking Impact The ability for every node to act as a watchdog, combined with strict node priority ensuring concentrated rewards, enables the mechanism to achieve quadratic staking impact for each kind of bribing attacker described in Section 9.3.3. Recall that this means specifically in our setting that, for a network with n nodes each with deposit $d, a successful briber (of any of the kinds above) must have a budget of bigger than $dn2/2. To be precise, the briber must corrupt at least (n+1)/2 nodes, since the briber must corrupt a majority of n nodes (for odd n, by assumption). Thus, a watchdog stands to earn a reward of $d(n + 1)/2. The briber consequently must pay this amount to every

node to ensure that none acts as a watchdog. We are working to show formally that if the briber has a budget of at most $d(n2 + n)/2, then the subgame perfect equilibrium of the game between the bribers and the oracles—in other words, the equilibrium at any point during the play of the game—is for the briber not to issue the bribe and for each oracle to report its true values honestly. We have explained above how it is possible that a successful briber could require a budget significantly larger than that of the sum of the node deposits. To illustrate this intuitive result, Fig. 16 shows the impact of concentrated alert rewards graphically. As we see there, if the reward for watchdog alerting—namely the deposits of bribed nodes reporting false)—were split among all potential alerting, the total amount that any individual alerting node could expect would be relatively small, on the order of $d. A briber, knowing that a payout of larger than $d was improbable, could use a false-outcome conditional bribe to bribe each of n nodes with slightly more than $d + ϵ. Counterintuitively, Fig. 16 shows that a system that distributes a reward broadly among nodes signaling an alert is far weaker than one that concentrates the reward in the hands of a single watchdog. Example parameters: Consider a (first-tier) network with n = 100 nodes, each depositing \(d = \)20K. This network would have a total of $2M deposited but would be protected against a briber with budget \(100M = \)dn2/2. Increasing the number of oracles is more effective than increasing $d, of course, and can have a dramatic effect: a network with n = 300 nodes and deposits \(d = \)20K would be protected against a briber with budget up to $900M. Note that a staking system can in many cases protect smart contracts representing more value than the offered level of bribery protection. This is because an adversary attacking these contracts cannot extract the full value in many cases. For example, a Chainlink-powered contract securing $1B in value may only require security against a briber with $100M in resource because such an adversary can feasibly extract a profit of only 10% of the value of the contract. Note: The idea that the value of a network can grow quadratically is expressed in the well known Metcalfe’s Law [167, 235], which states that the value of a network grows quadratically in the number of connected entities. Metcalfe’s Law, however, arises from growth in the number of potential pairwise network connections, a different phenomenon than that underlying quadratic staking impact in our incentive mechanism. 9.4.3 Realization of Second Tier Two operational features facilitate realization of a high-reliability second tier: (1) Second-tier adjudication should be a rare event in oracle networks and therefore can be significantly more costly than normal operation of the first tier and (2) Assuming

optimistically accepted reports—or contracts whose execution can await arbitration— the second tier need not execute in real time. These features result in a range of configuration options for the second tier to meet the requirements of particular DONs. As an example approach, a second tier committee can consist of nodes selected by a DON (i.e., first tier) from the longest-serving and most reliable nodes in the Chainlink network. In addition to considerable relevant operational experience, the operators of such nodes have a considerable implicit incentive in FFO that motivates a desire to ensure that the Chainlink network remains highly reliable. They also have publicly available performance histories that provide transparency into their reliability. Secondtier nodes, it is worth noting, need not be participants in the first-tier network, and may adjudicate faults across multiple first-tier networks. Nodes in a given DON can pre-designate and publicly commit to a set of n′ such nodes as constituting the second-tier committee for that DON. Additionally, DON nodes publish a parameter k′ ≤n′ that determines the number of second-tier votes required to penalize a first-tier node. When an alert is generated for a given report, the members of the second tier vote on the correctness of the values provided by each of the first-tier nodes. Any first-tier node that receives k′ negative votes forfeits its deposits to the watchdog node. Because of the rareness of adjudication and opportunity for extended-time execution noted above, in contrast to the first tier, nodes in the second tier can: 1. Be highly compensated for conducting adjudication. 2. Draw on additional data sources, beyond even the diverse set used by the firsttier. 3. Rely on manual and/or expert inspection and intervention, e.g., to identify and reconcile errors in source data and distinguish between an honest node relaying faulty data and a misbehaving node. We emphasize that the approach we have just described for selection of secondtier nodes and policy governing adjudication represents just a point within a large design space of possible realizations of the second tier. Our incentive mechanism offers complete flexibility as to how the second tier is realized. Individual DONs can thus constitute and set rules for their second tiers that meet the particular requirements and expectations of participating nodes and users. DECO and Town Crier as adjudication tools: It is essential for the second tier in our mechanism to be able to distinguish between adversarial first-tier nodes that intentionally produce incorrect reports and honest first-tier nodes that unintentionally relay data that is incorrect at the source. Only then can the second tier implement slashing to disincentivize cheating, the goal of our mechanism. DECO and Town Crier are powerful tools that can enable second-tier nodes to make this critical distinction reliably.

Second-tier nodes may in some cases be able to directly query the data source used by a first-tier node or use ADO Section 7.1 in order to check whether an incorrect report resulted from a faulty data source. In other cases, however, second tier nodes may lack direct access to a first-tier node’s data source. In such cases, correct adjudication would appear to be infeasible or require a reliance on subjective judgment. Previous oracle dispute systems have relied upon inefficient, escalating rounds of voting to address such challenges. Using DECO or Town Crier, however, a first tier node can prove correct behavior to second-tier nodes. (See Section 3.6.2 for details on the two systems.) Specifically, if the second tier node identifies a first-tier node as having output a faulty report value ˜r, the first-tier node can use DECO or Town Crier to generate tamperproof evidence for second-tier nodes that it is correctly relaying ˜r correctly from a (TLS-enabled) source recognized as authoritative by the DON. Critically, the first-tier node can do this without second-tier nodes requiring direct access to the data source.17 Consequently, correct adjudication is feasible in Chainlink for any desired data source. 9.4.4 Misreporting Insurance The strong bribery resistance achieved by our staking mechanism relies fundamentally on slashed funds being awarded to alerters. Without a monetary reward, alerters would have no direct incentive to reject bribes. As a result, however, slashed funds are not available to compensate users harmed by incorrect reports, e.g., users that lose money when incorrect price data is relayed to a smart contract. By assumption, incorrect reports don’t pose a problem if reports are accepted by a contract only after potential adjudication, i.e., action by the second tier. As explained above, though, to achieve the best possible performance, contracts may instead rely optimistically on the mechanism to enforce correct reporting, meaning that they accept reports before potential second-tier adjudication. Indeed, such optimistic behavior is safe in our model assuming rational adversaries whose budgets do not exceed the staking impact of the mechanism. Users concerned about the improbable event of a mechanism failure resulting from, e.g., adversaries with overwhelming financial resources, may wish to employ an additional layer of economic security in the form of misreporting insurance. We know of multiple insurers already intending to offer smart-contract-backed policies of this kind for Chainlink-secured protocols in the near future, including through innovative mechanisms such as DAOs, e.g., [7]. The existence of performance history for Chainlink nodes and other data about nodes such as their stake amounts provides an exceptionally strong basis for actuarial assessments of risk, making it possible to price policies in ways that are inexpensive for policyholders yet sustainable for insurers. 17With Town Crier, it is additionally possible for first-tier nodes to locally generate attestations of correctness for the reports they output and provide these attestations to second-tier nodes on an as-needed basis.

Basic forms of misreporting insurance can be implemented in a trustworthy and efficient manner using smart contracts. As a simple example, a parametric insurance contract SCins can compensate policyholders automatically if our incentive mechanism’s second tier identifies an error in a report generated in the first tier. A user U that wishes to purchase an insurance policy, e.g., the creator of a target contract SC, can submit a request to a decentralized insurer for an policy amount $M on the contract. On approving U, the insurer can set an ongoing (e.g., monthly) premium of $P in SCins. While U pays the premium, her policy remains active. If a reporting failure occurs in SC, the result will be the emission of a pair (r1, r2) of conflicting reports for SC, where r1 is signed by the first tier in our mechanism and r2, the corresponding corrected report, is signed by the second tier. If the U furnishes such a valid pair (r1, r2) to SCins, the contract automatically pays her $M, provided her premium payments are up-to-date. 9.5 Single-Round Variant The protocol described in the previous subsection requires that the second-tier committee wait n rounds to determine whether a watchdog has raised an alert. This requirement holds even in the optimistic case, i.e., when the first tier is functioning correctly. For users unwilling to accept reports optimistically, i.e., prior to potential adjudication, the delay associated with that approach would be unworkable. For this reason, we are also exploring alternative protocols that require just one round. In this approach, all oracle nodes submit secret bits indicating whether or not they wish to raise an alert. The second-tier committee then checks these values in priority order. To provide a rough sketch, such a scheme might involve the following steps: 1. Watchdog bit submission: Each node Oi secret-shares a one-bit watchdog value wi ∈{no alert, alert} among nodes in the second tier for every report it generates. 2. Anonymous tips: Any oracle node can submit an anonymous tip α to the secondtier committee in the same round that watchdog bits are submitted. This tip α is a message indicating that an alert has been raised for the current report. 3. Watchdog bit checking: The second-tier committee reveals oracle nodes’ watchdog bits in priority order. Note that nodes must send no alert watchdog bits when they don’t alert: otherwise, traffic analysis reveals all nodes’ bits. The protocol does reveal the no alert watchdog bits of nodes with higher priority than the highest-priority alerting watchdog. Observe that what is revealed is identical with that of our n-round protocol. Rewards are also distributed identically with that scheme, i.e., the first identified watchdog receives the slashed deposits of nodes that have submitted incorrect reports.

The use of anonymous tips enables the second-tier committee to remain noninteractive in cases where no alert has been raised, reducing communication complexity in the common case. Note that any watchdog that raises an alert has an economic incentive to submit an anonymous tip: If no tip is submitted, no reward is paid to any node. To ensure that the sender Oi of an anonymous tip α cannot be identified by the adversary based on network data, the anonymous tip can be sent over an anonymous channel, e.g, via Tor, or, more practically, proxied via a cloud service provider. To authenticate the tip as originating with O, Oi can sign α using a ring signature [39, 192]. Alternatively, to prevent unattributable denial-of-service attacks against the secondtier committee by a malicious oracle node, α can be an anonymous credential with revocable anonymity [73]. This protocol, while practically achievable, has somewhat heavyweight engineering requirements (which we are exploring ways to reduce). First-tier nodes, for instance, must communicate directly with second-tier nodes, requiring maintenance of a directory. The need for anonymous channels and ring signatures adds to the engineering complexity of the scheme. Finally, there is a special trust requirement briefly discussed in the note below. We are therefore also exploring simpler schemes that still achieve super-linear staking impact, but perhaps less than quadratic, in which a briber asymptotically needs resources of at least $n log n, for example. Some of the schemes under consideration involve random selection of a strict subset of nodes to act as watchdogs, in which case prospective bribery becomes an especially powerful attack. Remark: The security of this single-round staking mechanism requires untappable channels between oracle and second-tier nodes—a standard requirement in coercionresistant systems, e.g., voting [82, 138], and a reasonable one in practice. Additionally, however, a node Oi that seeks to cooperate with a briber can construct its secret shares in such a way as to show the briber that it has encoded a particular value. For example, if Oi does not know which nodes the briber controls, then Oi can submit 0-valued shares to all committee members. The briber can then verify Oi’s compliance probabilistically. To avoid this problem in any single-round protocol, we require that Oi know the identity of at least one honest second-tier node. With an interactive protocol in which each second-tier node adds a randomization factor to shares, the best the briber can do is enforce selection by Oi of a random watchdog bit. 9.6 Implicit-Incentive Framework (IIF) FFO is a form of implicit incentive for correct behavior in the Chainlink network. It functions like explicit stake, i.e., deposits, in that it helps enforce economic security for the network. In other words, FFO should be included as part of the (effective) deposit $d of a node in the network.

The question is: How do we measure FFO and other forms of implicit incentive within the Chainlink network? The Implicit-Incentive Framework (IIF) is a set of principles and techniques that we plan to develop for this purpose. Blockchain systems provide many forms of unprecedented transparency, and the high-trust records of node performance they create are a springboard for our vision of how the IIF will work. Here we very briefly sketch ideas on key elements of the IIF. The IIF itself will consist of a set of factors we identify as important in evaluating implicit incentives, along with mechanisms for publishing relevant data in a highassurance form for consumption by analytics algorithms. Different Chainlink users may wish to use the IIF in different ways, e.g., giving different weighting to different factors. We expect analytics services to arise in the community that help users apply the IIF according to their individual risk-evaluation preferences, and our goal is to facilitate such services by ensuring their access to high-assurance and timely supporting data, as we discuss below (Section 9.6.4). 9.6.1 Future Fee Opportunity Nodes participate in the Chainlink ecosystem to earn a share of the fees that the networks pay out for any of the various services we have described in this paper, from ordinary data feeds to advanced services such as decentralized identity, fair sequencing, and confidentiality-preserving DeFi. Fees in the Chainlink network support node operators’ costs for, e.g., running servers, acquiring necessary data licenses, and maintaining a global staffto ensure high uptime. FFO denotes the service fees, net of expenses, that a node stands to gain in the future—or lose should it demonstrate faulty behavior. FFO is a form of stake that helps secure the network. A helpful feature of FFO is the fact that on-chain data (supplemented by off-chain data) establish a high-trust record of a node’s history, enabling computation of FFO in a transparent, empirically driven manner. A simple, first-order measure of FFO can derive from the average net revenue of a node over a period of time (i.e., gross revenue minus operating expenses). FFO may then be calculated as, e.g., the net present value [114] of cumulative future net revenue, in other words, the time-discounted value of all future earnings. Node revenue can be volatile, however, as shown for example in Fig. 17. More importantly, node revenue may not follow a distribution that is stationary over time. Consequently, other factors we plan to explore in estimating FFO include: • Performance history: An operator’s performance history—including the correctness and timeliness of its reports, as well as its up time—provides an objective touchstone for users to evaluate its reliability. Performance history will thus provide a critical factor in users’ selection of oracle nodes (or, with the advent of DONs, their selection of DONs). A strong performance history is likely to correlate with high ongoing revenue.18 18An important research question we intend to address is detection of falsified service volumes.

Revenue earned by Chainlink nodes on a single ETH-USD data feed showing correlation with price volatility

Figure 17: Revenue earned by Chainlink nodes on a single data feed (ETH-USD) during a representative week in March 2021. • Data access: While oracles may obtain many forms of data from open APIs, certain forms of data or certain high-quality sources may be available only on a subscription basis or through contractual agreements. Privileged access to certain data sources can play a role in creating a stable revenue stream. • DON participation: With the advent of DONs, communities of nodes will come together to provide particular services. We expect that many DONs will include operators on a selective basis, establishing participation in reputable DONs as a privileged market position that helps ensure a consistent source of revenue. • Cross-platform activity: Some node operators may have well-established presences and performance track records in other contexts, e.g., as PoS validators or data providers in non-blockchain contexts. Their performance in these other systems (when data on it is available in a trustworthy form) can inform evaluation of their performance history. Similarly, faulty behavior in the Chainlink network can jeopardize revenue in these other systems by driving away users, i.e., FFO can extend across platforms. 9.6.2 Speculative FFO Node operators participate in the Chainlink network not just to generate revenue from operations, but to create and position themselves to take advantage of new opportunities to run jobs. In other words, expenditure by oracle nodes in the network is also a positive statement about the future of DeFi and other smart-contract application domains as well as emerging non-blockchain applications of oracle networks. Node operators today earn the fees available on existing Chainlink networks and simultaneously These are loosely analogous to fake reviews on internet sites, except that the problem is easier in the oracle setting because we have a definitive record of whether the goods, i.e., reports, were ordered and delivered—as opposed to, e.g., physical goods ordered in online shops. Put another way, in the oracle setting, performance can be validated, even if customer veracity can’t.

build a reputation, performance history, and operational expertise that will position them advantageously to earn fees available in future networks (contingent, of course, on honest behavior). The nodes operating in the Chainlink ecosystem today will in this sense have an advantage over newcomers in earning the fees as additional Chainlink services become available. This advantage applies to new operators, as well as technology companies with established reputations; for example, T-Systems, a traditional technology provider (subsidiary of Deutsche Telekom), and Kraken, a large centralized exchange, have established early presences in the Chainlink ecosystem [28, 143]. Such participation by oracle nodes in future opportunities may be regarded itself as a kind of speculative FFO, and thus constitutes a form of stake in the Chainlink network. 9.6.3 External Reputation The IIF as we have described it can operate in a network with strictly pseudonymous operators, i.e., without disclosure of the people or real-world entities involved. One potentially important factor for user selection of providers, however, is external reputation. By external reputation, we mean the perception of trustworthiness attaching to real-world identities, rather than pseudonyms. Reputational risk attaching to real-world identities can be viewed as a form of implicit incentive. We view reputation through the lens of the IIF, i.e., in a cryptoeconomic sense, as a means of establishing cross-platform activity that may be incorporated into FFO estimates. The benefit of using external reputation as a factor in estimates of FFO, as opposed to pseudonymous linkage, is that external reputation links performance not just to an operator’s existing activities, but also to future ones. If, for instance, a bad reputation attaches to an individual person, it can taint that person’s future enterprises. Put another way, external reputation can capture a broader swath of FFO than pseudonymous performance records, as the impact of malfeasance attaching to a person or established company is harder to escape than that associated with a pseudonymous operation. Chainlink is compatible with decentralized identity technologies (Section 4.3) that can provide support for the use of external reputation in the IIF. Such technologies can validate and thereby help ensure the veracity of operators’ asserted real-world identities.19 9.6.4 Open IIF Analytics The IIF, as we have noted, aims to provide reliable open-source data and tools for implicit-incentive analytics. The goal is to enable providers within the community to develop analytics tailored to the risk-assessment needs of different parts of the Chainlink user base. 19Decentralized identity credentials can also, where desired, embellish pseudonyms with validated supplementary information. For example, a node operator could in principle use such credentials to prove that it is a Fortune 500 company, without revealing which one.

A considerable amount of historical data regarding nodes’ revenue and performance resides on chain in a high-trust, immutable form. Our goal, however, is to provide the most comprehensive possible data, including data on behaviors that are visible only off chain, such as Off-Chain Reporting (OCR) or DON activity. Such data can potentially be voluminous. The best way to store it and ensure its integrity, i.e., protect it from tampering, we believe, will be with the help of DONs, using techniques discussed in Section 3.3. Some incentives lend themselves to direct forms of measurement, such as staking deposits and basic FFO. Others, such as speculative FFO and reputation, are harder to measure in an objective manner, but we believe that supporting forms of data, including historical growth of the Chainlink ecosystem, social-media metrics of reputation, etc., can support IIF analytics models even for these harder-to-quantify elements. We can imagine that dedicated DONs arise specifically to monitor, validate, and record data relating to off-chain performance records of nodes, as well as other data used in the IIF, such as validated identity information. These DONs can provide uniform, high-trust IIF data for any analytics providers serving the Chainlink community. They will also provide a golden record that makes the claims of analytics providers independently verifiable by the community. 9.7 Putting It All Together: Node Operator Incentives Synthesizing our discussions above on explicit and implicit incentives for node operators provides a holistic view of the ways that node operators participate in and benefit from the Chainlink network. As a conceptual guide, we can express the total assets at stake by a given Chainlink node operator $S in a rough, stylized form as: \(S ≈\)D + \(F + \)FS + $R, where: • $D is the aggregate of all explicitly deposited stake across all networks in which the operator participates; • $F is the net present value of the aggregate of all FFO across all networks in which the operator participates; • $FS is the net present value of the speculative FFO of the operator; and • $R is the reputational equity of the operator outside the Chainlink ecosystem that might be jeopardized by identified misbehavior in its oracle nodes. While largely conceptual, this rough equality helpfully shows that there is a multiplicity of economic factors favoring high-reliability performance by Chainlink nodes. All of these factors other than $D are present in today’s Chainlink networks.

9.8 The Virtuous Cycle of Economic Security The combination of super-linear staking impact with representation of fee payments as future fee opportunity (FFO) in the IIF can lead to what we call the virtuous cycle of economic security in an oracle network. This can be seen as a kind of economy of scale. As the total amount secured by a particular network rises, the amount of additional stake it takes to add a fixed amount of economic security decreases as does the average per-user cost. It’s therefore cheaper, in terms of fees, for a user to join an already-existing network than to achieve the same increase in network economic security by creating a new network. Importantly, the addition of each new user lowers the cost of the service for all previous users of that network. Given a particular fee structure (e.g. a particular yield rate on the amount staked), if the total fees earned by a network increases, this incentivizes the flow of additional stake into the network to secure it at a higher rate. Specifically, if the total stake an individual node may hold in the system is capped, then when new fee payments enter the system, raising its FFO, the number of nodes n will increase. Thanks to the super-linear staking impact of our incentive system design, the economic security of the system will rise faster than n, e.g., as n2 in the mechanism we sketch in Section 9.4. As a result, the average cost for economic security—i.e., amount of stake contributing a dollar of economic security—will drop. The network can therefore charge its users lower fees. Assuming that demand for oracle services is elastic (see, e.g., [31] for a brief explanation), demand will rise, generating additional fees and FFO. We illustrate this point with the following example. Example 5. Since the economic security of an oracle network with our incentive scheme is \(dn2 for stake \)dn, the economic security contributed by a dollar of stake is n and thus the average cost per dollar of economic security—i.e, amount of stake contributing to a dollar of economic security—is 1/n. Consider a network in which the economic incentives consist entirely of FFO, capped at \(d ≤\)10K per node. Suppose the network has n = 3 nodes. Then the average cost per dollar of economic security is about $0.33. Suppose that the total FFO of the network rises above \(30K (e.g., to \)31K). Given the cap on per-node FFO, the network grows to (at least) n = 4. Now the average cost per dollar of economic security drops to about $0.25. We illustrate the full virtuous cycle of economic security in oracle networks schematically in Fig. 18. We emphasize that the virtuous cycle of economic security derives from the effect of users pooling their fees. It is their collective FFO that works in favor of larger network sizes and thus greater collective security. We also note that the virtuous cycle of economic security works in favor of DONs achieving financial sustainability. Once created, DONs that address user needs should grow to and beyond the point at which revenue from fees exceed operational costs for oracle nodes.

Schematic of the virtuous cycle of Chainlink staking showing how user fees drive security and value capture

Figure 18: Schematic of the virtuous cycle of Chainlink staking. A rise in user fee payments to an oracle network 1⃝causes it to grow, leading to growth in its economic security 2⃝. This super-linear growth realizes economies of scale in Chainlink networks 3⃝. Specifically, it means a reduction in the average cost of economic security , i.e., the per-dollar economic security arising from fee payments or other sources of stake increases. Lower costs, passed along to users, stimulate increased demand for oracle services 4⃝. 9.9 Additional Factors Driving Network Growth As the Chainlink ecosystem continues to expand, we believe that its attractiveness to users and importance as infrastructure for the blockchain economy will accelerate. The value provided by oracle networks is super-linear, meaning that it grows faster

than the size of the networks themselves. This growth in value derives from both economies of scale—greater per-user cost efficiency as service volumes increase—and network effects—an increase of network utility as users adopt DONs more widely. As existing smart contracts continue to see more value secured and entirely new smart contract applications are made possible by more decentralized services, the total use of and aggregate fees paid to DONs should grow. Increasing pools of fees in turn translate into the means and incentive to create even more decentralized services, resulting in a virtuous cycle. This virtuous cycle solves a critical chicken-and-egg problem in the hybrid smart contract ecosystem: Innovative smart contract features often require decentralized services that don’t yet exist (e.g., new DeFi markets often require new data feeds) yet need sufficient economic demand to come into existence. The pooling of fees by various smart contracts for existing DONs will signal demand for additional decentralized services from a growing user base, giving rise to their creation by DONs and an ongoing enablement of new and varied hybrid smart contracts. In summary, we believe that the growth in network security driven by virtuous cycles in the Chainlink staking mechanism exemplifies larger patterns of growth that the Chainlink network can help bring about in an on-chain economy for decentralized services.

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.

Revenue earned by Chainlink nodes on a single ETH-USD data feed showing correlation with price volatility

Schematic of Chainlink staking scheme with alerting showing watchdog escalation and penalty mechanisms

Schematic of the virtuous cycle of Chainlink staking showing how user fees drive security and value capture

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ụ.

Diagram showing how concentrated alerting rewards amplify the cost for a briber attempting to corrupt the oracle network

Conclusion

Conclusion

In this paper, we have set forth a vision for Chainlink’s evolution. The main theme in this vision is oracle networks’ ability to provide a much broader range of service for smart contracts than mere data delivery. Using DONs as a foundation for the decentralized services of the future, Chainlink will aim to provide performant, confidentialityenhanced oracle functionality. Its oracle networks will offer strong trust minimization through a combination of principled cryptoeconomic mechanisms such as staking and carefully conceived guard rails and service-level enforcement on relying main chains. DONs will also help layer-2 systems enforce flexible, fair ordering policies on transactions, as well as reduced gas costs for mempool-routed transactions. Taken together, these capabilities all drive in the direction of secure and richly functional hybrid smart contracts. The flexibility of DONs will enhance existing Chainlink services and give rise to many additional smart contract features and applications. Among these are seamless connection to a wide variety of off-chain systems, decentralized identity creation from existing data, priority channels to help ensure timely delivery of infrastructure-critical transactions, and confidentiality-preserving DeFi instruments. The vision we’ve set forth here is ambitious. In the short term, we seek to empower hybrid contracts to accomplish goals beyond the reach of smart contracts today, while in the long term we aim to realize a decentralized metalayer. Happily we can draw on new tools and ideas—ranging from consensus algorithms to zero-knowledge proof systems—that the community is developing as the fruit of rapidly evolving research.

Similarly, we expect to prioritize implementation of the ideas in this paper in response to the needs of Chainlink’s community of users. We look forward to the next stage in our quest to empower smart contracts through universal connectivity and establish decentralized technologies as the backbone of the world’s next generation of financial and legal systems. Acknowledgements Thanks to Julian Alterini and Shawn Lee for rendering the figures in this paper.

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.