Chainlink: una red Oracle descentralizada

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

Yazan Steve Ellis, Ari Juels and Sergey Nazarov · 2017

Tek mod 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.

Resumen

En este documento técnico, articulamos una visión para la evolución de Chainlink más allá de su concepción inicial en el documento técnico original Chainlink. prevemos un papel cada vez más amplio para las redes oracle, en el que complementan y mejoran las blockchain existentes y nuevas al proporcionar servicios rápidos, confiables y conectividad universal que preserva la confidencialidad y computación fuera de cadena para smart contracts. La base de nuestro plan es lo que llamamos Redes Oracle Descentralizadas, o DONs para abreviar. Un DON es una red mantenida por un comité de Chainlink nodos. Admite cualquiera de una gama ilimitada de funciones oracle elegidas para despliegue por parte del comité. Un DON actúa así como una poderosa capa de abstracción, ofreciendo interfaces para smart contracts a amplios recursos fuera de la cadena y altamente Recursos informáticos fuera de cadena eficientes pero descentralizados dentro del propio DON. Con DONs como trampolín, Chainlink planea centrarse en avances en siete áreas clave: • smart contracts híbridos: ofrece un marco general potente para aumentar las capacidades smart contract existentes mediante la composición segura en cadena. y recursos informáticos fuera de cadena en lo que llamamos smart contracts híbridos. • Abstraer la complejidad: presentar a los desarrolladores y usuarios soluciones sencillas. La funcionalidad elimina la necesidad de estar familiarizado con complejos subyacentes. protocolos y límites del sistema. • Escalado: garantizar que los servicios oracle alcancen las latencias y rendimientos que exigen los sistemas descentralizados de alto rendimiento. • Confidencialidad: Habilitar sistemas de próxima generación que combinen blockchains' Transparencia innata con nuevas y sólidas protecciones de confidencialidad para datos sensibles. datos. • Orden justo para las transacciones: respaldar la secuenciación de transacciones de maneras que sean justos para los usuarios finales y eviten ataques frontales y de otro tipo por parte de bots y mineros explotadores. • Minimización de la confianza: crear una capa de soporte altamente confiable para smart contracts y otros sistemas dependientes de oracle mediante descentralización, fuerte anclaje en blockchains de alta seguridad, criptográfico técnicas y garantías criptoeconómicas. • Seguridad (criptoeconómica) basada en incentivos: diseñar rigurosamente e implementar mecanismos robustos que garanticen que los nodos en DONs tengan fuertes incentivos económicos para comportarse de manera confiable y correcta, incluso frente a adversarios con buenos recursos. Presentamos innovaciones preliminares y en curso por parte de la comunidad Chainlink en cada una de estas áreas, proporcionando una imagen de la ampliación y cada vez mayor potentes capacidades planificadas para la red 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.

Introducción

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

Los oracles de blockchain a menudo se consideran hoy en día servicios descentralizados con un objetivo: para reenviar datos de recursos fuera de la cadena a blockchains. Aunque es un paso corto, desde reenviar datos hasta calcularlos, almacenarlos o transmitirlos bidireccionalmente. Esta observación justifica una noción mucho más amplia de la funcionalidad de oracles. Así también hacer los crecientes requisitos de servicio de smart contracts y cada vez más multifacéticos tecnologías que dependen de redes oracle. En resumen, un oracle puede y necesitará Ser una interfaz de propósito general, bidireccional y habilitada para computación entre sistemas dentro y fuera de la cadena. El papel de los oráculos en el ecosistema blockchain es mejorar el rendimiento, la funcionalidad y la interoperabilidad de smart contracts para que puedan traer nuevos modelos de confianza y transparencia a una multiplicidad de industrias. Esta transformación se producirá mediante el uso ampliado de smart contracts híbridos, que fusionan Las propiedades especiales de blockchains con las capacidades únicas de los sistemas fuera de cadena como oracle redes y, por lo tanto, lograr un alcance y poder mucho mayores que los sistemas en cadena en forma aislada. En este documento técnico, articulamos una visión de lo que llamamos Chainlink 2.0, una evolución de Chainlink más allá de su concepción inicial en el documento técnico original Chainlink [98]. Prevemos un papel cada vez más expansivo para las redes oracle, en el que Complementan y mejoran los blockchain existentes y nuevos al proporcionar conectividad y computación universales rápidas, confiables y que preservan la confidencialidad para híbridos. smart contracts. Creemos que las redes oracle incluso evolucionarán hasta convertirse en servicios públicos. para exportar datos de alta integridad de grado blockchain a sistemas más allá del blockchain ecosistema. Hoy en día, Chainlink nodos administrados por un conjunto diverso de entidades se unen en oracle redes para transmitir datos a smart contracts en lo que se conoce como informes. Podemos ver tales oracle nodos como un comité similar al de un consenso clásico blockchain [72], pero con el objetivo de admitir blockchains existentes, en lugar de proporcionar una funcionalidad independiente. Con funciones aleatorias verificables (VRF) e informes fuera de cadena (OCR), Chainlink ya está evolucionando hacia un marco e infraestructura de propósito general para proporcionar los recursos computacionales que los smart contracts requieren para funcionalidad avanzada. La base de nuestro plan para Chainlink 2.0 es lo que llamamos Oracle descentralizado. Redes, o DONs para abreviar. Desde que introdujimos el término “red oracle” en el documento técnico original Chainlink [98], oracles han desarrollado funcionalidades cada vez más ricas y amplitud de aplicación. En este artículo ofrecemos una nueva definición del término según a nuestra visión futura para el ecosistema Chainlink. En esta vista, un DON es una red mantenido por un comité de Chainlink nodos. Basado en un protocolo de consenso, admite cualquiera de una gama ilimitada de funciones oracle elegidas para su implementación por parte del comité. Por lo tanto, un DON actúa como una capa de abstracción blockchain, proporcionando interfaces a recursos fuera de la cadena tanto para smart contracts como para otros sistemas. También proporciona acceso a recursos informáticos fuera de la cadena altamente eficientes pero descentralizados. En general, a DON admite operaciones en una cadena principal. Su objetivo es permitir un acceso seguro y flexible.híbridos smart contracts, que combinan el cálculo dentro y fuera de la cadena con conexión con recursos externos. Destacamos que incluso con el uso de comités en DONs, el propio Chainlink permanece inherentemente sin permiso. DONs actúan como base de un sistema sin permiso marco en el que los nodos pueden unirse para implementar redes personalizadas oracle con sus propios regímenes para la inclusión de nodos, que pueden tener permiso o no. Con DONs como base, planeamos centrarnos en Chainlink 2.0 en avances en siete áreas clave: smart contracts híbridos, abstracción de la complejidad, escalamiento, confidencialidad, orden justo para las transacciones, minimización de la confianza y seguridad (criptoeconómica) basada en incentivos. En la introducción de este artículo, presentamos una descripción general de la descentralización. Oracle Networks en la Sección 1.1 y luego nuestras siete áreas clave de innovación en la Sección 1.2. Describimos la organización del resto de este artículo en la Sección 1.3. 1.1 Redes Oracle descentralizadas Las redes descentralizadas de Oracle están diseñadas para mejorar y ampliar las capacidades de smart contracts en un objetivo blockchain o cadena principal a través de funciones que son no disponible de forma nativa. Lo hacen proporcionando los tres recursos básicos que se encuentran en Sistemas informáticos: redes, almacenamiento y computación. Un DON tiene como objetivo ofrecer estos recursos con fuertes propiedades de confidencialidad, integridad y disponibilidad,1 como así como la rendición de cuentas. Los DONs están formados por comités de nodos oracle que cooperan para cumplir un objetivo específico. trabajo o elegir establecer una relación duradera para proporcionar servicios persistentes a los clientes. Los DONs están diseñados de forma independiente de blockchain. Prometen servir como una herramienta poderosa y flexible para que los desarrolladores de aplicaciones creen soporte fuera de la cadena para sus smart contracts en cualquier cadena principal compatible. Dos tipos de funcionalidades realizan las capacidades de un DON: ejecutables y adaptadores. Los ejecutables son programas que se ejecutan de forma continua y descentralizada en el DON. Si bien no almacenan directamente activos de la cadena principal, tienen importantes beneficios, incluido un alto rendimiento y la capacidad de realizar operaciones confidenciales. cálculo. Los ejecutables se ejecutan de forma autónoma en un DON y realizan funciones deterministas. operaciones. Trabajan de la mano con adaptadores que vinculan el DON a recursos externos y puede ser llamado mediante ejecutables. Los adaptadores, tal como los imaginamos para DONs, son una generalización de los adaptadores externos en Chainlink hoy. Mientras que los adaptadores existentes normalmente solo recuperan datos de fuentes de datos, los adaptadores pueden funcionar bidireccionalmente; en DONs, también pueden aprovechar el cálculo conjunto de DON nodos para lograr características adicionales, como el cifrado de informes para preservar la privacidad del consumo por parte de un ejecutable. Para dar una idea del funcionamiento básico de un DON, la Fig. 1 muestra conceptualmente cómo DON podría usarse para enviar informes a blockchain y así lograr la funcionalidad tradicional y existente de oracle. DONs puede proporcionar muchas características adicionales, sin embargo, más allá 1La “tríada de la CIA” de la seguridad de la información [123, p. 26, §2.3.5].Redes existentes de Chainlink. Por ejemplo, dentro de la estructura general de la Fig. 1, el ejecutable podría registrar datos de precios de activos obtenidos en el DON, utilizando dichos datos para calcular, por ejemplo, un promedio final para sus informes. Figura 1: Figura conceptual que muestra como ejemplo cómo una red Oracle descentralizada puede realizar la funcionalidad básica oracle, es decir, transmitir datos fuera de la cadena a un contrato. un El ejecutable utiliza adaptadores para obtener datos fuera de la cadena, sobre los cuales calcula y envía la salida. a través de otro adaptador a un objetivo blockchain. (Los adaptadores se inician mediante código en el DON, representado por pequeños cuadros azules; Las flechas muestran la dirección del flujo de datos para este ejemplo particular.) El ejecutable también puede leer y escribir en el DON local almacenamiento para mantener el estado y/o comunicarse con otros ejecutables. Las redes flexibles, la computación y el almacenamiento en DONs, todos representados aquí, permiten una gran cantidad de funciones novedosas. aplicaciones. Un beneficio importante de DONs es su capacidad para iniciar nuevos servicios blockchain. DONs son un vehículo mediante el cual las redes oracle existentes pueden implementar rápidamente aplicaciones de servicio eso hoy requeriría la creación de redes especialmente diseñadas. Damos una serie de ejemplos de tales aplicaciones en la Sección 4. En la Sección 3, proporcionamos más detalles sobre DONs, describiendo sus capacidades en términos de la interfaz que presentan a los desarrolladores y usuarios. 1.2 Siete objetivos clave de diseño Aquí revisamos brevemente los siete enfoques clave enumerados anteriormente para la evolución de Chainlink, a saber:Híbridos smart contracts: Central para nuestra visión de Chainlink es la idea de seguridad combinando componentes dentro y fuera de la cadena en smart contracts. Nos referimos a los contratos hacer realidad esta idea como smart contracts híbridos o contratos híbridos.2 Las cadenas de bloques son y seguirán desempeñando dos funciones fundamentales en el servicio descentralizado. Ecosistemas: ambos son los lugares donde se representa la propiedad de las criptomonedas. y anclajes sólidos para servicios descentralizados. Por lo tanto, los contratos inteligentes deben representarse o ejecutarse en la cadena, pero sus capacidades en la cadena son muy limitadas. puramente El código de contrato en cadena es lento, costoso e insular, incapaz de beneficiarse del mundo real. datos y una variedad de funcionalidades que son inherentemente inalcanzables en la cadena, incluidas varias formas de cálculo confidencial, generación de (pseudo)aleatoriedad segura contra manipulación minera / validator, etc. Para que smart contracts alcancen su máximo potencial, se requieren smart contracts estar diseñado con dos partes: una parte en cadena (que normalmente denotamos por SC) y una parte fuera de la cadena, un ejecutable que se ejecuta en un DON (que normalmente denotamos por ejecutivo). El objetivo es lograr una composición segura de la funcionalidad en cadena con la multiplicidad de servicios fuera de la cadena que los DONs pretenden proporcionar. Juntas, las dos partes conformar un contrato híbrido. Presentamos la idea conceptualmente en la Fig. 2. Ya hoy, Chainlink servicios3, como fuentes de datos y VRF, permiten mejoras que de otro modo serían inalcanzables. smart contract aplicaciones, que van desde DeFi hasta NFTs generadas de manera justa y seguros descentralizados, como primeros pasos hacia un marco más general. Como servicios Chainlink expandirse y crecer en rendimiento de acuerdo con nuestra visión en este documento técnico, también aumentará la potencia de los sistemas smart contract en todos los blockchain. Se puede considerar que nuestros otros seis enfoques clave en este documento técnico actúan en el servicio. del primero, general, de contratos híbridos. Estos enfoques implican eliminar lo visible. complejidad de los contratos híbridos, creando servicios adicionales fuera de la cadena que permiten construcción de contratos híbridos cada vez más capaces y, en el caso de la minimización de la confianza, reforzar las propiedades de seguridad logradas por los contratos híbridos. dejamos la idea de contratos híbridos implícitos en gran parte del documento, pero cualquier combinación de La lógica MAINCHAIN con DON puede verse como un contrato híbrido. Abstrayendo la complejidad: Los DONs están diseñados para hacer uso de sistemas descentralizados. sistemas fáciles para desarrolladores y usuarios al abstraer la maquinaria a menudo compleja detrás de la potente y flexible gama de servicios de DONs. Servicios Chainlink existentes Ya tienes esta característica. Por ejemplo, las fuentes de datos en Chainlink hoy presentan interfaces en cadena que no requieren que los desarrolladores se preocupen por los detalles a nivel de protocolo, como los medios por los cuales OCR impone informes de consenso entre un 2La idea de composición de contratos dentro y fuera de la cadena ha surgido previamente en varios formularios, por ejemplo, sistemas de capa 2, blockchains [80] basados en TEE, etc. Nuestro objetivo es respaldar y generalizar estos enfoques y garantizar que puedan abarcar el acceso a datos fuera de la cadena y otros oracle clave servicios. Los servicios 3Chainlink comprenden una variedad de servicios y funcionalidades descentralizados disponibles a través de la red. Los ofrecen numerosos operadores de nodos compuestos en varias redes oracle en todo el ecosistema.Figura 2: Figura conceptual que representa la composición del contrato dentro y fuera de la cadena. un híbrido smart contract 3⃝consta de dos componentes complementarios: un en cadena componente SC 1⃝, residente en un blockchain, y un componente fuera de la cadena ejecutivo 2⃝que se ejecuta en un DON. El DON también sirve como puente entre los dos componentes. como conectar el contrato híbrido con recursos fuera de la cadena, como servicios web, otros blockchains, almacenamiento descentralizado, etc. conjunto descentralizado de nodos. DONs van un paso más allá en el sentido de que amplían la gama de servicios para los cuales Chainlink puede ofrecer a los desarrolladores una capa de abstracción con interfaces optimizadas que lo acompañan para servicios de alto nivel. Presentamos varios ejemplos de aplicaciones en la Sección 4 que destacan este enfoque. Imaginamos que las empresas, por ejemplo, utilicen DONs como una forma de middleware seguro para conectar sus sistemas heredados a blockchains. (Consulte la Sección 4.2.) Este uso de DON abstrae la complejidad de la dinámica general de blockchain (tarifas, reorganizaciones, etc.). También abstrae las características de blockchains específicos, lo que permite a las empresas conectar sus sistemas existentes a una gama cada vez más amplia de sistemas blockchain sin una necesidad de experiencia especializada en estos sistemas o, más generalmente, en el desarrollo de sistemas descentralizados. En última instancia, nuestra ambición es impulsar el grado de abstracción logrado por Chainlink hasta el punto de implementar lo que llamamos una metacapa descentralizada. tal capa abstraería la distinción dentro y fuera de la cadena para todas las clases de desarrolladores y usuarios de DApps, lo que permite la creación y el uso fluidos de servicios descentralizados.Para simplificar el proceso de desarrollo, los desarrolladores podrían especificar la funcionalidad DApp en la metacapa como una aplicación virtual en un modelo de máquina unificada. ellos podrían luego use un compilador de metacapa descentralizado para crear una instancia de la DApp automáticamente como un conjunto de funcionalidades descentralizadas interoperativas que abarcan blockchains, DONs y servicios externos. (Uno de estos servicios externos podría ser un sistema empresarial, lo que haría que la metacapa fuera útil para aplicaciones que involucran sistemas empresariales heredados). La compilación es similar a cómo los compiladores y kits de desarrollo de software (SDK) modernos Apoyar a los programadores generalistas en el uso de todo el potencial del hardware heterogéneo. arquitecturas que constan de una CPU de uso general y hardware especializado como GPU, aceleradores de aprendizaje automático o enclaves confiables. La figura 3 presenta esta idea a nivel conceptual. Los smart contract híbridos son un primer paso en el camino hacia esta visión y hacia un concepto que llamamos metacontratos. Los metacontratos son aplicaciones codificadas de forma descentralizada. metacapa e implícitamente abarca la lógica dentro de la cadena (smart contracts), así como el cálculo y la conectividad fuera de la cadena entre varios blockchains y fuera de la cadena existentes. servicios. Dada la necesidad de compatibilidad con lenguajes y compiladores, nuevos modelos de seguridad y armonización conceptual y técnica de tecnologías dispares, sin embargo, la realización de una verdadera metacapa descentralizada es un objetivo ambicioso al que aspiramos a largo plazo. horizonte temporal. No obstante, es un modelo ideal útil a tener en cuenta al leer. este documento, que no se detalla aquí, pero es algo en lo que planeamos centrarnos en nuestro trabajo futuro sobre Chainlink. Escalado: Un objetivo de importancia preeminente en nuestros diseños en evolución es permitir que Chainlink red para satisfacer las crecientes necesidades de escala del ecosistema blockchain. Dado que la congestión de la red se está convirtiendo en un problema recurrente en los sistemas sin permiso existentes. blockchains [86], se están utilizando diseños nuevos y de mayor rendimiento blockchain, por ejemplo, [103, 120, 203], así como tecnologías de escalado de capa 2 complementarias, por ejemplo, [5, 12, 121, 141, 169, 186, 187]. Los servicios de Oracle deben lograr latencias y rendimientos que satisfacen las demandas de rendimiento de estos sistemas y al mismo tiempo minimizan las tarifas en cadena (por ejemplo, los costos del gas) tanto para los operadores contratados como para los usuarios comunes. Con DONs, Chainlink La funcionalidad pretende ir más allá y ofrecer un rendimiento lo suficientemente alto para sistemas puramente basados en web. Los DONs obtienen gran parte de su ganancia de rendimiento del uso de protocolos de consenso rápidos, basados en comités o sin permiso, que combinan con los blockchains. ellos apoyan. Esperamos que muchos DONs con diferentes configuraciones se ejecuten en paralelo; Diferentes DApps y usuarios pueden navegar por las compensaciones en las opciones de consenso subyacentes. según los requisitos de su aplicación. DONs pueden verse en efecto como tecnologías de capa 2. Esperamos que entre otros servicios, DONs respaldarán el Transaction Execution Framework (TEF), que facilita la integración eficiente de DONs y, por lo tanto, oracles con otros de alto rendimiento sistemas de capa 2, por ejemplo, rollups, sistemas que agrupan transacciones fuera de la cadena para lograr mejoras de rendimiento. Introducimos el TEF en la Sección 6.

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

Figura 3: Figura conceptual que muestra la realización ideal de una metacapa descentralizada. Para facilidad de desarrollo, un desarrollador especifica una DApp, resaltada en rosa, como una Aplicación en un modelo de máquina unificado. Un compilador de metacapa descentralizado genera automáticamente las funcionalidades de interoperabilidad correspondientes: smart contracts (denotado por SC), lógica (indicada por exec) en DONs, adaptadores que se conectan a servicios externos de destino, etc., como se indica resaltado en amarillo. La figura 4 muestra conceptualmente cómo los DON mejoran el escalado de blockchain (smart contract). concentrando el procesamiento de transacciones y oracle-informes fuera de la cadena, en lugar de en cadena. Este cambio en el lugar principal de cálculo reduce la latencia de las transacciones y tarifas al tiempo que aumenta el rendimiento de las transacciones. Confidencialidad: Las cadenas de bloques brindan una transparencia sin precedentes para los smart contracts y las aplicaciones que realizan. Pero existe una tensión básica entre transparencia y confidencialidad. Hoy, por ejemplo, las transacciones de intercambio descentralizadas de los usuariosFigura 4: Figura conceptual que muestra cómo las redes Oracle descentralizadas mejoran la escalado de smart contracts habilitados para blockchain. Figura A ⃝muestra un oracle convencional arquitectura. Las transacciones se envían directamente al blockchain, al igual que los informes oracle. Por tanto, el blockchain, resaltado en amarillo, es el lugar principal para el procesamiento de transacciones. La Figura B⃝ muestra el uso de DON para respaldar contratos en blockchain. Un DON El ejecutable procesa transacciones junto con datos de sistemas externos y los reenvía. resultados (por ejemplo, transacciones agrupadas o cambios en el estado del contrato resultantes de los efectos de las transacciones) al blockchain. El DON, resaltado en amarillo, es, por tanto, el principal lugar para el procesamiento de transacciones. las acciones se registran en la cadena, lo que facilita el seguimiento del comportamiento del intercambio, pero también hacer públicamente visibles las transacciones financieras de los usuarios. De manera similar, los datos transmitidos a dispositivos inteligentes los contratos permanecen en cadena. Esto hace que dichos datos sean convenientemente auditables, pero actúa como un desincentivo para los proveedores de datos que deseen proporcionar a smart contracts datos confidenciales o datos de propiedad. Creemos que las redes oracle desempeñarán un papel fundamental a la hora de catalizar la próxima generación. sistemas que combinan la transparencia innata de blockchains con nuevas protecciones de confidencialidad. En este artículo, mostramos cómo lo harán utilizando tres enfoques principales: • Adaptadores que preservan la confidencialidad: dos tecnologías con implementación planificada en las redes de Chainlink, DECO [234] y Town Crier [233], habilite los nodos oracle para recuperar datos de sistemas fuera de la cadena de manera que protejan la privacidad y los datos del usuario confidencialidad. Desempeñarán un papel clave en el diseño de adaptadores para DONs. (Consulte la Sección 3.6.2 para obtener detalles sobre estas dos tecnologías). • Cálculo confidencial: los DONs pueden simplemente ocultar sus cálculos a los blockchains que confían. Utilizando computación segura de múltiples partes y/o entornos de ejecución confiables, también es posible una mayor confidencialidad en la que DON nodos computan sobre datos sobre los cuales ellos mismos no tienen visibilidad.

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

• Compatibilidad con sistemas confidenciales de capa 2: el TEF está diseñado para admitir una variedad de sistemas de capa 2, muchos de los cuales utilizan pruebas de conocimiento cero para proporcionar diversas formas de confidencialidad de las transacciones. Analizamos estos enfoques en la Sección 3 (con detalles adicionales en la Sección 6, Apéndice B.1 y Apéndice B.2). La figura 5 presenta una vista conceptual de cómo los datos confidenciales podrían fluir desde fuentes externas a un smart contract mediante adaptadores que preservan la confidencialidad y Cálculo confidencial en un DON. Figura 5: Diagrama conceptual de operaciones de preservación de la confidencialidad en un DON en datos confidenciales (resaltados en amarillo). Datos de origen confidenciales (círculos negros) en la web Los servidores se extraen al DON mediante adaptadores que preservan la confidencialidad (líneas azules con doble flecha). El DON recibe datos derivados (círculos huecos) de estos adaptadores: el resultado de aplicar una función o, por ejemplo, compartir secretos, a la fuente sensible datos. Un ejecutable en DON puede aplicar cálculos confidenciales a datos derivados para construir un informe (doble círculo), que envía a través de un adaptador al blockchain. Creemos que las herramientas poderosas para el manejo de datos confidenciales abrirán todo un gama de aplicaciones. Entre ellos se encuentran las finanzas privadas descentralizadas (y centralizadas), la identidad descentralizada, los préstamos en cadena basados en crédito y sistemas más eficientes y eficientes. protocolos de acreditación y conocimiento del cliente fáciles de usar, como analizamos en la Sección 4. Equidad de orden para transacciones: Los diseños blockchain de hoy tienen un poco de suciedad. Secreto a voces: Están efímeramente centralizados. Los mineros y validators pueden ordenar trans-acciones como ellos elijan. El orden de las transacciones también puede ser manipulado por los usuarios como en función de las tarifas de red que pagan (por ejemplo, precios del gas en Ethereum) y en algunos casos medida aprovechando las rápidas conexiones de red. Tal manipulación puede, por Por ejemplo, tomar la forma de front-running, en el que un actor estratégico como un minero observa la transacción de un usuario e inserta su propia transacción de explotación en una anterior posición en el mismo bloque, robando efectivamente dinero del usuario aprovechando el conocimiento avanzado de la transacción del usuario. Por ejemplo, un bot puede realizar una orden de compra. antes que el de un usuario. Entonces puede aprovechar el aumento del precio de los activos inducido por la comercio del usuario. Algunos bots atacan al frente y perjudican a los usuarios normales, de forma análoga a la alta frecuencia. comercio en Wall Street—ya prevalece y está bien documentado [90], como están relacionados ataques como [159] en ejecución invertida y transacciones automatizadas que imitan [195]. Incluso han surgido recientemente propuestas para sistematizar la explotación de pedidos por parte de los mineros [110]. Las tecnologías de capa 2 como rollups no resuelven el problema, sino que simplemente recentralizan ordenando, poniéndolo en manos de la entidad que crea un rollup. Uno de nuestros objetivos es introducir en Chainlink un servicio llamado Fair Sequencing. Servicios (FSS) [137]. FSS ayuda a los diseñadores smart contract a garantizar pedidos justos para sus transacciones y evitar ataques frontales, posteriores y relacionados a las transacciones de los usuarios, así como otros tipos de transacciones, como la transmisión de informes oracle. FSS permite a DON implementar ideas como la noción rigurosa y temporal de equidad de orden introducida en [144]. Como beneficio incidental, FSS también puede reducir la red de los usuarios. tarifas (por ejemplo, costos de gasolina). Brevemente, en FSS, las transacciones pasan a través de DON, en lugar de propagarse directamente a un destino smart contract. El DON ordena las transacciones y luego las reenvía ellos al contrato. Figura 6: Ejemplo de cómo FSS es benéfico. Figura A ⃝muestra cómo un minero, explotando su poder centralizado para ordenar transacciones, puede intercambiar un par de transacciones: transacción 1⃝ llega antes de 2⃝, pero el minero lo secuencia después de 2⃝. Por el contrario, la Fig. B⃝muestra cómo un DON descentraliza el proceso de pedido entre DON nodos. Si hay quórum de los nodos honestos reciben 1⃝antes de 2⃝, el FSS hace que 1⃝ aparezca antes de 2⃝ en la cadena— evitando el reordenamiento de los mineros adjuntando números de secuencia exigibles por contrato. La Fig. 6 compara la minería estándar con FSS. Muestra cómo en la minería estándar,El proceso de pedido de transacciones está centralizado con el minero y, por lo tanto, sujeto a Manipulación, como reordenar un par de transacciones con respecto a su llegada. veces. Por el contrario, en FSS, el proceso está descentralizado entre DON nodos. Suponiendo Con un quórum de nodos honestos, FSS ayuda a hacer cumplir políticas como el ordenamiento temporal de transacciones, reduciendo las oportunidades de manipulación por parte de mineros y otras entidades. Además, dado que los usuarios no necesitan competir por pedidos preferenciales basados en el precio del gas, pueden pagar precios de gasolina relativamente bajos (mientras que las transacciones del DON se pueden agrupar para ahorrar gasolina). Minimización de confianza: Nuestro objetivo general en el diseño de DONs es facilitar un sistema altamente capa confiable de soporte para smart contracts y otros sistemas oracle dependientes mediante descentralización, herramientas criptográficas y garantías criptoeconómicas. Un DON en sí está descentralizado y los usuarios pueden elegir entre cualquier DON disponible que admite la cadena principal en la que desean operar o generar DONs adicionales con comités de nodos en los que confían. Sin embargo, para algunas aplicaciones, particularmente smart contracts, los usuarios Chainlink pueden favorecer un modelo de confianza que trate la cadena principal respaldada por un DON como más confiable que el DON mismo. Para dichos usuarios, ya tenemos o planeamos incorporar al arquitectura de la red Chainlink una serie de mecanismos que permiten contratos en una cadena principal para fortalecer las garantías de seguridad proporcionadas por DONs, mientras que en el Al mismo tiempo, también se aplican protecciones contra la posibilidad de fuentes de datos corruptas. como los servidores web de los que el DON obtiene datos. Describimos estos mecanismos en la Sección 7. Se dividen en cinco títulos principales: • Autenticación de origen de datos: herramientas que permiten a los proveedores de datos firmar digitalmente sus datos y con ello fortalecer la cadena de custodia entre el origen y el contrato de confianza. • DON informes minoritarios: indicadores emitidos por un subconjunto minoritario de DON nodos que observa mala conducta mayoritaria en el DON. • Barandillas: Lógica en una cadena principal que detecta condiciones anómalas y pausas o detiene la ejecución del contrato (o invoca otras soluciones). • Gobernanza que minimiza la confianza: uso de actualizaciones de publicación gradual para facilitar la inspección comunitaria, así como intervenciones de emergencia descentralizadas para una rápida respuesta a fallas del sistema. • Autenticación de entidades descentralizadas: uso de infraestructura de clave pública (PKI) para identificar entidades en la red Chainlink. La figura 7 presenta un esquema conceptual de nuestros objetivos de minimización de confianza. Seguridad basada en incentivos (criptoeconómica): La descentralización de la generación de informes entre oracle nodos ayuda a garantizar la seguridad incluso cuando algunos nodos están dañados.

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

Figura 7: Representación conceptual del objetivo de minimización de confianza de Chainlink, que es minimizar la necesidad de los usuarios de un comportamiento correcto del DON y fuentes de datos como la web servidores. Las luces amarillas en la figura indican loci de minimización de confianza: DON y conjuntos individuales o minoritarios de servidores web. Los puntos destacados en rosa indican los componentes del sistema. que son altamente confiables por supuesto: contratos en el blockchain y una mayoría de servidores web, es decir, servidores web en conjunto. Sin embargo, es igualmente importante garantizar que los nodos tengan un incentivo financiero para comportarse correctamente. Replantear, es decir, exigir a los nodos que proporcionen depósitos de LINK y recortar (confiscar) estos depósitos en caso de mala conducta, jugará un papel clave en Chainlink. Es un diseño de incentivo importante que ya se utiliza en varios blockchains, por ejemplo, [81, 103, 120, 204]. Sin embargo, apostar en Chainlink se ve muy diferente a staking en modo independiente. blockchains. Apostar por blockchains tiene como objetivo evitar ataques al consenso. tiene un Objetivo diferente en Chainlink: garantizar la entrega oportuna de informes oracle correctos. Un sistema staking bien diseñado para una red oracle debería generar ataques como el soborno. no rentable para un adversario, incluso cuando el objetivo es un smart contract con alta valor monetario. En este artículo, presentamos un enfoque general para staking en Chainlink con tres claves innovaciones:1. Un poderoso modelo adversarial que abarque ataques pasados por alto en las enfoques. Un ejemplo es lo que llamamos posible soborno. Esta es una forma de soborno que determina qué nodos reciben sobornos de forma condicional, por ejemplo, ofrece sobornos garantizados por adelantado a los nodos que un mecanismo staking selecciona en aleatorio para roles particulares (como desencadenar la adjudicación de informes). 2. Impacto superlineal staking, lo que significa informalmente que para tener éxito, un adversario debe tener un presupuesto de B$ mayor que los depósitos combinados de todos los oracle nodos. Más precisamente, queremos decir que en función de n, \(B(n) ≫\)dn en un red de n oracle nodos, cada uno con un monto de depósito fijo $d (más formalmente, \(B(n) is asymptotically larger in n than \)dn). La figura 8 ofrece una vista conceptual de esta propiedad. 3. El Marco de Incentivos Implícitos (IIF), un modelo de incentivos que hemos ideado para abarcar incentivos empíricamente mensurables más allá de los staking depositados explícitos fondos, incluidas las oportunidades de tarifas futuras de los nodos. El IIF amplía la noción de participación más allá de los depósitos de nodos explícitos. Figura 8: Diagrama conceptual que representa el escalado superlineal en Chainlink staking. el El soborno $B(n) requerido por un adversario crece más rápido en n que los depósitos combinados. $dn de todos los oracle nodos. Mostramos cómo el impacto IIF y el staking superlineal juntos inducen lo que llamamos un círculo virtuoso de seguridad económica para las redes oracle. Cuando entran nuevos usuarios

el sistema, aumentando las posibles ganancias futuras al ejecutar Chainlink nodos, el El costo marginal de la seguridad económica cae para los usuarios actuales y futuros. En un régimen de demanda elástica, este costo disminuido incentiva a usuarios adicionales a hacer uso de la red, perpetuando continuamente la adopción en un círculo virtuoso continuo. Nota: Si bien este documento técnico describe elementos importantes de nuestra visión para la evolución de Chainlink, es informal e incluye pocos detalles técnicos detallados. planeamos publicar documentos técnicos centrados en características y enfoques adicionales a medida que evolucionan. Además, es importante destacar que muchos elementos de la visión presentada aquí (mejoras de escala, tecnologías de confidencialidad, FSS, etc.) pueden y serán implementado en forma preliminar incluso antes de que los DONs avanzados se conviertan en una característica básica de Chainlink. 1.3 Organización de este documento Presentamos nuestro modelo de seguridad y notación en la Sección 2 y describimos el Descentralizado API de Oracle Network en la Sección 3. En la Sección 4, presentamos una serie de ejemplos de aplicaciones para las cuales DONs proporcionan una plataforma de implementación atractiva. Los lectores pueden Aprenda la mayoría de los conceptos clave del artículo leyendo hasta este punto. El resto del artículo contiene más detalles. Describimos la secuenciación justa Services (FSS) en la Sección 5 y el Marco de Ejecución de Transacciones (TEF) en la Sección 6. Describimos nuestro enfoque para la minimización de la confianza en la Sección 7. Consideramos algunos importantes requisitos de implementación DON, a saber, implementación incremental de funciones, membresía dinámica del libro mayor y responsabilidad en la Sección 8. Finalmente, en la Sección 9, brindamos una descripción general de nuestro enfoque en desarrollo para el diseño de incentivos. Concluimos en la Sección 10. Para ayudar a los lectores que tienen una familiaridad limitada con los conceptos de este documento, proporcione un glosario en el Apéndice A. Presentamos más detalles sobre la interfaz DON y funcionalidad en el Apéndice B y presentar algunos adaptadores de ejemplo en el Apéndice C. En el Apéndice D, describimos una primitiva criptográfica para fuentes de datos de confianza minimizada. autenticación denominada firmas funcionales e introducir una nueva variante denominada firmas funcionales discretizadas. Discutimos algunas consideraciones relacionadas con el comité. selección para DONs en el Apéndice 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.

Modelo de seguridad y objetivos

Una red Oracle descentralizada es un sistema distribuido distinto que esperamos que inicialmente ser implementado típicamente, aunque no necesariamente, por un comité protocolo de consenso y ejecutado por un conjunto de nodos oracle. Un DON está diseñado principalmente para aumentar las capacidades de un smart contract en una cadena principal con informes oracle y otros servicios, pero puede proporcionar esos mismos servicios de soporte a otros sistemas que no sean blockchain y, por lo tanto, no necesita estar asociado con una cadena principal en particular.

Por lo tanto, el modelo y las propiedades que consideramos son en gran medida independientes del uso de las aplicaciones particulares de un DON. 2.1 Modelo arquitectónico actual Es importante recalcar que Chainlink hoy no es un servicio monolítico, sino más bien un marco sin permiso dentro del cual es posible lanzar distintos e independientes redes de oracle nodos [77]. Las redes tienen conjuntos heterogéneos de operadores de nodos y diseños. También pueden diferir en términos de los tipos de servicios que brindan, lo que puede incluir, por ejemplo, fuentes de datos, prueba de reservas, aleatoriedad verificable, etc. Otro Las diferencias pueden incluir el grado de descentralización, el tamaño de la red en términos de valor bloqueado que admite y varios parámetros de nivel de servicio, como la frecuencia de datos y precisión. El modelo sin permisos de Chainlink fomenta el crecimiento de un ecosistema en el que Los proveedores se especializan en los servicios que mejor pueden brindar a la comunidad. esto Es probable que un modelo genere menores costos para los usuarios y una mayor calidad de servicio que un modelo que requiere que todos los nodos y redes proporcionen una gama completa de servicios, un enfoque que fácilmente puede derivar en la adopción en todo el sistema de los servicios que representan los menos denominador común de los recursos disponibles para los nodos. A medida que Chainlink evoluciona hacia diseños basados en DON en Chainlink 2.0, continuamos apoyar el modelo de un marco abierto y sin permisos, teniendo en cuenta el objetivo de Proporcionar a los usuarios una gama de opciones de servicios que globalmente resulten en la mejor combinación. con requisitos de aplicación particulares. 2.2 Supuestos de consenso Usamos el término Red Oracle Descentralizada para abarcar la funcionalidad completa de el sistema oracle que describimos: tanto la estructura de datos que mantienen los nodos oracle como la API principal colocada encima. Usamos el término libro mayor (minúscula), denotado por L, para referirnos a los datos subyacentes. estructura mantenida por un DON y utilizada para respaldar los servicios particulares que proporciona. Hacemos hincapié en que nuestro marco DON no trata a L como un sistema independiente como a blockchain: Su propósito es soportar blockchains y otros sistemas. Las cadenas de bloques son, Por supuesto, es una manera de crear un libro de contabilidad confiable, pero hay otras. esperamos DONs en muchos casos para realizar sus libros de contabilidad subyacentes utilizando Byzantine Fault Tolerant (BFT), que son considerablemente anteriores a blockchains como Bitcoin [174]. Usamos Notación de tipo BFT y propiedades en todo el documento para mayor comodidad, aunque enfatice que DONs se pueden realizar utilizando protocolos de consenso sin permiso. Conceptualmente, un libro mayor L es un tablero de anuncios en el que los datos se ordenan linealmente. Generalmente consideramos que un libro mayor tiene algunas propiedades clave comúnmente atribuidas a blockchains [115]. Un libro mayor es: • Sólo anexar: Los datos, una vez agregados, no se pueden eliminar ni modificar.• Público: Cualquiera puede leer su contenido, que es consistente a lo largo del tiempo en el vista de todos los usuarios.4 • Disponible: escritores autorizados siempre pueden escribir en el libro mayor y leerlo por cualquier persona de manera oportuna. Son posibles propiedades alternativas en el libro mayor para un DON cuando se realizan mediante un comité. Por ejemplo, el acceso de escritura al libro mayor podría estar restringido a ciertos usuarios, como puede tener acceso de lectura para algunas aplicaciones, es decir, el libro mayor no necesita ser público como se define arriba. De manera similar, las reglas del libro mayor podrían permitir la modificación o redacción de datos. nosotros no Sin embargo, en este artículo se consideran explícitamente tales variantes. El diseño modular de DONs puede admitir cualquiera de una amplia variedad de BFT modernos. protocolos, por ejemplo, Hotstuff[231]. La elección exacta dependerá de supuestos de confianza y características de la red entre los oracle nodos. En principio, un DON podría alternativamente utilizar un blockchain sin permiso de alto rendimiento para su libro mayor en su función de soporte de un sistema igualmente escalable de capa 2 o blockchain. Asimismo, también es posible la hibridación: En principio, el DON podría estar compuesto por nodos que son validators en un sistema existente. blockchain, por ejemplo, en sistemas de prueba de participación en los que se seleccionan comités para ejecutar transacciones, por ejemplo, [8, 81, 120, 146, 204]. Este modo particular de operación requiere que Los nodos operan de manera de doble uso, es decir, operan como nodos blockchain y DON. nodos. (Ver la Sección 8.2 para una discusión de técnicas para asegurar la continuidad en el cambio comités y el Apéndice F para algunas advertencias sobre la selección aleatoria de comités.) En la práctica, en los algoritmos BFT modernos, los nodos firman digitalmente mensajes en el libro mayor. Por conveniencia, asumimos que L tiene una clave pública asociada pkL y que su contenido están firmados por la clave privada correspondiente. Esta notación general se aplica incluso cuando los datos en L se firman usando firmas de umbral.5 Las firmas de umbral son convenientes, ya que permiten una identidad persistente para un DON incluso con cambios de membresía en los nodos que lo ejecutan. (Ver Apéndice B.1.3.) Por lo tanto, asumimos que skL tiene un secreto compartido. en forma de umbral (k, n) para algún parámetro de seguridad k, por ejemplo, k = 2f + 1 y n = 3f + 1, donde f es el número de nodos potencialmente defectuosos. (Al elegir k en este De esta manera, nos aseguramos de que los nodos defectuosos no puedan aprender skL ni montar una denegación de servicio. ataque impidiendo su uso.) Un mensaje en L toma la forma M = (m, z), donde m es una cadena y z un mensaje único. número de índice secuencial. Cuando corresponda, escribimos mensajes en la forma m = ⟨Tipo de mensaje: carga útil⟩. El tipo de mensaje MessageType es azúcar sintáctico que indica la función de un mensaje en particular. 4En los casos en los que un blockchain sin carácter definitivo realiza un libro mayor, la inconsistencia generalmente se abstrae lejos ignorando los bloques insuficientemente profundos o “podando” [115]. 5En la práctica, algunas bases de código, por ejemplo, LibraBFT [205], una variante de Hotstuff, han adoptado actualmente firmas múltiples, en lugar de firmas de umbral, el intercambio ofrecía una complejidad de comunicación reducida para Ingeniería más sencilla. Con algún costo adicional, los nodos oracle pueden agregar firmas de umbral a los mensajes escritos para L incluso si el protocolo de consenso utilizado para L no los emplea.2.3 Notación Denotamos el conjunto de n oracle nodos que ejecutan el libro mayor como O = {Oi}n yo=1. tal Un conjunto de nodos a menudo se denomina comité. Por simplicidad, suponemos que el conjunto de oracles que implementa la funcionalidad DON, es decir, servicios encima de L, es idéntico a que manteniendo L, pero pueden ser distintos. Dejamos que pki denote la clave pública de jugador Oi, y esquiar la clave privada correspondiente. La mayoría de los algoritmos BFT requieren al menos n = 3f + 1 nodos, donde f es el número de nodos potencialmente defectuosos; Los nodos restantes son honestos, en el sentido de que siguen el protocolo exactamente como se especifica. Nos referimos al comité O como honesto si cumple con esto requisito, es decir, tiene más de 2/3 de fracción de nodos honestos. A menos que se haga lo contrario Dicho esto, asumimos que O es honesto (y un modelo estático de corrupción). Usamos pkO / skO indistintamente con pkL/skL, según el contexto. Sea σ = Sigpk[m] una firma en el mensaje m con respecto a pk, es decir, usando clave privada correspondiente sk. Dejemos que verificar(pk, σ, m) →{falso, verdadero} denote un algoritmo de verificación de firma correspondiente. (Dejamos la generación de claves implícita en todo el artículo). Usamos la notación S para indicar una fuente de datos y S para indicar el conjunto completo de nS fuentes en un contexto determinado. Denotamos por MAINCHAIN un contrato inteligente habilitado blockchain apoyado por un DON. Usamos el término contrato de confianza para denotar cualquier contrato en MAINCHAIN que se comunica con un DON, y usa la notación SC para denotar tal contrato. Generalmente asumimos que un DON admite una única cadena principal MAINCHAIN, aunque puede admitir varias cadenas de este tipo, como mostramos en los ejemplos de la Sección 4. DON puede y normalmente admitirá múltiples contratos dependientes de MAINCHAIN. (como Como se indicó anteriormente, un DON también puede admitir servicios que no sean blockchain). 2.4 Nota sobre los modelos de confianza Como se señaló anteriormente, los DONs pueden construirse sobre protocolos de consenso basados en comités, y nosotros Se espera que utilicen habitualmente dichos protocolos. Hay muchos argumentos sólidos que una de las dos alternativas, basada en comité o sin permiso blockchains, proporciona mayor seguridad que el otro. Es importante reconocer que la seguridad de las empresas basadas en comités versus las no autorizadas Los sistemas descentralizados son inconmensurables. Comprometer un PoW o un PoS blockchain vía ataque del 51% requiere que un adversario obtenga la mayoría de los recursos de manera efímera y potencialmente de forma anónima, por ejemplo alquilando hash energía en un sistema PoW. tal En la práctica, los ataques ya han afectado a varios blockchains [200, 34]. En contraste, comprometer un sistema basado en comités significa corromper un número umbral (normalmente un tercio) de sus nodos, donde los nodos pueden ser conocidos públicamente, tener buenos recursos, y entidades confiables. Por otro lado, los sistemas basados en comités (así como los sistemas “híbridos” sin permiso) sistemas que apoyan a los comités) pueden soportar más funcionalidades que las estrictamenteSistemas sin misión. Esto incluye la capacidad de mantener secretos persistentes, como Claves de firma y/o cifrado: una posibilidad en nuestros diseños. Destacamos que, en principio, los DONs pueden construirse sobre un comité o protocolo de consenso sin permiso y los implementadores DON pueden, en última instancia, optar por adoptar cualquiera de los dos enfoques. Reforzar los modelos de confianza: Una característica clave de Chainlink hoy es la capacidad de los usuarios de seleccionar nodos basándose en registros descentralizados de sus historiales de rendimiento, como se analizó en la Sección 3.6.4. El mecanismo staking y el marco de incentivos implícitos que presentamos en la Sección 9 juntos constituyen un diseño de mecanismo riguroso y de amplio alcance. marco que brindará a los usuarios una capacidad enormemente ampliada para medir la seguridad de DONs. Este mismo marco también hará posible que los propios DONs para hacer cumplir diversos requisitos de seguridad en los nodos participantes y garantizar el funcionamiento dentro de modelos de confianza sólidos. También es posible utilizar las herramientas descritas en este documento para DONs para hacer cumplir requisitos especiales del modelo de confianza, como el cumplimiento de requisitos reglamentarios. Para Por ejemplo, utilizando las técnicas analizadas en la Sección 4.3, los nodos pueden presentar evidencia de características del operador de nodo, por ejemplo, territorio de operación, que pueden usarse para ayudar hacer cumplir, por ejemplo, el artículo 3 del Reglamento General de Protección de Datos (GDPR) (“Ámbito Territorial”) [105]. De lo contrario, dicho cumplimiento puede ser difícil de lograr. reunirse en sistemas descentralizados [45]. Además, en la Sección 7 analizamos los planes para fortalecer la solidez de DONs a través de mecanismos de minimización de confianza en las principales cadenas que soportan.

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.

Interfaz de red Oracle descentralizada y Ca-

pabilidades Aquí esbozamos brevemente las capacidades de DONs en términos del simple pero poderoso interfaz para la que están diseñados. Las aplicaciones en un DON se componen de ejecutables y adaptadores. Un ejecutable es un programa cuya lógica central es un programa determinista, análogo a un smart contract. Un ejecutable también tiene varios iniciadores que lo acompañan, programas que llaman a la entrada puntos en la lógica del ejecutable cuando ocurren eventos predeterminados, por ejemplo, en ciertos momentos (como un trabajo cron), cuando un precio cruza un umbral, etc., muy parecido a Keepers (consulte la Sección 3.6.3). Los adaptadores proporcionan interfaces a recursos fuera de la cadena y pueden ser llamados por ya sea los iniciadores o la lógica central en los ejecutables. Como su comportamiento puede depender de eso de recursos externos, los iniciadores y adaptadores pueden comportarse de forma no determinista. Describimos la interfaz de desarrollador DON y el funcionamiento de los ejecutables y adaptadores en términos de los tres recursos que normalmente se utilizan para caracterizar los sistemas informáticos: redes, computación y almacenamiento. Damos una breve descripción de cada uno de estos recursos a continuación y proporcione más detalles en el Apéndice B.

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

3.1 Redes Los adaptadores son interfaces a través de las cuales los ejecutables que se ejecutan en un DON pueden enviar y recibir datos de sistemas fuera de DON. Los adaptadores pueden verse como una generalización de los adaptadores utilizados en Chainlink hoy [20]. Los adaptadores pueden ser bidireccionales, es decir, no puede simplemente extraer, sino enviar datos desde un DON a un servidor web. También pueden aprovechar protocolos distribuidos, así como funcionalidad criptográfica, como seguridad multipartita cálculo. Figura 9: Adaptadores que conectan un DON, denominado DON1, con una variedad de recursos diferentes, incluido otro DON, denominado DON2, un blockchain (cadena principal) y su mempool, almacenamiento externo, un servidor web y dispositivos IoT (a través de un servidor web). Se muestran ejemplos de recursos externos para los que se pueden crear adaptadores. en la Fig. 9. Incluyen: • Blockchains: un adaptador puede definir cómo enviar transacciones a un blockchain y cómo leer bloques, transacciones individuales u otro estado del mismo. un adaptador También se puede definir para un mempool de blockchain. (Ver Sección 3.5.) • Servidores web: los adaptadores pueden definir API a través de las cuales se pueden recuperar datos. desde servidores web, incluidos sistemas heredados que no están especialmente adaptados para interactuando con DONs. Dichos adaptadores también pueden incluir API para enviar datos a dichos servidores. Los servidores web a los que se conecta un DON pueden servir como puertas de enlace a recursos adicionales, como dispositivos de Internet de las cosas (IoT).• Almacenamiento externo: un adaptador puede definir métodos para leer y escribir en el almacenamiento. servicios fuera del DON, como un sistema de archivos descentralizado [40, 188] o nube almacenamiento. • Otros DONs: los adaptadores pueden recuperar y transmitir datos entre DONs. Esperamos que las implementaciones iniciales de DON incluyan un conjunto de componentes básicos adaptadores para recursos externos de uso común y permitirá además DON-específicos Los adaptadores serán publicados por DON nodos. Mientras los desarrolladores smart contract escriben adaptadores hoy, esperamos que construyan adaptadores aún más potentes utilizando este avanzado funcionalidad. Esperamos que, en última instancia, los usuarios puedan crear nuevos adaptadores en un manera sin permiso. Algunos adaptadores deben construirse de manera que garanticen la persistencia y disponibilidad de recursos externos controlados por un DON. Por ejemplo, el almacenamiento en la nube puede requieren el mantenimiento de una cuenta de servicios en la nube. Además, un DON puede realizar gestión descentralizada de claves privadas en nombre de los usuarios (como en, por ejemplo, [160]) y/o ejecutables. En consecuencia, el DON es capaz de controlar recursos, como criptomonedas, que pueden usarse, por ejemplo, para enviar transacciones en un objetivo blockchain. Consulte el Apéndice B.1 para obtener más detalles sobre los adaptadores DON, así como el Apéndice C para algunos Adaptadores de ejemplo. 3.2 Computación Un ejecutable es la unidad básica de código en un DON. Un ejecutable es un par exec = (lógica, inicio). Aquí, la lógica es un programa determinista con un número de entradas designadas. puntos (logic1, logic2, . . . , logicℓ) e init es un conjunto de iniciadores correspondientes (init1, init2, . . . , inicio). Para garantizar la total auditabilidad del DON, la lógica de un ejecutable utiliza el libro mayor subyacente L para todas las entradas y salidas. Así, por ejemplo, cualquier adaptador Los datos que sirven como entrada para un ejecutable deben almacenarse primero en L. Iniciadores: Los iniciadores en Chainlink hoy provocan ejecuciones de trabajos dependientes de eventos en Chainlink nodos [21]. Los iniciadores en DONs funcionan de manera muy similar. Sin embargo, un iniciador DON está específicamente asociado con un ejecutable. Un iniciador puede depender en un evento o estado externo, en la hora actual o en un predicado en el estado DON. Al depender de los acontecimientos, los iniciadores pueden, por supuesto, comportarse de forma no determinista. (al igual que, por supuesto, los adaptadores). Un iniciador puede ejecutarse dentro de nodos DON individuales y por lo tanto no es necesario depender de un adaptador. (Consulte el Ejemplo 1 a continuación). Los iniciadores son una característica importante que distingue los ejecutables de los smart contracts. Debido a que un ejecutable puede ejecutarse en respuesta a un iniciador, puede operar efectivamente de forma autónoma, como por supuesto, por extensión, un contrato híbrido que incorpore el ejecutable. Una forma de iniciadores hoy en día son los Chainlink Keepers, que proporcionan transaccionesservicios de automatización, que desencadenan la ejecución de smart contract, como la liquidación de préstamos con garantía insuficiente y la ejecución de operaciones de órdenes limitadas, según informes oracle. Convenientemente, los iniciadores en DONs también pueden verse como una forma de especificar el acuerdos de servicio que se aplican a un ejecutable, ya que definen las circunstancias bajo que el DON debe llamarlo. El siguiente ejemplo ilustra cómo funcionan los iniciadores dentro de un ejecutable: Ejemplo 1 (alimentación de precios activada por desviación). Un smart contract SC puede requerir nueva datos de alimentación de precios (ver Sección 3.6.3) siempre que haya un cambio sustancial, por ejemplo, 1%, en el tipo de cambio entre un par de activos, por ejemplo, ETH-USD. Precio sensible a la volatilidad Los feeds son compatibles con Chainlink hoy, pero es instructivo ver cómo se pueden realizado en un DON mediante un ejecutable execfeed. El ejecutable execfeed mantiene el precio r ETH-USD más reciente en L, en el forma de una secuencia de ⟨NuevoPrecio: j, r⟩entradas, donde j es un índice incrementado con cada actualización de precios. Un iniciador init1 hace que cada nodo Oi monitoree el precio actual de ETH-USD durante desviaciones de al menos el 1% del precio r almacenado más recientemente con índice j. sobre detección de tal desviación, Oi escribe su vista actual ri del nuevo precio en L usando una entrada del formulario ⟨PriceView: i, j + 1, ri⟩. Un segundo iniciador init2 se activa cuando al menos k entradas de PriceView con nuevo precio Los valores para el índice j + 1 creados por distintos nodos se han acumulado en L. Entonces, init2 invoca una lógica de punto de entrada2 para calcular la mediana ρ de los primeros k valores nuevos y válidos de vista de precios y escribe un valor nuevo ⟨NuevoPrecio: j + 1, ρ⟩to L. (Operacionalmente, nodos pueden turnarse como escritores designados.) Un tercer iniciador init3 busca entradas de NewPrice en L. Cada vez que aparece un nuevo informe ⟨NewPrice: j, r⟩ aparece allí, invoca una lógica de punto de entrada3 que empuja (j, r) a SC usando un adaptador. Como hemos señalado, un ejecutable es similar en sus capacidades a un smart contract. Sin embargo, aparte de su mayor rendimiento, se diferencia de un contrato típico de cadena principal. de dos maneras esenciales: 1. Confidencialidad: un ejecutable puede realizar cálculos confidenciales, es decir, un programa secreto puede procesar entradas de texto sin cifrar o un programa publicado puede procesar datos de entrada secretos, o una combinación de ambos. En un modelo simple, los datos secretos pueden ser accedido por DON nodos, que ocultan resultados intermedios y revelan solo valores procesados y desinfectados a MAINCHAIN. También es posible ocultar datos confidenciales de los propios DON: los DON están destinados a respaldar enfoques como como computación multipartita, por ejemplo, [42, 157], y entornos de ejecución confiables (TEE) [84, 133, 152, 229] para este propósito.6 6Por extensión, también es posible mantener los ejecutables en secreto con respecto a los nodos DON. aunque esto sólo es práctico hoy en día para ejecutables no triviales que utilizan TEE.2. Función de soporte: un ejecutable está destinado a admitir smart contracts en un servidor principal. cadena, en lugar de reemplazarlos. Un ejecutable tiene varias limitaciones que un smart contract no: (a) Modelo de confianza: un ejecutable opera dentro del modelo de confianza definido por el DON: Su correcta ejecución depende del comportamiento honesto de O. (Un punto principal cadena puede, sin embargo, proporcionar algunas barreras contra DON malas prácticas, como discutido en la Sección 7.3.) (b) Acceso a activos: un DON puede controlar una cuenta en un blockchain y, por lo tanto, controlar los activos en él a través de un adaptador. Pero un DON no puede tener autoridad representan activos creados en una cadena principal, por ejemplo, Ether o ERC20 tokens, ya que su cadena nativa mantiene el registro autorizado de su propiedad. (c) Ciclo de vida: DONs pueden dejarse de lado intencionalmente con una vida útil limitada, ya que definido por acuerdos de nivel de servicio en cadena entre DONs y los propietarios de contratos de confianza. Las cadenas de bloques, por el contrario, están destinadas a funcionar como sistemas de archivos permanentes. Consulte el Apéndice B.2 para obtener más detalles sobre el cálculo DON. 3.3 Almacenamiento Como sistema basado en comités, un DON puede almacenar cantidades moderadas de datos de forma persistente en L a un costo mucho menor que un blockchain sin permiso. Además, a través de adaptadores, DONs pueden hacer referencia a sistemas descentralizados externos para almacenamiento de datos, por ejemplo, Filecoin [85], y de ese modo puede conectar dichos sistemas a smart contracts. Esta opción es particularmente atractivo para los datos masivos como medio para abordar el problema generalizado de la "inflación" en blockchain sistemas. Por lo tanto, los DONs pueden almacenar datos local o externamente para utilizarlos en sus servicios específicamente admitidos. Un DON también puede hacer uso de dichos datos de forma confidencial, informática sobre datos que: (1) se comparten en secreto entre DON nodos o se cifran bajo una clave administrada por DON nodos de manera adecuada para un cálculo multipartito seguro o cifrado parcial o totalmente homomórfico; o (2) protegido mediante una ejecución confiable ambiente. Esperamos que DONs adopte un modelo simple de administración de memoria común a Sistemas de contrato inteligente: un ejecutable solo puede escribir en su propia memoria. Ejecutables Sin embargo, puede leer de la memoria de otros ejecutables. Consulte el Apéndice B.3 para obtener más detalles sobre el almacenamiento de DON. 3.4 Marco de ejecución de transacciones (TEF) Los DONs están destinados a respaldar contratos en una cadena principal MAINCHAIN (o en múltiples cadenas principales). El Marco de Ejecución de Transacciones (TEF), discutido en detalleen la Sección 6, es un enfoque de propósito general para la ejecución eficiente de un contrato SC en MAINCHAIN y un DON. El TEF está destinado a soportar FSS y capa 2. tecnologías—simultáneamente, si así lo desea. De hecho, es probable que sirva como vehículo principal para el uso de FSS (y por esa razón, no analizamos más FSS en esta sección). Brevemente, en TEF un contrato objetivo original SC diseñado o desarrollado para MAINCHAIN se refactoriza en un contrato híbrido. Esta refactorización produce los dos interoperativos Partes del contrato híbrido: un contrato MAINCHAIN SCa al que nos referimos para mayor claridad. en el contexto de los TEF como contrato ancla y ejecutivos ejecutables en un DON. el El contrato SCa custodia los activos de los usuarios, ejecuta transiciones de estado autorizadas y también proporciona barandillas (consulte la Sección 7.3) contra fallas en el DON. Los ejecutivos ejecutables secuencia transacciones y proporciona datos oracle asociados para ellas. Puede agruparse transacciones para SCa de varias maneras, por ejemplo, utilizando pruebas basadas en validez o rollups optimistas, ejecución confidencial por parte del DON, etc. Esperamos desarrollar herramientas que faciliten a los desarrolladores la partición de un contrato. SC escrito en un lenguaje de alto nivel en piezas de lógica MAINCHAIN y DON, SCa y ejecutivos respectivamente, que componen de forma segura y eficiente. Uso de TEF para integrar esquemas de transacciones de alto rendimiento con sistemas de alto rendimiento oracles es parte integral de nuestro enfoque de escalamiento oracle. 3.5 Servicios de Mempool Una característica importante de la capa de aplicación que pretendemos implementar en DONs como soporte de FSS y TEF son Mempool Services (MS). MS puede verse como un adaptador, pero uno con soporte de primera clase. MS proporciona soporte para el procesamiento de transacciones compatibles con legados. En este uso, MS ingiere del mempool de una cadena principal aquellas transacciones destinadas a un contrato objetivo SC en CADENA PRINCIPAL. Luego, MS pasa estas transacciones a un ejecutable en el DON, donde se procesan de la forma deseada. Los datos de MS pueden ser utilizados por DON para componer transacciones que luego se pueden pasar directamente a SC desde el DON o a otro contrato que llama SC. Por ejemplo, el DON puede reenviar transacciones recolectado a través de MS, o puede usar datos de MS para establecer los precios del gas para las transacciones que envía a CADENA PRINCIPAL. Debido a que monitorea el mempool, MS puede obtener transacciones de los usuarios que interactúan directamente con SC. De esta manera los usuarios podrán continuar generando sus transacciones usando software heredado, es decir, aplicaciones que desconocen la existencia de MS y configuraciones de MS. contratos. (En este caso, se debe cambiar SC para ignorar las transacciones originales y aceptar sólo aquellos procesados por el MS, para evitar el doble procesamiento.) Para su uso con un SC de contrato objetivo, MS puede usarse con FSS y/o TEF.3.6 Pasos a seguir: capacidades Chainlink existentes 3.6.1 Informes fuera de cadena (OCR) Los informes fuera de la cadena (OCR) [60] son un mecanismo en Chainlink para la agregación y transmisión de informes oracle a un SC de contrato de confianza. Implementado recientemente por el precio Chainlink redes de alimentación, representa un primer paso en el camino hacia DONs completos. En esencia, OCR es un protocolo BFT diseñado para funcionar de forma parcialmente sincrónica. red. Garantiza vivacidad y corrección en presencia de f < n/3 arbitrariamente nodos defectuosos, lo que garantiza las propiedades de la transmisión confiable bizantina, pero no es un protocolo de consenso completo BFT. Los nodos no mantienen registros de mensajes que sean consistente en el sentido de representar un libro mayor que es idéntico en todas sus vistas, y el líder del protocolo puede equivocarse sin violar la seguridad. Actualmente, el OCR está diseñado para un tipo de mensaje particular: agregación medianizada de (al menos 2f +1) valores informados por los nodos participantes. Proporciona una garantía clave sobre los informes que genera para SC, llamados informes atestiguados: El valor mediano en un informe atestiguado El informe es igual o se encuentra entre los valores informados por dos nodos honestos. Esta propiedad es la condición clave de seguridad para OCR. El líder puede tener alguna influencia en la mediana. valor en un informe certificado, pero sólo sujeto a esta condición de exactitud. OCR puede extenderse a tipos de mensajes que agregan valores de diferentes maneras. Si bien los objetivos actuales de vida y corrección de la red Chainlink no requieren Para que OCR sea un protocolo de consenso completo, requieren que OCR proporcione algunas formas adicionales de funcionalidad que no están presentes en los protocolos BFT convencionales, en particular: 1. Difusión de informes fuera de cadena de todo o nada: el OCR garantiza que un informe verificado se pone rápidamente a disposición de todos los nodos honestos o de ninguno de ellos. Esto es una justicia propiedad que ayuda a garantizar que los nodos honestos tengan la oportunidad de participar en transmisión de informe certificada. 2. Transmisión confiable: OCR garantiza, incluso en presencia de errores o maliciosos nodos, que todos los informes y mensajes de OCR se transmiten al SC dentro de un cierto, intervalo de tiempo predefinido. Esta es una propiedad de vida. 3. Minimización de la confianza basada en contratos: SC filtra informes generados por OCR potencialmente erróneos, por ejemplo, si sus valores informados se desvían significativamente de otros. los recibidos recientemente. Esta es una forma de aplicación de la corrección extraprotocolo. Estas tres propiedades desempeñarán un papel natural en DONs. La transmisión de todo o nada fuera de la cadena (DON) es un componente importante para las garantías criptoeconómicas en torno a una transmisión confiable, que a su vez es una propiedad esencial del adaptador. confianza La minimización en SC es un tipo de barandilla, como se analiza en la Sección 7.3. OCR también proporciona una base para la implementación operativa y el refinamiento de los protocolos BFT en las redes oracle de Chainlink y, por lo tanto, como se señaló anteriormente, un camino hacia la implementación completa. funcionalidad de DONs.3.6.2 DECO y Pregonero DECO [234] y Town Pregonero [233] son un par de tecnologías relacionadas que actualmente se están desarrollado en redes Chainlink. La mayoría de los servidores web actuales permiten a los usuarios conectarse a través de un canal seguro utilizando un protocolo. llamado Seguridad de la capa de transporte (TLS) [94]. (HTTPS indica una variante de HTTP que está habilitado con TLS, es decir, las URL con el prefijo “https” indican el uso de TLS por motivos de seguridad). Sin embargo, la mayoría de los servidores habilitados para TLS tienen una limitación notable: no firman digitalmente. datos. En consecuencia, un usuario o Prover no puede presentar los datos que recibe de un servidor. a un tercero o Verificador, como oracle o smart contract, de una manera que garantice la autenticidad de los datos. Incluso si un servidor firmara datos digitalmente, seguiría existiendo un problema de confidencialidad. Un Prover puede desear redactar o modificar datos confidenciales antes de presentarlos a un Verificador. Sin embargo, las firmas digitales están diseñadas específicamente para invalidar datos modificados. De este modo impiden que un demostrador realice modificaciones que preserven la confidencialidad. a los datos. (Consulte la Sección 7.1 para obtener más información). DECO y Town Crier están diseñados para permitir que un probador obtenga datos de una red servidor y presentarlo a un Verificador de una manera que garantice su integridad y confidencialidad. Los dos sistemas preservan la integridad en el sentido de que garantizan que los datos presentados por El Prover to the Verifier se origina auténticamente en el servidor de destino. ellos apoyan confidencialidad en el sentido de permitir al Prover redactar o modificar datos (mientras aún preservar la integridad). Una característica clave de ambos sistemas es que no requieren ninguna modificación en un servidor web de destino. Pueden operar con cualquier servidor habilitado para TLS existente. De hecho, son transparentes para el servidor: Desde el punto de vista del servidor, el Probador es estableciendo una conexión ordinaria. Los dos sistemas tienen objetivos similares, pero difieren en sus modelos de confianza e implementaciones, como ahora explicamos brevemente. DECO hace uso fundamental de protocolos criptográficos para lograr su integridad y propiedades de confidencialidad. Mientras establece una sesión con un servidor de destino utilizando DECO, el Prover participa al mismo tiempo en un protocolo interactivo con el Verificador. Este protocolo permite al probador demostrarle al verificador que ha recibido un dato determinado D del servidor durante su sesión actual. El probador puede alternativamente presentar al verificador una prueba de conocimiento cero de alguna propiedad de D y por lo tanto no revelar D directamente. En un uso típico de DECO, un usuario o un solo nodo puede exportar datos D desde un privado sesión con un servidor web a todos los nodos en un DON. Como resultado, el DON completo puede dar fe de la autenticidad de D (o de un hecho derivado de D mediante una prueba de conocimiento cero). Además de las aplicaciones de ejemplo que se dan más adelante en este documento, esta capacidad se puede utilizado para amplificar el acceso de alta integridad a una fuente de datos por parte de un DON. Incluso si solo hay un nodo tiene acceso directo a una fuente de datos, debido, por ejemplo, a un acuerdo exclusivo con un proveedor de datos: sigue siendo posible que todo el DON dé fe de la exactitud deinformes emitidos por ese nodo. Town Crier se basa en el uso de un entorno de ejecución confiable (TEE) como Intel SGX. Brevemente, un TEE funciona como una especie de caja negra que ejecuta aplicaciones en un de forma confidencial y a prueba de manipulaciones. En principio, incluso el propietario del host en el que el TEE en ejecución no puede (de manera indetectable) alterar una aplicación protegida por TEE ni ver el estado de la aplicación, que puede incluir datos secretos. Town Crier puede lograr todas las funciones de DECO y más. DECO obliga al Prover a interactuar con un único Verificador. Por el contrario, Town Crier permite un Prover para generar una prueba verificable públicamente sobre los datos D obtenidos de un servidor de destino, es decir, una prueba que cualquiera, incluso un smart contract, puede verificar directamente. El pregonero puede también ingiere y utiliza secretos de forma segura (por ejemplo, credenciales de usuario). La principal limitación de Town Crier es su dependencia de TEE. Los TEE de producción tienen Recientemente se ha demostrado que tiene una serie de vulnerabilidades graves, aunque la tecnología está en su infancia y sin duda madurará. Consulte los Apéndices B.2.1 y B.2.2 para discusión adicional sobre los TEE. Para ver algunos ejemplos de aplicaciones de DECO y Town Crier, consulte las Secciones 4.3, 4.5. y 9.4.3 y Apéndice C.1. 3.6.3 Servicios existentes en cadena Chainlink Las redes Chainlink oracle proporcionan una serie de servicios principales en una multiplicidad de blockchains y otros sistemas descentralizados en la actualidad. Mayor evolución como se describe en este documento técnico dotará a estos servicios existentes de capacidades adicionales y alcance. Tres ejemplos son: Fuentes de datos: Hoy en día, la mayoría de los usuarios de Chainlink que dependen de smart contracts hacen uso de fuentes de datos. Estos son informes sobre el valor actual de datos clave según a fuentes autorizadas fuera de la cadena. Por ejemplo, los feeds de precios son feeds que informan de los precios. de activos (criptomonedas, materias primas, divisas, índices, acciones, etc.) según intercambios o servicios de agregación de datos. Hoy en día, estos feeds ya ayudan a asegurar miles de millones de dólares en valor en cadena a través de su uso en sistemas DeFi como Aave [147] y Síntesis [208]. Otros ejemplos de fuentes de datos Chainlink incluyen datos meteorológicos para seguro de cultivos paramétrico [75] y datos electorales [93], entre muchos otros. La implementación de DONs y otras tecnologías descritas en este documento mejorará el suministro de fuentes de datos en las redes Chainlink de muchas maneras, incluyendo: • Escalamiento: OCR y posteriormente DONs tienen como objetivo permitir que los servicios Chainlink escale dramáticamente en los muchos blockchains que apoyan. Por ejemplo, esperamos que DONs ayudarán a aumentar la cantidad de fuentes de datos proporcionadas por los nodos que utilizan Chainlink de 100 a 1000 y más. Esta escala ayudará al Chainlink El ecosistema logra su objetivo de proporcionar datos relevantes para smart contracts de manera integral y satisfacer y anticipar las necesidades existentes y futuras.• Seguridad mejorada: al almacenar informes intermedios, DONs conservarán los registros de comportamientos de nodos para monitoreo y medición de alta fidelidad de su desempeño y precisión, lo que permite una sólida base empírica de los sistemas de reputación para Chainlink nodos. FSS y TEF permitirán incorporar feeds de precios con datos de transacciones de manera flexible que eviten ataques como el front-running. (Explícito) staking reforzará la protección criptoeconómica existente de la seguridad de fuentes de datos. • Agilidad de alimentación: como sistemas blockchain independientes (de hecho, en términos más generales, sistemas independientes del consumidor), los DON pueden facilitar el suministro de fuentes de datos a una multiplicidad de sistemas confiados. Un solo DON puede enviar un feed determinado simultáneamente a un conjunto de diferentes blockchains, eliminando la necesidad de redes oracle por cadena y permitiendo una rápida implementación de feeds existentes en nuevos blockchains y de adicionales feeds a través de blockchains actualmente atendidos. • Confidencialidad: la capacidad de realizar cálculos generalizados en un DON permite que los cálculos de datos confidenciales se realicen fuera de la cadena, evitando la cadena. exposición. Además, utilizando DECO o Town Pregonero, es posible lograr confidencialidad aún mayor, lo que permite la generación de informes basados en datos que no son expuesto incluso a DON nodos. Consulte la Sección 4.3 y la Sección 4.5 para ver ejemplos. Funciones aleatorias verificables (VRF): Varios tipos de DApps requieren una fuente de aleatoriedad verificablemente correcta para permitir la verificación de su propio funcionamiento justo. Los tokens no fungibles (NFTs) son un ejemplo. La rareza de las características NFT en Aavegotchi [23] y Axie Infinity [35] está determinada por Chainlink VRF, al igual que la distribución. de NFTs mediante sorteos basados en boletos en Tarjetas Ether [102]; la gran variedad de DApps de juegos cuyos resultados son aleatorios; e instrumentos financieros no convencionales, por ejemplo, juegos de ahorro sin pérdidas como PoolTogether [89], que asignan fondos a ganadores al azar. Otras aplicaciones blockchain y no blockchain también requieren seguridad fuentes de aleatoriedad, incluida la selección de comités del sistema descentralizado y la ejecución de loterías. Si bien el bloque hashes puede servir como una fuente de aleatoriedad impredecible, son vulnerables a la manipulación por parte de mineros adversarios (y hasta cierto punto por parte de los usuarios que envían transacciones). Chainlink VRF [78] ofrece una alternativa considerablemente más segura. un oracle tiene un par de claves pública/privada asociado (sk, pk) cuya clave privada se mantiene fuera de la cadena y cuya clave pública pk se publica. Para generar un valor aleatorio, aplica sk a una semilla x impredecible proporcionada por un contrato de confianza (por ejemplo, un bloque hash y parámetros específicos de DApp) usando una función F, lo que produce y = Fsk(x) junto con un prueba de corrección. (Consulte [180] para conocer el VRF disponible en Chainlink). ¿Qué hace que un VRF verificable es el hecho de que conociendo pk, es posible comprobar la exactitud de la prueba y, por tanto, de y. En consecuencia, el valor y es impredecible para un adversario que no puede predecir x o aprender sk y que el servicio no puede manipular.Chainlink VRF puede verse como solo uno más de una familia de aplicaciones que implican la custodia de claves privadas fuera de la cadena. En términos más generales, los DON pueden ofrecer seguridad y almacenamiento descentralizado de claves individuales para aplicaciones y/o usuarios, y combinar esta capacidad con cálculo generalizado. El resultado es una multitud de aplicaciones, de que damos algunos ejemplos en este documento, incluida la gestión de claves para la Prueba de Reservas (ver Sección 4.1) y para las credenciales descentralizadas de los usuarios (y otras credenciales digitales). activos) (ver Sección 4.3). Guardianes: Chainlink Keepers [87] permiten a los desarrolladores escribir código para aplicaciones descentralizadas ejecución de trabajos fuera de la cadena, generalmente para desencadenar la ejecución de smart contracts confiables. Antes de la llegada de Keepers, era común que los desarrolladores operaran este tipo de operaciones fuera de la cadena. lógicas mismas, creando puntos centralizados de falla (así como un considerable esfuerzo de desarrollo duplicado). En cambio, Keepers proporciona un marco fácil de usar para subcontratación descentralizada de estas operaciones, lo que permite ciclos de desarrollo más cortos y Fuerte garantía de vida y otras propiedades de seguridad. Los guardianes pueden apoyar cualquier de una amplia variedad de objetivos desencadenantes, incluida la liquidación de préstamos dependiente del precio o ejecución de transacciones financieras, inicio de lanzamientos aéreos o pagos en función del tiempo en sistemas con recolección de rendimiento, etc. En el marco DON, los iniciadores pueden verse como una generalización de Keepers en varios sentidos. Los iniciadores pueden hacer uso de adaptadores y, por lo tanto, pueden aprovechar una Biblioteca modularizada de interfaces para sistemas dentro y fuera de la cadena, lo que permite una rápida desarrollo de funcionalidades seguras y sofisticadas. Los iniciadores inician el cálculo en ejecutables, que a su vez ofrecen la versatilidad total de DONs, permitiendo la amplia gama de servicios descentralizados que presentamos en este documento para aplicaciones dentro y fuera de la cadena. 3.6.4 Reputación del nodo/Historial de rendimiento El ecosistema Chainlink existente documenta de forma nativa los historiales de rendimiento de nodos contribuyentes en la cadena. Esta característica ha dado lugar a una colección de recursos orientados a la reputación que absorben, filtran y visualizan datos de rendimiento en individuos. operadores de nodos y fuentes de datos. Los usuarios pueden consultar estos recursos para informarse decisiones en la selección de nodos y para monitorear el funcionamiento de las redes existentes. Capacidades similares ayudarán a los usuarios a elegir DONs. Por ejemplo, los mercados actuales sin permiso, como market.link, permiten nodos operadores para enumerar sus servicios oracle y dar fe de sus identidades fuera de la cadena a través de servicios como Keybase [4], que vinculan el perfil de un nodo en Chainlink a su los nombres de dominio existentes y las cuentas de redes sociales del propietario. Además, el rendimiento herramientas de análisis, como las disponibles en market.link y reputación.link, permiten los usuarios ver estadísticas sobre el rendimiento histórico de nodos individuales, incluido su Latencia promedio de respuesta, la desviación de los valores en sus informes de los valores de consenso. transmitidos en cadena, ingresos generados, empleos cumplidos y más. Estas herramientas de análisis también permitir a los usuarios rastrear la adopción de varias redes oracle por parte de otros usuarios, una forma derespaldo implícito de los nodos que aseguran dichas redes. El resultado es una “red de confianza” en la que, mediante el uso de nodos particulares, las aplicaciones descentralizadas de alto valor crean una señal de su confianza en esos nodos que otros usuarios pueden observar y tener en cuenta en sus propias decisiones de selección de nodos. Con DONs (e inicialmente con OCR) se produce un cambio en el procesamiento de transacciones y actividad contractual más generalmente fuera de la cadena. Un modelo descentralizado para el nodo de grabación. el rendimiento sigue siendo posible dentro del propio DON. De hecho, el alto rendimiento y la capacidad de datos de DONs hacen posible construir registros en un formato detallado manera y también para realizar cálculos descentralizados en estos registros, generando resúmenes confiables que pueden ser consumidos por los servicios de reputación y verificados en CADENA PRINCIPAL. Si bien es posible que, en principio, un DON tergiverse el comportamiento de los nodos constituyentes si una gran fracción de los nodos está corrupta, observamos que el colectivo El rendimiento de un DON en la entrega de datos en cadena es visible en MAINCHAIN y por lo tanto no puede ser tergiversado. Además, planeamos explorar mecanismos que incentivar informes internos precisos sobre el comportamiento de los nodos en un DON. Por ejemplo, al informar el subconjunto de nodos de alto rendimiento que devuelven más rápidamente datos que contribuyen a un informe transmitido en cadena, un DON crea un incentivo para que los nodos contesten errores incorrectos informes: Incluir incorrectamente nodos en este subconjunto significa excluir nodos incorrectamente que deberían haberse incluido y, por tanto, sancionarlos inválidamente. Las fallas repetidas en los informes por parte de un DON también crearían un incentivo para que los nodos honestos abandonen el DON. Compilación descentralizada de historiales de desempeño precisos y el consiguiente capacidad de los usuarios para identificar nodos de alto rendimiento y de los operadores de nodos para construir las reputaciones son características distintivas importantes del ecosistema Chainlink. nosotros mostraremos en la Sección 9 cómo podemos razonar sobre ellos como pieza clave de un análisis riguroso y visión amplia de la seguridad económica proporcionada por 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].

Servicios descentralizados habilitados por descentralizados

Redes Oracle Para ilustrar la versatilidad de los DONs y cómo permiten una gran cantidad de nuevos servicios, En esta sección presentamos cinco ejemplos de aplicaciones basadas en DON y describimos las contratos híbridos que los realizan: (1) Prueba de Reservas, una forma de servicio entre cadenas; (2) Interconectar con sistemas empresariales/heredados, es decir, crear una interfaz basada en middleware. capa de abstracción que facilita el desarrollo de aplicaciones blockchain con un mínimo blockchain-código o experiencia específica; (3) Identidad descentralizada, herramientas que permiten a los usuarios obtener y gestionar sus propios documentos de identidad y credenciales; (4) Canales prioritarios, un servicio que garantiza la inclusión oportuna de transacciones de infraestructura crítica (por ejemplo, oracle informes) en un blockchain; y (5) DeFi que preserva la confidencialidad, es decir, smart contracts que ocultan los datos sensibles de las partes participantes. aquí nosotros

use SC para indicar la parte MAINCHAIN de un contrato híbrido y describa el DON componente por separado o en términos de un ejecutable exec. 4.1 Prueba de Reservas Para muchas aplicaciones, es útil transmitir el estado entre blockchains. un Una aplicación popular de este tipo de servicios es el empaquetado de criptomonedas. monedas envueltas como como WBTC [15] se están convirtiendo en un activo popular en las finanzas descentralizadas (DeFi). ellos implica depositar el activo de respaldo "envuelto" en su fuente blockchain MAINCHAIN(1) y crear un token correspondiente en un destino diferente blockchain MAINCHAIN(2). Por ejemplo, WBTC es un ERC20 token en el Ethereum blockchain que corresponde a BTC en el Bitcoin blockchain. Debido a que los contratos en MAINCHAIN(2) no tienen visibilidad directa en MAINCHAIN(1), deben confiar explícita o implícitamente en un oracle para informar sobre los depósitos del envuelto activo en un smart contract, produciendo lo que a veces se llama una Prueba de Reservas. en WBTC [15], por ejemplo, el custodio BitGo posee BTC y emite WBTC, con el Red Chainlink que proporciona Pruebas de Reserva [76]. Un DON puede proporcionar por sí mismo una Prueba de reservas. Sin embargo, con un DON es posible para ir más lejos. Un DON puede gestionar secretos y, mediante el uso de adaptadores adecuados, puede realizar transacciones en cualquier blockchain que desee. En consecuencia, es posible que el DON actúe como uno entre varios custodios, o incluso como un custodio único y descentralizado, para un activo envuelto. De este modo, DONs puede servir como plataforma para mejorar la seguridad de servicios existentes que utilizan Pruebas de Reservas. Por ejemplo, supongamos que MAINCHAIN(1) es Bitcoin y MAINCHAIN(2) es Ethereum. En MAINCHAIN(2), un contrato SC emite tokens que representan BTC envueltos. El DON controla una dirección BTC (1) DON. Entonces, para empaquetar BTC, un usuario U envía X BTC desde dirección(1) Ud. a dirección(1) DON junto con una dirección MAINCHAIN(2) (2) Ud. Los monitores DON dirección(1) DON a través de un adaptador a MAINCHAIN(1). Al observar el depósito de U, con una confirmación con una probabilidad suficientemente alta, envía un mensaje a SC a través de un adaptador para CADENA PRINCIPAL(2). Este mensaje indica al SC que acuñe X tokens para addr(2) Ud. Para que U libere X tokens, sucede lo contrario. En CADENA PRINCIPAL (1), sin embargo, dirección(1) DON envía X BTC a la dirección(1) U (o a otra dirección, si así lo solicita el usuario). Estos protocolos se pueden adaptar, por supuesto, para trabajar con intercambios, en lugar de hacerlo directamente. con los usuarios. 4.2 Interfaz con sistemas empresariales/heredados DONs pueden servir como puentes entre blockchains, como en el ejemplo de Prueba de Reservas, pero otro objetivo es que actúen como puentes bidireccionales entre blockchains y sistemas heredados [176] o blockchain sistemas similares, como el banco central monedas digitales [30]. Las empresas enfrentan una serie de desafíos al conectar sus sistemas existentes y procesos a sistemas descentralizados, incluyendo:• Agilidad de Blockchain: los sistemas Blockchain cambian rápidamente. Una empresa puede enfrentar la rápida aparición o el aumento de popularidad de blockchains en los que contrapartes desean realizar transacciones, pero para las cuales la empresa no tiene apoyo en su infraestructura existente. En general, el dinamismo de blockchains hace A las empresas individuales les resulta difícil mantenerse al tanto del ecosistema completo. • Recursos de desarrollo específicos de blockchain: para muchas organizaciones, contratar o incubar experiencia blockchain de vanguardia es difícil, particularmente en vista de la El desafío de la agilidad. • Gestión de claves privadas: la gestión de claves privadas para blockchains o criptomonedas requiere experiencia operativa distinta de la de la ciberseguridad tradicional. prácticas y no están disponibles para muchas empresas. • Confidencialidad: las empresas temen exponer sus datos confidenciales y de propiedad exclusiva. datos en cadena. Para abordar las primeras tres de estas dificultades, los desarrolladores pueden simplemente usar un DON como una capa de middleware segura para permitir que los sistemas empresariales lean o escriban blockchains. El DON puede abstraer consideraciones técnicas detalladas como dinámica del gas, reorganización de la cadena, etc., tanto para desarrolladores como para usuarios. Por Al presentar una interfaz blockchain optimizada para sistemas empresariales, un DON puede así Simplifique considerablemente el desarrollo de aplicaciones empresariales compatibles con blockchain, eliminando la carga de las empresas de adquirir o incubar recursos de desarrollo específicos de blockchain. Este uso de DONs es especialmente atractivo porque permite a los desarrolladores empresariales cree aplicaciones de contratos inteligentes que sean en gran medida blockchain independientes. Como resultado, el Cuanto mayor sea el conjunto de blockchains para los cuales se instrumenta un DON para actuar como middleware, el mayor será el conjunto de blockchains a los que los usuarios empresariales pueden acceder fácilmente. Desarrolladores Puede portar aplicaciones de blockchains existentes a otras nuevas con una modificación mínima. a sus aplicaciones desarrolladas internamente. Para abordar el problema adicional de la confidencialidad, los desarrolladores pueden apelar a la herramientas que presentamos en este documento y que esperamos implementar para respaldar las aplicaciones DON. Estos incluyen la Sección 3.6.2 de DECO y Town Pregonero, así como las disposiciones para preservar la confidencialidad. Las modificaciones de API se analizan en la Sección 7.1.2 y una serie de enfoques específicos de la aplicación se tratan en el resto de esta sección. Estos sistemas DON pueden proporcionar certificaciones en cadena de alta integridad sobre el estado del sistema empresarial sin revelar datos de origen empresarial confidenciales en cadena. 4.3 Identidad descentralizada Identidad descentralizada es un término general para la noción de que los usuarios deberían poder obtener y gestionar sus propias credenciales, en lugar de depender de terceros para hacerlo entonces. Las credenciales descentralizadas son testimonios de atributos o afirmaciones del titular,que a menudo se denominan reclamaciones. Las credenciales están firmadas digitalmente por entidades, a menudo llamadas emisores, que pueden asociar con autoridad reclamaciones con los usuarios. En la mayoría de los esquemas propuestos, Los reclamos están asociados con un Identificador descentralizado (DID), un identificador universal para un usuario determinado. Las credenciales están vinculadas a una clave pública cuya clave privada posee el usuario. De este modo, el usuario puede demostrar la posesión de un crédito utilizando su clave privada. Por muy visionaria que sea la identidad descentralizada, los esquemas existentes y propuestos, por ejemplo, [14, 92, 129, 216], tienen tres limitaciones graves: • Falta de compatibilidad heredada: los sistemas de identidad descentralizados existentes dependen de una comunidad de autoridades, llamadas emisores, para producir credenciales DID. porque Los servicios web existentes generalmente no firman datos digitalmente, se deben lanzar emisores. como sistemas de propósito especial. Porque no hay ningún incentivo para hacer esto sin una ecosistema de identidad descentralizada, se produce el problema del huevo y la gallina. en otros En otras palabras, no está claro cómo poner en marcha un ecosistema de emisores. • Gestión de claves inviable: los sistemas de identidad descentralizados requieren que los usuarios gestionar claves privadas, algo que ha demostrado la experiencia con las criptomonedas una carga inviable. Se estima que unos 4.000.000 Bitcoin han sido perdido para siempre debido a fallas en la administración de claves [194], y muchos usuarios almacenan sus criptoactivos con intercambios [193], socavando así la descentralización. • Falta de resistencia de Sybil para preservar la privacidad: un requisito de seguridad básico de las aplicaciones, como la votación, la asignación justa de tokens durante las ventas de token, etc., es que los usuarios no podrán afirmar múltiples identidades. Las propuestas de identidad descentralizadas existentes requieren que los usuarios revelen sus identidades del mundo real para lograr tal resistencia de Sybil, socavando así importantes garantías de privacidad. Es posible abordar estos problemas utilizando una combinación de un comité de nodos. realizar cálculos distribuidos dentro de un DON y el uso de herramientas como DECO o Pregonero, como se muestra en un sistema llamado CanDID [160]. DECO o Town Crier pueden, por diseño, convertir los servicios web existentes sin modificaciones en emisores de credenciales que preservan la confidencialidad. Permiten que un DON exporte datos relevantes datos para este fin en una credencial y al mismo tiempo oculta datos confidenciales que no deben aparecer en la credencial. Además, para facilitar la recuperación de claves para los usuarios, abordando así la gestión de claves. problema, un DON puede permitir a los usuarios almacenar claves privadas en forma secreta compartida. Los usuarios pueden recuperar sus claves demostrando a los nodos en DON; de manera similar, usando Town Crier o DECO: la capacidad de iniciar sesión en cuentas con un conjunto de proveedores web predeterminados (por ejemplo, Twitter, Google, Facebook). El beneficio de utilizar Town Pregonero o DECO, en lugar de OAUTH, es privacidad del usuario. Esas dos herramientas permiten al usuario evitar revelar al DON un identificador de proveedor web, del cual a menudo se pueden derivar identidades del mundo real. Finalmente, para proporcionar resistencia a Sybil, como se muestra en [160], es posible que un DON realizar una transformación que preserve la privacidad de identificadores únicos del mundo real para los usuarios (por ejemplo, números de seguro social (SSN)) en identificadores en cadena al registrarse el usuario.De este modo, el sistema puede detectar registros duplicados sin datos sensibles como Los SSN se revelan a nodos DON individuales.7 Un DON puede proporcionar cualquiera de estos servicios en nombre de una identidad descentralizada externa. sistemas en blockchains sin permiso o con permiso, por ejemplo, instancias de Hyperledger Indiana [129]. Aplicación de ejemplo: KYC: La identidad descentralizada es prometedora como medio para agilizar los requisitos para aplicaciones financieras en blockchains mientras se mejora el usuario privacidad. Dos desafíos que puede ayudar a abordar son las obligaciones de acreditación y cumplimiento bajo las regulaciones contra el lavado de dinero/conozca a su cliente (AML/KYC). Las regulaciones ALD en muchos países requieren que las instituciones financieras (y otras empresas) establezcan y verifiquen las identidades de las personas y empresas con las que realizan transacciones. KYC forma un componente del sistema de una institución financiera. una política ALD más amplia, que normalmente también implica monitorear el comportamiento de los usuarios y observar los flujos de fondos, entre otras cosas. KYC generalmente implica la presentación por parte del usuario de credenciales de identidad de alguna forma (por ejemplo, entrada en un formulario web en línea, sosteniendo un documento de identidad frente a la cara del usuario en una sesión de vídeo, etc.). Creación y presentación segura de credenciales descentralizadas En principio, podría ser una alternativa beneficiosa en varios aspectos, a saber: (1) Hacer el proceso KYC sea más eficiente para los usuarios y las instituciones financieras, porque una vez Una vez obtenida la credencial, ésta podría presentarse sin problemas ante cualquier institución financiera; (2) Reducir el fraude al reducir las oportunidades de robo de identidad mediante compromisos de información de identificación personal (PII) y suplantación de identidad durante la verificación por video; y (3) Reducir el riesgo de que la PII se vea comprometida en las instituciones financieras, ya que los usuarios retienen el control de sus propios datos. Dadas las sanciones multimillonarias que pagan las instituciones financieras por incumplimiento de las normas ALD y las muchas instituciones financieras que gastan millones de dólares anualmente en KYC, las mejoras podrían generar ahorros considerables para las instituciones financieras. y, por extensión, para los consumidores [196]. Si bien el sector financiero tradicional es lento para adoptar nuevas herramientas de cumplimiento, DeFi los sistemas lo adoptan cada vez más [43]. Aplicación de ejemplo: Préstamos con garantía insuficiente: La mayoría de las aplicaciones DeFi que Los préstamos de apoyo hoy en día sólo originan préstamos totalmente garantizados. Estos son préstamos hechos a los prestatarios que depositan activos en criptomonedas de valor superior al de los préstamos. Recientemente ha surgido interés en lo que la comunidad DeFi generalmente denomina préstamos con garantía insuficiente. Se trata, por el contrario, de préstamos para los cuales la garantía correspondiente tiene un valor inferior al del principal del préstamo. Préstamos con garantía insuficiente Se parecen a los préstamos que suelen otorgar las instituciones financieras tradicionales. En lugar de confiar sobre la garantía depositada como garantía del pago del préstamo, en lugar de ello basan los préstamos decisiones sobre el historial crediticio de los prestatarios. 7Esta transformación se basa en una función pseudoaleatoria distribuida (PRF).Los préstamos con garantía insuficiente constituyen una parte incipiente pero en crecimiento del mercado de préstamos DeFi. Se basan en mecanismos como los empleados por las instituciones financieras tradicionales. instituciones, como contratos legales [91]. Un requisito imprescindible para su crecimiento. será la capacidad de proporcionar datos sobre la solvencia crediticia del usuario, un factor clave en las decisiones crediticias convencionales, a los sistemas DeFi de una manera que proporcione una sólida integridad, es decir, garantía de datos correctos. Un sistema de identidad descentralizado habilitado para DON permitiría a los posibles prestatarios generar credenciales de alta seguridad que acrediten su solvencia y al mismo tiempo preservar la confidencialidad de la información sensible. Específicamente, los prestatarios pueden generar estos credenciales basadas en registros de fuentes autorizadas en línea, al tiempo que se expone solo la datos atestiguados por el DON, sin exponer otros datos potencialmente sensibles. Para Por ejemplo, un prestatario puede generar una credencial que indique que su puntaje crediticio con una conjunto de agencias de crédito excede un umbral particular (por ejemplo, 750), sin revelar su puntuación precisa o cualquier otro dato en sus registros. Además, si lo desea, dichas credenciales se pueden generar de forma anónima, es decir, el nombre del usuario puede ser tratado como dato sensible y no está expuesto a oracle nodos o en su credencial descentralizada. la credencial En sí mismo se puede utilizar en cadena o fuera de cadena, según la aplicación. En resumen, un prestatario puede proporcionar información esencial a los prestamistas sobre su crédito. historias con gran integridad y sin riesgo de exposición de información innecesaria y sensible. datos. Un prestatario también puede proporcionar una variedad de otras credenciales que preservan la confidencialidad. útil para tomar decisiones crediticias. Por ejemplo, las credenciales pueden dar fe de la identidad de un prestatario. posesión de activos (fuera de la cadena), como mostramos en nuestro siguiente ejemplo. Ejemplo de aplicación: Acreditación: Muchas jurisdicciones limitan la clase de inversor a la que se pueden vender valores no registrados. Por ejemplo, en EE.UU., la SEC La Regulación D estipula que para ser acreditado para tales oportunidades de inversión, un El individuo debe poseer un patrimonio neto de 1 millón de dólares, cumplir con ciertos requisitos de ingresos mínimos o tener ciertas calificaciones profesionales [209, 210]. Acreditación actual Los procesos son engorrosos e ineficientes y a menudo requieren una carta de certificación de un contador, o evidencia similar. Un sistema de identidad descentralizado permitiría a los usuarios generar credenciales desde cuentas de servicios financieros en línea existentes que demuestren el cumplimiento de la acreditación regulaciones, facilitando un proceso KYC más eficiente y que preserva la privacidad. el Además, las propiedades de DECO y Town Crier que preservan la privacidad permitirían que estos Las credenciales se generarán con una sólida garantía de integridad sin revelar directamente detalles del estado financiero de un usuario. Por ejemplo, un usuario podría generar una credencial demostrar que tiene un patrimonio neto de al menos $ 1 millón sin revelar ningún dato adicional información sobre su situación financiera. 4.4 Canales Prioritarios Los canales prioritarios son un servicio nuevo y útil que es fácil de crear utilizando DON. Su

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

El objetivo es entregar transacciones seleccionadas y de alta prioridad de manera oportuna en MAINCHAIN. durante periodos de congestión de la red. Los canales prioritarios pueden verse como una forma de contrato de futuros en espacio de bloques y, por lo tanto, como criptomercancía, término acuñado como parte del Proyecto Chicago [61, 136]. Los canales prioritarios están destinados específicamente a que los mineros habiliten servicios de infraestructura, como oracles, funciones de gobernanza para contratos, etc., no para actividades ordinarias a nivel de usuario, como transacciones financieras. De hecho, tal como se diseñó aquí, una prioridad El canal implementado por menos del 100% del poder minero en la red solo puede Proporcionan límites flexibles en los plazos de entrega, lo que impide su uso para productos que dependen en gran medida de la velocidad. objetivos como correr al frente. Figura 10: Un canal prioritario es una garantía de un minero M o, más generalmente, una conjunto de mineros M: a un usuario U que su transacción τ se extraerá dentro de D bloques de inclusión en el mempool. Un contrato SC puede utilizar el monitoreo DON para hacer cumplir la Condiciones de servicio del canal. Un canal prioritario toma la forma de un acuerdo entre un minero o un conjunto de mineros. (o pools de minería) M que proporciona el canal y un usuario U que paga una tarifa por el acceso. M acepta que cuando U envía una transacción τ al mempool (con cualquier precio del gas,pero un límite de gas previamente acordado), M lo pondrá en cadena dentro de los siguientes bloques D.8 La idea se representa esquemáticamente en la Fig. 10. Descripción del contrato de canal prioritario: Un canal prioritario puede realizarse como un híbrido smart contract aproximadamente de la siguiente manera. Dejamos que SC denote la lógica en MAINCHAIN y eso en el DON por ejecutivo. SC acepta un depósito/participación \(d from M and an advance payment \)p de U. A DON el ejecutable ejecutivo monitorea el mempool y se activa al realizar una transacción por U. Envía un mensaje de éxito a SC si U envía una transacción que M extrae en de manera oportuna y un mensaje de falla en caso de falla del servicio. SC envía el pago $p a M dado un mensaje de éxito y envía todos los fondos restantes, incluyendo $d, a U si recibe un mensaje de error. Tras una terminación exitosa, libera el depósito $d a M. Por supuesto, el minero M puede proporcionar canales prioritarios simultáneamente a múltiples usuarios y puede abrir un canal prioritario con U para una cantidad de mensajes previamente acordada. 4.5 Preservación de la confidencialidad DeFi / Mixicles Hoy en día, las DeFi aplicaciones [1] brindan poca o ninguna confidencialidad a los usuarios: todas las transacciones son visibles en la cadena. Varios enfoques basados en conocimiento cero, por ejemplo, [149, 217], puede proporcionar privacidad en las transacciones, y el TEF es lo suficientemente general como para respaldarlas. pero Estos enfoques no son exhaustivos y, por ejemplo, normalmente no ocultan la activo en el que se basa una transacción. El amplio conjunto de herramientas computacionales que finalmente pretendemos respaldar en DONs Permitir la privacidad de varias maneras diferentes que pueden cerrar esas brechas, ayudando a complementar las garantías de privacidad de otros sistemas. Por ejemplo, Mixicles, un instrumento DeFi que preserva la confidencialidad propuesto por los investigadores de los laboratorios Chainlink [135], puede ocultar el tipo de activo que respalda un instrumento financiero y encaja de forma muy natural en el DON marco. Los mixicles se explican más fácilmente en términos de su uso para realizar un sistema binario simple. opción. Una opción binaria es un instrumento financiero en el que dos usuarios, que veremos consulte aquí para mayor coherencia con [135] como jugadores, apueste en un evento con dos posibles resultados, por ejemplo, si un activo excede o no un precio objetivo en un momento predeterminado. El siguiente ejemplo ilustra la idea. Ejemplo 2. Alice y Bob son partes de una opción binaria basada en el valor de un activo llamado Carol's Bubble Token (CBT). Alice apuesta a que la TCC tendrá un precio de mercado de al menos al menos 250 USD en el momento T = mediodía del 21 de junio de 2025; Bob apuesta lo contrario. cada jugador deposita 100 ETH antes de una fecha límite preestablecida. El jugador con la posición ganadora. recibe 200 ETH (es decir, gana 100 ETH). Por supuesto, 8D debe ser lo suficientemente grande como para garantizar que M pueda cumplir con una alta probabilidad. Para Por ejemplo, si M controla el 20% de la potencia minera en la red, podría elegir D = 100, asegurando una probabilidad de falla de ≈2 × 10−10, es decir, menos de uno entre mil millones.Dada una red O Chainlink oracle existente, es fácil implementar una red inteligente contrato SC que realiza el acuerdo del Ejemplo 2. Cada uno de los dos jugadores deposita 100 ETH en SC. En algún momento después de T, se envía una consulta q a O solicitando el precio r de CBT en el momento T. O envía un informe r de este precio a SC. SC luego envía dinero a Alice si r ≥250 y Bob si no. Este enfoque, sin embargo, revela r en la cadena, lo que facilita para que un observador deduzca el activo subyacente de la opción binaria. En la terminología de Mixicles, es útil pensar conceptualmente en el resultado. de SC en términos de un Switch que transmite un valor binario calculado como predicado interruptor(r). En nuestro ejemplo, switch(r) = 0 si r ≥250; dado este resultado, Alice gana. De lo contrario, switch(r) = 1 y Bob gana. Un DON puede realizar un Mixicle básico como un contrato híbrido ejecutando un ejecutable exec que calcula el switch(r) y lo reporta en cadena al SC. Mostramos esta construcción. en la figura 11. Figura 11: Diagrama de Mixicle básico en el ejemplo 2. Para proporcionar secreto en cadena para informe r, y por lo tanto el activo subyacente de la opción binaria, el oracle envía al contrato SC a través del interruptor solo el interruptor de valor binario (r). Especificamos un adaptador ConfSwitch en el Apéndice C.3 que facilita lograr esto. objetivo en un DON. La idea básica detrás de ConfSwitch es bastante simple. en lugar de informar el valor r, ConfSwitch informa solo el valor del interruptor binario switch(r). SC puede ser diseñado para realizar un pago correcto basándose únicamente en switch(r) y switch(r) por sí solo no revela información sobre el activo subyacente (CBT en nuestro ejemplo). Además, Al colocar un texto cifrado en (q, r) en el libro de contabilidad cifrado bajo pkaud, la clave pública de Como auditor, el adaptador ConfSwitch crea un registro de auditoría que preserva la confidencialidad. El Mixicle básico que hemos elegido para describir aquí por simplicidad oculta sólo el activo y apuesta detrás de la opción binaria en nuestro ejemplo. Una lata Mixicle [135] en toda regla Proporcionar dos formas de confidencialidad. Oculta a los observadores: (1) ¿Qué evento ocurrió? Los jugadores apuestan a (es decir, q y r), pero también (2) qué jugador ganó la apuesta. Dado que los Mixicles se ejecutan en MAINCHAIN, cualquiera de los jugadores necesitaría transmitir cambie(r) de DON a MAINCHAIN, o se podría crear un ejecutable que

se activa en la salida de ConfSwitch y llama a otro adaptador para enviar el interruptor (r) a CADENA PRINCIPAL. También vale la pena considerar un tercer tipo sutil de confidencialidad. En una implementación básica de ConfSwitch, O ejecuta el adaptador en el DON y, por lo tanto, aprende el activo (CBT en nuestro ejemplo) y, por tanto, la naturaleza de la opción binaria. Como se discutió Sin embargo, en el Apéndice C.3 también es posible utilizar DECO o Town Crier para ocultar incluso esta información de O. En este caso, el O no aprende más información que un observador público de SC. Para obtener más detalles sobre Mixicles, remitimos a los lectores a [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.

Servicios de secuenciación justa

Un servicio importante que esperamos que ofrezcan los DON y que aproveche sus capacidades de red, computación y almacenamiento se llama Fair Sequencing Services (FSS). Aunque FSS puede verse simplemente como una aplicación realizada dentro del marco DON, lo destacamos como un servicio que creemos tendrá una gran demanda en todo el mundo. blockchains, y que esperamos que la red Chainlink apoye activamente. Cuando se ejecuta en redes públicas blockchain, muchas de las aplicaciones DeFi actuales revelar información que los usuarios pueden explotar en su propio beneficio, de forma análoga a el tipo de filtraciones internas y oportunidades de manipulación que son omnipresentes en los mercados existentes. mercados [64, 155]. En cambio, FSS allana el camino hacia un ecosistema DeFi justo. FSS ayuda a los desarrolladores a crear DeFi contratos que estén protegidos contra la manipulación del mercado resultante de la fuga de información. Dados los problemas que destacamos a continuación, FSS es especialmente atractivo para servicios de capa 2 y encaja dentro del marco para dichos servicios que analizamos en la Sección 6. El desafío: En los sistemas sin permiso existentes, las transacciones se ordenan completamente a discreción de los mineros. En redes autorizadas, los nodos validator pueden ejercer el mismo poder. Esta es una forma de centralización efímera en gran medida no reconocida en sistemas que de otro modo estarían descentralizados. Un minero puede censurar (temporalmente) transacciones para su propio beneficio [171] o reordenarlos para maximizar su propia ganancia, una noción llamada valor extraíble minero (MEV) [90]. El término MEV es ligeramente engañoso: no se refiere solo para valorar lo que los mineros pueden capturar: algunos MEV pueden ser capturados por usuarios comunes. Sin embargo, debido a que los mineros tienen más poder que los usuarios comunes, MEV representa un límite superior en la cantidad de valor que cualquier entidad puede obtener a través de una reordenación adversa. e inserción de transacciones complementarias. Incluso cuando los mineros ordenan transacciones simplemente basado en tarifas (gas), sin manipulación, los propios usuarios pueden manipular los precios del gas para favorecer sus transacciones sobre aquellas de menos sofisticación. Daian et al. [90] documenta y cuantifica las formas en que los bots (no los mineros) toman ventaja de la dinámica del gas de una manera que perjudica a los usuarios de los sistemas DeFi actuales y cómo MEV incluso amenaza la estabilidad de la capa de consenso subyacente en un blockchain. Otros ejemplos de manipulación de órdenes de transacción surgen regularmente, por ejemplo, [50, 154].Los nuevos métodos de procesamiento de transacciones como rollups son un enfoque muy prometedor a los problemas de escala de los blockchains de alto rendimiento. Sin embargo, no abordan El problema del MEV. En lugar de ello, lo transfieren a la entidad que genera el rollup. eso entidad, ya sea el operador de un smart contract o un usuario que proporciona un (zk-)rollup con una prueba de validez, tiene la facultad de ordenar e insertar transacciones. En otras palabras, rollups intercambie MEV por REV: valor acumulable-extraíble. MEV afecta las próximas transacciones que se han enviado al mempool pero aún no están comprometidos en cadena. La información sobre dichas transacciones es ampliamente disponible en la red. Los mineros, validators y los participantes comunes de la red pueden por lo tanto, explotar este conocimiento y crear transacciones dependientes. Además, los mineros y validators pueden influir en el orden de las transacciones que realizan. ellos mismos y explotar esto en su beneficio. El problema de la influencia indebida de los líderes en la ordenación de transacciones por consenso Los protocolos se conocen en la literatura desde la década de 1990 [71, 190], pero no Hasta ahora se han implementado soluciones en la práctica [97]. La razón principal es que las soluciones propuestas (al menos hasta hace muy poco) no pueden integrarse fácilmente con las políticas públicas. blockchains, ya que dependen de que el contenido de las transacciones permanezca secreto hasta después su orden ha sido determinado. Descripción general de los servicios de secuenciación justa (FSS): DONs proporcionará herramientas para descentralizar el pedido de transacciones e implementarlo de acuerdo con una política especificada por un proveedor de confianza. creador del contrato, idealmente uno que sea justo y que no beneficie a los actores que deseen manipular el orden de las transacciones. En conjunto, estas herramientas constituyen FSS. FSS incluye tres componentes. El primero es el seguimiento de las transacciones. En SFS, oracle nodos en O monitorean el mempool de MAINCHAIN y (si lo desea) permiten Envío fuera de la cadena de transacciones a través de un canal especializado. El segundo es la secuenciación de las transacciones. Los nodos en O ordenan transacciones para un contrato de confianza. de acuerdo con una política definida para ese contrato. El tercero es la publicación de transacciones. Después de ordenar las transacciones, los nodos en O envían conjuntamente las transacciones al cadena principal. Los beneficios potenciales de FSS incluyen: • Equidad en los pedidos: FSS incluye herramientas para ayudar a los desarrolladores a garantizar que las transacciones Los insumos a un contrato en particular se ordenan de manera que no proporcionen una relación injusta. ventaja para los usuarios con buenos recursos y/o con conocimientos técnicos. Políticas de pedidos se puede especificar para este propósito. • Reducción o eliminación de fugas de información: al garantizar que los participantes de la red no puedan explotar el conocimiento sobre las próximas transacciones, FSS puede reducir o eliminar ataques como el front-running que se basan en la información disponible en la red antes de que se confirmen las transacciones. Prevenir la explotación de tales La fuga garantiza que las transacciones contradictorias que dependen de los pendientes originales las transacciones no pueden ingresar al libro mayor antes de que se confirmen las transacciones originales.• Costo de transacción reducido: al eliminar la necesidad de los jugadores de acelerar el envío sus transacciones a un smart contract, FSS puede reducir en gran medida el costo del procesamiento de transacciones. • Orden de prioridad: FSS puede dar automáticamente prioridad especial a las transacciones críticas ordenar. Por ejemplo, para evitar ataques frontales contra oracle informes, por ejemplo, [79], FSS puede insertar un informe oracle en un flujo de transacciones retroactivamente. Un objetivo general del FSS en DONs es capacitar a los creadores de DeFi para que realicen actividades justas. Sistemas financieros, es decir, sistemas que no benefician a usuarios particulares (o mineros). sobre otros sobre la base de la velocidad, el conocimiento interno o la capacidad para realizar tareas técnicas. manipulación. Si bien es difícil alcanzar una noción clara y general de justicia, y la justicia perfecta en cualquier sentido razonable es inalcanzable, FSS tiene como objetivo proporcionar a los desarrolladores una poderosa conjunto de herramientas para que puedan aplicar políticas que ayuden a cumplir sus objetivos de diseño para DeFi. Observamos que si bien el objetivo principal de FSS es actuar como un servicio de secuenciación justo para la CADENA PRINCIPAL a la que se dirige DON, algunos de los mismos deseos de equidad que FSS Las garantías también pueden ser apropiadas para protocolos (descentralizados) que se ejecutan entre DON fiestas. Por tanto, el SFS puede verse de manera más amplia como un servicio proporcionado por un subconjunto de DON nodos para secuenciar de manera justa no solo las transacciones enviadas por los usuarios de MAINCHAIN pero también transacciones (es decir, mensajes) compartidas entre otros DON nodos. En esta sección, Nos centraremos principalmente en el objetivo de secuenciar las transacciones de CADENA PRINCIPAL. Organización de la sección: en la Sección 5.1, describimos dos aplicaciones de alto nivel que motivan el diseño de FSS: evitar la ejecución frontal de informes oracle y evitar ejecución anticipada de las transacciones de los usuarios. Luego proporcionamos más detalles sobre el diseño de FSS. en la Sección 5.2. La sección 5.3 describe ejemplos de garantías y medios de ordenamiento justo. para lograrlos. Finalmente, la Sección 5.4 y la Sección 5.5 analizan las amenazas a nivel de red a tales políticas y medios para abordarlas, respectivamente, para la inundación de la red y Sybil ataques. 5.1 El problema de la vanguardia Para explicar los objetivos y el diseño de FSS, describimos dos formas generales de ejecución anticipada. ataques y las limitaciones de las soluciones existentes. Ir al frente ejemplifica una clase de ataques de orden de transacciones: Hay una serie de ataques relacionados, como backrunning y sándwiching (front-running más back-running) [237] que no cubrimos aquí, pero que FSS también ayuda a abordar. 5.1.1 Ejecución frontal de Oracle En su función tradicional de proporcionar datos fuera de la cadena a aplicaciones blockchain, oracles convertirse en un objetivo natural para los ataques frontales.Considere el patrón de diseño común de usar un oracle para suministrar varios precios a un intercambio en cadena: periódicamente (digamos cada hora), el oracle recopila datos de precios para diferentes activos y los envía a un contrato de intercambio. Estas transacciones de datos de precios presentan oportunidades obvias de arbitraje: por ejemplo, si el informe más reciente oracle enumera un precio mucho más alto por algún activo, un adversario podría adelantar el informe oracle para comprar activos y revenderlos inmediatamente una vez que se procese el informe de oracle. Topes de velocidad y precios retroactivos: Una solución natural al problema de ejecución anticipada de oracle es dar a los informes oracle una prioridad especial sobre otras transacciones. Para Por ejemplo, se podrían enviar informes oracle con tarifas elevadas para animar a los mineros a procesar ellos primero. Pero esto no impedirá que se avance si las oportunidades de arbitraje son altas, ni puede impedir el arbitraje por parte de los propios mineros. Por lo tanto, algunos intercambios han recurrido a implementar "reductores de velocidad" más pesados, como poner en cola las transacciones de los usuarios durante varios bloques antes de procesarlas. ellos, o ajustar los precios retroactivamente cuando llegue un nuevo informe oracle. Las desventajas de estas soluciones son que añaden complejidad a la implementación del intercambio, aumentan los requisitos de almacenamiento y, por tanto, los costos de transacción, y alteran la experiencia del usuario, ya que los intercambios de activos sólo se confirman después de un período de tiempo significativo. Llevando a cuestas: Antes de pasar a FSS, analizaremos el transporte a cuestas, una solución bastante simple y solución elegante al oracle problema de ejecución frontal. No es aplicable a la dirección Sin embargo, está a la cabeza en otros escenarios. En resumen, en lugar de enviar informes periódicamente al contrato en cadena, oracles publicar informes firmados que los usuarios adjuntan a sus transacciones al comprar o vender activos en cadena. Luego, el intercambio simplemente verifica que el informe sea válido y esté actualizado. (por ejemplo, oracle puede firmar una variedad de bloques para los cuales el informe es válido) y extrae el precio relevante se alimenta de él. Este enfoque simple tiene una serie de ventajas sobre el "bajón de velocidad" anterior. enfoque: (1) El contrato de intercambio no necesita mantener el estado de los precios, lo que debería conducir a menores costos de transacción; (2) Como los informes oracle se publican en cadena según sea necesario, los oracle pueden generar actualizaciones más frecuentes (por ejemplo, cada minuto), lo que minimizar las oportunidades de arbitraje al adelantar un informe9; (3) Las transacciones pueden validarse inmediatamente, ya que siempre incluyen un feed de precios actualizado. Sin embargo, el enfoque no es perfecto. En primer lugar, esta solución de aprovechamiento pone al responsabilidad de los usuarios del intercambio de obtener informes oracle actualizados y adjuntarlos a sus transacciones. En segundo lugar, si bien llevar a cuestas minimiza las oportunidades de arbitraje, no puede prevenirlos por completo sin afectar la vida del contrato en cadena. De hecho, si un El informe oracle es válido hasta algún bloque número n, luego se envía una transacción al bloque n + 1 requeriría un nuevo informe válido. Debido a retrasos inherentes en la propagación de informes de oracles a los usuarios, el nuevo informe que es válido para el bloque n + 1 tendría 9El arbitraje sólo vale la pena si la diferencia explotable en los precios de los activos excede la diferencia superflua. tarifas requeridas para comprar y vender los activos, por ejemplo, los cobrados por los mineros y el intercambio.ser publicitado algún período antes de que se extraiga el bloque n + 1, digamos en el bloque n −k, por lo tanto creando una secuencia de k bloques donde existe una oportunidad de arbitraje de corta duración. nosotros Ahora describa cómo FSS sortea estas limitaciones. Priorizar informes oracle con FSS: FSS puede abordar el oracle de ejecución frontal problema basándose en la solución anterior, pero impulsando la solución adicional trabajo de aumentar las transacciones con oracle informes a la Red Oracle Descentralizada. En un nivel alto, los oracle nodos recopilan transacciones destinadas a un intercambio en cadena, acuerde un feed de precios en tiempo real y publique el feed de precios junto con las transacciones recopiladas en el contrato de la cadena principal. Conceptualmente, se puede pensar en este enfoque como una "procesamiento por lotes de transacciones con datos aumentados", donde oracle garantiza que una información actualizada El feed de precios siempre se agrega a las transacciones. Las soluciones FSS se pueden implementar de forma transparente para los usuarios del intercambio y con cambios mínimos en la lógica del contrato, como describimos con más detalle en la Sección 5.2. asegurando que los informes oracle nuevos siempre tengan prioridad sobre las transacciones de los usuarios es solo un ejemplo de una política de pedidos que FSS pueda adoptar y hacer cumplir. Políticas de FSS para garantizar el orden. equidad se describen de manera más general en la Sección 5.3. 5.1.2 Transacciones de usuario de primera ejecución Ahora pasamos a ejecutar aplicaciones genéricas, donde el método de defensa anterior no funciona. El problema se puede captar en términos generales mediante el siguiente escenario: Un adversario ve alguna transacción de usuario tx1 enviada a la red P2P y la inyecta su propia transacción adversaria tx2, de modo que tx2 se procese antes que tx1 (por ejemplo, pagando una tarifa de transacción más alta). Por ejemplo, este tipo de adelantamiento es común entre bots que explotan oportunidades de arbitraje en DeFi sistemas [90] y ha afectado a los usuarios de varias aplicaciones descentralizadas [101]. Imponer un orden justo entre las transacciones. procesado en el blockchain soluciona este problema. Más fundamentalmente, ver los detalles de tx1 a veces ni siquiera es necesario y El conocimiento de su mera existencia puede permitir a un adversario adelantar a tx1 a través de su poseer tx2 y defraudar al usuario inocente que creó tx1. Por ejemplo, el usuario podría ser conocido por negociar un activo particular en momentos regulares. Prevenir este tipo de ataques requiere mitigaciones que también evitan la fuga de metadatos [62]. Algunas soluciones para este problema. existen, pero introducen retrasos y problemas de usabilidad. Del pedido de red al pedido finalizado con FSS: Oportunidades para liderar surgen porque los sistemas existentes no tienen mecanismos para garantizar que el orden en el que Las transacciones que aparecen en la cadena respetan el orden de los eventos y el flujo de información. fuera de la red. Esto representa un problema que surge de deficiencias en la implementación de aplicaciones (por ejemplo, plataformas comerciales) en un blockchain. Lo ideal sería asegúrese de que las transacciones se confirmen en el blockchain en el mismo orden en que fueron creado y enviado a la red P2P de blockchain. Pero desde la red blockchain

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

se distribuye, no se puede capturar tal orden. Por lo tanto, FSS introduce mecanismos para salvaguardar contra violaciones de la equidad, que surgen sólo debido a la distribución naturaleza de la red blockchain. 5.2 Detalles del FSS Figura 12: Mempool de orden justa con dos rutas de transacción diferentes: directo y basado en mempool. La Fig. 12 muestra un esquema general del FSS. Para garantizar la equidad, el DON que proporciona el FSS debe interferir con el flujo de transacciones cuando ingresan a MAINCHAIN. Es posible que sean necesarios ajustes a los clientes, a smart contracts en MAINCHAIN ​​o a ambos. En un nivel alto, el procesamiento de transacciones por parte del FSS se puede descomponer en tres fases, que se describen a continuación: (1) Monitoreo de transacciones; (2) Secuenciación de transacciones; y (3) Contabilización de transacciones. Dependiendo del método de pedido utilizado para la secuenciación de transacciones, se necesitan pasos de protocolo adicionales, como se describe en la siguiente sección. 5.2.1 Procesamiento de transacciones Monitoreo de transacciones: Visualizamos dos enfoques diferentes para que FSS monitoree Transacciones de usuario destinadas a un smart contract específico, directas y basadas en mempool: • Directo: el enfoque directo es conceptualmente el más simple, pero requiere cambios en clientes usuarios para que las transacciones se envíen directamente al Oracle DescentralizadoNodos de la red, en lugar de a los nodos de la cadena principal. El DON recoge transacciones de usuario destinadas a un smart contract SC específico y las ordena en función sobre alguna política de pedidos. El DON luego envía las transacciones ordenadas al smart contract en la cadena principal. Algunos mecanismos de pedido también requieren el enfoque directo porque el usuario que crea una transacción debe criptográficamente protéjalo antes de enviarlo a FSS. • Basado en Mempool: para facilitar la integración de FSS con clientes heredados, el DON puede utilizar Mempool Services (MS) para monitorear el mempool de la cadena principal y recopilar transacciones. Es probable que la transmisión directa sea la implementación preferida para muchos contratos, y creemos que debería ser bastante práctico en muchos casos. Discutimos brevemente cómo las DApps existentes podrían modificarse mínimamente para admitir transmisión directa preservando una buena experiencia de usuario. Describimos enfoques usando Ethereum y MetaMask [6] ya que estas son las opciones más populares hoy en día, pero Las técnicas mencionadas deberían extenderse a otras cadenas y billeteras. Un Ethereum reciente Propuesta de mejora, “EIP-3085: Monedero agrega Ethereum método RPC de cadena” [100], facilitará la orientación de cadenas Ethereum personalizadas (utilizando un ID de CADENA diferente al el de MAINCHAIN para evitar ataques de repetición) de MetaMask y otras billeteras basadas en navegador. Después de la implementación de esta propuesta, una DApp que busca utilizar un DON simplemente agregaría una llamada de método único a su interfaz para poder transmitir directamente transacciones a cualquier DON que exponga una API compatible con Ethereum. Mientras tanto, “EIP-712: Ethereum datos estructurados escritos hashing y firma” [49] proporciona una explicación ligeramente alternativa más complicada pero ya ampliamente implementada, donde un usuario de DApp puede usar MetaMask para firmar datos estructurados especificando una transacción DON. La DApp puede enviar Estos datos estructurados firmados al DON. Por último, observamos que también son posibles enfoques híbridos. Por ejemplo, legado los clientes pueden continuar enviando transacciones al mempool de la cadena principal, pero es crítico Las transacciones (por ejemplo, informes oracle) se envían a los nodos DON directamente (en particular, el conjunto de nodos que proporcionan oracle informes, como actualizaciones de precios y el conjunto de nodos proporcionar FSS puede superponerse o ser idéntico). Secuenciación de transacciones: El objetivo principal de FSS es garantizar que las transacciones de los usuarios se ordenen de acuerdo con una política predefinida. La naturaleza de esta política dependen de las necesidades de la aplicación y de los tipos de órdenes de transacciones injustas que pretende prevenir. Dado que FSS en el DON es capaz de procesar datos y mantener el estado local, pueden imponer una política de secuenciación arbitraria basada en la información que se disponible en el oracles. Las políticas de pedidos particulares y su implementación se analizan posteriormente en la Sección 5.3.Publicación de transacciones: Después de recopilar y ordenar las transacciones de los usuarios, recibidas directamente de los usuarios o recopiladas del mempool, DON envía estas transacciones a la cadena principal. Como tal, las interacciones de DON con la cadena principal permanecen sujeto a órdenes de transacciones (potencialmente injustas) regidas por los mineros de la cadena principal. Para aprovechar los beneficios de los pedidos de transacciones descentralizados, el objetivo inteligente Por lo tanto, el contrato SC debe diseñarse para tratar al DON como un ciudadano de “primera clase”. nosotros distinguir dos enfoques: • Contratos solo DON: la opción de diseño más simple es tener la cadena principal inteligente El contrato SC solo acepta transacciones que hayan sido procesadas por el DON. esto garantiza que smart contract procese las transacciones en el orden propuesto por el DON, pero de facto restringe el smart contract a operar en un sistema basado en comités (es decir, el comité DON ahora tiene poder continuo para determinar el ordenación e inclusión de transacciones). • Contratos de clase dual: un diseño preferido y más granular tiene la cadena principal inteligente contrato SC acepta transacciones originadas tanto del DON como del legado usuarios,10 pero coloca “obstáculos” tradicionales en las transacciones que no fueron procesadas por el DON. Por ejemplo, las transacciones del DON pueden procesarse inmediatamente, mientras que las transacciones heredadas quedan "almacenadas" por el smart contract para un periodo de tiempo fijo. Otros mecanismos estándar para evitar el avance como esquemas de confirmación-revelación o VDF [53] también podrían aplicarse a legados transacciones. Esto garantiza que las transacciones ordenadas DON se procesen en la orden acordada, sin otorgar al DON el poder no deseado de censurar transacciones. Como la imposición de pedidos de transacciones por parte de FSS requiere que las transacciones se agreguen "fuera de la cadena", esta solución se combina naturalmente con otras técnicas de agregación que apuntan a reducir los costos de procesamiento en la cadena. Por ejemplo, después de recolectar y ordenar transacciones, el DON puede enviar estas transacciones a la cadena principal como "transacción por lotes" única (por ejemplo, una rollup), reduciendo así la transacción agregada tarifa. Hacer cumplir el orden de transacción: Ya sea en un diseño de clase dual o solo DON, la cadena principal smart contract SC y DON deben diseñarse conjuntamente para garantizar que se mantenga el orden de transacciones de DON. Aquí también imaginamos diferentes opciones de diseño: • Números de secuencia: DON puede agregar un número de secuencia a cada transacción y enviar estas transacciones al mempool de la cadena principal. el principal 10Si el monitoreo de transacciones de DON se basa en el mempool, las transacciones heredadas deben distinguirse de las transacciones de DON para que no sean recopiladas por DON, por ejemplo, a través de una etiqueta especial. incorporado en la transacción o especificando un precio de gas particular, p.e. DON las transacciones tienen gas precios por debajo de un determinado umbral.cadena smart contract SC ignora las transacciones que llegan "fuera de secuencia". nosotros tenga en cuenta que en esta configuración, los mineros de la cadena principal pueden decidir ignorar los DON ordenación de transacciones, provocando así que las transacciones fallen. Es posible mantener el estado (caro) para que SC aplique el orden correcto de las transacciones, de alguna manera De manera análoga a cómo TCP almacena en búfer los paquetes desordenados hasta que se recuperan los paquetes faltantes. recibido. • Transacción nonces: Para muchas blockchains, y en particular para Ethereum, la El enfoque de numeración secuencial anterior puede aprovechar la transacción integrada nonces para hacer cumplir que la cadena principal smart contract SC procese las transacciones en secuencia. Aquí, los nodos DON envían transacciones a la cadena principal a través de una única cuenta de cadena principal, protegida con una clave compartida entre los nodos DON. la cuenta La transacción nonce garantiza que las transacciones se extraigan y procesen en el orden correcto. • Transacciones agregadas: el DON puede agregar múltiples transacciones en un rollup (o en un paquete similar a rollup). La cadena principal smart contract debe ser diseñado para manejar tales transacciones agregadas. • Transacciones agregadas con un proxy de la cadena principal: aquí, el DON agrupa de manera similar las transacciones en una “metatransacción” para la cadena principal, pero se basa en un proxy personalizado smart contract para descomprimir las transacciones y transmitirlas al contrato objetivo SC. Esta técnica puede resultar útil para la compatibilidad heredada. Las metatransacciones actúan como rollups pero se diferencian en que consisten en un lista de transacciones publicadas una vez en la cadena principal. El último diseño tiene la ventaja de soportar sin problemas las transacciones de los usuarios que ellos mismos están representados a través de un contrato de cadena principal antes de alcanzar el objetivo de DON contrato SC. Por ejemplo, considere un usuario que envía una transacción a alguna billetera. contrato, que a su vez envía una transacción interna a SC. Asignar una secuencia número para tal transacción sería complicado, a menos que el contrato de billetera del usuario sea especialmente diseñado para reenviar el número de secuencia con cada transacción interna a SC. De manera similar, dichas transacciones internas no se pueden agregar fácilmente en una metatransacción que se envíe directamente a SC. Discutimos otras consideraciones de diseño para dichas transacciones representadas a continuación. 5.2.2 Atomicidad de las transacciones Hasta ahora nuestra discusión ha asumido implícitamente que las transacciones interactúan con un solo en cadena smart contract (por ejemplo, un usuario envía una solicitud de compra a un intercambio). Sin embargo, en En sistemas como Ethereum, una sola transacción puede constar de múltiples transacciones internas, por ejemplo, una smart contract que llama a una función en otro contrato. A continuación, nosotros describir dos estrategias de alto nivel para secuenciar transacciones de "contratos múltiples", mientras preservar la atomicidad de la transacción (es decir, la secuencia de acciones prescritas por las transacciones se ejecutan todas en el orden correcto, o no se ejecutan en absoluto).Fuerte atomicidad: La solución más sencilla es aplicar FSS, como se describe anteriormente, directamente a transacciones completas de "contratos múltiples". Es decir, los usuarios envían sus transacciones en la red y FSS monitorea, secuencia y publica estas transacciones en el cadena principal. Este enfoque es técnicamente simple, pero tiene una limitación potencial: si un usuario La transacción interactúa con dos contratos SC1 y SC2 que ambos quieren aprovechar la equidad. servicios de secuenciación, entonces la política de secuenciación de estos dos contratos debe ser coherente. Es decir, dadas dos transacciones diferentes tx1 y tx2 con las que cada una interactúa tanto SC1 como SC2, no debe darse el caso de que la política de SC1 ordene tx1 antes que tx2 mientras que la política de SC2 prescribe el orden opuesto. Para la gran mayoría de escenarios de interés, prevemos que las políticas de secuenciación adoptadas por diferentes contratos serán consistentes. Por ejemplo, tanto SC1 como SC2 es posible que desee que las transacciones se ordenen según su hora aproximada de llegada al mempool, y SC1 puede además querer que ciertos informes oracle se entreguen siempre primero. como el Las últimas transacciones de informes oracle no interactúan con SC2, las políticas son consistentes. Atomicidad débil: En toda su generalidad, FSS podría aplicarse a nivel de individuo transacciones internas. Considere transacciones de la forma tx = { ˜txpre, ˜txSC, ˜txpost}, que consisten en algunos transacción(es) ˜txpre, lo que resulta en una transacción interna ˜txSC a SC, que a su vez emite transacciones internas ˜txpost. La política de secuenciación de SC podría determinar cómo la transacción interna ˜txSC debe ordenarse con respecto a otras transacciones enviadas a SC, pero deja abierto el orden de secuenciación para ˜txpre y ˜txpost. Dadas las características intrínsecas del procesamiento de transacciones en sistemas como Ethereum, desarrollar un servicio de secuenciación dirigido a transacciones internas específicas no es sencillo. Con un contrato SC especialmente diseñado, esto puede realizarse de la siguiente manera: 1. La transacción tx se envía a la red y se extrae (sin ninguna secuenciación). realizado por FSS). El ˜txpre inicial se ejecuta y llama a ˜txSC. 2. SC no ejecuta ˜txSC y regresa. 3. FSS monitorea las transacciones internas a SC, las secuencia y las publica a SC (es decir, enviando transacciones ˜txSC directamente a SC). 4. SC procesa las transacciones ˜txSC recibidas del FSS y emite transacciones internas ˜txpost que resultan de ˜txSC. Con este enfoque, las transacciones no se ejecutan de forma totalmente atómica (es decir, el original la transacción tx se divide en múltiples transacciones en cadena), pero el orden de Se conservan las transacciones internas. Esta solución implica una serie de limitaciones de diseño. Por ejemplo, ˜txpre no puede supongamos que se ejecutarán ˜txSC y ˜txpost. Además, el SC debe diseñarse de manera que ejecutar transacciones ˜txSC y ˜txpost en nombre de un determinado usuario, aunque fueranenviado por FSS. Por estas razones, la solución más generalizada de “Atomicidad fuerte” Lo anterior probablemente sea preferible en la práctica. Para respetar dependencias más complejas, que involucran múltiples transacciones y sus respectivas transacciones internas, el programador de transacciones de FSS puede contener Funciones elaboradas que se asemejan a las que se encuentran en los administradores de transacciones de los sistemas relacionales. gestores de bases de datos. 5.3 Secuenciación justa de transacciones Aquí analizamos dos nociones de equidad para la secuenciación de transacciones y las implementaciones correspondientes, que pueden ser realizadas por FSS: equidad de orden basada en una política impuesto por FSS y preservación segura de la causalidad, lo que requiere métodos criptográficos adicionales en FSS. Orden-justicia: La equidad del orden es una noción de equidad temporal en los protocolos de consenso que fue introducido formalmente por primera vez por Kelkar et al. [144]. Kelkar et al. objetivo lograr una forma de política natural en la que las transacciones sean ordenados en función del momento en que fueron recibidos por primera vez por DON (o la red P2P, en el caso de un FSS basado en mempool). Sin embargo, en un sistema descentralizado, diferentes Los nodos pueden ver que las transacciones llegan en un orden diferente. Establecer un orden total en todas las transacciones es el problema resuelto por el protocolo de consenso subyacente CADENA PRINCIPAL. Kelkar et al. [144] por lo tanto introduce una noción más débil que puede ser logrado con la ayuda de una red Oracle descentralizada, llamada "equidad de orden de bloque". Agrupa las transacciones que el DON ha recibido durante un intervalo de tiempo en un “bloque” e inserta todas las transacciones del bloque simultáneamente y en la misma posición (es decir, altura) en CADENA PRINCIPAL. Por lo tanto, están ordenados juntos y deben ser ejecutables. en paralelo, sin crear conflictos entre ellos. En términos generales, orderfairness establece que si una gran fracción de nodos ve la transacción τ1 antes de τ2, entonces τ1 se secuenciará antes o en el mismo bloque que τ2. Al imponer una medida tan grosera granularidad en el orden de transacción, las oportunidades de ataques frontales y otros ataques relacionados con el pedido se reducen considerablemente. Kelkar et al. proponer una familia de protocolos llamada Aequitas [144], que abordan Diferentes modelos de implementación, incluidas configuraciones de red síncronas, parcialmente síncronas y asíncronas. Los protocolos de Aequitas imponen una sobrecarga de comunicación significativa en relación con el consenso básico BFT y, por lo tanto, no son ideales para uso práctico. Sin embargo, creemos que surgirán variantes prácticas de Aequitas que podrán utilizarse para secuenciación de transacciones en FSS y otras aplicaciones. Algunos esquemas relacionados tienen Ya se han propuesto que tienen menos formalismo y propiedades más débiles. por ejemplo, [36, 151, 236], pero mejor rendimiento práctico. Estos esquemas pueden ser apoyados en FSS también. También vale la pena señalar que el término "imparcialidad" aparece en otras partes del blockchain literatura con un significado diferente, a saber, equidad en el sentido de oportunidad paramineros proporcionales a sus recursos comprometidos [106, 181] o para validators en términos de igualdad de oportunidades [153]. Preservación segura de la causalidad: El enfoque más conocido para prevenir el avance y otras violaciones de orden en plataformas distribuidas se basa en criptografía. técnicas. Su característica común es ocultar los datos de la transacción, esperando hasta que Se ha establecido el orden en la capa de consenso y revelar los datos de la transacción. posteriormente para su procesamiento. Esto preserva el orden causal entre las transacciones que se realizan. ejecutado por el blockchain. Las nociones de seguridad y protocolos criptográficos relevantes. se han desarrollado considerablemente antes de la llegada de blockchains [71, 190]. Las condiciones de seguridad de “causalidad de entrada” [190] y “preservación segura de la causalidad” [71, 97] requieren formalmente que no se conozca ninguna información sobre una transacción. antes de que se haya determinado la posición de esta transacción en el orden global. Un adversario no debe poder inferir ninguna información hasta ese momento, de forma criptográfica. sentido fuerte. Se pueden distinguir cuatro técnicas criptográficas para preservar la causalidad: • Protocolos de confirmación-revelación [29, 142, 145]: en lugar de anunciar una transacción en claro, solo se transmite un compromiso criptográfico con la transacción. Después de que se hayan ordenado todas las transacciones comprometidas pero ocultas (a principios de blockchain sistemas en MAINCHAIN, pero aquí por FSS), el remitente debe abrir el compromiso y revelar los datos de la transacción dentro de un intervalo de tiempo predeterminado. Luego, la red verifica que la apertura satisface el compromiso anterior. el Los orígenes de este método datan de antes de la llegada de blockchains. Aunque es particularmente simple, el enfoque presenta desventajas considerables y no es fácil de emplear por dos razones. Primero, dado que sólo el compromiso existe a nivel del protocolo de pedido, la semántica de la transacción no se puede validar durante el consenso. Un viaje adicional de ida y vuelta al cliente. es necesario. Pero lo más grave es la posibilidad de que no se pueda abrir ninguna apertura. llegar alguna vez, lo que podría equivaler a un ataque de denegación de servicio. Además, Es difícil determinar si la apertura es válida de forma consistente y distribuida. manera porque todos los participantes deben ponerse de acuerdo sobre si la apertura llegó en tiempo. • Protocolos de confirmación-revelación con recuperación retrasada [145]: un desafío con el El enfoque de compromiso-revelación es que un cliente puede comprometerse con una transacción de manera especulativa y revelarla más tarde sólo si las transacciones posteriores la hacen rentable. un Una variante reciente del enfoque de compromiso-revelación mejora la resiliencia contra este tipo de mala conducta. En particular, el protocolo TEX [145] aborda este problema. utilizando un enfoque inteligente en el que las transacciones cifradas incluyen una clave de descifrado obtenible calculando una función de retardo verificable (VDF) [53, 221]. si un cliente no logra descifrar su transacción de manera oportuna, otros en el sistema la descifrarán en su nombre resolviendo un rompecabezas criptográfico moderadamente difícil.• Cifrado de umbral [71, 190]: este método aprovecha lo que DON puede realizar operaciones criptográficas de umbral. Supongamos que FSS mantiene un cifrado público key pkO y los oracles comparten la clave privada correspondiente entre ellos. Luego, los clientes cifran las transacciones bajo pkO y las envían al FSS. Órdenes FSS transacciones en el DON, luego las descifra y finalmente las inyecta en CADENA PRINCIPAL en el orden fijo. Por lo tanto, el cifrado garantiza que el pedido sea no se basa en el contenido de la transacción, sino en que los datos en sí están disponibles cuando necesario. Este método fue propuesto originalmente por Reiter y Birman [190] y luego perfeccionado por Cachin et al. [71], donde se integró con un consenso autorizado protocolo. Un trabajo más reciente ha explorado el uso de la criptografía de umbral como Mecanismo de nivel de consenso para mensajes genéricos [33, 97] y para cálculos generales con datos compartidos [41]. En comparación con los protocolos de confirmación y revelación, el cifrado de umbral evita ataques simples de denegación de servicio (aunque se requiere cuidado dado el costo computacional del descifrado). Permite que el DON avance de forma autónoma, a su propia velocidad y sin esperando más acciones del cliente. Las transacciones pueden validarse inmediatamente después de haber sido descifradas. Además, los clientes cifran todas las transacciones con una clave para el DON y el patrón de comunicación sigue siendo el mismo que con otros transacciones. Gestionar la clave de umbral de forma segura y con cambios de nodos en O, sin embargo, puede plantear dificultades adicionales. • Compromiso de compartir secretos [97]: en lugar de cifrar los datos de la transacción en una clave en poder de DON, el cliente también puede compartirla en secreto para los nodos en O. Utilizando un esquema de intercambio de secretos híbrido y computacionalmente seguro, la transacción se cifra primero utilizando un cifrado simétrico con una clave aleatoria. Solo se comparte la clave simétrica correspondiente y el texto cifrado se envía al DON. El cliente debe enviar una clave compartida a cada nodo en O mediante un mensaje cifrado por separado. Los pasos restantes del protocolo son los mismos que con el umbral. cifrado, excepto que los datos de la transacción se descifran con el código simétrico algoritmo después de reconstruir la clave por transacción a partir de sus acciones. Este método no requiere la configuración ni la gestión de un criptosistema de clave pública. asociado con el DON. Sin embargo, los clientes deben ser conscientes de los nodos en O y comunicarse en un contexto seguro con cada uno de ellos, lo que los sitúa carga adicional para los clientes. Aunque los métodos criptográficos ofrecen una protección completa contra la información Al filtrarse de las transacciones enviadas a la red, no ocultan metadatos. Para Por ejemplo, una dirección IP o una dirección Ethereum del remitente aún podría ser utilizada por un adversario para realizar ataques frontales y de otro tipo. Varias mejoras de la privacidad técnicas implementadas en la capa de red, por ejemplo, [52, 95, 107], o la capa de transacción, por ejemplo, [13, 65], sería necesario para lograr este objetivo. El impacto de una pieza en particular. de metadatos, es decir, a qué contrato se envía una transacción, puede ocultarse (parcialmente)mediante la multiplexación de muchos contratos en el mismo DON. Ocultamiento criptográfico de transacciones per se tampoco impide la priorización de transacciones por parte de personas corruptas DON nodos en connivencia con remitentes de transacciones. La causalidad segura garantizada por los protocolos criptográficos complementa las garantías de equidad de orden para cualquier póliza, y tenemos la intención de explorar una combinación de las dos. métodos, cuando esto sea posible. Si un adversario no puede obtener una ventaja significativa Al observar los metadatos, los protocolos seguros de preservación de la causalidad podrían usarse junto con también un enfoque de ordenación ingenuo. Por ejemplo, los nodos oracle pueden escribir transacciones a L tan pronto como los reciban, sin duplicación. Las transacciones entonces serían ordenados según su aparición en L y posteriormente descifrados. También planeamos considerar el uso de TEE como una forma de ayudar a hacer cumplir los pedidos justos; para Por ejemplo, se puede considerar que Tesseract [44] logra una forma de ordenamiento causal, pero uno fortalecido por la capacidad del TEE para procesar transacciones en forma explícita mientras conservando su confidencialidad. 5.4 Consideraciones de la capa de red Hasta ahora, nuestra descripción del FSS se ha centrado principalmente en el problema de hacer cumplir que el El orden final de las transacciones coincide con el orden observado en la red. De ahora en adelante, Consideramos cuestiones de equidad que podrían surgir en la propia capa de red. Los comerciantes de alta frecuencia en los mercados electrónicos convencionales invierten considerables recursos para obtener una velocidad de red superior [64], y los comerciantes en intercambios de criptomonedas exhiben un comportamiento similar [90]. La velocidad de la red confiere una ventaja tanto en observar las transacciones de otras partes y presentar transacciones competitivas. Un remedio implementado en la práctica y popularizado en el libro Flash Boys [155] es el “bache de velocidad” introducido inicialmente en el intercambio IEX [128] y posteriormente en otros intercambia [179] (con resultados mixtos [19]). Este mecanismo impone un retraso (350 microsegundos en IEX) en el acceso al mercado, con el objetivo de neutralizar las ventajas en velocidad. Evidencia empírica, p.e. [128], respalda su eficacia para disminuir ciertas operaciones costes para los inversores ordinarios. FSS se puede utilizar simplemente para implementar un sistema asimétrico. obstáculo: uno que retrasa las transacciones entrantes. Budish, Cramton y Shim [64] sostienen que la explotación de las ventajas de la velocidad es ineludible en los mercados de tiempo continuo, y abogan por una solución estructural en el en forma de mercados basados en subastas por lotes. Pero este enfoque no ha arraigado ampliamente en las plataformas comerciales existentes. Los sistemas comerciales convencionales están centralizados y normalmente reciben transacciones a través de una única conexión de red. En un sistema descentralizado, por el contrario, es posible observar la propagación de transacciones desde múltiples puntos de vista. En consecuencia, es posible observar comportamientos como la inundación de la red en una red P2P. pretendemos Explorar enfoques de capa de red para FSS que ayuden a los desarrolladores a especificar políticas. prohibir tales comportamientos indeseables en la red.5.5 Políticas de equidad a nivel de entidad La equidad del orden y la causalidad segura tienen como objetivo hacer cumplir un orden en las transacciones que respeta el momento en que fueron creados y enviados por primera vez a la red. Una limitación de esta noción de justicia es que no previene ataques en los que un adversario obtiene una ventaja al inundar un sistema con muchas transacciones, una estrategia observada en la naturaleza como una forma de realizar transacciones efectivas en token ventas [159] y para crear congestión que resulte en la liquidación de posiciones de deuda garantizada (CDP) [48]. En otras palabras, la equidad en el orden impone justicia con respecto a las transacciones, no a los jugadores. Como se muestra en el sistema CanDID [160], es posible utilizar herramientas oracle como DECO o Town Pregonero en conjunto con un comité de nodos (como un DON) para lograr diversas formas de resistencia a Sybil al tiempo que protege la privacidad. Los usuarios pueden registrar identidades. y proporcionar evidencia de su singularidad sin revelar las identidades mismas. Las credenciales resistentes a Sybil ofrecen un posible enfoque para enriquecer el ordenamiento de transacciones políticas de una manera que limitaría las oportunidades de ataques por inundaciones. Por ejemplo, un La venta token podría permitir solo una transacción por usuario registrado, donde el registro requiere una prueba de unicidad de un identificador nacional, como un número de seguro social. Este enfoque no es infalible, pero puede resultar una política útil para mitigar los ataques de inundación de transacciones.

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.

El marco de ejecución de transacciones DON

(DON-TEF) DONs proporcionará oracle y soporte de recursos descentralizados para soluciones de capa 2 dentro lo que llamamos Marco de ejecución de transacciones de red descentralizada de Oracle (DONTEF) o TEF para abreviar. Hoy en día, la frecuencia de las actualizaciones de los contratos DeFi está limitada por las latencias de la cadena principal, por ejemplo, el intervalo de bloque promedio de 10 a 15 segundos en Ethereum [104], así como el costo de impulsar grandes cantidades de datos en cadena y un rendimiento computacional/de transmisión limitado: enfoques de escalamiento motivadores como la fragmentación [148, 158, 232] y la ejecución de capa 2 [5, 12, 121, 141, 169, 186, 187]. Incluso blockchains con tiempos de transacción mucho más rápidos, por ejemplo, [120], han propuesto estrategias de escalamiento que involucran cálculo fuera de la cadena [168]. TEF está destinado a actuar como un recurso de capa 2 para cualquiera de dichos sistemas de capa 1/CADENA PRINCIPAL. Usando TEF, DONs pueden admitir actualizaciones más rápidas en un contrato MAINCHAIN mientras conservar las garantías de confianza clave proporcionadas por la cadena principal. TEF puede apoyar cualquiera de una serie de técnicas y paradigmas de ejecución de capa 2, incluidos rollups,11 rollups optimistas, Validium, etc., así como un modelo de confianza de umbral en el que DON Los nodos ejecutan transacciones. El TEF es complementario del FSS y está destinado a apoyarlo. En otras palabras, cualquier La aplicación que se ejecuta en TEF puede utilizar FSS. 11A menudo llamados “zk-rollups”, un nombre inapropiado, ya que no necesariamente necesitan pruebas de conocimiento cero.

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

6.1 Descripción general de TEF El TEF es un patrón de diseño para la construcción y ejecución de un híbrido de alto rendimiento. smart contractSC. De acuerdo con la idea principal detrás de los smart contracts híbridos, TEF implica un descomposición de SC en dos partes: (1) Lo que llamamos en el contexto TEF un ancla contrato SCa en MAINCHAIN y (2) DON lógica ejecutable que llamamos ejecutable TEF. Usamos SC aquí para denotar el contrato lógico implementado por la combinación de SCa y ejecutar. (Como se señaló anteriormente, esperamos desarrollar herramientas de compilación para descomponer un contrato SC automáticamente en estos componentes.) El ejecutable TEF exect es el motor que procesa las transacciones de los usuarios en SC. eso se puede ejecutar de manera eficiente, ya que se ejecuta en DON. Tiene varias funciones: • Ingestión de transacciones: exect recibe o recupera las transacciones de los usuarios. puede hacerlo directamente, es decir, a través del envío de transacciones en DON, o a través de MAINCHAIN mempool usando MS. • Ejecución rápida de transacciones: exect procesa transacciones que involucran activos dentro SC. Lo hace localmente, es decir, en el DON. • Acceso rápido y de bajo costo a oracle/adaptador: exect tiene acceso nativo a los informes oracle y otros datos del adaptador que conducen a, por ejemplo, activos más rápidos, más baratos y más precisos. fijación de precios que la ejecución MAINCHAIN. Además, el acceso fuera de la cadena oracle reduce el costo operativo del oracle, por lo tanto, el costo de uso del sistema, al evitar costoso almacenamiento en cadena. • Sincronización: exect envía periódicamente actualizaciones de DON a MAINCHAIN, actualizando SCa. El contrato ancla es la parte frontal de MAINCHAIN ​​de SC. Como componente de mayor confianza de SC, cumple varios propósitos: • Custodia de activos: los fondos de los usuarios se depositan, mantienen y retiran de SCa. • Verificación de sincronización: SCa puede verificar la exactitud de las actualizaciones de estado cuando se ejecutan. sincroniza, por ejemplo, SNARK adjuntos a rollups. • Barandillas: SCa puede incluir disposiciones para proteger contra la corrupción o fallas. en ejecutivo. (Consulte la Sección 7 para obtener más detalles). En TEF, los fondos de los usuarios están custodiados en MAINCHAIN, lo que significa que el DON en sí mismo no tiene custodia. Dependiendo de la elección del mecanismo de sincronización (ver más abajo), los usuarios pueden necesitar confiar en DON solo para obtener informes oracle precisos y sincronización oportuna con MAINCHAIN. El modelo de confianza resultante es muy similar al de los DEX basados en libros de pedidos, por ejemplo, [2], que hoy en día generalmente incluyen un componente fuera de la cadena para igualar órdenes y un componente dentro de la cadena para compensación y liquidación.Para utilizar el vocabulario de los sistemas de pago, se puede pensar en exect como el componente SCa es responsable de la compensación, mientras que SCa se encarga de la liquidación. Consulte la Fig. 13 para ver un esquema. representación de TEF. Figura 13: Esquema de TEF. En este ejemplo, las transacciones pasan a través del mempool. de MAINCHAIN vía MS al DON. Beneficios de TEF: TEF conlleva tres beneficios principales: • Alto rendimiento: SC hereda el rendimiento mucho mayor de DON que MAINCHAIN tanto para transacciones como para informes oracle. Además, exect puede procesar transacciones más rápido y responder a oracle informes de manera más oportuna que una implementación solo en MAINCHAIN. • Tarifas más bajas: el proceso de sincronización es menos urgente que el procesamiento de transacciones, y las transacciones se pueden enviar desde DON a MAINCHAIN ​​en lotes. En consecuencia, las tarifas por transacción en cadena (por ejemplo, costos de gas) con este enfoque son mucho más bajas que las de un contrato que se ejecuta solo en MAINCHAIN. • Confidencialidad: Los mecanismos de confidencialidad del DON se pueden llevar a insistir en SC.

Limitaciones del TEF: Una limitación de TEF es que no admite transferencia instantánea. retiros, ya que ocurren solo en MAINCHAIN: Al enviar una solicitud de retiro a SCa, es posible que un usuario deba esperar a que exect realice una actualización de estado que incluya el transacción de retiro antes de que pueda ser aprobada. Discutimos algunos remedios parciales, sin embargo, en la Sección 6.2. Otra limitación de TEF es que no admite la composición atómica de DeFi contratos en MAINCHAIN, específicamente la capacidad de enrutar activos a través de múltiples DeFi contratos en una sola transacción. Sin embargo, el TEF puede respaldar dicha atomicidad entre DeFi contratos que se ejecutan en el mismo DON. También analizamos algunas formas de abordar este problema. problema en la Sección 6.2. 6.2 Enrutamiento de transacciones Los usuarios pueden enviar las transacciones para SC directamente al DON o pueden enrutarse a través de el mempool en MAINCHAIN (a través de FSS). Hay cuatro tipos distintos de transacciones, cada uno de los cuales requiere un manejo diferente: Transacciones dentro del contrato: Debido a que evita las complicaciones de la dinámica del gas, TEF proporciona a SC más flexibilidad en el manejo de transacciones de lo que sería disponible en un contrato de capa 1. Por ejemplo, mientras una transacción de mempool en Ethereum puede ser sobrescrito por una nueva transacción con un precio de gas más alto, SC puede tratar una transacción que opera en activos dentro de SC como autorizada tan pronto como se vuelve visible en el grupo de memoria. En consecuencia, SC no necesita esperar a que se confirme una transacción. dentro de un bloque, lo que resulta en una latencia considerablemente reducida. Proxy: Un usuario puede desear enviar una transacción τ a SC a través de un contrato de billetera o otro contrato en MAINCHAIN. Es posible que DON simule la ejecución de τ en MAINCHAIN para determinar si da como resultado una transacción de seguimiento a SC. Si es así, τ puede secuenciarse con otras transacciones para SC que lo hagan. Hay algunos posibilidades sobre cómo DON identifica tales transacciones: (1) El DON puede simular todas las transacciones en el mempool (un enfoque costoso); (2) Ciertos contratos o los tipos de contratos, por ejemplo, billeteras, pueden enumerarse para su seguimiento mediante el DON; o (3) los usuarios pueden anotar transacciones para la inspección DON. Las cosas se vuelven más complicadas cuando una sola transacción interactúa con dos contratos, SC1 y SC2, los cuales utilizan Fair Sequencing Services y tienen políticas de pedidos incompatibles. El DON podría, por ejemplo, secuenciar τ en el último momento que sea compatible con ambos. Depósitos: Una transacción que deposita un activo MAINCHAIN en SC debe confirmarse en un bloque antes de que SC pueda considerarla válida. Cuando detecta la extracción de un transacción que envía activos (por ejemplo, Ether) a SCa, exect puede confirmar instantáneamente ladepósito. Por ejemplo, puede aplicar un precio actual informado oracle en el DON al activo. Retiros: Como se señaló anteriormente, una limitación de TEF es que los retiros no siempre se pueden ejecutar instantáneamente. En un modelo de ejecución de tipo rollup, el retiro La solicitud debe secuenciarse con otras transacciones, es decir, acumularse, para poder realizarse de forma segura. procesado. Sin embargo, existen algunas soluciones parciales a esta limitación. Si DON puede calcular rápidamente una prueba de validez rollup hasta la transacción de retiro, entonces observar la transacción τ de un usuario en el mempool exect puede enviar una transacción de actualización de estado τ ′ por τ a un precio de gas más alto, una especie de avance benéfico. Siempre que τ no se extraiga antes de que τ ′ llegue al mempool, τ ′ precederá a τ y τ efectuará un retiro aprobado. En una variante de TEF donde se confía en DON para calcular las actualizaciones de estado (consulte la variante de firma de umbral a continuación), el DON puede alternativamente determinar fuera de la cadena si τ debería aprobarse dado el estado de SC al momento de su ejecución. El DON luego puede enviar una transacción τ ′ que aprueba el retiro τ, sin efectuar un pago completo actualización del estado. Si este enfoque no es posible, o en los casos en los que no tiene éxito, una iniciativa iniciada por DON La transacción τ ′ puede enviar fondos al usuario en respuesta a τ para que el usuario no necesite iniciar una transacción adicional. 6.3 Sincronización El ejecutable TEF envía periódicamente actualizaciones de DON a MAINCHAIN, actualizar el estado de SCa en un proceso al que nos referimos como sincronización. Se puede pensar en sincronizar como propagación de transacciones de capa 2 a capa 1, por lo que TEF puede recurrir a cualquiera de un número de técnicas existentes para este propósito, incluyendo rollups [5, 12, 16, 69], optimista rollups [10, 11, 141], Validium [201] o firma de umbral básico, por ejemplo, umbral BLS, Schnorr o ECDSA [24, 54, 116, 202]. En principio, entornos de ejecución confiables También puede dar fe de la corrección de los cambios de estado, ofreciendo una visión mucho más eficaz. alternativa a rollups, pero con un modelo de confianza dependiente del hardware. (Ver, por ejemplo, [80].) A continuación comparamos estas opciones de sincronización con respecto a tres propiedades clave en TEF: • Disponibilidad de datos: ¿Dónde se almacena el estado de SC? Al menos tres opciones son disponible en TEF: en MAINCHAIN, en un DON o mediante algún almacenamiento de terceros proveedores como IPFS. Logran diferentes garantías de seguridad, disponibilidad niveles y perfiles de desempeño. Brevemente, almacenar el estado en MAINCHAIN permite auditabilidad en cadena y elimina la dependencia de cualquier parte para la disponibilidad del estado; por otro lado, almacenar el estado fuera de la cadena puede reducir el costo de almacenamiento y mejorar rendimiento, a costa de confiar en los proveedores de almacenamiento (DON o terceros) para disponibilidad de datos. Por supuesto, los modelos flexibles que combinan estas opciones también son posible. Indicamos la forma requerida de disponibilidad de datos en la Tabla 1.• Garantías de corrección: ¿Cómo comprueba SCa la corrección de las actualizaciones? empujado por ejecutivo? Esto afecta la carga computacional en exect y SCa y la latencia de sincronización (ver más abajo). • Latencia: La latencia de sincronización tiene tres factores que contribuyen: (1) El tiempo necesario para ejecutar generar una transacción de sincronización τsync; (2) El tiempo necesario para τsync por confirmar en MAINCHAIN; y (3) El tiempo para que τsync surta efecto en SCa. En TEF, la latencia es particularmente importante para los retiros (pero menos para transacciones dentro del contrato) porque los retiros necesariamente requieren (al menos parcial) sincronización de estado. Sincronización opciones Datos disponibilidad Corrección garantías Latencia Resumen [5, 12, 16, 69] En cadena Pruebas de validez Tiempo necesario para generar pruebas de validez (por ejemplo, actas en los sistemas actuales) Validez [201] Fuera de cadena Pruebas de validez Igual que arriba Optimista rollup [10, 11, 141] En cadena Pruebas de fraude Duración del desafío período (por ejemplo, dias o semanas) Firma de umbral [24, 54, 116, 202] Flexibles Firmas de umbral por DON Instantáneo Entornos de ejecución confiables [80] Flexibles Basado en hardware atestados Instantáneo Tabla 1: Varias opciones de sincronización en TEF y sus propiedades. La Tabla 1 resume estas propiedades en las cinco opciones principales de sincronización en TEF. (Nota que no pretendemos comparar estas tecnologías como escalamiento de capa 2 independiente soluciones. Para ello remitimos a los lectores, por ejemplo, a [121]). Ahora analizamos cada opción de sincronización. Acumulados: Un rollup [69] es un protocolo en el que la transición de estado efectuada por un El lote de transacciones se calcula fuera de la cadena. Luego el cambio de estado se propaga en CADENA PRINCIPAL. Para implementar rollups, el ancla smart contract SCa almacena una representación compacta Rstate (por ejemplo, una raíz de Merkle) del estado real. Para sincronizar, ejecutar envía τsync = (T,R′ estado) a SCa donde T es el conjunto de las transacciones que procesó desde la últimasincronización y R′ state es la representación compacta del nuevo estado calculado aplicando transacciones en T al estado anterior Rstate. Hay dos variantes populares que difieren en cómo SCa verifica las actualizaciones de estado en τsync. El primero, (zk-)rollups, adjunta un argumento sucinto de corrección, a veces llamado una prueba de validez, para la transición Rstate →R′ estado. Para implementar esta variante, ejecute calcula y envía la prueba de validez (por ejemplo, una prueba zk-SNARK) junto con τsync, demostrando que R′ El estado es el resultado de aplicar T al estado actual de SCa. el ancla El contrato acepta la actualización del estado sólo después de haber verificado la prueba. Los rollup optimistas no incluyen argumentos de corrección, pero tienen staking y cuestionar los procedimientos que facilitan la verificación distribuida de las transiciones estatales. Para esto Variante rollup, SCa acepta tentativamente τsync asumiendo que es correcto (de ahí el optimismo) pero τsync no entra en vigor hasta después de un período de desafío, durante el cual cualquier parte El monitoreo de MAINCHAIN puede identificar actualizaciones de estado erróneas e informar a SCa que tome acciones necesarias (por ejemplo, revertir el estado e infligir una penalización a la ejecución). Ambas variantes rollup logran disponibilidad de datos en cadena, a medida que se publican las transacciones en cadena, a partir del cual se puede construir el estado completo. La latencia de zk-rollups es dominado por el tiempo necesario para generar pruebas de validez, que normalmente depende del tiempo orden de minutos en los sistemas existentes [16] y probablemente verá mejoras con el tiempo. Los rollup optimistas, por otro lado, tienen una latencia más alta (por ejemplo, días o semanas). porque el período de impugnación debe ser lo suficientemente largo para que funcionen las pruebas de fraude. el La implicación de una confirmación lenta es sutil y a veces específica del esquema, de modo que un análisis exhaustivo está fuera de alcance. Por ejemplo, ciertos planes consideran el pago transacciones como “finales sin confianza” [109] antes de que se confirme la actualización del estado, ya que un Un usuario normal podría verificar un rollup mucho más rápido que MAINCHAIN. Validio: Validium es una forma de (zk-)rollup que hace que los datos estén disponibles solo fuera de la cadena. y no mantiene todos los datos en MAINCHAIN. Específicamente, exect envía sólo el nuevo estado y la prueba pero no las transacciones a SCa. Con sincronización estilo Validium, ejecute y el DON que lo ejecuta son los únicos que almacenan el estado completo y que ejecutan transacciones. Al igual que con zk-rollups, la latencia de sincronización está dominada por la validez. tiempo de generación de pruebas. Sin embargo, a diferencia de zk-rollups, la sincronización del estilo Validium reduce el costo de almacenamiento y aumenta el rendimiento. Firma de umbral por DON: Asumir un umbral de DON nodos es honesto, un La opción de sincronización simple y rápida es hacer que DON nodos firmen colectivamente el nuevo estado. Este enfoque puede respaldar la disponibilidad de datos tanto dentro como fuera de la cadena. Tenga en cuenta que si Los usuarios confían en DON para las actualizaciones de oracle, no necesitan confiar más en él para aceptar actualizaciones de estado, ya que ya se encuentran en un modelo de confianza de umbral. Otro beneficio de El umbral de firma es de baja latencia. Soporte para nuevos formatos de firma de transacciones como propuesto en EIP-2938 [70] y conocido como abstracción de cuenta haría que el umbral firmar considerablemente más fácil de implementar, ya que eliminaría la necesidad de establecer un umbral ECDSA, que implica protocolos considerablemente más complejos (p. ej., [116, 117, 118])que alternativas como el umbral de firmas Schnorr [202] o BLS [55]. Entornos de ejecución confiables (TEE): Los TEE son entornos de ejecución aislados (generalmente realizados mediante hardware) que tienen como objetivo proporcionar protecciones de seguridad sólidas. para programas que se ejecutan en su interior. Algunos TEE (por ejemplo, Intel SGX [84]) pueden producir pruebas, conocidos como atestados, que una salida es calculada correctamente por un programa específico para una entrada particular12. Se puede implementar una variante de sincronización TEF basada en TEE mediante reemplazar pruebas en (zk-)rollups o Validium con certificaciones TEE usando técnicas de [80]. En comparación con las pruebas de conocimiento cero utilizadas en rollups y Validium, los TEE son mucho más más rendimiento. En comparación con la firma de umbral, los TEE eliminan la complejidad de generar firmas ECDSA de umbral ya que, en principio, solo es necesario que haya un TEE involucrados. Sin embargo, el uso de TEE introduce suposiciones de confianza adicionales dependientes del hardware. También se pueden combinar TEE con firma de umbral para crear resiliencia. contra el compromiso de una fracción de los casos de TEE, aunque esta medida de protección reintroduce la complejidad de generar firmas ECDSA de umbral. Flexibilidad adicional: Estas opciones de sincronización se pueden perfeccionar para proporcionar más flexibilidad de las siguientes maneras. • Activación flexible: la aplicación TEF puede determinar las condiciones bajo las cuales se activa la sincronización. Por ejemplo, la sincronización puede realizarse por lotes, por ejemplo, después de cada N transacciones, basadas en el tiempo, por ejemplo, cada 10 bloques, o basadas en eventos, por ejemplo, ocurren siempre que los precios objetivo de los activos se muevan significativamente. • Sincronización parcial: es posible y en algunos casos deseable (por ejemplo, con rollups, La sincronización parcial puede reducir la latencia) para proporcionar una sincronización rápida de pequeños cantidades de estado, realizando una sincronización completa quizás solo periódicamente. Por ejemplo, exect puede aprobar una solicitud de retiro actualizando el saldo de un usuario en SCa sin actualizar de otro modo el estado de MAINCHAIN. 6.4 Reorganizaciones Reorganizaciones de blockchain resultantes de la inestabilidad de la red o incluso de ataques del 51% puede representar una amenaza para la integridad de una cadena principal. En la práctica, los adversarios han utilizado organizar ataques de doble gasto [34]. Si bien estos ataques a las principales cadenas son Aunque son difíciles de montar, siguen siendo factibles para algunas cadenas [88]. Debido a que opera independientemente de MAINCHAIN, un DON ofrece la interesante posibilidad de observar y proporcionar algunas protecciones contra reorganizaciones asociadas con ataques. Por ejemplo, un DON puede informar a un SC de contrato dependiente en MAINCHAIN ​​la existencia de una bifurcación competidora de cierta longitud umbral τ. El DON también puede 12En el Apéndice B.2.1 se pueden encontrar detalles complementarios. No son necesarios para la comprensión.

proporcionar pruebas, ya sea en un entorno PoW o PoS, de la existencia de dicha bifurcación. el El contrato SC puede implementar acciones defensivas adecuadas, como suspender la ejecución de transacciones adicionales por un período de tiempo (por ejemplo, para permitir que los intercambios incluyan en la lista negra los gastos dobles). activos). Tenga en cuenta que, si bien un adversario que realiza un ataque del 51% puede intentar censurar informes de un DON, una contramedida en SC es requerir informes periódicos del DON para procesar transacciones (es decir, un latido) o para requerir un nuevo informe para validar una transacción de alto valor. Si bien estas alertas de bifurcación son, en principio, un servicio general, el DON puede proporcionar Para cualquiera de una serie de propósitos, nuestro plan es incorporarlos al 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.

Minimización de confianza

Como sistema descentralizado con participación de un conjunto heterogéneo de entidades, el La red Chainlink proporciona una sólida protección contra fallas tanto en la vida (disponibilidad) como en la seguridad (integridad del informe). La mayoría de los sistemas descentralizados, sin embargo, varían en el grado en que sus componentes constitutivos están ellos mismos descentralizados. esto Esto es cierto incluso para sistemas grandes, donde la descentralización limitada entre los mineros [32] y intermediarios [51] ha estado presente durante mucho tiempo. El objetivo de cualquier esfuerzo de descentralización es minimizar la confianza: buscamos reducir la efectos adversos de la corrupción sistémica o falla dentro de la red Chainlink, incluso eso debido a un DON malicioso. Nuestro principio rector es el Principio de Mínimo Privilegio [197]. Los componentes del sistema y los actores dentro del sistema deben tener privilegios estrictamente limitados. para permitir únicamente el cumplimiento exitoso de sus roles asignados. Aquí presentamos varios mecanismos concretos para que Chainlink los adopte en su impulso. hacia una minimización cada vez mayor de la confianza. Caracterizamos estos mecanismos en términos de los loci, es decir, los componentes del sistema, en los que están arraigados, como se muestra en la Fig. 14. abordar cada locus en una subsección respectiva. 7.1 Autenticación de fuente de datos Los modelos operativos actuales para oracles están limitados por el hecho de que pocas fuentes de datos firman digitalmente los datos que omiten, en gran parte porque TLS no firma de forma nativa datos. TLS hace uso de firmas digitales en su protocolo de “apretón de manos” (para establecer una clave compartida entre un servidor y un cliente). Por lo tanto, los servidores habilitados para HTTPS tienen certificados sobre claves públicas que en principio pueden servir para firmar datos, pero generalmente no utilizan estos certificados para respaldar la firma de datos. En consecuencia, la seguridad de un DON, como en las redes oracle actuales, se basa en nodos oracle que transmiten fielmente datos desde un fuente a un contrato. Un componente importante a largo plazo de nuestra visión para la minimización de la confianza en Chainlink implica una autenticación más sólida de la fuente de datos mediante el soporte de herramientas y estándares para la firma de datos. La firma de datos puede ayudar a hacer cumplir las garantías de integridad de un extremo a otro. En principio, si un contrato acepta como entrada un dato D firmado directamente por un

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

Figura 14: Loci de los mecanismos de minimización de confianza discutidos en esta sección. 1⃝Datos Las fuentes proporcionan datos al 2⃝DON, que transmite una función de los datos a un dependiente. 3⃝smart contract. Además, la red DON o oracle incluye 4⃝nodos gestión de smart contracts en MAINCHAIN para, por ejemplo, nodos de compensación, guardia rieles, etc. fuente, entonces la red oracle no puede alterar D. Varios elementos alentadores Han surgido esfuerzos para permitir dicha firma de datos, incluido OpenID Connect, que está diseñado principalmente para la autenticación de usuarios [9], TLS-N, un proyecto académico que tiene como objetivo ampliar TLS [191] reutilizando certificados TLS y Extensiones de evidencia TLS [63]. Si bien OpenID Connect ha experimentado cierta adopción, TLS Evidence Extensions y TLS-N aún no han sido adoptados. Otra posible vía de autenticación de fuentes de datos es utilizar las propias herramientas de los editores. Intercambios HTTP firmados (SXG) [230], que pueden almacenar en caché en redes de entrega de contenido como parte del protocolo Accelerated Mobile Pages (AMP) [225]. El navegador móvil Chrome muestra el contenido de los SXG almacenados en caché de AMP como si fueran servidos desde los propios dominios de red de sus editores en lugar del dominio del servidor de caché. Este incentivo de marca, junto con la relativa facilidad para habilitarlo mediante servicios como Real URL [83] de CloudFlare y amppackager [124] de Google, puede conducir a una adopción generalizada de SXG en contenido de noticias almacenado en caché, lo que permitiría una solución simple y resistente a manipulaciones. manera para que Chainlink oracles se activen en eventos de interés periodístico reportados en SXG válidos. Si bien los SXG almacenados en caché de AMP de los editores de noticias no serían útiles para aplicaciones como informes sobre datos comerciales, podrían ser una fuente segura de información personalizada contratos relacionados con eventos del mundo real como condiciones climáticas extremas o resultados electorales. Creemos que una implementación simple, herramientas maduras y flexibilidad serán vitales para acelerar la firma de fuentes de datos. Permitir que los proveedores de datos utilicen Chainlink nodos como una interfaz API autenticada parece un enfoque prometedor. Pretendemos crear unaopción para que los nodos funcionen en este modo, con o sin participación en la red como un oracle en toda regla. Nos referimos a esta capacidad como origen de datos autenticados. (ADO). Al utilizar nodos Chainlink con ADO, las fuentes de datos podrán beneficiarse a partir de la experiencia y las herramientas desarrolladas por la comunidad Chainlink para agregar contenido digital capacidades de firma a su conjunto existente de API fuera de la cadena. ¿Deberían optar por correr? sus nodos como oracles, también pueden abrir nuevas fuentes de ingresos potenciales bajo el mismo modelo que los proveedores de datos existentes, por ejemplo, Kraken [28], Kaiko [140] y otros, que ejecutan Chainlink nodos para vender datos API en cadena. 7.1.1 Las limitaciones del origen de datos autenticados La firma digital mediante fuentes de datos, si bien puede ayudar a fortalecer la autenticación, no es suficiente per se para lograr todos los objetivos operativos o de seguridad natural de un oracle red. Para empezar, un determinado dato D aún debe transmitirse de manera sólida y oportuna. desde una fuente de datos hasta smart contract u otro consumidor de datos. Es decir, incluso en un entorno ideal en el que todos los datos se firman mediante claves preprogramadas en dependientes contratos, aún se necesitaría un DON para comunicar los datos de manera confiable desde las fuentes a los contratos. Además, hay una serie de casos en los que los contratos u otros datos oracle Los consumidores quieren acceso a la salida autenticada de varias funciones calculadas sobre datos de origen por dos razones principales: • Confidencialidad: una API de fuente de datos puede proporcionar datos confidenciales o de propiedad exclusiva. que debe redactarse o desinfectarse antes de que se haga visible públicamente en la cadena. Sin embargo, cualquier modificación de los datos firmados invalidaba la firma. pon otro De esta manera, el ADO ingenuo y la desinfección de datos son incompatibles. Mostramos en el ejemplo 3. cómo se pueden conciliar ambos mediante una forma mejorada de ADO. • Fallos en las fuentes de datos: tanto los errores como las fallas pueden afectar las fuentes de datos, y las firmas digitales no abordan ninguno de los problemas. Desde sus inicios [98], Chainlink ha Ya se incluye un mecanismo para remediar tales fallas: la redundancia. Los informes emitidos por las redes oracle normalmente representan los datos combinados de múltiples fuentes. Ahora analizamos los esquemas que estamos explorando en el entorno ADO para mejorar la confidencialidad de los datos de origen y combinar datos de múltiples fuentes de forma segura. 7.1.2 Confidencialidad Es posible que las fuentes de datos no anticipen ni pongan a disposición toda la gama de API deseadas. por los usuarios. Específicamente, los usuarios pueden desear acceder a datos preprocesados para ayudar a garantizar confidencialidad. El siguiente ejemplo ilustra el problema.Ejemplo 3. Alice desea obtener una credencial de identidad descentralizada (DID) que indique que tiene más de 18 años (y por lo tanto puede, por ejemplo, solicitar un préstamo). hacer por lo tanto, debe demostrar este hecho sobre su edad ante un emisor de credenciales DID. Alice espera utilizar datos del Departamento de Vehículos Motorizados (DMV) de su estado. sitio web para tal fin. El DMV tiene un registro de su fecha de nacimiento y emitirá un Certificado A firmado digitalmente en el mismo de la siguiente forma: A = {Nombre: Alice, DoB: 16/02/1999}. En este ejemplo, la atestación A puede ser suficiente para que Alice le demuestre al DID emisor de la credencial que tiene más de 18 años. Pero filtra innecesariamente información confidencial: Alice DoB exacto. Idealmente, lo que Alice quisiera del DMV es una firma en un afirmación simple A′ de que “Alice tiene más de 18 años”. En otras palabras, ella quiere el salida de una función G en su fecha de nacimiento X, donde (informalmente), A′ = G(X) = Verdadero si FechaActual −X ≥18 años; de lo contrario, G(X) = Falso. Para generalizar, a Alice le gustaría poder solicitar a la fuente de datos un documento firmado. atestación A′ de la forma: A′ = {Nombre: Alice, Función:G(X), Resultado: Verdadero}, donde G(X) denota una especificación de una función G y su(s) entrada(s) X. Prevemos que un usuario debería poder proporcionar un G(X) deseado como entrada con su solicitud de un certificación correspondiente A′. Tenga en cuenta que la certificación A′ de la fuente de datos debe incluir la especificación G(X) para asegúrese de que A′ se interprete correctamente. En el ejemplo anterior, G(X) define el significado del valor booleano en A′ y por lo tanto True significa el sujeto de la atestación es mayor de 18 años. Nos referimos a consultas flexibles en las que un usuario puede especificar G(X) como consultas funcionales. Para admitir casos de uso como el del Ejemplo 3, así como aquellos que involucran consultas directamente de los contratos, pretendemos incluir soporte para consultas funcionales que involucren funciones simples G como parte de ADO. 7.1.3 Combinando datos de origen Para reducir los costos en cadena, los contratos generalmente están diseñados para consumir datos combinados. de múltiples fuentes, como se ilustra en el siguiente ejemplo. Ejemplo 4 (Datos de precios de medianización). Para proporcionar un indicador de precios, es decir, el valor de uno activo (por ejemplo, ETH) con respecto a otro (por ejemplo, USD), una red oracle generalmente Obtener precios actuales de varias fuentes, como bolsas. La red oracle normalmente envía a un contrato dependiente SC la mediana de estos valores. En un entorno con firma de datos, se obtiene una red oracle que funciona correctamente de fuentes de datos S = {S1, . . . , SnS} una secuencia de valores V = {v1, v2, . . . , vnS} de nS fuentes acompañadas de firmas específicas de la fuente Σ = {σ1, σ2, . . . , σnS}. sobre Al verificar las firmas, transmite el precio v = mediana(V ) a SC.Desafortunadamente, no existe una forma sencilla para que una red oracle transmita la mediana valor v en el ejemplo 4 a SC junto con una prueba sucinta σ∗ de que v se calculó correctamente sobre entradas firmadas. Un enfoque ingenuo sería codificar en SC las claves públicas de todas las fuentes de datos nS. La red oracle luego transmitiría (V, Σ) y permitiría a SC calcular la mediana de V. Sin embargo, esto daría como resultado una prueba σ de tamaño O(nS), es decir, σ∗ no sería sucinta. También generaría altos costos de gas para SC, que necesitaría verificar todas las firmas en Σ. El uso de SNARK, por el contrario, permite una prueba sucinta de valores fuente autenticados correctamente combinados. Puede que sea viable en la práctica, pero impone unas exigencias bastante altas. costos computacionales en el probador y costos de gas algo altos en la cadena. uso de Town Crier también es una posibilidad, pero requiere el uso de TEE, lo que no se adapta a todos Modelos de confianza de los usuarios. Un concepto útil para enmarcar soluciones al problema general de firmar datos combinados de fuentes es una herramienta criptográfica conocida como firmas funcionales [59, 132]. En resumen, las firmas funcionales permiten al firmante delegar la capacidad de firma, de modo que el delegado sólo puede firmar mensajes en el rango de una función F elegida por el firmante. En el Apéndice D mostramos cómo esta restricción funcional puede servir para limitar el rango de valores de informe emitidos por un DON en función de los valores firmados por las fuentes de datos. También presentamos una nueva primitiva, llamada firma funcional discretizada, que incluye un requisito relajado de precisión, pero que potencialmente tiene mucho más rendimiento. que enfoques como los SNARK. El problema de combinar fuentes de datos de una manera que incluya la autenticación de la fuente de resultados también se aplica a los agregadores de datos, por ejemplo, CoinCap, CoinMarketCap, CoinGecko, CryptoCompare, etc., que obtienen datos de una multiplicidad de intercambios, que ponderación en función de volúmenes, utilizando metodologías que en algunos casos hacen públicas y en otros casos son propietarios. Un agregador que desea publicar un valor con La autenticación de origen enfrenta el mismo desafío que una colección de nodos que se agregan. datos de origen. 7.1.4 Procesamiento de datos fuente Es probable que los smart contracts sofisticados dependan de estadísticas agregadas personalizadas durante fuentes de datos primarias, como la volatilidad en el historial de precios reciente de muchos activos, o textos y fotografías de noticias sobre hechos relevantes. Debido a que la computación y el ancho de banda son relativamente baratos en un DON, estas estadísticas: Incluso los modelos complejos de aprendizaje automático con muchas entradas se pueden procesar de forma económica, siempre que cualquier valor de salida destinado a un blockchain sea lo suficientemente conciso. Para trabajos computacionalmente intensivos donde DON los participantes pueden tener diferentes opiniones sobre entradas complejas, es posible que se requieran rondas adicionales de comunicación entre los DON participantes para establecer un consenso sobre las entradas antes de calcular el resultado. Siempre que el valor final esté completamente determinado por las entradas, una vez que se establece el consenso sobre las entradas, cada participante puede simplemente calcular el valor y transmitirlo al otro.participantes con su firma parcial, o enviarla a un agregador. 7.2 DON Minimización de confianza Visualizamos dos formas principales de minimizar la confianza depositada en los componentes del DON: clientes de conmutación por error e informes de minorías. 7.2.1 Clientes de conmutación por error Los modelos contradictorios en la literatura sobre criptografía y sistemas distribuidos generalmente considerar un adversario capaz de corromper (es decir, comprometer) un subconjunto de nodos, por ejemplo, menos de un tercio para muchos protocolos BFT. Se observa comúnmente, sin embargo, que si todos los nodos ejecutan software idéntico, un adversario que identifique un exploit fatal podría en principio comprometer todos los nodos más o menos simultáneamente. Esta configuración es a menudo denominado monocultivo de software [47]. Se han presentado varias propuestas para diversificar automáticamente el software y las configuraciones de software para abordar el problema, por ejemplo, [47, 113]. Como se indica en [47], sin embargo, la diversidad de software es una cuestión compleja y requiere una consideración cuidadosa. La diversificación del software, por ejemplo, puede resultar en peor seguridad que un monocultivo si aumenta la superficie de ataque de un sistema y, por lo tanto, sus posibles vectores de ataque por encima de los beneficios de seguridad que ofrece. Creemos que el soporte para clientes de conmutación por error sólidos, es decir, clientes a los que nodos puede cambiar ante un evento catastrófico, es una forma especialmente atractiva de diversificación del software. Los clientes de conmutación por error no aumentan el número de vectores potenciales de ataque, ya que no se implementan como software principal. Ofrecen beneficios claros, sin embargo, como segunda línea de defensa. Tenemos la intención de admitir clientes de conmutación por error en DONs como un medio clave para reducir su dependencia de seguridad de un solo cliente. Chainlink ya cuenta con un sólido sistema de clientes de conmutación por error. Nuestro enfoque Implica mantener versiones de clientes anteriores y probadas en batalla. Hoy, por ejemplo, Chainlink nodos con informes fuera de cadena (OCR) como cliente principal incluyen soporte para el sistema FluxMonitor anterior de Chainlink si es necesario. Habiendo estado en uso durante algunos Al mismo tiempo, FluxMonitor ha recibido auditorías de seguridad y pruebas de campo. Proporciona lo mismo funcionalidad como OCR, solo que a un costo mayor, un costo que solo se incurre según sea necesario. 7.2.2 Informes de minorías Dado un conjunto minoritario suficientemente grande de Ominoría (una fracción de nodos honestos que observan actos ilícitos por parte de la mayoría), puede ser útil para ellos generar una minoría. informe. Este es un informe o indicador paralelo, transmitido a un contrato SC dependiente en la cadena. por Ominoría. SC puede hacer uso de esta bandera de acuerdo con su propia política específica del contrato. Por ejemplo, para un contrato en el que la seguridad es más importante que la vivacidad o la capacidad de respuesta, un informe minoritario podría hacer que el contrato solicite informes complementarios. desde otro DON, o active un disyuntor (consulte la siguiente sección).Los informes de las minorías pueden desempeñar un papel importante incluso cuando la mayoría es honesta, porque cualquier esquema de agregación de informes, incluso si utiliza firmas funcionales, debe operar de manera umbral, para garantizar la resiliencia contra oracle o fallas de datos. en En otras palabras, debe ser posible producir un informe válido basado en los datos aportados por kS < nS oracles, para algún umbral kS. Esto significa que un DON corrupto tiene alguna latitud en la manipulación de los valores del informe seleccionando sus valores kS preferidos entre los nS informado en V por el conjunto completo de oracles, incluso si todas las fuentes son honestas. Por ejemplo, supongamos que nS = 10 y kS = 7 en un sistema que utiliza un funcional firma para autenticar el cálculo de la mediana sobre V para el precio en USD de ETH. Supongamos que cinco fuentes informan un precio de \(500, while the other five report \)1000. Luego, al medianar los 7 informes más bajos, el DON puede generar un valor válido v = $500, y al medianar el más alto, puede generar v = $1000. Al mejorar el protocolo DON para que todos los nodos sepan qué datos se disponibles, y qué datos se utilizaron para construir un informe, los nodos podrían detectar y marcar tendencias estadísticamente significativas a favorecer un conjunto de informes sobre otro, y producir como resultado un informe minoritario. 7.3 Barandillas Nuestro modelo de confianza para DONs trata a MAINCHAIN como una cadena de mayor seguridad y mayores privilegios. sistema que DONs. (Aunque este modelo de confianza puede no ser siempre cierto, es más fácil para adaptar el mecanismo resultante a situaciones en las que DON es la seguridad más alta plataforma que viceversa.) Por lo tanto, una estrategia natural de minimización de la confianza implica la implementación de mecanismos de monitoreo y seguridad en smart contracts, ya sea en una interfaz MAINCHAIN para un DON o directamente en un SC de contrato dependiente. Nos referimos a estos mecanismos como barandillas y enumeramos aquí algunas de las más importantes: • Disyuntores: el SC puede pausar o detener las actualizaciones de estado en función de las características de las actualizaciones de estado mismas (por ejemplo, gran variación entre secuencias). informes) o basados en otros insumos. Por ejemplo, un disyuntor podría dispararse en casos en los que los informes oracle varían de manera inverosímil con el tiempo. Un disyuntor podría también se verán afectados por un informe minoritario. Por lo tanto, los disyuntores pueden evitar que DONs de hacer informes tremendamente erróneos. Los disyuntores pueden dar tiempo para considerar intervenciones adicionales o ejercitado. Una de esas intervenciones son las trampillas de escape. • Trampillas de escape: en circunstancias adversas, identificadas por un conjunto de custodios, titulares de la comunidad token u otros órganos de fideicomisarios, un contrato puede invocar una instalación de emergencia a veces llamada trampilla de escape [163]. Una trampilla de escape hace que SC se cierre de alguna manera y/o termina pendiente y posiblemente transacciones futuras. Por ejemplo, puede devolver fondos custodiados a los usuarios [17]),puede rescindir los términos del contrato [162], o puede cancelar transacciones pendientes y/o futuras [173]. Las trampillas de escape se pueden implementar en cualquier tipo de contrato, no solo uno que se basa en un DON, pero son de interés como un potencial amortiguador contra DON mala conducta. • Conmutación por error: en sistemas donde SC depende del DON para servicios esenciales, es posible que SC proporcione mecanismos de conmutación por error que garanticen la continuidad del servicio incluso en el caso de DON falla o mala conducta. Por ejemplo, en el TEF (Sección 6), El contrato ancla SCa puede proporcionar interfaces duales donde tanto en cadena como Las interfaces de ejecución fuera de la cadena son compatibles con ciertas operaciones críticas (p. ej., retiro), o para transacciones ordinarias, con un retraso adecuado para evitar el avance de DON transacciones. En los casos en que las fuentes de datos firmen datos, los usuarios podrían también proporcionar informes a SCa cuando el DON no lo haga. Pruebas de fraude, como se propone para diversas formas de rollup optimista (consulte la Sección 6.3), son similares en sabor y complementarios a los mecanismos que enumeramos anteriormente. ellos también proporciona una forma de monitoreo en cadena y protección contra posibles fallas en componentes del sistema fuera de cadena. 7.4 Gobernanza minimizada en la confianza Como todos los sistemas descentralizados, la red Chainlink requiere mecanismos de gobernanza para ajustar parámetros en el tiempo, responder a emergencias y guiar su evolución. Algunos de estos mecanismos residen actualmente en MAINCHAIN y pueden continuar hágalo incluso con la implementación de DONs. Un ejemplo es el mecanismo de pago. para oracle proveedores de nodos (DON nodos). DON contratos front-end en MAINCHAIN contener mecanismos adicionales, como barandillas, que pueden estar sujetos a revisiones periódicas. modificación. Prevemos dos clases de mecanismos de gobernanza: evolutivos y de emergencia. Gobernanza evolutiva: Muchas modificaciones al ecosistema Chainlink son de manera que su implementación no sea un asunto de urgencia: Mejoras en el desempeño, mejoras de funciones, actualizaciones de seguridad (no urgentes), etc. A medida que Chainlink avanza progresivamente hacia aún más participantes en su gobernanza, esperamos que muchos o la mayoría de estos cambios deben ser ratificados por la comunidad de un DON específico afectado por esos cambios. Mientras tanto, y tal vez en última instancia como un mecanismo paralelo, creemos que una noción de privilegio temporal mínimo puede ser un medio útil para implementar una gobernanza evolutiva. Muy simple, la idea es que los cambios se implementen gradualmente, asegurando a la comunidad la oportunidad de responderles. Por ejemplo, la migración a un nuevo El contrato MAINCHAIN se puede restringir para que el nuevo contrato deba implementarse al menos treinta días antes de la activación.Gobernanza de emergencia: Vulnerabilidades explotables o explotadas en MAINCHAIN Los contratos u otras formas de vida o fallas de seguridad pueden requerir una intervención inmediata para prevenir resultados catastróficos. Nuestra intención es apoyar una multifirma mecanismo de intervención en el que, para garantizar contra malas prácticas por parte de cualquier organización, los firmantes estarán dispersos entre las organizaciones. Garantizar la disponibilidad constante de firmantes y acceso oportuno a las cadenas de mando apropiadas para la autorización de emergencias. Los cambios requerirán claramente una cuidadosa planificación operativa y revisiones periódicas. estos Los desafíos son similares a los involucrados en probar otras respuestas a incidentes de ciberseguridad. capacidades [134], con una necesidad similar de combatir problemas comunes como la disminución de la vigilancia [223]. La gobernanza de DONs difiere de la de muchos sistemas descentralizados en su grado potencial de heterogeneidad. Cada DON puede tener distintas fuentes de datos, ejecutables, requisitos de nivel de servicio como tiempo de actividad y usuarios. La red Chainlink Los mecanismos de gobernanza deben ser lo suficientemente flexibles para dar cabida a tales variaciones en objetivos y parámetros operativos. Estamos explorando activamente ideas de diseño y planeamos publicar investigaciones sobre este tema en el futuro. 7.5 Infraestructura de clave pública Con la descentralización progresiva surgirá la necesidad de una identificación sólida de participantes de la red, incluidos los nodos DON. En particular, Chainlink requiere una fuerte Infraestructura de clave pública (PKI). Una PKI es un sistema que vincula claves a identidades. Para Por ejemplo, una PKI sustenta el sistema de conexiones seguras (TLS) de Internet: cuando se conecta a un sitio web a través de HTTPS (por ejemplo, https://www.chainlinklabs.com) y un aparece un candado en su navegador, eso significa que la clave pública del propietario del dominio ha sido estado vinculado a ese propietario por una autoridad, específicamente, a través de una firma digital en el llamado certificado. Un sistema jerárquico de autoridades certificadoras (CA), cuyas autoridades raíz de nivel superior están integradas en los navegadores más populares, ayuda a garantizar que los certificados se emiten únicamente a los propietarios legítimos de los dominios. Esperamos que Chainlink eventualmente haga uso de servicios de nombres descentralizados, Inicialmente el Ethereum Name Service (ENS) [22], como base de nuestra PKI. como Como sugiere su nombre, ENS es análogo a DNS, el sistema de nombres de dominio que asigna (legibles por humanos) a direcciones IP en Internet. Sin embargo, ENS asigna nombres Ethereum legibles por humanos a direcciones blockchain. Porque ENS opera en el Ethereum blockchain, salvo compromiso clave, manipulación de su El espacio de nombres es, en principio, tan difícil como alterar el contrato que lo administra. y/o el blockchain subyacente. (DNS, por el contrario, históricamente ha sido vulnerable hasta suplantación de identidad, secuestro y otros ataques). Hemos registrado data.eth con ENS en la red principal Ethereum y tenemos la intención de establecerlo como un espacio de nombres raíz bajo el cual las identidades de los servicios de datos oracle y residen otras Chainlink entidades de red. Los dominios en ENS son jerárquicos, lo que significa que cada dominio puede contener referencias. a otros nombres bajo él. Los subdominios en ENS pueden servir como una forma de organizar ydelegar confianza. La función principal de data.eth será servir como un servicio de directorio en cadena para fuentes de datos. Tradicionalmente, los desarrolladores y usuarios de oracles han utilizado fuentes fuera de la cadena (por ejemplo, sitios web como docs.chain.link o data.chain.link, o redes sociales como Twitter) para publicar y obtener oracle direcciones de alimentación de datos (como el precio ETH-USD alimento). Con un espacio de nombres raíz altamente confiable como data.eth, es posible establecer una asignación de eth-usd.data.eth a, por ejemplo, la dirección smart contract de un agregador de red en cadena oracle para el precio de ETH-USD. esto seria crear un camino seguro para que cualquiera pueda referirse al blockchain como la fuente de la verdad para esa fuente de datos de ese par precio/nombre (ETH-USD). En consecuencia, tal uso de ENS obtiene dos beneficios que no están disponibles en las fuentes de datos fuera de la cadena: • Seguridad sólida: todos los cambios y actualizaciones del dominio se registran de forma inmutable y protegido criptográficamente, a diferencia de las direcciones de texto en un sitio web, que no disfrutar de ninguna de estas dos propiedades de seguridad. • Propagación automatizada en cadena: las actualizaciones de la dirección subyacente del smart contract de una fuente de datos pueden activar notificaciones que se propagan a las direcciones inteligentes dependientes. contratos y puede, por ejemplo, actualizar automáticamente los contratos dependientes con las nuevas direcciones.13 Sin embargo, los espacios de nombres como ENS no validan automáticamente la propiedad legítima. de nombres afirmados. Así, por ejemplo, si el espacio de nombres incluye la entrada ⟨“Acme Oracle Node Co.”, dirección⟩, entonces el usuario obtiene la seguridad de que la dirección pertenece al reclamante del nombre Acme Oracle Node Co. Sin mecanismos adicionales en torno a la administración del espacio de nombres, sin embargo, no obtiene seguridad de que el nombre pertenezca a una entidad legítimamente llamado Acme Oracle Node Co. en un sentido significativo del mundo real. Nuestro enfoque para la validación de nombres, es decir, garantizar su propiedad por parte de entidades correspondientes y legítimas del mundo real, se basa en varios componentes. Hoy, Chainlink Laboratorios actúa efectivamente como una CA para la red Chainlink. Mientras que Chainlink Labs continuará Para validar nombres, nuestra PKI evolucionará hacia un modelo más descentralizado de dos maneras: • Modelo de red de confianza: la contraparte descentralizada de una PKI jerárquica a menudo se denomina red de confianza.14 Se han propuesto variantes desde la década de 1990, por ejemplo, [98], y varios investigadores han observado que los blockchain pueden facilitar el uso de la idea, por ejemplo, [227] al registrar certificados en un formato globalmente consistente. libro mayor. Estamos explorando variantes de este modelo para validar las identidades de entidades. en la red Chainlink de forma más descentralizada. 13Un contrato dependiente puede incluir opcionalmente un retraso predeterminado para permitir la inspección manual e intervención de administradores de contratos dependientes. 14Término acuñado por Phil Zimmermann para PGP [238].• Vinculación con datos de validación: hoy en día, una cantidad sustancial de oracle datos de rendimiento del nodo son visibles en la cadena y, por lo tanto, están vinculados archivadamente a las direcciones de los nodos. Se puede considerar que dichos datos enriquecen una identidad en la PKI al proporcionar evidencia histórica de su participación (confiable) en la red. Además, herramientas para identidad descentralizada basada en DECO y Town Crier [160] habilitar nodos para acumular credenciales derivadas de datos del mundo real. Como sólo un ejemplo, un El operador del nodo puede adjuntar una credencial a su identidad PKI que demuestre la posesión. de una calificación de Dun y Bradstreet. Estas formas complementarias de validación pueden Complemente staking para crear garantías de seguridad de la red. Se puede considerar que un nodo oracle con una identidad establecida en el mundo real tiene interés en un sistema derivado de su reputación. (Consulte la Sección 4.3 y la Sección 9.6.3.) Un requisito final para la PKI Chainlink es el arranque seguro, es decir, publicar el nombre raíz de la red Chainlink, actualmente data.eth (de manera análoga al cableado de dominios de nivel superior en los navegadores). En otras palabras, ¿cómo funcionan los usuarios Chainlink? determinar que data.eth es de hecho el dominio de nivel superior asociado con Chainlink proyecto? La solución a este problema para la red Chainlink es múltiple y puede implicar: • Agregar un registro TXT [224] a nuestro registro de dominio para chain.link que especifica data.eth como dominio raíz para el ecosistema Chainlink. (Por lo tanto, Chainlink aprovecha implícitamente la PKI para dominios de Internet para validar su dominio ENS raíz). • Enlace a data.eth desde el sitio web existente de Chainlink, por ejemplo, desde https://docs.chain.link. (Otro uso implícito de la PKI para dominios de Internet). • Dar a conocer el uso de data.eth a través de varios documentos, incluido este documento técnico. • Publicar data.eth públicamente en nuestros canales de redes sociales, como Twitter, y el blog Chainlink [18]. • Colocar una gran cantidad de LINK bajo el control de la misma dirección del registrante como datos.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 Consideraciones de implementación

Si bien no forma parte de nuestro diseño principal, existen varias consideraciones técnicas importantes. en la realización de DONs que merecen tratamiento aquí.

8.1 Enfoque de implementación Este documento presenta una visión ambiciosa de la funcionalidad avanzada Chainlink cuya Su realización requerirá soluciones a muchos desafíos a lo largo del camino. Este documento técnico identifica algunos desafíos, pero seguramente surgirán otros imprevistos. Planeamos implementar elementos de esta visión de manera incremental a lo largo de un período de tiempo prolongado. Nuestra expectativa es que DONs se lance inicialmente con soporte para componentes prediseñados específicos creados en colaboración por equipos dentro del Chainlink comunidad. La intención es que usos más amplios de DONs, por ejemplo, la capacidad de lanzar ejecutables arbitrarios, recibirá soporte más adelante. Una razón para tal precaución es que la composición de smart contracts puede tener efectos secundarios complejos, no deseados y peligrosos, como lo han demostrado los recientes ataques basados en préstamos rápidos. por ejemplo, se muestra [127, 189]. De manera similar, la composición de smart contracts, adaptadores y Los ejecutables requerirán extremo cuidado. En nuestra implementación inicial de DONs, planeamos incluir solo un conjunto prediseñado de adaptadores y ejecutables con plantillas. Esto permitirá estudiar la seguridad composicional. de estas funcionalidades utilizando métodos formales [46, 170] y otros enfoques. lo hará también simplifica la fijación de precios: los precios de funcionalidad pueden ser establecidos por DON nodos según la funcionalidad, en lugar de mediante medición generalizada, un enfoque adoptado en, por ejemplo, [156]. También esperamos que la comunidad Chainlink participe en la creación. de plantillas adicionales, combinando varios adaptadores y ejecutables en cada vez más Servicios descentralizados útiles que pueden ser ejecutados por cientos, si no miles, de personas individuales. DONs. Además, este enfoque puede ayudar a prevenir la inflación estatal, es decir, la necesidad de DON nodos para retener una cantidad inviable de estado en la memoria de trabajo. Este problema es que ya están surgiendo en blockchains sin permiso, motivando enfoques como "apátridas clientes” (ver, por ejemplo, [206]). Puede ser más agudo en sistemas de mayor rendimiento, lo que motiva un enfoque en el que DON implementa solo ejecutables de tamaño optimizado. A medida que los DON evolucionan y maduran e incluyen barreras de seguridad sólidas, como se analiza en la Sección 7, mecanismos de seguridad criptoeconómicos y basados en la reputación, como se analiza en la Sección 9, y otras características que brindan un alto grado de seguridad para los usuarios de DON, nosotros También esperamos desarrollar un marco y herramientas para facilitar un lanzamiento y uso más amplio de DONs por la comunidad. Idealmente, estas herramientas permitirán una colección de operadores de nodos. unirse como una red oracle y lanzar sus propios DONs en una red sin permiso o de autoservicio, es decir, que pueden hacerlo unilateralmente. 8.2 Membresía dinámica DON El conjunto de nodos que ejecutan un DON determinado puede cambiar con el tiempo. Hay dos enfoques a la gestión de claves para skL dada la membresía dinámica en O. El primero es actualizar las acciones de skL en poder de los nodos ante cambios en la membresía, manteniendo pkL sin cambios. Este enfoque, explorado en [41, 161, 198], tiene el mérito de no exigir que las partes que confían actualicen pkL.La técnica clásica de compartir acciones, introducida en [122], proporciona una forma sencilla y eficiente de realizar dichas actualizaciones de recursos compartidos. Permite transferir un secreto. entre un conjunto de nodos O(1) y un segundo, posiblemente intersectando uno O(2). en esto enfoque, cada nodo O (1) yo realiza un intercambio secreto (k(2), n(2)) de su parte secreta a través nodos en O(2) para n(2) = |O(2)| y el umbral deseado (posiblemente nuevo) k(2). Varios esquemas de intercambio de secretos verificables (VSS) [108] pueden brindar seguridad contra un adversario que corrompe activamente los nodos, es decir, introduce un comportamiento malicioso en el protocolo. Las técnicas en [161] tienen como objetivo hacerlo mientras reducen la complejidad de la comunicación y brindan resiliencia contra fallas en los supuestos de dureza criptográfica. Un segundo enfoque consiste en actualizar la clave del libro mayor pkL. Esto tiene el beneficio de avanzar seguridad: El compromiso de las acciones antiguas de pkL (es decir, los antiguos nodos del comité) no resultará en compromiso de la clave actual. Sin embargo, las actualizaciones de pkL conllevan dos inconvenientes: (1) Los datos cifrados bajo pkL deben volver a cifrarse durante una actualización de clave y (2) Las actualizaciones clave deben propagarse a las partes que confían. Tenemos la intención de explorar ambos enfoques, así como las hibridaciones de los dos. 8.3 DON Responsabilidad Al igual que con las redes Chainlink oracle existentes, las DON incluirán mecanismos de responsabilidad, es decir, registrar, monitorear y hacer cumplir el comportamiento correcto de los nodos. DONs tendrán capacidad de datos mucho más sustancial que muchos blockchains sin permiso existentes, particularmente dada su capacidad para conectarse a almacenamiento descentralizado externo. En consecuencia, podrán registrar el historial de rendimiento de los nodos en detalle, lo que permitirá mecanismos de rendición de cuentas más detallados. Por ejemplo, el cálculo fuera de cadena de Los precios de los activos pueden involucrar insumos que se descartan antes de enviar un resultado mediano. cadena. En un DON se podrían registrar estos resultados intermedios. Por lo tanto, el mal comportamiento o las fallas de rendimiento de nodos individuales en un DON se pueden remediar o penalizar en el DON de forma detallada. También hemos discutido enfoques para construir barandillas en la Sección 7.3 que abordan el impacto específico del contrato de las fallas sistémicas. Sin embargo, también es importante contar con mecanismos de seguridad para los propios DONs, es decir, protecciones contra fallas sistémicas y potencialmente catastróficas DON, específicamente errores de bifurcación/equívoco y acuerdos de nivel de servicio (SLA), como ahora explicamos. Bifurcación/equívoco: Dados suficientes nodos defectuosos, un DON puede bifurcarse o equívoco, produciendo dos bloques o secuencias de bloques distintos e inconsistentes en L. Sin embargo, debido a que un DON firma digitalmente el contenido de L, es posible aprovechar un cadena principal MAINCHAIN para prevenir y/o penalizar la equivocación. El DON puede verificar periódicamente el estado de L en un contrato de auditoría en MAINCHAIN. Si su estado futuro se desvía de un estado de control, un usuario/auditor puede presentar pruebas de esta mala conducta al contrato de auditoría. Dicha prueba se puede utilizar para generar una alerta. o penalizar DON nodos mediante reducción en el contrato. Este último enfoque introduce un problema de diseño de incentivos similar al de feeds específicos oracle, y puede basarse en nuestro trabajo descrito en la Sección 9.Hacer cumplir los acuerdos de nivel de servicio: Si bien los DONs no necesariamente están destinados a funcionan indefinidamente, es importante que cumplan con los acuerdos de nivel de servicio (SLA) con sus usuarios. La aplicación básica de SLA es posible en una cadena principal. Por ejemplo, Los nodos DON podrían comprometerse a mantener el DON hasta una fecha determinada, o a proporcionar un aviso previo de la terminación del servicio (por ejemplo, un aviso de tres meses). un contrato sobre MAINCHAIN puede proporcionar cumplimiento básico de SLA criptoeconómico. Por ejemplo, el contrato SLA puede recortar DON fondos depositados si los puntos de control son no se proporciona en los intervalos requeridos. Un usuario puede depositar fondos y desafiar el DON para demostrar que un punto de control representa correctamente una secuencia de bloques válidos (de una manera análogo a, p.e. [141]). Por supuesto, la producción en bloque no equivale a la transacción. procesamiento, pero el contrato SLA también puede servir para hacer cumplir este último. Por ejemplo, en En la versión heredada de FSS compatible con la cual las transacciones se obtienen del mempool (consulte la Sección 5.2), las transacciones finalmente se extraen y se colocan en la cadena. un usuario puede probar DON mala conducta proporcionando al contrato SLA una transacción que fue minado pero no fue transmitido por DON para su procesamiento por el contrato de destino dentro del intervalo de tiempo apropiado.15 También es posible probar la existencia de SLA más detallados y penalizarlos. fallas, incluidos errores en el cálculo utilizando ejecutables (a través de, por ejemplo, los mecanismos para demostrar transacciones de estado fuera de la cadena correctas descritas en la Sección 6.3) o no ejecutar ejecutables basados en iniciadores visibles en un DON, falla al transmitir datos en el DON a MAINCHAIN de manera oportuna, etc.

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.

Economía y criptoeconomía

Para que la red Chainlink logre una seguridad sólida dentro de un modelo de confianza descentralizado, Es esencial que los nodos exhiban colectivamente un comportamiento correcto, lo que significa que se adhieren. la mayoría de las veces exactamente a los protocolos DON. En esta sección, analizamos enfoques para ayudar a imponer dicho comportamiento mediante incentivos económicos, también conocidos como criptoeconómicos. incentivos. Estos incentivos se dividen en dos categorías: explícitos e implícitos, realizados respectivamente a través de staking y oportunidad de pago futuro (FFO). Replanteo: Apostar en Chainlink, como en otros sistemas blockchain, involucra a los participantes de la red, es decir, oracle nodos, que depositan fondos bloqueados en forma de ENLACE tokens. estos Los fondos, a los que también nos referimos como participación o participación explícita, son un incentivo explícito. ellos están sujetos a confiscación en caso de falla o mala conducta del nodo. En el contexto blockchain, Este procedimiento a menudo se llama corte. Sin embargo, el replanteo de oracle nodos en Chainlink difiere fundamentalmente de staking por validators en blockchains sin permiso. Los validadores pueden comportarse mal al ordenar transacciones de manera ambigua o contradictoria. El protocolo de consenso subyacente en un 15Dado que los usuarios pueden reemplazar transacciones en el mempool, se requiere cuidado para garantizar una correspondencia correcta entre las transacciones extraídas y las enviadas DON.Sin embargo, blockchain sin permiso utiliza reglas estrictas y rápidas de validación de bloques y primitivas criptográficas para evitar que validators generen bloques no válidos. En contraste, Las protecciones programáticas no pueden evitar que una red engañosa oracle genere informes inválidos. La razón es una diferencia clave entre los dos tipos de sistema: la validación de transacciones en blockchains es una propiedad de coherencia interna, mientras que la corrección de oracle informes sobre un blockchain es una propiedad de datos externos, es decir, fuera de la cadena. Hemos diseñado un mecanismo preliminar staking para la red Chainlink basado en un protocolo interactivo entre oracle nodos que pueden hacer uso de datos externos. esto mecanismo crea incentivos financieros para el comportamiento correcto utilizando recompensas explícitas y sanciones (corte). Como el mecanismo es económico, está diseñado para evitar que los nodos corrupción por parte de un adversario que utiliza recursos financieros para corromper nodos mediante soborno. (Tal adversario es muy general y se extiende, por ejemplo, a nodos que cooperan para extraer valor de su mala conducta colectiva.) El mecanismo Chainlink staking que hemos diseñado tiene algunas potentes y novedosas características.16 La característica principal es el impacto superlineal staking (específicamente, cuadrático). Un adversario debe tener recursos considerablemente superiores a los fondos depositados de los nodos en para subvertir el mecanismo. Nuestro mecanismo staking proporciona además protección contra un adversario más fuerte que el considerado anteriormente en sistemas similares, a saber un adversario que puede crear sobornos condicionando el comportamiento futuro de los nodos. Además, analizamos cómo Chainlink herramientas como DECO pueden ayudar a fortalecer nuestra staking mecanismo al facilitar la adjudicación correcta en el caso de un comportamiento defectuoso del nodo. Oportunidad de pago futuro (FFO): blockchains sin permiso, tanto del PoW y variedad de PoS: hoy dependen fundamentalmente de lo que llamamos incentivos implícitos. Estos son incentivos económicos para el comportamiento honesto que no derivan de recompensas explícitas, sino de la propia participación en la plataforma. Por ejemplo, la comunidad minera Bitcoin está incentivada a no montar un ataque del 51% por el riesgo de socavar la confianza en Bitcoin, deprimiendo su valor y, en consecuencia, erosionando el valor de su colectivo. inversiones de capital en infraestructura minera [150]. La red Chainlink se beneficia de un incentivo implícito similar al que nos referimos como oportunidad de pago futuro (FFO). Nodos de Oracle con sólidos historiales de rendimiento o las reputaciones atraen tarifas de los usuarios. El mal comportamiento de un nodo oracle pone en peligro el futuro pagos de tarifas y, por lo tanto, penaliza al nodo con un costo de oportunidad en términos de potencial Ingresos obtenidos a través de la participación en la red. Por analogía con la apuesta explícita, El FFO puede verse como una forma de participación implícita, un incentivo para un comportamiento honesto que deriva del beneficio compartido de mantener la confianza en la plataforma en la que El negocio de los operadores de nodos depende, es decir, el desempeño positivo y la reputación del red. Este incentivo es inherente pero no se expresa explícitamente en la red Chainlink protocolos. En Bitcoin, manteniendo el valor de las operaciones mineras como se mencionó anteriormente 16El mecanismo staking que describimos aquí actualmente solo tiene como objetivo exigir la entrega de informes correctos. por redes oracle. Esperamos que en trabajos futuros se amplíe para garantizar la correcta ejecución de los muchos otras funcionalidades que proporcionará DONs.De manera similar, puede verse como una forma de participación implícita. Destacamos que FFO ya existe en Chainlink y ayuda a proteger la red. hoy. Nuestra principal contribución en el desarrollo posterior de Chainlink será un enfoque basado en principios y empíricamente para evaluar incentivos implícitos como el FFO a través de lo que llamamos el Marco de Incentivos Implícitos (MII). Para estimar cantidades como la futura oportunidad de pago de los nodos, el IIF aprovechará continuamente la experiencia integral datos de rendimiento y pago recopilados por la red Chainlink. Tales estimaciones permitirá la parametrización basada en IIF de los sistemas staking que refleja los incentivos de los nodos con mayor precisión que los modelos heurísticos y/o estáticos actuales. Para resumir, entonces, los dos principales incentivos económicos para el nodo oracle correcto El comportamiento en la red Chainlink en desarrollo será: • Stake (participación depositada) oh Incentivo explícito • Oportunidad de pago futuro (FFO) oh Incentivo implícito Estas dos formas de incentivo son complementarias. Los nodos de Oracle pueden simultáneamente participar en el protocolo Chainlink staking, disfrutar de un flujo de ingresos continuo de usuarios y beneficiarnos colectivamente de su buen comportamiento continuo. Así, ambos incentivos contribuir a la seguridad criptoeconómica proporcionada por una red oracle. Además, Los dos incentivos pueden reforzarse y/o intercambiarse entre sí. Por ejemplo, un nuevo operador oracle sin un historial de rendimiento y un flujo de ingresos puede apostar una gran cantidad de LINK como garantía de comportamiento honesto, atrayendo así a los usuarios y honorarios. Por el contrario, un operador oracle establecido con una larga y relativamente libre de fallas El historial de rendimiento puede cobrar tarifas sustanciales a una gran base de usuarios y, por lo tanto, depender más fuertemente en su FFO como una forma de incentivo implícito. En general, el enfoque que consideramos aquí apunta a una cantidad determinada de oracle-red recurso para crear los mayores incentivos económicos posibles en Chainlink para fines racionales agentes (es decir, nodos que maximizan su utilidad financiera) se comporten con honestidad. pon otro De esta manera, el objetivo es maximizar los recursos financieros necesarios para que un adversario ataque. la red con éxito. Al formular un protocolo staking con matemáticamente bien seguridad económica definida y también utilizando el IIF, nuestro objetivo es medir la fuerza de Los incentivos de Chainlink con la mayor precisión posible. Los creadores de contratos de confianza entonces podrá determinar con gran confianza si una red oracle cumple sus niveles requeridos de seguridad criptoeconómica. El círculo virtuoso de la seguridad económica: Los incentivos que analizamos en esta sección, staking y FFO, tienen un impacto más allá de su refuerzo de la seguridad de DONs. Prometen inducir lo que llamamos un círculo virtuoso de seguridad económica. El impacto superlineal staking (y otras economías de escala) dan como resultado menores niveles operativos. costo a medida que crece la seguridad de DON. El menor costo atrae usuarios adicionales al DON,impulsar el pago de tasas. El aumento de los pagos de tasas sigue incentivando el crecimiento de la red, que perpetúa el círculo virtuoso. Creemos que el círculo virtuoso de la seguridad económica es sólo un ejemplo de una economía de escala y efecto de red, entre otros que analizamos más adelante en esta sección. Organización de la sección: El replanteo presenta desafíos técnicos y conceptuales notables para para el cual hemos diseñado un mecanismo con características novedosas. Por lo tanto, apostar será nuestro enfoque principal en esta sección. Ofrecemos una descripción general del enfoque staking que presentamos en este documento en la Sección 9.1, seguido de una discusión detallada en las Secciones 9.2 a 9.5. Presentamos el IFF en la Sección 9.6. Presentamos una vista resumida de los incentivos de la red Chainlink en la Sección 9.7. En la Sección 9.8, analizamos el círculo virtuoso de seguridad económica que nuestro enfoque propuesto staking puede aportar a las redes oracle. Finalmente, describimos brevemente otros potenciales efectos que impulsan el crecimiento de la red Chainlink en la Sección 9.9. 9.1 Resumen de apuestas El diseño del mecanismo staking que presentamos aquí, como se señaló anteriormente, implica un protocolo interactivo entre los nodos oracle que permite la resolución de inconsistencias en el presentación de informes de datos externos. La apuesta tiene como objetivo garantizar un comportamiento honesto de los nodos oracle racionales. Por lo tanto, podemos modelar un adversario que ataca un protocolo staking como un Sobornador: La estrategia del adversario es corromper oracle nodos utilizando incentivos financieros. El adversario puede obtener recursos financieros prospectivamente de la manipulación exitosa con un informe oracle, por ejemplo, ofrecer compartir las ganancias resultantes con nodos corruptos. En el diseño de nuestro mecanismo staking apuntamos simultáneamente a dos objetivos ambiciosos: 1. Resistir a un adversario poderoso: el mecanismo staking está diseñado para proteger oracle redes contra una amplia clase de adversarios que son capaces de realizar ataques complejos, Estrategias de soborno condicional, incluido el soborno potencial, que ofrece sobornos. a oracles cuyas identidades se determinan después del hecho (por ejemplo, ofrece sobornos a oracles seleccionados aleatoriamente para alertas de alta prioridad). Mientras que otros diseños oracle han considerado un conjunto limitado de ataques sin las capacidades completas de una estrategia realista. adversario, hasta donde sabemos, el mecanismo adversarial que introducimos Aquí está el primero que aborda explícitamente un amplio conjunto de estrategias de soborno y muestra resistencia en este modelo. Nuestro modelo supone que los nodos además del atacante son económicamente racional (a diferencia de honesto), y asumimos la existencia de un fuente de verdad que es prohibitivamente costosa para el uso típico pero que está disponible en caso de desacuerdo (que se analiza más adelante). 2. Lograr un impacto staking superlineal: Nuestro objetivo es garantizar que una red oracle compuesta por agentes racionales informe Sinceramente, incluso en presencia de un atacante con un presupuesto superlineal.en la participación total depositada por toda la red. En los sistemas staking existentes, si cada uno de los n nodos apuesta $d, un atacante puede emitir un soborno creíble que solicita que los nodos se comporten de manera deshonesta a cambio de un pago de poco más de \(d to each node, using a total budget of about \)dn. Este ya es un listón muy alto el atacante debe tener un presupuesto líquido del orden de los depósitos combinados de todos los interesados en la red. Nuestro objetivo es un grado aún mayor de seguridad económica que este obstáculo ya importante. Nuestro objetivo es diseñar el primer sistema staking que puede lograr seguridad para un atacante general con un presupuesto superlineal en n. Si bien las consideraciones prácticas pueden lograr un impacto menor, como veremos a continuación, nuestro diseño preliminar logra un requisito presupuestario contradictorio mayor que $dn2/2, es decir, escalar cuadráticamente en n, lo que hace que el soborno sea en gran medida poco práctico incluso cuando los nodos apuestan solo cantidades moderadas. Alcanzar estos dos objetivos requiere una combinación innovadora de diseño de incentivos. y criptografía. Ideas clave: Nuestro enfoque staking depende de una idea que llamamos prioridad de vigilancia. Un informe generado por una red Chainlink oracle y enviado a un contrato de confianza (por ejemplo, sobre el precio de un activo) se agrega a partir de informes individuales aportados por los nodos participantes (por ejemplo, tomando la mediana). Normalmente, un acuerdo de nivel de servicio (SLA) especifica límites aceptables de desviación para los informes, es decir, hasta qué punto el informe de un nodo puede desviarse del informe agregado y hasta qué punto se debe permitir que el agregado desviarse del valor real para ser considerado correcto. En nuestro sistema staking, para una ronda de informes determinada, cada nodo oracle puede actuar como un organismo de control para generar una alerta si cree que el informe agregado es incorrecto. en cada ronda de informes, a cada nodo oracle se le asigna una prioridad pública que determina la orden en que se procesará su alerta (si corresponde). Nuestro mecanismo apunta a la recompensa. concentración, lo que significa que el perro guardián con mayor prioridad para generar una alerta gana el La recompensa completa se obtiene al confiscar los depósitos de los nodos defectuosos. Nuestros diseños de sistema staking involucran dos niveles: el primero, el nivel predeterminado, y el segundo, nivel de respaldo. El primer nivel es la propia red oracle, un conjunto de n nodos. (Para simplificar, asumimos que n es impar.) Si la mayoría de los nodos informan valores incorrectos, un perro guardián en el El primer nivel está fuertemente incentivado a generar una alerta. Si se genera una alerta, el informe La decisión de la red luego se escala a un segundo nivel: un sistema de alto costo y máxima confiabilidad que el usuario puede especificar en el acuerdo de nivel de servicio de la red. Este podría ser un sistema que, por ejemplo, esté compuesto sólo por nodos con fuertes puntuaciones de confiabilidad histórica, o una que tenga un orden de magnitud más oracles que el primer nivel. Además, como se analiza en la Sección 9.4.3, DECO o Town Pregonero pueden servir como herramientas poderosas para ayudar a garantizar una adjudicación eficiente y concluyente en el segundo nivel. Por simplicidad, asumimos que este sistema de segundo nivel llega a un informe correcto. valor. Si bien puede parecer atractivo confiar simplemente en el segundo nivel para generar todos los informes, El beneficio de nuestro diseño es que logra consistentemente las propiedades de seguridad delsistema de segundo piso pagando sólo el costo operativo, en el caso típico, del sistema de primer nivel. La prioridad de vigilancia da como resultado un impacto superlineal staking de la siguiente manera: si el La red de primer nivel oracle genera un resultado incorrecto y varios nodos de vigilancia alerta, el mecanismo de incentivo staking recompensa al organismo de control de mayor prioridad con más de $dn/2 extraídos de los depósitos de los (mayoría) nodos que se comportan mal. el la recompensa total se concentra así en manos de este único perro guardián, que por lo tanto determina el mínimo que un adversario debe prometer a un potencial organismo de control para incentivarlo a no alertar. Dado que nuestro mecanismo garantiza que cada oracle obtenga el oportunidad de actuar como perro guardián si los perros guardianes de mayor prioridad han aceptado sus sobornos (y decidió no alertar), el adversario debe, por lo tanto, ofrecer un soborno de más de $dn/2 a cada nodo para evitar que se genere alguna alerta. Como hay n nodos, el El presupuesto requerido por el adversario para un soborno exitoso asciende a más de $dn2/2, lo que es cuadrático en el número n de nodos de la red. 9.2 Antecedentes Nuestro enfoque para staking se basa en investigaciones en los campos de la teoría y el mecanismo de juegos. diseño (MD) (para obtener una referencia de un libro de texto, consulte [177]). La teoría de juegos es matemáticamente estudio formalizado de interacción estratégica. En este contexto, un juego es un modelo de tal una interacción, típicamente en el mundo real, que codifica conjuntos de acciones disponibles para participantes en el juego, conocidos como jugadores. Un juego también especifica los pagos obtenidos. por los jugadores individuales: recompensas que dependen de las acciones elegidas por un jugador y de la acciones de los demás jugadores. Quizás el ejemplo más conocido de un juego estudiado en el juego. La teoría es el dilema del prisionero [178]. Los teóricos de juegos generalmente intentan comprender el equilibrio o equilibrios (si los hay) representados en un juego dado. Un equilibrio es un conjunto de estrategias (una para cada jugador) tal que ningún jugador pueda obtener una mayor obtener ganancias al desviarse unilateralmente de su estrategia. Mientras tanto, el diseño de mecanismos es la ciencia de diseñar incentivos tales que el El equilibrio de una interacción (y su juego asociado) tiene alguna propiedad deseable. La MD puede verse como lo contrario de la teoría de juegos: la cuestión canónica en el juego La teoría es: "dados los incentivos y el modelo, ¿cuál será el equilibrio?" En MD, el La pregunta más bien es: “¿qué incentivos darán como resultado un juego con un equilibrio deseable?” Un objetivo típico de un diseñador de mecanismos es crear un mecanismo "compatible con incentivos", lo que significa que los participantes en el mecanismo (por ejemplo, una subasta u otra información sistema de obtención de información [228]) están incentivados a informar la verdad sobre algún asunto (por ejemplo, cómo cuánto valoran un artículo en particular). La subasta de Vickrey (segundo precio) es quizás la mecanismo compatible con incentivos más conocido, en el que los participantes presentan ofertas selladas por un artículo y el mejor postor gana el artículo pero paga el segundo precio más alto [214]. La criptoeconomía es una forma de MD de dominio específico que aprovecha la criptografía. técnicas para crear equilibrios deseables dentro de los sistemas descentralizados. El soborno y la colusión crean desafíos importantes en todo el campo del MD. Casi todos los mecanismos se rompen en presencia de colusión, definida como contratos secundarios entreentre las partes que participan en un mecanismo [125, 130]. El soborno, en el que una parte externa introduce incentivos novedosos en el juego, presenta un problema aún más difícil. que la colusión; La colusión puede verse como un caso especial de soborno entre jugadores. participantes. Los sistemas blockchain a menudo pueden conceptualizarse como juegos con recompensas monetarias (basadas en criptomonedas). Un ejemplo sencillo es la minería de prueba de trabajo: los mineros tienen un espacio de acción en el que pueden elegir la hashrate con la que minar bloques. El beneficio de la minería es una recompensa negativa garantizada (coste de la electricidad y el equipo) más un factor estocástico. recompensa positiva (subsidio minero) que depende del número de otros mineros activos [106, 172] y tarifas de transacción. Los oracle de colaboración colectiva como SchellingCoin [68] son otro ejemplo: el espacio de acción es el conjunto de posibles informes que un oracle puede enviar, mientras el pago es la recompensa especificada por el mecanismo oracle, por ejemplo, el pago podría depender sobre qué tan cerca está el informe de oracle de la mediana de los otros informes [26, 68, 119, 185]. Los juegos blockchain ofrecen grandes oportunidades para ataques de colusión y soborno; de hecho, smart contracts pueden incluso facilitar tales ataques [96, 165]. Quizás el más conocido El ataque de soborno a oracles de colaboración colectiva es el ataque p-plus-épsilon [67]. este ataque surge en el contexto de un mecanismo similar a SchellingCoin en el que los jugadores envían informes con valores booleanos (es decir, falsos o verdaderos) y son recompensados con p si están de acuerdo con el presentación mayoritaria. En un ataque p-plus-épsilon, el atacante promete de manera creíble: por ejemplo, pagar a los usuarios $p + ϵ por votar en falso si y sólo si la presentación mayoritaria es verdadera. El resultado es un equilibrio, en el que todos los jugadores están incentivados a reportar información falsa. independientemente de lo que hagan otros jugadores; en consecuencia, el sobornador puede inducir a los nodos a través del soborno prometido para informar cosas falsas sin pagar realmente el soborno (!). Sin embargo, la exploración de otras estrategias de soborno en el contexto de los oracles (y particularmente de los oracles que no son de colaboración abierta) se ha limitado a estrategias adversas bastante débiles. modelos. Por ejemplo, en el entorno de PoW, los investigadores han estudiado sobornos, es decir, sobornos que se pagan sólo si un mensaje objetivo se censura con éxito y no aparecen en un bloque, independientemente de la acción de un minero individual [96, 165]. en el caso de oracles, sin embargo, aparte del ataque p-plus-épsilon, solo conocemos el trabajo en modelo estrictamente limitado de soborno en el que el sobornador envía un soborno condicionado a una de la acción individual del jugador, no del resultado resultante. Aquí esbozamos diseños de mecanismos de obtención de información que siguen siendo incentivos. compatible incluso en un modelo adversarial fuerte, como se describe en la siguiente subsección. 9.3 Supuestos de modelado En esta subsección, explicamos cómo modelamos el comportamiento y las capacidades de los jugadores en nuestro sistema, específicamente nodos oracle de primer nivel, nodos en el segundo nivel (adjudicación) capa y adversarios.9.3.1 Modelo de incentivos de primer nivel: actores racionales Muchos sistemas blockchain dependen de la seguridad en el supuesto de una cierta cantidad de honestidad. nodos participantes. Los nodos se definen como honestos si siguen el protocolo incluso cuando no sea de su interés financiero hacerlo. Los sistemas de prueba de trabajo generalmente requieren la mayor parte del poder hash para ser honestos, los sistemas de prueba de participación generalmente requieren 2/3 o más de toda la participación participante para ser honestos, e incluso los sistemas de capa 2 como Arbitrum [141] requiere al menos un único participante honesto. Al modelar nuestro mecanismo staking, hacemos una suposición mucho más débil. (ser Los supuestos claros y más débiles significan propiedades de seguridad más fuertes y, por lo tanto, son preferibles.) Suponemos que el adversario ha corrompido, es decir, controla, algunos (minoría) fracción de nodos oracle de primer nivel. Modelamos los nodos restantes no como agentes honestos, sino como maximizadores racionales de la utilidad esperada. Estos nodos actúan enteramente de acuerdo con incentivos financieros interesados, eligiendo acciones que resultan en un beneficio financiero esperado. ganancia. Por ejemplo, si a un nodo se le ofrece un soborno mayor que la recompensa resultante de comportamiento honesto, aceptará el soborno. Nota sobre los nodos adversarios: De acuerdo con el modelo de confianza común para En sistemas descentralizados, asumimos que todos los nodos son racionales, es decir, buscan maximizar ingresos netos, en lugar de estar controlados por un adversario malicioso. Nuestras afirmaciones, sin embargo: impacto específicamente superlineal o cuadrático staking: se mantiene asintóticamente proporcionado que el conjunto de nodos controlados adversariamente es como máximo (1/2 −c)n, para algunos positivos constante c. 9.3.2 Modelo de adjudicación de segundo nivel: corrección por suposición Recuerde que una característica crítica de nuestro mecanismo staking que ayuda a lograr la seguridad contra los nodos racionales es su sistema de segundo nivel. En nuestro mecanismo staking propuesto, cualquier oracle puede generar una alerta indicando que cree que el resultado del mecanismo es incorrecto. Una alerta genera un nivel de confianza alto. Sistema de segundo nivel que activa y reporta el resultado correcto. Por lo tanto, un modelo clave El requisito para nuestro enfoque es la adjudicación correcta, es decir, la presentación de informes correctos por parte del sistema de segundo nivel. Nuestro modelo staking supone un sistema de segundo nivel que actúa como una fuente de verdad incorruptible y máximamente confiable. Es probable que un sistema de este tipo sea caro y lento y, por tanto, inadecuado para su uso en el caso típico. Sin embargo, en el caso de equilibrio, es decir, cuando Si el sistema de primer nivel funciona correctamente, no se invocará el sistema de segundo nivel. En cambio, su existencia aumenta la seguridad de todo el sistema oracle al proporcionar una respaldo de alta seguridad. El uso de un nivel de adjudicación de alto costo y alta confianza se asemeja al proceso de apelación. en el corazón de la mayoría de los sistemas judiciales. También ya es común en el diseño de oracle sistemas, por ejemplo, [119, 185]. Discutimos brevemente los enfoques para la realización del segundo nivel. en nuestro mecanismo en la Sección 9.4.3.Nuestro protocolo staking utiliza la supuesta adjudicación correcta del sistema de segundo nivel como una amenaza creíble para imponer informes correctos por parte de los nodos oracle. el protocolo confisca parte o la totalidad de la participación de oracle nodos que generan informes identificados por el sistema de segundo nivel es incorrecto. De este modo se disuade a los nodos de Oracle de comportarse mal por la sanción económica resultante. Este enfoque es similar en sabor al utilizado en rollups optimistas, por ejemplo, [141, 10]. 9.3.3 Modelo adversario Nuestro mecanismo staking está diseñado para obtener información veraz y al mismo tiempo lograr seguridad contra una clase amplia y bien definida de adversarios. Mejora trabajos anteriores, que omiten un modelo adversarial explícito o se centran en subclases estrechas de adversarios, por ejemplo, el adversario p-plus-épsilon discutido anteriormente. Nuestro objetivo es diseñar un staking mecanismo con seguridad formalmente probada contra todo el espectro de adversarios probables que se encontrarán en la práctica. Modelamos a nuestro adversario con un presupuesto fijo (parametrizable), denotado por $B. El adversario puede comunicarse individual y confidencialmente con cada oracle en la red, y puede ofrecer en secreto a cualquier individuo oracle el pago garantizado de un soborno depende de los resultados públicamente observables del mecanismo. Resultados determinantes Los sobornos pueden incluir, por ejemplo, el valor informado por el oracle, cualquier mensaje público enviado por cualquier oracle al mecanismo (por ejemplo, una alerta), los valores informados por otros oracles y el valor generado por el mecanismo. Ningún mecanismo puede proteger contra un atacante con capacidades ilimitadas. Por lo tanto, consideramos que algunos comportamientos son poco realistas o están fuera de alcance. Asumimos que nuestro atacante no puede romper las primitivas criptográficas estándar y, como se señaló anteriormente, tiene un valor fijo (si potencialmente grande) presupuesto $B. Suponemos además que el adversario no controla comunicación en la red oracle, específicamente que no puede retrasar sustancialmente tráfico entre nodos de primer y/o segundo nivel. (Que el adversario pueda observar dicha comunicación depende del mecanismo particular, como explicamos a continuación). Sin embargo, de manera informal, como se señaló anteriormente, asumimos que el adversario puede: (1) Corromper una fracción de oracle nodos ((1/2 −c)-fracción para alguna constante c), es decir, control total ellos, y (2) Ofrecer sobornos a cualquier nodo deseado, con pago garantizado supeditado en los resultados especificados por el adversario, como se describió anteriormente. Si bien no ofrecemos un modelo formal o una taxonomía completa de la capacidad total del adversario gama de capacidades de soborno en este documento técnico, a continuación se muestran ejemplos de los tipos de sobornadores abarcados por nuestro modelo. Para simplificar, asumimos que oracles emiten valores booleanos. informes cuyo valor correcto (w.l.o.g.) es verdadero, y que un resultado final se calcula como un agregado de estos informes para ser utilizado por un consumidor smart contract. El sobornador El objetivo es que el resultado final sea incorrecto, es decir, falso. • Sobornador incondicional: El sobornador ofrece un soborno de $b a cualquier oracle que informe algo falso. • Sobornador probabilístico: El sobornador ofrece un soborno de $b con cierta probabilidad q a cualquier oracle que informa falso.• soborno condicionado por resultados falsos: el sobornador ofrece un soborno de $b a cualquier oracle que informe algo falso, siempre que el resultado final sea falso. • Sobornador sin alerta condicionada: el sobornador ofrece un soborno de $b a cualquier oracle que informe falso siempre que no se genere ninguna alerta. • Sobornador p-plus-epsilon: El sobornador ofrece un soborno de $b a cualquier oracle que reporte datos falsos como siempre y cuando la mayoría de oracles no reporten datos falsos. • Sobornador potencial: el sobornador ofrece un soborno de miles de dólares por adelantado al oracle seleccionado. para un rol aleatorio e informes falsos. En nuestro protocolo staking propuesto, todos Los nodos actúan como posibles perros guardianes y podemos demostrar que la aleatorización de las prioridades del organismo de control no se presta a posibles sobornos. Muchos sistemas de prueba de trabajo, proof-of-stake y autorizados son susceptibles a posibles soborno, sin embargo, lo que demuestra la importancia de considerarlo en nuestro conflicto modelo y garantizar que nuestros protocolos staking sean resistentes a él. Ver Apéndice E para más detalles. 9.3.4 ¿Cuánta seguridad criptoeconómica es suficiente? Un adversario racional sólo gastará dinero para atacar un sistema si puede obtener un beneficio. mayor que su gasto. Así, para nuestro modelo adversarial y propuesto staking mecanismo, $B puede verse como una medida del beneficio potencial que un adversario puede obtener para extraer de smart contracts confiables corrompiendo una red oracle y provocando que para generar un informe o conjunto de informes incorrectos. Al decidir si una red oracle ofrece un grado suficiente de seguridad criptoeconómica para sus propósitos, un usuario debe evaluar la red desde esta perspectiva. Para adversarios plausibles en escenarios prácticos, esperamos que $B sea generalmente sustancialmente menor que los activos totales en smart contracts confiables. En la mayoría de los casos, Es inviable que un adversario extraiga estos activos en su totalidad. 9.4 Mecanismo de replanteo: boceto Aquí presentamos las ideas principales y la estructura general del mecanismo staking que están considerando actualmente. Para facilitar la presentación, describimos un método simple pero lento. protocolo (múltiples rondas) en esta subsección. Sin embargo, observamos que este esquema es bastante práctico. Dadas las garantías económicas proporcionadas por el mecanismo, es decir, la penalización y el consiguiente incentivo contra los nodos defectuosos, muchos usuarios pueden estar dispuestos a aceptar informes con optimismo. En otras palabras, dichos usuarios pueden aceptar informes antes de posible adjudicación por parte del segundo nivel. Los usuarios que no estén dispuestos a aceptar informes con optimismo pueden optar por esperar hasta que el protocolo la ejecución termina, es decir, hasta que se produzca cualquier posible escalada al segundo nivel. esto, sin embargo, puede ralentizar sustancialmente el tiempo de confirmación de los informes. Por lo tanto, brevementeFigura 15: Esquema del esquema staking con alertas. En este ejemplo, 1⃝una mayoría de nodos están corruptos/sobornados y emiten un valor incorrecto ˜r, en lugar del correcto valor del informe r. El nodo de vigilancia 2⃝ envía una alerta al comité de segundo nivel, que 3⃝determina y emite el valor de informe correcto r, lo que resulta en nodos corruptos perdiendo sus depósitos, cada $d al nodo de vigilancia 4⃝. Describe algunas optimizaciones que resultan en una ronda más rápida (de una sola ronda), aunque algo más. diseño complejo en la Sección 9.5. Recuerde que el primer nivel de nuestro mecanismo staking consta del oracle básico. red misma. La estructura principal de nuestro mecanismo, como se describe anteriormente, es que en cada ronda, cada nodo puede actuar como un "perro guardián" con cierta prioridad y, por lo tanto, tiene la capacidad de generar una alerta si el mecanismo llega a una salida incorrecta ˜r, en lugar de una correcta uno r. Esta alerta provoca una resolución de segundo nivel, que asumimos llega a una resolución correcta. informe. Los nodos con informes incorrectos son castigados, en el sentido de que sus apuestas son recortado y entregado a los perros guardianes. Esta estructura básica es común en los sistemas oracle, como en, por ejemplo, [119, 185]. La innovación clave en nuestro diseño, mencionada brevemente anteriormente, es que cada nodo está Se le asignó una clara prioridad en el ordenamiento de los posibles perros guardianes. Es decir, perros guardianes. se les dan oportunidades para alertar en secuencia prioritaria. Recuerde que si un nodo tiene la máxima prioridad para generar una alerta, recibe el depósito recortado $d por cada mal comportamiento nodo, para un total de más de \(dn/2 = \)d × n/2, ya que un informe incorrecto implica un mayoría de nodos defectuosos. En consecuencia, el adversario debe pagar al menos esta recompensa a sobornar a un nodo arbitrario. Así, para sobornar a la mayoría de los nodos, el adversario debe pagar una Un gran soborno a la mayoría de los nodos, es decir, estrictamente más de $dn2/2. Mostramos esquemáticamente cómo funciona la escalada de alertas y vigilancia en la Fig. 15.9.4.1 Más detalles del mecanismo El sistema resistente al soborno que describimos ahora con más detalle es un bosquejo simplificado de la construcción de dos niveles que pretendemos construir. La mayor parte de nuestra atención se centrará en describir la red de primer nivel (en adelante simplemente “red” cuando se desprenda del contexto) junto con con su mecanismo de incentivos y el procedimiento de escalada al segundo nivel. Considere una red Chainlink compuesta por n oracle nodos que son responsables de regularmente (por ejemplo, una vez por minuto) informando un valor booleano (por ejemplo, si el mercado la capitalización de BTC supera la de ETH). Como parte del mecanismo staking, los nodos debe proporcionar dos depósitos: un depósito $d sujeto a recortes en caso de desacuerdo con la mayoría y un depósito de vigilancia $dw sujeto a recortes en caso de fallo escalada. Suponemos que los nodos no pueden copiar los envíos de otros nodos, por ejemplo, a través de un esquema de compromiso-revelación como se analiza en la Sección 5.3. En cada ronda, los nodos primero comprometerse con su informe, y una vez que todos los nodos se hayan comprometido (o haya expirado un tiempo de espera), Los nodos revelan sus informes. Para cada informe que se genera, a cada nodo también se le asigna una prioridad de vigilancia entre 1 yn elegida al azar, siendo 1 la máxima prioridad. Esta prioridad permite a la concentración de recompensa en manos de un perro guardián. Después de que todos los informes sean públicos, sobreviene una fase de alerta. Durante una secuencia de n rondas (síncronas), el nodo con La prioridad i tiene la oportunidad de alertar en la ronda i. Consideremos los posibles resultados del mecanismo después de que los nodos hayan revelado sus informes. Suponiendo nuevamente un informe binario, supongamos que el valor correcto es verdadero y el incorrecto es falso. Supongamos también que el mecanismo de primer nivel genera la Valor mayoritario producido por los nodos como informe final r. Hay tres resultados posibles en el mecanismo: • Acuerdo completo: en el mejor de los casos, los nodos están en completo acuerdo: todos los nodos están disponibles y han proporcionado un informe oportuno del mismo valor r (ya sea verdadero o falso). En este caso, la red sólo necesita reenviar r a los contratos de confianza. y recompensar cada nodo con un pago fijo por ronda $p, que es mucho menor que $d. • Acuerdo parcial: es posible que algunos nodos estén fuera de línea o haya desacuerdo sobre qué valor es correcto, pero la mayoría de los nodos informan que son verdaderos y solo un Los informes minoritarios son falsos. Este caso también es sencillo. El valor mayoritario (verdadero) se calcula, lo que da como resultado un informe correcto r. Todos los nodos que informaron r son recompensados con $p mientras los oracles que reportaron incorrectamente tengan sus depósitos reducido modestamente, por ejemplo, en 10 peniques. • Alerta: En caso de que un organismo de control crea que la salida de la red es incorrecta, activa públicamente una alerta, escalando el mecanismo a la red de segundo nivel. Hay entonces dos resultados posibles: – Alerta correcta: si la red de segundo nivel confirma que la salida delFigura 16: Ampliación del costo del soborno mediante recompensas de alerta concentradas. un soborno El adversario debe sobornar a cada nodo con más recompensa que la que podría obtener alertando. (se muestra como una barra roja). Si se comparten las recompensas de alerta, entonces esta recompensa puede ser relativamente pequeño. Las recompensas de alerta concentradas aumentan la recompensa que cualquier nodo puede recibir. obtener (barra roja alta). En consecuencia, el pago total por parte del adversario por un soborno viable (regiones grises) es mucho mayor con recompensas de alerta concentradas que compartidas. La red de primer nivel era incorrecta, el nodo de vigilancia que alerta recibe una recompensa. que consiste en todos los depósitos recortados y, por lo tanto, más de $dn/2. – Alerta defectuosa: si los oracle de segundo y primer nivel están de acuerdo, se realiza la escalada. se considera defectuoso y el nodo de alerta pierde su depósito de $dw. En caso de aceptación optimista de los informes, las alertas de vigilancia no causan cualquier cambio en la ejecución de los contratos de confianza. Para contratos diseñados para esperar posible arbitraje por parte del comité de segundo nivel, las alertas del organismo de control retrasan pero no congelar la ejecución del contrato. También es posible que los contratos designen un conmutación por error DON para períodos de adjudicación. 9.4.2 Impacto de apuesta cuadrático La capacidad de cada nodo de actuar como guardián, combinada con una estricta prioridad de nodo. Garantizar recompensas concentradas permite que el mecanismo alcance staking cuadrático. impacto para cada tipo de atacante que soborna descrito en la Sección 9.3.3. Recuerde que esto significa específicamente en nuestro entorno que, para una red con n nodos cada uno con depósito $d, un sobornador exitoso (de cualquiera de los tipos anteriores) debe tener un presupuesto mayor que $dn2/2. Para ser precisos, el sobornador debe corromper al menos (n+1)/2 nodos, ya que el sobornador debe corromper una mayoría de n nodos (para n impares, por supuesto). Por lo tanto, un perro guardián debe gane una recompensa de $d(n + 1)/2. En consecuencia, el sobornador debe pagar esta cantidad a cadanodo para garantizar que ninguno actúe como perro guardián. Estamos trabajando para demostrar formalmente que si el sobornador tiene un presupuesto de como máximo $d(n2 + n)/2, entonces el equilibrio perfecto en subjuegos del juego entre los sobornadores y los oracles; en otras palabras, el equilibrio en cualquier momento durante el desarrollo del juego—es para el sobornador no emitir el soborno y para cada oracle para informar sus verdaderos valores con honestidad. Hemos explicado anteriormente cómo es posible que un sobornador exitoso requiera una presupuesto significativamente mayor que el de la suma de los depósitos de los nodos. Para ilustrar esto Como resultado intuitivo, la Fig. 16 muestra gráficamente el impacto de las recompensas de alerta concentradas. Como vemos allí, si la recompensa por alertar al organismo de control (es decir, los depósitos de los sobornados) nodos que informan falsos): se dividieron entre todas las alertas potenciales, la cantidad total que cualquier nodo de alerta individual podría esperar sería relativamente pequeño, del orden de $d. Un sobornador, sabiendo que era improbable un pago superior a $d, podría utilizar un soborno condicional de resultado falso para sobornar a cada uno de los n nodos con un poco más de $d + ϵ. Contraintuitivamente, la Fig. 16 muestra que un sistema que distribuye una recompensa ampliamente entre los nodos que señalan una alerta es mucho más débil que uno que concentra la recompensa en las manos de un solo perro guardián. Parámetros de ejemplo: Considere una red (de primer nivel) con n = 100 nodos, cada uno depositando \(d = \)20K. Esta red tendría un total de $2 millones depositados pero Estar protegido contra un soborno con presupuesto \(100M = \)dn2/2. Aumentando el número de oracles es más efectivo que aumentar $d, por supuesto, y puede tener un efecto dramático: una red con n = 300 nodos y depósitos \(d = \)20K estaría protegida contra un Sobornador con presupuesto de hasta 900 millones de dólares. Tenga en cuenta que un sistema staking puede en muchos casos proteger smart contracts que representan más valor que el nivel ofrecido de protección contra el soborno. Esto se debe a que un adversario atacar estos contratos no puede extraer el valor total en muchos casos. Por ejemplo, un Un contrato impulsado por Chainlink que garantiza un valor de mil millones de dólares solo puede requerir una garantía contra una sobornador con 100 millones de dólares en recursos porque tal adversario puede extraer una ganancia de sólo el 10% del valor del contrato. Nota: La idea de que el valor de una red puede crecer cuadráticamente se expresa en la conocida Ley de Metcalfe [167, 235], que establece que el valor de una red crece cuadráticamente en el número de entidades conectadas. La ley de Metcalfe, sin embargo, surge del crecimiento en el número de posibles conexiones de red por pares, un fenómeno diferente al impacto cuadrático subyacente staking en nuestro incentivo mecanismo. 9.4.3 Realización del Segundo Nivel Dos características operativas facilitan la realización de un segundo nivel de alta confiabilidad: (1) La adjudicación de segundo nivel debería ser un evento poco común en las redes oracle y, por lo tanto, puede ser significativamente más costoso que el funcionamiento normal del primer nivel y (2) Suponiendoinformes aceptados con optimismo—o contratos cuya ejecución puede esperar a un arbitraje— el segundo nivel no necesita ejecutarse en tiempo real. Estas características dan como resultado una gama de Opciones de configuración para el segundo nivel para cumplir con los requisitos de DONs particulares. Como enfoque de ejemplo, un comité de segundo nivel puede estar formado por nodos seleccionados por un DON (es decir, primer nivel) de los nodos más confiables y con más años de servicio en el Chainlink red. Además de una considerable experiencia operativa relevante, los operadores de tales nodos tienen un incentivo implícito considerable en FFO que motiva un deseo para garantizar que la red Chainlink siga siendo altamente confiable. También lo han hecho públicamente historiales de rendimiento disponibles que brindan transparencia sobre su confiabilidad. Vale la pena señalar que los nodos de segundo nivel no necesitan ser participantes en la red de primer nivel, y puede adjudicar fallas en múltiples redes de primer nivel. Los nodos en un DON determinado pueden predesignar y comprometerse públicamente con un conjunto de n′ tales nodos que constituyen el comité de segundo nivel para ese DON. Además, DON los nodos publican un parámetro k′ ≤n′ que determina el número de votos de segundo nivel requerido para penalizar un nodo de primer nivel. Cuando se genera una alerta para un informe determinado, Los miembros del segundo nivel votan sobre la exactitud de los valores proporcionados por cada uno. de los nodos de primer nivel. Cualquier nodo de primer nivel que reciba k′ votos negativos pierde su depósitos al nodo de vigilancia. Debido a la rareza de la adjudicación y la oportunidad de ejecución por tiempo prolongado Como se señaló anteriormente, a diferencia del primer nivel, los nodos del segundo nivel pueden: 1. Recibir una remuneración elevada por realizar la adjudicación. 2. Aprovechar fuentes de datos adicionales, incluso más allá del conjunto diverso utilizado por el primero. 3. Depender de la inspección e intervención manual y/o experta, por ejemplo, para identificar y conciliar errores en los datos de origen y distinguir entre un nodo honesto que transmite datos defectuosos y un nodo que se comporta mal. Hacemos hincapié en que el enfoque que acabamos de describir para la selección de nodos de segundo nivel y la política que rige la adjudicación representa sólo un punto dentro de un gran Espacio de diseño de posibles realizaciones del segundo nivel. Nuestro mecanismo de incentivos ofrece Completa flexibilidad en cuanto a cómo se realiza el segundo nivel. Los DON individuales pueden así constituir y fijar reglas para sus segundos niveles que cumplan con los requisitos particulares y expectativas de los nodos y usuarios participantes. DECO y Town Pregonero como herramientas de adjudicación: Es imprescindible para la segunda división. en nuestro mecanismo para poder distinguir entre nodos adversarios de primer nivel que producir intencionalmente informes incorrectos y nodos honestos de primer nivel que sin querer transmitir datos que son incorrectos en la fuente. Sólo entonces podrá el segundo nivel implementar Recortar para desincentivar las trampas, el objetivo de nuestro mecanismo. DECO y Pregonero son herramientas poderosas que pueden permitir que los nodos de segundo nivel hagan esta distinción crítica confiablemente.En algunos casos, los nodos de segundo nivel pueden consultar directamente la fuente de datos utilizada. por un nodo de primer nivel o utilice la Sección 7.1 de ADO para comprobar si se ha recibido un informe incorrecto. resultado de una fuente de datos defectuosa. En otros casos, sin embargo, los nodos de segundo nivel pueden carecer acceso directo a la fuente de datos de un nodo de primer nivel. En tales casos, una adjudicación correcta parecen inviables o requieren confiar en un juicio subjetivo. Anterior oracle Los sistemas de disputas se han basado en rondas de votación cada vez más ineficientes para abordar tales cuestiones. desafíos. Sin embargo, al utilizar DECO o Town Crier, un nodo de primer nivel puede demostrar un comportamiento correcto. a nodos de segundo nivel. (Consulte la Sección 3.6.2 para obtener detalles sobre los dos sistemas). Específicamente, si el nodo de segundo nivel identifica un nodo de primer nivel que ha generado un valor de informe defectuoso ˜r, El nodo de primer nivel puede usar DECO o Town Crier para generar evidencia a prueba de manipulaciones para nodos de segundo nivel que están transmitiendo correctamente desde una fuente (habilitada para TLS) reconocido como autorizado por el DON. Fundamentalmente, el nodo de primer nivel puede hacer esto. sin nodos de segundo nivel que requieran acceso directo a la fuente de datos.17 En consecuencia, La adjudicación correcta es factible en Chainlink para cualquier fuente de datos deseada. 9.4.4 Informes erróneos de seguros La fuerte resistencia al soborno lograda por nuestro mecanismo staking se basa fundamentalmente sobre los recortes de fondos que se conceden a los alertadores. Sin una recompensa monetaria, los alertadores no tienen ningún incentivo directo para rechazar los sobornos. Como resultado, sin embargo, los fondos recortados no son disponible para compensar a los usuarios perjudicados por informes incorrectos, por ejemplo, usuarios que pierden dinero cuando se transmiten datos de precios incorrectos a smart contract. Por supuesto, los informes incorrectos no suponen un problema si los informes son aceptados por un contrato sólo después de una posible adjudicación, es decir, una acción por parte del segundo nivel. Como se explica Sin embargo, para lograr el mejor desempeño posible, los contratos pueden basarse en son optimistas sobre el mecanismo para hacer cumplir la presentación de informes correctos, lo que significa que aceptan informes antes de una posible adjudicación de segundo nivel. De hecho, un comportamiento tan optimista es seguro en nuestro modelo asumiendo adversarios racionales cuyos presupuestos no excedan el staking impacto del mecanismo. Usuarios preocupados por el improbable caso de una falla del mecanismo resultante de, por ejemplo, los adversarios con recursos financieros abrumadores pueden desear emplear una capa adicional de seguridad económica en forma de seguros contra declaraciones erróneas. sabemos de Múltiples aseguradoras ya tienen la intención de ofrecer pólizas de este tipo respaldadas por contratos inteligentes. para protocolos seguros Chainlink en un futuro próximo, incluso a través de mecanismos innovadores como DAOs, por ejemplo, [7]. La existencia de un historial de rendimiento para Chainlink Los nodos y otros datos sobre los nodos, como los montos de su participación, proporcionan una base excepcionalmente sólida para las evaluaciones actuariales del riesgo, lo que permite fijar el precio de las políticas. de maneras que sean económicas para los asegurados pero sostenibles para las aseguradoras. 17Con Town Crier, también es posible que los nodos de primer nivel generen certificaciones localmente de corrección de los informes que generan y proporcionan estas certificaciones a los nodos de segundo nivel en un según sea necesario.Las formas básicas de seguros contra declaraciones erróneas se pueden implementar de manera confiable y manera eficiente usando smart contracts. Como ejemplo sencillo, un seguro paramétrico contrato SCins puede compensar a los asegurados automáticamente si nuestro mecanismo de incentivos El segundo nivel identifica un error en un informe generado en el primer nivel. Un usuario U que desea adquirir una póliza de seguro, por ejemplo, el creador de un objetivo. contrato SC, puede presentar una solicitud a una aseguradora descentralizada por un monto de póliza Millones de dólares en el contrato. Al aprobar U, el asegurador puede establecer un período continuo (por ejemplo, mensual) prima de $P en SCins. Mientras U paga la prima, su póliza permanece activa. Si ocurre una falla en el reporte en SC, el resultado será la emisión de un par (r1, r2) de informes contradictorios para SC, donde r1 está firmado por el primer nivel de nuestro mecanismo y r2, el informe corregido correspondiente, está firmado por el segundo nivel. Si la U proporciona tal par válido (r1, r2) a SCins, el contrato le paga automáticamente $M, siempre que sus pagos de primas están al día. 9.5 Variante de una sola ronda El protocolo descrito en la subsección anterior requiere que el comité de segundo nivel espere n rondas para determinar si un organismo de control ha emitido una alerta. esto El requisito se mantiene incluso en el caso optimista, es decir, cuando el primer nivel está funcionando. correctamente. Para los usuarios que no estén dispuestos a aceptar informes de manera optimista, es decir, antes de posibles adjudicación, el retraso asociado con ese enfoque sería inviable. Por esta razón, también estamos explorando protocolos alternativos que requieren solo un redondo. En este enfoque, todos los nodos oracle envían bits secretos que indican si desean dar una alerta. El comité de segundo nivel luego verifica estos valores en orden de prioridad. Para proporcionar un esbozo aproximado, dicho esquema podría implicar lo siguiente pasos: 1. Envío de bits de vigilancia: cada nodo secreto de Oi comparte un valor de vigilancia de un bit wi ∈{sin alerta, alerta} entre los nodos del segundo nivel para cada informe que genera. 2. Consejos anónimos: cualquier nodo oracle puede enviar un consejo anónimo α al comité de segundo nivel en la misma ronda en la que se envían los bits de vigilancia. Este consejo α es un mensaje que indica que se ha generado una alerta para el informe actual. 3. Comprobación de bits de vigilancia: el comité de segundo nivel revela la vigilancia de los nodos oracle bits en orden de prioridad. Tenga en cuenta que los nodos no deben enviar bits de vigilancia de alerta cuando no alertan: de lo contrario, el análisis de tráfico revela los bits de todos los nodos. El protocolo sí revela la no alerta bits de vigilancia de nodos con mayor prioridad que el perro guardián de alerta de mayor prioridad. Observe que lo que se revela es idéntico al de nuestro protocolo de n rondas. Las recompensas también se distribuyen de manera idéntica a ese esquema, es decir, el primer perro guardián identificado recibe los depósitos recortados de los nodos que han enviado informes incorrectos.El uso de sugerencias anónimas permite que el comité de segundo nivel permanezca no interactivo en los casos en los que no se ha generado ninguna alerta, lo que reduce la complejidad de la comunicación. en el caso común. Tenga en cuenta que cualquier organismo de control que genere una alerta tiene un incentivo económico para enviar una denuncia anónima: si no se envía ninguna denuncia, no se paga ninguna recompensa a ningún nodo. Para garantizar que el remitente Oi de un aviso anónimo α no pueda ser identificado por el adversario basado en datos de la red, el aviso anónimo se puede enviar a través de un anónimo canal, por ejemplo, a través de Tor o, más prácticamente, mediante proxy a través de un proveedor de servicios en la nube. a autenticar que la punta se origina en O, Oi puede firmar α usando una firma de anillo [39, 192]. Alternativamente, para evitar ataques de denegación de servicio no atribuibles contra el comité de segundo nivel por parte de un nodo oracle malicioso, α puede ser una credencial anónima con anonimato revocable [73]. Este protocolo, si bien es prácticamente realizable, tiene una ingeniería algo pesada. requisitos (que estamos explorando formas de reducir). Los nodos de primer nivel, por ejemplo, debe comunicarse directamente con nodos de segundo nivel, lo que requiere el mantenimiento de un directorio. La necesidad de canales anónimos y firmas de anillo se suma a la ingeniería. complejidad del esquema. Finalmente, existe un requisito especial de confianza que se analiza brevemente en la nota a continuación. Por lo tanto, también estamos explorando esquemas más simples que aún logran impacto superlineal staking, pero quizás menos que cuadrático, en el que un sobornador necesita asintóticamente recursos de al menos $n log n, por ejemplo. Algunos de los esquemas bajo consideración implica la selección aleatoria de un subconjunto estricto de nodos para actuar como perros guardianes, en cuyo caso el posible soborno se convierte en un ataque especialmente poderoso. Observación: La seguridad de este mecanismo staking de una sola ronda requiere que no se pueda explotar. canales entre oracle y nodos de segundo nivel: un requisito estándar en sistemas resistentes a la coerción, por ejemplo, votación [82, 138], y razonable en la práctica. Sin embargo, además, un nodo Oi que busque cooperar con un sobornador puede construir sus acciones secretas de tal manera que muestre al sobornador que ha codificado un determinado valor. Por ejemplo, si Oi no sabe qué nodos controla el sobornador, entonces Oi puede enviar acciones con valor 0 a todos los miembros del comité. El sobornador puede entonces verificar la situación de Oi. cumplimiento probabilísticamente. Para evitar este problema en cualquier protocolo de ronda única, requieren que Oi conozca la identidad de al menos un nodo honesto de segundo nivel. Con un protocolo interactivo en el que cada nodo de segundo nivel agrega una aleatorización factor a las acciones, lo mejor que puede hacer el sobornador es obligar a Oi a seleccionar un bit de perro guardián. 9.6 Marco de incentivos implícitos (IIF) FFO es una forma de incentivo implícito para el comportamiento correcto en la red Chainlink. eso funciona como participación explícita, es decir, depósitos, en el sentido de que ayuda a hacer cumplir la seguridad económica para la red. En otras palabras, el FFO debería incluirse como parte del depósito (efectivo) $d de un nodo en la red.La pregunta es: ¿Cómo medimos el FFO y otras formas de incentivos implícitos? dentro de la red Chainlink? El Marco de Incentivos Implícitos (MII) es un conjunto de principios y técnicas que pretendemos desarrollar con este fin. Sistemas de cadena de bloques proporcionan muchas formas de transparencia sin precedentes y los registros de alta confianza de los nodos El desempeño que crean son un trampolín para nuestra visión de cómo funcionará el IIF. Aquí esbozamos muy brevemente ideas sobre elementos clave del MII. El IIF en sí consistirá en un conjunto de factores que identificamos como importantes al evaluar incentivos implícitos, junto con mecanismos para publicar datos relevantes en una forma de alta seguridad para su consumo por algoritmos analíticos. Diferentes usuarios Chainlink pueden desean utilizar el IIF de diferentes maneras, por ejemplo, dando diferente ponderación a diferentes factores. Esperamos que surjan servicios de análisis en la comunidad que ayuden a los usuarios a aplicar el IIF. de acuerdo con sus preferencias individuales de evaluación de riesgos, y nuestro objetivo es facilitar dichos servicios garantizando su acceso a datos de respaldo oportunos y de alta seguridad, como analizamos a continuación (Sección 9.6.4). 9.6.1 Oportunidad de tarifa futura Los nodos participan en el ecosistema Chainlink para ganar una parte de las tarifas que las redes pagan por cualquiera de los diversos servicios que hemos descrito en este documento, desde Los datos ordinarios se alimentan de servicios avanzados como identidad descentralizada, secuenciación justa, y preservación de la confidencialidad DeFi. Las tarifas en la red Chainlink respaldan los costos de los operadores de nodos para, por ejemplo, ejecutar servidores, adquirir las licencias de datos necesarias y mantener un personal global para garantizar un alto tiempo de actividad. FFO denota las tarifas de servicio, netas de gastos, que un nodo puede ganar en el futuro, o perder si demuestra un comportamiento defectuoso. FFO es una forma de participación que ayuda a proteger la red. Una característica útil de FFO es el hecho de que los datos dentro de la cadena (complementados con datos fuera de la cadena) datos) establecen un registro de alta confianza del historial de un nodo, lo que permite el cálculo de FFO de manera transparente y empíricamente impulsada. Una medida simple de primer orden de FFO puede derivarse del ingreso neto promedio de una nodo durante un período de tiempo (es decir, ingresos brutos menos gastos operativos). FFO puede luego calcularse como, por ejemplo, el valor presente neto [114] de los ingresos netos futuros acumulados, en otras palabras, el valor descontado en el tiempo de todas las ganancias futuras. Sin embargo, los ingresos del nodo pueden ser volátiles, como se muestra, por ejemplo, en la Fig. 17. Más importante aún, es posible que los ingresos del nodo no sigan una distribución estacionaria. con el tiempo. En consecuencia, otros factores que planeamos explorar al estimar el FFO incluyen: • Historial de desempeño: el historial de desempeño de un operador, incluida la exactitud y puntualidad de sus informes, así como su tiempo de actividad, proporciona una base objetiva. piedra de toque para que los usuarios evalúen su confiabilidad. Por lo tanto, el historial de rendimiento proporcionar un factor crítico en la selección de los usuarios de oracle nodos (o, con la llegada de DONs, su selección de DONs). Es probable que un historial de desempeño sólido se correlacionan con altos ingresos continuos.18 18Una cuestión de investigación importante que pretendemos abordar es la detección de volúmenes de servicios falsificados.Figura 17: Ingresos obtenidos por Chainlink nodos en una única fuente de datos (ETH-USD) durante una semana representativa en marzo de 2021. • Acceso a datos: si bien oracles pueden obtener muchas formas de datos de API abiertas, Ciertas formas de datos o ciertas fuentes de alta calidad pueden estar disponibles sólo en un mediante suscripción o mediante acuerdos contractuales. Acceso privilegiado a determinados Las fuentes de datos pueden desempeñar un papel en la creación de un flujo de ingresos estable. • Participación de DON: Con la llegada de DONs, vendrán comunidades de nodos. juntos para proporcionar servicios particulares. Esperamos que muchos DONs incluyan operadores de forma selectiva, estableciendo la participación en DONs acreditados como Posición privilegiada en el mercado que ayuda a garantizar una fuente constante de ingresos. • Actividad multiplataforma: algunos operadores de nodos pueden tener presencias bien establecidas y registros de desempeño en otros contextos, por ejemplo, como PoS validators o proveedores de datos en contextos distintos de blockchain. Su desempeño en estos otros sistemas (cuando los datos sobre ellos están disponibles en una forma confiable) puede informar la evaluación. de su historial de desempeño. Del mismo modo, comportamiento defectuoso en la red Chainlink puede poner en peligro los ingresos en estos otros sistemas al ahuyentar a los usuarios, es decir, FFO puede extenderse a través de plataformas. 9.6.2 FFO especulativo Los operadores de nodos participan en la red Chainlink no solo para generar ingresos de operaciones, sino crear y posicionarse para aprovechar nuevas oportunidades para ejecutar puestos de trabajo. En otras palabras, el gasto de oracle nodos en la red también se una declaración positiva sobre el futuro de DeFi y otras aplicaciones de contratos inteligentes dominios, así como aplicaciones emergentes no blockchain de redes oracle. Los operadores de nodos hoy ganan las tarifas disponibles en las redes Chainlink existentes y simultáneamente Son vagamente análogas a las reseñas falsas en sitios de Internet, excepto que el problema es más fácil en el oracle porque tenemos un registro definitivo de si los bienes, es decir, los informes, fueron ordenados y entregados, a diferencia de, por ejemplo, productos físicos pedidos en tiendas en línea. Dicho de otra manera, en el oracle En esta configuración, el rendimiento se puede validar, incluso si la veracidad del cliente no.construir una reputación, un historial de desempeño y experiencia operativa que posicionarán ellos ventajosamente para ganar tarifas disponibles en redes futuras (contingentes, por supuesto, sobre comportamiento honesto). Los nodos que operan en el ecosistema Chainlink hoy en este sentido tienen una ventaja sobre los recién llegados al ganar las tarifas adicionales Chainlink los servicios estén disponibles. Esta ventaja se aplica a nuevos operadores, así como a empresas de tecnología con reputación establecida; por ejemplo, T-Systems, un tradicional proveedor de tecnología (subsidiaria de Deutsche Telekom) y Kraken, una gran centralizada intercambio, han establecido presencias tempranas en el ecosistema Chainlink [28, 143]. Dicha participación de oracle nodos en oportunidades futuras puede considerarse en sí misma. como una especie de FFO especulativo y, por lo tanto, constituye una forma de participación en el Chainlink red. 9.6.3 Reputación externa El IIF tal como lo hemos descrito puede operar en una red con usuarios estrictamente seudónimos. operadores, es decir, sin divulgación de las personas o entidades del mundo real involucradas. Sin embargo, un factor potencialmente importante para la selección de proveedores por parte del usuario es el reputación. Por reputación externa nos referimos a la percepción de confiabilidad asociada a identidades del mundo real, más que a seudónimos. Riesgo reputacional asociado a Las identidades del mundo real pueden verse como una forma de incentivo implícito. Vemos la reputación a través de la lente del IIF, es decir, en un sentido criptoeconómico, como un medio para establecer actividad multiplataforma que puede incorporarse a las estimaciones de FFO. El beneficio de utilizar la reputación externa como factor en las estimaciones de FFO, en contraposición al vínculo seudónimo, es que la reputación externa vincula el desempeño no sólo a un de las actividades actuales del operador, sino también de las futuras. Si, por ejemplo, una mala reputación se atribuye a una persona individual, puede manchar las futuras empresas de esa persona. Dicho de otra manera, la reputación externa puede captar una franja más amplia de FFO que los seudónimos. registros de desempeño, como el impacto de la mala conducta asociada a una persona o establecimiento Es más difícil escapar de una empresa que de la asociada a una operación seudónima. Chainlink es compatible con tecnologías de identidad descentralizadas (Sección 4.3) que puede brindar apoyo para el uso de la reputación externa en el IIF. Tales tecnologías puede validar y, por lo tanto, ayudar a garantizar la veracidad de las declaraciones del mundo real afirmadas por los operadores. identidades.19 9.6.4 Abrir análisis IIF El IIF, como hemos señalado, tiene como objetivo proporcionar datos y herramientas confiables de fuente abierta para análisis de incentivos implícitos. El objetivo es permitir que los proveedores dentro de la comunidad desarrollar análisis adaptados a las necesidades de evaluación de riesgos de diferentes partes del Chainlink base de usuarios. 19Las credenciales de identidad descentralizadas también pueden, cuando se desee, embellecer los seudónimos con credenciales validadas. información complementaria. Por ejemplo, un operador de nodo podría, en principio, utilizar dichas credenciales para demostrar que es una empresa Fortune 500, sin revelar cuál.Una cantidad considerable de datos históricos sobre los ingresos y el rendimiento de los nodos. reside en la cadena en una forma inmutable y de alta confianza. Nuestro objetivo, sin embargo, es proporcionar la datos más completos posibles, incluidos datos sobre comportamientos que sólo son visibles cadena, como informes fuera de cadena (OCR) o actividad DON. Estos datos pueden potencialmente ser voluminoso. La mejor manera de almacenarlo y asegurar su integridad, es decir, protegerlo de Creemos que la manipulación se realizará con la ayuda de DONs, utilizando técnicas discutidas en la Sección 3.3. Algunos incentivos se prestan a formas directas de medición, como staking depósitos y FFO básico. Otros, como el FFO especulativo y la reputación, son más difíciles de evaluar. medir de manera objetiva, pero creemos que las formas de datos de respaldo, incluidas crecimiento histórico del ecosistema Chainlink, métricas de reputación en redes sociales, etc., puede admitir modelos de análisis IIF incluso para estos elementos más difíciles de cuantificar. Podemos imaginar que los DON dedicados surgen específicamente para monitorear, validar y registrar datos relacionados con registros de rendimiento fuera de la cadena de nodos, así como otros datos utilizados en el IIF, como información de identidad validada. Estos DON pueden proporcionar datos IIF uniformes y de alta confianza para cualquier proveedor de análisis que preste servicio a la comunidad Chainlink. También proporcionarán un disco de oro que haga realidad las afirmaciones de los proveedores de análisis. verificable independientemente por la comunidad. 9.7 Poniéndolo todo junto: incentivos para operadores de nodos Sintetizando nuestras discusiones anteriores sobre incentivos explícitos e implícitos para los operadores de nodos proporciona una visión holística de las formas en que los operadores de nodos participan y se benefician de la red Chainlink. Como guía conceptual, podemos expresar los activos totales en juego mediante un Chainlink determinado. operador de nodo $S en una forma aproximada y estilizada como: \(S ≈\)D + \(F + \)FS + $R, donde: • $D es la suma de todas las participaciones depositadas explícitamente en todas las redes en las que el operador participa; • $F es el valor presente neto del agregado de todos los FFO en todas las redes en en el que participa el operador; • $FS es el valor actual neto del FFO especulativo del operador; y • $R es el patrimonio reputacional del operador fuera del ecosistema Chainlink que podría estar en peligro por un mal comportamiento identificado en sus nodos oracle. Si bien es en gran medida conceptual, esta igualdad aproximada muestra de manera útil que existe una multiplicidad de factores económicos que favorecen el rendimiento de alta confiabilidad de los Chainlink nodos. Todos estos factores, además de $D, están presentes en las redes Chainlink actuales.9.8 El círculo virtuoso de la seguridad económica La combinación del impacto superlineal staking con la representación de los pagos de tarifas como oportunidad de pago futura (FFO) en el IIF puede conducir a lo que llamamos el círculo virtuoso de seguridad económica en una red oracle. Esto puede verse como una especie de economía. de escala. A medida que aumenta la cantidad total asegurada por una red particular, la cantidad de La participación adicional que se necesita para agregar una cantidad fija de seguridad económica disminuye al igual que lo hace el coste medio por usuario. Por lo tanto, es más barato, en términos de tarifas, que un usuario se una una red ya existente que lograr el mismo aumento en la rentabilidad económica de la red. seguridad mediante la creación de una nueva red. Es importante destacar que la incorporación de cada nuevo usuario reduce el costo del servicio para todos los usuarios anteriores de esa red. Dada una estructura de tarifas particular (por ejemplo, una tasa de rendimiento particular sobre el monto apostado), Si las tarifas totales ganadas por una red aumentan, esto incentiva el flujo de participación en la red para asegurarla a una tasa más alta. Específicamente, si la apuesta total un nodo individual puede contener en el sistema, cuando se realicen nuevos pagos de tarifas ingresa al sistema, aumentando su FFO, el número de nodos n aumentará. Gracias a la impacto superlineal staking de nuestro diseño de sistema de incentivos, la seguridad económica de el sistema crecerá más rápido que n, por ejemplo, como n2 en el mecanismo que esbozamos en la sección 9.4. Como resultado, el costo promedio de la seguridad económica (es decir, la cantidad de participación que contribuye) un dólar de seguridad económica—caerá. Por tanto, la red puede cobrar a sus usuarios. tarifas más bajas. Suponiendo que la demanda de servicios oracle es elástica (ver, por ejemplo, [31] para una breve explicación), la demanda aumentará, generando tarifas adicionales y FFO. Ilustramos este punto con el siguiente ejemplo. Ejemplo 5. Desde la seguridad económica de una red oracle con nuestro incentivo esquema es \(dn2 for stake \)dn, la seguridad económica aportada por un dólar de participación es n y, por lo tanto, el costo promedio por dólar de la seguridad económica, es decir, la cantidad de participación contribuir a un dólar de seguridad económica es 1/n. Considere una red en la que los incentivos económicos consisten enteramente en FFO, limitados en \(d ≤\)10K por nodo. Supongamos que la red tiene n = 3 nodos. Entonces el costo promedio por dólar de seguridad económica es de aproximadamente 0,33 dólares. Supongamos que el FFO total de la red supera \(30K (e.g., to \)31K). dado el límite de FFO por nodo, la red crece a (al menos) n = 4. Ahora el costo promedio por dólar de seguridad económica cae a alrededor de 0,25 dólares. Ilustramos esquemáticamente el ciclo virtuoso completo de la seguridad económica en las redes oracle en la Fig. 18. Destacamos que el círculo virtuoso de la seguridad económica se deriva del efecto de usuarios que ponen en común sus tarifas. Es su FFO colectivo el que trabaja a favor de grandes tamaños de red y, por tanto, una mayor seguridad colectiva. También observamos que el círculo virtuoso de seguridad económica favorece que DONs alcancen la sostenibilidad financiera. una vez creados, los DONs que abordan las necesidades del usuario deben crecer hasta y más allá del punto en el que Los ingresos por tarifas superan los costos operativos para oracle nodos.

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

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

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

Figura 18: Esquema del círculo virtuoso de Chainlink staking. Un aumento en la tarifa de usuario pagos a una red oracle 1⃝hace que crezca, lo que lleva al crecimiento de su economía seguridad 2⃝. Este crecimiento superlineal logra economías de escala en redes Chainlink 3⃝. Específicamente, significa una reducción en el costo promedio de la seguridad económica, es decir, la seguridad económica por dólar que surge del pago de tarifas u otras fuentes de participación aumenta. Los costos más bajos, transferidos a los usuarios, estimulan una mayor demanda de oracle servicios 4⃝. 9.9 Factores adicionales que impulsan el crecimiento de la red A medida que el ecosistema Chainlink continúa expandiéndose, creemos que su atractivo para los usuarios y su importancia como infraestructura para la economía blockchain se acelerará. El valor proporcionado por las redes oracle es superlineal, lo que significa que crece más rápidoque el tamaño de las propias redes. Este crecimiento en valor se deriva tanto de economías de escala (mayor eficiencia de costos por usuario a medida que aumentan los volúmenes de servicios) y Efectos de red: un aumento de la utilidad de la red a medida que los usuarios adoptan DONs más ampliamente. A medida que los smart contract__ existentes continúan viendo más valor asegurado y completamente nuevo smart contract aplicaciones son posibles gracias a servicios más descentralizados, el total El uso y las tarifas agregadas pagadas a DONs deberían aumentar. Conjuntos crecientes de tarifas en a su vez traducirse en medios e incentivos para crear servicios aún más descentralizados, resultando en un círculo virtuoso. Este círculo virtuoso resuelve el problema crítico del huevo y la gallina. Problema en el ecosistema híbrido smart contract: características innovadoras smart contract a menudo requieren servicios descentralizados que aún no existen (por ejemplo, nuevos mercados DeFi a menudo requieren nuevas fuentes de datos) pero necesitan suficiente demanda económica para existir. La combinación de tarifas por parte de varios smart contracts para DONs existentes señalará la demanda de servicios descentralizados adicionales de una base de usuarios en crecimiento, dando lugar a su creación por DONs y una habilitación continua de smart contracts híbridos nuevos y variados. En resumen, creemos que el crecimiento de la seguridad de la red impulsado por principios virtuosos ciclos en el mecanismo Chainlink staking ejemplifica patrones más amplios de crecimiento que la red Chainlink puede ayudar a generar una economía en cadena para descentralizados servicios.

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.

Conclusión

En este artículo, hemos expuesto una visión para la evolución de Chainlink. El tema principal En esta visión está la capacidad de las redes oracle para proporcionar una gama mucho más amplia de servicios para smart contracts que la mera entrega de datos. Utilizando DONs como base para los servicios descentralizados del futuro, Chainlink tendrá como objetivo proporcionar una funcionalidad oracle eficaz y de confidencialidad mejorada. Sus redes oracle ofrecerán una fuerte minimización de la confianza. a través de una combinación de mecanismos criptoeconómicos basados en principios como staking y barandillas cuidadosamente concebidas y aplicación del nivel de servicio en cadenas principales dependientes. DONs también ayudará a los sistemas de capa 2 a aplicar políticas de pedidos flexibles y justas en las transacciones, así como a reducir los costos de gas para las transacciones enrutadas por mempool. En conjunto, Todas estas capacidades conducen en la dirección de una tecnología híbrida inteligente, segura y ricamente funcional. contratos. La flexibilidad de DONs mejorará los servicios Chainlink existentes y dará lugar a muchas funciones y aplicaciones smart contract adicionales. Entre estos se encuentran conexión a una amplia variedad de sistemas fuera de la cadena, creación de identidad descentralizada desde datos existentes, canales prioritarios para ayudar a garantizar la entrega oportuna de infraestructura crítica transacciones e instrumentos DeFi que preservan la confidencialidad. La visión que hemos expuesto aquí es ambiciosa. En el corto plazo buscamos potenciar contratos híbridos para lograr objetivos más allá del alcance de smart contracts hoy, mientras A largo plazo, nuestro objetivo es realizar una metacapa descentralizada. Felizmente podemos dibujar sobre nuevas herramientas e ideas, que van desde algoritmos de consenso hasta pruebas de conocimiento cero sistemas—que la comunidad está desarrollando como fruto de una investigación en rápida evolución.

De manera similar, esperamos priorizar la implementación de las ideas contenidas en este documento en respuesta a las necesidades de la comunidad de usuarios de Chainlink. Esperamos con ansias la siguiente etapa. en nuestra búsqueda para empoderar a smart contracts a través de la conectividad universal y establecer tecnologías descentralizadas como columna vertebral de la próxima generación de finanzas del mundo y sistemas legales. Agradecimientos Gracias a Julian Alterini y Shawn Lee por representar las figuras en este artículo.