Chainlink: Mạng Oracle phi tập trung
Resumo
Neste whitepaper, articulamos uma visão para a evolução do Chainlink além de sua concepção inicial no whitepaper Chainlink original. Nós prevemos um papel cada vez mais expansivo para redes oracle, no qual elas complementam e aprimoram blockchains existentes e novos, fornecendo serviços rápidos, confiáveis e conectividade universal que preserva a confidencialidade e computação fora da cadeia para smart contracts. A base do nosso plano é o que chamamos de Redes Oracle Descentralizadas, ou DONs para abreviar. Um DON é uma rede mantida por um comitê de Chainlink nós. Ele suporta qualquer uma de uma gama ilimitada de funções oracle escolhidas para implantação pelo comitê. Um DON atua, portanto, como uma poderosa camada de abstração, oferecendo interfaces para smart contracts para extensos recursos off-chain e altamente recursos de computação off-chain eficientes, porém descentralizados, dentro do próprio DON. Tendo DONs como trampolim, Chainlink planeja focar em avanços em sete áreas principais: • smart contracts híbridos: oferecendo uma estrutura geral e poderosa para aumentar os recursos smart contract existentes, compondo com segurança na cadeia e recursos de computação fora da cadeia no que chamamos de smart contracts híbridos. • Abstraindo a complexidade: apresentando aos desenvolvedores e usuários soluções simples funcionalidade elimina a necessidade de familiaridade com processos subjacentes complexos protocolos e limites do sistema. • Dimensionamento: garantir que os serviços oracle atinjam as latências e taxas de transferência exigido por sistemas descentralizados de alto desempenho. • Confidencialidade: Habilitando sistemas de próxima geração que combinam blockchains’ transparência inata com novas e fortes proteções de confidencialidade para informações confidenciais dados. • Justiça de pedidos para transações: apoiando o sequenciamento de transações de várias maneiras que sejam justos para os usuários finais e evitem ataques front-running e outros ataques por bots e mineradores exploradores. • Minimização da confiança: criação de uma camada de suporte altamente confiável para smart contracts e outros sistemas dependentes de oracle por meio de descentralização, forte ancoragem em blockchains de alta segurança, criptografia técnicas e garantias criptoeconômicas. • Segurança (criptoeconômica) baseada em incentivos: projetar rigorosamente e implantar mecanismos robustos que garantam que os nós em DONs tenham fortes incentivos econômicos para se comportarem de maneira confiável e correta, mesmo diante de adversários com bons recursos. Apresentamos inovações preliminares e contínuas da comunidade Chainlink em cada uma dessas áreas, fornecendo uma imagem da expansão e cada vez mais recursos poderosos planejados para a rede Chainlink.
Tóm tắt
Trong báo cáo chính thức này, chúng tôi trình bày rõ tầm nhìn về sự phát triển của Chainlink ngoài quan niệm ban đầu trong báo cáo chính thức Chainlink ban đầu. Chúng tôi thấy trước vai trò ngày càng mở rộng của oracle mạng, một vai trò trong đó chúng bổ sung và nâng cao blockchain hiện có và mới bằng cách cung cấp tốc độ nhanh, đáng tin cậy và kết nối phổ quát và tính toán ngoài chuỗi đảm bảo tính bảo mật cho smart contracts. Nền tảng kế hoạch của chúng tôi là cái mà chúng tôi gọi là Mạng Oracle phi tập trung, hoặc Viết tắt là DONs. DON là mạng được duy trì bởi ủy ban Chainlink nút. Nó hỗ trợ bất kỳ chức năng oracle nào được chọn cho triển khai của ủy ban. Do đó DON hoạt động như một lớp trừu tượng mạnh mẽ, cung cấp giao diện cho smart contract cho các tài nguyên ngoài chuỗi mở rộng và có chất lượng cao tài nguyên điện toán ngoài chuỗi hiệu quả nhưng được phân cấp trong chính DON. Với DON làm bàn đạp, Chainlink có kế hoạch tập trung vào những tiến bộ trong bảy lĩnh vực chính: • smart contract kết hợp: Cung cấp một khuôn khổ chung, mạnh mẽ để tăng cường các khả năng smart contract hiện có bằng cách soạn thảo an toàn trên chuỗi và tài nguyên điện toán ngoài chuỗi thành cái mà chúng tôi gọi là smart contract lai. • Loại bỏ sự phức tạp: Trình bày cho các nhà phát triển và người dùng những cách đơn giản chức năng loại bỏ sự cần thiết phải làm quen với cơ bản phức tạp các giao thức và ranh giới hệ thống. • Mở rộng quy mô: Đảm bảo rằng các dịch vụ oracle đạt được độ trễ và thông lượng được yêu cầu bởi các hệ thống phi tập trung hiệu suất cao. • Tính bảo mật: Kích hoạt các hệ thống thế hệ tiếp theo kết hợp blockchains' tính minh bạch vốn có với các biện pháp bảo vệ bí mật mới mạnh mẽ cho các thông tin nhạy cảm dữ liệu. • Tính công bằng trong giao dịch: Hỗ trợ sắp xếp trình tự giao dịch theo cách công bằng cho người dùng cuối và ngăn chặn các cuộc tấn công chạy trước và các cuộc tấn công khác bằng cách bot và thợ mỏ bóc lột. • Giảm thiểu sự tin cậy: Tạo ra một lớp hỗ trợ có độ tin cậy cao cho smart contracts và các hệ thống phụ thuộc oracle khác bằng phương pháp phân cấp, neo chặt ở mức độ bảo mật cao blockchains, mật mã kỹ thuật và đảm bảo kinh tế mật mã. • Bảo mật dựa trên khuyến khích (kinh tế tiền điện tử): Các cơ chế thiết kế nghiêm ngặt và triển khai mạnh mẽ nhằm đảm bảo các nút trong DON có động lực kinh tế mạnh mẽ để hành xử một cách đáng tin cậy và chính xác, ngay cả khi đối mặt với các đối thủ có nguồn lực tốt. Chúng tôi giới thiệu những cải tiến sơ bộ và đang diễn ra của cộng đồng Chainlink trong mỗi lĩnh vực này, cung cấp một bức tranh về sự mở rộng và ngày càng tăng các khả năng mạnh mẽ được lên kế hoạch cho mạng Chainlink.
Introdução


Blockchain oracles são frequentemente vistos hoje como serviços descentralizados com um objetivo: para encaminhar dados de recursos fora da cadeia para blockchains. É um passo curto, porém, desde o encaminhamento de dados até a computação neles, armazenamento ou transmissão bidirecional. Esta observação justifica uma noção muito mais ampla da funcionalidade de oracles. Então também atendem aos crescentes requisitos de serviço de smart contracts e cada vez mais multifacetados tecnologias que dependem de redes oracle. Resumindo, um oracle pode e precisará ser uma interface de uso geral, bidirecional e habilitada para computação entre sistemas onchain e off-chain. O papel dos oráculos no ecossistema blockchain é melhorar o desempenho, funcionalidade e interoperabilidade de smart contracts para que eles possam trazer novos modelos de confiança e transparência para uma multiplicidade de indústrias. Esta transformação ocorrerá através da ampliação do uso de smart contracts híbridos, que fundem Propriedades especiais de blockchains com os recursos exclusivos de sistemas off-chain, como oracle redes e, assim, alcançar muito maior alcance e poder do que os sistemas on-chain isoladamente. Neste whitepaper, articulamos uma visão para o que chamamos de Chainlink 2.0, uma evolução de Chainlink além de sua concepção inicial no whitepaper Chainlink original [98]. Prevemos um papel cada vez mais expansivo para as redes oracle, em que eles complementam e aprimoram blockchains existentes e novos, fornecendo conectividade e computação universais rápidas, confiáveis e que preservam a confidencialidade para sistemas híbridos. smart contracts. Acreditamos que as redes oracle evoluirão até se tornarem serviços públicos para exportar dados de grau blockchain de alta integridade para sistemas além do blockchain ecossistema. Hoje, os nós Chainlink executados por um conjunto diversificado de entidades se reúnem em redes oracle para retransmitir dados para smart contracts no que é conhecido como relatórios. Podemos ver tal oracle nós como um comitê semelhante ao de um consenso clássico blockchain [72], mas com o objetivo de oferecer suporte a blockchains existentes, em vez de fornecer funcionalidade independente. Com funções aleatórias verificáveis (VRF) e relatórios fora da cadeia (OCR), Chainlink já está evoluindo em direção a uma estrutura e infraestrutura de uso geral para fornecer os recursos computacionais que smart contracts exigem para funcionalidade avançada. A base do nosso plano para Chainlink 2.0 é o que chamamos de Oracle Descentralizado Redes, ou DONs, para abreviar. Desde que introduzimos o termo “rede oracle” no white paper original Chainlink [98], oracles desenvolveram funcionalidades cada vez mais ricas e amplitude de aplicação. Neste artigo, oferecemos uma nova definição do termo de acordo com para a nossa visão futura para o ecossistema Chainlink. Nesta visão, um DON é uma rede mantido por um comitê de nós Chainlink. Enraizado num protocolo de consenso, suporta qualquer uma de uma gama ilimitada de funções oracle escolhidas para implantação pelo comitê. Um DON atua, portanto, como uma camada de abstração blockchain, fornecendo interfaces para recursos fora da cadeia para smart contracts e outros sistemas. Também fornece acesso a recursos de computação off-chain altamente eficientes, porém descentralizados. Em geral, a DON suporta operações em uma cadeia principal. Seu objetivo é permitir um acesso seguro e flexi-híbridos smart contracts, que combinam computação on-chain e off-chain com conexão com recursos externos. Ressaltamos que mesmo com a utilização de comitês em DONs, o próprio Chainlink permanece inerentemente sem permissão. DONs atuam como a base de um sistema sem permissão estrutura na qual os nós podem se unir para implementar redes oracle personalizadas com seus próprios regimes para inclusão de nós, que podem ser com ou sem permissão. Com DONs como base, planejamos focar em Chainlink 2.0 em avanços em sete áreas principais: smart contracts híbridos, abstração de complexidade, escalabilidade, confidencialidade, justiça de ordem para transações, minimização de confiança e segurança baseada em incentivos (criptoeconômica). Na introdução deste artigo, apresentamos uma visão geral da Descentralização Oracle Networks na Seção 1.1 e, em seguida, nossas sete principais áreas de inovação na Seção 1.2. Descrevemos a organização do restante deste artigo na Seção 1.3. 1.1 Redes Oracle Descentralizadas As Oracle Networks descentralizadas são projetadas para aprimorar e ampliar os recursos de smart contracts em um alvo blockchain ou cadeia principal por meio de funções que são não está disponível nativamente. Eles fazem isso fornecendo os três recursos básicos encontrados em sistemas de computação: rede, armazenamento e computação. Um DON visa oferecer esses recursos com fortes propriedades de confidencialidade, integridade e disponibilidade,1 como bem como a responsabilização. DONs são formados por comitês de nós oracle que cooperam para cumprir um determinado emprego ou optar por estabelecer um relacionamento duradouro para fornecer serviços persistentes aos clientes. DONs são projetados de maneira agnóstica blockchain. Eles prometem servir como uma ferramenta poderosa e flexível para desenvolvedores de aplicativos criarem suporte fora da cadeia para seus smart contracts em qualquer cadeia principal suportada. Dois tipos de funcionalidades realizam os recursos de um DON: executáveis e adaptadores. Executáveis são programas executados continuamente e de forma descentralizada no DON. Embora não armazenem diretamente ativos da cadeia principal, eles apresentam benefícios importantes, incluindo alto desempenho e a capacidade de realizar operações confidenciais. computação. Os executáveis são executados de forma autônoma em um DON e executam tarefas determinísticas operações. Eles trabalham em conjunto com adaptadores que vinculam o DON a recursos externos e pode ser chamado por executáveis. Adaptadores, como os imaginamos para DONs, são um generalização dos adaptadores externos em Chainlink hoje. Embora os adaptadores existentes normalmente buscam dados apenas de fontes de dados, os adaptadores podem operar bidirecionalmente; em DONs, eles também podem aproveitar a computação conjunta por nós DON para alcançar recursos adicionais, como criptografia de relatórios para consumo com preservação de privacidade por um executável. Para fornecer uma ideia da operação básica de um DON, a Fig. 1 mostra conceitualmente como um DON pode ser usado para enviar relatórios para um blockchain e, assim, obter a funcionalidade oracle tradicional e existente. DONs podem fornecer muitos recursos adicionais, porém, além 1A “tríade da CIA” de segurança da informação [123, p. 26, §2.3.5].Redes existentes de Chainlink. Por exemplo, dentro da estrutura geral da Fig. 1, o executável poderia registrar dados de preços de ativos buscados no DON, usando esses dados para calcular, por exemplo, uma média final para seus relatórios. Figura 1: Figura conceitual mostrando como exemplo como uma Rede Oracle Descentralizada pode realizar a funcionalidade básica oracle, ou seja, retransmitir dados fora da cadeia para um contrato. Um executável usa adaptadores para buscar dados fora da cadeia, nos quais ele computa, enviando saída sobre outro adaptador para um destino blockchain. (Os adaptadores são iniciados pelo código no DON, representado por pequenas caixas azuis; setas mostram a direção do fluxo de dados para este exemplo específico.) O executável também pode ler e gravar em DON local armazenamento para manter o estado e/ou se comunicar com outros executáveis. Rede flexível, computação e armazenamento em DONs, todos representados aqui, permitem uma série de novidades aplicações. Um grande benefício dos DONs é sua capacidade de inicializar novos serviços blockchain. DONs são um veículo pelo qual as redes oracle existentes podem rapidamente suportar aplicações de serviço isso exigiria hoje a criação de redes construídas especificamente. Damos uma série de exemplos de tais aplicações na Seção 4. Na Seção 3, fornecemos mais detalhes sobre DONs, descrevendo suas capacidades em termos da interface que apresentam aos desenvolvedores e usuários. 1.2 Sete objetivos principais de design Aqui revisamos brevemente os sete focos principais enumerados acima para a evolução da Chainlink, a saber:smart contracts híbridos: Central para nossa visão para Chainlink é a ideia de segurança combinando componentes on-chain e off-chain em smart contracts. Referimo-nos a contratos concretizando essa ideia como smart contracts híbridos ou contratos híbridos.2 Blockchains são e continuarão a desempenhar dois papéis críticos no serviço descentralizado ecossistemas: ambos são os locais onde a propriedade de criptomoedas é representada e âncoras robustas para serviços descentralizados. Os contratos inteligentes devem, portanto, ser representados ou executados em cadeia, mas as suas capacidades em cadeia são severamente limitadas. Puramente o código de contrato na cadeia é lento, caro e insular, incapaz de se beneficiar do mundo real dados e uma variedade de funcionalidades que são inerentemente inatingíveis em cadeia, incluindo várias formas de computação confidencial, geração de (pseudo) aleatoriedade segura contra manipulação de mineradores/validator, etc. Para que smart contracts realizem todo o seu potencial, portanto, são necessários smart contracts a ser arquitetado com duas partes: uma parte na cadeia (que normalmente denotamos por SC) e uma parte off-chain, um executável rodando em um DON (que normalmente denotamos por executivo). O objetivo é alcançar uma composição segura de funcionalidade on-chain com o multiplicidade de serviços fora da cadeia que DONs pretendem fornecer. Juntas, as duas partes elaborar um contrato híbrido. Apresentamos a ideia conceitualmente na Fig. 2. Já hoje, Chainlink serviços3 como feeds de dados e VRFs estão possibilitando smart contract aplicações, variando de DeFi a NFTs gerados de forma justa e seguros descentralizados, como primeiros passos em direção a uma estrutura mais geral. Como serviços Chainlink expandir e ter mais desempenho de acordo com nossa visão neste whitepaper, assim como será o poder dos sistemas smart contract em todos os blockchains. Nossos outros seis focos principais neste whitepaper podem ser vistos como atuação no serviço do primeiro, abrangendo um dos contratos híbridos. Esses focos envolvem a remoção de visíveis complexidade de contratos híbridos, criando serviços adicionais fora da cadeia que permitem o construção de contratos híbridos cada vez mais capazes e, no caso da minimização da confiança, reforçando as propriedades de segurança alcançadas pelos contratos híbridos. Deixamos a ideia de contratos híbridos implícitos em grande parte do artigo, mas qualquer combinação de A lógica MAINCHAIN com DON pode ser vista como um contrato híbrido. Abstraindo a complexidade: DONs são projetados para fazer uso de recursos descentralizados sistemas fáceis para desenvolvedores e usuários, abstraindo o maquinário muitas vezes complexo por trás da poderosa e flexível gama de serviços de DONs. Serviços Chainlink existentes já possui esse recurso. Por exemplo, os feeds de dados em Chainlink hoje apresentam interfaces onchain que não exigem que os desenvolvedores se preocupem com detalhes de nível de protocolo, como os meios pelos quais o OCR impõe relatórios de consenso entre um 2A ideia de composição de contrato on-chain/off-chain surgiu anteriormente em vários países restritos. formulários, por exemplo, sistemas de camada 2, blockchains [80] baseados em TEE, etc. Nosso objetivo é apoiar e generalizar essas abordagens e garantir que elas possam abranger o acesso a dados fora da cadeia e outras oracle chaves serviços. 3Chainlink serviços compreendem uma variedade de serviços e funcionalidades descentralizados disponíveis através a rede. Eles são oferecidos por numerosos operadores de nós compostos em várias redes oracle em todo o ecossistema.Figura 2: Figura conceitual que descreve a composição do contrato on-chain/off-chain. Um híbrido smart contract 3⃝consiste em dois componentes complementares: um on-chain componente SC 1⃝, residente em um blockchain, e um componente off-chain exec 2⃝que é executado em um DON. O DON também serve como uma ponte entre os dois componentes como conectar o contrato híbrido com recursos fora da cadeia, como serviços da web, outros blockchains, armazenamento descentralizado, etc. conjunto descentralizado de nós. DONs vão um passo além no sentido de que expandem o gama de serviços para os quais Chainlink pode oferecer aos desenvolvedores uma camada de abstração com acompanhando interfaces simplificadas para serviços de alto nível. Apresentamos vários exemplos de aplicação na Seção 4 que destacam essa abordagem. Imaginamos empresas, por exemplo, usando DONs como uma forma de middleware seguro para conectar seus sistemas legados a blockchains. (Veja a Seção 4.2.) Este uso de DONs abstrai a complexidade da dinâmica geral de blockchain (taxas, reorganizações, etc.). Também abstrai os recursos de blockchains específicos, permitindo assim que as empresas conectem seus sistemas existentes a uma gama cada vez maior de sistemas blockchain sem necessidade de conhecimentos especializados nestes sistemas ou, mais genericamente, no desenvolvimento de sistemas descentralizados. Em última análise, a nossa ambição é aumentar o grau de abstração alcançado por Chainlink a ponto de implementar o que chamamos de metacamada descentralizada. Essa camada abstrairia a distinção on-chain/off-chain para todas as classes de desenvolvedores e usuários de DApps, permitindo a criação e uso contínuo de serviços descentralizados.Para simplificar o processo de desenvolvimento, os desenvolvedores poderiam especificar a funcionalidade DApp na metacamada como uma aplicação virtual em um modelo de máquina unificado. Eles poderiam em seguida, use um compilador de metacamada descentralizado para instanciar o DApp automaticamente como um conjunto de funcionalidades descentralizadas interoperacionais abrangendo blockchains, DONs e serviços externos. (Um desses serviços externos poderia ser um sistema empresarial, tornando a metacamada útil para aplicações que envolvem sistemas empresariais legados.) Tal a compilação é semelhante à forma como os compiladores modernos e os kits de desenvolvimento de software (SDKs) apoiar programadores generalistas no uso de todo o potencial de hardware heterogêneo arquiteturas que consistem em uma CPU de uso geral e hardware especializado como GPUs, aceleradores de aprendizado de máquina ou enclaves confiáveis. A Fig. 3 apresenta esta ideia a nível conceptual. Os smart contracts híbridos são um primeiro passo no caminho para esta visão e para um conceito que chamamos de metacontratos. Metacontratos são aplicações codificadas de forma descentralizada metalayer e abrange implicitamente a lógica on-chain (smart contracts), bem como a computação off-chain e a conectividade entre vários blockchains e off-chain existentes serviços. Dada a necessidade de suporte a linguagens e compiladores, novos modelos de segurança e harmonização conceitual e técnica de tecnologias díspares, no entanto, a realização de uma verdadeira metacamada descentralizada é uma meta ambiciosa à qual aspiramos há muito tempo. horizonte de tempo. No entanto, é um modelo ideal útil para se ter em mente durante a leitura este artigo, não detalhado aqui, mas algo em que planejamos focar em nosso trabalho futuro sobre Chainlink. Dimensionamento: Um objetivo de importância preeminente em nossos projetos em evolução é permitir que o Rede Chainlink para atender às crescentes necessidades de expansão do ecossistema blockchain. Com o congestionamento da rede se tornando um problema recorrente em redes sem permissão existentes blockchains [86], designs blockchain novos e com melhor desempenho estão entrando em uso, por exemplo, [103, 120, 203], bem como tecnologias complementares de escalonamento de camada 2, por exemplo, [5, 12, 121, 141, 169, 186, 187]. Os serviços Oracle devem atingir latências e taxas de transferência que atendem às demandas de desempenho desses sistemas, ao mesmo tempo que minimizam as taxas na rede (por exemplo, custos do gás) tanto para os operadores contratuais como para os utilizadores comuns. Com DONs, Chainlink a funcionalidade visa ir além e oferecer desempenho alto o suficiente para sistemas puramente baseados na web. DONs derivam grande parte de seu ganho de desempenho do uso de protocolos de consenso rápidos, baseados em comitês ou sem permissão, que eles combinam com os blockchains eles apoiam. Esperamos que muitos DONs com configurações diferentes sejam executados em paralelo; diferentes DApps e usuários podem navegar pelas compensações nas escolhas de consenso subjacentes de acordo com seus requisitos de aplicação. DONs podem ser vistos, na verdade, como tecnologias de camada 2. Esperamos que entre outros serviços, DONs suportarão o Transaction Execution Framework (TEF), que facilita a integração eficiente de DONs e, portanto, oracles com outros de alto desempenho sistemas de camada 2 - por exemplo, rollups, sistemas que agrupam transações off-chain para alcançar melhorias de desempenho. Apresentamos o TEF na Seção 6.

Figura 3: Figura conceitual mostrando a realização ideal de uma metacamada descentralizada. Para facilidade de desenvolvimento, um desenvolvedor especifica um DApp, destacado em rosa, como um virtual aplicação em um modelo de máquina unificado. Um compilador descentralizado de metacamada gera automaticamente funcionalidades de interoperabilidade correspondentes: smart contracts (denotado por SC), lógica (denotada por exec) em DONs, adaptadores conectados a serviços externos de destino e assim por diante, conforme indicado em destaque amarelo. A Figura 4 mostra conceitualmente como DONs melhoram o dimensionamento de blockchain (smart contract) concentrando o processamento de transações e relatórios oracle fora da cadeia, em vez de em cadeia. Esta mudança no locus principal de computação reduz a latência da transação e taxas e, ao mesmo tempo, aumentar o rendimento das transações. Confidencialidade: Blockchains fornecem transparência sem precedentes para smart contracts e para as aplicações que eles realizam. Mas existe uma tensão básica entre transparência e confidencialidade. Hoje, por exemplo, as transações de câmbio descentralizadas dos usuáriosFigura 4: Figura conceitual mostrando como as Redes Oracle Descentralizadas melhoram o dimensionamento de blockchains habilitados para blockchain. Figura A ⃝mostra um oracle convencional arquitetura. As transações são enviadas diretamente para blockchain, assim como os relatórios oracle. Assim o blockchain, destacado em amarelo, é o principal locus de processamento das transações. A Figura B⃝mostra o uso de um DON para apoiar contratos no blockchain. Um DON executável processa transações junto com dados de sistemas externos e encaminha resultados - por exemplo, transações agrupadas ou alterações no estado do contrato resultantes dos efeitos das transações - para blockchain. O DON, destacado em amarelo, é assim o principal locus para processamento de transações. as ações são registradas em cadeia, facilitando o monitoramento do comportamento da bolsa, mas também tornar as transações financeiras dos usuários publicamente visíveis. Da mesma forma, os dados transmitidos para sistemas inteligentes os contratos permanecem em cadeia. Isto torna esses dados convenientemente auditáveis, mas funciona como um desincentivo para provedores de dados que desejam fornecer smart contracts informações confidenciais ou dados proprietários. Acreditamos que as redes oracle desempenharão um papel fundamental na catalisação da próxima geração sistemas que combinam a transparência inata de blockchains com novas proteções de confidencialidade. Neste artigo, mostramos como eles farão isso usando três abordagens principais: • Adaptadores que preservam a confidencialidade: duas tecnologias com implantação planejada nas redes de Chainlink, DECO [234] e Town Crier [233], habilite os nós oracle para recuperar dados de sistemas fora da cadeia de forma a proteger a privacidade e os dados do usuário confidencialidade. Eles desempenharão um papel fundamental no projeto de adaptadores para DONs. (Consulte a Seção 3.6.2 para obter detalhes sobre essas duas tecnologias.) • Computação confidencial: DONs podem simplesmente ocultar sua computação de blockchains confiáveis. Usando computação multipartidária segura e/ou ambientes de execução confiáveis, uma confidencialidade mais forte também é possível em que nós DON computar dados sobre os quais eles próprios não têm visibilidade.


• Suporte para sistemas confidenciais de camada 2: O TEF foi projetado para suportar uma variedade de sistemas de camada 2, muitos dos quais usam provas de conhecimento zero para fornecer diversas formas de confidencialidade da transação. Discutimos essas abordagens na Seção 3 (com detalhes adicionais na Seção 6, Apêndice B.1 e Apêndice B.2). A Figura 5 apresenta uma visão conceitual de como os dados confidenciais podem fluir de fontes externas para um smart contract por meio de adaptadores que preservam a confidencialidade e cálculo confidencial em um DON. Figura 5: Diagrama conceitual de operações de preservação de confidencialidade em um DON em dados sensíveis (destacados em amarelo). Dados de origem confidenciais (círculos pretos) na web servidores é extraído para DON usando adaptadores de preservação de confidencialidade (linhas azuis com setas duplas). O DON recebe dados derivados (círculos vazios) desses adaptadores— o resultado da aplicação de uma função ou, por exemplo, do compartilhamento de segredo, à fonte confidencial dados. Um executável em DON pode aplicar computação confidencial a dados derivados para construir um relatório (círculo duplo), que envia por meio de um adaptador para o blockchain. Acreditamos que ferramentas poderosas para lidar com dados confidenciais abrirão todo um gama de aplicações. Entre eles estão o financiamento privado descentralizado (e centralizado), a identidade descentralizada, os empréstimos em cadeia baseados em crédito e empréstimos mais eficientes e protocolos fáceis de conhecer seu cliente e de credenciamento, conforme discutimos na Seção 4. Justiça de ordem para transações: Os designs blockchain de hoje têm um pouco de sujeira segredo aberto: Eles são efêmeros centralizados. Mineiros e validators podem solicitar trans-ações como quiserem. A ordem de transação também pode ser manipulada pelos usuários como em função das taxas de rede que pagam (por exemplo, preços do gás em Ethereum) e para alguns extensão, aproveitando conexões de rede rápidas. Tal manipulação pode, por exemplo, assumir a forma de front-running, em que um ator estratégico como uma mineradora observa a transação de um usuário e insere sua própria transação exploratória em uma transação anterior posição no mesmo bloco - roubando efetivamente dinheiro do usuário, aproveitando o conhecimento prévio da transação do usuário. Por exemplo, um bot pode fazer um pedido de compra antes de um usuário. Poderá então tirar partido do aumento dos preços dos activos induzido pela comércio do usuário. Front-running por alguns bots que prejudica usuários comuns – análogo ao de alta frequência negociação em Wall Street - já é predominante e bem documentado [90], assim como estão relacionados ataques como back-running [159] e simulação de transação automatizada [195]. Propostas para sistematizar a exploração de pedidos por mineradores surgiram recentemente [110]. Tecnologias de camada 2, como rollups, não resolvem o problema, apenas recentralizam encomenda, colocando-o nas mãos da entidade que cria um rollup. Um dos nossos objetivos é introduzir em Chainlink um serviço chamado Fair Sequencing Serviços (FSS) [137]. O FSS ajuda os designers de smart contract a garantir pedidos justos para seus transações e evitar ataques front-running, back-running e ataques relacionados às transações do usuário, bem como outros tipos de transações, como transmissão de relatórios oracle. FSS permite que um DON implemente ideias como a noção rigorosa e temporal de ordem e justiça introduzida em [144]. Como benefício incidental, o FSS também pode reduzir a rede dos usuários. taxas (por exemplo, custos de gás). Resumidamente, no FSS, as transações passam pelo DON, em vez de serem propagadas diretamente para um destino smart contract. O DON ordena as transações e depois encaminha -los ao contrato. Figura 6: Exemplo de como o FSS é benéfico. Figura A ⃝mostra como um mineiro, explorando seu poder centralizado para ordenar transações, pode trocar um par de transações: transação 1⃝ chega antes de 2⃝, mas o mineiro o sequencia depois de 2⃝. Em contraste, a Fig. B⃝mostra como um DON descentraliza o processo de pedido entre os nós DON. Se um quórum de nós honestos recebem 1⃝antes de 2⃝, o FSS faz com que 1⃝ apareça antes de 2⃝na cadeia— evitando o reordenamento dos mineradores anexando números de sequência executáveis ao contrato. A Figura 6 compara a mineração padrão com o FSS. Mostra como na mineração padrão,o processo de pedido de transação é centralizado com o minerador e, portanto, sujeito a manipulação, como reordenar um par de transações em relação à sua chegada vezes. Em contraste, no FSS, o processo é descentralizado entre os nós DON. Supondo um quórum de nós honestos, o FSS ajuda a aplicar políticas como ordenação temporal de transações, reduzindo oportunidades de manipulação por mineradores e outras entidades. Além disso, como os usuários não precisam competir por pedidos preferenciais com base no preço do gás, eles podem pagar preços de gás relativamente baixos (enquanto as transações do DON podem ser agrupadas para economia de gás). Minimização da confiança: Nosso objetivo geral no projeto de DONs é facilitar um altamente camada confiável de suporte para smart contracts e outros sistemas dependentes de oracle por meio de descentralização, ferramentas criptográficas e garantias criptoeconômicas. O próprio DON é descentralizado e os usuários podem escolher entre qualquer DON disponível que suporta a cadeia principal na qual desejam operar ou gerar DONs adicionais com comitês de nós em que confiam. Para alguns aplicativos, no entanto, especialmente smart contracts, os usuários de Chainlink podem favorecer um modelo de confiança que trate a cadeia principal apoiada por um DON como mais confiável do que o próprio DON. Para esses usuários, já temos ou planejamos incorporar ao arquitetura da rede Chainlink uma série de mecanismos que permitem contratos em uma cadeia principal para fortalecer as garantias de segurança fornecidas por DONs, enquanto no ao mesmo tempo, também aplicando proteções contra a possibilidade de fontes de dados corrompidas como os servidores web dos quais DON obtém dados. Descrevemos esses mecanismos na Seção 7. Eles se enquadram em cinco títulos principais: • Autenticação de fonte de dados: ferramentas que permitem que provedores de dados assinem digitalmente seus dados e, assim, fortalecer a cadeia de custódia entre a origem e contrato confiável. • DON relatórios minoritários: sinalizadores emitidos por um subconjunto minoritário de nós DON que observa prevaricação majoritária no DON. • Guard rails: Lógica em uma cadeia principal que detecta condições anômalas e pausas ou interrompe a execução do contrato (ou invoca outras remediações). • Governança com confiança minimizada: Uso de atualizações de liberação gradual para facilitar a inspeção comunitária, bem como intervenções de emergência descentralizadas para rápida resposta a falhas do sistema. • Autenticação de entidade descentralizada: Uso de infraestrutura de chave pública (PKI) para identificar entidades na rede Chainlink. A Figura 7 apresenta um esquema conceitual de nossos objetivos de minimização de confiança. Segurança baseada em incentivos (criptoeconômica): A descentralização da geração de relatórios entre nós oracle ajuda a garantir a segurança mesmo quando alguns nós estão corrompidos.


Figura 7: Representação conceitual da meta de minimização da confiança de Chainlink, que é minimizar a necessidade dos usuários de comportamento correto de DON e fontes de dados como a web servidores. Os destaques amarelos na figura indicam loci de minimização de confiança: o DON e conjuntos individuais ou minoritários de servidores web. Destaques rosa indicam componentes do sistema que são altamente confiáveis por suposição: contratos no blockchain e uma maioria de servidores web, ou seja, servidores web no agregado. Igualmente importante, porém, é garantir que os nós tenham um incentivo financeiro para se comportarem corretamente. Staking, ou seja, exigir que os nós forneçam depósitos de LINK e slashing (confiscar) esses depósitos em caso de mau comportamento desempenhará um papel fundamental em Chainlink. É um projeto de incentivo importante já usado em vários blockchains, por exemplo, [81, 103, 120, 204]. No entanto, piquetar em Chainlink parece muito diferente de staking em modo autônomo blockchains. A aposta em blockchains visa prevenir ataques ao consenso. Tem um objetivo diferente em Chainlink: garantir a entrega oportuna de relatórios oracle corretos. Um sistema staking bem projetado para uma rede oracle deve renderizar ataques como suborno não lucrativo para um adversário, mesmo quando o alvo é um smart contract com alto valor monetário. Neste artigo, apresentamos uma abordagem geral para staking em Chainlink com três chaves inovações:1. Um modelo adversário poderoso que engloba ataques negligenciados nas abordagens. Um exemplo é o que chamamos de suborno prospectivo. Esta é uma forma de suborno que determina quais nós recebem subornos de forma condicional, por exemplo, oferece subornos garantidos antecipadamente aos nós que um mecanismo staking seleciona em aleatório para funções específicas (como acionar a adjudicação de relatórios). 2. Impacto staking superlinear, significando informalmente que, para ter sucesso, um adversário deve ter um orçamento em $B maior do que os depósitos combinados de todos os oracle nós. Mais precisamente, queremos dizer que em função de n, \(B(n) ≫\)dn em um rede de n oracle nós, cada um com um valor de depósito fixo $d (mais formalmente, \(B(n) is asymptotically larger in n than \)dn). A Fig. 8 dá uma visão conceitual de esta propriedade. 3. O Quadro de Incentivos Implícitos (IIF), um modelo de incentivo que desenvolvemos para abrangem incentivos empiricamente mensuráveis além dos depositados explícitos staking fundos, incluindo oportunidades futuras de taxas dos nós. O IIF amplia a noção de aposta além dos depósitos explícitos de nós. Figura 8: Diagrama conceitual representando escala superlinear em Chainlink staking. O o suborno $B(n) exigido por um adversário cresce mais rápido em n do que os depósitos combinados $dn de todos os nós oracle. Mostramos como o impacto IIF e super-linear staking juntos induzem o que chamamos de ciclo virtuoso de segurança econômica para redes oracle. Quando novos usuários entram
o sistema, aumentando os ganhos futuros potenciais com a execução de nós Chainlink, o o custo marginal da segurança económica cai para os utilizadores actuais e futuros. Num regime de demanda elástica, esse custo reduzido incentiva usuários adicionais a fazer uso do rede, perpetuando continuamente a adoção em um ciclo virtuoso contínuo. Observação: embora este whitepaper descreva elementos importantes de nossa visão para a evolução de Chainlink, ele é informal e inclui poucas especificações técnicas detalhadas. Nós planejamos lançar artigos técnicos focados em recursos e abordagens adicionais à medida que evoluem. Além disso, é importante ressaltar que muitos elementos da visão apresentada aqui (melhorias de escala, tecnologias de confidencialidade, FSS, etc.) podem e serão implantado de forma preliminar, mesmo antes de DONs avançados se tornarem um recurso básico de Chainlink. 1.3 Organização deste artigo Apresentamos nosso modelo de segurança e notação na Seção 2 e descrevemos o Sistema Descentralizado API Oracle Network na Seção 3. Na Seção 4, apresentamos vários exemplos de aplicativos para os quais DONs fornecem uma plataforma de implantação atraente. Os leitores podem aprenda a maioria dos conceitos-chave do artigo lendo até este ponto. O restante do artigo contém mais detalhes. Descrevemos o sequenciamento justo Services (FSS) na Seção 5 e o Transaction-Execution Framework (TEF) na Seção 6. Descrevemos nossa abordagem para minimização de confiança na Seção 7. Consideramos alguns requisitos importantes de implantação DON, ou seja, implementação incremental de recursos, associação de razão dinâmica e responsabilidade na Seção 8. Finalmente, na Seção 9, damos uma visão geral de nossa abordagem em desenvolvimento para design de incentivos. Concluímos na Seção 10. Para ajudar os leitores que têm familiaridade limitada com os conceitos deste artigo, nós fornecemos um glossário no Apêndice A. Apresentamos mais detalhes sobre a interface DON e funcionalidade no Apêndice B e apresentam alguns exemplos de adaptadores no Apêndice C. No Apêndice D, descrevemos uma primitiva criptográfica para fontes de dados com confiança minimizada. autenticação chamada assinaturas funcionais e introduzir uma nova variante chamada assinaturas funcionais discretizadas. Discutimos algumas considerações pertinentes à comissão seleção para DONs no Apêndice F.

Giới thiệu

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

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


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


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


Modelo e metas de segurança
Uma Rede Oracle Descentralizada é um sistema distribuído distinto que esperamos que inicialmente ser implementado normalmente - embora não necessariamente - por um comitê baseado em protocolo de consenso e executado por um conjunto de nós oracle. Um DON foi projetado principalmente para aumentar os recursos de um smart contract em uma cadeia principal com relatórios oracle e outros serviços, mas pode fornecer esses mesmos serviços de suporte a outros sistemas nãoblockchain e, portanto, não precisa estar associado a uma cadeia principal específica.
O modelo e as propriedades que consideramos são, portanto, em grande parte independentes do uso de as aplicações específicas de um DON. 2.1 Modelo Arquitetônico Atual É importante ressaltar que Chainlink hoje não é um serviço monolítico, mas sim uma estrutura sem permissão dentro da qual é possível lançar recursos distintos e independentes redes de oracle nós [77]. As redes têm conjuntos heterogêneos de operadores de nós e projetos. Eles também podem diferir em termos dos tipos de serviços que prestam, o que pode incluem, por exemplo, feeds de dados, Prova de Reservas, aleatoriedade verificável e assim por diante. Outro As diferenças podem incluir o grau de descentralização, o tamanho da rede em termos de valor bloqueado que ele suporta e vários parâmetros de nível de serviço, como frequência de dados e precisão. O modelo sem permissão de Chainlink incentiva o crescimento de um ecossistema no qual os provedores se especializam nos serviços que são mais capazes de fornecer à comunidade. Isto modelo provavelmente resultará em custos mais baixos para os usuários e maior qualidade de serviço do que um modelo que exige que todos os nós e redes forneçam uma gama completa de serviços, uma abordagem que pode facilmente evoluir para a adoção em todo o sistema dos serviços que representam menos denominador comum de recursos disponíveis para os nós. À medida que Chainlink evolui em direção a designs baseados em DON em Chainlink 2.0, continuamos a apoiar o modelo de uma estrutura aberta e sem permissão, tendo em vista o objetivo de fornecendo aos usuários uma variedade de opções de serviços que resultam globalmente na melhor combinação com requisitos de aplicação específicos. 2.2 Suposições de consenso Usamos o termo Rede Oracle Descentralizada para abranger toda a funcionalidade do o sistema oracle que descrevemos: tanto a estrutura de dados que os nós oracle mantêm e a API principal colocada em cima dela. Usamos o termo razão (minúsculas), denotado por L, para significar os dados subjacentes estrutura mantida por DON e usada para dar suporte aos serviços específicos que ele fornece. Enfatizamos que nossa estrutura DON não trata L como um sistema independente como a blockchain: Sua finalidade é oferecer suporte a blockchains e outros sistemas. Blockchains são, é claro, uma forma de realizar um livro-razão confiável, mas existem outras. Nós esperamos DONs, em muitos casos, para realizar seus livros contábeis subjacentes usando Byzantine Fault Tolerant (BFT), que são consideravelmente anteriores a blockchains, como Bitcoin [174]. Nós usamos notação e propriedades do tipo BFT em todo o artigo por conveniência, embora enfatize que DONs podem ser realizados usando protocolos de consenso sem permissão. Conceitualmente, um livro-razão L é um quadro de avisos no qual os dados são ordenados linearmente. Vemos um livro-razão geralmente como tendo algumas propriedades-chave comumente atribuídas a blockchains [115]. Um livro razão é: • Somente acréscimo: Os dados, uma vez adicionados, não podem ser removidos ou modificados.• Público: Qualquer pessoa pode ler seu conteúdo, que é consistente ao longo do tempo no visualização de todos os usuários.4 • Disponível: O razão sempre pode ser gravado por escritores autorizados e lido por qualquer pessoa em tempo hábil. Propriedades alternativas são possíveis no razão para um DON quando realizadas por um comitê. Por exemplo, o acesso à gravação do razão pode ser restrito a determinados usuários, como pode ler o acesso para algumas aplicações, ou seja, o razão não precisa ser público conforme definido acima. Da mesma forma, as regras contábeis podem permitir a modificação ou redação de dados. Nós não considere explicitamente tais variantes neste artigo, no entanto. O design modular de DONs pode suportar qualquer uma de uma ampla variedade de BFT modernos protocolos, por exemplo, Hotstuff[231]. A escolha exata dependerá de suposições de confiança e características de rede entre os nós oracle. Um DON poderia, em princípio, alternativamente usar um blockchain sem permissão de alto desempenho para seu razão em sua função de suporte a um sistema igualmente escalonável de camada 2 ou blockchain. Da mesma forma, a hibridização também é possível: O DON poderia, em princípio, ser composto de nós que são validators em um existente blockchain, por exemplo, em sistemas de Prova de Participação nos quais os comitês são selecionados para executar transações, por exemplo, [8, 81, 120, 146, 204]. Este modo específico de operação requer que os nós operam de maneira de uso duplo, ou seja, operam como nós blockchain e como nós DON nós. (Veja a Seção 8.2 para uma discussão de técnicas para garantir a continuidade na mudança comitês e Apêndice F para algumas advertências sobre a seleção aleatória de comitês.) Na prática, nos algoritmos BFT modernos, os nós assinam digitalmente as mensagens no livro-razão. Assumimos por conveniência que L tem uma chave pública associada pkL e que seu conteúdo são assinados pela chave privada correspondente. Esta notação geral se aplica mesmo quando os dados em L são assinados usando assinaturas de limite.5 Assinaturas de limite são convenientes, pois permitem uma identidade persistente para um DON mesmo com mudanças de associação em os nós que o executam. (Veja o Apêndice B.1.3.) Assim, assumimos que skL é compartilhado em segredo de uma maneira (k, n)-limiar para algum parâmetro de segurança k, por exemplo, k = 2f + 1 e n = 3f + 1, onde f é o número de nós potencialmente defeituosos. (Ao escolher k neste Dessa forma, garantimos que nós defeituosos não possam aprender skL nem montar um sistema de negação de serviço ataque impedindo seu uso.) Uma mensagem em L assume a forma M = (m, z), onde m é uma string e z um único número de índice sequencial. Quando aplicável, escrevemos mensagens no formato m = ⟨MessageType: carga útil⟩. O tipo de mensagem MessageType é um açúcar sintático que indica a função de uma mensagem específica. 4Nos casos em que um blockchain sem finalidade realiza um livro-razão, a inconsistência é normalmente abstraída eliminado desconsiderando blocos insuficientemente profundos ou “podando” [115]. 5Na prática, algumas bases de código, por exemplo, LibraBFT [205], uma variante do Hotstuff, adotaram atualmente assinaturas múltiplas, em vez de assinaturas de limite, trocando complexidade de comunicação reduzida por engenharia mais simples. Com algum custo adicional, os nós oracle podem anexar assinaturas de limite às mensagens escritos em L mesmo que o protocolo de consenso usado para L não os empregue.2.3 Notação Denotamos o conjunto de n nós oracle executando o razão por O = {Oi}n eu=1. Tal conjunto de nós é frequentemente chamado de comitê. Para simplificar, assumimos que o conjunto de oracles implementando a funcionalidade DON, ou seja, serviços em cima de L, é idêntico a que mantendo L, mas eles podem ser distintos. Deixamos pki denotar a chave pública de jogador Oi, e esquie a chave privada correspondente. A maioria dos algoritmos BFT requerem pelo menos n = 3f + 1 nós, onde f é o número de nós potencialmente defeituosos; os nós restantes são honestos, no sentido de que seguem o protocolo exatamente como especificado. Referimo-nos ao comitê O como honesto se atender a este requisito, ou seja, tem mais de 2/3 fração de nós honestos. A menos que de outra forma afirmado, assumimos que O é honesto (e um modelo estático de corrupção). Usamos pkO / skO de forma intercambiável com pkL/skL, dependendo do contexto. Deixamos σ = Sigpk[m] denotar uma assinatura na mensagem m em relação a pk, ou seja, usando chave privada correspondente sk. Deixe verify(pk, σ, m) →{false, true} denotar um algoritmo de verificação de assinatura correspondente. (Deixamos a geração de chaves implícita ao longo do artigo.) Usamos a notação S para denotar uma fonte de dados e S para denotar o conjunto completo de Fontes nS em um determinado contexto. Denotamos por MAINCHAIN um contrato inteligente habilitado blockchain suportado por um DON. Usamos o termo contrato confiável para denotar qualquer contrato inteligente contrato no MAINCHAIN que se comunica com um DON e use a notação SC para denotar tal contrato. Geralmente assumimos que um DON suporta uma única cadeia principal MAINCHAIN, embora possa suportar múltiplas dessas cadeias, como mostramos nos exemplos da Seção 4. A DON pode e normalmente oferecerá suporte a vários contratos dependentes no MAINCHAIN. (Como mencionado acima, um DON pode alternativamente suportar serviços não blockchain.) 2.4 Nota sobre modelos de confiança Conforme observado acima, DONs podem ser construídos com base em protocolos de consenso baseados em comitês, e nós esperamos que eles normalmente usem esses protocolos. Existem muitos argumentos fortes que uma das duas alternativas, blockchains com base em comitê ou sem permissão, fornece segurança mais forte que o outro. É importante reconhecer que a segurança dos sistemas baseados em comitês versus os sistemas sem permissão sistemas descentralizados é incomensurável. Comprometendo um PoW ou PoS blockchain via ataque de 51% exige que um adversário obtenha recursos majoritários de forma efêmera e potencialmente anonimamente, por exemplo, alugando hash energia em um sistema PoW. Tal os ataques na prática já impactaram vários blockchains [200, 34]. Em contraste, comprometer um sistema baseado em comitê significa corromper um número limite (normalmente um terço) de seus nós, onde os nós podem ser conhecidos publicamente, ter bons recursos, e entidades confiáveis. Por outro lado, sistemas baseados em comitês (bem como sistemas “híbridos” sem permissão) sistemas que apoiam comitês) podem suportar mais funcionalidades do que estritamentesistemas sem missão. Isso inclui a capacidade de manter segredos persistentes, como chaves de assinatura e/ou criptografia – uma possibilidade em nossos projetos. Enfatizamos que DONs podem, em princípio, ser construídos em cima de um comitê baseado ou protocolo de consenso sem permissão e os implantadores DON podem, em última análise, optar por adotar qualquer abordagem. Reforçando os modelos de confiança: Um recurso importante do Chainlink hoje é a capacidade dos usuários de selecionar nós com base em registros descentralizados de seus históricos de desempenho, conforme discutido na Seção 3.6.4. O mecanismo staking e a Estrutura de Incentivos Implícitos que apresentamos na Seção 9 juntos constituem um projeto de mecanismo rigoroso e de amplo escopo estrutura que capacitará os usuários com uma capacidade bastante ampliada de avaliar a segurança de DONs. Esta mesma estrutura também tornará possível para os próprios DONs para impor vários requisitos de segurança nos nós participantes e garantir a operação dentro de modelos de confiança fortes. Também é possível usar as ferramentas descritas neste documento para DONs para impor requisitos especiais de modelo de confiança, como conformidade com requisitos regulatórios. Para Por exemplo, usando técnicas discutidas na Seção 4.3, os nós podem apresentar evidências de características do operador do nó, por exemplo, território de operação, que podem ser usadas para ajudar impor a conformidade com, por exemplo, o Artigo 3 do Regulamento Geral de Proteção de Dados (GDPR) (“Âmbito Territorial”) [105]. Caso contrário, tal conformidade pode ser um desafio para atendem em sistemas descentralizados [45]. Além disso, na Seção 7 discutimos planos para fortalecer a robustez de DONs através de mecanismos de minimização de confiança nas principais cadeias que apoiam.
Mô hình và mục tiêu bảo mật
Mạng Oracle phi tập trung là một hệ thống phân tán riêng biệt mà chúng tôi mong đợi sẽ ban đầu được thực hiện một cách thông thường—mặc dù không nhất thiết—bởi một ủy ban giao thức đồng thuận và được điều hành bởi một tập hợp các nút oracle. DON được thiết kế chủ yếu để tăng cường khả năng của smart contract trên chuỗi chính với báo cáo oracle và các dịch vụ khác, nhưng nó có thể cung cấp các dịch vụ hỗ trợ tương tự cho các hệ thống không phảiblockchain khác và do đó không cần phải liên kết với một chuỗi chính cụ thể.
Do đó, mô hình và các đặc tính mà chúng tôi xem xét phần lớn độc lập với việc sử dụng các ứng dụng cụ thể của DON. 2.1 Mô hình kiến trúc hiện tại Điều quan trọng cần nhấn mạnh là Chainlink ngày nay không phải là một dịch vụ nguyên khối mà là một khuôn khổ không cần cấp phép trong đó có thể khởi chạy các ứng dụng độc lập, khác biệt mạng gồm oracle nút [77]. Mạng có tập hợp các toán tử nút không đồng nhất và thiết kế. Họ cũng có thể khác nhau về loại dịch vụ họ cung cấp, có thể bao gồm, ví dụ: nguồn cấp dữ liệu, Bằng chứng dự trữ, tính ngẫu nhiên có thể kiểm chứng, v.v. Khác sự khác biệt có thể bao gồm mức độ phân cấp, quy mô của mạng về mặt giá trị bị khóa mà nó hỗ trợ và các tham số cấp dịch vụ khác nhau, chẳng hạn như tần số dữ liệu và độ chính xác. Mô hình không được phép của Chainlink khuyến khích sự phát triển của một hệ sinh thái trong đó các nhà cung cấp chuyên về các dịch vụ mà họ có thể cung cấp tốt nhất cho cộng đồng. Cái này mô hình có khả năng mang lại chi phí thấp hơn cho người dùng và chất lượng dịch vụ cao hơn mô hình yêu cầu tất cả các nút và mạng cung cấp đầy đủ các dịch vụ, một cách tiếp cận có thể dễ dàng chuyển sang áp dụng trên toàn hệ thống các dịch vụ đại diện cho ít nhất mẫu số chung của tài nguyên có sẵn cho các nút. Khi Chainlink phát triển theo hướng thiết kế dựa trên DON trong Chainlink 2.0, chúng tôi tiếp tục hỗ trợ mô hình của một khuôn khổ mở, không được phép, theo dõi mục tiêu của cung cấp cho người dùng nhiều lựa chọn dịch vụ mang lại kết quả phù hợp nhất trên toàn cầu với các yêu cầu ứng dụng cụ thể. 2.2 Giả định đồng thuận Chúng tôi sử dụng thuật ngữ Mạng Oracle phi tập trung để bao gồm đầy đủ chức năng của hệ thống oracle mà chúng tôi mô tả: cả cấu trúc dữ liệu mà các nút oracle duy trì và API cốt lõi được xếp chồng lên trên nó. Chúng tôi sử dụng thuật ngữ sổ cái (chữ thường), ký hiệu là L, để chỉ dữ liệu cơ bản cấu trúc được duy trì bởi DON và được sử dụng để hỗ trợ các dịch vụ cụ thể mà nó cung cấp. Chúng tôi nhấn mạnh rằng khung DON của chúng tôi không coi L là một hệ thống độc lập như a blockchain: Mục đích của nó là hỗ trợ blockchains và các hệ thống khác. Blockchain là, tất nhiên, có một cách để tạo ra một sổ cái đáng tin cậy, nhưng vẫn có những cách khác. Chúng tôi mong đợi DONs trong nhiều trường hợp để nhận ra sổ cái cơ bản của họ bằng cách sử dụng Byzantine Fault Tolerant (BFT) hệ thống có trước đáng kể các hệ thống blockchain như Bitcoin [174]. Chúng tôi sử dụng BFT-loại ký hiệu và thuộc tính xuyên suốt bài viết để thuận tiện, mặc dù chúng tôi nhấn mạnh rằng DONs có thể được thực hiện bằng cách sử dụng các giao thức đồng thuận không được phép. Về mặt khái niệm, sổ cái L là một bảng thông báo trên đó dữ liệu được sắp xếp tuyến tính. Nhìn chung, chúng tôi xem sổ cái có một số thuộc tính chính thường được gán cho blockchains [115]. Một sổ cái là: • Chỉ nối thêm: Dữ liệu sau khi được thêm vào sẽ không thể bị xóa hoặc sửa đổi.• Công khai: Bất kỳ ai cũng có thể đọc được nội dung nhất quán theo thời gian trong chế độ xem của tất cả người dùng.4 • Có sẵn: Sổ cái luôn có thể được người viết được ủy quyền viết và đọc bởi bất cứ ai một cách kịp thời. Các thuộc tính thay thế có thể có trong sổ cái cho DON khi được nhận ra bởi một ủy ban. Ví dụ: quyền truy cập ghi sổ cái có thể bị hạn chế đối với một số người dùng nhất định, vì có thể truy cập đọc đối với một số ứng dụng, tức là sổ cái không cần phải công khai như được xác định ở trên. Tương tự, các quy tắc sổ cái có thể cho phép sửa đổi hoặc biên tập lại dữ liệu. Chúng tôi không Tuy nhiên, hãy xem xét rõ ràng các biến thể như vậy trong bài viết này. Thiết kế mô-đun của DON có thể hỗ trợ bất kỳ loại BFT hiện đại nào các giao thức, ví dụ: Hotstuff[231]. Sự lựa chọn chính xác sẽ phụ thuộc vào các giả định về độ tin cậy và đặc điểm mạng giữa các nút oracle. Về nguyên tắc, DON có thể thay thế sử dụng blockchain không được phép có hiệu suất cao cho sổ cái của nó với vai trò hỗ trợ hệ thống lớp 2 hoặc blockchain có khả năng mở rộng tương đương. Tương tự, sự lai tạo cũng có thể xảy ra: Về nguyên tắc, DON có thể bao gồm các nút là validator trong một mạng hiện có blockchain, ví dụ: trong hệ thống Bằng chứng cổ phần trong đó các ủy ban được chọn để thực thi giao dịch, ví dụ: [8, 81, 120, 146, 204]. Chế độ hoạt động đặc biệt này đòi hỏi các nút hoạt động theo cách sử dụng kép, tức là hoạt động cả dưới dạng nút blockchain và DON nút. (Xem Phần 8.2 để thảo luận về các kỹ thuật nhằm đảm bảo tính liên tục trong việc thay đổi ủy ban và Phụ lục F về một số lưu ý khi lựa chọn ủy ban ngẫu nhiên.) Trong thực tế, trong thuật toán BFT hiện đại, các nút ký điện tử vào các thông báo trên sổ cái. Chúng ta giả sử để thuận tiện rằng L có một khóa công khai pkL liên quan và nội dung của nó được ký bởi khóa riêng tương ứng. Ký hiệu chung này áp dụng ngay cả khi dữ liệu trên L được ký bằng chữ ký ngưỡng.5 Chữ ký ngưỡng rất thuận tiện, vì chúng kích hoạt danh tính lâu dài cho DON ngay cả khi thay đổi tư cách thành viên trong các nút đang chạy nó. (Xem Phụ lục B.1.3.) Do đó, chúng tôi giả định rằng skL được chia sẻ bí mật theo cách ngưỡng (k, n) đối với một số tham số an toàn k, ví dụ: k = 2f + 1 và n = 3f + 1, trong đó f là số nút có khả năng bị lỗi. (Bằng cách chọn k ở đây theo cách này, chúng tôi đảm bảo rằng các nút bị lỗi không thể học skL cũng như không thể thực hiện việc từ chối dịch vụ cuộc tấn công ngăn chặn việc sử dụng nó.) Một thông báo trên L có dạng M = (m, z), trong đó m là một chuỗi và z là duy nhất số chỉ mục tuần tự. Nếu có thể, chúng ta viết tin nhắn dưới dạng m = ⟨MessageType : tải trọng⟩. Loại thông báo MessageType là cú pháp cho biết chức năng của một thông báo cụ thể. 4Trong trường hợp blockchain không có số cuối cùng nhận ra một sổ cái, sự không nhất quán thường bị loại trừ tránh xa bằng cách bỏ qua các khối không đủ sâu hoặc “cắt tỉa” [115]. 5Trong thực tế, một số cơ sở mã, ví dụ: LibraBFT [205], một biến thể của Hotstuff, hiện đã áp dụng đa chữ ký, thay vì chữ ký ngưỡng, giảm bớt độ phức tạp trong giao tiếp cho kỹ thuật đơn giản hơn. Với một số chi phí bổ sung, các nút oracle có thể thêm chữ ký ngưỡng vào tin nhắn được ghi vào L ngay cả khi giao thức đồng thuận được sử dụng cho L không sử dụng chúng.2.3 Ký hiệu Chúng ta biểu thị tập hợp n oracle nút chạy sổ cái bằng O = {Oi}n tôi = 1. Như vậy tập hợp các nút thường được gọi là một ủy ban. Để đơn giản, chúng ta giả sử rằng tập hợp oracle đang triển khai chức năng DON, tức là các dịch vụ trên L, giống hệt với duy trì L, nhưng chúng có thể khác biệt. Chúng ta đặt pki biểu thị khóa công khai của người chơi Oi và trượt khóa riêng tương ứng. Hầu hết các thuật toán BFT yêu cầu ít nhất n = 3f + 1 nút, trong đó f là số lượng các nút có khả năng bị lỗi; các nút còn lại là trung thực, theo nghĩa là chúng tuân theo giao thức chính xác như được chỉ định. Chúng tôi coi ủy ban O là trung thực nếu nó đáp ứng được điều này yêu cầu, tức là có nhiều hơn 2/3 số nút trung thực. Trừ khi có cách khác đã nêu, chúng tôi cho rằng O là trung thực (và là một mô hình tham nhũng tĩnh). Chúng tôi sử dụng pkO / skO có thể hoán đổi cho nhau bằng pkL / skL, tùy theo ngữ cảnh. Chúng ta đặt σ = Sigpk[m] biểu thị chữ ký trên thông báo m đối với pk, tức là sử dụng sk khóa riêng tương ứng. Đặt verify(pk, σ, m) →{false, true} biểu thị thuật toán xác minh chữ ký tương ứng. (Chúng tôi ngầm định việc tạo khóa trong suốt bài viết.) Chúng tôi sử dụng ký hiệu S để biểu thị nguồn dữ liệu và S để biểu thị toàn bộ nguồn nS trong một bối cảnh nhất định. Chúng tôi biểu thị bằng MAINCHAIN một hợp đồng thông minh được kích hoạt blockchain được hỗ trợ bởi DON. Chúng tôi sử dụng thuật ngữ hợp đồng dựa trên để biểu thị bất kỳ thông minh nào hợp đồng trên MAINCHAIN giao tiếp với DON và sử dụng ký hiệu SC để biểu thị một hợp đồng như vậy. Chúng tôi thường giả định rằng DON hỗ trợ một MAINCHAIN chuỗi chính duy nhất, mặc dù nó có thể hỗ trợ nhiều chuỗi như vậy, như chúng tôi trình bày trong các ví dụ ở Phần 4. A DON có thể và thường sẽ hỗ trợ nhiều hợp đồng dựa trên MAINCHAIN. (Như đã lưu ý ở trên, DON có thể hỗ trợ các dịch vụ không phải blockchain.) 2.4 Lưu ý về Mô hình Tin cậy Như đã lưu ý ở trên, DON có thể được xây dựng dựa trên các giao thức đồng thuận dựa trên ủy ban và chúng tôi mong đợi họ sẽ thường xuyên sử dụng các giao thức như vậy. Có nhiều lập luận mạnh mẽ cho rằng một trong hai lựa chọn thay thế, blockchain dựa trên ủy ban hoặc không được phép, cung cấp bảo mật mạnh hơn cái kia. Điều quan trọng là phải nhận ra rằng tính bảo mật của dựa trên ủy ban và không được phép hệ thống phi tập trung là không thể so sánh được. Thỏa hiệp PoW hoặc PoS blockchain thông qua tấn công 51% yêu cầu đối thủ phải có được phần lớn tài nguyên một cách nhất thời và có khả năng ẩn danh, chẳng hạn như bằng cách thuê nguồn điện hash trong hệ thống PoW. Như vậy các cuộc tấn công trong thực tế đã ảnh hưởng đến một số blockchains [200, 34]. Ngược lại, xâm phạm một hệ thống dựa trên ủy ban có nghĩa là làm hỏng một số ngưỡng (thường là một phần ba) các nút của nó, trong đó các nút có thể được biết đến công khai, có nguồn lực tốt, và các đơn vị đáng tin cậy. Mặt khác, các hệ thống dựa trên ủy ban (cũng như các hệ thống không cần cấp phép “kết hợp” hệ thống hỗ trợ các ủy ban) có thể hỗ trợ nhiều chức năng hơn so vớicác hệ thống phi nhiệm vụ. Điều này bao gồm khả năng duy trì các bí mật lâu dài, chẳng hạn như khóa ký và/hoặc mã hóa—một khả năng trong thiết kế của chúng tôi. Chúng tôi nhấn mạnh rằng DON về nguyên tắc có thể được xây dựng trên nền tảng dựa trên ủy ban hoặc giao thức đồng thuận không được phép và DON người triển khai cuối cùng có thể chọn áp dụng một trong hai cách tiếp cận. Củng cố các mô hình niềm tin: Tính năng chính của Chainlink ngày nay là khả năng người dùng chọn các nút dựa trên các bản ghi phi tập trung về lịch sử hiệu suất của chúng, như đã thảo luận ở Mục 3.6.4. Cơ chế staking và Khung khuyến khích ngầm định mà chúng tôi giới thiệu trong Phần 9 cùng nhau tạo thành một thiết kế cơ chế nghiêm ngặt và có phạm vi rộng khuôn khổ sẽ trao quyền cho người dùng khả năng mở rộng đáng kể để đánh giá tính bảo mật của DONs. Khung tương tự này cũng sẽ giúp chính DONs có thể thực hiện được để thực thi các yêu cầu bảo mật khác nhau trên các nút tham gia và đảm bảo hoạt động trong các mô hình niềm tin mạnh mẽ. Cũng có thể sử dụng các công cụ được mô tả trong bài viết này cho DON để thực thi các yêu cầu về mô hình tin cậy đặc biệt, chẳng hạn như tuân thủ các yêu cầu quy định. cho Ví dụ, bằng cách sử dụng các kỹ thuật được thảo luận trong Phần 4.3, các nút có thể đưa ra bằng chứng về các đặc điểm của nhà điều hành nút, ví dụ: lãnh thổ hoạt động, có thể được sử dụng để trợ giúp thực thi việc tuân thủ, ví dụ: Quy định chung về bảo vệ dữ liệu (GDPR) Điều 3 (“Phạm vi lãnh thổ”) [105]. Việc tuân thủ như vậy có thể là thách thức đối với gặp nhau trong các hệ thống phi tập trung [45]. Ngoài ra, trong Phần 7, chúng tôi thảo luận về kế hoạch tăng cường độ bền của DONs thông qua các cơ chế giảm thiểu niềm tin trên các chuỗi chính mà họ hỗ trợ.
Interface de rede Oracle descentralizada e Ca-
habilidades Aqui esboçamos brevemente as capacidades de DONs em termos do simples, mas poderoso interface que eles foram projetados para realizar. Os aplicativos em DON são compostos de executáveis e adaptadores. Um executável é um programa cuja lógica central é um programa determinístico, análogo a um smart contract. Um executável também possui vários iniciadores, programas que chamam entrada pontos na lógica do executável quando ocorrem eventos predeterminados - por exemplo, em determinados momentos (como um cron job), quando um preço ultrapassa um limite, etc. – muito parecido com o Keepers (consulte a Seção 3.6.3). Adaptadores fornecem interfaces para recursos fora da cadeia e podem ser chamados por os iniciadores ou a lógica central dos executáveis. Como o comportamento deles pode depender disso de recursos externos, iniciadores e adaptadores podem se comportar de forma não determinística. Descrevemos a interface do desenvolvedor DON e o funcionamento de executáveis e adaptadores em termos dos três recursos normalmente usados para caracterizar sistemas de computação: rede, computação e armazenamento. Damos uma breve visão geral de cada um desses recursos abaixo e forneça mais detalhes no Apêndice B.

3.1 Rede Adaptadores são interfaces através das quais executáveis em execução em um DON podem enviar e receber dados de sistemas off-DON. Adaptadores podem ser vistos como uma generalização de os adaptadores usados em Chainlink hoje [20]. Os adaptadores podem ser bidirecionais, ou seja, eles não pode apenas extrair, mas enviar dados de um DON para um servidor web. Eles também podem aproveitar protocolos distribuídos, bem como funcionalidade criptográfica, como segurança multipartidária computação. Figura 9: Adaptadores conectando um DON, denotado DON1, com uma variedade de recursos diferentes, incluindo outro DON, denotado DON2, um blockchain (cadeia principal) e seu mempool, armazenamento externo, um servidor web e dispositivos IoT (por meio de um servidor web). São mostrados exemplos de recursos externos para os quais adaptadores podem ser criados na Fig. 9. Eles incluem: • Blockchains: um adaptador pode definir como enviar transações para um blockchain e como ler blocos, transações individuais ou outro estado dele. Um adaptador também pode ser definido para um mempool de blockchain. (Ver Seção 3.5.) • Servidores Web: Os adaptadores podem definir APIs através das quais os dados podem ser recuperados de servidores web, incluindo sistemas legados que não são especialmente adaptados para fazendo interface com DONs. Esses adaptadores também podem incluir APIs para enviar dados para tais servidores. Os servidores web aos quais um DON se conecta podem servir como gateways a recursos adicionais, como dispositivos de Internet das Coisas (IoT).• Armazenamento externo: um adaptador pode definir métodos para ler e gravar no armazenamento serviços fora do DON, como um sistema de arquivos descentralizado [40, 188] ou nuvem armazenamento. • Outros DONs: Os adaptadores podem recuperar e transmitir dados entre DONs. Esperamos que as implantações iniciais de DONs incluam um conjunto de blocos de construção adaptadores para recursos externos comumente usados e permitirá ainda DON específicos adaptadores a serem publicados pelos nós DON. À medida que os desenvolvedores smart contract escrevem adaptadores hoje, esperamos que eles construam adaptadores ainda mais poderosos usando este avançado funcionalidade. Esperamos que, em última análise, seja possível aos usuários criar novos adaptadores em um maneira sem permissão. Alguns adaptadores devem ser construídos de forma a garantir a persistência e disponibilidade de recursos externos controlados por um DON. Por exemplo, o armazenamento em nuvem pode exigem a manutenção de uma conta de serviços em nuvem. Além disso, um DON pode executar gerenciamento descentralizado de chaves privadas em nome dos usuários (como em, por exemplo, [160]) e/ou executáveis. Consequentemente, o DON é capaz de controlar recursos, como criptomoeda, que podem ser usados, por exemplo, para enviar transações em um alvo blockchain. Consulte o Apêndice B.1 para obter mais detalhes sobre os adaptadores DON, assim como o Apêndice C para alguns exemplo de adaptadores. 3.2 Computação Um executável é a unidade básica de código em um DON. Um executável é um par exec = (lógica, inicialização). Aqui, a lógica é um programa determinístico com um número de entradas designadas pontos (logic1, logic2, . . . , logicℓ) e init é um conjunto de iniciadores correspondentes (init1, init2, . . . , iniciar). Para garantir a auditabilidade total do DON, a lógica de um executável usa o razão subjacente L para todas as entradas e saídas. Assim, por exemplo, qualquer adaptador os dados que servem como entrada para um executável devem ser armazenados primeiro em L. Iniciadores: Os iniciadores em Chainlink hoje causam execuções de tarefas dependentes de eventos em Chainlink nós [21]. Os iniciadores em DONs funcionam da mesma maneira. Um iniciador DON, entretanto, está especificamente associado a um executável. Um iniciador pode depender em um evento ou estado externo, na hora atual ou em um predicado no estado DON. Com a sua dependência de eventos, os iniciadores podem, naturalmente, comportar-se de forma não determinística. (como é claro, os adaptadores). Um iniciador pode ser executado em nós DON individuais e portanto não precisa depender de um adaptador. (Veja o Exemplo 1 abaixo.) Iniciadores são um recurso importante que distingue executáveis de smart contracts. Como um executável pode ser executado em resposta a um iniciador, ele pode operar efetivamente de forma autônoma, como é claro, por extensão, um contrato híbrido que incorpora o executável. Uma forma de iniciadores hoje são Chainlink Keepers, que fornecem transaçõesserviços de automação, desencadeando a execução de smart contract – como liquidação de empréstimos com garantia insuficiente e execução de negociações com ordens de limite – com base em relatórios oracle. Convenientemente, os iniciadores em DONs também podem ser vistos como uma forma de especificar o contratos de serviço que se aplicam a um executável, pois definem as circunstâncias sob qual o DON deve chamá-lo. O exemplo a seguir ilustra como os iniciadores funcionam em um executável: Exemplo 1 (feed de preço acionado por desvio). Um smart contract SC pode exigir novos dados de alimentação de preços (ver Seção 3.6.3) sempre que houver uma mudança substancial, por exemplo, 1%, em a taxa de câmbio entre um par de ativos, por exemplo, ETH-USD. Preço sensível à volatilidade feeds são suportados em Chainlink hoje, mas é instrutivo ver como eles podem ser realizado em um DON por meio de um execfeed executável. O executável execfeed mantém o preço ETH-USD mais recente r em L, no forma de uma sequência de ⟨NewPrice: j, r⟩entries, onde j é um índice incrementado com cada atualização de preço. Um iniciador init1 faz com que cada nó Oi monitore o preço atual do ETH-USD para desvios de pelo menos 1% do preço armazenado mais recentemente r com índice j. Após detecção de tal desvio, a Oi escreve sua visão atual ri do novo preço para L usando uma entrada no formato ⟨PriceView : i, j + 1, ri⟩. Um segundo iniciador init2 é acionado quando pelo menos k dessas entradas PriceView com novo preço valores para o índice j + 1 criados por nós distintos foram acumulados em L. Então, init2 invoca uma lógica de ponto de entrada2 para calcular a mediana ρ dos primeiros k valores novos e válidos de priceview e grava um novo valor ⟨NewPrice : j + 1, ρ⟩to L . (Operacionalmente, nós podem se revezar como escritores designados.) Um terceiro iniciador init3 observa as entradas NewPrice em L. Sempre que um novo relatório ⟨NewPrice : j, r⟩aparece lá, invoca uma lógica de ponto de entrada3 que empurra (j, r) para SC usando um adaptador. Como observamos, um executável é semelhante em suas capacidades a um smart contract. Além de seu desempenho superior, difere de um contrato típico da cadeia principal. de duas maneiras essenciais: 1. Confidencialidade: Um executável pode realizar computação confidencial, ou seja, um programa secreto pode processar entradas de texto não criptografado, ou um programa publicado pode processar dados de entrada secretos ou uma combinação de ambos. Num modelo simples, os dados secretos podem ser acessado por nós DON, que ocultam resultados intermediários e divulgam apenas valores processados e higienizados para MAINCHAIN. Também é possível ocultar dados confidenciais dos próprios DONs: DONs destinam-se a apoiar abordagens como como computação multipartidária, por exemplo, [42, 157] e ambientes de execução confiáveis (TEEs) [84, 133, 152, 229] para esse fim.6 6Por extensão, também é possível manter os próprios executáveis em segredo em relação aos nós DON, embora isso só seja prático hoje para executáveis não triviais usando TEEs.2. Função de suporte: um executável destina-se a suportar smart contracts em um servidor principal cadeia, em vez de substituí-los. Um executável tem várias limitações que um smart contract não: (a) Modelo de confiança: um executável opera dentro do modelo de confiança definido pelo DON: Sua execução correta depende do comportamento honesto de O. (A principal cadeia pode, no entanto, fornecer algumas barreiras de proteção contra DON prevaricação, como discutido na Seção 7.3.) (b) Acesso a ativos: Um DON pode controlar uma conta em um blockchain - e, portanto, controlar ativos nele por meio de um adaptador. Mas um DON não pode ser autorizado representam ativos criados em uma cadeia principal, por exemplo, Ether ou ERC20 tokens, uma vez que sua cadeia nativa mantém o registro oficial de sua propriedade. (c) Ciclo de vida: DONs podem ser levantados intencionalmente com vida útil limitada, como definido por acordos de nível de serviço na cadeia entre DONs e os proprietários de contratos confiáveis. Blockchains, por outro lado, devem funcionar como sistemas de arquivo permanente. Consulte o Apêndice B.2 para obter mais detalhes sobre o cálculo de DON. 3.3 Armazenamento Como um sistema baseado em comitê, um DON pode armazenar quantidades moderadas de dados de forma persistente em L a um custo muito menor do que um blockchain sem permissão. Além disso, através de adaptadores, DONs podem fazer referência a sistemas descentralizados externos para armazenamento de dados, por exemplo, Filecoin [85], e pode, assim, conectar tais sistemas a smart contracts. Esta opção é particularmente atraente para dados em massa como forma de resolver o problema generalizado de “inchaço” em blockchain sistemas. DONs podem, portanto, armazenar dados local ou externamente para uso em seus serviços especificamente suportados. Um DON também pode fazer uso desses dados de forma confidencial, computação em dados que são: (1) compartilhados em segredo entre nós DON ou criptografados em uma chave gerenciada por nós DON de maneira adequada para computação multipartidária segura ou criptografia parcial ou totalmente homomórfica; ou (2) protegido usando uma execução confiável ambiente. Esperamos que DONs adotem um modelo simples de gerenciamento de memória comum a sistemas de contrato inteligente: um executável só pode gravar em sua própria memória. Executáveis pode, no entanto, ler da memória de outros executáveis. Consulte o Apêndice B.3 para obter mais detalhes sobre o armazenamento DON. 3.4 Estrutura de Execução de Transações (TEF) DONs destinam-se a apoiar contratos em uma cadeia principal MAINCHAIN (ou em várias cadeias principais). O Transaction-Execution Framework (TEF), discutido em detalhesna Seção 6, é uma abordagem de propósito geral para a execução eficiente de um contrato SC em MAINCHAIN e um DON. O TEF destina-se a apoiar FSS e camada 2 tecnologias - simultaneamente, se desejado. Na verdade, é provável que sirva como o principal veículo para uso do FSS (e por essa razão, não discutiremos mais detalhadamente o FSS nesta seção). Resumidamente, no TEF, um contrato-alvo original SC projetado ou desenvolvido para MAINCHAIN é refatorado em um contrato híbrido. Essa refatoração produz os dois processos interoperacionais partes do contrato híbrido: um contrato MAINCHAIN SCa ao qual nos referimos para maior clareza no contexto dos TEFs como um contrato âncora e um executivo executável em um DON. O O contrato SCa custodia os ativos dos usuários, executa transições de estado autorizadas e também fornece guarda-corpos (consulte a Seção 7.3) contra falhas no DON. Os executivos executáveis sequencia transações e fornece dados oracle associados para elas. Pode agrupar transações para SCa de várias maneiras - por exemplo, usando provas de validade ou rollups otimistas, execução confidencial por DON, etc. Esperamos desenvolver ferramentas que facilitem aos desenvolvedores a partição de um contrato SC escrito em uma linguagem de alto nível em partes da lógica MAINCHAIN e DON, SCa e executivos respectivamente, que compõem com segurança e eficiência. Usando TEF para integrar esquemas de transações de alto desempenho com transações de alto desempenho oracles é parte integrante da nossa abordagem de escalonamento oracle. 3.5 Serviços de mempool Um recurso importante da camada de aplicação que pretendemos implantar em DONs para suporte do FSS e do TEF são Mempool Services (MS). MS pode ser visto como um adaptador, mas com suporte de primeira classe. MS fornece suporte para processamento de transações compatíveis com legado. Neste uso, MS ingere do mempool de uma cadeia principal as transações destinadas a um contrato alvo SC em MAINCHAIN. A MS então passa essas transações para um executável no DON, onde são processados da maneira desejada. Os dados MS podem ser usados pelo DON para compor transações que podem então ser passadas diretamente para SC a partir do DON ou para outro contrato que chama SC. Por exemplo, o DON pode encaminhar transações colhido via MS, ou pode usar dados do MS para definir os preços do gás para as transações que envia para MAINCHAIN. Por monitorar o mempool, o MS pode obter transações de usuários interagindo diretamente com o SC. Assim, os usuários podem continuar a gerar suas transações usando software legado, ou seja, aplicativos que desconhecem a existência de MS e software configurado por MS contratos. (Neste caso, SC deve ser alterado para ignorar as transações originais e aceitar apenas os processados pelo MS, de modo a evitar o duplo processamento.) Para uso com um SC de contrato-alvo, o MS pode ser usado com o FSS e/ou o TEF.3.6 trampolins: capacidades Chainlink existentes 3.6.1 Relatórios fora da cadeia (OCR) Relatórios fora da cadeia (OCR) [60] é um mecanismo em Chainlink para oracle agregação e transmissão de relatórios para um SC de contrato confiável. Implantado recentemente pelo preço de Chainlink redes de alimentação, representa um primeiro passo no caminho para DONs completos. Em sua essência, OCR é um protocolo BFT projetado para operar de forma parcialmente síncrona. rede. Garante vivacidade e correção na presença de f <n/3 arbitrariamente nós defeituosos, garantindo as propriedades da transmissão confiável bizantina, mas não é um protocolo de consenso BFT completo. Os nós não mantêm logs de mensagens que são consistente no sentido de representar um livro-razão que é idêntico em todas as suas visões, e o líder do protocolo pode equivocar-se sem violar a segurança. OCR é atualmente projetado para um tipo específico de mensagem: agregação mediana de (pelo menos 2f +1) valores relatados pelos nós participantes. Ele fornece uma garantia fundamental sobre os relatórios que ele gera para SC, chamados de relatórios atestados: O valor mediano em um atestado report é igual ou está entre os valores relatados por dois nós honestos. Esta propriedade é a principal condição de segurança para OCR. O líder pode ter alguma influência sobre a mediana valor em laudo atestado, mas somente sujeito a esta condição de correção. OCR pode ser estendido a tipos de mensagens que agregam valores de diferentes maneiras. Embora as metas de atividade e correção da rede Chainlink hoje não exijam Para que o OCR seja um protocolo de consenso completo, eles exigem que o OCR forneça algumas formas adicionais de funcionalidade não presentes nos protocolos BFT convencionais, mais notavelmente: 1. Transmissão de relatório fora da cadeia do tipo tudo ou nada: OCR garante que um relatório atestado é disponibilizado rapidamente para todos os nós honestos ou para nenhum deles. Isto é uma justiça propriedade que ajuda a garantir que nós honestos tenham a oportunidade de participar na transmissão de relatório atestado. 2. Transmissão confiável: OCR garante, mesmo na presença de falhas ou mal-intencionados nós, que todos os relatórios e mensagens de OCR são transmitidos ao SC dentro de um determinado, intervalo de tempo pré-definido. Esta é uma propriedade de vivacidade. 3. Minimização da confiança baseada em contrato: o SC filtra relatórios gerados por OCR potencialmente errados, por exemplo, se seus valores relatados se desviarem significativamente de outros recebidos recentemente. Esta é uma forma de aplicação de correção extraprotocolo. Todas essas três propriedades desempenharão um papel natural em DONs. A transmissão off-chain do tipo tudo ou nada (DON) é um importante alicerce para garantias criptoeconômicas em torno da transmissão confiável, que por sua vez é uma propriedade essencial do adaptador. Confiança a minimização em SC é um tipo de guarda-corpo, conforme discutido na Seção 7.3. OCR também fornece uma base para implantação operacional e refinamento de protocolos BFT nas redes Chainlink de oracle e, portanto, como observado acima, um caminho para a plena funcionalidade de DONs.3.6.2 DECO e Pregoeiro DECO [234] e Town Crier [233] são um par de tecnologias relacionadas atualmente em desenvolvido em redes Chainlink. A maioria dos servidores web hoje permite que os usuários se conectem através de um canal seguro usando um protocolo chamado Transport Layer Security (TLS) [94]. (HTTPS indica uma variante de HTTP que está habilitado com TLS, ou seja, URLs prefixados com “https” indicam o uso de TLS para segurança.) A maioria dos servidores habilitados para TLS tem uma limitação notável: eles não assinam digitalmente dados. Consequentemente, um usuário ou Prover não pode apresentar os dados que recebe de um servidor a um terceiro ou verificador, como um oracle ou smart contract, de uma forma que garanta a autenticidade dos dados. Mesmo que um servidor assinasse digitalmente os dados, ainda existiria um problema de confidencialidade. Um Provador pode desejar redigir ou modificar dados confidenciais antes de apresentá-los a um Verificador. Entretanto, as assinaturas digitais são projetadas especificamente para invalidar dados modificados. Assim, evitam que um Provador faça alterações que preservem a confidencialidade. aos dados. (Veja a Seção 7.1 para mais discussão.) DECO e Town Crier são projetados para permitir que um provador obtenha dados de uma web servidor e apresentá-lo a um verificador de uma forma que garanta integridade e confidencialidade. Os dois sistemas preservam a integridade no sentido de garantirem que os dados apresentados pelos o Provador para o Verificador se origina autenticamente do servidor de destino. Eles apoiam confidencialidade no sentido de permitir que o Provador edite ou modifique os dados (enquanto ainda preservando a integridade). Uma característica fundamental de ambos os sistemas é que eles não exigem nenhuma modificação em um servidor web de destino. Eles podem operar com qualquer servidor existente habilitado para TLS. Na verdade, eles são transparentes para o servidor: Do ponto de vista do servidor, o Provador é estabelecendo uma conexão comum. Os dois sistemas têm objetivos semelhantes, mas diferem em seus modelos de confiança e implementações, como explicaremos brevemente agora. DECO faz uso fundamental de protocolos criptográficos para alcançar sua integridade e propriedades de confidencialidade. Ao estabelecer uma sessão com um servidor alvo usando DECO, o Provador se envolve ao mesmo tempo em um protocolo interativo com o Verificador. Este protocolo permite ao Provador provar ao Verificador que recebeu um determinado dado D do servidor durante sua sessão atual. O Provador pode alternativamente, apresente ao Verificador uma prova de conhecimento zero de alguma propriedade de D e, portanto, não revela D diretamente. Em um uso típico do DECO, um usuário ou um único nó pode exportar dados D de um servidor privado. sessão com um servidor web para todos os nós em um DON. Como resultado, o DON completo pode atestar a autenticidade de D (ou um fato derivado de D através de uma prova de conhecimento zero). Além dos exemplos de aplicações dados posteriormente neste artigo, esse recurso pode ser usado para amplificar o acesso de alta integridade a uma fonte de dados por um DON. Mesmo que apenas um nó tem acesso direto a uma fonte de dados – devido, por exemplo, a um acordo exclusivo com um provedor de dados - ainda é possível para todo o DON atestar a exatidão derelatórios emitidos por esse nó. Town Crier depende do uso de um ambiente de execução confiável (TEE), como Intel SGX. Resumidamente, um TEE funciona como uma espécie de caixa preta que executa aplicações de uma forma forma inviolável e confidencial. Em princípio, mesmo o proprietário do host no qual o TEE está em execução não pode alterar (de forma indetectável) um aplicativo protegido por TEE nem visualizar o estado do aplicativo, que pode incluir dados secretos. Town Crier pode alcançar todas as funcionalidades do DECO e muito mais. DECO restringe o Provador à interação com um único Verificador. Em contraste, o Town Crier permite um provador para gerar uma prova publicamente verificável sobre os dados D obtidos de um servidor de destino, ou seja, uma prova que qualquer pessoa, mesmo um smart contract, pode verificar diretamente. O Pregoeiro da Cidade pode também ingerir e usar segredos com segurança (por exemplo, credenciais de usuário). A principal limitação do Town Crier é a sua dependência dos TEEs. Os ETEs de produção têm recentemente demonstrou ter uma série de vulnerabilidades graves, embora a tecnologia esteja na sua infância e irá, sem dúvida, amadurecer. Consulte os Apêndices B.2.1 e B.2.2 para discussão mais aprofundada sobre ETEs. Para alguns exemplos de aplicações de DECO e Town Crier, consulte as Seções 4.3, 4.5 e 9.4.3 e Apêndice C.1. 3.6.3 Serviços Chainlink existentes na rede As redes Chainlink oracle fornecem vários serviços principais em uma multiplicidade de blockchains e outros sistemas descentralizados hoje. Evolução adicional conforme descrito neste whitepaper dotará esses serviços existentes com recursos adicionais e alcance. Três exemplos são: Feeds de dados: Hoje, a maioria dos usuários de Chainlink que dependem de smart contracts fazem uso de feeds de dados. Estes são relatórios sobre o valor atual dos principais dados de acordo com para fontes oficiais fora da cadeia. Por exemplo, feeds de preços são feeds que informam os preços de ativos - criptomoedas, commodities, forex, índices, ações, etc. - de acordo com trocas ou serviços de agregação de dados. Esses feeds hoje já ajudam a garantir bilhões de dólares em valor na cadeia por meio de seu uso em sistemas DeFi como Aave [147] e Sintetix [208]. Outros exemplos de feeds de dados Chainlink incluem dados meteorológicos para seguro agrícola paramétrico [75] e dados eleitorais [93], entre vários outros. A implantação de DONs e outras tecnologias descritas neste documento melhorará o fornecimento de feeds de dados em redes Chainlink de várias maneiras, incluindo: • Dimensionamento: OCR e subsequentemente DONs visam permitir o dimensionamento dos serviços Chainlink dramaticamente nos muitos blockchains que eles suportam. Por exemplo, esperamos que DONs ajudarão a aumentar o número de feeds de dados fornecidos pelos nós usando Chainlink de 100 a 1000 e além. Esse dimensionamento ajudará o Chainlink ecossistema atingir seu objetivo de fornecer dados relevantes para smart contracts de forma abrangente e atender e antecipar as necessidades existentes e futuras.• Segurança aprimorada: ao armazenar relatórios intermediários, DONs reterão registros de comportamentos de nós para monitoramento e medição de alta fidelidade de seu desempenho e precisão, permitindo uma forte base empírica de sistemas de reputação para nós Chainlink. O FSS e o TEF permitirão a incorporação de feeds de preços com dados de transação de maneiras flexíveis que evitam ataques como front-running. (Explícito) staking reforçará a proteção criptoeconômica existente da segurança de feeds de dados. • Agilidade de alimentação: como sistemas agnósticos blockchain (na verdade, mais amplamente, sistemas agnósticos de consumo), DONs podem facilitar o fornecimento de feeds de dados para uma multiplicidade de sistemas confiáveis. Um único DON pode enviar um determinado feed simultaneamente para um conjunto de diferentes blockchains, eliminando a necessidade de redes oracle por cadeia e permitindo a rápida implantação de feeds existentes em novos blockchains e de adicionais feeds em blockchains atualmente atendidos. • Confidencialidade: A capacidade de realizar computação generalizada em um DON permite que cálculos em dados confidenciais ocorram off-chain, evitando on-chain exposição. Além disso, utilizando DECO ou Town Crier, é possível conseguir confidencialidade ainda mais forte, permitindo a geração de relatórios com base em dados que não são exposto até mesmo a nós DON. Consulte a Seção 4.3 e a Seção 4.5 para exemplos. Funções aleatórias verificáveis (VRFs): Vários tipos de DApps exigem uma fonte de aleatoriedade comprovadamente correta para permitir a verificação de sua própria operação justa. Tokens Não Fungíveis (NFTs) são um exemplo. A raridade dos recursos NFT em Aavegotchi [23] e Axie Infinity [35] é determinada por Chainlink VRF, assim como a distribuição de NFTs por meio de sorteios baseados em tickets em Cartões Ether [102]; a grande variedade de DApps de jogos cujos resultados são aleatórios; e instrumentos financeiros não convencionais, por exemplo, jogos de poupança sem perdas, como PoolTogether [89], que alocam fundos para vencedores aleatórios. Outros aplicativos blockchain e não blockchain também exigem segurança fontes de aleatoriedade, incluindo a seleção de comitês do sistema descentralizado e o execução de loterias. Embora os blocos hashes possam servir como uma fonte de aleatoriedade imprevisível, eles são vulneráveis à manipulação por mineradores adversários (e, até certo ponto, por usuários que enviam transações). Chainlink VRF [78] oferece uma alternativa consideravelmente mais segura. Um oracle possui um par de chaves privada/pública associado (sk, pk) cuja chave privada é mantida off-chain e cuja chave pública pk é publicada. Para gerar um valor aleatório, é aplica sk a uma semente imprevisível x fornecida por um contrato confiável (por exemplo, um bloco hash e parâmetros específicos do DApp) usando uma função F, produzindo y = Fsk(x) junto com um prova de correção. (Consulte [180] para o VRF disponível em Chainlink.) O que torna um VRF verificável é o fato de que com o conhecimento de pk é possível verificar a exatidão da prova e, portanto, de y. O valor y é consequentemente imprevisível para um adversário que não pode prever x ou aprender sk e é inviável para o serviço manipular.Chainlink VRF pode ser visto apenas como parte de uma família de aplicações que envolvem a custódia de chaves privadas off-chain. De forma mais geral, DONs podem oferecer segurança, armazenamento descentralizado de chaves individuais para aplicativos e/ou usuários e combinar esta capacidade com computação generalizada. O resultado é uma série de aplicações, de que damos alguns exemplos neste artigo, incluindo gerenciamento de chaves para Prova de Reservas (ver Seção 4.1) e para credenciais descentralizadas de usuários (e outras activos) (ver Secção 4.3). Guardiões: Chainlink Keepers [87] permitem que os desenvolvedores escrevam código para sistemas descentralizados execução de trabalhos fora da cadeia, geralmente para acionar a execução de smart contracts confiáveis. Antes do advento dos Keepers, era comum que os desenvolvedores operassem tais plataformas fora da cadeia. lógica, criando pontos de falha centralizados (bem como esforços de desenvolvimento duplicados consideráveis). Em vez disso, os Keepers fornecem uma estrutura fácil de usar para terceirização descentralizada dessas operações, possibilitando ciclos de desenvolvimento mais curtos e forte garantia de vivacidade e outras propriedades de segurança. Os Keepers podem apoiar qualquer de uma ampla variedade de objetivos desencadeadores, incluindo liquidação de empréstimos dependente do preço ou execução de transações financeiras, início dependente do tempo de lançamentos aéreos ou pagamentos em sistemas com colheita produtiva e assim por diante. Na estrutura DON, os iniciadores podem ser vistos como uma generalização dos Guardiões em vários sentidos. Os iniciadores podem fazer uso de adaptadores e, portanto, podem aproveitar uma biblioteca modularizada de interfaces para sistemas on-chain e off-chain, permitindo rápida desenvolvimento de funcionalidades seguras e sofisticadas. Iniciadores iniciam a computação em executáveis, que oferecem toda a versatilidade dos DONs, permitindo a ampla gama de serviços descentralizados que apresentamos neste artigo para aplicações on-chain e off-chain. 3.6.4 Reputação do nó/histórico de desempenho O ecossistema Chainlink existente documenta nativamente os históricos de desempenho de nós contribuintes na cadeia. Esse recurso deu origem a uma coleção de recursos orientados à reputação que ingerem, filtram e visualizam dados de desempenho de indivíduos. operadores de nós e feeds de dados. Os usuários podem consultar esses recursos para obter informações decisões na seleção de nós e monitorar a operação das redes existentes. Recursos semelhantes ajudarão os usuários a escolher DONs. Por exemplo, hoje em dia, os mercados sem permissão, como market.link, permitem que o nó operadores listem seus serviços oracle e ateste suas identidades fora da cadeia por meio serviços como Keybase [4], que vinculam o perfil de um nó em Chainlink ao seu nomes de domínio existentes e contas de mídia social do proprietário. Além disso, o desempenho ferramentas analíticas, como as disponíveis em market.link e reputação.link, permitem usuários visualizem estatísticas sobre o desempenho histórico de nós individuais, incluindo seus latência média de resposta, o desvio dos valores em seus relatórios dos valores de consenso retransmitidos na cadeia, receitas geradas, empregos realizados e muito mais. Essas ferramentas analíticas também permitir que os usuários rastreiem a adoção de várias redes oracle por outros usuários, uma forma deendosso implícito dos nós que protegem essas redes. O resultado é uma “rede de confiança” na qual, ao usar nós específicos, aplicações descentralizadas de alto valor criam um sinal de sua confiança nos nós que outros usuários podem observar e levar em consideração em seus próprias decisões de seleção de nós. Com DONs (e inicialmente com OCR) ocorre uma mudança no processamento de transações e atividade de contrato mais geralmente fora da cadeia. Um modelo descentralizado para nó de gravação o desempenho permanece possível dentro do próprio DON. Na verdade, o alto desempenho e a capacidade de dados de DONs tornam possível construir registros de maneira fina maneira e também para realizar computação descentralizada nesses registros, produzindo resumos confiáveis que podem ser consumidos por serviços de reputação e verificados em MAINCHAIN. Embora seja possível, em princípio, que um DON deturpe o comportamento dos nós constituintes se uma grande fração dos nós estiver corrompida, notamos que o coletivo o desempenho do próprio DON na entrega de dados on-chain é visível em MAINCHAIN e, portanto, não pode ser deturpada. Além disso, planejamos explorar mecanismos que incentivar relatórios internos precisos sobre o comportamento dos nós em um DON. Por exemplo, reportando o subconjunto de nós de alto desempenho que retornam mais rapidamente dados que contribuem para um relatório transmitido em cadeia, um DON cria um incentivo para os nós contestarem relatórios: incluir nós incorretamente neste subconjunto significa excluir nós incorretamente que deveriam ter sido incluídos e, portanto, penalizá-los inválidamente. Falhas repetidas de relatórios por parte de um DON também criariam um incentivo para que os nós honestos deixassem o DON. Compilação descentralizada de históricos de desempenho precisos e a consequente capacidade dos usuários de identificar nós de alto desempenho e de os operadores de nós construírem reputações são características distintivas importantes do ecossistema Chainlink. Nós mostrar na Seção 9 como podemos raciocinar sobre eles como uma peça-chave de uma abordagem rigorosa e visão expansiva da segurança econômica fornecida por DONs.
Giao diện mạng Oracle phi tập trung và Ca-
khả năng Ở đây chúng tôi phác thảo ngắn gọn các khả năng của DON theo cách đơn giản nhưng mạnh mẽ giao diện mà chúng được thiết kế để hiện thực hóa. Các ứng dụng trên DON bao gồm các tệp thực thi và bộ điều hợp. Một tệp thực thi là một chương trình có logic cốt lõi là chương trình xác định, tương tự như smart contract. Một tệp thực thi cũng có một số bộ khởi tạo đi kèm, các chương trình gọi mục nhập chỉ vào logic của tệp thực thi khi xảy ra các sự kiện được xác định trước—ví dụ: tại một số thời điểm nhất định (như công việc định kỳ), khi giá vượt qua một ngưỡng, v.v.—giống như Người giữ (xem Phần 3.6.3). Bộ điều hợp cung cấp giao diện cho các tài nguyên ngoài chuỗi và có thể được gọi bởi hoặc là bộ khởi tạo hoặc logic cốt lõi trong các tệp thực thi. Vì hành vi của họ có thể phụ thuộc vào điều đó của các tài nguyên bên ngoài, bộ khởi tạo và bộ điều hợp có thể hoạt động không mang tính xác định. Chúng tôi mô tả giao diện nhà phát triển DON cũng như chức năng của các tệp thực thi và bộ điều hợp theo ba tài nguyên thường được sử dụng để mô tả các hệ thống máy tính: mạng, tính toán và lưu trữ. Chúng tôi cung cấp một cái nhìn tổng quan ngắn gọn về mỗi trong số này các nguồn bên dưới và cung cấp thêm chi tiết trong Phụ lục B.

3.1 Mạng Bộ điều hợp là các giao diện mà qua đó các tệp thực thi chạy trên DON có thể gửi và nhận dữ liệu từ hệ thống off-DON. Bộ điều hợp có thể được xem như là sự khái quát hóa của các bộ chuyển đổi được sử dụng trong Chainlink hôm nay [20]. Bộ điều hợp có thể là hai chiều—tức là chúng không thể chỉ kéo mà còn đẩy dữ liệu từ DON tới máy chủ web. Họ cũng có thể tận dụng các giao thức phân tán cũng như chức năng mã hóa như bảo mật đa bên tính toán. Hình 9: Bộ điều hợp kết nối DON, ký hiệu là DON1, với nhiều loại tài nguyên khác nhau, bao gồm một DON khác, ký hiệu là DON2, blockchain (chuỗi chính) và của nó mempool, bộ nhớ ngoài, máy chủ web và thiết bị IoT (thông qua máy chủ web). Ví dụ về các tài nguyên bên ngoài mà bộ điều hợp có thể được tạo được hiển thị trong Hình 9. Chúng bao gồm: • Chuỗi khối: Bộ chuyển đổi có thể xác định cách gửi giao dịch tới blockchain và cách đọc các khối, giao dịch riêng lẻ hoặc trạng thái khác từ nó. Một bộ chuyển đổi cũng có thể được xác định cho mempool của blockchain. (Xem Phần 3.5.) • Máy chủ web: Bộ điều hợp có thể xác định API thông qua đó dữ liệu có thể được truy xuất từ các máy chủ web, bao gồm cả các hệ thống cũ không được điều chỉnh đặc biệt cho giao tiếp với DONs. Các bộ điều hợp như vậy cũng có thể bao gồm các API để gửi dữ liệu tới những máy chủ như vậy. Các máy chủ web mà DON kết nối có thể đóng vai trò là cổng tới các tài nguyên bổ sung, chẳng hạn như các thiết bị Internet-of-Things (IoT).• Bộ nhớ ngoài: Bộ điều hợp có thể xác định các phương thức đọc và ghi vào bộ lưu trữ dịch vụ bên ngoài DON, chẳng hạn như hệ thống tệp phi tập trung [40, 188] hoặc đám mây lưu trữ. • Các DON khác: Bộ điều hợp có thể truy xuất và truyền dữ liệu giữa DON. Chúng tôi hy vọng rằng việc triển khai ban đầu DON sẽ bao gồm một tập hợp các khối xây dựng bộ điều hợp cho các tài nguyên bên ngoài được sử dụng phổ biến như vậy và sẽ tiếp tục cho phép DON-cụ thể bộ điều hợp sẽ được xuất bản bởi nút DON. Khi smart contract nhà phát triển viết bộ điều hợp hôm nay, chúng tôi hy vọng rằng họ sẽ xây dựng các bộ điều hợp mạnh mẽ hơn nữa bằng cách sử dụng công cụ nâng cao này chức năng. Chúng tôi hy vọng rằng cuối cùng người dùng sẽ có thể tạo các bộ điều hợp mới theo cách cách không được phép. Một số bộ điều hợp phải được xây dựng theo cách đảm bảo tính ổn định và sẵn có của các tài nguyên bên ngoài do DON kiểm soát. Ví dụ: lưu trữ đám mây có thể yêu cầu duy trì tài khoản dịch vụ đám mây. Ngoài ra, DON có thể thực hiện quản lý phi tập trung các khóa riêng thay mặt cho người dùng (như trong, ví dụ: [160]) và/hoặc thực thi. Do đó, DON có khả năng kiểm soát các tài nguyên, chẳng hạn như tiền điện tử, có thể được sử dụng, ví dụ: để gửi giao dịch trên mục tiêu blockchain. Xem Phụ lục B.1 để biết thêm chi tiết về bộ điều hợp DON, như Phụ lục C cho một số bộ điều hợp bộ điều hợp ví dụ. 3.2 tính toán Tệp thực thi là đơn vị mã cơ bản trên DON. Một tệp thực thi là một cặp exec = (lôgic, khởi tạo). Ở đây, logic là một chương trình xác định với một số mục được chỉ định các điểm (logic1, logic2, . . . , logicℓ) và init là tập hợp các điểm khởi tạo tương ứng (init1, init2,..., inite). Để đảm bảo khả năng kiểm tra đầy đủ của DON, logic của tệp thực thi sử dụng sổ cái cơ bản L cho tất cả các đầu vào và đầu ra. Vì vậy, ví dụ, bất kỳ bộ chuyển đổi nào dữ liệu phục vụ làm đầu vào cho một tệp thực thi phải được lưu trữ trước tiên trên L. Người khởi xướng: Những người khởi tạo trong Chainlink hôm nay thực hiện các công việc phụ thuộc vào sự kiện trên Chainlink nút [21]. Các bộ khởi tạo trong DONs hoạt động theo cách tương tự. Tuy nhiên, trình khởi tạo DON được liên kết cụ thể với một tệp thực thi. Người khởi xướng có thể phụ thuộc trên một sự kiện hoặc trạng thái bên ngoài, vào thời điểm hiện tại hoặc trên một vị từ trên trạng thái DON. Với sự phụ thuộc vào các sự kiện, những người khởi xướng tất nhiên có thể hành xử không mang tính xác định. (tất nhiên là có thể có bộ điều hợp). Trình khởi tạo có thể thực thi trong các nút DON riêng lẻ và do đó không cần phải dựa vào bộ chuyển đổi. (Xem ví dụ 1 bên dưới.) Trình khởi tạo là một tính năng quan trọng để phân biệt các tệp thực thi với smart contracts. Bởi vì một tập tin thực thi có thể chạy để phản hồi lại một bộ khởi tạo nên nó có thể hoạt động một cách hiệu quả. một cách tự chủ, tất nhiên bằng cách mở rộng, một hợp đồng kết hợp có thể kết hợp với tệp thực thi. Một dạng người khởi xướng hiện nay là Chainlink Người giữ, cung cấp giao dịchdịch vụ tự động hóa, kích hoạt smart contract thực thi—chẳng hạn như thanh lý các khoản vay không được thế chấp và thực hiện các giao dịch theo lệnh giới hạn—dựa trên báo cáo oracle. Thuận tiện, những người khởi xướng trong DON cũng có thể được xem như một cách chỉ định các thỏa thuận dịch vụ áp dụng cho một tệp thực thi, vì chúng xác định các trường hợp theo mà DON phải gọi nó. Ví dụ sau minh họa cách hoạt động của các trình khởi tạo trong một tệp thực thi: Ví dụ 1 (Nguồn cấp giá kích hoạt sai lệch). smart contract SC có thể yêu cầu mới dữ liệu nguồn cấp giá (xem Phần 3.6.3) bất cứ khi nào có thay đổi đáng kể, ví dụ: 1%, trong tỷ giá hối đoái giữa một cặp tài sản, ví dụ: ETH-USD. Giá nhạy cảm với biến động nguồn cấp dữ liệu được hỗ trợ trong Chainlink ngày hôm nay nhưng sẽ mang tính hướng dẫn để xem chúng có thể hoạt động như thế nào được thực hiện trên DON bằng nguồn cấp dữ liệu thực thi. Nguồn cấp dữ liệu thực thi duy trì giá ETH-USD gần đây nhất r trên L, trong dạng một chuỗi gồm ⟨NewPrice : j, r⟩entries, trong đó j là chỉ số tăng theo mỗi lần cập nhật giá. Trình khởi tạo init1 khiến mỗi nút Oi theo dõi giá ETH-USD hiện tại cho sai lệch ít nhất 1% so với giá lưu trữ gần đây nhất r với chỉ số j. Khi phát hiện ra sự sai lệch như vậy, Oi viết quan điểm hiện tại của mình về giá mới vào L bằng cách sử dụng mục nhập có dạng ⟨PriceView : i, j + 1, ri⟩. Trình khởi tạo thứ hai init2 kích hoạt khi có ít nhất k mục nhập PriceView như vậy với giá mới các giá trị cho chỉ mục j + 1 được tạo bởi các nút riêng biệt đã tích lũy trên L. Sau đó, init2 gọi một điểm vào logic2 để tính trung bình ρ của k giá trị xem giá hợp lệ, mới đầu tiên và ghi một giá trị mới ⟨NewPrice : j + 1, ρ⟩to L . (Về mặt hoạt động, các nút có thể thay phiên nhau làm người viết được chỉ định.) Trình khởi tạo thứ ba init3 theo dõi các mục NewPrice trên L. Bất cứ khi nào có báo cáo mới ⟨NewPrice : j, r⟩xuất hiện ở đó, nó gọi một điểm vào logic3 đẩy (j, r) tới SC sử dụng một bộ chuyển đổi. Như chúng tôi đã lưu ý, một tệp thực thi có khả năng tương tự như smart contract. Tuy nhiên, ngoài hiệu suất cao hơn, nó khác với hợp đồng chuỗi chính điển hình theo hai cách thiết yếu: 1. Tính bảo mật: Một tệp thực thi có thể thực hiện tính toán bí mật, tức là một chương trình bí mật có thể xử lý các đầu vào văn bản rõ ràng hoặc một chương trình đã xuất bản có thể xử lý dữ liệu đầu vào bí mật hoặc kết hợp cả hai. Trong một mô hình đơn giản, dữ liệu bí mật có thể được truy cập bởi các nút DON, nút này che giấu các kết quả trung gian và chỉ tiết lộ các giá trị được xử lý và khử trùng vào MAINCHAIN. Cũng có thể che giấu dữ liệu nhạy cảm khỏi chính DON: DON nhằm hỗ trợ các phương pháp tiếp cận như dưới dạng tính toán nhiều bên, ví dụ: [42, 157] và môi trường thực thi đáng tin cậy (TEE) [84, 133, 152, 229] cho mục đích này.6 6Bằng tiện ích mở rộng, cũng có thể giữ bí mật các tệp thực thi đối với các nút DON, mặc dù ngày nay điều này chỉ thực tế đối với các tệp thực thi không tầm thường sử dụng TEE.2. Vai trò hỗ trợ: Một tệp thực thi có nghĩa là hỗ trợ smart contract trên main chuỗi, thay vì thay thế chúng. Một tệp thực thi có một số hạn chế mà một smart contract không: (a) Mô hình tin cậy: Một tệp thực thi hoạt động trong mô hình tin cậy được xác định bởi DON: Việc thực thi chính xác dựa vào hành vi trung thực của O. (A main Tuy nhiên, chuỗi có thể cung cấp một số biện pháp bảo vệ chống lại sự cố DON, như được thảo luận trong Phần 7.3.) (b) Quyền truy cập tài sản: DON có thể kiểm soát tài khoản trên blockchain—và do đó kiểm soát tài sản trên đó thông qua một bộ chuyển đổi. Nhưng DON không thể có thẩm quyền đại diện cho các tài sản được tạo trên chuỗi chính, ví dụ: Ether hoặc ERC20 tokens, vì chuỗi gốc của họ duy trì hồ sơ có thẩm quyền về quyền sở hữu của họ. (c) Vòng đời: DON có thể được thiết lập có chủ ý với thời gian tồn tại giới hạn, vì được xác định bởi các thỏa thuận cấp độ dịch vụ trên chuỗi giữa DONs và chủ sở hữu dựa vào các hợp đồng. Ngược lại, chuỗi khối có nghĩa là hoạt động như hệ thống lưu trữ cố định. Xem Phụ lục B.2 để biết thêm chi tiết về tính toán DON. 3.3 Lưu trữ Là một hệ thống dựa trên ủy ban, DON có thể lưu trữ lượng dữ liệu vừa phải một cách liên tục trên L với chi phí thấp hơn nhiều so với blockchain không được phép. Ngoài ra, thông qua bộ điều hợp, DONs có thể tham chiếu các hệ thống phi tập trung bên ngoài để lưu trữ dữ liệu, ví dụ: Filecoin [85], và do đó có thể kết nối các hệ thống đó với smart contracts. Tùy chọn này đặc biệt hấp dẫn đối với dữ liệu số lượng lớn như một phương tiện giải quyết vấn đề phổ biến về “sự phình to” trong blockchain hệ thống. DONs do đó có thể lưu trữ dữ liệu cục bộ hoặc bên ngoài để sử dụng trong các dịch vụ được hỗ trợ cụ thể của chúng. DON cũng có thể sử dụng dữ liệu đó theo cách bí mật, tính toán trên dữ liệu: (1) được chia sẻ bí mật trên DON nút hoặc được mã hóa theo khóa được quản lý bởi các nút DON theo cách phù hợp để tính toán an toàn cho nhiều bên hoặc mã hóa đồng cấu một phần hoặc toàn bộ; hoặc (2) được bảo vệ bằng cách thực thi đáng tin cậy môi trường. Chúng tôi hy vọng rằng DONs sẽ áp dụng mô hình quản lý bộ nhớ đơn giản phổ biến cho hệ thống hợp đồng thông minh: Một tệp thực thi chỉ có thể ghi vào bộ nhớ của chính nó. Thực thi tuy nhiên, có thể đọc từ bộ nhớ của các tệp thực thi khác. Xem Phụ lục B.3 để biết thêm chi tiết về bộ lưu trữ DON. 3,4 Khung thực thi giao dịch (TEF) DON nhằm mục đích hỗ trợ các hợp đồng trên chuỗi chính MAINCHAIN (hoặc trên nhiều chuỗi chính). Khung thực thi giao dịch (TEF), được thảo luận chi tiếttrong Phần 6, là một cách tiếp cận có mục đích chung để thực hiện hợp đồng một cách hiệu quả SC trên MAINCHAIN và DON. TEF nhằm hỗ trợ FSS và lớp 2 công nghệ—đồng thời, nếu muốn. Thật vậy, nó có khả năng đóng vai trò là phương tiện chính để sử dụng FSS (và vì lý do đó, chúng tôi không thảo luận thêm về FSS trong phần này). Tóm lại, trong TEF, hợp đồng mục tiêu ban đầu được SC thiết kế hoặc phát triển cho MAINCHAIN được tái cấu trúc thành một hợp đồng lai. Việc tái cấu trúc này tạo ra hai khả năng tương tác các phần của hợp đồng kết hợp: hợp đồng MAINCHAIN SCa mà chúng tôi đề cập đến để hiểu rõ hơn trong bối cảnh TEF dưới dạng hợp đồng cố định và người thực thi có thể thực thi trên DON. các hợp đồng SCa giám sát tài sản của người dùng, thực hiện chuyển đổi trạng thái có thẩm quyền, đồng thời cung cấp các thanh chắn bảo vệ (xem Phần 7.3) chống lại các hư hỏng trong DON. Các nhà thực thi thực thi sắp xếp các giao dịch và cung cấp dữ liệu oracle liên quan cho chúng. Nó có thể bó giao dịch cho SCa theo bất kỳ cách nào—ví dụ: sử dụng dựa trên bằng chứng xác thực hoặc lạc quan rollups, thực thi bí mật bởi DON, v.v. Chúng tôi mong muốn phát triển các công cụ giúp nhà phát triển dễ dàng phân chia hợp đồng SC được viết bằng ngôn ngữ cấp cao thành các phần logic MAINCHAIN và DON, SCa và thực thi tương ứng, soạn thảo một cách an toàn và hiệu quả. Sử dụng TEF để tích hợp các sơ đồ giao dịch hiệu suất cao với các chương trình hiệu suất cao oracles là không thể thiếu đối với phương pháp mở rộng quy mô oracle của chúng tôi. 3,5 Dịch vụ Mempool Một tính năng quan trọng của lớp ứng dụng mà chúng tôi dự định triển khai trên DON để hỗ trợ của FSS và TEF là Dịch vụ Mempool (MS). MS có thể được xem như một bộ chuyển đổi, nhưng một với sự hỗ trợ hạng nhất. MS cung cấp hỗ trợ cho việc xử lý giao dịch tương thích với kế thừa. Trong việc sử dụng này, MS nhập vào từ bộ nhớ của chuỗi chính những giao dịch dành cho hợp đồng mục tiêu SC trên MAINCHAIN. Sau đó MS chuyển các giao dịch này tới một tệp thực thi trên DON, nơi chúng được xử lý theo cách mong muốn. Dữ liệu MS có thể được sử dụng bởi DON để soạn các giao dịch mà sau đó có thể được chuyển trực tiếp tới SC từ DON hoặc tới một hợp đồng khác gọi SC. Ví dụ: DON có thể chuyển tiếp giao dịch được thu thập thông qua MS hoặc nó có thể sử dụng dữ liệu MS để đặt giá gas cho các giao dịch mà nó gửi tới CHUỖI MAIN. Vì nó giám sát mempool nên MS có thể thu được các giao dịch từ người dùng tương tác trực tiếp với SC. Do đó, người dùng có thể tiếp tục tạo giao dịch của mình bằng cách sử dụng phần mềm cũ, tức là các ứng dụng không biết đến sự tồn tại của MS và được cấu hình MS hợp đồng. (Trong trường hợp này, SC phải được thay đổi để bỏ qua các giao dịch ban đầu và chỉ chấp nhận những dữ liệu được MS xử lý để tránh xử lý kép.) Để sử dụng với hợp đồng mục tiêu SC, MS có thể được sử dụng với FSS và/hoặc TEF.3.6 Bước đệm: Khả năng Chainlink hiện có 3.6.1 Báo cáo ngoài chuỗi (OCR) Báo cáo chuỗi Off (OCR) [60] là một cơ chế trong Chainlink để tổng hợp và truyền báo cáo oracle tới SC hợp đồng dựa trên. Được triển khai gần đây với giá Chainlink mạng nguồn cấp dữ liệu, nó thể hiện bước đầu tiên trên đường dẫn đến DON đầy đủ. Về cốt lõi, OCR là giao thức BFT được thiết kế để hoạt động ở chế độ đồng bộ một phần mạng. Nó đảm bảo tính sống động và đúng đắn khi có mặt f < n/3 một cách tùy ý các nút bị lỗi, đảm bảo các đặc tính của chương trình phát sóng đáng tin cậy của Byzantine, nhưng không phải vậy một giao thức đồng thuận BFT hoàn chỉnh. Các nút không duy trì nhật ký tin nhắn nhất quán theo nghĩa đại diện cho một sổ cái giống hệt nhau về mọi quan điểm của họ, và người đứng đầu giao thức có thể lập lờ mà không vi phạm an toàn. OCR hiện được thiết kế cho một loại thông báo cụ thể: tổng hợp trung bình của (ít nhất 2f +1) giá trị được báo cáo bởi các nút tham gia. Nó cung cấp một sự đảm bảo quan trọng về các báo cáo mà nó xuất ra cho SC, được gọi là các báo cáo được chứng thực: Giá trị trung bình trong một báo cáo được chứng thực báo cáo bằng hoặc nằm giữa các giá trị được báo cáo bởi hai nút trung thực. Tài sản này là điều kiện an toàn chính cho OCR. Người lãnh đạo có thể có một số ảnh hưởng ở mức trung bình giá trị trong một báo cáo được chứng thực, nhưng chỉ tuân theo điều kiện về tính chính xác này. OCR có thể được mở rộng cho các loại thông báo tổng hợp các giá trị theo nhiều cách khác nhau. Mặc dù mục tiêu về tính chính xác và hoạt động của mạng Chainlink ngày nay không yêu cầu OCR là một giao thức đồng thuận toàn diện, chúng yêu cầu OCR cung cấp một số dạng chức năng bổ sung không có trong các giao thức BFT thông thường, đáng chú ý nhất là: 1. Phát báo cáo ngoài chuỗi tất cả hoặc không có gì: OCR đảm bảo rằng báo cáo được chứng thực được cung cấp nhanh chóng cho tất cả các nút trung thực hoặc không nút nào trong số chúng. Đây là một sự công bằng thuộc tính giúp đảm bảo rằng các nút trung thực có cơ hội tham gia trong việc truyền báo cáo được chứng thực. 2. Đường truyền đáng tin cậy: OCR đảm bảo, ngay cả khi có lỗi hoặc độc hại các nút, rằng tất cả các báo cáo và tin nhắn OCR được truyền đến SC trong một khoảng thời gian nhất định, khoảng thời gian được xác định trước. Đây là một tài sản sống động. 3. Giảm thiểu độ tin cậy dựa trên hợp đồng: SC lọc ra các báo cáo do OCR tạo có khả năng sai sót, ví dụ: nếu giá trị được báo cáo của chúng sai lệch đáng kể so với các báo cáo khác những cái đã nhận được gần đây. Đây là một hình thức thực thi tính đúng đắn của giao thức bổ sung. Cả ba thuộc tính này sẽ đóng vai trò tự nhiên trong DONs. Chương trình phát sóng tất cả hoặc không có gì trên chuỗi (DON) là một khối xây dựng quan trọng để đảm bảo kinh tế tiền điện tử xung quanh việc truyền tải đáng tin cậy, do đó đây là một thuộc tính thiết yếu của bộ điều hợp. Tin tưởng giảm thiểu trong SC là một loại đường ray bảo vệ, như được thảo luận trong Phần 7.3. OCR cũng cung cấp cơ sở cho việc triển khai hoạt động và cải tiến các giao thức BFT trong mạng oracle của Chainlink và do đó, như đã lưu ý ở trên, một đường dẫn đến toàn bộ chức năng của DONs.3.6.2 DECO và Town Crier DECO [234] và Town Crier [233] là một cặp công nghệ liên quan hiện đang được sử dụng được phát triển trong mạng Chainlink. Hầu hết các máy chủ web ngày nay đều cho phép người dùng kết nối qua kênh bảo mật bằng giao thức được gọi là Bảo mật lớp vận chuyển (TLS) [94]. (HTTPS biểu thị một biến thể của HTTP được bật bằng TLS, tức là các URL có tiền tố “https” biểu thị việc sử dụng TLS để bảo mật.) Tuy nhiên, hầu hết các máy chủ hỗ trợ TLS đều có một hạn chế đáng chú ý: Chúng không ký điện tử dữ liệu. Do đó, người dùng hoặc Prover không thể hiển thị dữ liệu cô ấy nhận được từ máy chủ cho bên thứ ba hoặc Người xác minh, chẳng hạn như oracle hoặc smart contract, theo cách đảm bảo tính xác thực của dữ liệu. Ngay cả khi máy chủ ký dữ liệu bằng chữ ký điện tử thì vẫn có vấn đề về tính bảo mật. Nhà cung cấp có thể muốn biên tập lại hoặc sửa đổi dữ liệu nhạy cảm trước khi trình bày nó với Người xác minh. Tuy nhiên, chữ ký số được thiết kế đặc biệt để vô hiệu hóa dữ liệu đã sửa đổi. Do đó, chúng ngăn cản Prover thực hiện các thay đổi bảo đảm tính bảo mật tới dữ liệu. (Xem Phần 7.1 để thảo luận thêm.) DECO và Town Crier được thiết kế để cho phép Prover lấy dữ liệu từ trang web máy chủ và trình nó cho Người xác minh theo cách đảm bảo tính toàn vẹn và bảo mật. Hai hệ thống duy trì tính toàn vẹn theo nghĩa là chúng đảm bảo rằng dữ liệu được trình bày bởi Prover cho Verifier có nguồn gốc xác thực từ máy chủ mục tiêu. Họ hỗ trợ tính bảo mật theo nghĩa cho phép Prover biên tập lại hoặc sửa đổi dữ liệu (trong khi vẫn bảo toàn tính toàn vẹn). Đặc điểm chính của cả hai hệ thống là chúng không yêu cầu bất kỳ sửa đổi nào đối với máy chủ web mục tiêu. Họ có thể hoạt động với bất kỳ máy chủ hỗ trợ TLS hiện có nào. Trên thực tế, chúng minh bạch đối với máy chủ: Từ quan điểm của máy chủ, Prover là thiết lập một kết nối thông thường. Hai hệ thống này có các mục tiêu tương tự nhau, nhưng khác nhau về mô hình tin cậy và cách triển khai như chúng tôi sẽ giải thích ngắn gọn. DECO sử dụng cơ bản các giao thức mã hóa để đạt được tính toàn vẹn của nó và các thuộc tính bảo mật. Trong khi thiết lập phiên với máy chủ mục tiêu bằng DECO, Prover đồng thời tham gia vào một giao thức tương tác với Người xác minh. Giao thức này cho phép Người chứng minh chứng minh với Người xác minh rằng nó đã nhận được một phần dữ liệu D nhất định từ máy chủ trong phiên hiện tại của nó. Người Prover có thể hoặc đưa ra cho Người xác minh bằng chứng không có kiến thức về một số thuộc tính của D và do đó không tiết lộ trực tiếp D. Trong cách sử dụng DECO thông thường, người dùng hoặc một nút có thể xuất dữ liệu D từ một máy chủ riêng tư. phiên với máy chủ web tới tất cả các nút trong DON. Kết quả là toàn bộ DON có thể chứng thực tính xác thực của D (hoặc một sự thật bắt nguồn từ D thông qua bằng chứng không có kiến thức). Ngoài các ứng dụng ví dụ được đưa ra sau trong bài viết, khả năng này có thể được được sử dụng để khuếch đại quyền truy cập có tính toàn vẹn cao vào nguồn dữ liệu bằng DON. Ngay cả khi chỉ có một nút có quyền truy cập trực tiếp vào nguồn dữ liệu—ví dụ: do một thỏa thuận độc quyền với nhà cung cấp dữ liệu—toàn bộ DON vẫn có thể chứng thực tính đúng đắn củacác báo cáo được phát ra bởi nút đó. Town Crier dựa vào việc sử dụng môi trường thực thi đáng tin cậy (TEE) như Intel SGX. Tóm lại, TEE hoạt động như một loại hộp đen thực thi các ứng dụng trong một môi trường cách chống giả mạo và bí mật. Về nguyên tắc, ngay cả chủ sở hữu máy chủ lưu trữ trên đó TEE đang chạy không thể (không thể phát hiện) làm thay đổi ứng dụng được bảo vệ bởi TEE cũng như không xem trạng thái của ứng dụng, có thể bao gồm dữ liệu bí mật. Town Crier có thể đạt được tất cả chức năng của DECO và hơn thế nữa. DECO hạn chế Nhà cung cấp tương tác với một Người xác minh duy nhất. Ngược lại, Town Crier cho phép Nhà cung cấp tạo ra bằng chứng có thể xác minh công khai về dữ liệu D được tìm nạp từ máy chủ mục tiêu, tức là bằng chứng cho thấy bất kỳ ai, kể cả smart contract, đều có thể xác minh trực tiếp. Town Crier có thể cũng nhập và sử dụng các bí mật một cách an toàn (ví dụ: thông tin xác thực của người dùng). Hạn chế chính của Town Crier là sự phụ thuộc vào TEE. TEE sản xuất có gần đây đã được chứng minh là có một số lỗ hổng nghiêm trọng, mặc dù công nghệ này vẫn còn ở giai đoạn sơ khai và chắc chắn sẽ trưởng thành. Xem Phụ lục B.2.1 và B.2.2 để biết thảo luận thêm về TEE. Để biết một số ứng dụng mẫu của DECO và Town Crier, hãy xem Phần 4.3, 4.5 và 9.4.3 và Phụ lục C.1. 3.6.3 Dịch vụ trên chuỗi hiện có Chainlink Chainlink oracle mạng cung cấp một số dịch vụ chính trên nhiều mạng blockchains và các hệ thống phi tập trung khác hiện nay. Sự tiến hóa hơn nữa như mô tả trong sách trắng này sẽ cung cấp cho các dịch vụ hiện có này những khả năng và đạt được. Ba ví dụ là: Nguồn cấp dữ liệu: Ngày nay, phần lớn Chainlink người dùng dựa vào smart contracts thực hiện việc sử dụng nguồn cấp dữ liệu. Đây là những báo cáo về giá trị hiện tại của các phần dữ liệu quan trọng theo đến các nguồn có thẩm quyền ngoài chuỗi. Ví dụ: nguồn cấp dữ liệu giá là nguồn cấp dữ liệu báo cáo giá về tài sản—tiền điện tử, hàng hóa, ngoại hối, chỉ số, cổ phiếu, v.v.—theo dịch vụ trao đổi hoặc tổng hợp dữ liệu. Những nguồn cấp dữ liệu như vậy ngày nay đã giúp đảm bảo hàng tỷ giá trị đô la trên chuỗi thông qua việc sử dụng chúng trong các hệ thống DeFi như Aave [147] và Tổng hợp [208]. Các ví dụ khác về nguồn cấp dữ liệu Chainlink bao gồm dữ liệu thời tiết cho bảo hiểm cây trồng tham số [75] và dữ liệu bầu cử [93], cùng một số dữ liệu khác. Việc triển khai DON và các công nghệ khác được mô tả trong bài viết này sẽ tăng cường việc cung cấp nguồn cấp dữ liệu trong mạng Chainlink theo nhiều cách, bao gồm: • Mở rộng quy mô: OCR và sau đó là DON nhằm mục đích cho phép các dịch vụ Chainlink mở rộng quy mô đáng kể trên nhiều blockchain mà họ hỗ trợ. Ví dụ, chúng tôi mong đợi DON sẽ giúp tăng số lượng nguồn cấp dữ liệu do các nút cung cấp bằng cách sử dụng Chainlink từ 100 đến 1000 và hơn thế nữa. Việc chia tỷ lệ như vậy sẽ giúp Chainlink hệ sinh thái đạt được mục tiêu cung cấp dữ liệu liên quan đến smart contract một cách toàn diện, đồng thời vừa đáp ứng vừa dự đoán các nhu cầu hiện tại và tương lai.• Bảo mật nâng cao: Bằng cách lưu trữ các báo cáo trung gian, DONs sẽ giữ lại các bản ghi về hành vi của nút để theo dõi và đo lường độ chính xác cao về hiệu suất và độ chính xác của chúng, tạo nền tảng thực nghiệm vững chắc cho các hệ thống danh tiếng cho các nút Chainlink. FSS và TEF sẽ cho phép kết hợp nguồn cấp dữ liệu giá với dữ liệu giao dịch theo những cách linh hoạt để ngăn chặn các cuộc tấn công như chạy trước. (Rõ ràng) staking sẽ tăng cường bảo vệ an ninh kinh tế tiền điện tử hiện có của nguồn cấp dữ liệu. • Tính linh hoạt của nguồn cấp dữ liệu: Vì blockchain hệ thống bất khả tri (thực ra, rộng hơn là hệ thống bất khả tri về người tiêu dùng), DONs có thể tạo điều kiện thuận lợi cho việc cung cấp nguồn cấp dữ liệu cho nhiều nơi của các hệ thống dựa vào. Một DON có thể đẩy đồng thời một nguồn cấp dữ liệu nhất định vào một tập hợp của blockchain khác nhau, loại bỏ nhu cầu về mạng oracle trên mỗi chuỗi và cho phép triển khai nhanh chóng các nguồn cấp dữ liệu hiện có trên blockchain mới và các nguồn cấp dữ liệu bổ sung nguồn cấp dữ liệu trên blockchain hiện được phục vụ. • Tính bảo mật: Khả năng thực hiện tính toán tổng quát trong DON cho phép tính toán trên dữ liệu nhạy cảm diễn ra ngoài chuỗi, tránh xảy ra trên chuỗi tiếp xúc. Ngoài ra, bằng cách sử dụng DECO hoặc Town Crier, có thể đạt được tính bảo mật thậm chí còn mạnh mẽ hơn, cho phép tạo báo cáo dựa trên dữ liệu không chính xác tiếp xúc ngay cả với các nút DON. Xem Phần 4.3 và Phần 4.5 để biết ví dụ. Hàm ngẫu nhiên có thể xác minh (VRF): Một số loại DApp yêu cầu nguồn ngẫu nhiên chính xác có thể xác minh được để cho phép xác minh hoạt động công bằng của chính chúng. Mã thông báo không thể thay thế (NFTs) là một ví dụ. Độ hiếm của các tính năng NFT trong Aavegotchi [23] và Axie Infinity [35] được xác định bởi Chainlink VRF, cũng như sự phân bố trong số NFT bằng cách rút thăm dựa trên vé trong Thẻ Ether [102]; sự đa dạng của DApp chơi game có kết quả ngẫu nhiên; và các công cụ tài chính độc đáo, ví dụ: trò chơi tiết kiệm không thua lỗ như PoolTogether [89], phân bổ vốn cho người chiến thắng ngẫu nhiên. Các ứng dụng blockchain và không phảiblockchain khác cũng yêu cầu bảo mật nguồn ngẫu nhiên, bao gồm việc lựa chọn các ủy ban hệ thống phi tập trung và thực hiện xổ số. Mặc dù các khối hash có thể đóng vai trò là nguồn ngẫu nhiên không thể đoán trước nhưng chúng dễ bị thao túng bởi những người khai thác đối nghịch (và ở một mức độ nào đó bởi người dùng gửi giao dịch). Chainlink VRF [78] cung cấp giải pháp thay thế an toàn hơn đáng kể. Một oracle có cặp khóa riêng/chung được liên kết (sk, pk) có khóa riêng được duy trì ngoài chuỗi và khóa chung pk được công bố. Để xuất ra một giá trị ngẫu nhiên, nó áp dụng sk cho hạt giống x không thể đoán trước được cung cấp bởi một hợp đồng dựa trên (ví dụ: khối hash và các tham số dành riêng cho DApp) bằng cách sử dụng hàm F, mang lại y = Fsk(x) cùng với a bằng chứng về tính đúng đắn. (Xem [180] để biết VRF có sẵn trên Chainlink.) Điều gì tạo nên một VRF có thể kiểm chứng được là thực tế là với kiến thức về pk, có thể kiểm tra tính đúng đắn của chứng minh và do đó của y. Do đó, giá trị y không thể đoán trước được đối với một đối thủ không thể dự đoán x hoặc tìm hiểu sk và dịch vụ không thể thao túng.Chainlink VRF có thể được xem chỉ là một trong nhóm ứng dụng liên quan đến việc giám sát các khóa riêng tư trên chuỗi. Tổng quát hơn, DON có thể cung cấp tính bảo mật, lưu trữ phi tập trung các khóa riêng lẻ cho ứng dụng và/hoặc người dùng và kết hợp khả năng này với tính toán tổng quát. Kết quả là một loạt các ứng dụng, mà chúng tôi đưa ra một số ví dụ trong bài viết này, bao gồm quản lý khóa cho Bằng chứng về Dự trữ (xem Phần 4.1) và thông tin xác thực phi tập trung của người dùng (và các thông tin kỹ thuật số khác tài sản) (xem Phần 4.3). Người giữ: Chainlink Keepers [87] cho phép các nhà phát triển viết mã cho phi tập trung thực thi các công việc ngoài chuỗi, thường là để kích hoạt thực thi các smart contract dựa vào. Trước khi Keepers ra đời, các nhà phát triển thường vận hành những ứng dụng ngoài chuỗi như vậy logic, tạo ra các điểm thất bại tập trung (cũng như nỗ lực phát triển trùng lặp đáng kể). Thay vào đó, Keepers cung cấp một khuôn khổ dễ sử dụng cho gia công phần mềm phi tập trung cho các hoạt động này, cho phép chu kỳ phát triển ngắn hơn và đảm bảo mạnh mẽ về tính sống động và các đặc tính bảo mật khác. Người giữ có thể hỗ trợ bất kỳ của nhiều mục tiêu kích hoạt khác nhau, bao gồm việc thanh lý các khoản vay hoặc thực hiện các giao dịch tài chính, bắt đầu các đợt airdrop hoặc thanh toán phụ thuộc vào thời gian trong các hệ thống thu hoạch năng suất, v.v. Trong khuôn khổ DON, người khởi xướng có thể được xem là sự khái quát hóa của Người quản lý theo một số nghĩa. Người khởi xướng có thể sử dụng các bộ điều hợp và do đó có thể tận dụng thư viện giao diện được mô-đun hóa cho các hệ thống trên chuỗi và ngoài chuỗi, cho phép nhanh chóng phát triển các chức năng an toàn, phức tạp. Người khởi xướng bắt đầu tính toán trong các tệp thực thi, bản thân chúng cung cấp tính linh hoạt đầy đủ của DON, cho phép phạm vi rộng một loạt các dịch vụ phi tập trung mà chúng tôi trình bày trong bài viết này dành cho các ứng dụng trên chuỗi và ngoài chuỗi. 3.6.4 Danh tiếng nút / Lịch sử hiệu suất Hệ sinh thái Chainlink hiện tại ghi lại lịch sử hiệu suất của các nút đóng góp trên chuỗi. Tính năng này đã tạo ra một tập hợp các tài nguyên định hướng danh tiếng để thu thập, lọc và trực quan hóa dữ liệu hiệu suất trên từng cá nhân. nhà khai thác nút và nguồn cấp dữ liệu. Người dùng có thể tham khảo các tài nguyên này để cung cấp thông tin quyết định trong việc lựa chọn các nút và giám sát hoạt động của các mạng hiện có. Khả năng tương tự sẽ giúp người dùng chọn DONs. Ví dụ: các thị trường không được phép ngày nay như market.link cho phép nút nhà khai thác liệt kê các dịch vụ oracle của họ và chứng thực danh tính ngoài chuỗi của họ thông qua các dịch vụ như Keybase [4], liên kết hồ sơ của một nút trong Chainlink với nó tên miền và tài khoản truyền thông xã hội hiện có của chủ sở hữu. Ngoài ra, hiệu suất các công cụ phân tích, chẳng hạn như các công cụ có sẵn tại market.link và uy tín.link, cho phép người dùng xem số liệu thống kê về hiệu suất lịch sử của các nút riêng lẻ, bao gồm cả nút của họ độ trễ phản hồi trung bình, độ lệch của các giá trị trong báo cáo của họ so với giá trị đồng thuận được chuyển tiếp trên chuỗi, doanh thu được tạo ra, công việc được hoàn thành, v.v. Những công cụ phân tích này cũng cho phép người dùng theo dõi việc sử dụng các mạng oracle khác nhau của những người dùng khác, một dạngsự chứng thực ngầm định của các nút bảo vệ các mạng như vậy. Kết quả là một “mạng lưới” phẳng tin cậy”, trong đó, bằng cách sử dụng các nút cụ thể, các ứng dụng phi tập trung có giá trị cao sẽ tạo ra một tín hiệu về sự tin tưởng của họ đối với các nút đó mà người dùng khác có thể quan sát và tính đến quyết định lựa chọn nút riêng. Với DONs (và ban đầu là OCR) dẫn đến sự thay đổi trong xử lý giao dịch và hoạt động hợp đồng nói chung hơn là ngoài chuỗi. Một mô hình phi tập trung cho nút ghi vẫn có thể thực hiện được hiệu suất trong chính DON. Quả thực, hiệu suất cao và dung lượng dữ liệu DONs giúp có thể xây dựng các bản ghi ở dạng chi tiết cách và cũng để thực hiện tính toán phi tập trung trên các hồ sơ này, mang lại những bản tóm tắt đáng tin cậy có thể được sử dụng bởi các dịch vụ danh tiếng và được kiểm tra trên CHUỖI MAIN. Mặc dù về nguyên tắc DON có thể trình bày sai hành vi của các nút cấu thành nếu một phần lớn các nút bị hỏng, chúng tôi lưu ý rằng tập thể hiệu suất của chính DON trong việc phân phối dữ liệu trên chuỗi được hiển thị trên MAINCHAIN và do đó không thể bị trình bày sai. Ngoài ra, chúng tôi dự định khám phá các cơ chế khuyến khích báo cáo nội bộ chính xác về hành vi của nút trong DON. Ví dụ: bằng cách báo cáo tập hợp con các nút có hiệu suất cao trả về dữ liệu đóng góp nhanh nhất đối với một báo cáo được chuyển tiếp trên chuỗi, DON tạo động lực cho các nút tranh chấp không chính xác báo cáo: Việc bao gồm các nút trong tập hợp con này không chính xác có nghĩa là loại trừ các nút không chính xác điều đó lẽ ra phải được đưa vào và do đó trừng phạt họ một cách vô hiệu. Việc DON báo cáo lỗi lặp đi lặp lại cũng sẽ tạo ra động cơ khuyến khích các nút trung thực rời khỏi DON. Biên soạn phi tập trung lịch sử hiệu suất chính xác và hậu quả khả năng của người dùng trong việc xác định các nút có hiệu suất cao và để người vận hành nút xây dựng danh tiếng là đặc điểm phân biệt quan trọng của hệ sinh thái Chainlink. Chúng tôi trình bày trong Phần 9 cách chúng ta có thể suy luận về chúng như một phần quan trọng của một hệ thống chặt chẽ và cái nhìn mở rộng về an ninh kinh tế được cung cấp bởi DONs.
Serviços descentralizados habilitados por descentralizados
Redes Oracle Para ilustrar a versatilidade dos DONs e como eles permitem uma série de novos serviços, apresentamos cinco exemplos de aplicativos baseados em DON nesta seção e descrevemos o contratos híbridos que os realizam: (1) Prova de Reservas, uma forma de serviço cross-chain; (2) Interface com sistemas corporativos/legados, ou seja, criação de um ambiente baseado em middleware camada de abstração que facilita o desenvolvimento de aplicativos blockchain com o mínimo blockchain-código ou conhecimento específico; (3) Identidade descentralizada, ferramentas que permitem aos utilizadores obter e gerenciar seus próprios documentos e credenciais de identidade; (4) Canais prioritários, um serviço que garante a inclusão oportuna de transações de infraestrutura crítica (por exemplo, oracle relatórios) em blockchain; e (5) DeFi de preservação de confidencialidade, ou seja, financeiro smart contracts que ocultam os dados confidenciais das partes participantes. Aqui, nós
use SC para denotar a parte MAINCHAIN de um contrato híbrido e descreva o DON componente separadamente ou em termos de um executável exec. 4.1 Comprovante de Reservas Para muitas aplicações, é útil retransmitir o estado entre blockchains. Um Uma aplicação popular de tais serviços é o empacotamento de criptomoedas. Moedas embrulhadas como como WBTC [15] estão se tornando um ativo popular nas finanças descentralizadas (DeFi). Eles envolvem o depósito do ativo de garantia “embrulhado” em sua fonte blockchain MAINCHAIN(1) e criando um token correspondente em um destino blockchain MAINCHAIN(2) diferente. Por exemplo, WBTC é um ERC20 token no Ethereum blockchain que corresponde para BTC no Bitcoin blockchain. Como os contratos em MAINCHAIN(2) não têm visibilidade direta em MAINCHAIN(1), eles devem confiar explícita ou implicitamente em um oracle para relatar os depósitos do pacote embalado ativo em um smart contract, produzindo o que às vezes é chamado de Prova de Reservas. Em WBTC [15], por exemplo, o custodiante BitGo detém BTC e emite WBTC, com o Chainlink rede que fornece Comprovantes de Reserva [76]. Um DON pode fornecer uma Prova de Reservas. Com um DON, entretanto, é possível para ir mais longe. Um DON pode gerenciar segredos e, através do uso de adaptadores apropriados, pode fazer transações em qualquer blockchain desejado. Consequentemente, é possível que o DON atue como um entre vários custodiantes - ou mesmo como um único custodiante descentralizado - para um ativo embrulhado. DONs podem servir como uma plataforma para aumentar a segurança de serviços existentes que utilizam Provas de Reservas. Por exemplo, suponha que MAINCHAIN(1) seja Bitcoin e MAINCHAIN(2) seja Ethereum. Em MAINCHAIN(2), um contrato SC emite tokens representando BTC embalado. O DON controla um endereço BTC addr(1) DON. Para encapsular o BTC, então, um usuário U envia X BTC de endereço(1) Você para endereço(1) DON junto com um endereço MAINCHAIN(2) addr(2) Você. O DON monitora endereço(1) DON através de um adaptador para MAINCHAIN(1). Ao observar o depósito de U, com confirmação de probabilidade suficientemente alta, ele envia uma mensagem para SC através de um adaptador para CORRENTE PRINCIPAL(2). Esta mensagem instrui SC a cunhar X tokens para addr(2) Você. Para U liberar X tokens, acontece o inverso. Em MAINCHAIN(1), entretanto, endereço(1) DON envia X BTC para addr(1) U (ou para outro endereço, se assim for solicitado pelo utilizador). Esses protocolos podem ser adaptados, é claro, para funcionar com exchanges, em vez de diretamente com os usuários. 4.2 Interface com sistemas corporativos/legados DONs podem servir como pontes entre blockchains, como no exemplo de Prova de Reservas, mas outro objetivo é que atuem como pontes bidirecionais entre blockchains e sistemas legados [176] ou sistemas semelhantes a blockchain, como banco central moedas digitais [30]. As empresas enfrentam uma série de desafios para conectar seus sistemas existentes e processos para sistemas descentralizados, incluindo:• Agilidade Blockchain: Os sistemas Blockchain mudam rapidamente. Uma empresa pode enfrentar o rápido aparecimento ou aumento de popularidade de blockchains nos quais contrapartes desejam realizar transações, mas para as quais a empresa não tem suporte em sua infra-estrutura existente. Em geral, o dinamismo de blockchains faz com que é difícil para as empresas individuais manterem-se a par de todo o ecossistema. • Recursos de desenvolvimento específicos para Blockchain: Para muitas organizações, contratar ou incubar conhecimentos blockchain de ponta é difícil, especialmente em vista da desafio da agilidade. • Gerenciamento de chaves privadas: o gerenciamento de chaves privadas para blockchains ou criptomoedas requer conhecimento operacional distinto daquele da segurança cibernética tradicional práticas e indisponíveis para muitas empresas. • Confidencialidade: As empresas desconfiam de expor seus dados confidenciais e proprietários dados na cadeia. Para resolver as três primeiras dessas dificuldades, os desenvolvedores podem simplesmente usar um DON como uma camada de middleware segura para permitir que sistemas corporativos leiam ou gravem em blockchains. O DON pode abstrair considerações técnicas detalhadas, como dinâmica de gases, reorganização da cadeia e assim por diante, tanto para desenvolvedores quanto para usuários. Por apresentando uma interface blockchain simplificada para sistemas corporativos, um DON pode, portanto, simplificar consideravelmente o desenvolvimento de aplicativos empresariais com reconhecimento de blockchain, eliminando o fardo das empresas de adquirir ou incubar recursos de desenvolvimento específicos de blockchain. Esse uso de DONs é especialmente atraente porque permite que os desenvolvedores corporativos criar aplicativos de contratos inteligentes que são em grande parte blockchain agnósticos. Como resultado, o maior o conjunto de blockchains para os quais um DON é instrumentado para atuar como middleware, o maior o conjunto de blockchains aos quais os usuários corporativos podem obter acesso fácil. Desenvolvedores pode portar aplicativos de blockchains existentes para novos com modificação mínima às suas aplicações desenvolvidas internamente. Para resolver o problema adicional da confidencialidade, os desenvolvedores podem recorrer ao ferramentas que apresentamos neste documento e esperamos implantar para suporte a aplicativos DON. Estes incluem DECO e Town Crier Seção 3.6.2, bem como sistemas de preservação de confidencialidade Modificações de API discutidas na Seção 7.1.2 e uma série de abordagens específicas de aplicação abordadas no restante desta seção. Esses sistemas DON podem fornecer atestados on-chain de alta integridade sobre o estado do sistema empresarial sem revelar dados confidenciais de origem empresarial na cadeia. 4.3 Identidade Descentralizada Identidade descentralizada é um termo geral para a noção de que os usuários devem ser capazes de obter e gerenciar suas próprias credenciais, em vez de depender de terceiros para fazer então. Credenciais descentralizadas são atestados de atributos ou afirmações do titular,que muitas vezes são chamados de reivindicações. As credenciais são assinadas digitalmente por entidades, muitas vezes chamadas emissores, que podem associar declarações com autoridade aos usuários. Na maioria dos esquemas propostos, reivindicações estão associadas a um Identificador Descentralizado (DID), um identificador universal para um determinado usuário. As credenciais estão vinculadas a uma chave pública cuja chave privada o usuário possui. O usuário pode assim provar a posse de uma reivindicação usando sua chave privada. Por mais visionários que sejam a identidade descentralizada, os esquemas existentes e propostos, por exemplo, [14, 92, 129, 216], têm três limitações severas: • Falta de compatibilidade legada: Os sistemas de identidade descentralizados existentes dependem de um comunidade de autoridades, chamadas emissores, para produzir credenciais DID. Porque os serviços web existentes geralmente não assinam dados digitalmente, os emissores devem ser lançados como sistemas para fins especiais. Porque não há incentivo para fazer isso sem uma ecossistema de identidade descentralizada, o resultado é um problema do ovo e da galinha. Em outro palavras, não está claro como inicializar um ecossistema de emissores. • Gerenciamento de chaves impraticável: Os sistemas de identidade descentralizados exigem que os usuários gerenciar chaves privadas, algo que a experiência com criptomoeda mostrou ser um ônus inviável. Estima-se que cerca de 4.000.000 Bitcoin foram perdidos para sempre devido a falhas de gerenciamento de chaves [194], e muitos usuários armazenam seus ativos criptográficos com exchanges [193], minando assim a descentralização. • Falta de resistência Sybil que preserve a privacidade: Um requisito básico de segurança de aplicações como votação, alocação justa de tokens durante vendas de token, etc. os usuários não poderão afirmar múltiplas identidades. As propostas de identidade descentralizadas existentes exigem que os utilizadores revelem as suas identidades do mundo real, a fim de alcançar tal resistência Sybil, minando assim importantes garantias de privacidade. É possível resolver estes problemas usando uma combinação de um comitê de nós realizando computação distribuída dentro de um DON e o uso de ferramentas como DECO ou Town Crier, conforme mostrado em um sistema chamado CanDID [160]. DECO ou Town Crier podem, por design, transformar serviços web existentes sem modificação em emissores de credenciais que preservam a confidencialidade. Eles permitem que um DON exporte dados relevantes dados para esse fim em uma credencial, ocultando dados confidenciais que não deveriam aparecem na credencial. Além disso, para facilitar a recuperação de chaves para os usuários, abordando assim o problema de gerenciamento de chaves problema, um DON pode permitir que os usuários armazenem chaves privadas em formato secreto compartilhado. Os usuários podem recupere suas chaves provando aos nós no DON - da mesma forma, usando Town Crier ou DECO – uma capacidade de fazer login em contas com um conjunto de provedores da web pré-determinados (por exemplo, Twitter, Google, Facebook). O benefício de usar Town Crier ou DECO, em oposição a OAUTH, é a privacidade do usuário. Essas duas ferramentas permitem que o usuário evite revelar ao DON um identificador de provedor da web – do qual muitas vezes podem ser derivadas identidades do mundo real. Finalmente, para fornecer resistência Sybil, conforme mostrado em [160], é possível que um DON realizar uma transformação que preserva a privacidade de identificadores exclusivos do mundo real para usuários (por exemplo, números de segurança social (SSNs)) em identificadores na rede após o registro do usuário.O sistema pode, assim, detectar registros duplicados sem dados confidenciais, como SSNs sendo revelados para nós DON individuais.7 Um DON pode fornecer qualquer um desses serviços em nome de identidade descentralizada externa sistemas em blockchains sem ou com permissão, por exemplo, instâncias do Hyperledger Indy [129]. Exemplo de aplicação: KYC: A identidade descentralizada é promissora como meio de simplificar os requisitos para aplicações financeiras em blockchains enquanto melhora o usuário privacidade. Dois desafios que pode ajudar a resolver são as obrigações de acreditação e conformidade ao abrigo dos regulamentos anti-lavagem de dinheiro/conheça o seu cliente (AML/KYC). As regulamentações ABC em muitos países exigem que as instituições financeiras (e outras empresas) estabeleçam e verifiquem as identidades de indivíduos e empresas com as quais eles realizam transações. KYC constitui um componente do sistema de uma instituição financeira uma política ABC mais ampla, que normalmente também envolve a monitorização do comportamento dos utilizadores e a observação dos fluxos de fundos, entre outras coisas. O KYC normalmente envolve a apresentação de credenciais de identidade pelo usuário de alguma forma (por exemplo, entrada em um formulário on-line da web, segurando um documento de identidade na frente do rosto do usuário em uma sessão de vídeo, etc.). Criação segura e apresentação de credenciais descentralizadas poderia, em princípio, ser uma alternativa benéfica em vários aspectos, nomeadamente: (1) Fazendo o processo KYC mais eficiente para usuários e instituições financeiras, porque uma vez a credencial for obtida, ela poderá ser apresentada perfeitamente a qualquer instituição financeira; (2) Reduzir a fraude, reduzindo as oportunidades de roubo de identidade através de comprometimento de informações de identificação pessoal (PII) e falsificação durante a verificação de vídeo; e (3) Reduzir o risco de comprometimento de PII em instituições financeiras, à medida que os usuários mantêm o controle dos seus próprios dados. Dadas as multas multibilionárias pagas pelas instituições financeiras por falhas de conformidade com a AML, e as muitas instituições financeiras que gastam milhões de dólares anualmente em KYC, as melhorias poderiam gerar poupanças consideráveis para as instituições financeiras. e, por extensão, para consumidores [196]. Embora o setor financeiro tradicional seja lento para adotar novas ferramentas de conformidade, DeFi os sistemas estão cada vez mais adotando-as [43]. Exemplo de aplicação: Empréstimos com garantia insuficiente: A maioria dos aplicativos DeFi que os empréstimos de apoio hoje originam apenas empréstimos totalmente garantidos. Estes são empréstimos feitos para mutuários que depositam ativos de criptomoeda de valor superior ao dos empréstimos. Recentemente surgiu interesse naquilo que a comunidade DeFi geralmente chama de empréstimos com garantia insuficiente. Estes, pelo contrário, são empréstimos para os quais a garantia correspondente tem valor inferior ao do principal do empréstimo. Empréstimos com garantia insuficiente assemelham-se a empréstimos frequentemente concedidos por instituições financeiras tradicionais. Em vez de confiar na garantia depositada como garantia do reembolso do empréstimo, eles baseiam o empréstimo decisões sobre os históricos de crédito dos mutuários. 7Essa transformação depende de uma função pseudoaleatória distribuída (PRF).Os empréstimos com garantia insuficiente constituem uma parte nascente, mas crescente, do mercado de empréstimos DeFi. Eles dependem de mecanismos como aqueles empregados pelas finanças tradicionais. instituições, como contratos legais [91]. Um requisito essencial para o seu crescimento será a capacidade de fornecer dados sobre a qualidade de crédito do usuário - um fator-chave nas decisões de empréstimo convencionais - para sistemas DeFi de uma forma que forneça forte integridade, ou seja, garantia de dados corretos. Um sistema de identidade descentralizado habilitado para DON permitiria que os possíveis mutuários gerar credenciais de alta garantia que atestem sua qualidade de crédito, preservando ao mesmo tempo a confidencialidade de informações sensíveis. Especificamente, os mutuários podem gerar esses credenciais baseadas em registros de fontes on-line confiáveis, expondo apenas o dados atestados por DON, sem expor outros dados potencialmente sensíveis. Para Por exemplo, um mutuário pode gerar uma credencial indicando que sua pontuação de crédito com um conjunto de agências de crédito excede um limite específico (por exemplo, 750), sem revelar seu pontuação precisa ou quaisquer outros dados em seus registros. Além disso, se desejado, tais credenciais podem ser gerados anonimamente, ou seja, o nome do usuário pode ser tratado como dado sensível e ela própria não está exposta aos nós oracle ou em sua credencial descentralizada. A credencial em si pode ser usado em cadeia ou fora da cadeia, dependendo da aplicação. Em resumo, um mutuário pode fornecer informações essenciais aos credores sobre o seu crédito histórias com forte integridade e sem risco de exposição de informações desnecessárias e sensíveis dados. Um mutuário também pode fornecer uma variedade de outras credenciais que preservam a confidencialidade útil na tomada de decisões de empréstimo. Por exemplo, as credenciais podem atestar a posse de ativos (fora da cadeia), como mostramos em nosso próximo exemplo. Exemplo de aplicação: Credenciamento: Muitas jurisdições limitam a classe de investidores aos quais os títulos não registrados podem ser vendidos. Por exemplo, nos EUA, SEC O Regulamento D estipula que para ser credenciado para tais oportunidades de investimento, um o indivíduo deve possuir um patrimônio líquido de US$ 1 milhão, atender a certos requisitos de renda mínima ou ter certas qualificações profissionais [209, 210]. Credenciamento atual processos são complicados e ineficientes, muitas vezes exigindo uma carta de atestado do um contador ou evidência semelhante. Um sistema de identidade descentralizado permitiria aos usuários gerar credenciais de contas de serviços financeiros on-line existentes que comprovem conformidade com o credenciamento regulamentações, facilitando um processo KYC mais eficiente e que preserva a privacidade. O Além disso, as propriedades de preservação da privacidade da DECO e da Town Crier permitiriam que estes credenciais a serem geradas com uma forte garantia de integridade, sem revelar diretamente detalhes da situação financeira de um usuário. Por exemplo, um usuário pode gerar uma credencial provar que ela tem um patrimônio líquido de pelo menos US$ 1 milhão sem revelar qualquer valor adicional informações sobre sua situação financeira. 4.4 Canais Prioritários Os canais prioritários são um novo serviço útil e fácil de construir usando um DON. Seu


o objetivo é entregar transações selecionadas e de alta prioridade em tempo hábil no MAINCHAIN durante períodos de congestionamento da rede. Os canais prioritários podem ser vistos como uma forma de contrato futuro no espaço do bloco e, portanto, como uma criptomoeda, um termo cunhado como parte do Projeto Chicago [61, 136]. Os canais prioritários destinam-se especificamente aos mineradores para permitir serviços de infraestrutura, como oracles, funções de governança para contratos, etc. – e não para atividades comuns no nível do usuário, como transações financeiras. Na verdade, tal como concebido aqui, uma prioridade canal implementado por menos de 100% do poder de mineração na rede só pode fornecem limites frouxos nos prazos de entrega, evitando seu uso para tarefas altamente dependentes da velocidade. objetivos como a liderança. Figura 10: Um canal prioritário é uma garantia de um minerador M – ou, mais geralmente, um conjunto de mineradores M - para um usuário U que sua transação τ será extraída em D blocos de inclusão no mempool. Um SC de contrato pode usar monitoramento DON para fazer cumprir o termos de serviço do canal. Um canal prioritário assume a forma de um acordo entre um minerador ou um conjunto de mineradores (ou pools de mineração) M que fornece o canal e um usuário U que paga uma taxa pelo acesso. M concorda que quando U envia uma transação τ ao mempool (com qualquer preço de gás,mas um limite de gás pré-acordado), M irá colocá-lo na cadeia nos próximos blocos D.8 A ideia é representada esquematicamente na Fig. Descrição do contrato de canal prioritário: Um canal prioritário pode ser realizado como um híbrido smart contract aproximadamente como segue. Deixamos SC denotar a lógica em MAINCHAIN e isso em DON por exec. SC aceita um depósito/aposta \(d from M and an advance payment \)p dos EUA DON executável exec monitora o mempool, acionando na colocação de uma transação por U. Ele envia uma mensagem de sucesso para SC se U enviar uma transação que M minera em em tempo hábil e uma mensagem de falha em caso de falha no serviço. SC envia o pagamento $p para M com uma mensagem de sucesso e envia todos os fundos restantes, incluindo $d, para U se receber uma mensagem de falha. Após a rescisão bem-sucedida, libera o depósito $d para M. O minerador M pode, é claro, fornecer canais prioritários simultaneamente para vários usuários e pode abrir um canal prioritário com U para um número pré-acordado de mensagens. 4,5 Preservação de confidencialidade DeFi / Mixicles Hoje, DeFi aplicativos [1] fornecem pouca ou nenhuma confidencialidade aos usuários: todas as transações são visíveis na cadeia. Várias abordagens baseadas em conhecimento zero, por exemplo, [149, 217], podem fornecer privacidade às transações e o TEF é geral o suficiente para apoiá-los. Mas essas abordagens não são abrangentes e, por exemplo, normalmente não escondem o ativo no qual uma transação se baseia. O amplo conjunto de ferramentas computacionais que pretendemos apoiar em DONs irá permitir a privacidade de diversas maneiras diferentes que podem preencher essas lacunas, ajudando a complementar as garantias de privacidade de outros sistemas. Por exemplo, Mixicles, um instrumento de preservação de confidencialidade DeFi proposto por Chainlink pesquisadores do Labs [135], pode ocultar o tipo de ativo que respalda um instrumento financeiro e se enquadra muito naturalmente no DON quadro. Mixicles são mais facilmente explicados em termos de seu uso para realizar um sistema binário simples. opção. Uma opção binária é um instrumento financeiro no qual dois usuários, que iremos consulte aqui para consistência com [135] como jogadores, aposte em um evento com dois possíveis resultados, por exemplo, se um ativo excede ou não um preço-alvo em um momento pré-designado. O exemplo a seguir ilustra a ideia. Exemplo 2. Alice e Bob são partes de uma opção binária baseada no valor de um ativo chamado Carol’s Bubble Token (CBT). Alice aposta que o CBT terá um preço de mercado de pelo menos pelo menos 250 USD no horário T = meio-dia de 21 de junho de 2025; Bob aposta o contrário. Cada jogador deposita 100 ETH em um prazo pré-especificado. O jogador com a posição vencedora recebe 200 ETH (ou seja, ganha 100 ETH). É claro que 8D deve ser grande o suficiente para garantir que M possa cumprir com alta probabilidade. Para Por exemplo, se M controlar 20% do poder de mineração na rede, ele poderá escolher D = 100, garantindo uma probabilidade de falha de ≈2 × 10−10, ou seja, menos de uma em um bilhão.Dada uma rede Chainlink oracle O existente, é fácil implementar um sistema inteligente contrato SC que realiza o acordo no Exemplo 2. Cada um dos dois jogadores deposita 100 ETH em SC. Algum tempo depois de T, uma consulta q é enviada a O solicitando o preço r de CBT no momento T. O envia um relatório r desse preço para SC. SC então envia dinheiro para Alice se r ≥250 e Bob se não. Esta abordagem, no entanto, revela r em cadeia – tornando mais fácil para um observador deduzir o ativo subjacente à opção binária. Na terminologia de Mixicles, é útil pensar conceitualmente no resultado de SC em termos de um Switch que transmite um valor binário calculado como um predicado interruptor (r). Em nosso exemplo, switch(r) = 0 se r ≥250; dado este resultado, Alice vence. Caso contrário switch(r) = 1 e Bob vence. Um DON pode realizar um Mixicle básico como um contrato híbrido executando um executável exec que calcula switch(r) e reporta-o em cadeia para SC. Mostramos esta construção na Figura 11. Figura 11: Diagrama do Mixicle básico no Exemplo 2. Para fornecer sigilo na cadeia para relatório r e, portanto, o ativo subjacente à opção binária, o oracle envia para o contrate SC via Switch apenas o valor binário switch(r). Especificamos um adaptador ConfSwitch no Apêndice C.3 que torna mais fácil conseguir isso meta em um DON. A ideia básica por trás do ConfSwitch é bastante simples. Em vez de relatar o valor r, ConfSwitch relata apenas o valor da chave binária switch(r). SC pode ser projetado para fazer um pagamento correto com base apenas no switch(r) e no switch(r) por si só não revela nenhuma informação sobre o ativo subjacente – CBT em nosso exemplo. Além disso, colocando um texto cifrado em (q, r) no livro-razão criptografado em pkaud, a chave pública de um auditor, o adaptador ConfSwitch cria uma trilha de auditoria que preserva a confidencialidade. O Mixicle básico que escolhemos para simplificar a descrição aqui esconde apenas o ativo e aposta atrás da opção binária em nosso exemplo. Um Mixicle completo [135] pode fornecer duas formas de confidencialidade. Ela esconde dos observadores: (1) Qual evento o os jogadores apostam em (ou seja, q e r), mas também (2) em qual jogador ganhou a aposta. Como os Mixicles são executados no MAINCHAIN, qualquer um dos jogadores precisaria retransmitir switch(r) de DON para MAINCHAIN, ou um executável exec pode ser criado que
é acionado na saída pelo ConfSwitch e chama outro adaptador para enviar switch(r) para MAINCHAIN. Também vale a pena considerar um terceiro tipo sutil de confidencialidade. Em uma implementação básica do ConfSwitch, O está executando o adaptador no DON e, portanto, aprende o ativo – CBT em nosso exemplo – e, portanto, a natureza da opção binária. Conforme discutido no Apêndice C.3, no entanto, também é possível usar DECO ou Town Crier para ocultar até mesmo esta informação de O. Neste caso, o O não aprende mais informações do que um observador público de SC. Para mais detalhes sobre Mixicles, recomendamos aos leitores [135].
Dịch vụ phi tập trung được kích hoạt bởi phi tập trung
Mạng Oracle Để minh họa tính linh hoạt của DON và cách chúng kích hoạt một loạt dịch vụ mới, chúng tôi trình bày năm ví dụ về các ứng dụng dựa trên DON trong phần này và mô tả hợp đồng kết hợp hiện thực hóa chúng: (1) Bằng chứng dự trữ, một hình thức dịch vụ chuỗi chéo; (2) Giao tiếp với các hệ thống doanh nghiệp/cũ, tức là tạo ra một ứng dụng dựa trên phần mềm trung gian lớp trừu tượng tạo điều kiện phát triển các ứng dụng blockchain với chi phí tối thiểu blockchain-mã hoặc chuyên môn cụ thể; (3) Nhận dạng phi tập trung, các công cụ cho phép người dùng có được và quản lý các tài liệu nhận dạng và thông tin xác thực của riêng họ; (4) Các kênh ưu tiên, một dịch vụ đảm bảo đưa vào kịp thời các giao dịch cơ sở hạ tầng quan trọng (ví dụ: oracle báo cáo) trên blockchain; và (5) Bảo đảm bí mật DeFi, nghĩa là tài chính smart contract che giấu dữ liệu nhạy cảm của các bên tham gia. Ở đây, chúng tôi
sử dụng SC để biểu thị phần MAINCHAIN của hợp đồng kết hợp và mô tả DON thành phần riêng biệt hoặc dưới dạng một chương trình thực thi có thể thực thi được. 4.1 Bằng chứng dự trữ Đối với nhiều ứng dụng, việc chuyển tiếp trạng thái giữa hoặc giữa blockchains là rất hữu ích. A ứng dụng phổ biến của các dịch vụ như vậy là gói tiền điện tử. Những đồng xu được bọc như vậy vì WBTC [15] đang trở thành tài sản phổ biến trong Tài chính phi tập trung (DeFi). Họ liên quan đến việc gửi tài sản hỗ trợ “được bao bọc” vào nguồn của nó blockchain MAINCHAIN(1) và tạo token tương ứng trên một mục tiêu khác, blockchain MAINCHAIN(2). Ví dụ: WBTC là ERC20 token trên Ethereum blockchain tương ứng tới BTC trên Bitcoin blockchain. Vì các hợp đồng trên MAINCHAIN(2) không hiển thị trực tiếp vào MAINCHAIN(1), họ phải dựa một cách rõ ràng hoặc ngầm định vào oracle để báo cáo về khoản tiền gửi của gói được bao bọc nội dung trong smart contract, tạo ra cái mà đôi khi được gọi là Bằng chứng dự trữ. trong Ví dụ: WBTC [15], người giám sát BitGo nắm giữ BTC và phát hành WBTC, với Chainlink mạng cung cấp Bằng chứng dự trữ [76]. DON có thể tự cung cấp Bằng chứng dự trữ. Tuy nhiên, với DON, có thể để đi xa hơn DON có thể quản lý bí mật và thông qua việc sử dụng bộ điều hợp thích hợp, có thể giao dịch trên bất kỳ blockchain nào mong muốn. Do đó, DON có thể hành động với tư cách là một trong số những người giám hộ—hoặc thậm chí là người giám hộ duy nhất, phi tập trung—cho một tài sản được bọc. DON do đó có thể đóng vai trò là nền tảng để nâng cao tính bảo mật của các dịch vụ hiện có sử dụng Bằng chứng dự trữ. Ví dụ: giả sử MAINCHAIN(1) là Bitcoin và MAINCHAIN(2) là Ethereum. Trên MAINCHAIN(2), SC hợp đồng phát hành tokens đại diện cho BTC được bao bọc. DON kiểm soát địa chỉ BTC (1) DON. Sau đó, để bọc BTC, người dùng U gửi X BTC từ địa chỉ (1) bạn để thêm (1) DON cùng với địa chỉ MAINCHAIN(2)-địa chỉ (2) bạn. Màn hình DON địa chỉ (1) DON thông qua bộ chuyển đổi sang MAINCHAIN(1). Khi quan sát tiền gửi của U, với xác nhận có xác suất đủ cao, nó sẽ gửi một tin nhắn đến SC thông qua bộ chuyển đổi tới CHUỖI CHÍNH(2). Thông báo này hướng dẫn SC đúc X tokens cho addr(2) bạn. Để U giải phóng X tokens thì điều ngược lại sẽ xảy ra. Tuy nhiên, trên MAINCHAIN(1), địa chỉ (1) DON gửi X BTC tới addr(1) U (hoặc đến địa chỉ khác, nếu người dùng yêu cầu). Tất nhiên, các giao thức này có thể được điều chỉnh để hoạt động với các sàn giao dịch, thay vì trực tiếp. với người dùng. 4.2 Giao diện với hệ thống doanh nghiệp / kế thừa DON có thể đóng vai trò là cầu nối giữa và giữa blockchain, như trong ví dụ về Bằng chứng của Dự trữ, nhưng một mục tiêu khác là để chúng đóng vai trò là cầu nối hai chiều giữa blockchains và các hệ thống kế thừa [176] hoặc các hệ thống tương tự blockchain chẳng hạn như ngân hàng trung ương tiền kỹ thuật số [30]. Các doanh nghiệp phải đối mặt với một số thách thức trong việc kết nối các hệ thống hiện có của họ và quy trình cho các hệ thống phi tập trung, bao gồm:• Tính linh hoạt của chuỗi khối: Hệ thống chuỗi khối thay đổi nhanh chóng. Doanh nghiệp có thể phải đối mặt với sự xuất hiện mới nhanh chóng hoặc mức độ phổ biến ngày càng tăng của blockchains các đối tác mong muốn thực hiện giao dịch nhưng doanh nghiệp không có hỗ trợ cơ sở hạ tầng hiện có của nó. Nhìn chung, sự năng động của blockchains tạo nên rất khó để các doanh nghiệp riêng lẻ có thể theo kịp hệ sinh thái đầy đủ. • Nguồn lực phát triển dành riêng cho chuỗi khối: Đối với nhiều tổ chức, việc tuyển dụng hoặc ươm tạo chuyên môn blockchain tiên tiến là rất khó khăn, đặc biệt là khi xét đến thử thách sự nhanh nhẹn. • Quản lý khóa riêng: Quản lý khóa riêng cho blockchain hoặc tiền điện tử yêu cầu chuyên môn vận hành khác với chuyên môn về an ninh mạng truyền thống thực tiễn và không có sẵn cho nhiều doanh nghiệp. • Tính bảo mật: Các doanh nghiệp rất thận trọng khi tiết lộ thông tin nhạy cảm và độc quyền của mình dữ liệu trên chuỗi. Để giải quyết ba khó khăn đầu tiên, nhà phát triển chỉ cần sử dụng DON như một lớp phần mềm trung gian an toàn để cho phép các hệ thống doanh nghiệp đọc từ hoặc ghi vào blockchains. DON có thể tóm tắt những cân nhắc kỹ thuật chi tiết như động lực khí, tổ chức lại chuỗi, v.v. cho cả nhà phát triển và người dùng. Bởi trình bày giao diện blockchain được sắp xếp hợp lý cho các hệ thống doanh nghiệp, do đó DON có thể đơn giản hóa đáng kể việc phát triển các ứng dụng doanh nghiệp nhận biết blockchain, loại bỏ gánh nặng cho các doanh nghiệp trong việc mua hoặc ươm tạo các tài nguyên phát triển cụ thể blockchain. Việc sử dụng DON như vậy đặc biệt hấp dẫn ở chỗ nó cho phép các nhà phát triển doanh nghiệp tạo các ứng dụng hợp đồng thông minh phần lớn là blockchain bất khả tri. Kết quả là, lớn hơn tập hợp blockchain trong đó DON được thiết kế để hoạt động như phần mềm trung gian, lớn hơn tập hợp blockchain mà người dùng doanh nghiệp có thể dễ dàng truy cập. Nhà phát triển có thể chuyển các ứng dụng từ blockchain hiện có sang ứng dụng mới với sự sửa đổi tối thiểu cho các ứng dụng được phát triển nội bộ của họ. Để giải quyết vấn đề bổ sung về tính bảo mật, các nhà phát triển có thể khiếu nại lên cơ quan các công cụ chúng tôi giới thiệu trong bài viết này và dự kiến sẽ triển khai để hỗ trợ các ứng dụng DON. Chúng bao gồm DECO và Town Crier Mục 3.6.2 cũng như bảo vệ bí mật Các sửa đổi API được thảo luận trong Phần 7.1.2 và một số cách tiếp cận dành riêng cho ứng dụng được đề cập trong phần còn lại của phần này. Những hệ thống DON này có thể cung cấp chứng thực trực tuyến, có tính toàn vẹn cao về trạng thái hệ thống doanh nghiệp mà không tiết lộ dữ liệu nguồn doanh nghiệp nhạy cảm trên chuỗi. 4.3 Nhận dạng phi tập trung Danh tính phi tập trung là một thuật ngữ chung cho khái niệm mà người dùng có thể lấy và quản lý thông tin xác thực của riêng họ, thay vì dựa vào bên thứ ba để thực hiện vậy. Thông tin xác thực phi tập trung là sự chứng thực cho các thuộc tính hoặc xác nhận của chủ sở hữu,thường được gọi là yêu cầu bồi thường. Thông tin xác thực được ký điện tử bởi các thực thể, thường được gọi là nhà phát hành, có thể liên kết chính xác các khiếu nại với người dùng. Trong hầu hết các phương án được đề xuất, các khiếu nại được liên kết với Mã định danh phi tập trung (DID), một mã định danh chung cho một người dùng nhất định. Thông tin xác thực được liên kết với khóa chung mà người dùng nắm giữ khóa riêng. Do đó, người dùng có thể chứng minh quyền sở hữu yêu cầu bằng cách sử dụng khóa riêng của mình. Có tầm nhìn xa trông rộng như bản sắc phi tập trung, các kế hoạch hiện có và được đề xuất, ví dụ: [14, 92, 129, 216], có ba hạn chế nghiêm trọng: • Thiếu khả năng tương thích kế thừa: Các hệ thống nhận dạng phi tập trung hiện tại dựa vào một cộng đồng các cơ quan có thẩm quyền, được gọi là tổ chức phát hành, để tạo ra thông tin xác thực DID. Bởi vì các dịch vụ web hiện tại thường không ký điện tử dữ liệu, các tổ chức phát hành phải được triển khai như các hệ thống có mục đích đặc biệt. Bởi vì không có động cơ để làm điều này mà không có hệ sinh thái nhận dạng phi tập trung sẽ dẫn đến vấn đề con gà và quả trứng. Ở nơi khác Nói cách khác, vẫn chưa rõ cách khởi động hệ sinh thái của nhà phát hành. • Quản lý khóa không thể thực hiện được: Hệ thống nhận dạng phi tập trung yêu cầu người dùng quản lý khóa riêng, điều mà trải nghiệm với tiền điện tử đã cho thấy là một trách nhiệm không thể thực hiện được. Người ta ước tính có khoảng 4.000.000 Bitcoin đã được bị mất vĩnh viễn do lỗi quản lý khóa [194] và nhiều người dùng lưu trữ tài sản tiền điện tử với các sàn giao dịch [193], do đó làm suy yếu tính phân cấp. • Thiếu khả năng chống lại Sybil bảo vệ quyền riêng tư: Yêu cầu bảo mật cơ bản của các ứng dụng như bỏ phiếu, phân bổ công bằng tokens trong khi bán token, v.v. là người dùng không thể xác nhận nhiều danh tính. Các đề xuất nhận dạng phi tập trung hiện tại yêu cầu người dùng tiết lộ danh tính trong thế giới thực của họ để đạt được điều đó. Khả năng chống lại âm thanh, do đó làm suy yếu các đảm bảo quyền riêng tư quan trọng. Có thể giải quyết những vấn đề này bằng cách sử dụng sự kết hợp của một ủy ban các nút thực hiện tính toán phân tán trong DON và sử dụng các công cụ như DECO hoặc Town Crier, như được hiển thị trong hệ thống có tên CanDID [160]. DECO hoặc Town Crier có thể thiết kế để biến đổi các dịch vụ web hiện có mà không cần sửa đổi vào các nhà phát hành thông tin xác thực bảo mật. Chúng cho phép DON xuất có liên quan dữ liệu cho mục đích này thành thông tin xác thực đồng thời che giấu dữ liệu nhạy cảm không được phép xuất hiện trong thông tin xác thực. Ngoài ra, để tạo thuận lợi cho việc khôi phục khóa cho người dùng, từ đó giải quyết vấn đề quản lý khóa. vấn đề, DON có thể cho phép người dùng lưu trữ khóa riêng tư ở dạng chia sẻ bí mật. Người dùng có thể khôi phục khóa của họ bằng cách chứng minh cho các nút trong DON—tương tự, sử dụng Town Crier hoặc DECO—khả năng đăng nhập vào tài khoản với một nhóm nhà cung cấp web được xác định trước (ví dụ: Twitter, Google, Facebook). Lợi ích của việc sử dụng Town Crier hoặc DECO, trái ngược với OAUTH, là quyền riêng tư của người dùng. Hai công cụ đó cho phép người dùng tránh tiết lộ cho DON một mã định danh nhà cung cấp web—từ đó thường có thể lấy được danh tính trong thế giới thực. Cuối cùng, để cung cấp khả năng kháng Sybil, như được hiển thị trong [160], DON có thể thực hiện chuyển đổi bảo vệ quyền riêng tư của các mã nhận dạng duy nhất trong thế giới thực cho người dùng (ví dụ: Số An sinh Xã hội (SSN)) thành số nhận dạng trên chuỗi khi đăng ký người dùng.Do đó, hệ thống có thể phát hiện các đăng ký trùng lặp mà không có dữ liệu nhạy cảm như SSN được tiết lộ cho các nút DON riêng lẻ.7 DON có thể cung cấp bất kỳ dịch vụ nào trong số này thay mặt cho danh tính phi tập trung bên ngoài các hệ thống trên blockchains không được phép hoặc được phép, ví dụ: các phiên bản của Hyperledger Ấn Độ [129]. Ứng dụng ví dụ: KYC: Bản sắc phi tập trung hứa hẹn sẽ là một phương tiện để hợp lý hóa các yêu cầu đối với các ứng dụng tài chính trên blockchains đồng thời cải thiện khả năng sử dụng của người dùng sự riêng tư. Hai thách thức mà nó có thể giúp giải quyết là các nghĩa vụ công nhận và tuân thủ theo các quy định chống rửa tiền/biết khách hàng (AML/KYC). Các quy định về AML ở nhiều quốc gia yêu cầu các tổ chức tài chính (và các doanh nghiệp khác) thiết lập và xác minh danh tính của các cá nhân và doanh nghiệp liên quan. họ thực hiện các giao dịch. KYC là một thành phần của tổ chức tài chính chính sách AML rộng hơn, thường liên quan đến việc giám sát hành vi của người dùng và theo dõi dòng vốn, cùng nhiều hoạt động khác. KYC thường yêu cầu người dùng trình bày thông tin xác thực danh tính dưới một số hình thức (ví dụ: nhập vào một biểu mẫu web trực tuyến, giơ tài liệu nhận dạng trước mặt người dùng trong một phiên video, v.v.). Tạo và trình bày an toàn thông tin xác thực phi tập trung về nguyên tắc có thể là một giải pháp thay thế có lợi ở một số khía cạnh, cụ thể là bằng cách: (1) Tạo quy trình KYC hiệu quả hơn đối với người dùng và tổ chức tài chính, bởi vì một khi có được thông tin xác thực, nó có thể được trình bày liền mạch cho bất kỳ tổ chức tài chính nào; (2) Giảm gian lận bằng cách giảm cơ hội đánh cắp danh tính thông qua thỏa hiệp thông tin nhận dạng cá nhân (PII) và giả mạo trong quá trình xác minh video; và (3) Giảm nguy cơ xâm phạm PII trong các tổ chức tài chính, khi người dùng giữ quyền kiểm soát dữ liệu của chính họ. Với các khoản phạt trị giá hàng tỷ đô la mà các tổ chức tài chính phải trả vì không tuân thủ AML và nhiều tổ chức tài chính chi hàng triệu đô la hàng năm cho KYC, các cải tiến có thể mang lại khoản tiết kiệm đáng kể cho các tổ chức tài chính. và nói rộng ra là dành cho người tiêu dùng [196]. Trong khi khu vực tài chính truyền thống chậm để áp dụng các công cụ tuân thủ mới, các hệ thống DeFi đang ngày càng áp dụng công cụ này [43]. Ứng dụng ví dụ: Các khoản vay không được thế chấp: Hầu hết DeFi ứng dụng hỗ trợ cho vay ngày nay chỉ bắt nguồn từ các khoản vay có thế chấp đầy đủ. Đây là những khoản vay được thực hiện cho những người đi vay gửi tài sản tiền điện tử có giá trị vượt quá giá trị của khoản vay. Gần đây đã nảy sinh sự quan tâm đến điều mà cộng đồng DeFi thường gọi là các khoản vay không được thế chấp. Ngược lại, đây là những khoản vay có tài sản thế chấp tương ứng có giá trị nhỏ hơn giá trị gốc của khoản vay. Các khoản vay không có tài sản thế chấp giống với các khoản vay thường được thực hiện bởi các tổ chức tài chính truyền thống. Thay vì dựa vào trên tài sản thế chấp ký gửi như một sự đảm bảo trả nợ, thay vào đó họ căn cứ vào việc cho vay quyết định về lịch sử tín dụng của người vay. 7Việc chuyển đổi này dựa trên hàm giả ngẫu nhiên phân tán (PRF).Các khoản vay không được thế chấp là một phần non trẻ nhưng đang phát triển của thị trường cho vay DeFi. Họ dựa vào các cơ chế giống như các cơ chế được sử dụng bởi các tổ chức tài chính truyền thống các tổ chức, chẳng hạn như hợp đồng pháp lý [91]. Một yêu cầu thiết yếu cho sự phát triển của họ sẽ là khả năng cung cấp dữ liệu về mức độ tín nhiệm của người dùng—yếu tố chính trong các quyết định cho vay thông thường—đến các hệ thống DeFi theo cách cung cấp tính toàn vẹn mạnh mẽ, tức là, đảm bảo số liệu chính xác. Hệ thống nhận dạng phi tập trung được kích hoạt DON sẽ cho phép những người đi vay tương lai tạo ra các thông tin có độ đảm bảo cao chứng thực mức độ tin cậy của họ trong khi vẫn bảo toàn tính bảo mật của thông tin nhạy cảm. Cụ thể, người đi vay có thể tạo ra những thông tin xác thực dựa trên hồ sơ từ các nguồn trực tuyến có thẩm quyền trong khi chỉ hiển thị thông tin dữ liệu được chứng thực bởi DON mà không làm lộ dữ liệu có thể nhạy cảm khác. cho Ví dụ: người đi vay có thể tạo thông tin xác thực cho biết rằng điểm tín dụng của cô ấy có nhóm văn phòng tín dụng vượt quá một ngưỡng cụ thể (ví dụ: 750) mà không tiết lộ thông tin của cô ấy điểm chính xác hoặc bất kỳ dữ liệu nào khác trong hồ sơ của cô ấy. Ngoài ra, nếu muốn, thông tin xác thực đó có thể được tạo ẩn danh, tức là tên người dùng có thể được coi là dữ liệu nhạy cảm và bản thân nó không được tiếp xúc với các nút oracle hoặc trong thông tin xác thực phi tập trung của cô ấy. Thông tin xác thực bản thân nó có thể được sử dụng trên chuỗi hoặc ngoài chuỗi, tùy thuộc vào ứng dụng. Tóm lại, người đi vay có thể cung cấp thông tin cần thiết cho người cho vay về tín dụng của họ. lịch sử có tính toàn vẹn cao và không có nguy cơ phơi bày những thông tin nhạy cảm, không cần thiết dữ liệu. Người vay cũng có thể cung cấp nhiều loại thông tin xác thực bảo mật khác hữu ích trong việc đưa ra quyết định cho vay. Ví dụ: thông tin xác thực có thể chứng thực quyền sở hữu của người đi vay sở hữu tài sản (ngoài chuỗi), như chúng tôi trình bày trong ví dụ tiếp theo. Ứng dụng ví dụ: Chứng nhận: Nhiều khu vực pháp lý giới hạn loại nhà đầu tư có thể bán chứng khoán chưa đăng ký. Ví dụ: ở Mỹ, SEC Quy định D quy định rằng để được công nhận cho những cơ hội đầu tư như vậy, cá nhân phải sở hữu tài sản ròng trị giá 1 triệu USD, đáp ứng các yêu cầu về thu nhập tối thiểu nhất định hoặc có trình độ chuyên môn nhất định [209, 210]. Sự công nhận hiện tại các quy trình rườm rà và kém hiệu quả, thường đòi hỏi phải có thư xác nhận từ kế toán viên hoặc bằng chứng tương tự. Một hệ thống nhận dạng phi tập trung sẽ cho phép người dùng tạo thông tin xác thực từ các tài khoản dịch vụ tài chính trực tuyến hiện có chứng minh sự tuân thủ chứng nhận các quy định, tạo điều kiện cho quy trình KYC hiệu quả hơn và bảo vệ quyền riêng tư hơn. các Hơn nữa, các đặc tính bảo vệ quyền riêng tư của DECO và Town Crier sẽ cho phép những điều này thông tin xác thực được tạo với sự đảm bảo mạnh mẽ về tính toàn vẹn mà không tiết lộ trực tiếp chi tiết về tình trạng tài chính của người dùng. Ví dụ: người dùng có thể tạo thông tin xác thực chứng minh rằng cô ấy có tài sản ròng ít nhất là 1 triệu đô la mà không tiết lộ thêm bất kỳ điều gì thông tin về tình trạng tài chính của cô ấy. 4.4 Kênh ưu tiên Kênh ưu tiên là một dịch vụ mới hữu ích, dễ xây dựng bằng DON. của họ


Mục tiêu là cung cấp các giao dịch có chọn lọc, có mức độ ưu tiên cao một cách kịp thời trên MAINCHAIN trong thời gian tắc nghẽn mạng. Các kênh ưu tiên có thể được xem như một dạng hợp đồng tương lai trên không gian khối và do đó là một loại tiền điện tử, một thuật ngữ được đặt ra như một phần của Dự án Chicago [61, 136]. Các kênh ưu tiên được dành riêng cho người khai thác để kích hoạt các dịch vụ cơ sở hạ tầng, chẳng hạn như oracles, chức năng quản trị cho hợp đồng, v.v.—không dành cho các hoạt động ở cấp độ người dùng thông thường như giao dịch tài chính. Trên thực tế, như được thiết kế ở đây, ưu tiên kênh được thực hiện bởi ít hơn 100% công suất khai thác trong mạng chỉ có thể cung cấp các giới hạn lỏng lẻo về thời gian giao hàng, ngăn cản việc sử dụng nó cho các hoạt động phụ thuộc nhiều vào tốc độ các mục tiêu như chạy trước. Hình 10: Kênh ưu tiên là sự đảm bảo của người khai thác M—hay nói chung hơn là một tập hợp các công cụ khai thác M—cho người dùng U rằng giao dịch τ của cô ấy sẽ được khai thác trong các khối D đưa vào mempool. SC hợp đồng có thể sử dụng giám sát DON để thực thi điều khoản dịch vụ của kênh. Kênh ưu tiên có dạng thỏa thuận giữa người khai thác hoặc tập hợp người khai thác (hoặc nhóm khai thác) M cung cấp kênh và người dùng U trả phí để truy cập. M đồng ý rằng khi U gửi giao dịch τ tới mempool (với bất kỳ giá gas nào,nhưng giới hạn gas đã được thỏa thuận trước), M sẽ đặt nó trên chuỗi trong các khối D tiếp theo.8 Ý tưởng này được mô tả dưới dạng sơ đồ trong Hình 10. Mô tả hợp đồng kênh ưu tiên: Một kênh ưu tiên có thể được thực hiện như một lai smart contract đại khái như sau. Chúng tôi để SC biểu thị logic trên MAINCHAIN và điều đó trên DON bởi người thực thi. SC chấp nhận khoản tiền gửi / cổ phần \(d from M and an advance payment \)p từ U. A DON người thực thi thực thi giám sát mempool, kích hoạt vị trí của giao dịch bởi U. Nó gửi thông báo thành công tới SC nếu U gửi giao dịch mà M khai thác một cách kịp thời và một thông báo lỗi trong trường hợp dịch vụ bị lỗi. SC gửi khoản thanh toán $p tới M với thông báo thành công và gửi tất cả số tiền còn lại, bao gồm $d, tới U nếu nó nhận được thông báo lỗi. Sau khi chấm dứt thành công, nó phát hành khoản tiền gửi $d cho M. Tất nhiên, công cụ khai thác M có thể cung cấp các kênh ưu tiên đồng thời cho nhiều người dùng và có thể mở kênh ưu tiên bằng U cho số lượng tin nhắn đã thỏa thuận trước. 4,5 Bảo quản bí mật DeFi / Hỗn hợp Ngày nay, DeFi ứng dụng [1] cung cấp rất ít hoặc không có tính bảo mật cho người dùng: Tất cả các giao dịch đều hiển thị trên chuỗi. Các cách tiếp cận dựa trên kiến thức không khác nhau, ví dụ: [149, 217], có thể cung cấp quyền riêng tư cho giao dịch và TEF đủ chung để hỗ trợ chúng. Nhưng những cách tiếp cận này không toàn diện và chẳng hạn, thường không che giấu được tài sản mà giao dịch dựa trên đó. Tập hợp rộng rãi các công cụ tính toán mà chúng tôi dự định hỗ trợ trong DONs sẽ cho phép quyền riêng tư theo một số cách khác nhau có thể lấp đầy những khoảng trống đó, giúp bổ sung cho việc đảm bảo quyền riêng tư của các hệ thống khác. Ví dụ: Mixicles, một công cụ bảo mật DeFi được đề xuất bởi Chainlink Các nhà nghiên cứu của Labs [135], có thể che giấu loại tài sản hỗ trợ một công cụ tài chính và rất phù hợp với DON khuôn khổ. Hỗn hợp được giải thích dễ dàng nhất về mặt sử dụng của chúng để nhận ra một hệ nhị phân đơn giản tùy chọn. Quyền chọn nhị phân là một công cụ tài chính trong đó hai người dùng, chúng ta sẽ tham khảo tại đây để biết tính nhất quán với [135] với tư cách là người chơi, đặt cược vào một sự kiện có hai khả năng kết quả, ví dụ: liệu một tài sản có vượt quá giá mục tiêu tại một thời điểm được chỉ định trước hay không. Ví dụ sau đây minh họa ý tưởng. Ví dụ 2. Alice và Bob là các bên tham gia quyền chọn nhị phân dựa trên giá trị của tài sản được gọi là Mã thông báo bong bóng của Carol (CBT). Alice đặt cược rằng CBT sẽ có giá thị trường ở mức tối thiểu 250 USD vào thời điểm T = trưa ngày 21/6/2025; Bob đặt cược ngược lại. Mỗi người chơi gửi 100 ETH theo thời hạn định trước. Người chơi có vị trí chiến thắng nhận được 200 ETH (tức là tăng 100 ETH). 8D tất nhiên phải đủ lớn để đảm bảo M có thể tuân thủ với xác suất cao. cho Chẳng hạn, nếu M kiểm soát 20% công suất khai thác trong mạng, nó có thể chọn D = 100, đảm bảo xác suất thất bại là ≈2 × 10−10, tức là nhỏ hơn một phần tỷ.Với Chainlink oracle mạng O hiện có, thật dễ dàng để triển khai một mạng thông minh hợp đồng SC thực hiện thỏa thuận trong Ví dụ 2. Hai người chơi mỗi bên gửi tiền 100 ETH trong SC. Một thời gian sau T, một truy vấn q được gửi đến O yêu cầu giá r của CBT tại thời điểm T. O gửi báo cáo r về mức giá này cho SC. SC sau đó gửi tiền cho Alice nếu r ≥250 và Bob nếu không. Tuy nhiên, cách tiếp cận này tiết lộ r trên chuỗi—làm cho việc này trở nên dễ dàng để người quan sát suy ra tài sản cơ bản của tùy chọn nhị phân. Trong thuật ngữ của Mixicles, sẽ rất hữu ích khi nghĩ về kết quả một cách khái niệm của SC dưới dạng Switch truyền giá trị nhị phân được tính toán dưới dạng vị từ chuyển đổi (r). Trong ví dụ của chúng tôi, switch(r) = 0 nếu r ≥250; với kết quả này, Alice thắng. Ngược lại switch(r) = 1 và Bob thắng. DON có thể nhận ra Mixicle cơ bản dưới dạng hợp đồng kết hợp bằng cách chạy một tệp thực thi exec tính toán switch(r) và báo cáo nó trên chuỗi cho SC. Chúng tôi hiển thị công trình này trong hình 11. Hình 11: Sơ đồ Mixicle cơ bản trong Ví dụ 2. Để cung cấp bí mật trên chuỗi cho báo cáo r và do đó, nội dung cơ bản của tùy chọn nhị phân, oracle sẽ gửi tới hợp đồng SC thông qua Chỉ chuyển đổi giá trị nhị phân switch(r). Chúng tôi chỉ định một bộ chuyển đổi ConfSwitch trong Phụ lục C.3 để giúp bạn dễ dàng đạt được điều này mục tiêu trong DON. Ý tưởng cơ bản đằng sau ConfSwitch khá đơn giản. Thay vì báo cáo giá trị r, ConfSwitch chỉ báo cáo giá trị chuyển đổi nhị phân switch(r). SC có thể được thiết kế để thực hiện thanh toán chính xác chỉ dựa trên switch(r) và chính switch(r) không tiết lộ thông tin nào về tài sản cơ bản—CBT trong ví dụ của chúng tôi. Ngoài ra, bằng cách đặt một bản mã vào (q, r) trên sổ cái được mã hóa bằng pkaud, khóa chung của kiểm toán viên, bộ điều hợp ConfSwitch tạo ra một quy trình kiểm tra bảo mật. Mixicle cơ bản mà chúng tôi đã chọn để mô tả đơn giản ở đây chỉ che giấu tài sản và đặt cược đằng sau tùy chọn nhị phân trong ví dụ của chúng tôi. Một Mixicle toàn diện [135] có thể cung cấp hai hình thức bảo mật. Nó che giấu những người quan sát: (1) Sự kiện gì người chơi đặt cược vào (tức là q và r) nhưng cũng có (2) Người chơi nào đã thắng cược. Vì Mixicles được thực thi trên MAINCHAIN nên một trong hai người chơi sẽ cần chuyển tiếp switch(r) từ DON sang MAINCHAIN hoặc có thể tạo một trình thực thi thực thi được
được kích hoạt ở đầu ra bởi ConfSwitch và gọi một bộ chuyển đổi khác để gửi switch(r) tới CHUỖI MAIN. Loại bảo mật tinh tế thứ ba cũng đáng được xem xét. Trong quá trình triển khai cơ bản của ConfSwitch, O đang chạy bộ điều hợp trên DON và do đó học được tài sản—CBT trong ví dụ của chúng tôi—và do đó là bản chất của quyền chọn nhị phân. Như đã thảo luận tuy nhiên, trong Phụ lục C.3, có thể sử dụng thêm DECO hoặc Town Crier để che giấu ngay cả thông tin này với O. Trong trường hợp này, O không biết thêm thông tin hơn là một người quan sát công khai của SC. Để biết thêm chi tiết về Mixicles, chúng tôi giới thiệu độc giả tới [135].
Serviços de sequenciamento justo
Um serviço importante que esperamos que DONs ofereça e que aproveite seus recursos de rede, computação e armazenamento é chamado de Fair Sequencing Services (FSS). Embora o FSS possa ser visto simplesmente como uma aplicação realizada dentro da estrutura DON, destacamos-o como um serviço que acreditamos que terá alta demanda em todo o mundo. blockchains, e que esperamos que a rede Chainlink suporte ativamente. Quando executados em redes blockchain públicas, muitos dos aplicativos DeFi atuais revelar informações que podem ser exploradas pelos usuários em seu próprio benefício, de forma análoga a o tipo de vazamentos internos e oportunidades de manipulação que são difundidos nos mercados existentes mercados [64, 155]. Em vez disso, o FSS abre caminho para um ecossistema DeFi justo. FSS ajuda os desenvolvedores a construir contratos DeFi protegidos contra manipulação de mercado decorrentes de vazamento de informações. Dados os problemas que destacamos abaixo, o FSS é especialmente atraente para serviços da camada 2 e se enquadra na estrutura para tais serviços que discutimos na Seção 6. O desafio: Nos sistemas sem permissão existentes, as transações são ordenadas inteiramente a critério dos mineiros. Em redes autorizadas, os nós validator podem exercer o mesmo poder. Esta é uma forma de centralização efêmera em grande parte não reconhecida na sistemas de outra forma descentralizados. Um minerador pode (temporariamente) censurar transações para seus benefício próprio [171] ou reordená-los para maximizar seu próprio ganho, uma noção chamada valor minerextraível (MEV) [90]. O termo MEV é ligeiramente enganador: não se refere apenas ao valor que os mineradores podem capturar: Alguns MEV podem ser capturados por usuários comuns. No entanto, como os mineradores têm mais poder do que os usuários comuns, o MEV representa um limite superior na quantidade de valor que qualquer entidade pode obter por meio de reordenamento adversário. e inserção de transação complementar. Mesmo quando os mineradores ordenam transações simplesmente com base em taxas (gás), sem manipulação, os próprios usuários podem manipular os preços do gás para favorecer suas transações em detrimento daquelas de menor sofisticação. Daian et al. [90] documenta e quantifica as maneiras pelas quais os bots (não os mineradores) tomam vantagem da dinâmica dos gases de uma forma que prejudica os usuários dos sistemas DeFi hoje e como MEV até ameaça a estabilidade da camada de consenso subjacente em um blockchain. Outros exemplos de manipulação de ordens de transação surgem regularmente, por exemplo, [50, 154].Novos métodos de processamento de transações, como rollups, são uma abordagem muito promissora aos problemas de dimensionamento de blockchains de alto rendimento. Eles não abordam, no entanto, o problema do MEV. Em vez disso, eles o transferem para a entidade que gera o rollup. Isso entidade, seja o operador de um smart contract ou um usuário fornecendo a (zk-)rollup com uma prova de validade, tem o poder de ordenar e inserir transações. Em outras palavras, rollups trocar MEV por REV: valor extraível de rollup. MEV afeta as próximas transações que foram enviadas ao mempool mas ainda não estão comprometidos em cadeia. As informações sobre essas transações são amplamente disponível na rede. Mineiros, validators e participantes comuns da rede podem portanto, explore esse conhecimento e crie transações dependentes. Além disso, mineradores e validators podem influenciar a ordem das transações que realizam e explorar isso em seu benefício. O problema da influência indevida dos líderes na ordem das transações em consenso protocolos são conhecidos na literatura desde a década de 1990 [71, 190], mas nenhum soluções foram implementadas na prática até agora [97]. A principal razão é que as soluções propostas – pelo menos até muito recentemente – não podem ser facilmente integradas com os serviços públicos. blockchains, pois dependem do conteúdo das transações que permanecem secretas até depois sua ordem foi determinada. Visão geral dos Serviços de Sequenciamento Justo (FSS): DONs fornecerá ferramentas para descentralizar a ordenação de transações e implementá-las de acordo com uma política especificada por um país confiável. criador do contrato, de preferência um que seja justo e não vantajoso para os atores que desejam manipular a ordem das transações. Coletivamente, essas ferramentas constituem o FSS. O FSS inclui três componentes. O primeiro é o monitoramento das transações. No FSS, oracle nós em O monitoram o mempool de MAINCHAIN e (se desejado) permitem submissão off-chain de transações por meio de canal especializado. O segundo é o sequenciamento das transações. Os nós em transações de ordem O para um contrato confiável de acordo com uma política definida para esse contrato. O terceiro é o lançamento de transações. Após as transações serem ordenadas, os nós em O enviam conjuntamente as transações para o cadeia principal. Os benefícios potenciais do FSS incluem: • Equidade nas ordens: o FSS inclui ferramentas para ajudar os desenvolvedores a garantir que as transações contribuições para um determinado contrato sejam ordenadas de uma forma que não dê uma margem injusta vantagem para usuários com bons recursos e/ou tecnicamente experientes. Políticas de pedidos podem ser especificados para esse fim. • Redução ou eliminação de fugas de informação: Ao garantir que os participantes da rede não possam explorar o conhecimento sobre transacções futuras, o FSS pode reduzir ou eliminar ataques como front-running que são baseados em informações disponíveis em rede antes que as transações sejam confirmadas. Prevenir a exploração de tais o vazamento garante que as transações contraditórias que dependem da pendência original as transações não podem entrar no razão antes que as transações originais sejam confirmadas.• Custo de transação reduzido: eliminando a necessidade dos jogadores de velocidade no envio suas transações para smart contract, o FSS pode reduzir bastante o custo do processamento de transações. • Ordenação de prioridade: o FSS pode atribuir automaticamente prioridade especial a transações críticas encomenda. Por exemplo, para evitar ataques frontais contra oracle relatórios, por exemplo, [79], o FSS pode inserir um relatório oracle em um fluxo de transações retroativamente. Um objetivo abrangente do FSS em DONs é capacitar os criadores de DeFi para realizarem sistemas financeiros, isto é, sistemas que não beneficiam usuários específicos (ou mineradores) sobre outros com base na velocidade, conhecimento interno ou capacidade de executar tarefas técnicas manipulação. Embora uma noção clara e geral de justiça seja ilusória, e a justiça perfeita em qualquer sentido razoável é inatingível, o FSS visa fornecer aos desenvolvedores um poderoso conjunto de ferramentas para que possam aplicar políticas que ajudem a cumprir suas metas de design para DeFi. Observamos que embora o principal objetivo do FSS seja atuar como um serviço de sequenciamento justo para o MAINCHAIN que DONs tem como alvo, alguns dos mesmos desejos de justiça que o FSS garantias também podem ser apropriadas para protocolos (descentralizados) executados entre DON festas. Assim, o FSS pode ser visto de forma mais ampla como um serviço prestado por um subconjunto de nós DON para sequenciar de forma justa não apenas transações enviadas por usuários de MAINCHAIN mas também transações (ou seja, mensagens) compartilhadas entre outros nós DON. Nesta seção, focaremos principalmente no objetivo de sequenciar as transações MAINCHAIN. Organização da seção: Na Seção 5.1, descrevemos duas aplicações de alto nível que motivam o design do FSS: impedir a execução antecipada de relatórios oracle e prevenir front-running das transações do usuário. Em seguida, fornecemos mais detalhes sobre o design do FSS na Seção 5.2. A Seção 5.3 descreve exemplos de garantias e meios de pedidos justos para alcançá-los. Finalmente, a Seção 5.4 e a Seção 5.5 discutem ameaças em nível de rede para tais políticas e meios para enfrentá-las, respectivamente para inundação de rede e Sybil ataques. 5.1 O problema inicial Para explicar os objetivos e o design do FSS, descrevemos duas formas gerais de front-running ataques e as limitações das soluções existentes. Front-running exemplifica uma classe de ataques de ordenação de transações: há uma série de ataques relacionados, como backrunning e sanduíche (front-running mais back-running) [237] que não abordamos aqui, mas que o FSS também ajuda a resolver. 5.1.1 Oracle Front Running Em sua função tradicional de fornecer dados fora da cadeia para aplicações blockchain, oracles tornar-se um alvo natural para ataques frontais.Considere o padrão de design comum de usar um oracle para fornecer vários feeds de preços para uma exchange on-chain: periodicamente (digamos, a cada hora), o oracle coleta dados de preços para ativos diferentes e os envia para um contrato de troca. Essas transações de dados de preços apresentam oportunidades óbvias de arbitragem: por exemplo, se o relatório oracle mais recente listar um preço muito mais alto para algum ativo, um adversário poderia antecipar o relatório oracle para comprar ativos e revendê-los imediatamente assim que o relatório de oracle for processado. Redutores de velocidade e preços retroativos: Uma solução natural para o problema de frontrunning de oracle é dar aos relatórios oracle prioridade especial sobre outras transações. Para por exemplo, relatórios oracle poderiam ser enviados com taxas altas para incentivar os mineradores a processar eles primeiro. Mas isto não impedirá a liderança se a oportunidade de arbitragem for elevada, nem pode impedir a arbitragem por parte dos próprios mineiros. Algumas exchanges recorreram, portanto, à implementação de “redutores de velocidade” mais pesados, como enfileirar as transações do usuário por vários blocos antes do processamento. ou ajustando os preços retroativamente quando um novo relatório oracle chegar. As desvantagens destas soluções são que acrescentam complexidade à implementação da troca, aumentam os requisitos de armazenamento e, portanto, os custos de transação, e perturbam a experiência do usuário, pois as trocas de ativos só são confirmadas após um período de tempo significativo. Pegando carona: Antes de passarmos para o FSS, discutiremos o piggybacking, uma forma bastante simples e solução elegante para o problema inicial oracle. Não é aplicável ao endereço no entanto, liderando em outros cenários. Resumindo, em vez de enviar relatórios periodicamente para o contrato on-chain, oracles publicar relatórios assinados que os usuários anexam às suas transações ao comprar ou vender ativos na cadeia. A exchange então simplesmente verifica se o relatório é válido e atualizado (por exemplo, o oracle pode assinar um intervalo de blocos para os quais o relatório é válido) e extrai o feed de preço relevante dele. Esta abordagem simples tem uma série de vantagens sobre o “lombada” acima abordagem: (1) O contrato de câmbio não precisa manter o estado dos preços, o que deve levar a custos de transação mais baixos; (2) Como os relatórios oracle são publicados na rede conforme a necessidade, oracles podem gerar atualizações mais frequentes (por exemplo, a cada minuto), assim minimizar oportunidades de arbitragem na preparação de um relatório9; (3) As transações podem ser validados imediatamente, pois sempre incluem um novo feed de preços. A abordagem não é perfeita, no entanto. Primeiro, esta solução de carona coloca o responsabilidade dos usuários da exchange buscarem relatórios oracle atualizados e anexá-los aos seus transações. Em segundo lugar, embora o piggybacking minimize as oportunidades de arbitragem, não pode evitá-los totalmente sem afetar a vigência do contrato em cadeia. Na verdade, se um oracle o relatório é válido até algum número de bloco n, então uma transação submetida ao bloco n + 1 exigiria um novo relatório válido. Devido a atrasos inerentes na propagação de relatórios de oracles para os usuários, o novo relatório válido para o bloco n + 1 teria 9A arbitragem só vale a pena se a diferença explorável nos preços dos activos exceder a diferença externa taxas exigidas para comprar e vender os ativos, por exemplo, aquelas cobradas pelos mineradores e pela bolsa.a ser divulgado algum período antes do bloco n + 1 ser minerado, digamos, no bloco n −k, assim criando uma sequência de k blocos onde existe uma oportunidade de arbitragem de curta duração. Nós agora descreva como o FSS contorna essas limitações. Priorizando relatórios oracle com FSS: O FSS pode abordar o oracle front-running problema, aproveitando a solução de carona acima, mas empurrando o adicional trabalho de aumento de transações com relatórios oracle para a Rede Oracle Descentralizada. Em um nível alto, os nós oracle coletam transações destinadas a uma troca na cadeia, concordar com um feed de preços em tempo real e publicar o feed de preços junto com as transações coletadas no contrato da cadeia principal. Conceitualmente, pode-se pensar nesta abordagem como uma “lote de transações aumentadas de dados”, onde o oracle garante que um arquivo atualizado o feed de preços é sempre adicionado às transações. As soluções FSS podem ser implementadas de forma transparente para os usuários da bolsa e com mudanças mínimas na lógica do contrato, conforme descrevemos com mais detalhes na Seção 5.2. Garantindo que relatórios oracle recentes são sempre priorizados em relação às transações do usuário é apenas um exemplo de uma política de ordenação que o FSS possa adotar e aplicar. Políticas do FSS para garantir a ordem justiça são descritos de forma mais geral na Seção 5.3. 5.1.2 Transações de usuário iniciais Passamos agora para o front-running em aplicações genéricas, onde o método de defesa acima não funciona. O problema pode ser capturado de forma ampla através do seguinte cenário: Um adversário vê alguma transação do usuário tx1 enviada para a rede P2P e injeta sua própria transação adversária tx2, de modo que tx2 seja processado antes de tx1 (por exemplo, pagando uma taxa de transação mais alta). Por exemplo, este tipo de front-running é comum entre bots que exploram oportunidades de arbitragem em DeFi sistemas [90] e afetaram usuários de vários aplicativos descentralizados [101]. Imposição de uma ordem justa entre as transações processado em blockchain resolve esse problema. Mais fundamentalmente, às vezes nem é necessário ver os detalhes de tx1 e o conhecimento de sua mera existência pode permitir que um adversário avance o tx1 através de seu possuir o tx2 e fraudar o usuário inocente que criou o tx1. Por exemplo, o usuário pode ser conhecido por negociar um ativo específico em horários regulares. Prevenir tais ataques requer mitigações que também evitam o vazamento de metadados [62]. Algumas soluções para este problema existem, mas introduzem atrasos e preocupações de usabilidade. Do pedido de rede ao pedido finalizado com FSS: Oportunidades para liderança surgem porque os sistemas existentes não têm mecanismos para garantir que a ordem em que as transações aparecem em cadeia respeita a ordem dos eventos e o fluxo de informações fora da rede. Isto representa um problema decorrente de deficiências na implementação de aplicações (por exemplo, plataformas de negociação) em um blockchain. Idealmente, alguém garantir que as transações sejam confirmadas em blockchain na mesma ordem em que foram criado e enviado para a rede P2P de blockchain. Mas como a rede blockchain

é distribuído, tal ordem não pode ser capturada. O FSS introduz, portanto, mecanismos para proteger contra violações da justiça, que surgem apenas por causa da distribuição natureza da rede blockchain. 5.2 Detalhes do FSS Figura 12: Mempool de ordem justa com dois caminhos de transação diferentes: direto e baseado em mempool. A Figura 12 mostra um esquema geral do FSS. Para garantir a justiça, o DON que fornece o FSS deve interferir no fluxo das transações à medida que elas entram na MAINCHAIN. Ajustes nos clientes, nos smart contracts no MAINCHAIN ou em ambos podem ser necessários. A um nível elevado, o processamento de transações pelo FSS pode ser decomposto em três fases, descritas a seguir: (1) Monitoramento das transações; (2) Sequenciamento de transações; e (3) Lançamento de transações. Dependendo do método de ordenação utilizado para sequenciamento de transações, são necessárias etapas adicionais de protocolo, conforme descrito na próxima seção. 5.2.1 Processamento de transações Monitoramento de transações: Prevemos duas abordagens diferentes para o FSS monitorar transações de usuário destinadas a um smart contract específico, diretas e baseadas em mempool: • Direto: A abordagem direta é conceitualmente mais simples, mas requer mudanças clientes usuários para que as transações sejam enviadas diretamente para o Oracle DescentralizadoNós da rede, em vez dos nós da cadeia principal. O DON coleta transações do usuário destinadas a um SC smart contract específico e as ordena com base em alguma política de pedidos. O DON então envia as transações solicitadas para o smart contract na cadeia principal. Alguns mecanismos de ordenação também requerem a abordagem direta porque o usuário que cria uma transação deve criptograficamente proteja-o antes de enviá-lo ao FSS. • Baseado em Mempool: Para facilitar a integração do FSS com clientes legados, o DON pode usar Mempool Services (MS) para monitorar o mempool da cadeia principal e coletar transações. A transmissão direta será provavelmente a implementação preferida para muitos contratos, e acreditamos que deveria ser bastante prático em muitos casos. Discutimos brevemente como os DApps existentes poderiam ser minimamente modificados para suportar transmissão direta, preservando uma boa experiência do usuário. Nós descrevemos abordagens usando Ethereum e MetaMask [6] já que essas são as escolhas mais populares hoje, mas as técnicas mencionadas devem se estender a outras redes e carteiras. Um Ethereum recente Proposta de Melhoria, “EIP-3085: Wallet add Ethereum método RPC de cadeia” [100], facilitará a segmentação de cadeias Ethereum personalizadas (usando um ID de CHAIN diferente do o do MAINCHAIN para evitar ataques de repetição) do MetaMask e outras carteiras baseadas em navegador. Após a implementação desta proposta, um DApp que pretenda utilizar um DON simplesmente adicionariam uma única chamada de método ao seu front-end para poder transmitir diretamente transações para qualquer DON expondo uma API compatível com Ethereum. Enquanto isso, “EIP-712: Ethereum dados estruturados digitados hashing e assinatura” [49] fornece um pouco alternativa mais envolvente, mas já amplamente implantada, onde um usuário DApp pode usar MetaMask para assinar dados estruturados especificando uma transação DON. O DApp pode enviar esses dados estruturados assinados para DON. Finalmente, notamos que abordagens híbridas também são possíveis. Por exemplo, legado os clientes podem continuar a enviar transações para o mempool da cadeia principal, mas transações (por exemplo, relatórios oracle) são enviadas diretamente para nós DON (em particular, o conjunto de nós que fornecem relatórios oracle, como atualizações de feed de preços e o conjunto de nós fornecimento do FSS pode sobrepor-se ou ser idêntico). Sequenciamento de transações: O principal objetivo do FSS é garantir que as transações dos usuários sejam ordenadas de acordo com uma política pré-definida. A natureza desta política irá dependem das necessidades do aplicativo e dos tipos de ordens de transação injustas que ele visa prevenir. Como o FSS no DON é capaz de processar dados e manter o estado local, eles podem impor uma política de sequenciamento arbitrária com base nas informações que são disponível em oracles. As políticas específicas de pedidos e sua implementação são discutidas posteriormente na Seção 5.3.Lançamento de transação: Após coletar e ordenar as transações dos usuários, recebidas diretamente dos usuários ou coletadas do mempool, o DON envia essas transações para a cadeia principal. Como tal, as interações de DON com a cadeia principal permanecem sujeito a ordens de transação (potencialmente injustas) regidas pelos mineradores da cadeia principal. Para aproveitar os benefícios da ordenação de transações descentralizadas, o alvo inteligente o contrato SC, portanto, deve ser projetado para tratar o DON como um cidadão de “primeira classe”. Nós distinguir duas abordagens: • Contratos somente DON: A opção de design mais simples é ter a cadeia principal inteligente o contrato SC aceita apenas transações que foram processadas pelo DON. Isto garante que smart contract processe transações na ordem proposta por o DON, mas de fato restringe o smart contract a operar em um sistema baseado em comitê (ou seja, o comitê DON agora tem poder contínuo para determinar o ordenação e inclusão de transações). • Contratos de classe dupla: um design preferencial e mais granular torna a cadeia principal inteligente contrato SC aceita transações originadas tanto de DON quanto de legado usuários,10 mas coloca “redutores de velocidade” tradicionais em transações que não foram processadas pelo DON. Por exemplo, as transações do DON podem ser processadas imediatamente, enquanto as transações legadas são “armazenadas em buffer” pelo smart contract para um período fixo de tempo. Outros mecanismos padrão para prevenir o front-running como esquemas de confirmação-revelação ou VDFs [53] também podem ser aplicados a legados transações. Isso garante que as transações solicitadas por DON sejam processadas em a ordem acordada, sem dar ao DON o poder indesejado de censurar transações. Como a imposição da ordenação de transações pelo FSS exige que as transações sejam agregadas “off-chain”, esta solução é naturalmente combinada com outras técnicas de agregação que visam reduzir os custos de processamento on-chain. Por exemplo, depois de coletar e ordenando transações, o DON pode enviar essas transações para a cadeia principal como um única “transação em lote” (por exemplo, um rollup), reduzindo assim a transação agregada taxa. Fazendo cumprir a ordem de transação: Seja em um design somente DON ou de classe dupla, a cadeia principal smart contract SC e DON devem ser co-projetadas para garantir que a ordem de transação de DON seja mantida. Aqui também, imaginamos diferentes opções de projeto: • Números de sequência: O DON pode anexar um número de sequência a cada transação e enviar essas transações para o mempool da cadeia principal. O principal 10Se o monitoramento de transações do DON for baseado no mempool, as transações legadas devem ser distinguíveis das transações DON para que não sejam coletadas pelo DON, por exemplo, por meio de uma tag especial incorporado na transação ou especificando um preço específico do gás, por ex. DON transações têm gás preços abaixo de um determinado limite.chain smart contract SC ignora transações que chegam “fora de sequência”. Nós observe que nesta configuração, os mineradores da cadeia principal podem decidir ignorar o DON ordenação de transações, fazendo com que as transações falhem. É possível, mantendo o estado (caro), que o SC imponha a ordem correta das transações, de certa forma de forma análoga a como o TCP armazena pacotes fora de ordem até que os pacotes perdidos sejam recebido. • Transação nonces: Para muitos blockchains, e em particular para Ethereum, o A abordagem de numeração de sequência acima pode aproveitar a transação integrada nonces para impor que o SC da cadeia principal smart contract processe as transações em sequência. Aqui, os nós DON enviam transações para a cadeia principal por meio de uma única conta da cadeia principal, protegida por uma chave compartilhada entre os nós DON. A conta a transação nonce garante que as transações sejam extraídas e processadas na ordem correta. • Transações agregadas: o DON pode agregar múltiplas transações em um rollup (ou em um pacote semelhante a rollup). A cadeia principal smart contract precisa ser projetado para lidar com essas transações agregadas. • Transações agregadas com um proxy da cadeia principal: aqui, o DON agrupa de forma semelhante as transações em uma “metatransação” para a cadeia principal, mas depende de um proxy personalizado smart contract para descompactar as transações e retransmiti-las para o contrato alvo SC. Esta técnica pode ser útil para compatibilidade herdada. As metatransações agem como rollups, mas diferem porque consistem em um arquivo não compactado lista de transações postadas uma vez na cadeia principal. O último design tem a vantagem de suportar perfeitamente as transações do usuário que eles próprios são procurados por meio de um contrato de cadeia principal antes de atingir a meta de DON contrato SC. Por exemplo, considere um usuário que envia uma transação para alguma carteira contrato, que por sua vez envia uma transação interna para SC. Atribuindo uma sequência número para tal transação seria complicado, a menos que o contrato da carteira do usuário seja especialmente projetado para encaminhar o número de sequência com cada transação interna para SC. Da mesma forma, tais transações internas não podem ser facilmente agregadas em uma metatransação enviada diretamente ao SC. Discutimos outras considerações de design para tais transações por procuração abaixo. 5.2.2 Atomicidade da transação Nossa discussão até agora assumiu implicitamente que as transações interagem com um único on-chain smart contract (por exemplo, um usuário envia uma solicitação de compra para uma exchange). Ainda assim, em sistemas como Ethereum, uma única transação pode consistir em múltiplas transações internas, por exemplo, uma smart contract chamando uma função em outro contrato. Abaixo, nós descrevem duas estratégias de alto nível para sequenciar transações “multicontratos”, enquanto preservando a atomicidade da transação (ou seja, a sequência de ações prescritas por as transações são todas executadas na ordem correta ou não são executadas).Atomicidade forte: A solução mais simples é aplicar o FSS, conforme descrito acima, diretamente a transações inteiras de “multicontratos”. Ou seja, os usuários enviam suas transações na rede e o FSS monitora, sequencia e publica essas transações no cadeia principal. Esta abordagem é tecnicamente simples, mas tem uma limitação potencial: se um usuário transação interage com dois contratos SC1 e SC2 que desejam alavancar serviços de sequenciação, então a política de sequenciação destes dois contratos tem de ser consistente. Isto é, dadas duas transações diferentes tx1 e tx2 com as quais cada uma interage tanto SC1 quanto SC2, não deve ser o caso de a política de SC1 ordenar tx1 antes de tx2 enquanto a política do SC2 prescreve a ordem oposta. Para a grande maioria dos cenários de interesse, prevemos que as políticas de sequenciamento adotadas por diferentes contratos serão consistentes. Por exemplo, SC1 e SC2 pode querer que as transações sejam ordenadas pela hora aproximada de chegada no mempool, e SC1 pode ainda querer que certos relatórios oracle sejam sempre entregues primeiro. Como o últimas oracle transações de relatório não interagem com SC2, as políticas são consistentes. Atomicidade fraca: Na sua total generalidade, o FSS poderia ser aplicado ao nível de indivíduos transações internas. Considere transações da forma tx = { ˜txpre, ˜txSC, ˜txpost}, consistindo em algumas transações iniciais transação(ões) ˜txpre, que resulta em uma transação interna ˜txSC para SC, que por sua vez emite transação(ões) interna(s) ˜txpost. A política de sequenciamento do SC pode determinar como a transação interna ˜txSC deve ser ordenada em relação a outras transações enviadas para SC, mas deixe em aberto a ordem de sequenciamento para ˜txpre e ˜txpost. Dadas as características intrínsecas do processamento de transações em sistemas como Ethereum, desenvolver um serviço de sequenciamento que vise transações internas específicas não é simples. Com um SC de contrato especialmente concebido, isto pode ser realizado da seguinte forma: 1. A transação tx é enviada para a rede e extraída (sem qualquer sequenciamento realizado pelo FSS). O ˜txpre inicial é executado e chama ˜txSC. 2. SC não executa ˜txSC e retorna. 3. O FSS monitora as transações internas do SC, sequencia-as e publica-as de volta para SC (ou seja, enviando transações ˜txSC diretamente para SC). 4. O SC processa as transações ˜txSC recebidas do FSS e emite as transações internas ˜txpost resultantes de ˜txSC. Com esta abordagem, as transações não são executadas totalmente atomicamente (ou seja, o original transação tx é dividida em várias transações na cadeia), mas a ordem de as transações internas são preservadas. Esta solução implica uma série de restrições de design. Por exemplo, ˜txpre não pode suponha que ˜txSC e ˜txpost serão executados. Além disso, o SC deve ser concebido de modo a executar transações ˜txSC e ˜txpost em nome de um determinado usuário, mesmo que tenham sidoenviado pelo FSS. Por estas razões, a solução de “Atomicidade Forte” de granulação mais grossa acima é provavelmente preferível na prática. Por respeitar dependências mais complexas, envolvendo múltiplas transações e suas respectivas transações internas, o escalonador de transações do FSS poderá conter funções elaboradas que se assemelham àquelas encontradas em gerenciadores de transações de relacionamentos gerenciadores de banco de dados. 5.3 Sequenciamento justo de transações Aqui discutimos duas noções de justiça para o sequenciamento de transações e as implementações correspondentes, que podem ser realizadas pelo FSS: justiça de ordem baseada em uma política imposto pelo FSS e preservação segura da causalidade, o que requer métodos criptográficos adicionais no FSS. Justiça da ordem: A justiça da ordem é uma noção de justiça temporal em protocolos de consenso que foi introduzido formalmente pela primeira vez por Kelkar et al. [144]. Kelkar et al. visam alcançar uma forma de política natural em que as transações sejam ordenados com base na hora em que foram recebidos pela primeira vez pelo DON (ou pela rede P2P, no caso de um FSS baseado em mempool). Num sistema descentralizado, no entanto, diferentes os nós podem ver as transações chegarem em uma ordem diferente. Estabelecendo uma ordem total em todas as transações é o próprio problema resolvido pelo protocolo de consenso subjacente MAINCHAIN. Kelkar et al. [144] introduz, portanto, uma noção mais fraca que pode ser alcançado com a ajuda de uma rede Oracle descentralizada, chamada “justiça de pedido em bloco”. Ele agrupa as transações que DON recebeu durante um intervalo de tempo em um “bloco” e insere todas as transações do bloco simultaneamente e na mesma posição (ou seja, altura) em MAINCHAIN. Eles são, portanto, ordenados juntos e devem ser executáveis paralelamente, sem criar conflitos entre eles. Grosso modo, orderfairness afirma que se uma grande fração de nós vê a transação τ1 antes de τ2, então τ1 será sequenciado antes ou no mesmo bloco que τ2. Ao impor uma atitude tão grosseira granularidade na ordem de transação, as oportunidades de ataques front-running e outros ataques relacionados a ordens são bastante reduzidas. Kelkar et al. propor uma família de protocolos chamada Aequitas [144], que aborda diferentes modelos de implantação, incluindo configurações de rede síncronas, parcialmente síncronas e assíncronas. Os protocolos Aequitas impõem uma sobrecarga de comunicação significativa em relação ao consenso BFT básico e, portanto, não são ideais para uso prático. Acreditamos, no entanto, que surgirão variantes práticas de Aequitas que poderão ser usadas para sequenciamento de transações no FSS e outras aplicações. Alguns esquemas relacionados já foram propostos que têm menos formalismo de acompanhamento e propriedades mais fracas, por exemplo, [36, 151, 236], mas melhor desempenho prático. Esses esquemas podem ser apoiados também no FSS. Também é importante notar que o termo “justiça” aparece em outras partes do blockchain literatura com um significado diferente, nomeadamente justiça no sentido de oportunidade paramineradores proporcionais aos seus recursos comprometidos [106, 181] ou para validators em termos de oportunidades iguais [153]. Preservação segura da causalidade: A abordagem mais conhecida para evitar frontrunning e outras violações de ordenação em plataformas distribuídas depende de criptografia. técnicas. Sua característica comum é ocultar os próprios dados da transação, aguardando até a ordem na camada de consenso foi estabelecida e para revelar os dados da transação posteriormente para processamento. Isso preserva a ordem causal entre as transações que são executado pelo blockchain. As noções de segurança relevantes e protocolos criptográficos foram desenvolvidos consideravelmente antes do advento de blockchains [71, 190]. As condições de segurança de “causalidade de entrada” [190] e “preservação segura da causalidade” [71, 97] exigem formalmente que nenhuma informação sobre uma transação se torne conhecida antes que a posição desta transação na ordem global tenha sido determinada. Um adversário não deve ser capaz de inferir qualquer informação até esse momento, de forma criptografada. sentido forte. Podem-se distinguir quatro técnicas criptográficas para preservar a causalidade: • Protocolos commit-reveal [29, 142, 145]: Em vez de uma transação ser anunciada claramente, apenas um compromisso criptográfico com a transação é transmitido. Depois que todas as transações confirmadas, mas ocultas, forem solicitadas (no início de blockchain sistemas no próprio MAINCHAIN, mas aqui pelo FSS), o remetente deve abrir o compromisso e revelar os dados da transação dentro de um intervalo de tempo pré-determinado. A rede então verifica se a abertura satisfaz o compromisso anterior. O as origens deste método datam de antes do advento de blockchains. Embora seja particularmente simples, a abordagem apresenta desvantagens consideráveis e não é fácil de utilizar por duas razões. Primeiro, como apenas o compromisso existe no nível do protocolo de pedido, a semântica da transação não pode ser validado durante o consenso. Uma viagem adicional de ida e volta ao cliente é necessário. Mais severamente, porém, pondera a possibilidade de que nenhuma abertura possa chegar, o que pode equivaler a um ataque de negação de serviço. Além disso, é difícil determinar se a abertura é válida de uma forma consistente e distribuída. maneira porque todos os participantes devem concordar se a abertura chegou em tempo. • Protocolos de confirmação-revelação com recuperação atrasada [145]: um desafio com o abordagem commit-reveal é que um cliente pode se comprometer com uma transação especulativamente e revelá-la mais tarde somente se as transações subsequentes a tornarem lucrativa. Um variante recente da abordagem de compromisso-revelação melhora a resiliência contra esta tipo de mau comportamento. Em particular, o protocolo TEX [145] aborda este problema usando uma abordagem inteligente em que as transações criptografadas incluem uma chave de descriptografia obtido calculando uma função de atraso verificável (VDF) [53, 221]. Se um cliente não conseguir descriptografar sua transação em tempo hábil, outras pessoas no sistema irão descriptografar em seu nome, resolvendo um quebra-cabeça criptográfico moderadamente difícil.• Criptografia de limite [71, 190]: Este método explora que o DON pode executar operações criptográficas de limite. Suponha que o FSS mantenha uma criptografia pública key pkO e os oracles compartilham a chave privada correspondente entre si. Os clientes então criptografam as transações sob pkO e as enviam para o FSS. Pedidos FSS transações no DON, então as descriptografa e finalmente as injeta em MAINCHAIN na ordem fixa. A criptografia, portanto, garante que o pedido seja não com base no conteúdo da transação, mas que os próprios dados estão disponíveis quando necessário. Este método foi originalmente proposto por Reiter e Birman [190] e posteriormente refinado por Cachin et al. [71], onde foi integrado com um consenso permitido protocolo. Trabalhos mais recentes exploraram o uso da criptografia de limite como mecanismo de nível de consenso para mensagens genéricas [33, 97] e para cálculos gerais com dados compartilhados [41]. Comparada aos protocolos de confirmação e revelação, a criptografia de limite evita ataques simples de negação de serviço (embora seja necessário cuidado, dado o custo computacional da descriptografia). Permite que o DON prossiga de forma autônoma, em sua própria velocidade e sem aguardando novas ações do cliente. As transações podem ser validadas imediatamente após terem sido descriptografadas. Além disso, os clientes criptografam todas as transações com um chave para DON e o padrão de comunicação permanece o mesmo que com outros transações. Gerenciando a chave de limite com segurança e com alteração de nós em O, no entanto, pode apresentar dificuldades adicionais. • Compartilhamento secreto confirmado [97]: em vez de criptografar os dados da transação em uma chave mantida por DON, o cliente também pode compartilhá-la secretamente para os nós em O. Usando um esquema de compartilhamento de segredos híbrido e computacionalmente seguro, a transação é criptografado primeiro usando uma cifra simétrica com uma chave aleatória. Apenas a chave simétrica correspondente é compartilhada e o texto cifrado é enviado para DON. O cliente deve enviar um compartilhamento de chave para cada nó em O usando uma mensagem criptografada separadamente. As etapas restantes do protocolo são as mesmas do limite criptografia, exceto que os dados da transação são descriptografados com o simétrico algoritmo após reconstruir a chave por transação a partir de seus compartilhamentos. Este método não requer configuração ou gerenciamento de um sistema criptográfico de chave pública associado ao DON. No entanto, os clientes devem estar cientes dos nós em O e comunicar num contexto seguro com cada um deles, o que coloca encargos adicionais para os clientes. Embora os métodos criptográficos ofereçam proteção completa contra informações vazando das transações enviadas para a rede, eles não ocultam metadados. Para por exemplo, um endereço IP ou um endereço Ethereum do remetente ainda pode ser usado por um adversário para realizar ataques frontais e outros. Vários recursos para melhorar a privacidade técnicas implantadas na camada de rede, por exemplo, [52, 95, 107], ou na camada de transação, por exemplo, [13, 65], seria necessário para atingir esse objetivo. O impacto de uma determinada peça de metadados, nomeadamente para qual contrato uma transação é enviada, podem ser (parcialmente) ocultadosatravés da multiplexação de muitos contratos no mesmo DON. Ocultação criptográfica de transações por si só também não impede a priorização de transações por DON nós em conluio com remetentes de transações. A causalidade segura garantida por protocolos criptográficos complementa as garantias de justiça da ordem para qualquer política, e pretendemos explorar uma combinação das duas métodos, onde isso for possível. Se um adversário não puder obter vantagem significativa observando metadados, os protocolos seguros de preservação de causalidade poderiam ser usados juntamente com uma abordagem de pedido ingênua também. Por exemplo, nós oracle podem gravar transações para L assim que os receberem, sem duplicação. As transações seriam então ordenados de acordo com sua aparência em L e posteriormente descriptografados. Também planejamos considerar o uso de TEEs como uma forma de ajudar a impor uma ordem justa; para Por exemplo, Tesseract [44] pode ser visto como alcançando uma forma de ordenação causal, mas um fortalecido pela capacidade do TEE de processar transações de forma explícita enquanto mantendo sua confidencialidade. 5.4 Considerações sobre a camada de rede Até agora, a nossa descrição do FSS centrou-se principalmente no problema de garantir que o a ordem finalizada das transações corresponde à ordem observada na rede. Doravante, consideramos questões de justiça que poderiam surgir na própria camada de rede. Os comerciantes de alta frequência em mercados eletrônicos convencionais investem consideráveis recursos para obter velocidade de rede superior [64], e os comerciantes em bolsas de criptomoedas exibem comportamento semelhante [90]. A velocidade da rede confere uma vantagem tanto em observar as transações de outras partes e na apresentação de transações concorrentes. Um remédio implantado na prática e popularizado no livro Flash Boys [155] é o “redutor de velocidade” introduzido inicialmente na bolsa IEX [128] e posteriormente em outras trocas [179] (com resultados mistos [19]). Este mecanismo impõe um atraso (350 microssegundos em IEX) no acesso ao mercado, com o objectivo de neutralizar vantagens no velocidade. Evidência empírica, por ex. [128], apoia sua eficácia na diminuição de certas negociações custos para investidores comuns. O FSS pode ser usado simplesmente para implementar um sistema assimétrico aumento de velocidade – aquele que atrasa as transações recebidas. Budish, Cramton e Shim [64] argumentam que a exploração das vantagens da velocidade é inevitável em mercados de tempo contínuo e defendem uma solução estrutural no forma de mercados baseados em leilões em lote. Mas esta abordagem não se consolidou amplamente em plataformas de negociação existentes. Os sistemas de negociação convencionais são centralizados, normalmente recebendo transações através de uma única conexão de rede. Num sistema descentralizado, pelo contrário, é possível observe a propagação da transação a partir de vários pontos de vista. Consequentemente, é possível observar comportamentos como inundação de rede em uma rede P2P. Nós pretendemos explorar abordagens de camada de rede para FSS que ajudem os desenvolvedores a especificar políticas proibindo tais comportamentos de rede indesejáveis.5.5 Políticas de justiça em nível de entidade A justiça da ordem e a causalidade segura visam impor uma ordem em transações que respeita o momento em que foram criados e submetidos pela primeira vez à rede. Uma limitação desta noção de justiça é que ela não impede ataques em que um adversário ganha vantagem ao inundar um sistema com muitas transações, uma estratégia observada em estado selvagem como uma forma de realizar sniping de transações eficaz em token vendas [159] e para criar congestionamento resultando na liquidação de posições de dívida colateralizada (CDPs) [48]. Em outras palavras, a justiça da ordem impõe justiça em relação às transações, não aos jogadores. Conforme mostrado no sistema CanDID [160], é possível usar ferramentas oracle como DECO ou Town Crier em conjunto com um comitê de nós (como um DON) para alcançar várias formas de resistência a Sybil, protegendo ao mesmo tempo a privacidade. Os usuários podem registrar identidades e fornecer evidências de sua singularidade sem revelar as próprias identidades. Credenciais resistentes a Sybil oferecem uma abordagem possível para enriquecer a ordem de transação políticas de uma forma que limitaria as oportunidades para ataques de inundação. Por exemplo, um A venda de token pode permitir apenas uma transação por usuário registrado, onde o registro exige uma prova da exclusividade de um identificador nacional, como um número de segurança social. Tal abordagem não é infalível, mas pode revelar-se uma política útil para mitigar ataques de inundação de transações.
Dịch vụ sắp xếp công bằng
Một dịch vụ quan trọng mà chúng tôi mong đợi DON sẽ cung cấp nhằm tận dụng khả năng kết nối mạng, tính toán và lưu trữ của họ được gọi là Dịch vụ tuần tự công bằng (FSS). Mặc dù FSS có thể được xem đơn giản là một ứng dụng được triển khai trong khuôn khổ DON nhưng chúng tôi nhấn mạnh đây là một dịch vụ mà chúng tôi tin rằng sẽ có nhu cầu cao trên toàn thế giới. blockchains và chúng tôi mong đợi mạng Chainlink sẽ tích cực hỗ trợ. Khi được thực thi trên các mạng blockchain công cộng, nhiều ứng dụng DeFi ngày nay tiết lộ thông tin mà người dùng có thể khai thác vì lợi ích riêng của họ, tương tự như các loại rò rỉ nội bộ và các cơ hội thao túng đang tràn lan trong thị trường [64, 155]. Thay vào đó, FSS mở đường hướng tới một hệ sinh thái DeFi công bằng. FSS giúp các nhà phát triển xây dựng các hợp đồng DeFi được bảo vệ khỏi sự thao túng thị trường do rò rỉ thông tin. Với những vấn đề chúng tôi nêu dưới đây, FSS là đặc biệt hấp dẫn đối với các dịch vụ lớp 2 và phù hợp trong khuôn khổ các dịch vụ đó mà chúng ta thảo luận ở Phần 6. Thử thách: Trong các hệ thống không được phép hiện có, các giao dịch được sắp xếp hoàn toàn theo quyết định của thợ mỏ. Trong các mạng được phép, các nút validator có thể phát huy tác dụng sức mạnh như nhau. Đây là một hình thức tập trung nhất thời phần lớn không được công nhận trong các hệ thống phi tập trung khác. Người khai thác có thể (tạm thời) kiểm duyệt các giao dịch của mình lợi ích riêng [171] hoặc sắp xếp lại chúng để tối đa hóa lợi ích của chính nó, một khái niệm được gọi là giá trị có thể khai thác được (MEV) [90]. Thuật ngữ MEV hơi gây nhầm lẫn: Nó không đề cập đến chỉ với giá trị mà người khai thác có thể nắm bắt: Một số MEV có thể được người dùng thông thường nắm bắt. Tuy nhiên, do thợ đào có nhiều quyền lực hơn người dùng thông thường nên MEV đại diện cho giới hạn trên về lượng giá trị mà bất kỳ thực thể nào có thể có được thông qua việc sắp xếp lại đối nghịch. và chèn giao dịch bổ sung. Ngay cả khi thợ mỏ yêu cầu giao dịch một cách đơn giản dựa trên phí (gas), không cần thao túng, người dùng có thể tự mình thao túng giá gas để tạo thuận lợi cho các giao dịch của họ so với những giao dịch kém tinh vi hơn. Daian và cộng sự. [90] ghi lại và định lượng các cách mà bot (không phải thợ mỏ) thực hiện lợi dụng động lực học khí theo cách gây hại cho người dùng hệ thống DeFi ngày nay và cách thức MEV thậm chí còn đe dọa sự ổn định của lớp đồng thuận cơ bản trong blockchain. Các ví dụ khác về thao túng lệnh giao dịch thường xuyên xuất hiện, ví dụ: [50, 154].Các phương thức xử lý giao dịch mới như rollups là một cách tiếp cận rất hứa hẹn đối với các vấn đề mở rộng quy mô của blockchains thông lượng cao. Tuy nhiên, họ không đề cập đến vấn đề MEV Thay vào đó, họ chuyển nó sang thực thể tạo ra rollup. Đó thực thể, dù là người vận hành smart contract hay người dùng cung cấp (zk-)rollup với bằng chứng hợp lệ, có quyền ra lệnh và chèn các giao dịch. Nói cách khác, rollups hoán đổi MEV lấy REV: Giá trị có thể trích xuất tổng hợp. MEV ảnh hưởng đến các giao dịch sắp tới đã được gửi tới mempool nhưng chưa được cam kết trên chuỗi. Thông tin về các giao dịch như vậy được phổ biến rộng rãi có sẵn trong mạng. Người khai thác, validator và người tham gia mạng thông thường có thể do đó khai thác kiến thức này và tạo ra các giao dịch phụ thuộc. Ngoài ra, người khai thác và validator có thể ảnh hưởng đến thứ tự của các giao dịch mà họ thực hiện và khai thác điều này để có lợi cho mình. Vấn đề ảnh hưởng quá mức của lãnh đạo đến việc sắp xếp giao dịch theo sự đồng thuận các giao thức đã được biết đến trong tài liệu từ những năm 1990 [71, 190], nhưng chưa thỏa mãn các giải pháp đã được hiện thực hóa trong thực tế cho đến nay [97]. Lý do chính là các giải pháp được đề xuất – ít nhất cho đến gần đây – không thể dễ dàng tích hợp với các giải pháp công cộng. blockchains, vì chúng dựa vào nội dung của các giao dịch được giữ bí mật cho đến sau đó thứ tự của chúng đã được xác định. Tổng quan về Dịch vụ tuần tự công bằng (FSS): DONs sẽ cung cấp các công cụ để phân cấp việc đặt hàng giao dịch và triển khai nó theo chính sách được chỉ định bởi một cơ quan phụ thuộc người tạo hợp đồng, lý tưởng nhất là người tạo ra hợp đồng công bằng và không mang lại lợi ích cho những người muốn Thao tác đặt hàng giao dịch. Nói chung, các công cụ này tạo thành FSS. FSS bao gồm ba thành phần. Đầu tiên là giám sát các giao dịch. Trong FSS, Các nút oracle trong O đều giám sát bộ nhớ của MAINCHAIN và cho phép (nếu muốn) gửi các giao dịch ngoài chuỗi thông qua một kênh chuyên biệt. Thứ hai là trình tự các giao dịch. Các nút trong giao dịch theo thứ tự O cho một hợp đồng dựa trên theo chính sách được xác định cho hợp đồng đó. Thứ ba là đăng tải các giao dịch. Sau khi các giao dịch được sắp xếp, các nút trong O cùng nhau gửi các giao dịch đến chuỗi chính. Những lợi ích tiềm năng của FSS bao gồm: • Tính công bằng của đơn hàng: FSS bao gồm các công cụ giúp nhà phát triển đảm bảo rằng các giao dịch đầu vào của một hợp đồng cụ thể được sắp xếp theo cách không gây ra sự thiếu công bằng lợi thế cho người dùng có nguồn lực tốt và/hoặc hiểu biết về kỹ thuật. Chính sách đặt hàng có thể được chỉ định cho mục đích này. • Giảm hoặc loại bỏ rò rỉ thông tin: Bằng cách đảm bảo rằng những người tham gia mạng không thể khai thác kiến thức về các giao dịch sắp tới, FSS có thể giảm bớt hoặc loại bỏ các cuộc tấn công như chạy trước dựa trên thông tin có sẵn trong mạng trước khi giao dịch được thực hiện. Ngăn chặn việc khai thác như vậy rò rỉ đảm bảo rằng các giao dịch đối nghịch phụ thuộc vào bản gốc đang chờ xử lý giao dịch không thể vào sổ cái trước khi giao dịch ban đầu được thực hiện.• Giảm chi phí giao dịch: Bằng cách loại bỏ yêu cầu của người chơi về tốc độ gửi giao dịch của họ tới smart contract, FSS có thể giảm đáng kể chi phí xử lý giao dịch. • Thứ tự ưu tiên: FSS có thể tự động ưu tiên đặc biệt cho các giao dịch quan trọng đặt hàng. Ví dụ: để ngăn chặn các cuộc tấn công trực tiếp chống lại oracle báo cáo, ví dụ: [79], FSS có thể chèn báo cáo oracle vào luồng giao dịch hồi tố. Mục tiêu bao quát của FSS trong DONs là trao quyền cho DeFi người sáng tạo để thực hiện công bằng hệ thống tài chính, nghĩa là các hệ thống không mang lại lợi ích cho người dùng (hoặc thợ mỏ) cụ thể hơn người khác trên cơ sở tốc độ, kiến thức nội bộ hoặc khả năng thực hiện kỹ thuật thao túng. Trong khi một khái niệm chung chung và sắc nét về sự công bằng là khó nắm bắt, thì sự công bằng hoàn hảo trong mọi ý nghĩa hợp lý đều không thể đạt được, FSS nhằm mục đích cung cấp cho các nhà phát triển một giải pháp mạnh mẽ bộ công cụ để họ có thể thực thi các chính sách giúp đáp ứng mục tiêu thiết kế của họ cho DeFi. Chúng tôi lưu ý rằng mặc dù mục tiêu chính của FSS là hoạt động như một dịch vụ giải trình tự công bằng cho MAINCHAIN mà DON nhắm tới, một số mong muốn công bằng tương tự như FSS đảm bảo cũng có thể phù hợp với các giao thức (phi tập trung) được chạy giữa DON bữa tiệc. Do đó, FSS có thể được xem rộng hơn như một dịch vụ được cung cấp bởi một tập hợp con trong số DON nút có trình tự khá hợp lý, không chỉ các giao dịch được gửi bởi người dùng MAINCHAIN mà còn cả các giao dịch (tức là tin nhắn) được chia sẻ giữa các nút DON khác. Trong phần này, chúng tôi sẽ tập trung chủ yếu vào mục tiêu sắp xếp thứ tự các giao dịch MAINCHAIN. Tổ chức phần: Trong Phần 5.1, chúng tôi mô tả hai ứng dụng cấp cao thúc đẩy thiết kế FSS: ngăn chặn việc chạy trước các báo cáo oracle và ngăn chặn chạy trước các giao dịch của người dùng. Sau đó chúng tôi cung cấp thêm chi tiết về thiết kế của FSS trong Phần 5.2. Phần 5.3 mô tả các ví dụ về đảm bảo trật tự công bằng và các biện pháp để đạt được chúng. Cuối cùng, Phần 5.4 và Phần 5.5 thảo luận về các mối đe dọa ở cấp độ mạng đối với các chính sách và phương tiện đó để giải quyết chúng, tương ứng với tình trạng tràn mạng và Sybil các cuộc tấn công. 5.1 Vấn đề chạy trước Để giải thích các mục tiêu và thiết kế của FSS, chúng tôi mô tả hai dạng chung của hoạt động chạy trước các cuộc tấn công và những hạn chế của các giải pháp hiện có. Chạy trước minh họa một lớp về các cuộc tấn công đặt hàng giao dịch: Có một số cuộc tấn công liên quan như chạy ngược và xen kẽ (chạy trước và chạy sau) [237] mà chúng tôi không đề cập đến ở đây, nhưng FSS nào cũng giúp giải quyết. 5.1.1 Oracle chạy trước Với vai trò truyền thống là cung cấp dữ liệu ngoài chuỗi cho blockchain ứng dụng, oracles trở thành mục tiêu tự nhiên cho các cuộc tấn công trực diện.Hãy xem xét mẫu thiết kế phổ biến về việc sử dụng oracle để cung cấp các nguồn cấp dữ liệu giá khác nhau đến trao đổi trên chuỗi: định kỳ (giả sử mỗi giờ), oracle thu thập dữ liệu giá cho các tài sản khác nhau và gửi chúng tới một hợp đồng trao đổi. Các giao dịch dữ liệu giá này đưa ra các cơ hội chênh lệch giá rõ ràng: Ví dụ: nếu báo cáo oracle mới nhất liệt kê giá cao hơn nhiều cho một số nội dung, đối thủ có thể chạy trước báo cáo oracle tới mua tài sản và bán lại ngay sau khi báo cáo của oracle được xử lý. Giảm tốc độ và định giá hồi tố: Một giải pháp tự nhiên cho vấn đề chạy trước oracle là ưu tiên đặc biệt cho các báo cáo của oracle so với các giao dịch khác. cho ví dụ: oracle báo cáo có thể được gửi với mức phí cao để khuyến khích người khai thác xử lý họ đầu tiên. Nhưng điều này sẽ không ngăn cản việc chạy trước nếu cơ hội kinh doanh chênh lệch giá cao, nó cũng không thể ngăn chặn sự chênh lệch giá của chính những người khai thác. Do đó, một số sàn giao dịch đã phải sử dụng đến việc triển khai các “tốc độ tăng tốc” nặng nề hơn, chẳng hạn như xếp hàng các giao dịch của người dùng cho một số khối trước khi xử lý. chúng hoặc điều chỉnh giá trở về trước khi có báo cáo oracle mới. Nhược điểm của các giải pháp này là chúng làm tăng thêm độ phức tạp cho việc thực hiện trao đổi, tăng yêu cầu lưu trữ và do đó chi phí giao dịch, đồng thời làm gián đoạn trải nghiệm người dùng vì việc trao đổi tài sản chỉ được xác nhận sau một khoảng thời gian đáng kể. Cõng: Trước khi chuyển sang FSS, chúng ta thảo luận về việc cõng, một cách khá đơn giản và giải pháp tinh tế cho vấn đề chạy trước oracle. Nó không áp dụng cho địa chỉ Tuy nhiên, chạy trước trong các tình huống khác. Tóm lại, thay vì gửi báo cáo định kỳ tới hợp đồng trên chuỗi, oracles xuất bản các báo cáo đã ký mà người dùng thêm vào giao dịch của họ khi mua hoặc bán tài sản trên chuỗi. Sau đó, sàn giao dịch chỉ cần kiểm tra xem báo cáo có hợp lệ và mới không (ví dụ: oracle có thể ký một phạm vi khối mà báo cáo hợp lệ) và trích xuất nguồn cấp dữ liệu giá có liên quan từ nó. Cách tiếp cận đơn giản này có một số ưu điểm so với cách “tăng tốc” ở trên cách tiếp cận: (1) Hợp đồng trao đổi không cần giữ trạng thái nguồn cấp giá, điều này sẽ dẫn đến chi phí giao dịch thấp hơn; (2) Vì các báo cáo oracle được đăng trên chuỗi khi cần thiết, oracles có thể tạo ra các cập nhật thường xuyên hơn (ví dụ: mỗi phút), do đó giảm thiểu cơ hội chênh lệch giá từ việc chạy trước một báo cáo9; (3) Giao dịch có thể được xác thực ngay lập tức vì chúng luôn bao gồm nguồn cấp dữ liệu giá mới. Tuy nhiên, cách tiếp cận này không hoàn hảo. Đầu tiên, giải pháp cõng này đặt trách nhiệm của người dùng sàn giao dịch là tìm nạp các báo cáo oracle cập nhật và đính kèm chúng vào giao dịch. Thứ hai, mặc dù việc cõng làm giảm thiểu cơ hội kinh doanh chênh lệch giá nhưng nó không thể ngăn chặn hoàn toàn chúng mà không ảnh hưởng đến tính tồn tại của hợp đồng trên chuỗi. Thật vậy, nếu một oracle báo cáo có hiệu lực cho đến khi khối số n nào đó, sau đó giao dịch được gửi tới khối n + 1 sẽ yêu cầu một báo cáo hợp lệ mới. Do sự chậm trễ cố hữu trong việc truyền bá báo cáo từ oracle tới người dùng, báo cáo mới hợp lệ cho khối n + 1 sẽ có 9 Kinh doanh chênh lệch giá chỉ có giá trị nếu chênh lệch có thể khai thác được trong giá tài sản vượt quá chênh lệch không liên quan phí cần thiết để mua và bán tài sản, ví dụ: phí do người khai thác và sàn giao dịch thu.được công bố một khoảng thời gian trước khi khối n + 1 được khai thác, chẳng hạn tại khối n −k, do đó tạo ra một chuỗi k khối trong đó tồn tại cơ hội chênh lệch giá trong thời gian ngắn. Chúng tôi bây giờ hãy mô tả cách FSS khắc phục những hạn chế này. Ưu tiên oracle báo cáo với FSS: FSS có thể giải quyết oracle chạy trước vấn đề bằng cách xây dựng dựa trên giải pháp hỗ trợ ở trên nhưng đẩy mạnh thêm công việc tăng cường các giao dịch với oracle báo cáo cho Mạng Oracle phi tập trung. Ở mức cao, các nút oracle thu thập các giao dịch dành cho trao đổi trên chuỗi, đồng ý về nguồn cấp giá theo thời gian thực và đăng nguồn cấp giá cùng với các giao dịch đã thu thập lên hợp đồng chuỗi chính. Về mặt khái niệm, người ta có thể coi cách tiếp cận này như một “phân nhóm giao dịch tăng cường dữ liệu”, trong đó oracle đảm bảo rằng giao dịch được cập nhật nguồn cấp dữ liệu giá luôn được thêm vào các giao dịch. Các giải pháp FSS có thể được triển khai một cách minh bạch cho người dùng sàn giao dịch và với những thay đổi tối thiểu đối với logic hợp đồng, như chúng tôi mô tả chi tiết hơn trong Phần 5.2. Đảm bảo các báo cáo oracle mới luôn được ưu tiên hơn các giao dịch của người dùng chỉ là một ví dụ của chính sách đặt hàng mà FSS có thể áp dụng và thực thi. Chính sách của FSS nhằm đảm bảo trật tự sự công bằng được mô tả tổng quát hơn ở Phần 5.3. 5.1.2 Giao dịch người dùng chạy trước Bây giờ chúng ta chuyển sang chạy trước trong các ứng dụng chung, trong đó phương pháp bảo vệ ở trên không hoạt động. Vấn đề có thể được nắm bắt rộng rãi thông qua kịch bản sau: Kẻ tấn công nhìn thấy một số giao dịch tx1 của người dùng được gửi vào mạng P2P và tiêm vào giao dịch đối nghịch tx2 của chính nó, do đó tx2 được xử lý trước tx1 (ví dụ: bằng cách thanh toán phí giao dịch cao hơn). Ví dụ, kiểu chạy trước này phổ biến ở các bot khai thác cơ hội chênh lệch giá trong DeFi hệ thống [90] và đã ảnh hưởng đến người dùng các ứng dụng phi tập trung khác nhau [101]. Thiết lập trật tự công bằng giữa các giao dịch được xử lý trên blockchain sẽ giải quyết được vấn đề này. Cơ bản hơn, việc xem chi tiết tx1 đôi khi còn không cần thiết và biết về sự tồn tại đơn thuần của nó có thể cho phép kẻ thù chiếm ưu thế trước tx1 thông qua nó. sở hữu tx2 và lừa gạt người dùng vô tội đã tạo ra tx1. Ví dụ, người dùng có thể được biết là giao dịch một tài sản cụ thể vào thời điểm thường xuyên. Ngăn chặn các cuộc tấn công như vậy đòi hỏi các biện pháp giảm thiểu cũng tránh rò rỉ siêu dữ liệu [62]. Một số giải pháp cho vấn đề này tồn tại, nhưng chúng gây ra sự chậm trễ và những lo ngại về khả năng sử dụng. Từ đơn hàng mạng đến đơn hàng cuối cùng với FSS: Cơ hội đi trước phát sinh do các hệ thống hiện tại không có cơ chế để đảm bảo rằng thứ tự trong đó các giao dịch xuất hiện trên chuỗi tôn trọng thứ tự của các sự kiện và luồng thông tin bên ngoài mạng. Điều này thể hiện sự cố phát sinh từ những thiếu sót trong việc triển khai ứng dụng (ví dụ: nền tảng giao dịch) trên blockchain. Lý tưởng nhất là người ta sẽ đảm bảo rằng các giao dịch được cam kết trên blockchain theo đúng thứ tự như trước đây được tạo và gửi tới mạng P2P của blockchain. Nhưng vì mạng blockchain

được phân phối thì không thể nắm bắt được thứ tự như vậy. Do đó FSS giới thiệu các cơ chế
để bảo vệ khỏi những hành vi vi phạm sự công bằng phát sinh chỉ vì sự phân bổ
bản chất của mạng blockchain.
5.2
Chi tiết FSS
Hình 12:
Mempool hợp lý với hai đường dẫn giao dịch khác nhau:
trực tiếp và
dựa trên mempool.
Hình 12 thể hiện sơ đồ chung của FSS. Để đảm bảo tính công bằng, DON cung cấp FSS phải can thiệp vào luồng giao dịch khi chúng tham gia MAINCHAIN.
Có thể cần phải điều chỉnh đối với khách hàng, đối với smart contract trên MAINCHAIN hoặc đối với cả hai. Ở mức độ cao, việc xử lý các giao dịch bằng FSS có thể được chia thành ba
các giai đoạn được mô tả dưới đây: (1) Giám sát giao dịch; (2) Trình tự giao dịch; và
(3) Đăng tải giao dịch. Tùy thuộc vào phương thức đặt hàng được sử dụng để sắp xếp trình tự giao dịch, cần có các bước giao thức bổ sung, như được mô tả trong phần tiếp theo.
5.2.1
Xử lý giao dịch
Giám sát giao dịch:
Chúng tôi hình dung ra hai cách tiếp cận khác nhau để FSS giám sát
giao dịch của người dùng dành cho một smart contract cụ thể, trực tiếp và dựa trên mempool:
• Trực tiếp: Cách tiếp cận trực tiếp đơn giản nhất về mặt khái niệm nhưng đòi hỏi phải thay đổi
khách hàng người dùng để các giao dịch được gửi trực tiếp đến Oracle phi tập trungCác nút mạng, thay vì các nút của chuỗi chính. DON thu thập
giao dịch của người dùng hướng đến một smart contract SC cụ thể và sắp xếp chúng dựa trên
về một số chính sách đặt hàng. DON sau đó gửi các giao dịch đã đặt hàng tới
smart contract trên chuỗi chính. Một số cơ chế đặt hàng cũng yêu cầu cách tiếp cận trực tiếp vì người dùng tạo giao dịch phải sử dụng mật mã
bảo vệ nó trước khi gửi nó đến FSS.
• Dựa trên Mempool: Để tạo điều kiện thuận lợi cho việc tích hợp FSS với các máy khách cũ, DON
có thể sử dụng Dịch vụ Mempool (MS) để giám sát mempool của chuỗi chính và thu thập
giao dịch.
Truyền trực tiếp có thể là cách thực hiện được ưu tiên cho nhiều hợp đồng,
và chúng tôi tin rằng nó sẽ khá thực tế trong nhiều trường hợp.
Chúng tôi thảo luận ngắn gọn về cách các DApp hiện tại có thể được sửa đổi ở mức tối thiểu để hỗ trợ
truyền trực tiếp trong khi vẫn duy trì trải nghiệm tốt cho người dùng. Chúng tôi mô tả các phương pháp tiếp cận
sử dụng Ethereum và MetaMask [6] vì đây là những lựa chọn phổ biến nhất hiện nay, nhưng
các kỹ thuật được đề cập sẽ mở rộng sang các chuỗi và ví khác. Ethereum gần đây
Đề xuất cải tiến, “EIP-3085: Ví thêm Ethereum phương thức RPC chuỗi” [100],
sẽ giúp dễ dàng nhắm mục tiêu các chuỗi Ethereum tùy chỉnh (sử dụng ID CHAIN khác với
của MAINCHAIN để ngăn chặn các cuộc tấn công lặp lại) từ MetaMask và các ví dựa trên trình duyệt khác. Sau khi triển khai đề xuất này, DApp đang tìm cách sử dụng DON
chỉ cần thêm một lệnh gọi phương thức vào giao diện người dùng của họ để có thể truyền trực tiếp
giao dịch với bất kỳ DON nào có API tương thích với Ethereum. Trong khi đó,
“EIP-712: Ethereum đã nhập dữ liệu có cấu trúc hash nhập và ký” [49] cung cấp một chút
giải pháp thay thế có liên quan nhiều hơn nhưng đã được triển khai rộng rãi, nơi người dùng DApp có thể sử dụng
MetaMask để ký dữ liệu có cấu trúc chỉ định giao dịch DON. DApp có thể gửi
dữ liệu có cấu trúc đã được ký này vào DON.
Cuối cùng, chúng tôi lưu ý rằng các phương pháp kết hợp cũng có thể thực hiện được.
Ví dụ, di sản
khách hàng có thể tiếp tục gửi giao dịch vào mempool của chuỗi chính, nhưng điều quan trọng là
các giao dịch (ví dụ: báo cáo oracle) được gửi trực tiếp đến DON nút (cụ thể là
tập hợp các nút cung cấp oracle báo cáo chẳng hạn như cập nhật nguồn cấp dữ liệu giá và tập hợp các nút
việc cung cấp FSS có thể trùng lặp hoặc giống hệt nhau).
Trình tự giao dịch:
Mục đích chính của FSS là đảm bảo rằng các giao dịch của người dùng được sắp xếp theo chính sách được xác định trước. Bản chất của chính sách này sẽ
tùy thuộc vào nhu cầu của ứng dụng và các loại lệnh giao dịch không công bằng mà nó
nhằm mục đích ngăn chặn.
Vì FSS trên DON có khả năng xử lý dữ liệu và duy trì trạng thái cục bộ,
họ có thể áp đặt chính sách sắp xếp thứ tự tùy ý dựa trên thông tin được
có sẵn tại oracles.
Các chính sách đặt hàng cụ thể và việc triển khai chúng sẽ được thảo luận sau trong Phần 5.3.Đăng giao dịch:
Sau khi thu thập và sắp xếp các giao dịch của người dùng, nhận trực tiếp từ người dùng hoặc được thu thập từ mempool, DON sẽ gửi các giao dịch này đến chuỗi chính. Do đó, các tương tác của DON với chuỗi chính vẫn được duy trì
tùy thuộc vào thứ tự giao dịch (có khả năng không công bằng) được quản lý bởi các thợ mỏ của chuỗi chính. Để khai thác lợi ích của việc đặt hàng giao dịch phi tập trung, mục tiêu thông minh
do đó, hợp đồng SC phải được thiết kế để đối xử với DON như một công dân “hạng nhất”. Chúng tôi
phân biệt hai cách tiếp cận:
• Hợp đồng chỉ DON: Tùy chọn thiết kế đơn giản nhất là có chuỗi chính thông minh
hợp đồng SC chỉ chấp nhận các giao dịch đã được xử lý bởi DON. Cái này
đảm bảo rằng smart contract xử lý các giao dịch theo thứ tự được đề xuất bởi
DON, nhưng trên thực tế hạn chế smart contract hoạt động trong hệ thống dựa trên ủy ban (tức là ủy ban DON hiện có quyền liên tục để xác định
đặt hàng và bao gồm các giao dịch).
• Hợp đồng hai lớp: Thiết kế được ưu tiên, chi tiết hơn có chuỗi chính thông minh
hợp đồng SC chấp nhận các giao dịch có nguồn gốc từ cả DON và từ kế thừa
người dùng,10 nhưng đặt những "gờ giảm tốc" truyền thống đối với các giao dịch không được DON xử lý. Ví dụ: các giao dịch từ DON có thể được xử lý
ngay lập tức, trong khi các giao dịch kế thừa được smart contract “đệm” cho
một khoảng thời gian nhất định. Các cơ chế tiêu chuẩn khác để ngăn chặn việc chạy trước
chẳng hạn như các kế hoạch tiết lộ cam kết hoặc VDF [53] cũng có thể được áp dụng cho các kế hoạch cũ
giao dịch. Điều này đảm bảo rằng các giao dịch theo thứ tự DON được xử lý trong
mệnh lệnh đã được thống nhất mà không trao cho DON quyền kiểm duyệt không mong muốn
giao dịch.
Do việc FSS áp dụng thứ tự giao dịch yêu cầu các giao dịch phải được tổng hợp “ngoài chuỗi”, nên giải pháp này được kết hợp một cách tự nhiên với các kỹ thuật tổng hợp khác nhằm giảm chi phí xử lý trên chuỗi. Ví dụ, sau khi thu thập và
đặt hàng các giao dịch, DON có thể gửi các giao dịch này đến chuỗi chính dưới dạng
"giao dịch theo đợt" duy nhất (ví dụ: rollup), do đó làm giảm giao dịch tổng hợp
phí.
Thực thi lệnh giao dịch:
Dù ở thiết kế chỉ DON hay thiết kế hai lớp,
chuỗi chính smart contract SC và DON phải được đồng thiết kế để đảm bảo rằng thứ tự giao dịch của DON được duy trì. Ở đây cũng vậy, chúng tôi hình dung khác nhau
tùy chọn thiết kế:
• Số thứ tự: DON có thể thêm số thứ tự vào mỗi giao dịch và gửi các giao dịch này vào mempool của chuỗi chính.
chính
10Nếu việc giám sát giao dịch của DON dựa trên mempool thì các giao dịch kế thừa phải được phân biệt với các giao dịch DON để chúng không bị DON thu thập, ví dụ: thông qua một thẻ đặc biệt
được nhúng vào giao dịch hoặc bằng cách chỉ định một mức giá gas cụ thể, ví dụ: DON giao dịch có gas
giá dưới một ngưỡng nhất định.chuỗi smart contract SC bỏ qua các giao dịch đến “không theo trình tự”. Chúng tôi
lưu ý rằng trong cài đặt này, người khai thác chuỗi chính có thể quyết định bỏ qua DON
đặt hàng giao dịch, do đó làm cho giao dịch thất bại. Có thể bằng cách giữ trạng thái (đắt) để SC thực thi thứ tự giao dịch chính xác, phần nào
tương tự như cách TCP đệm các gói không đúng thứ tự cho đến khi các gói bị thiếu được
đã nhận được.
• Giao dịch nonce: Đối với nhiều blockchain và đặc biệt đối với Ethereum,
Cách tiếp cận đánh số thứ tự ở trên có thể tận dụng giao dịch tích hợp nonces để
buộc chuỗi chính smart contract SC xử lý các giao dịch theo trình tự.
Tại đây, các nút DON gửi giao dịch đến chuỗi chính thông qua một tài khoản chuỗi chính duy nhất, được bảo vệ bằng khóa được chia sẻ giữa các nút DON. Tài khoản của
giao dịch nonce đảm bảo rằng các giao dịch được khai thác và xử lý theo đúng thứ tự.
• Tổng hợp các giao dịch: DON có thể tổng hợp nhiều giao dịch trong rollup
(hoặc trong một gói tương tự như rollup). Chuỗi chính smart contract cần phải được
được thiết kế để xử lý các giao dịch tổng hợp như vậy.
• Tổng hợp các giao dịch bằng proxy chuỗi chính: Ở đây, DON tương tự gói các giao dịch thành một “giao dịch meta” cho chuỗi chính, nhưng dựa vào một
proxy tùy chỉnh smart contract để giải nén các giao dịch và chuyển tiếp chúng tới
hợp đồng mục tiêu SC. Kỹ thuật này có thể hữu ích cho khả năng tương thích cũ. Siêu giao dịch hoạt động giống như rollup nhưng khác ở chỗ chúng bao gồm một giao dịch không nén
danh sách các giao dịch được đăng một lần lên chuỗi chính.
Thiết kế cuối cùng có ưu điểm là hỗ trợ liền mạch các giao dịch của người dùng
bản thân họ được ủy quyền thông qua hợp đồng chuỗi chính trước khi đạt được mục tiêu của DON
hợp đồng SC. Ví dụ: hãy xem xét một người dùng gửi giao dịch đến một số ví
hợp đồng, sau đó sẽ gửi một giao dịch nội bộ tới SC. Chỉ định một trình tự
số lượng giao dịch như vậy sẽ rất phức tạp, trừ khi hợp đồng ví của người dùng được
được thiết kế đặc biệt để chuyển tiếp số thứ tự với mọi giao dịch nội bộ tới
SC.
Tương tự, các giao dịch nội bộ như vậy không thể dễ dàng tổng hợp thành siêu giao dịch được gửi trực tiếp đến SC. Chúng tôi thảo luận thêm về những cân nhắc thiết kế cho
các giao dịch ủy quyền dưới đây.
5.2.2
Tính nguyên tử của giao dịch
Cuộc thảo luận của chúng ta cho đến nay đã ngầm giả định rằng các giao dịch tương tác với một
trên chuỗi smart contract (ví dụ: người dùng gửi yêu cầu mua tới một sàn giao dịch). Tuy nhiên, trong
các hệ thống như Ethereum, một giao dịch có thể bao gồm nhiều giao dịch nội bộ, ví dụ: một smart contract gọi một hàm trong một hợp đồng khác. Dưới đây, chúng tôi
mô tả hai chiến lược cấp cao để sắp xếp các giao dịch “nhiều hợp đồng”, trong khi
duy trì tính nguyên tử của giao dịch (tức là chuỗi hành động được quy định bởi
tất cả các giao dịch đều được thực hiện theo đúng thứ tự hoặc hoàn toàn không).Tính nguyên tử mạnh:
Giải pháp đơn giản nhất là áp dụng FSS, như được mô tả ở trên, trực tiếp cho toàn bộ giao dịch “nhiều hợp đồng”. Nghĩa là, người dùng gửi giao dịch của họ
vào mạng và FSS giám sát, sắp xếp và đăng các giao dịch này lên
chuỗi chính.
Cách tiếp cận này đơn giản về mặt kỹ thuật nhưng có một hạn chế tiềm ẩn: Nếu người dùng
giao dịch tương tác với hai hợp đồng SC1 và SC2 đều muốn tận dụng công bằng
các dịch vụ sắp xếp thứ tự thì chính sách sắp xếp thứ tự của hai hợp đồng này phải nhất quán. Nghĩa là, với hai giao dịch tx1 và tx2 khác nhau mà mỗi giao dịch tương tác với
cả SC1 và SC2, không được xảy ra trường hợp chính sách của SC1 đặt hàng tx1 trước tx2
trong khi chính sách của SC2 lại quy định thứ tự ngược lại.
Đối với phần lớn các kịch bản quan tâm, chúng tôi hình dung rằng các chính sách trình tự được áp dụng bởi các hợp đồng khác nhau sẽ nhất quán. Ví dụ: cả SC1 và SC2
có thể muốn các giao dịch được sắp xếp theo thời gian đến gần đúng của chúng trong mempool,
và SC1 có thể muốn một số báo cáo oracle nhất định luôn được gửi trước. Như
sau đó oracle báo cáo các giao dịch không tương tác với SC2, các chính sách đều nhất quán.
Tính nguyên tử yếu:
Nói chung, FSS có thể được áp dụng ở cấp độ cá nhân
giao dịch nội bộ.
Xét các giao dịch có dạng tx = { ˜txpre, ˜txSC, ˜txpost}, bao gồm một số giao dịch ban đầu
(các) giao dịch ˜txpre, dẫn đến một giao dịch nội bộ ˜txSC tới SC, do đó
phát hành (các) giao dịch nội bộ ˜txpost. Chính sách giải trình tự của SC có thể xác định cách thức
giao dịch nội bộ ˜txSC phải được sắp xếp theo các giao dịch khác được gửi
tới SC, nhưng để ngỏ thứ tự tuần tự cho txpre vàtxpost.
Do bản chất của việc xử lý giao dịch trong các hệ thống như Ethereum, việc phát triển dịch vụ tuần tự hướng tới các giao dịch nội bộ cụ thể không hề đơn giản. Với hợp đồng SC được thiết kế đặc biệt, điều này có thể được thực hiện như sau:
1. Giao dịch tx được gửi vào mạng và được khai thác (không có bất kỳ trình tự nào
được thực hiện bởi FSS). ˜txpre ban đầu được thực thi và gọi ˜txSC.
2. SC không thực thi txSC và trả về.
3. FSS giám sát các giao dịch nội bộ tới SC, sắp xếp chúng và gửi lại chúng
tới SC (tức là bằng cách gửi giao dịch ˜txSC trực tiếp đến SC).
4. SC xử lý các giao dịchtxSC nhận được từ FSS và phát hành các giao dịch nội bộ txpost phát sinh từtxSC.
Với cách tiếp cận này, các giao dịch không được thực hiện hoàn toàn nguyên tử (tức là giao dịch gốc
giao dịch tx được chia thành nhiều giao dịch trên chuỗi), nhưng thứ tự của
giao dịch nội bộ được bảo tồn.
Giải pháp này đòi hỏi một số hạn chế về thiết kế. Ví dụ: ‘txpre không thể
giả sử rằng ˜txSC và ˜txpost sẽ được thực thi. Hơn nữa, SC nên được thiết kế sao cho
thực hiện các giao dịch ˜txSC và ˜txpost thay mặt cho một người dùng nhất định, ngay cả khi họđược gửi bởi FSS. Vì những lý do này, giải pháp “Tính nguyên tử mạnh” chi tiết hơn
ở trên có thể thích hợp hơn trong thực tế.
Để tôn trọng sự phụ thuộc phức tạp hơn, liên quan đến nhiều giao dịch và
các giao dịch nội bộ tương ứng của họ, bộ lập lịch giao dịch của FSS có thể chứa
các chức năng phức tạp giống với các chức năng được tìm thấy trong các trình quản lý giao dịch của quan hệ
những người quản lý cơ sở dữ liệu.
5.3
Trình tự giao dịch công bằng
Ở đây chúng ta thảo luận về hai khái niệm về tính công bằng trong trình tự giao dịch và các triển khai tương ứng, có thể được FSS nhận ra: tính công bằng của trật tự dựa trên chính sách
do FSS áp đặt và bảo toàn quan hệ nhân quả, đòi hỏi các phương pháp mã hóa bổ sung trong FSS.
Trật tự-công bằng:
Công bằng trật tự là một khái niệm về sự công bằng tạm thời trong các giao thức đồng thuận
lần đầu tiên được giới thiệu chính thức bởi Kelkar et al. [144].
Kelkar và cộng sự. nhằm đạt được một hình thức chính sách tự nhiên trong đó các giao dịch được thực hiện
được sắp xếp dựa trên thời gian chúng được nhận lần đầu tiên bởi DON (hoặc mạng P2P,
trong trường hợp FSS dựa trên mempool). Tuy nhiên, trong một hệ thống phi tập trung, khác nhau
các nút có thể thấy các giao dịch đến theo thứ tự khác nhau.
Thiết lập một trật tự tổng thể
trên tất cả các giao dịch chính là vấn đề được giải quyết bằng giao thức đồng thuận cơ bản
CHUỖI MAIN.
Kelkar và cộng sự. [144] do đó đưa ra một khái niệm yếu hơn có thể
đạt được với sự trợ giúp của Mạng Oracle phi tập trung, được gọi là “sự công bằng theo thứ tự khối”.
Nó nhóm các giao dịch mà DON đã nhận được trong một khoảng thời gian thành một
“chặn” và chèn tất cả các giao dịch của khối một cách đồng thời và ở cùng một vị trí
(tức là chiều cao) vào MAINCHAIN. Do đó, chúng được sắp xếp cùng nhau và phải có thể thực thi được
song song mà không tạo ra bất kỳ xung đột nào giữa chúng.
Nói một cách đại khái, tính công bằng trật tự phát biểu rằng nếu một phần lớn các nút nhìn thấy giao dịch τ1 trước τ2, thì
τ1 sẽ được sắp xếp trước hoặc trong cùng khối với τ2. Bằng cách áp đặt một cách thô thiển như vậy
mức độ chi tiết của lệnh giao dịch, cơ hội cho các cuộc tấn công chạy trước và các cuộc tấn công liên quan đến lệnh khác sẽ giảm đi đáng kể.
Kelkar và cộng sự. đề xuất một họ giao thức có tên là Aequitas [144], địa chỉ
các mô hình triển khai khác nhau, bao gồm cài đặt mạng đồng bộ, đồng bộ một phần và không đồng bộ. Các giao thức Aequitas áp đặt chi phí liên lạc đáng kể so với sự đồng thuận cơ bản BFT và do đó không lý tưởng để sử dụng thực tế.
Tuy nhiên, chúng tôi tin rằng các biến thể thực tế của Aequitas sẽ xuất hiện và có thể được sử dụng
để giải trình tự giao dịch trong FSS và các ứng dụng khác. Một số sơ đồ liên quan có
đã được đề xuất có ít chủ nghĩa hình thức đi kèm hơn và các đặc tính yếu hơn,
ví dụ: [36, 151, 236], nhưng hiệu suất thực tế tốt hơn. Những kế hoạch này có thể được hỗ trợ
trong FSS cũng vậy.
Cũng cần lưu ý rằng thuật ngữ “công bằng” xuất hiện ở nơi khác trong blockchain
văn học với một ý nghĩa khác, cụ thể là sự công bằng trong ý nghĩa cơ hội chocông cụ khai thác tỷ lệ thuận với tài nguyên đã cam kết của họ [106, 181] hoặc cho validators tính theo
cơ hội bình đẳng [153].
Bảo toàn nhân quả:
Cách tiếp cận được biết đến rộng rãi nhất để ngăn chặn việc chạy trước và các hành vi vi phạm trật tự khác trong các nền tảng phân tán dựa vào mật mã.
kỹ thuật. Đặc điểm chung của chúng là ẩn dữ liệu giao dịch, đợi đến khi
trật tự ở lớp đồng thuận đã được thiết lập và tiết lộ dữ liệu giao dịch
sau để xử lý. Điều này duy trì trật tự nhân quả giữa các giao dịch được thực hiện
được thực thi bởi blockchain. Các khái niệm bảo mật và giao thức mật mã có liên quan
đã được phát triển đáng kể trước sự ra đời của blockchains [71, 190].
Các điều kiện bảo mật của “quan hệ nhân quả đầu vào” [190] và “bảo toàn quan hệ nhân quả” [71, 97] yêu cầu chính thức rằng không có thông tin nào về giao dịch được biết đến
trước khi vị trí của giao dịch này trong trật tự toàn cầu được xác định. Kẻ thù không được phép suy ra bất kỳ thông tin nào cho đến thời điểm đó, dưới dạng mật mã.
giác quan mạnh mẽ.
Người ta có thể phân biệt bốn kỹ thuật mật mã để bảo toàn quan hệ nhân quả:
• Giao thức tiết lộ cam kết [29, 142, 145]: Thay vì công bố giao dịch
rõ ràng, chỉ có cam kết mật mã đối với giao dịch được phát đi. Sau khi tất cả các giao dịch đã cam kết nhưng bị ẩn đã được đặt hàng (vào đầu blockchain
hệ thống trên chính MAINCHAIN, nhưng ở đây là bởi FSS), người gửi phải mở cam kết và tiết lộ dữ liệu giao dịch trong một khoảng thời gian định trước.
Sau đó, mạng sẽ xác minh rằng việc mở có đáp ứng được cam kết trước đó hay không. các
nguồn gốc của phương pháp này có từ trước khi blockchains ra đời.
Mặc dù nó đặc biệt đơn giản nhưng cách tiếp cận này có những hạn chế đáng kể và không dễ áp dụng vì hai lý do. Đầu tiên, vì chỉ có cam kết tồn tại ở cấp độ giao thức đặt hàng nên ngữ nghĩa của giao dịch
không thể được xác nhận trong quá trình đồng thuận. Một chuyến khứ hồi bổ sung cho khách hàng
được yêu cầu. Tuy nhiên, nghiêm trọng hơn, cân nhắc khả năng không có sự mở cửa nào có thể
bao giờ đến, điều này có thể dẫn đến một cuộc tấn công từ chối dịch vụ. Hơn nữa, nó
thật khó để xác định liệu phần mở đầu có hợp lệ trong một cách nhất quán, phân tán hay không
theo cách này bởi vì tất cả những người tham gia phải đồng ý về việc liệu thời điểm khai mạc đã đến
thời gian.
• Các giao thức tiết lộ cam kết có quá trình khôi phục bị trì hoãn [145]: Một thách thức với
Cách tiếp cận cam kết tiết lộ là khách hàng có thể cam kết thực hiện một giao dịch theo cách suy đoán và chỉ tiết lộ nó sau này nếu các giao dịch tiếp theo mang lại lợi nhuận. A
biến thể gần đây của phương pháp tiết lộ cam kết cải thiện khả năng phục hồi chống lại điều này
loại hành vi sai trái. Đặc biệt, giao thức TEX [145] giải quyết vấn đề này
sử dụng một cách tiếp cận thông minh trong đó các giao dịch được mã hóa bao gồm khóa giải mã
có thể đạt được bằng cách tính toán hàm trễ có thể kiểm chứng (VDF) [53, 221]. Nếu một khách hàng
không giải mã được giao dịch của mình kịp thời, những người khác trong hệ thống sẽ giải mã
nó thay mặt cô ấy bằng cách giải một câu đố mật mã có độ khó vừa phải.• Mã hóa ngưỡng [71, 190]: Phương pháp này khai thác rằng DON có thể thực hiện
hoạt động ngưỡng mật mã. Giả sử FSS duy trì mã hóa công khai
khóa pkO và oracle chia sẻ khóa riêng tương ứng với nhau.
Sau đó, khách hàng mã hóa các giao dịch theo pkO và gửi chúng đến FSS. Đơn đặt hàng FSS
giao dịch trên DON, sau đó giải mã chúng và cuối cùng đưa chúng vào
MAINCHAIN theo thứ tự cố định. Do đó, mã hóa đảm bảo rằng việc đặt hàng được
không dựa trên nội dung giao dịch mà chính dữ liệu đó có sẵn khi
cần thiết.
Phương pháp này ban đầu được đề xuất bởi Reiter và Birman [190] và sau đó được Cachin et al cải tiến. [71], nơi nó được tích hợp với sự đồng thuận được phép
giao thức. Công việc gần đây hơn đã khám phá việc sử dụng mật mã ngưỡng như một
cơ chế mức đồng thuận cho các thông báo chung [33, 97] và cho các tính toán chung với dữ liệu được chia sẻ [41].
So với các giao thức tiết lộ cam kết, mã hóa ngưỡng ngăn chặn các cuộc tấn công từ chối dịch vụ đơn giản (mặc dù cần phải cẩn thận do chi phí tính toán của việc giải mã). Nó cho phép DON hoạt động tự động, theo tốc độ riêng của nó và không cần
chờ đợi những hành động tiếp theo của khách hàng. Các giao dịch có thể được xác thực ngay sau khi chúng được giải mã. Hơn nữa, khách hàng mã hóa tất cả các giao dịch bằng một
khóa cho DON và kiểu giao tiếp vẫn giống như các kiểu khác
giao dịch. Quản lý khóa ngưỡng một cách an toàn và với các nút thay đổi trong
Tuy nhiên, O có thể gây thêm khó khăn.
• Chia sẻ bí mật đã cam kết [97]: Thay vì mã hóa dữ liệu giao dịch theo
khóa được giữ bởi DON, khách hàng cũng có thể chia sẻ bí mật khóa đó cho các nút trong O.
Sử dụng sơ đồ chia sẻ bí mật kết hợp, an toàn về mặt tính toán, giao dịch
được mã hóa đầu tiên bằng mật mã đối xứng với khóa ngẫu nhiên. Chỉ có khóa đối xứng tương ứng mới được chia sẻ và bản mã được gửi tới DON.
Máy khách phải gửi một khóa chia sẻ tới mỗi nút trong O bằng một tin nhắn được mã hóa riêng. Các bước giao thức còn lại tương tự như với ngưỡng
mã hóa, ngoại trừ dữ liệu giao dịch được giải mã bằng cơ chế đối xứng
thuật toán sau khi xây dựng lại khóa cho mỗi giao dịch từ các chia sẻ của nó.
Phương pháp này không yêu cầu thiết lập hoặc quản lý hệ thống mật mã khóa công khai
được liên kết với DON. Tuy nhiên, khách hàng phải nhận thức được các nút trong
O và liên lạc trong bối cảnh an toàn với từng người trong số họ, nơi đặt
thêm gánh nặng cho khách hàng.
Mặc dù các phương pháp mật mã cung cấp sự bảo vệ hoàn toàn chống lại thông tin
rò rỉ từ các giao dịch đã gửi lên mạng, chúng không che giấu siêu dữ liệu. cho
ví dụ: địa chỉ IP hoặc địa chỉ Ethereum của người gửi vẫn có thể được sử dụng bởi
một đối thủ để thực hiện các cuộc tấn công chạy trước và các cuộc tấn công khác. Tăng cường quyền riêng tư khác nhau
các kỹ thuật được triển khai ở lớp mạng, ví dụ: [52, 95, 107] hoặc lớp giao dịch,
ví dụ: [13, 65] sẽ cần thiết để hoàn thành mục tiêu này. Tác động của một phần cụ thể
siêu dữ liệu, cụ thể là giao dịch được gửi đến hợp đồng nào, có thể được che giấu (một phần)thông qua việc ghép nhiều hợp đồng trên cùng một DON. Che giấu mật mã
bản thân các giao dịch cũng không ngăn cản việc ưu tiên các giao dịch do lỗi
DON nút thông đồng với người gửi giao dịch.
Đảm bảo tính nhân quả được đảm bảo bởi các giao thức mật mã bổ sung cho các đảm bảo về tính công bằng trật tự cho bất kỳ chính sách nào và chúng tôi dự định khám phá sự kết hợp của cả hai
phương pháp, nếu điều này có thể. Nếu đối thủ không thể đạt được lợi thế đáng kể từ
quan sát siêu dữ liệu, các giao thức bảo toàn quan hệ nhân quả an toàn có thể được sử dụng cùng với
cũng là một cách tiếp cận đặt hàng ngây thơ. Ví dụ: nút oracle có thể ghi giao dịch
tới L ngay khi họ nhận được chúng mà không bị trùng lặp. Các giao dịch sau đó sẽ được
được sắp xếp theo sự xuất hiện của chúng trên L và sau đó được giải mã.
Chúng tôi cũng có kế hoạch xem xét việc sử dụng TEE như một cách giúp thực thi trật tự công bằng; cho
ví dụ: Tesseract [44] có thể được xem là đạt được một dạng trật tự nhân quả, nhưng một
được củng cố bởi khả năng của TEE xử lý các giao dịch ở dạng rõ ràng trong khi
duy trì tính bảo mật của chúng.
5,4
Những cân nhắc về lớp mạng
Cho đến nay, mô tả của chúng tôi về FSS chủ yếu tập trung vào vấn đề thực thi
thứ tự cuối cùng của các giao dịch khớp với thứ tự được quan sát của chúng trong mạng. Sau đây,
chúng tôi xem xét các vấn đề công bằng có thể phát sinh ở chính lớp mạng.
Các nhà giao dịch tần số cao trong các thị trường điện tử thông thường đầu tư đáng kể
tài nguyên để có được tốc độ mạng vượt trội [64] và các nhà giao dịch trong các sàn giao dịch tiền điện tử thể hiện hành vi tương tự [90]. Tốc độ mạng mang lại lợi thế cả về mặt
giám sát các giao dịch của các bên khác và gửi các giao dịch cạnh tranh.
Một biện pháp khắc phục được triển khai trong thực tế và phổ biến trong cuốn sách Flash Boys [155] là
“tăng tốc” được giới thiệu ban đầu trong sàn giao dịch IEX [128] và sau đó ở sàn giao dịch khác
trao đổi [179] (với kết quả hỗn hợp [19]). Cơ chế này áp đặt độ trễ (350 micro giây trong IEX) khi tiếp cận thị trường, nhằm mục đích vô hiệu hóa các lợi thế trong
tốc độ. Bằng chứng thực nghiệm, ví dụ: [128], hỗ trợ hiệu quả của nó trong việc giảm giao dịch nhất định
chi phí cho các nhà đầu tư thông thường. FSS có thể được sử dụng đơn giản để thực hiện một cơ chế bất đối xứng
giảm tốc độ—làm trì hoãn các giao dịch đến.
Budish, Cramton và Shim [64] cho rằng việc khai thác lợi thế về tốc độ
là không thể tránh khỏi trong các thị trường thời gian liên tục và tranh luận về một biện pháp khắc phục mang tính cơ cấu trong
hình thức thị trường đấu giá hàng loạt. Nhưng cách tiếp cận này chưa được áp dụng rộng rãi
trong các nền tảng giao dịch hiện có.
Các hệ thống giao dịch thông thường được tập trung hóa, thường nhận giao dịch thông qua
một kết nối mạng duy nhất. Ngược lại, trong một hệ thống phi tập trung, có thể
quan sát việc truyền bá giao dịch từ nhiều điểm thuận lợi. Do đó, có thể quan sát các hành vi như tràn mạng trong mạng P2P.
chúng tôi dự định
để khám phá các cách tiếp cận lớp mạng đối với FSS giúp các nhà phát triển chỉ định các chính sách
cấm các hành vi mạng không mong muốn như vậy.5,5
Chính sách công bằng ở cấp độ thực thể
Tính công bằng trong trật tự và tính nhân quả an toàn nhằm mục đích thực thi trật tự đối với các giao dịch
tôn trọng thời điểm chúng được tạo và lần đầu tiên được gửi lên mạng. Hạn chế của khái niệm công bằng này là nó không ngăn chặn được các cuộc tấn công mà đối thủ
đạt được lợi thế bằng cách làm tràn ngập một hệ thống có nhiều giao dịch, một chiến lược được quan sát
ngoài tự nhiên như một cách để thực hiện việc theo dõi giao dịch hiệu quả trong token doanh số [159] và để
tạo ra tắc nghẽn dẫn đến việc thanh lý các vị trí nợ thế chấp (CDP) [48].
Nói cách khác, sự công bằng trong trật tự đảm bảo sự công bằng đối với các giao dịch chứ không phải đối với người chơi.
Như được hiển thị trong hệ thống CanDID [160], có thể sử dụng các công cụ oracle như DECO
hoặc Town Crier kết hợp với một ủy ban gồm các nút (chẳng hạn như DON) để đạt được
nhiều hình thức kháng Sybil khác nhau trong khi vẫn bảo vệ quyền riêng tư. Người dùng có thể đăng ký danh tính
và cung cấp bằng chứng về tính độc đáo của họ mà không tiết lộ danh tính.
Thông tin xác thực chống lại âm thanh cung cấp một cách tiếp cận khả thi để làm phong phú thêm việc đặt hàng giao dịch
chính sách theo cách có thể hạn chế cơ hội cho các cuộc tấn công tràn ngập. Ví dụ, một
token chương trình giảm giá chỉ có thể cho phép một giao dịch cho mỗi người dùng đã đăng ký, trong trường hợp đăng ký
yêu cầu bằng chứng về tính duy nhất của mã định danh quốc gia, chẳng hạn như Số An sinh Xã hội.
Cách tiếp cận như vậy không phải là hoàn hảo nhưng có thể chứng tỏ là một chính sách hữu ích để giảm thiểu các cuộc tấn công tràn ngập giao dịch.
A estrutura de execução de transações DON
(DON-TEF) DONs fornecerão oracle e suporte de recursos descentralizados para soluções de camada 2 dentro o que chamamos de Estrutura Descentralizada de Execução de Transações da Oracle Network (DONTEF) ou TEF, para abreviar. Hoje, a frequência de atualizações dos contratos DeFi é limitada pelas latências da cadeia principal, por exemplo, o intervalo médio de bloqueio de 10 a 15 segundos em Ethereum [104] - bem como o custo de enviar grandes quantidades de dados em cadeia e taxa de transferência computacional/tx limitada - motivando abordagens de escalonamento, como fragmentação [148, 158, 232] e execução da camada 2 [5, 12, 121, 141, 169, 186, 187]. Mesmo blockchains com tempos de transação muito mais rápidos, por exemplo, [120], propuseram estratégias de escalonamento que envolvem computação fora da cadeia [168]. O TEF destina-se a atuar como um recurso de camada 2 para qualquer sistema de camada 1/MAINCHAIN. Usando TEF, DONs podem suportar atualizações mais rápidas em um contrato MAINCHAIN enquanto mantendo as principais garantias de confiança fornecidas pela cadeia principal. TEF pode apoiar qualquer uma de uma série de técnicas e paradigmas de execução da camada 2, incluindo rollups,11 rollups otimistas, Validium, etc., bem como um modelo de confiança de limite no qual DON nós executam transações. O TEF é complementar ao FSS e destina-se a apoiá-lo. Em outras palavras, qualquer aplicação em execução no TEF pode usar FSS. 11Frequentemente chamados de “zk-rollups”, um nome impróprio, pois não precisam necessariamente de provas de conhecimento zero.

6.1 Visão geral do TEF O TEF é um padrão de projeto para a construção e execução de um híbrido de alto desempenho smart contractSC. De acordo com a ideia principal por trás dos smart contracts híbridos, o TEF envolve um decomposição de SC em duas partes: (1) O que chamamos no contexto TEF de âncora contrato SCa em MAINCHAIN e (2) lógica DON executada que chamamos de executável TEF. Usamos SC aqui para denotar o contrato lógico implementado pela combinação de SCa e executar. (Como observado acima, esperamos desenvolver ferramentas de compilação para decompor um contrate SC automaticamente nesses componentes.) O executável TEF exec é o mecanismo que processa as transações dos usuários no SC. Isso pode ser executado com bom desempenho, pois é executado no DON. Possui diversas funções: • Ingestão de transações: exec recebe ou busca as transações dos usuários. Isso pode acontecer diretamente, ou seja, através do envio da transação no DON, ou através do MAINCHAIN mempool usando MS. • Execução rápida de transações: o exec processa transações envolvendo ativos dentro SC. Isso é feito localmente, ou seja, no DON. • Acesso rápido e de baixo custo oracle / adaptador: exec tem acesso nativo a relatórios oracle e outros dados do adaptador que levam, por exemplo, a dados de ativos mais rápidos, mais baratos e mais precisos preços do que a execução MAINCHAIN. Além disso, o acesso oracle fora da cadeia reduz o custo operacional do oracle, daí o custo de utilização do sistema, evitando armazenamento caro na cadeia. • Sincronização: exec envia periodicamente atualizações de DON para MAINCHAIN, atualizando SCa. O contrato âncora é o front end MAINCHAIN do SC. Como componente de maior confiança do SC, ele serve a vários propósitos: • Custódia de ativos: os fundos dos usuários são depositados, mantidos e retirados da SCa. • Verificação de sincronização: o SCa pode verificar a exatidão das atualizações de estado quando executado sincroniza, por exemplo, SNARKs anexados a rollups. • Guarda-corpos: SCa pode incluir disposições para proteção contra corrupção ou falhas na verdade. (Veja a Seção 7 para mais detalhes.) No TEF, os fundos dos usuários são custodiados na MAINCHAIN, o que significa que o próprio DON não tem custódia. Dependendo da escolha do mecanismo de sincronização (veja abaixo), os usuários podem precisar confiar em DON apenas para relatórios oracle precisos e sincronização oportuna com MAINCHAIN. O modelo de confiança resultante é muito semelhante àquele para DEXes baseados em carteira de pedidos, por exemplo, [2], que hoje geralmente incluem um componente fora da cadeia para correspondência de pedidos e um componente onchain para compensação e liquidação.Para usar o vocabulário dos sistemas de pagamento, pode-se pensar em exec como o componente do SC responsável pela compensação, enquanto o SCa trata da liquidação. Veja a Fig. 13 para um esquema representação do TEF. Figura 13: Esquema TEF. Neste exemplo, as transações passam pelo mempool de MAINCHAIN via MS para DON. Benefícios do TEF: O TEF traz três benefícios principais: • Alto desempenho: SC herda o rendimento muito maior do DON do que o MAINCHAIN para transações e relatórios oracle. Além disso, o exec pode processar transações mais rapidamente e responder aos relatórios oracle em tempo hábil do que uma implementação apenas no MAINCHAIN. • Taxas mais baixas: O processo de sincronização é menos urgente do que o processamento de transações, e as transações podem ser enviadas de DON para MAINCHAIN em lotes. Consequentemente, as taxas por transação na cadeia (por exemplo, custos de gás) com esta abordagem são muito mais baixas do que para um contrato executado apenas em MAINCHAIN. • Confidencialidade: Os mecanismos de confidencialidade do DON podem ser trazidos para aguenta SC.
Limitações do TEF: Uma limitação do TEF é que ele não suporta saques, pois ocorrem apenas na MAINCHAIN: Ao enviar uma solicitação de saque para SCa, um usuário pode precisar esperar que exec execute uma atualização de estado que inclua o transação de retirada antes que ela possa ser aprovada. Discutimos algumas soluções parciais, no entanto, na Seção 6.2. Outra limitação do TEF é que ele não suporta composição atômica de DeFi contratos no MAINCHAIN, especificamente a capacidade de rotear ativos através de múltiplos DeFi contratos em uma única transação. O TEF pode, no entanto, apoiar tal atomicidade entre DeFi contratos em execução no mesmo DON. Também discutimos algumas maneiras de resolver isso problema na Seção 6.2. 6.2 Roteamento de transações As transações para SC podem ser enviadas pelos usuários diretamente para DON ou podem ser roteadas através o mempool em MAINCHAIN (via FSS). Existem quatro tipos de transação distintos, cada um dos quais requer tratamento diferente: Transações dentro do contrato: Por evitar as complicações da dinâmica dos gases, o TEF proporciona ao SC mais flexibilidade no tratamento das transações do que seria disponível em um contrato de camada 1. Por exemplo, enquanto uma transação mempool em Ethereum pode ser substituída por uma nova transação com um preço de gás mais alto, o SC pode tratar uma transação que opere em ativos dentro do SC como oficial assim que se tornar visível no pool de membros. Consequentemente, o SC não precisa esperar que uma transação seja confirmada dentro de um bloco, resultando em latência consideravelmente reduzida. Proxy: Um usuário pode desejar enviar uma transação τ para SC através de um contrato de carteira ou outro contrato em MAINCHAIN. É possível que o DON simule a execução de τ em MAINCHAIN para determinar se isso resulta em uma transação subsequente para SC. Nesse caso, τ pode ser sequenciado com outras transações para SC que o façam. Existem alguns possibilidades de como o DON identifica tais transações: (1) O DON pode simular todas as transações no mempool (uma abordagem cara); (2) Certos contratos ou tipos de contratos, por exemplo, carteiras, podem ser listados para monitoramento pelo DON; ou (3) os usuários podem anote transações para inspeção DON. As coisas ficam mais complicadas quando uma única transação interage com duas contratos, SC1 e SC2, ambos os quais usam serviços de sequenciamento justo e têm políticas de pedidos incompatíveis. O DON pode, por exemplo, sequenciar τ no último momento que é compatível com ambos. Depósitos: Uma transação que deposita um ativo MAINCHAIN em SC precisa ser confirmada em um bloco antes que SC possa tratá-la como válida. Quando detecta a mineração de um transação que envia ativos (por exemplo, Ether) para SCa, o executivo pode confirmar instantaneamente adepósito. Por exemplo, ele pode aplicar um preço atual relatado por oracle no DON ao ativo. Retiradas: Conforme observado acima, uma limitação do TEF é que os saques nem sempre podem ser executados instantaneamente. Em um modelo de execução do tipo rollup, a retirada a solicitação deve ser sequenciada com outras transações, ou seja, acumulada, para ser segura processado. Existem, no entanto, algumas soluções parciais para esta limitação. Se DON puder calcular rapidamente uma prova de validade de rollup até a transação de retirada, então observar a transação de um usuário τ no mempool exec pode enviar uma transação de atualização de estado τ ′ para τ a um preço de gás mais alto, uma espécie de front-running benéfico. Desde que τ não seja extraído antes de τ ′ atingir o mempool, τ ′ precederá τ e τ efetuará uma retirada aprovada. Em uma variante TEF onde o DON é utilizado para calcular atualizações de estado (consulte a variante de assinatura de limite abaixo), o DON pode alternativamente determinar fora da cadeia se τ deve ser aprovado dado o estado de SC no momento de sua execução. O DON pode então enviar uma transação τ ′ que aprova a retirada τ - sem efetuar uma transação completa atualização do estado. Se esta abordagem não for possível, ou nos casos em que não for bem-sucedida, um procedimento iniciado por DON a transação τ ′ pode enviar fundos ao usuário em resposta a τ para que o usuário não precise iniciar uma transação adicional. 6.3 Sincronizando O executável TEF exec envia periodicamente atualizações de DON para MAINCHAIN, atualizar o estado do SCa em um processo que chamamos de sincronização. A sincronização pode ser pensada como propagação de transações da camada 2 para a camada 1, então o TEF pode recorrer a qualquer número de técnicas existentes para este fim, incluindo rollups [5, 12, 16, 69], otimista rollups [10, 11, 141], Validium [201] ou assinatura de limite básico, por exemplo, limite BLS, Schnorr ou ECDSA [24, 54, 116, 202]. Em princípio, ambientes de execução confiáveis também pode atestar a correção das mudanças de estado, oferecendo um desempenho muito melhor alternativa a rollups, mas com um modelo de confiança dependente de hardware. (Veja, por exemplo, [80].) Abaixo comparamos essas opções de sincronização em relação a três propriedades principais em TEF: • Disponibilidade de dados: Onde é armazenado o estado de SC? Pelo menos três opções são disponível em TEF: no MAINCHAIN, em DON ou por algum armazenamento de terceiros provedores como IPFS. Eles alcançam diferentes garantias de segurança, disponibilidade níveis e perfis de desempenho. Resumidamente, armazenar o estado no MAINCHAIN permite auditabilidade na cadeia e elimina a dependência de qualquer parte para disponibilidade do estado; por outro lado, armazenar o estado off-chain pode reduzir o custo de armazenamento e melhorar taxa de transferência, ao custo de provedores de armazenamento confiáveis (DON ou terceiros) para disponibilidade de dados. É claro que modelos flexíveis que combinam estas opções também são possível. Indicamos a forma necessária de disponibilização dos dados na Tabela 1.• Garantias de correção: como a SCa verifica a exatidão das atualizações empurrado por exec? Isso afeta a carga computacional em exec e SCa e o latência de sincronização (veja abaixo). • Latência: a latência de sincronização tem três fatores contribuintes: (1) O tempo necessário para esperar gerar uma transação de sincronização τsync; (2) O tempo necessário para τsync a ser confirmado no MAINCHAIN; e (3) O tempo para τsync entrar em vigor SCa. No TEF, a latência é particularmente importante para retiradas (mas menos importante para transações dentro do contrato) porque as retiradas exigem necessariamente um (pelo menos parcial) sincronização de estado. Sincronizando opções Dados disponibilidade Correção garantias Latência Acúmulo [5, 12, 16, 69] Na rede Provas de validade Tempo necessário para gerar provas de validade (por exemplo, minutos nos sistemas atuais) Válido [201] Fora da cadeia Provas de validade Igual ao acima Otimista rollup [10, 11, 141] Na rede Provas de fraude Duração do desafio período (por exemplo, dias ou semanas) Assinatura de limite [24, 54, 116, 202] Flexível Limite de assinaturas por DON Instantâneo Ambientes de execução confiáveis [80] Flexível Baseado em hardware atestados Instantâneo Tabela 1: Várias opções de sincronização no TEF e suas propriedades. A Tabela 1 resume essas propriedades nas cinco principais opções de sincronização no TEF. (Nota que não pretendemos comparar essas tecnologias como escalonamento de camada 2 independente soluções. Para isso, recomendamos aos leitores, por exemplo, [121].) Agora discutimos cada opção de sincronização. Acumulações: Um rollup [69] é um protocolo no qual a transição de estado efetuada por um lote de transações é computado fora da cadeia. A mudança de estado é então propagada para MAINCHAIN. Para implementar rollups, a âncora smart contract SCa armazena uma representação compacta Rstate (por exemplo, uma raiz Merkle) do estado real. Para sincronizar, exec envia τsync = (T, R′ estado) para SCa onde T é o conjunto de transações processadas desde o últimosincronizar e R′ estado é a representação compacta do novo estado calculado aplicando transações em T para o estado anterior Rstate. Existem duas variantes populares que diferem na forma como o SCa verifica as atualizações de estado no τsync. Os primeiros, (zk-)rollups, anexam um argumento sucinto de correção, às vezes chamado uma prova de validade, para a transição Rstate →R′ estado. Para implementar esta variante, execute calcula e envia a prova de validade (por exemplo, uma prova zk-SNARK) junto com τsync, provando que R' state é o resultado da aplicação de T ao estado atual de SCa. A âncora contrato aceita a atualização do estado somente após ter verificado a comprovação. rollups otimistas não incluem argumentos de correção, mas têm staking e desafiar procedimentos que facilitam a verificação distribuída de transições de estado. Para isso Variante rollup, SCa aceita provisoriamente τsync assumindo que está correto (daí o otimismo) mas τsync não entra em vigor até depois de um período de desafio, durante o qual qualquer parte monitorar MAINCHAIN pode identificar atualizações de estado errôneas e informar a SCa para tomar ações necessárias (por exemplo, reverter o estado e infligir uma penalidade na execução). Ambas as variantes rollup alcançam disponibilidade de dados na cadeia, à medida que as transações são publicadas on-chain, a partir do qual o estado completo pode ser construído. A latência de zk-rollups é dominado pelo tempo necessário para gerar provas de validade, que normalmente está no ordem de minutos em sistemas existentes [16] e provavelmente verá melhorias ao longo do tempo. rollups otimistas, por outro lado, têm uma latência maior (por exemplo, dias ou semanas) porque o período de desafio precisa ser longo o suficiente para que as provas de fraude funcionem. O A implicação da confirmação lenta é sutil e às vezes específica do esquema, de modo que uma análise completa está fora do escopo. Por exemplo, certos regimes consideram o pagamento transações como “trustless final” [109] antes da atualização do estado ser confirmada, uma vez que um um usuário comum poderia verificar um rollup muito mais rapidamente do que o MAINCHAIN. Valídio: Validium é uma forma de (zk-)rollup que disponibiliza dados apenas fora da cadeia e não mantém todos os dados no MAINCHAIN. Especificamente, exec envia apenas o novo estado e a prova, mas não transações para SCa. Com sincronização estilo Validium, exceto e o DON que o executa são as únicas partes que armazenam o estado completo e que executam transações. Tal como acontece com zk-rollups, a latência de sincronização é dominada pela validade tempo de geração da prova. Ao contrário de zk-rollups, no entanto, a sincronização no estilo Validium reduz o custo de armazenamento e aumenta o rendimento. Assinatura de limite por DON: Supondo que um limite de nós DON seja honesto, um A opção de sincronização simples e rápida é fazer com que os nós DON assinem coletivamente o novo estado. Esta abordagem pode apoiar a disponibilidade de dados dentro e fora da cadeia. Observe que se os usuários confiam em DON para atualizações de oracle, eles não precisam confiar mais nele para aceitar atualizações de estado, pois já estão em um modelo de confiança de limite. Outro benefício a assinatura de limite é de baixa latência. Suporte para novos formatos de assinatura de transação como proposto em EIP-2938 [70] e conhecido como abstração de conta tornaria o limite assinatura consideravelmente mais fácil de implementar, pois eliminaria a necessidade de limites ECDSA, que envolve protocolos consideravelmente mais complexos (por exemplo, [116, 117, 118])do que alternativas como assinaturas de limite Schnorr [202] ou BLS [55]. Ambientes de execução confiáveis (TEEs): TEEs são ambientes de execução isolados (geralmente realizados por hardware) que visam fornecer fortes proteções de segurança para programas executados internamente. Alguns TEEs (por exemplo, Intel SGX [84]) podem produzir provas, conhecidos como atestados, que uma saída é calculada corretamente por um programa específico para uma determinada entrada12. Uma variante de sincronização TEF baseada em TEE pode ser implementada por substituindo provas em (zk-)rollups ou Validium por atestados TEE usando técnicas de [80]. Comparados às provas de conhecimento zero usadas em rollups e Validium, os TEEs são muito mais desempenho. Em comparação com a assinatura de limite, os TEEs eliminam a complexidade de gerar assinaturas ECDSA de limite, pois, em princípio, é necessário haver apenas um TEE envolvido. O uso de TEEs, entretanto, introduz suposições extras de confiança dependentes de hardware. Também é possível combinar TEEs com sinalização de limite para criar resiliência contra o comprometimento de uma fração das instâncias de TEE, embora esta medida de proteção reintroduz a complexidade de geração de assinaturas ECDSA de limite. Flexibilidade adicional: Essas opções de sincronização podem ser refinadas para fornecer mais flexibilidade das seguintes maneiras. • Acionamento flexível: a aplicação TEF pode determinar as condições sob as quais a sincronização é acionada. Por exemplo, a sincronização pode ser baseada em lote, por exemplo, ocorrer após a cada N transações, baseadas no tempo, por exemplo, a cada 10 blocos, ou baseadas em eventos, por exemplo, ocorrem sempre que os preços-alvo dos activos se movem significativamente. • Sincronização parcial: é possível e em alguns casos desejável (por exemplo, com rollups, a sincronização parcial pode reduzir a latência) para fornecer sincronização rápida de pequenos quantidades de estado, realizando sincronização completa talvez apenas periodicamente. Por exemplo, exec pode aprovar uma solicitação de saque atualizando o saldo de um usuário no SCa sem atualizar o estado MAINCHAIN. 6.4 Reorganizações Reorganizações de blockchain resultantes de instabilidade de rede ou mesmo de ataques de 51% pode representar uma ameaça à integridade de uma cadeia principal. Na prática, os adversários têm usado para que eles montem ataques de gastos duplos [34]. Embora tais ataques às principais cadeias sejam difíceis de montar, eles permanecem viáveis para algumas cadeias [88]. Por operar independentemente do MAINCHAIN, um DON oferece a interessante possibilidade de observar e fornecer algumas proteções contra reorganizações associadas a ataques. Por exemplo, um DON pode reportar a um contrato SC confiável em MAINCHAIN a existência de uma bifurcação concorrente de algum comprimento limite τ. O DON pode adicionalmente 12Detalhes complementares podem ser encontrados no Apêndice B.2.1. Eles não são necessários para a compreensão.
fornecer prova – em uma configuração PoW ou PoS – da existência de tal bifurcação. O O contrato SC pode implementar ações defensivas adequadas, como suspender a execução de transações adicionais por um período de tempo (por exemplo, para permitir que as exchanges coloquem na lista negra os gastos duplos ativos). Observe que embora um adversário que realize um ataque de 51% possa tentar censurar relatórios de um DON, uma contramedida em SC é exigir relatórios periódicos do DON para processar transações (ou seja, uma pulsação) ou para exigir um novo relatório para validar uma transação de alto valor. Embora esses alertas de bifurcação sejam, em princípio, um serviço geral, o DON pode fornecer para uma série de finalidades, nosso plano é incorporá-las ao TEF.
Khung thực thi giao dịch DON
(DON-TEF) DONs sẽ cung cấp oracle và hỗ trợ tài nguyên phi tập trung cho các giải pháp lớp 2 trong cái mà chúng tôi gọi là Khung thực thi giao dịch mạng Oracle phi tập trung (DONTEF) hay gọi tắt là TEF. Ngày nay, tần suất cập nhật các hợp đồng DeFi bị giới hạn bởi độ trễ của chuỗi chính, ví dụ: khoảng thời gian chặn trung bình là 10-15 giây trong Ethereum [104]—cũng như chi phí của đẩy lượng lớn dữ liệu trên chuỗi và thông lượng tính toán/tx bị hạn chế— thúc đẩy các phương pháp mở rộng quy mô như sharding [148, 158, 232] và thực thi lớp 2 [5, 12, 121, 141, 169, 186, 187]. Kể cả blockchain có thời gian giao dịch nhanh hơn nhiều, ví dụ: [120], đã đề xuất các chiến lược mở rộng quy mô liên quan đến tính toán ngoài chuỗi [168]. TEF có nghĩa là hoạt động như một tài nguyên lớp 2 cho bất kỳ hệ thống lớp 1 / MAINCHAIN nào như vậy. Sử dụng TEF, DONs có thể hỗ trợ cập nhật nhanh hơn trong hợp đồng MAINCHAIN trong khi giữ lại các đảm bảo tin cậy quan trọng được cung cấp bởi chuỗi chính. TEF có thể hỗ trợ bất kỳ kỹ thuật và mô hình thực thi lớp 2 nào, bao gồm rollups,11 lạc quan rollups, Validium, v.v., cũng như mô hình ngưỡng tin cậy trong đó DON các nút thực hiện giao dịch. TEF bổ sung cho FSS và nhằm hỗ trợ nó. Nói cách khác, bất kỳ ứng dụng chạy trong TEF có thể sử dụng FSS. 11Thường được gọi là “zk-rollups”, một cách gọi sai vì chúng không nhất thiết cần bằng chứng không có kiến thức.

6.1 Tổng quan về TEF TEF là một mẫu thiết kế để xây dựng và thực hiện một hệ thống hybrid hiệu suất smart contract SC. Theo ý tưởng chính đằng sau smart contracts lai, TEF bao gồm một phân tách SC thành hai phần: (1) Cái mà chúng ta gọi trong ngữ cảnh TEF là mỏ neo hợp đồng SCa trên MAINCHAIN và logic (2) DON yêu cầu chúng tôi gọi là tệp thực thi TEF. Chúng ta sử dụng SC ở đây để biểu thị hợp đồng logic được thực hiện bằng sự kết hợp của SCa và mong đợi. (Như đã lưu ý ở trên, chúng tôi mong đợi phát triển các công cụ biên dịch để phân tách một tự động ký hợp đồng SC vào các thành phần này.) Phần thực thi TEF là công cụ xử lý các giao dịch của người dùng trong SC. Nó có thể thực thi một cách hiệu quả vì nó chạy trên DON. Nó có một số chức năng: • Nhập giao dịch: yêu cầu nhận hoặc tìm nạp giao dịch của người dùng. Nó có thể làm như vậy trực tiếp, tức là thông qua việc gửi giao dịch trên DON hoặc qua MAINCHAIN mempool bằng MS. • Thực hiện giao dịch nhanh: yêu cầu xử lý các giao dịch liên quan đến tài sản trong SC. Nó thực hiện điều đó cục bộ, tức là trên DON. • Truy cập bộ chuyển đổi / nhanh chóng và chi phí thấp oracle: exect có quyền truy cập riêng vào báo cáo oracle và dữ liệu bộ điều hợp khác dẫn đến nội dung, ví dụ: nhanh hơn, rẻ hơn và chính xác hơn định giá hơn so với việc thực hiện MAINCHAIN. Hơn nữa, quyền truy cập oracle ngoài chuỗi giảm chi phí vận hành của oracle, do đó chi phí sử dụng hệ thống, bằng cách tránh lưu trữ trên chuỗi đắt tiền. • Đồng bộ hóa: yêu cầu đẩy các bản cập nhật định kỳ từ DON lên MAINCHAIN, cập nhật SCa. Hợp đồng neo là giao diện người dùng MAINCHAIN của SC. Là thành phần có độ tin cậy cao hơn của SC, nó phục vụ một số mục đích: • Giám sát tài sản: Tiền của người dùng được gửi vào, giữ và rút khỏi SCa. • Đồng bộ hóa xác minh: SCa có thể xác minh tính chính xác của các cập nhật trạng thái khi được kích hoạt đồng bộ hóa, ví dụ: SNARK được đính kèm với rollups. • Đường ray bảo vệ: SCa có thể bao gồm các điều khoản để bảo vệ chống tham nhũng hoặc hư hỏng mong đợi. (Xem Phần 7 để biết thêm chi tiết.) Trong TEF, tiền của người dùng được lưu giữ trên MAINCHAIN, nghĩa là DON bản thân nó không được giám sát. Tùy thuộc vào việc lựa chọn cơ chế đồng bộ hóa (xem bên dưới), người dùng có thể cần chỉ tin cậy DON để có báo cáo oracle chính xác và đồng bộ hóa kịp thời với MAINCHAIN. Mô hình tin cậy thu được rất giống với mô hình dành cho DEX dựa trên sổ đặt hàng, ví dụ: [2], mà ngày nay thường bao gồm một thành phần ngoài chuỗi để khớp lệnh và một thành phần trên chuỗi để thanh toán bù trừ.Để sử dụng từ vựng về hệ thống thanh toán, người ta có thể coi exect là thành phần của SC chịu trách nhiệm thanh toán bù trừ, trong khi SCa xử lý việc quyết toán. Xem Hình 13 để biết sơ đồ mô tả của TEF. Hình 13: Sơ đồ TEF. Trong ví dụ này, các giao dịch đi qua mempool của MAINCHAIN qua MS tới DON. Lợi ích của TEF: TEF mang lại ba lợi ích chính: • Hiệu suất cao: SC kế thừa thông lượng cao hơn nhiều của DON so với MAINCHAIN cho cả giao dịch và báo cáo oracle. Ngoài ra, exect có thể xử lý các giao dịch nhanh hơn và phản hồi các báo cáo oracle một cách kịp thời hơn so với việc chỉ triển khai trên MAINCHAIN. • Phí thấp hơn: Quá trình đồng bộ hóa ít nhạy cảm về thời gian hơn so với xử lý giao dịch và các giao dịch có thể được gửi từ DON tới MAINCHAIN theo đợt. Do đó, phí trên mỗi giao dịch trên chuỗi (ví dụ: chi phí gas) với phương pháp này thấp hơn nhiều so với hợp đồng chỉ chạy trên MAINCHAIN. • Tính bảo mật: Cơ chế bảo mật của DON có thể được áp dụng chịu đựng SC.
Giới hạn của TEF: Một hạn chế của TEF là nó không hỗ trợ tức thời rút tiền, vì chúng chỉ xảy ra trên MAINCHAIN: Khi gửi yêu cầu rút tiền tới SCa, người dùng có thể phải chờ đợi để thực hiện cập nhật trạng thái bao gồm giao dịch rút tiền trước khi nó có thể được phê duyệt. Chúng tôi thảo luận về một số biện pháp khắc phục từng phần, tuy nhiên, trong Phần 6.2. Một hạn chế khác của TEF là nó không hỗ trợ thành phần nguyên tử DeFi hợp đồng trên MAINCHAIN, cụ thể là khả năng định tuyến tài sản qua nhiều DeFi hợp đồng trong một giao dịch duy nhất. Tuy nhiên, TEF có thể hỗ trợ tính nguyên tử như vậy giữa DeFi hợp đồng chạy trên cùng DON. Chúng tôi cũng thảo luận về một số cách để giải quyết vấn đề này vấn đề trong Phần 6.2. 6.2 Định tuyến giao dịch Giao dịch cho SC có thể được người dùng gửi trực tiếp tới DON hoặc có thể được chuyển qua mempool trong MAINCHAIN (thông qua FSS). Có bốn loại giao dịch riêng biệt, mỗi loại trong đó yêu cầu xử lý khác nhau: Giao dịch trong hợp đồng: Bởi vì nó tránh được sự phức tạp của động lực khí, TEF mang lại cho SC sự linh hoạt hơn trong việc xử lý các giao dịch so với trước đây. có sẵn trong hợp đồng lớp 1. Ví dụ: trong khi giao dịch mempool trong Ethereum có thể bị ghi đè bằng một giao dịch mới với giá gas cao hơn, SC có thể coi giao dịch hoạt động trên các tài sản trong SC là có thẩm quyền ngay khi nó hiển thị trong mempool. Do đó, SC không cần đợi giao dịch được xác nhận trong một khối, dẫn đến độ trễ giảm đáng kể. Ủy quyền: Người dùng có thể muốn gửi giao dịch τ tới SC thông qua hợp đồng ví hoặc hợp đồng khác trên MAINCHAIN. DON có thể mô phỏng việc thực thi τ trên MAINCHAIN để xác định xem liệu nó có dẫn đến giao dịch tiếp theo với SC hay không. Nếu vậy, τ có thể được sắp xếp theo trình tự với các giao dịch khác dành cho SC thực hiện. Có một vài khả năng về cách DON xác định các giao dịch đó: (1) DON có thể mô phỏng tất cả các giao dịch trong mempool (một cách tiếp cận tốn kém); (2) Một số hợp đồng hoặc các loại hợp đồng, ví dụ: ví, có thể được liệt kê để theo dõi bởi DON; hoặc (3) Người dùng có thể chú thích các giao dịch để kiểm tra DON. Vấn đề trở nên phức tạp hơn khi một giao dịch đơn lẻ tương tác với hai hợp đồng SC1 và SC2, cả hai đều sử dụng Dịch vụ sắp xếp thứ tự công bằng và có chính sách đặt hàng không tương thích. Ví dụ: DON có thể là chuỗi τ vào thời điểm gần nhất đó là tương thích với cả hai. Tiền gửi: Giao dịch gửi tài sản MAINCHAIN vào SC cần phải được xác nhận trong một khối trước khi SC có thể coi nó là hợp lệ. Khi nó phát hiện việc khai thác một giao dịch gửi tài sản (ví dụ: Ether) vào SCa, có thể xác nhận ngay lập tứctiền gửi. Ví dụ: nó có thể áp dụng giá được báo cáo oracle hiện tại trên DON cho tài sản. Rút tiền: Như đã lưu ý ở trên, hạn chế của TEF là việc rút tiền không phải lúc nào cũng được thực hiện ngay lập tức. Trong mô hình thực thi loại rollup, việc rút tiền yêu cầu phải được sắp xếp theo thứ tự với các giao dịch khác, tức là được cuộn lại, để được an toàn đã được xử lý. Tuy nhiên, có một số biện pháp khắc phục một phần hạn chế này. Nếu DON có thể nhanh chóng tính toán bằng chứng hợp lệ rollup cho giao dịch rút tiền thì việc quan sát giao dịch của người dùng τ trong mempool có thể gửi giao dịch cập nhật trạng thái τ ′ với giá gas cao hơn, một kiểu chạy trước có lợi. Với điều kiện là τ không được khai thác trước khi τ ′ đến mempool, τ ′ sẽ đứng trước τ và τ sẽ có hiệu lực đối với việc rút tiền đã được phê duyệt. Trong biến thể TEF trong đó DON được dựa vào để tính toán các cập nhật trạng thái (xem biến thể ký ngưỡng bên dưới), DON có thể xác định ngoài chuỗi liệu τ có nên được phê duyệt dựa trên trạng thái của SC khi thực thi nó hay không. DON sau đó có thể gửi một giao dịch τ ′ phê duyệt việc rút tiền τ—mà không ảnh hưởng đến toàn bộ giao dịch cập nhật trạng thái. Nếu cách tiếp cận này không thể thực hiện được hoặc trong trường hợp nó không thành công, thì DON đã bắt đầu giao dịch τ ′ có thể gửi tiền cho người dùng để phản hồi lại τ để người dùng không cần phải bắt đầu một giao dịch bổ sung. 6.3 Đang đồng bộ hóa Tệp thực thi TEF đẩy các bản cập nhật định kỳ từ DON lên MAINCHAIN, cập nhật trạng thái của SCa trong quy trình mà chúng tôi gọi là đồng bộ hóa. Đồng bộ hóa có thể được nghĩ đến như việc truyền bá các giao dịch lớp 2 sang lớp 1, do đó TEF có thể rút ra bất kỳ số nào kỹ thuật hiện có cho mục đích này, bao gồm rollups [5, 12, 16, 69], lạc quan rollups [10, 11, 141], Validium [201] hoặc ký ngưỡng cơ bản, ví dụ: BLS ngưỡng, Schnorr hoặc ECDSA [24, 54, 116, 202]. Về nguyên tắc, môi trường thực thi đáng tin cậy cũng có thể chứng thực tính đúng đắn của các thay đổi trạng thái, mang lại hiệu suất cao hơn nhiều thay thế cho rollups, nhưng với mô hình tin cậy phụ thuộc vào phần cứng. (Xem ví dụ: [80].) Dưới đây chúng tôi so sánh các tùy chọn đồng bộ hóa này với ba thuộc tính chính trong TEF: • Tính sẵn có của dữ liệu: Trạng thái của SC được lưu trữ ở đâu? Ít nhất ba lựa chọn là có sẵn dưới dạng TEF: trên MAINCHAIN, trên DON hoặc bởi một số bộ lưu trữ của bên thứ ba các nhà cung cấp như IPFS. Họ đạt được các đảm bảo an ninh, tính sẵn sàng khác nhau cấp độ và hồ sơ thực hiện. Tóm lại, việc lưu trữ trạng thái trên MAINCHAIN cho phép khả năng kiểm toán trực tuyến và loại bỏ sự phụ thuộc vào bất kỳ bên nào về tính khả dụng của trạng thái; mặt khác, việc lưu trữ trạng thái ngoài chuỗi có thể giảm chi phí lưu trữ và cải thiện thông lượng, với chi phí phải trả là tin tưởng nhà cung cấp dịch vụ lưu trữ (DON hoặc bên thứ ba) cho tính sẵn có của dữ liệu. Tất nhiên, các mô hình linh hoạt kết hợp các tùy chọn này cũng có thể. Chúng tôi chỉ ra dạng yêu cầu sẵn có của dữ liệu trong Bảng 1.• Đảm bảo tính chính xác: SCa xác định tính chính xác của các bản cập nhật bằng cách nào được thúc đẩy bởi sự mong đợi? Điều này ảnh hưởng đến tải tính toán trên exect và SCa và độ trễ đồng bộ hóa (xem bên dưới). • Độ trễ: Độ trễ đồng bộ hóa có ba yếu tố góp phần: (1) Thời gian thực hiện để mong đợi tạo giao dịch đồng bộ hóa τsync; (2) Thời gian cần thiết cho τsync được xác nhận trên MAINCHAIN; và (3) Thời gian để τsync phát huy tác dụng SCa. Trong TEF, độ trễ đặc biệt quan trọng đối với việc rút tiền (nhưng ít hơn đối với giao dịch trong hợp đồng) vì việc rút tiền nhất thiết phải có (ít nhất đồng bộ hóa trạng thái một phần). Đang đồng bộ hóa tùy chọn dữ liệu sẵn có Tính đúng đắn đảm bảo Độ trễ Tổng hợp [5, 12, 16, 69] Trên chuỗi Bằng chứng hiệu lực Thời gian thực hiện để tạo ra bằng chứng hợp lệ (ví dụ: số phút trong hệ thống hiện tại) Xác thực [201] Chuỗi Off Bằng chứng hiệu lực Tương tự như trên Lạc quan rollup [10, 11, 141] Trên chuỗi bằng chứng gian lận Độ dài của thử thách thời kỳ (ví dụ: ngày hoặc tuần) Ngưỡng ký [24, 54, 116, 202] Linh hoạt Ngưỡng chữ ký của DON tức thời Môi trường thực thi đáng tin cậy [80] Linh hoạt Dựa trên phần cứng chứng thực tức thời Bảng 1: Các tùy chọn đồng bộ hóa khác nhau trong TEF và các thuộc tính của chúng. Bảng 1 tóm tắt các thuộc tính này trong năm tùy chọn đồng bộ hóa chính trong TEF. (Lưu ý rằng chúng tôi không có ý định so sánh các công nghệ này như việc mở rộng quy mô lớp 2 độc lập giải pháp. Vì lý do đó, chúng tôi giới thiệu người đọc đến ví dụ: [121].) Bây giờ chúng ta thảo luận về từng tùy chọn đồng bộ hóa. Bản tổng hợp: rollup [69] là một giao thức trong đó quá trình chuyển đổi trạng thái được thực hiện bởi một lô giao dịch được tính toán ngoài chuỗi. Sự thay đổi trạng thái sau đó được lan truyền lên MAINCHAIN. Để triển khai rollups, neo smart contract SCa lưu trữ trạng thái đại diện thu gọn Rstate (ví dụ: gốc Merkle) của trạng thái thực tế. Để đồng bộ, exect gửi τsync = (T, R' state) tới SCa trong đó T là tập hợp các giao dịch được xử lý kể từ lần cuối cùngđồng bộ và R′ trạng thái là biểu diễn thu gọn của trạng thái mới được tính bằng cách áp dụng các giao dịch trong T sang trạng thái R trước đó. Có hai biến thể phổ biến khác nhau về cách SCa xác minh cập nhật trạng thái trong τsync. Đầu tiên, (zk-)rollups, đính kèm một lập luận ngắn gọn về tính đúng đắn, đôi khi được gọi là một bằng chứng hợp lệ cho quá trình chuyển đổi Rstate →R′ trạng thái. Để triển khai biến thể này, hãy mong đợi tính toán và gửi bằng chứng hợp lệ (ví dụ: bằng chứng zk-SNARK) cùng với τsync, chứng minh rằng R’ state là kết quả của việc áp dụng T vào trạng thái hiện tại của SCa. mỏ neo hợp đồng chỉ chấp nhận cập nhật trạng thái sau khi nó đã xác minh bằng chứng. Những rollup lạc quan không bao gồm những lập luận về tính đúng đắn nhưng có staking và thách thức các thủ tục tạo điều kiện thuận lợi cho việc xác minh phân tán các chuyển đổi trạng thái. Vì điều này rollup biến thể, SCa tạm chấp nhận τsync giả sử nó đúng (do đó mang lại sự lạc quan) nhưng τsync không có hiệu lực cho đến sau thời gian thử thách, trong thời gian đó bất kỳ bên nào giám sát MAINCHAIN có thể xác định các cập nhật trạng thái sai sót và thông báo cho SCa để thực hiện các hành động cần thiết (ví dụ: khôi phục trạng thái và đưa ra một hình phạt theo yêu cầu.) Cả hai biến thể rollup đều đạt được tính khả dụng của dữ liệu trên chuỗi khi các giao dịch được đăng trên chuỗi, từ đó trạng thái đầy đủ có thể được xây dựng. Độ trễ của zk-rollups là bị chi phối bởi thời gian cần thiết để tạo ra các bằng chứng hợp lệ, thường là về thứ tự phút trong các hệ thống hiện có [16] và có thể sẽ thấy sự cải thiện theo thời gian. Mặt khác, rollup lạc quan có độ trễ cao hơn (ví dụ: ngày hoặc tuần) bởi vì thời gian thử thách cần phải đủ dài để các bằng chứng gian lận có thể phát huy tác dụng. các hàm ý của việc xác nhận chậm là tinh tế và đôi khi cụ thể đối với sơ đồ, do đó một phân tích kỹ lưỡng là nằm ngoài phạm vi. Ví dụ: một số chương trình nhất định coi việc thanh toán giao dịch là "cuối cùng không cần sự tin cậy" [109] trước khi cập nhật trạng thái được xác nhận, vì một người dùng thông thường có thể xác minh rollup nhanh hơn nhiều so với MAINCHAIN. Xác thực: Validium là một dạng (zk-)rollup chỉ cung cấp dữ liệu ngoài chuỗi và không duy trì tất cả dữ liệu trên MAINCHAIN. Cụ thể, exect chỉ gửi cái mới nêu và bằng chứng nhưng không giao dịch với SCa. Với đồng bộ hóa kiểu Validium, ngoại trừ và DON thực thi nó là các bên duy nhất lưu trữ trạng thái hoàn chỉnh và thực hiện các giao dịch. Giống như zk-rollups, độ trễ đồng bộ hóa bị chi phối bởi tính hợp lệ thời gian tạo bằng chứng. Tuy nhiên, không giống như zk-rollups, đồng bộ hóa kiểu Validium làm giảm chi phí lưu trữ và tăng thông lượng. Ngưỡng ký bởi DON: Giả sử ngưỡng DON nút là trung thực, tùy chọn đồng bộ hóa đơn giản và nhanh chóng là có các nút DON ký tên chung vào trạng thái mới. Cách tiếp cận này có thể hỗ trợ cả tính khả dụng của dữ liệu trên chuỗi và ngoài chuỗi. Lưu ý rằng nếu người dùng tin cậy DON cho oracle cập nhật, họ không cần phải tin cậy hơn nữa để chấp nhận cập nhật trạng thái, vì chúng đã ở trong mô hình ngưỡng tin cậy. Một lợi ích khác của ngưỡng ký là độ trễ thấp. Hỗ trợ các định dạng chữ ký giao dịch mới như được đề xuất trong EIP-2938 [70] và được gọi là trừu tượng hóa tài khoản sẽ tạo ra ngưỡng việc ký kết dễ thực hiện hơn nhiều vì nó sẽ loại bỏ sự cần thiết của ngưỡng ECDSA, bao gồm các giao thức phức tạp hơn đáng kể (ví dụ: [116, 117, 118])hơn các lựa chọn thay thế như chữ ký ngưỡng Schnorr [202] hoặc BLS [55]. Môi trường thực thi đáng tin cậy (TEE): TEE là môi trường thực thi biệt lập (thường được thực hiện bằng phần cứng) nhằm mục đích cung cấp các biện pháp bảo vệ an ninh mạnh mẽ cho các chương trình đang chạy bên trong. Một số TEE (ví dụ: Intel SGX [84]) có thể tạo ra bằng chứng, được gọi là chứng thực, rằng đầu ra được tính toán chính xác bởi một chương trình cụ thể cho một đầu vào cụ thể12. Một biến thể đồng bộ hóa TEF dựa trên TEE có thể được triển khai bởi thay thế bằng chứng trong (zk-)rollups hoặc Validium bằng chứng thực TEE bằng kỹ thuật từ [80]. So với bằng chứng không có kiến thức được sử dụng trong rollups và Validium, TEE có nhiều hiệu quả hơn. So với việc ký ngưỡng, TEE loại bỏ sự phức tạp của tạo ra các chữ ký ECDSA ngưỡng vì về nguyên tắc chỉ cần một TEE có liên quan. Tuy nhiên, việc sử dụng TEE sẽ đưa ra thêm các giả định về độ tin cậy phụ thuộc vào phần cứng. Người ta cũng có thể kết hợp TEE với việc ký ngưỡng để tạo khả năng phục hồi chống lại sự xâm phạm của một phần nhỏ các trường hợp TEE, mặc dù biện pháp bảo vệ này giới thiệu lại sự phức tạp của việc tạo chữ ký ECDSA ngưỡng. Tính linh hoạt bổ sung: Các tùy chọn đồng bộ hóa này có thể được tinh chỉnh để mang lại sự linh hoạt hơn theo những cách sau. • Kích hoạt linh hoạt: Ứng dụng TEF có thể xác định các điều kiện đồng bộ hóa được kích hoạt. Ví dụ: việc đồng bộ hóa có thể dựa trên hàng loạt, ví dụ: xảy ra sau mọi N giao dịch, dựa trên thời gian, ví dụ: cứ sau 10 khối hoặc dựa trên sự kiện, ví dụ: xảy ra bất cứ khi nào giá tài sản mục tiêu thay đổi đáng kể. • Đồng bộ hóa một phần: Có thể và trong một số trường hợp là mong muốn (ví dụ: với rollups, đồng bộ hóa một phần có thể giảm độ trễ) để mong muốn cung cấp khả năng đồng bộ hóa nhanh các nội dung nhỏ lượng trạng thái, có lẽ chỉ thực hiện đồng bộ hóa đầy đủ theo định kỳ. Ví dụ, ngoại trừ có thể phê duyệt yêu cầu rút tiền bằng cách cập nhật số dư của người dùng trong SCa mà không cập nhật trạng thái MAINCHAIN. 6,4 tổ chức lại Tổ chức lại chuỗi khối do mất ổn định mạng hoặc thậm chí từ các cuộc tấn công 51% có thể gây ra mối đe dọa cho tính toàn vẹn của chuỗi chính. Trong thực tế, đối thủ đã sử dụng chúng để thực hiện các cuộc tấn công chi tiêu gấp đôi [34]. Trong khi các cuộc tấn công như vậy vào các chuỗi lớn là thách thức để gắn kết, chúng vẫn khả thi đối với một số chuỗi [88]. Vì nó hoạt động độc lập với MAINCHAIN nên DON mang đến những điều thú vị khả năng quan sát và cung cấp một số biện pháp bảo vệ chống lại việc tổ chức lại liên quan đến các cuộc tấn công. Ví dụ: DON có thể báo cáo cho một hợp đồng dựa trên SC trên MAINCHAIN về sự tồn tại của một nhánh phân nhánh cạnh tranh có độ dài ngưỡng nào đó τ. Ngoài ra DON có thể 12Chi tiết bổ sung có thể được tìm thấy trong Phụ lục B.2.1. Họ không cần thiết cho sự hiểu biết.
cung cấp bằng chứng—trong cài đặt PoW hoặc PoS—về sự tồn tại của một đợt phân nhánh như vậy. các hợp đồng SC có thể thực hiện các hành động phòng thủ phù hợp, chẳng hạn như tạm dừng thực hiện giao dịch tiếp theo trong một khoảng thời gian (ví dụ: để cho phép các sàn giao dịch đưa vào danh sách đen chi tiêu gấp đôi tài sản). Lưu ý rằng mặc dù đối thủ tiến hành tấn công 51% có thể tìm cách kiểm duyệt báo cáo từ DON, biện pháp đối phó trong SC là yêu cầu báo cáo định kỳ từ DON để xử lý các giao dịch (tức là nhịp tim) hoặc để yêu cầu báo cáo mới cho xác thực một giao dịch có giá trị cao. Mặc dù các cảnh báo phân nhánh như vậy về nguyên tắc là một dịch vụ chung mà DON có thể cung cấp vì bất kỳ mục đích nào, kế hoạch của chúng tôi là kết hợp chúng với TEF.
Minimização de confiança
Sendo um sistema descentralizado com a participação de um conjunto heterogêneo de entidades, o A rede Chainlink fornece forte proteção contra falhas tanto na atividade (disponibilidade) quanto na segurança (integridade do relatório). A maioria dos sistemas descentralizados, no entanto, varia em o grau em que os seus componentes constituintes são eles próprios descentralizados. Isto é verdade mesmo para grandes sistemas, onde a descentralização limitada entre os mineradores [32] e intermediários [51] estão presentes há muito tempo. O objetivo de qualquer esforço de descentralização é a minimização da confiança: procuramos reduzir o efeitos adversos de corrupção ou falha sistêmica na rede Chainlink, mesmo que devido a um DON malicioso. Nosso princípio orientador é o Princípio do Menor Privilégio [197]. Os componentes e atores do sistema dentro do sistema devem ter privilégios estritamente definidos para permitir apenas a conclusão bem-sucedida das funções atribuídas. Aqui apresentamos vários mecanismos concretos para Chainlink adotar em seu impulso em direção a uma minimização cada vez maior da confiança. Nós caracterizamos esses mecanismos em termos dos loci, ou seja, componentes do sistema, nos quais estão enraizados, mostrados na Fig. abordar cada locus em uma respectiva subseção. 7.1 Autenticação de fonte de dados Os modelos operacionais atuais para oracles são limitados pelo fato de que poucas fontes de dados assinar digitalmente os dados que omitem, em grande parte porque o TLS não assina nativamente dados. O TLS faz uso de assinaturas digitais em seu protocolo de “handshake” (para estabelecer uma chave compartilhada entre um servidor e um cliente). Servidores habilitados para HTTPS, portanto, possuem certificados em chaves públicas que podem, em princípio, servir para assinar dados, mas geralmente não usam esses certificados para dar suporte à assinatura de dados. Consequentemente, a segurança de um DON, como nas redes oracle atuais, depende de nós oracle que retransmitem fielmente os dados de uma rede de dados fonte para um contrato. Um componente importante de longo prazo de nossa visão para a minimização da confiança em Chainlink envolve uma autenticação mais forte da fonte de dados por meio do suporte de ferramentas e padrões para assinatura de dados. A assinatura de dados pode ajudar a aplicar garantias de integridade de ponta a ponta. Em princípio, se um contrato aceita como entrada um dado D assinado diretamente por um fornecedor de dados

Figura 14: Locais de mecanismos de minimização de confiança discutidos nesta seção. 1⃝Dados fontes fornecem dados para 2⃝DON, que retransmite uma função dos dados para um dependente 3⃝smart contract. Além disso, a rede DON ou oracle inclui 4⃝nós gerenciamento smart contracts em MAINCHAIN para, por exemplo, nós de compensação, proteção trilhos e assim por diante. fonte, então a rede oracle não pode adulterar D. Vários encorajadores surgiram esforços para permitir essa assinatura de dados, incluindo o OpenID Connect, que foi projetado principalmente para autenticação de usuário [9], TLS-N, um projeto acadêmico que visa estender o TLS [191] reaproveitando certificados TLS e extensões de evidências TLS [63]. Embora o OpenID Connect tenha tido alguma adoção, no entanto, as TLS Evidence Extensions e o TLS-N ainda não foi adotado. Outra via potencial de autenticação de fonte de dados é usar os próprios editores Signed HTTP Exchanges (SXG) [230], que podem ser armazenados em cache em redes de distribuição de conteúdo como parte do protocolo Accelerated Mobile Pages (AMP) [225]. O navegador móvel Chrome exibe o conteúdo de SXGs armazenados em cache de AMP como se fossem veiculados por os próprios domínios de rede de seus editores em vez do domínio do servidor de cache. Este incentivo de marca, juntamente com a relativa facilidade de ativá-lo usando serviços como o Real URL [83] da CloudFlare e o amppackager [124] do Google, pode levar à adoção generalizada de SXGs em conteúdo de notícias em cache, o que permitiria uma solução simples e resistente a adulterações. maneira de Chainlink oracles serem acionados em eventos de interesse jornalístico relatados em SXGs válidos. Embora os SXGs armazenados em cache de AMP de editores de notícias não sejam úteis para aplicativos como relatórios sobre dados comerciais, eles podem ser uma fonte segura para informações personalizadas contratos relativos a eventos do mundo real, como condições climáticas extremas ou resultados eleitorais. Acreditamos que a implantação simples, ferramentas maduras e flexibilidade serão vitais para acelerando a assinatura da fonte de dados. Permitir que provedores de dados usem nós Chainlink como um front-end de API autenticado parece uma abordagem promissora. Pretendemos criar umopção para os nós funcionarem neste modo, com ou sem participação na rede como um oracle completo. Nos referimos a esse recurso como origem de dados autenticada (ADO). Ao usar nós Chainlink com ADO, as fontes de dados poderão se beneficiar da experiência e ferramentas desenvolvidas pela comunidade Chainlink para adicionar digital recursos de assinatura para seu conjunto existente de APIs fora da cadeia. Eles deveriam escolher correr seus nós como oracles, eles também podem abrir novos fluxos de receita em potencial sob o mesmo modelo dos provedores de dados existentes, por exemplo, Kraken [28], Kaiko [140], e outros, que executam nós Chainlink para vender dados de API em cadeia. 7.1.1 As limitações da origem de dados autenticados A assinatura digital por fontes de dados, embora possa ajudar a fortalecer a autenticação, não é suficiente por si só para atingir todas as metas naturais de segurança ou operacionais de um oracle rede. Para começar, um determinado dado D ainda deve ser transmitido de forma robusta e oportuna. caminho de uma fonte de dados para smart contract ou outro consumidor de dados. Ou seja, mesmo em um ambiente ideal em que todos os dados são assinados usando chaves pré-programadas em dependentes contratos, um DON ainda seria necessário para comunicar os dados de forma confiável das fontes aos contratos. Além disso, há vários casos em que contratos ou outros dados oracle os consumidores desejam acesso à saída autenticada de várias funções computadas dados de origem por dois motivos principais: • Confidencialidade: uma API de fonte de dados pode fornecer dados confidenciais ou proprietários que precisa ser redigido ou higienizado antes de se tornar publicamente visível na rede. Qualquer modificação nos dados assinados, entretanto, invalidava a assinatura. Coloque outro Dessa forma, o ADO ingênuo e a limpeza de dados são incompatíveis. Mostramos no Exemplo 3 como os dois podem ser reconciliados através de uma forma aprimorada de ADO. • Falhas nas fontes de dados: erros e falhas podem afetar as fontes de dados, e as assinaturas digitais não resolvem nenhum dos problemas. Desde o seu início [98], Chainlink tem já incluía um mecanismo para remediar tais falhas: redundância. Os relatórios emitidos pelas redes oracle normalmente representam os dados combinados de vários fontes. Discutiremos agora os esquemas que estamos explorando no ambiente ADO para aumentar a confidencialidade dos dados de origem e combinar dados de múltiplas fontes com segurança. 7.1.2 Confidencialidade As fontes de dados podem não antecipar e disponibilizar toda a gama de APIs desejada pelos usuários. Especificamente, os usuários podem desejar acessar dados pré-processados para ajudar a garantir confidencialidade. O exemplo a seguir ilustra o problema.Exemplo 3. Alice deseja obter uma credencial de identidade descentralizada (DID) informando que ela tem mais de 18 anos (e portanto pode, por exemplo, contrair um empréstimo). Para fazer então, ela precisa provar esse fato sobre sua idade para um emissor de credencial DID. Alice espera usar dados do Departamento de Veículos Motorizados (DMV) de seu estado site para o efeito. O Detran tem registro de sua data de nascimento e emitirá um atestado A assinado digitalmente no seguinte formato: A = {Nome: Alice, Data de nascimento: 16/02/1999}. Neste exemplo, o atestado A pode ser suficiente para Alice provar ao DID emissor da credencial que ela tem mais de 18 anos. Mas vaza desnecessariamente informações confidenciais: Alice's DoB exato. Idealmente, o que Alice gostaria do DMV seria uma assinatura em um declaração simples A′ de que “Alice tem mais de 18 anos”. Em outras palavras, ela quer que o saída de uma função G em sua data de nascimento X, onde (informalmente), A′ = G(X) = True se DataAtual −X ≥18 anos; caso contrário, G(X) = Falso. Para generalizar, Alice gostaria de poder solicitar da fonte de dados um documento assinado atestado A′ do formato: A′ = {Nome: Alice, Func:G(X), Resultado: Verdadeiro}, onde G(X) denota uma especificação de uma função G e sua(s) entrada(s) X. Imaginamos que um usuário deve ser capaz de fornecer um G(X) desejado como entrada com sua solicitação de um atestado correspondente A′. Observe que o atestado A′ da fonte de dados deve incluir a especificação G(X) para certifique-se de que A′ seja interpretado corretamente. No exemplo acima, G(X) define o significado do valor booleano em A′ e, portanto, True significa o assunto do atestado tem mais de 18 anos de idade. Referimo-nos a consultas flexíveis nas quais um usuário pode especificar G(X) como consultas funcionais. Para dar suporte a casos de uso como o do Exemplo 3, bem como aqueles que envolvem consultas diretamente dos contratos, pretendemos incluir suporte para consultas funcionais envolvendo funções simples G como parte do ADO. 7.1.3 Combinando dados de origem Para reduzir os custos na cadeia, os contratos são geralmente concebidos para consumir dados combinados de múltiplas fontes, conforme ilustrado no exemplo a seguir. Exemplo 4 (Medianização de dados de preços). Para fornecer um feed de preços, ou seja, o valor de um ativo (por exemplo, ETH) em relação a outro (por exemplo, USD), uma rede oracle geralmente obter preços atuais de diversas fontes, como bolsas. A rede oracle normalmente envia para um contrato dependente SC a mediana desses valores. Em um ambiente com assinatura de dados, uma rede oracle funcionando corretamente obtém de fontes de dados S = {S1, . . . , SnS} uma sequência de valores V = {v1, v2, . . . , vnS} de Fontes nS acompanhadas de assinaturas específicas da fonte Σ = {σ1, σ2, . . . , σnS}. Após verificando as assinaturas, transmite o preço v = median(V ) para SC.Infelizmente, não existe uma maneira simples de uma rede oracle transmitir a mediana valor v no Exemplo 4 para SC junto com uma prova sucinta σ∗ de que v foi calculado corretamente sobre entradas assinadas. Uma abordagem ingénua seria codificar em SC as chaves públicas de todas as fontes de dados nS. A rede oracle então retransmitiria (V, Σ) e permitiria que SC calculasse a mediana de V . Isso, no entanto, resultaria em uma prova σ de tamanho O(nS) - ou seja, σ∗não seria sucinto. Também incorreria em elevados custos de gás para SC, que precisaria verificar todas as assinaturas em Σ. O uso de SNARKs, por outro lado, permite uma prova sucinta de valores de origem autenticados combinados corretamente. Pode ser viável na prática, mas impõe custos bastante elevados custos computacionais no provador e custos de gás um tanto elevados na cadeia. Uso de O Pregoeiro também é uma possibilidade, mas exige o uso de TEEs, o que não atende a todos modelos de confiança dos usuários. Um conceito útil para enquadrar soluções para o problema geral de assinatura de dados combinados de fontes é uma ferramenta criptográfica conhecida como assinaturas funcionais [59, 132]. Resumidamente, as assinaturas funcionais permitem que um signatário delegue capacidade de assinatura, de modo que o delegado só pode assinar mensagens no intervalo de uma função F escolhida pelo signatário. Mostramos no Apêndice D como esta restrição funcional pode servir para limitar o intervalo dos valores do relatório emitidos por um DON em função dos valores assinados pelas fontes de dados. Também introduzimos uma nova primitiva, chamada assinatura funcional discretizada, que inclui um requisito relaxado de precisão, mas tem potencialmente um desempenho muito melhor do que abordagens como SNARKs. O problema de combinar fontes de dados de uma forma que inclua autenticação de origem dos resultados também se aplica a agregadores de dados, por exemplo, CoinCap, CoinMarketCap, CoinGecko, CryptoCompare, etc., que obtêm dados de uma multiplicidade de exchanges, que eles peso baseado em volumes, utilizando metodologias que em alguns casos tornam públicas e em outros casos são proprietários. Um agregador que deseja publicar um valor com a autenticação de origem enfrenta o mesmo desafio que uma coleção de nós agregando dados de origem. 7.1.4 Processando dados de origem smart contracts sofisticados provavelmente dependerão de estatísticas agregadas personalizadas fontes primárias de dados, como volatilidade no histórico recente de preços de muitos ativos, ou textos e fotografias de notícias sobre acontecimentos pertinentes. Como a computação e a largura de banda são relativamente baratas em um DON, essas estatísticas— mesmo modelos complexos de aprendizado de máquina com muitas entradas podem ser processados economicamente, desde que qualquer valor de saída destinado a um blockchain seja suficientemente conciso. Para trabalhos computacionalmente intensivos onde DON participantes podem ter diferentes opiniões sobre entradas complexas, rodadas extras de comunicação entre os participantes DON podem ser necessárias para estabelecer consenso sobre as entradas antes de calcular o resultado. Desde que o valor final seja totalmente determinado pelas entradas, uma vez estabelecido o consenso de entrada, cada participante pode simplesmente calcular o valor e transmiti-lo ao outro.participantes com sua assinatura parcial ou enviá-la para um agregador. 7.2 DON Minimização de confiança Imaginamos duas maneiras principais de minimizar a confiança depositada nos componentes do DON: clientes de failover e relatórios minoritários. 7.2.1 Clientes de failover Modelos adversários na literatura de criptografia e sistemas distribuídos normalmente considerar um adversário capaz de corromper (ou seja, comprometer) um subconjunto de nós; por exemplo, menos de um terço para muitos protocolos BFT. É comumente observado, no entanto, que se todos os nós executarem software idêntico, um adversário que identifique uma exploração fatal poderá em princípio, comprometem todos os nós mais ou menos simultaneamente. Esta configuração é frequentemente referida como monocultura de software [47]. Várias propostas para diversificar automaticamente software e configurações de software foram apresentadas para resolver o problema, por exemplo, [47, 113]. Conforme observado em [47], entretanto, a diversidade de software é uma questão complexa e requer consideração cuidadosa. A diversificação de software, por exemplo, pode resultar em pior segurança do que uma monocultura se for aumenta a superfície de ataque de um sistema e, portanto, seus possíveis vetores de ataque em excesso os benefícios de segurança que oferece. Acreditamos que o suporte para clientes robustos de failover, ou seja, clientes aos quais os nós pode mudar diante de um evento catastrófico – é uma forma especialmente atraente de diversificação de software. Os clientes de failover não aumentam o número de vetores potenciais de ataque, pois não são implantados como software principal. Eles oferecem benefícios claros, no entanto, como uma segunda linha de defesa. Pretendemos oferecer suporte a clientes de failover em DONs como um meio fundamental de reduzir sua dependência de segurança em um único cliente. Chainlink já possui um sistema robusto de clientes de failover. Nossa abordagem envolve a manutenção de versões de clientes anteriores e testadas em batalha. Hoje, por exemplo, nós Chainlink com relatórios fora da cadeia (OCR) como cliente principal incluem suporte para o sistema FluxMonitor anterior de Chainlink, se necessário. Tendo sido usado por alguns Ao mesmo tempo, o FluxMonitor recebeu auditorias de segurança e testes de campo. Ele fornece o mesmo funcionalidade como OCR, mas com um custo mais elevado – um custo incorrido apenas conforme a necessidade. 7.2.2 Relatórios Minoritários Dado um conjunto minoritário suficientemente grande de Ominoridade – uma fração de nós honestos que observam a prevaricação da maioria – pode ser útil para eles gerar uma minoria. relatório. Este é um relatório ou sinalizador paralelo, retransmitido para um SC de contrato dependente na cadeia por Ominoridade. SC pode fazer uso desta bandeira de acordo com sua política específica do contrato. Por exemplo, para um contrato em que a segurança é mais importante do que a vivacidade ou a capacidade de resposta, um relatório minoritário pode fazer com que o contrato solicite relatórios suplementares. de outro DON ou acione um disjuntor (veja a próxima seção).Os relatórios minoritários podem desempenhar um papel importante mesmo quando a maioria é honesta, porque qualquer esquema de agregação de relatórios, mesmo que utilize assinaturas funcionais, deve operar de forma limitada, para garantir resiliência contra oracle ou falha de dados. Em outras palavras, deve ser possível produzir um relatório válido com base nas informações de kS < nS oracles, para algum limite kS. Isso significa que um DON corrompido tem alguns latitude na manipulação de valores de relatório, selecionando seus valores kS preferidos entre os nS relatado em V pelo conjunto completo de oracles, mesmo que todas as fontes sejam honestas. Por exemplo, suponha que nS = 10 e kS = 7 em um sistema que utiliza uma função assinatura para autenticar o cálculo da mediana sobre V para o preço da ETH em dólares. Suponha que cinco fontes relatem um preço de \(500, while the other five report \)1000. Então, medianizando os 7 relatórios mais baixos, o DON pode gerar um valor válido v = $500, e medianizando o mais alto, pode gerar v = $ 1.000. Ao aprimorar o protocolo DON para que todos os nós estejam cientes de quais dados foram disponíveis e quais dados foram usados para construir um relatório, os nós poderiam detectar e sinalizar tendências estatisticamente significativas para favorecer um conjunto de relatórios em detrimento de outro e produzir como resultado, um relatório minoritário. 7.3 Guarda-corpos Nosso modelo de confiança para DONs trata MAINCHAIN como um sistema de maior segurança e maior privilégio sistema do que DONs. (Embora este modelo de confiança nem sempre seja verdadeiro, é mais fácil adaptar o mecanismo resultante a situações em que DON é a segurança mais alta plataforma do que vice-versa.) Uma estratégia natural de minimização da confiança envolve, portanto, a implementação de mecanismos de monitoramento e à prova de falhas em smart contracts - seja em um front-end MAINCHAIN para um DON ou diretamente em um contrato de dependente SC. Nos referimos a esses mecanismos como guarda-corpos e enumere alguns dos mais importantes aqui: • Disjuntores: o SC pode pausar ou interromper as atualizações de estado em função das características das próprias atualizações de estado (por exemplo, grande variação entre relatórios) ou com base em outras informações. Por exemplo, um disjuntor pode desarmar casos em que os relatórios oracle variam de forma implausível ao longo do tempo. Um disjuntor pode também ser tropeçado por um relatório minoritário. Assim, os disjuntores podem evitar DONs de fazer relatórios grosseiramente errados. Os disjuntores podem fornecer tempo para que intervenções adicionais sejam consideradas ou exercido. Uma dessas intervenções são as saídas de emergência. • Escotilhas de fuga: Em circunstâncias adversas, conforme identificado por um conjunto de custodiantes, detentores de token comunitários ou outros órgãos de curadores, um contrato pode invocar uma instalação de emergência às vezes chamada de escotilha de fuga [163]. Uma escotilha de fuga faz com que o SC seja desligado de alguma maneira e/ou termine pendente e possivelmente transações futuras. Por exemplo, pode devolver fundos custodiados aos usuários [17]),pode rescindir os termos do contrato [162] ou pode cancelar transações pendentes e/ou futuras [173]. As escotilhas de fuga podem ser implantadas em qualquer tipo de contrato, não apenas aquele que depende de um DON, mas eles são de interesse como um buffer potencial contra DON prevaricação. • Failover: Em sistemas onde o SC depende do DON para serviços essenciais, é possível que o SC forneça mecanismos de failover que garantam a continuação do serviço mesmo no caso de falha ou mau comportamento de DON. Por exemplo, no TEF (Secção 6), o contrato âncora SCa pode fornecer interfaces duplas onde tanto on-chain quanto interfaces de execução fora da cadeia são suportadas para certas operações críticas (por exemplo, retirada), ou para transações normais, com um atraso adequado para evitar a antecipação de transações DON. Nos casos em que as fontes de dados assinam dados, os usuários podem também fornecerá relatórios à SCa quando o DON não o fizer. Provas de fraude, conforme proposto para várias formas de rollup otimista (ver Seção 6.3), são semelhantes em sabor e complementares aos mecanismos que enumeramos acima. Eles também fornece uma forma de monitoramento e proteção na cadeia contra possíveis falhas em componentes do sistema fora da cadeia. 7.4 Governança com confiança minimizada Como todos os sistemas descentralizados, a rede Chainlink requer mecanismos de governança ajustar parâmetros ao longo do tempo, responder a emergências e orientar sua evolução. Alguns desses mecanismos residem atualmente no MAINCHAIN e podem continuar a existir. faça isso mesmo com a implantação de DONs. Um exemplo é o mecanismo de pagamento para provedores de nós oracle (nós DON). DON contratos front-end em MAINCHAIN conter mecanismos adicionais, como guarda-corpos, que podem estar sujeitos a alterações periódicas modificação. Prevemos duas classes de mecanismos de governança: evolutivos e emergenciais. Governança evolucionária: Muitas modificações no ecossistema Chainlink são de modo que sua implementação não seja uma questão urgente: Melhorias de desempenho, aprimoramentos de recursos, atualizações de segurança (não urgentes) e assim por diante. À medida que Chainlink avança progressivamente em direção a ainda mais participantes em sua governança, esperamos que muitos ou a maioria dessas mudanças deve ser ratificada pela comunidade de um DON específico afetado por aqueles mudanças. Entretanto, e talvez em última análise como mecanismo paralelo, acreditamos que uma noção de menor privilégio temporal pode ser um meio útil de implementar a governação evolutiva. Muito simplesmente, a ideia é que as mudanças sejam implementadas gradualmente, garantindo à comunidade uma oportunidade de responder a eles. Por exemplo, a migração para um novo O contrato MAINCHAIN pode ser restringido para que o novo contrato seja implantado pelo menos trinta dias antes da ativação.Governança de emergência: Vulnerabilidades exploráveis ou exploradas em MAINCHAIN contratos ou outras formas de vida ou falhas de segurança podem exigir intervenção imediata para garantir resultados catastróficos. Nossa intenção é apoiar um multisig mecanismo de intervenção no qual, para garantir contra má conduta por parte de qualquer organização, os signatários estarão dispersos pelas organizações. Garantindo disponibilidade consistente de assinantes e acesso oportuno às cadeias de comando apropriadas para autorização de emergência as mudanças exigirão claramente um planeamento operacional cuidadoso e uma revisão regular. Estes os desafios são semelhantes aos envolvidos no teste de outras respostas a incidentes de segurança cibernética capacidades [134], com uma necessidade semelhante de combater problemas comuns como o decréscimo de vigilância [223]. A governança de DONs difere daquela de muitos sistemas descentralizados em sua grau potencial de heterogeneidade. Cada DON pode ter fontes de dados, executáveis, requisitos de nível de serviço distintos, como tempo de atividade e usuários. A rede Chainlink mecanismos de governação devem ser suficientemente flexíveis para acomodar tais variações na metas e parâmetros operacionais. Estamos explorando ativamente ideias de design e planejamos publicar pesquisas sobre este tema no futuro. 7,5 Infraestrutura de chave pública Com a descentralização progressiva, surgirá a necessidade de uma identificação robusta dos participantes da rede, incluindo nós DON. Em particular, Chainlink requer um forte Infraestrutura de chave pública (PKI). Uma PKI é um sistema que vincula chaves a identidades. Para Por exemplo, uma PKI sustenta o sistema de conexões seguras (TLS) da Internet: quando você se conecta a um site via HTTPS (por exemplo, https://www.chainlinklabs.com) e um lock aparece no seu navegador, isso significa que a chave pública do proprietário do domínio foi foi vinculado a esse proprietário por uma autoridade - especificamente, por meio de uma assinatura digital em um chamado certificado. Um sistema hierárquico de autoridades de certificação (CAs), cujas autoridades raiz de nível superior estão conectadas a navegadores populares, ajuda a garantir que os certificados são emitidos apenas para os legítimos proprietários de domínios. Esperamos que Chainlink eventualmente faça uso de serviços de nomes descentralizados, inicialmente o Ethereum Name Service (ENS) [22], como base para nossa PKI. Como seu nome sugere, ENS é análogo ao DNS, o Sistema de Nomes de Domínio que mapeia nomes de domínio (legíveis por humanos) para endereços IP na Internet. O ENS, no entanto, mapeia nomes Ethereum legíveis por humanos para endereços blockchain. Porque ENS opera no Ethereum blockchain, impedindo o comprometimento da chave, adulterando seu namespace é, em princípio, tão difícil quanto adulterar o contrato que o administra e/ou o blockchain subjacente. (O DNS, por outro lado, tem sido historicamente vulnerável para falsificação, sequestro e outros ataques.) Registramos data.eth com ENS na rede principal Ethereum e pretendemos estabelecê-lo como um namespace raiz sob o qual as identidades dos serviços de dados oracle e outras entidades de rede Chainlink residem. Os domínios no ENS são hierárquicos, o que significa que cada domínio pode conter referências para outros nomes sob ele. Os subdomínios no ENS podem servir como uma forma de organizar edelegar confiança. A principal função do data.eth será servir como um serviço de diretório on-chain para feeds de dados. Tradicionalmente, os desenvolvedores e usuários de oracles têm usado fontes fora da cadeia (por exemplo, sites como docs.chain.link ou data.chain.link, ou redes sociais como Twitter) para publicar e obter endereços de feed de dados oracle (como o preço ETH-USD alimentação). Com um namespace raiz altamente confiável como data.eth, é possível estabelecer um mapeamento de eth-usd.data.eth para, por exemplo, o endereço smart contract de um agregador de rede oracle on-chain para o feed de preços ETH-USD. Isso seria criar um caminho seguro para qualquer pessoa se referir ao blockchain como a fonte da verdade para aquele feed de dados desse par preço/nome (ETH-USD). Consequentemente, tal uso de ENS percebe dois benefícios não disponíveis em fontes de dados fora da cadeia: • Segurança forte: todas as alterações e atualizações no domínio são registradas de forma imutável e protegidos criptograficamente, em oposição aos endereços de texto em um site, que não desfrute de nenhuma dessas duas propriedades de segurança. • Propagação automatizada na cadeia: atualizações no endereço subjacente de um feed de dados smart contract podem acionar notificações que se propagam para dispositivos inteligentes dependentes. contratos e pode, por exemplo, atualizar automaticamente contratos dependentes com os novos endereços.13 Namespaces como ENS, no entanto, não validam automaticamente a propriedade legítima de nomes afirmados. Assim, por exemplo, se o namespace incluir a entrada ⟨“Acme Oracle Node Co.”, endereço⟩, então, um usuário obtém a garantia de que addr pertence ao requerente do nome Acme Oracle Node Co. Sem mecanismos adicionais para administração de namespace, no entanto, ela não obtém garantia de que o nome pertence a uma entidade legitimamente chamado Acme Oracle Node Co. em um sentido significativo do mundo real. Nossa abordagem para validação de nomes, ou seja, garantir sua propriedade por entidades correspondentes e legítimas do mundo real, depende de vários componentes. Hoje, Chainlink Laboratórios atua efetivamente como uma CA para a rede Chainlink. Enquanto os laboratórios Chainlink continuarão para validar nomes, nossa PKI evoluirá para um modelo mais descentralizado de duas maneiras: • Modelo de rede de confiança: A contrapartida descentralizada de uma PKI hierárquica é muitas vezes referida como uma rede de confiança.14 Variantes têm sido propostas desde a década de 1990, por exemplo, [98], e vários pesquisadores observaram que blockchains podem facilitar o uso da ideia, por exemplo, [227] registrando certificados de uma forma globalmente consistente. livro razão. Estamos explorando variantes deste modelo para validar as identidades das entidades na rede Chainlink de forma mais descentralizada. 13Um contrato dependente pode incluir opcionalmente um atraso predeterminado para permitir inspeção manual e intervenção de administradores de contratos dependentes. 14Um termo cunhado por Phil Zimmermann para PGP [238].• Vinculação com dados de validação: hoje, uma quantidade substancial de dados de desempenho de nós oracle é visível na cadeia e, portanto, vinculada de forma arquivística aos endereços de nós. Esses dados podem ser vistos como enriquecedores de uma identidade na PKI, fornecendo provas históricas da sua participação (confiável) na rede. Além disso, ferramentas para identidade descentralizada baseada em DECO e Town Crier [160] habilitar nós para acumular credenciais derivadas de dados do mundo real. Como apenas um exemplo, um o operador do nó pode anexar uma credencial à sua identidade PKI que comprove a posse de uma classificação Dun e Bradstreet. Estas formas complementares de validação podem suplemento staking na criação de garantia de segurança da rede. Um nó oracle com uma identidade estabelecida no mundo real pode ser visto como tendo participação em um sistema derivado de sua reputação. (Consulte a Seção 4.3 e a Seção 9.6.3.) Um requisito final para a PKI Chainlink é a inicialização segura, ou seja, publicando o nome raiz da rede Chainlink, atualmente data.eth (analogamente à conexão física de domínios de nível superior em navegadores). Em outras palavras, como os usuários Chainlink determine que data.eth é de fato o domínio de nível superior associado ao Chainlink projeto? A solução para este problema para a rede Chainlink é multifacetada e pode envolver: • Adicionar um registro TXT [224] ao nosso registro de domínio para chain.link que especifica data.eth como domínio raiz do ecossistema Chainlink. (Chainlink aproveita implicitamente a PKI para domínios da Internet para validar seu domínio ENS raiz.) • Link para data.eth do site existente de Chainlink, por exemplo, de https://docs.chain.link. (Outro uso implícito da PKI para domínios da Internet.) • Divulgar o uso do data.eth por meio de vários documentos, incluindo este whitepaper. • Publicar data.eth publicamente em nossos canais de mídia social, como o Twitter, e o blog Chainlink [18]. • Colocar uma grande quantidade de LINK sob o controle do mesmo endereço de registrante como dados.eth.
Giảm thiểu sự tin cậy
Là một hệ thống phi tập trung với sự tham gia của một tập hợp các thực thể không đồng nhất, Mạng Chainlink cung cấp khả năng bảo vệ mạnh mẽ chống lại các lỗi về cả tính khả dụng (tính khả dụng) và độ an toàn (tính toàn vẹn của báo cáo). Tuy nhiên, hầu hết các hệ thống phi tập trung đều khác nhau về mức độ mà các thành phần cấu thành của chúng được phân cấp. Cái này đúng ngay cả với các hệ thống lớn, nơi có sự phân quyền hạn chế giữa các thợ mỏ [32] và trung gian [51] đã có mặt từ lâu. Mục tiêu của bất kỳ nỗ lực phân cấp nào là giảm thiểu sự tin cậy: Chúng tôi tìm cách giảm tác động bất lợi của tham nhũng hoặc trục trặc hệ thống trong mạng Chainlink, thậm chí cả điều đó do DON độc hại. Nguyên tắc chỉ đạo của chúng tôi là Nguyên tắc đặc quyền tối thiểu [197]. Các thành phần và tác nhân hệ thống trong hệ thống phải có đặc quyền trong phạm vi nghiêm ngặt chỉ cho phép hoàn thành thành công vai trò được giao của họ. Ở đây chúng tôi trình bày một số cơ chế cụ thể để Chainlink áp dụng trong quá trình phát triển của nó hướng tới việc giảm thiểu sự tin cậy ngày càng lớn hơn. Chúng tôi mô tả các cơ chế này theo thuật ngữ của locus, tức là các thành phần hệ thống mà chúng có gốc rễ, được hiển thị trong Hình 14. Chúng ta giải quyết từng địa điểm trong một tiểu mục tương ứng. 7.1 Xác thực nguồn dữ liệu Mô hình hoạt động hiện tại cho oracle bị hạn chế bởi thực tế là có ít nguồn dữ liệu ký điện tử vào dữ liệu họ bỏ qua, phần lớn là do TLS không ký tự nhiên dữ liệu. TLS sử dụng chữ ký số trong giao thức “bắt tay” của nó (để thiết lập khóa chung giữa máy chủ và máy khách). Do đó, các máy chủ hỗ trợ HTTPS có chứng chỉ trên các khóa công khai về nguyên tắc có thể dùng để ký dữ liệu, nhưng chúng thường không sử dụng những chứng chỉ này để hỗ trợ việc ký dữ liệu. Do đó, tính bảo mật của DON, như trong các mạng oracle ngày nay, dựa vào các nút oracle chuyển tiếp dữ liệu một cách trung thực từ một mạng dữ liệu nguồn cho một hợp đồng. Một thành phần quan trọng lâu dài trong tầm nhìn của chúng tôi nhằm giảm thiểu sự tin cậy trong Chainlink liên quan đến việc xác thực nguồn dữ liệu mạnh mẽ hơn thông qua việc hỗ trợ các công cụ và tiêu chuẩn để ký dữ liệu. Việc ký dữ liệu có thể giúp thực thi các đảm bảo tính toàn vẹn từ đầu đến cuối. Về nguyên tắc, nếu một hợp đồng chấp nhận đầu vào là một phần dữ liệu D được ký trực tiếp bởi bên dữ liệu.

Hình 14: Các cơ chế giảm thiểu sự tin cậy được thảo luận trong phần này. 1⃝Dữ liệu các nguồn cung cấp dữ liệu cho 2⃝DON, chuyển tiếp chức năng của dữ liệu đến bộ phận phụ thuộc 3⃝smart contract. Ngoài ra, mạng DON hoặc oracle bao gồm 4⃝nút quản lý smart contract trên MAINCHAIN, ví dụ: các nút bù, bảo vệ đường ray, vân vân. nguồn thì mạng oracle không thể giả mạo D. Có nhiều lời khuyến khích khác nhau những nỗ lực cho phép việc ký dữ liệu như vậy đã xuất hiện, bao gồm cả OpenID Connect, được thiết kế chủ yếu để xác thực người dùng [9], TLS-N, một dự án học thuật nhằm mục đích mở rộng TLS [191] bằng cách sử dụng lại chứng chỉ TLS và Tiện ích mở rộng bằng chứng TLS [63]. Tuy nhiên, mặc dù OpenID Connect đã được áp dụng một số, nhưng Tiện ích mở rộng bằng chứng TLS và TLS-N vẫn chưa được áp dụng. Một cách xác thực nguồn dữ liệu tiềm năng khác là sử dụng Trao đổi HTTP đã ký (SXG) [230], họ có thể lưu vào bộ nhớ đệm trên mạng phân phối nội dung như một phần của giao thức Trang di động tăng tốc (AMP) [225]. Trình duyệt dành cho thiết bị di động Chrome hiển thị nội dung từ SXG được lưu trong bộ nhớ đệm AMP như thể chúng được phân phát từ miền mạng riêng của nhà xuất bản của họ thay vì miền máy chủ bộ đệm. Khuyến khích xây dựng thương hiệu này, cùng với việc tương đối dễ dàng cho phép nó sử dụng các dịch vụ như URL thực của CloudFlare [83] và amppackager [124] của Google, có thể dẫn đến việc áp dụng rộng rãi SXG trong nội dung tin tức được lưu trong bộ nhớ đệm, điều này sẽ cho phép một quy trình đơn giản, chống giả mạo cách để Chainlink oracle kích hoạt các sự kiện đáng chú ý được báo cáo trong SXG hợp lệ. Mặc dù SXG được lưu trong bộ nhớ đệm AMP từ các nhà xuất bản tin tức sẽ không hữu ích cho các ứng dụng có nhịp độ cao. các ứng dụng như báo cáo về dữ liệu giao dịch, chúng có thể là nguồn an toàn cho các giao dịch tùy chỉnh. các hợp đồng liên quan đến các sự kiện trong thế giới thực như thời tiết khắc nghiệt hoặc kết quả bầu cử. Chúng tôi tin rằng việc triển khai đơn giản, các công cụ hoàn thiện và tính linh hoạt sẽ rất quan trọng đối với tăng tốc việc ký nguồn dữ liệu. Cho phép nhà cung cấp dữ liệu sử dụng các nút Chainlink làm giao diện người dùng API được xác thực có vẻ là một cách tiếp cận đầy hứa hẹn. Chúng tôi dự định tạo ra mộttùy chọn cho các nút hoạt động ở chế độ này, có hoặc không có sự tham gia vào mạng dưới dạng oracle toàn diện. Chúng tôi gọi khả năng này là nguồn gốc dữ liệu được xác thực (ADO). Bằng cách sử dụng các nút Chainlink với ADO, các nguồn dữ liệu sẽ có thể được hưởng lợi từ kinh nghiệm và công cụ do cộng đồng Chainlink phát triển trong việc bổ sung kỹ thuật số khả năng ký kết vào bộ API ngoài chuỗi hiện có của họ. Liệu họ có nên chọn chạy các nút của họ dưới dạng oracle, họ cũng có thể mở ra các luồng doanh thu mới tiềm năng theo cùng mô hình với các nhà cung cấp dữ liệu hiện có, ví dụ: Kraken [28], Kaiko [140] và những người khác chạy các nút Chainlink để bán dữ liệu API trên chuỗi. 7.1.1 Những hạn chế của nguồn gốc dữ liệu được xác thực Ký kỹ thuật số bằng nguồn dữ liệu, mặc dù có thể giúp tăng cường xác thực nhưng bản chất nó không đủ để thực hiện tất cả các mục tiêu hoạt động hoặc bảo mật tự nhiên của oracle mạng. Đầu tiên, một phần dữ liệu D nhất định vẫn phải được chuyển tiếp một cách mạnh mẽ và kịp thời. cách từ nguồn dữ liệu tới smart contract hoặc người tiêu dùng dữ liệu khác. Tức là ngay cả trong một cài đặt lý tưởng trong đó tất cả dữ liệu được ký bằng các khóa được lập trình sẵn thành phụ thuộc hợp đồng, vẫn cần có DON để truyền đạt dữ liệu một cách đáng tin cậy từ các nguồn đến các hợp đồng. Ngoài ra, có một số trường hợp trong đó hợp đồng hoặc dữ liệu oracle khác người tiêu dùng muốn truy cập vào đầu ra được xác thực của các chức năng khác nhau được tính toán trên dữ liệu nguồn vì hai lý do chính: • Tính bảo mật: API nguồn dữ liệu có thể cung cấp dữ liệu nhạy cảm hoặc độc quyền cần phải được biên tập lại hoặc khử trùng trước khi nó được hiển thị công khai trên chuỗi. Tuy nhiên, bất kỳ sửa đổi nào đối với dữ liệu đã ký đều làm mất hiệu lực của chữ ký. Đặt cái khác Nói cách khác, ADO ngây thơ và việc dọn dẹp dữ liệu không tương thích. Chúng tôi hiển thị trong ví dụ 3 làm thế nào cả hai có thể được dung hòa thông qua một hình thức ADO nâng cao. • Lỗi nguồn dữ liệu: Cả lỗi và lỗi đều có thể ảnh hưởng đến nguồn dữ liệu và chữ ký số không giải quyết được vấn đề gì. Từ khi thành lập [98], Chainlink đã đã bao gồm một cơ chế để khắc phục những lỗi đó: sự dư thừa. Báo cáo do mạng oracle đưa ra thường trình bày dữ liệu kết hợp của nhiều nguồn. Bây giờ chúng tôi thảo luận về các kế hoạch mà chúng tôi đang khám phá trong cài đặt ADO để nâng cao tính bảo mật của dữ liệu nguồn và kết hợp dữ liệu từ nhiều nguồn một cách an toàn. 7.1.2 Tính bảo mật Các nguồn dữ liệu có thể không dự đoán và cung cấp đầy đủ các API mong muốn bởi người dùng. Cụ thể, người dùng có thể muốn truy cập dữ liệu được xử lý trước để giúp đảm bảo tính bảo mật. Ví dụ sau đây minh họa vấn đề.Ví dụ 3. Alice mong muốn có được thông tin xác thực danh tính phi tập trung (DID) nêu rõ rằng cô ấy trên 18 tuổi (và do đó, chẳng hạn, có thể vay tiền). để làm vì vậy, cô ấy cần phải chứng minh sự thật này về tuổi của mình với tổ chức cấp chứng chỉ DID. Alice hy vọng sẽ sử dụng dữ liệu từ Bộ phương tiện cơ giới (DMV) của bang cô ấy trang web cho mục đích này. DMV có hồ sơ về ngày sinh của cô ấy và sẽ phát ra một chứng thực được ký điện tử A trên đó có dạng sau: A = {Tên: Alice, DoB: 16/02/1999}. Trong ví dụ này, chứng thực A có thể đủ để Alice chứng minh cho DID nhà cấp chứng chỉ xác thực rằng cô ấy trên 18 tuổi. Nhưng nó không cần thiết làm rò rỉ thông tin nhạy cảm: của Alice DoB chính xác. Lý tưởng nhất là điều Alice muốn từ DMV thay vào đó là chữ ký trên một câu nói đơn giản A′ rằng “Alice trên 18 tuổi.” Nói cách khác, cô ấy muốn đầu ra của hàm G vào ngày sinh của cô ấy X, trong đó (một cách không chính thức), A′ = G(X) = True nếu Ngày hiện tại −X ≥18 năm; ngược lại, G(X) = Sai. Để khái quát hóa, Alice muốn có thể yêu cầu từ nguồn dữ liệu một chứng thực A′ có dạng: A′ = {Tên: Alice, Func:G(X), Kết quả: Đúng}, trong đó G(X) biểu thị đặc tả của hàm G và (các) đầu vào X của nó. Chúng ta hình dung rằng người dùng sẽ có thể cung cấp G(X) mong muốn làm đầu vào cho yêu cầu của mình về chứng thực tương ứng A′. Lưu ý rằng chứng thực của nguồn dữ liệu A′ phải bao gồm thông số G(X) để đảm bảo rằng A′ được giải thích chính xác. Trong ví dụ trên, G(X) định nghĩa ý nghĩa của giá trị Boolean trong A′ và do đó True biểu thị chủ đề của chứng thực trên 18 tuổi. Chúng tôi đề cập đến các truy vấn linh hoạt trong đó người dùng có thể chỉ định G(X) làm truy vấn chức năng. Để hỗ trợ các trường hợp sử dụng như trong Ví dụ 3, cũng như các trường hợp liên quan đến truy vấn trực tiếp từ hợp đồng, chúng tôi dự định bao gồm hỗ trợ cho các truy vấn chức năng liên quan đến các hàm đơn giản G như một phần của ADO. 7.1.3 Kết hợp dữ liệu nguồn Để giảm chi phí trên chuỗi, các hợp đồng thường được thiết kế để sử dụng dữ liệu kết hợp từ nhiều nguồn, như được minh họa trong ví dụ sau. Ví dụ 4 (Trung gian hóa dữ liệu giá). Để cung cấp nguồn cấp giá, tức là giá trị của một tài sản (ví dụ: ETH) so với tài sản khác (ví dụ: USD), mạng oracle thường sẽ có được giá hiện tại từ một số nguồn, chẳng hạn như trao đổi. Mạng oracle thường gửi đến SC hợp đồng phụ thuộc giá trị trung bình của các giá trị này. Trong môi trường có ký dữ liệu, mạng oracle hoạt động chính xác sẽ nhận được từ nguồn dữ liệu S = {S1, . . . , SnS} dãy các giá trị V = {v1, v2, . . . , vnS} từ nS nguồn có chữ ký nguồn cụ thể đi kèm Σ = {σ1, σ2, . . . , σnS}. Khi xác minh chữ ký, nó truyền giá v = trung vị (V ) tới SC.Thật không may, không có cách đơn giản nào để mạng oracle truyền giá trị trung vị giá trị v trong Ví dụ 4 đến SC cùng với bằng chứng ngắn gọn σ∗rằng v đã được tính toán chính xác trên đầu vào đã ký. Một cách tiếp cận ngây thơ sẽ là mã hóa trong SC các khóa chung của tất cả các nguồn dữ liệu nS. Mạng oracle sau đó sẽ chuyển tiếp (V, Σ) và cho phép SC tính toán trung vị của V . Tuy nhiên, điều này sẽ dẫn đến một bằng chứng σ có kích thước O(nS)—tức là, σ∗sẽ không ngắn gọn. Nó cũng sẽ phải chịu chi phí gas cao cho SC, cần phải xác minh tất cả chữ ký trong Σ. Ngược lại, việc sử dụng SNARK cho phép chứng minh ngắn gọn về các giá trị nguồn được xác thực được kết hợp chính xác. Nó có thể khả thi trong thực tế, nhưng áp đặt khá cao chi phí tính toán trên bộ chuẩn và chi phí gas hơi cao trên dây chuyền. Sử dụng Town Crier cũng là một lựa chọn, nhưng yêu cầu sử dụng TEE, không phù hợp với tất cả mọi người. mô hình niềm tin của người dùng. Một khái niệm hữu ích để đưa ra các giải pháp cho vấn đề chung về ký dữ liệu kết hợp từ các nguồn là một công cụ mật mã được gọi là chữ ký chức năng [59, 132]. Tóm lại, chữ ký chức năng cho phép người ký ủy quyền khả năng ký, sao cho người được ủy quyền chỉ có thể ký các tin nhắn trong phạm vi chức năng F do người ký chọn. Chúng tôi trình bày trong Phụ lục D cách ràng buộc chức năng này có thể dùng để giới hạn phạm vi của các giá trị báo cáo do DON phát ra dưới dạng hàm của các giá trị được ký bởi nguồn dữ liệu. Chúng tôi cũng giới thiệu một dạng nguyên thủy mới, được gọi là chữ ký hàm rời rạc, bao gồm yêu cầu thoải mái về độ chính xác nhưng có khả năng hoạt động hiệu quả hơn nhiều. hơn các phương pháp tiếp cận như SNARK. Bài toán kết hợp các nguồn dữ liệu theo cách bao gồm xác thực nguồn của đầu ra cũng áp dụng cho các công cụ tổng hợp dữ liệu, ví dụ: CoinCap, CoinMarketCap, CoinGecko, CryptoCompare, v.v., thu thập dữ liệu từ nhiều sàn giao dịch mà chúng trọng lượng dựa trên khối lượng, sử dụng các phương pháp mà trong một số trường hợp họ công bố và trong các trường hợp khác là độc quyền. Một trình tổng hợp muốn xuất bản một giá trị với xác thực nguồn phải đối mặt với thách thức tương tự như việc tập hợp các nút tổng hợp dữ liệu nguồn. 7.1.4 Đang xử lý dữ liệu nguồn smart contract phức tạp có thể phụ thuộc vào số liệu thống kê tổng hợp tùy chỉnh trên nguồn dữ liệu chính, chẳng hạn như sự biến động trong lịch sử giá gần đây của nhiều tài sản hoặc văn bản và hình ảnh từ tin tức về các sự kiện thích hợp. Vì khả năng tính toán và băng thông tương đối rẻ trong DON nên những thống kê này— ngay cả các mô hình học máy phức tạp có nhiều đầu vào—cũng có thể được xử lý một cách tiết kiệm, miễn là mọi giá trị đầu ra dành cho blockchain đều đủ ngắn gọn. Đối với các công việc đòi hỏi tính toán chuyên sâu trong đó DON người tham gia có thể có các ý kiến khác nhau quan điểm về đầu vào phức tạp, các vòng giao tiếp bổ sung giữa những người tham gia DON có thể được yêu cầu thiết lập sự đồng thuận về đầu vào trước khi tính toán kết quả. Miễn là giá trị cuối cùng được xác định đầy đủ bởi đầu vào, khi sự đồng thuận đầu vào được thiết lập, mỗi người tham gia có thể chỉ cần tính giá trị và truyền nó cho người khácngười tham gia bằng chữ ký một phần của họ hoặc gửi nó đến một công cụ tổng hợp. 7.2 DON Giảm thiểu sự tin cậy Chúng tôi hình dung hai cách chính để giảm thiểu sự tin cậy đặt vào các thành phần của DON: khách hàng chuyển đổi dự phòng và báo cáo thiểu số. 7.2.1 Khách hàng chuyển đổi dự phòng Các mô hình đối nghịch trong tài liệu về mật mã và hệ thống phân tán thường xem xét một đối thủ có khả năng làm hỏng (tức là xâm phạm) một tập hợp con các nút, ví dụ: ít hơn một phần ba đối với nhiều giao thức BFT. Tuy nhiên, người ta thường quan sát thấy, rằng nếu tất cả các nút chạy phần mềm giống hệt nhau, kẻ thù xác định được một lỗi khai thác nghiêm trọng có thể về nguyên tắc thỏa hiệp tất cả các nút ít nhiều cùng một lúc. Cài đặt này thường được gọi là độc canh phần mềm [47]. Nhiều đề xuất khác nhau về việc tự động đa dạng hóa phần mềm và cấu hình phần mềm đã được đưa ra để giải quyết vấn đề, ví dụ: [47, 113]. Như đã lưu ý trong [47], tuy nhiên, tính đa dạng của phần mềm là một vấn đề phức tạp và cần được xem xét cẩn thận. Ví dụ, đa dạng hóa phần mềm có thể dẫn đến tình trạng bảo mật kém hơn so với độc canh nếu nó tăng bề mặt tấn công của hệ thống và do đó các vectơ tấn công có thể vượt quá những lợi ích bảo mật mà nó mang lại. Chúng tôi tin rằng sự hỗ trợ dành cho các ứng dụng khách chuyển đổi dự phòng mạnh mẽ—tức là các ứng dụng khách với nút nào có thể chuyển đổi khi đối mặt với một sự kiện thảm khốc—là một hình thức đặc biệt hấp dẫn của đa dạng hóa phần mềm. Máy khách chuyển đổi dự phòng không làm tăng số lượng vectơ tiềm năng bị tấn công vì chúng không được triển khai như phần mềm chính. Chúng mang lại lợi ích rõ ràng, tuy nhiên, như một tuyến phòng thủ thứ hai. Chúng tôi dự định hỗ trợ các máy khách chuyển đổi dự phòng trong DONs như một phương tiện chính để giảm sự phụ thuộc vào bảo mật của họ vào một khách hàng. Chainlink đã có sẵn một hệ thống máy khách chuyển đổi dự phòng mạnh mẽ. Cách tiếp cận của chúng tôi liên quan đến việc duy trì các phiên bản máy khách đã được thử nghiệm trong trận chiến trước đó. Ví dụ: ngày nay, các nút Chainlink với Báo cáo chuỗi Off (OCR) là khách hàng chính của họ bao gồm hỗ trợ cho hệ thống FluxMonitor trước đó của Chainlink nếu cần. Đã được sử dụng một số hiện tại, FluxMonitor đã nhận được kiểm tra bảo mật và thử nghiệm hiện trường. Nó cung cấp tương tự chức năng như OCR, nhưng với chi phí cao hơn—chi phí chỉ phát sinh khi cần thiết. 7.2.2 Báo cáo thiểu số Với một tập hợp thiểu số đủ lớn Ominority—một phần nhỏ các nút trung thực quan sát thấy sự sai trái của đa số—việc chúng tạo ra thiểu số có thể hữu ích. báo cáo. Đây là một báo cáo hoặc cờ song song, được chuyển tiếp đến hợp đồng phụ thuộc SC trên chuỗi của Ominority. SC có thể sử dụng cờ này theo chính sách dành riêng cho hợp đồng của mình. Ví dụ: đối với một hợp đồng trong đó sự an toàn quan trọng hơn tính sống động hoặc khả năng đáp ứng, báo cáo thiểu số có thể khiến hợp đồng yêu cầu báo cáo bổ sung. từ DON khác hoặc kích hoạt cầu dao (xem phần tiếp theo).Báo cáo của thiểu số có thể đóng một vai trò quan trọng ngay cả khi đa số là trung thực, bởi vì bất kỳ sơ đồ tổng hợp báo cáo nào, ngay cả khi nó sử dụng chữ ký chức năng, đều phải hoạt động theo ngưỡng để đảm bảo khả năng phục hồi trước oracle hoặc lỗi dữ liệu. trong nói cách khác, phải có khả năng tạo ra một báo cáo hợp lệ dựa trên thông tin đầu vào của kS < nS oracles, đối với một số ngưỡng kS. Điều này có nghĩa là DON bị hỏng có một số vĩ độ trong việc thao tác các giá trị báo cáo bằng cách chọn các giá trị kS ưa thích của nó trong số nS được báo cáo trong V bởi tập hợp đầy đủ oracles, ngay cả khi tất cả các nguồn đều trung thực. Ví dụ, giả sử nS = 10 và kS = 7 trong hệ thống sử dụng hàm chữ ký để xác thực tính toán trung bình trên V đối với giá ETH bằng USD. Giả sử có năm nguồn báo cáo mức giá \(500, while the other five report \)1000. Sau đó, bằng cách tính trung bình 7 báo cáo thấp nhất, DON có thể tạo ra giá trị hợp lệ v = $500, và bằng cách tính trung bình mức cao nhất, nó có thể tạo ra v = $1000. Bằng cách nâng cao giao thức DON để tất cả các nút đều biết dữ liệu nào được có sẵn và dữ liệu nào được sử dụng để xây dựng báo cáo, các nút có thể phát hiện và gắn cờ xu hướng có ý nghĩa thống kê để ưu tiên một tập hợp báo cáo hơn tập hợp khác và tạo ra kết quả là một báo cáo thiểu số. 7.3 Đường ray bảo vệ Mô hình tin cậy của chúng tôi dành cho DON coi MAINCHAIN là đặc quyền cao hơn, bảo mật cao hơn hệ thống hơn DONs. (Mặc dù mô hình tin cậy này có thể không phải lúc nào cũng đúng nhưng nó dễ dàng hơn để điều chỉnh cơ chế kết quả cho phù hợp với các tình huống trong đó DON có độ bảo mật cao hơn nền tảng hơn là ngược lại.) Do đó, chiến lược giảm thiểu sự tin cậy tự nhiên bao gồm việc triển khai các cơ chế giám sát và an toàn dự phòng trong smart contracts—trong giao diện người dùng MAINCHAIN cho DON hoặc trực tiếp trong hợp đồng phụ thuộc SC. Chúng tôi gọi những cơ chế này là lan can bảo vệ và liệt kê một số điều quan trọng nhất ở đây: • Bộ ngắt mạch: SC có thể tạm dừng hoặc dừng cập nhật trạng thái do chức năng của các đặc điểm của chính bản cập nhật trạng thái đó (ví dụ: phương sai lớn giữa các lần cập nhật trạng thái báo cáo) hoặc dựa trên các đầu vào khác. Ví dụ, một cầu dao có thể ngắt điện các trường hợp trong đó báo cáo oracle thay đổi đáng kể theo thời gian. Bộ ngắt mạch có thể cũng bị vấp ngã bởi một báo cáo thiểu số. Do đó, bộ ngắt mạch có thể ngăn chặn DONs khỏi việc đưa ra những báo cáo sai lầm trầm trọng. Bộ ngắt mạch có thể cung cấp thời gian để xem xét các biện pháp can thiệp bổ sung hoặc tập thể dục. Một sự can thiệp như vậy là cửa thoát hiểm. • Cửa thoát hiểm: Trong các trường hợp bất lợi, được xác định bởi một nhóm người giám hộ, chủ sở hữu token cộng đồng hoặc các cơ quan quản trị khác, hợp đồng có thể viện dẫn cơ sở khẩn cấp đôi khi được gọi là cửa thoát hiểm [163]. Một lối thoát hiểm khiến SC tắt theo cách nào đó và/hoặc chấm dứt đang chờ xử lý và có thể các giao dịch trong tương lai. Ví dụ: nó có thể trả lại tiền được lưu ký cho người dùng [17]),có thể chấm dứt các điều khoản hợp đồng [162] hoặc có thể hủy các giao dịch đang chờ xử lý và/hoặc trong tương lai [173]. Cửa thoát hiểm có thể được triển khai trong bất kỳ loại hợp đồng nào, không chỉ một cái dựa trên DON, nhưng chúng được quan tâm như một bộ đệm tiềm năng chống lại DON sự cố. • Chuyển đổi dự phòng: Trong các hệ thống mà SC dựa vào DON cho các dịch vụ thiết yếu, SC có thể cung cấp cơ chế chuyển đổi dự phòng để đảm bảo dịch vụ luôn được tiếp tục trong trường hợp DON thất bại hoặc hành vi sai trái. Ví dụ: trong TEF (Phần 6), hợp đồng neo SCa có thể cung cấp giao diện kép trong đó cả trên chuỗi và Giao diện thực thi ngoài chuỗi được hỗ trợ cho một số hoạt động quan trọng nhất định (ví dụ: rút tiền) hoặc đối với các giao dịch thông thường, với độ trễ phù hợp để ngăn chặn việc chạy trước các giao dịch DON. Trong trường hợp nguồn dữ liệu ký dữ liệu, người dùng có thể cũng cung cấp báo cáo cho SCa khi DON không thực hiện được. Bằng chứng gian lận, như được đề xuất cho các hình thức lạc quan khác nhau rollup (xem Phần 6.3), có hương vị tương tự và bổ sung cho các cơ chế mà chúng tôi liệt kê ở trên. Họ cũng cung cấp một hình thức giám sát và bảo vệ trên chuỗi chống lại các lỗi tiềm ẩn trong các thành phần hệ thống ngoài chuỗi. 7.4 Quản trị tối thiểu hóa niềm tin Giống như tất cả các hệ thống phi tập trung, mạng Chainlink yêu cầu cơ chế quản trị để điều chỉnh các thông số theo thời gian, ứng phó với các trường hợp khẩn cấp và hướng dẫn sự phát triển của nó. Một số cơ chế này hiện có trên MAINCHAIN và có thể tiếp tục làm như vậy ngay cả khi triển khai DONs. Một ví dụ là cơ chế thanh toán dành cho nhà cung cấp nút oracle (DON nút). DON hợp đồng giao diện người dùng trên MAINCHAIN chứa các cơ chế bổ sung, chẳng hạn như đường ray bảo vệ, có thể phải chịu sự kiểm soát định kỳ sửa đổi. Chúng tôi thấy trước hai loại cơ chế quản trị: tiến hóa và khẩn cấp. Quản trị tiến hóa: Nhiều sửa đổi đối với hệ sinh thái Chainlink được thực hiện sao cho việc thực hiện chúng không phải là vấn đề cấp bách: Cải thiện hiệu suất, cải tiến tính năng, nâng cấp bảo mật (không khẩn cấp), v.v. Khi Chainlink dần dần hướng tới nhiều người tham gia hơn nữa vào việc quản trị, chúng tôi mong đợi nhiều hoặc hầu hết những thay đổi như vậy sẽ được phê chuẩn bởi cộng đồng DON cụ thể bị ảnh hưởng bởi những thay đổi đó những thay đổi. Tạm thời và có lẽ cuối cùng là một cơ chế song song, chúng tôi tin rằng rằng khái niệm về đặc quyền tối thiểu tạm thời có thể là một phương tiện hữu ích để thực hiện quản trị tiến hóa. Rất đơn giản, ý tưởng là những thay đổi sẽ được triển khai dần dần, đảm bảo cộng đồng có cơ hội đáp ứng lại chúng. Ví dụ: di chuyển sang một nơi mới Hợp đồng MAINCHAIN có thể bị hạn chế để hợp đồng mới phải được triển khai ít nhất ba mươi ngày trước khi kích hoạt.Quản lý khẩn cấp: Các lỗ hổng có thể bị khai thác hoặc bị khai thác trong MAINCHAIN hợp đồng hoặc các hình thức mất an toàn hoặc sự sống khác có thể yêu cầu can thiệp ngay lập tức để đảm bảo chống lại các hậu quả thảm khốc. Mục đích của chúng tôi là hỗ trợ multisig cơ chế can thiệp trong đó, để đảm bảo chống lại hành vi sai trái của bất kỳ tổ chức nào, người ký sẽ được phân tán khắp các tổ chức. Đảm bảo sự sẵn có nhất quán của người ký và tiếp cận kịp thời các chuỗi lệnh thích hợp để cấp phép cho tình huống khẩn cấp những thay đổi rõ ràng sẽ yêu cầu lập kế hoạch hoạt động cẩn thận và xem xét thường xuyên. Những cái này những thách thức tương tự như những thách thức liên quan đến việc thử nghiệm khả năng ứng phó với sự cố an ninh mạng khác khả năng [134], với nhu cầu tương tự để chống lại các vấn đề thường gặp như suy giảm cảnh giác [223]. Việc quản trị DON khác với nhiều hệ thống phi tập trung trong đó mức độ tiềm tàng của sự không đồng nhất. Mỗi DON có thể có các nguồn dữ liệu, tệp thực thi, yêu cầu cấp độ dịch vụ như thời gian hoạt động và người dùng riêng biệt. Mạng Chainlink Cơ chế quản trị phải đủ linh hoạt để thích ứng với những thay đổi trong mục tiêu và thông số hoạt động. Chúng tôi đang tích cực khám phá các ý tưởng thiết kế và lên kế hoạch công bố nghiên cứu về chủ đề này trong tương lai. 7,5 Cơ sở hạ tầng khóa công khai Với sự phân cấp tiến bộ sẽ xuất hiện nhu cầu xác định rõ ràng các những người tham gia mạng, bao gồm các nút DON. Đặc biệt, Chainlink yêu cầu mạnh mẽ Cơ sở hạ tầng khóa công khai (PKI). PKI là một hệ thống liên kết các khóa với danh tính. cho Ví dụ: PKI hỗ trợ hệ thống kết nối an toàn (TLS) của Internet: Khi bạn kết nối với một trang web qua HTTPS (ví dụ: https://www.chainlinklabs.com) và một lock xuất hiện trong trình duyệt của bạn, điều đó có nghĩa là khóa chung của chủ sở hữu tên miền có được cơ quan có thẩm quyền ràng buộc với chủ sở hữu đó—cụ thể là thông qua chữ ký số trong cái gọi là chứng chỉ. Một hệ thống phân cấp của các cơ quan cấp chứng chỉ (CA), có các cơ quan cấp cao nhất được cài đặt sẵn vào các trình duyệt phổ biến, giúp đảm bảo rằng các chứng chỉ chỉ được cấp cho chủ sở hữu hợp pháp của tên miền. Chúng tôi hy vọng rằng Chainlink cuối cùng sẽ sử dụng các dịch vụ tên phi tập trung, ban đầu là Ethereum Dịch vụ tên (ENS) [22], làm nền tảng cho PKI của chúng tôi. Như Tên của nó gợi ý, ENS tương tự như DNS, Hệ thống tên miền ánh xạ (người có thể đọc được) thành địa chỉ IP trên internet. Tuy nhiên, thay vào đó, ENS ánh xạ các tên Ethereum mà con người có thể đọc được tới các địa chỉ blockchain. Bởi vì ENS hoạt động trên Ethereum blockchain, ngăn chặn việc xâm phạm khóa, giả mạo khóa của nó không gian tên về nguyên tắc cũng khó như việc giả mạo hợp đồng quản lý nó và/hoặc blockchain cơ bản. (Ngược lại, DNS trước đây dễ bị tấn công để giả mạo, chiếm quyền điều khiển và các cuộc tấn công khác.) Chúng tôi đã đăng ký data.eth với ENS trên mạng chính Ethereum và dự định thiết lập nó như một không gian tên gốc, trong đó danh tính của các dịch vụ dữ liệu oracle và Chainlink thực thể mạng khác cư trú. Các miền trong ENS có tính phân cấp, nghĩa là mỗi miền có thể chứa các tham chiếu với các tên khác dưới nó. Tên miền phụ trong ENS có thể dùng như một cách để tổ chức vàủy thác sự tin tưởng. Vai trò chính của data.eth sẽ là phục vụ như một dịch vụ thư mục trên chuỗi cho nguồn cấp dữ liệu. Theo truyền thống, các nhà phát triển và người dùng oracle thường sử dụng các nguồn ngoài chuỗi (ví dụ: các trang web như docs.chain.link hoặc data.chain.link hoặc các mạng xã hội như Twitter) để xuất bản và lấy oracle địa chỉ nguồn cấp dữ liệu (chẳng hạn như giá ETH-USD thức ăn). Với không gian tên gốc có độ tin cậy cao như data.eth, thay vào đó, có thể thiết lập ánh xạ eth-usd.data.eth tới địa chỉ smart contract của công cụ tổng hợp mạng oracle trên chuỗi cho nguồn cấp dữ liệu giá ETH-USD. Điều này sẽ tạo đường dẫn an toàn để mọi người tham khảo blockchain làm nguồn thông tin chính xác cho nguồn cấp dữ liệu của cặp giá/tên đó (ETH-USD). Do đó, việc sử dụng ENS như vậy nhận ra hai lợi ích không có sẵn trong các nguồn dữ liệu ngoài chuỗi: • Bảo mật mạnh mẽ: Mọi thay đổi, cập nhật tên miền đều được ghi lại bất biến và được bảo mật bằng mật mã, trái ngược với địa chỉ văn bản trên một trang web, không được hưởng cả hai đặc tính bảo mật này. • Tuyên truyền tự động trên chuỗi: Cập nhật địa chỉ cơ bản của smart contract của nguồn cấp dữ liệu có thể kích hoạt thông báo truyền đến thông minh phụ thuộc hợp đồng và có thể, ví dụ, tự động cập nhật các hợp đồng phụ thuộc với các địa chỉ mới.13 Tuy nhiên, các không gian tên như ENS không tự động xác thực quyền sở hữu hợp pháp của những cái tên đã được khẳng định. Vì vậy, ví dụ, nếu không gian tên bao gồm mục ⟨“Acme Oracle Node Co.”, addr⟩, sau đó người dùng nhận được sự đảm bảo rằng addr thuộc về người yêu cầu tên Acme Oracle Node Co. Nếu không có cơ chế bổ sung về quản trị vùng tên, tuy nhiên, cô ấy không có được sự đảm bảo rằng tên đó thuộc về một thực thể một cách hợp pháp được gọi là Acme Oracle Node Co. theo nghĩa có ý nghĩa trong thế giới thực. Cách tiếp cận của chúng tôi để xác thực tên, tức là đảm bảo quyền sở hữu của chúng bởi các thực thể hợp pháp, tương ứng trong thế giới thực, dựa vào một số thành phần. Hôm nay, Chainlink Phòng thí nghiệm hoạt động hiệu quả như một CA cho mạng Chainlink. Trong khi Chainlink Lab sẽ tiếp tục để xác thực tên, PKI của chúng tôi sẽ phát triển thành một mô hình phi tập trung hơn theo hai cách: • Mô hình web-of-trust: Đối tác phi tập trung của PKI phân cấp thường được gọi là web-of-trust.14 Các biến thể đã được đề xuất từ những năm 1990, ví dụ: [98] và một số nhà nghiên cứu đã quan sát thấy rằng blockchain có thể tạo điều kiện thuận lợi cho việc sử dụng ý tưởng, ví dụ: [227] bằng cách ghi lại các chứng chỉ theo cách nhất quán trên toàn cầu sổ cái. Chúng tôi đang khám phá các biến thể của mô hình này để xác thực danh tính của các thực thể trong mạng Chainlink theo cách phi tập trung hơn. Hợp đồng phụ thuộc 13A có thể tùy chọn bao gồm thời gian trì hoãn được xác định trước để cho phép kiểm tra thủ công và sự can thiệp của các quản trị viên hợp đồng phụ thuộc. 14Thuật ngữ do Phil Zimmermann đặt ra cho PGP [238].• Liên kết với dữ liệu xác thực: Ngày nay, một lượng đáng kể dữ liệu hiệu suất nút oracle được hiển thị trên chuỗi và do đó được liên kết lưu trữ với các địa chỉ nút. Dữ liệu đó có thể được xem là làm phong phú thêm danh tính trong PKI bằng cách cung cấp bằng chứng lịch sử về sự tham gia (đáng tin cậy) của nó trong mạng. Ngoài ra, công cụ để nhận dạng phi tập trung dựa trên DECO và Town Crier [160] kích hoạt các nút để tích lũy thông tin xác thực có nguồn gốc từ dữ liệu trong thế giới thực. Chỉ là một ví dụ, một nhà điều hành nút có thể đính kèm thông tin xác thực vào danh tính PKI của nó để chứng minh quyền sở hữu theo xếp hạng của Dun và Bradstreet. Những hình thức xác nhận bổ sung này có thể bổ sung staking trong việc tạo sự đảm bảo an ninh mạng. Nút oracle có danh tính trong thế giới thực đã được thiết lập có thể được xem là có cổ phần trong một hệ thống xuất phát từ danh tiếng của nó. (Xem Phần 4.3 và Phần 9.6.3.) Yêu cầu cuối cùng đối với Chainlink PKI là khởi động an toàn, tức là an toàn xuất bản tên gốc cho mạng Chainlink, hiện tại là data.eth (tương tự nối cứng các tên miền cấp cao nhất trong trình duyệt). Nói cách khác, làm thế nào để Chainlink người dùng xác định rằng data.eth thực sự là miền cấp cao nhất được liên kết với Chainlink dự án? Giải pháp cho vấn đề này cho mạng Chainlink là đa hướng và có thể liên quan đến: • Thêm bản ghi TXT [224] vào bản ghi tên miền của chúng tôi cho chain.link chỉ định data.eth làm miền gốc cho hệ sinh thái Chainlink. (Chainlink do đó ngầm tận dụng PKI cho các miền internet để xác thực miền ENS gốc của nó.) • Liên kết tới data.eth từ trang web hiện tại của Chainlink, ví dụ: từ https://docs.chain.link. (Một cách sử dụng PKI ngầm khác cho các miền internet.) • Sử dụng data.eth được biết đến qua nhiều tài liệu khác nhau, bao gồm cả báo cáo chính thức này. • Đăng công khai data.eth trên các kênh truyền thông xã hội của chúng tôi, chẳng hạn như Twitter và blog Chainlink [18]. • Đặt một số lượng lớn LINK dưới sự kiểm soát của cùng một địa chỉ người đăng ký như data.eth.
DON Considerações sobre implantação
Embora não faça parte do nosso design principal, existem várias considerações técnicas importantes na realização de DONs que merecem tratamento aqui.
8.1 Abordagem de implementação Este artigo apresenta uma visão ambiciosa da funcionalidade avançada Chainlink cujo a realização exigirá soluções para muitos desafios ao longo do caminho. Este artigo identifica alguns desafios, mas certamente surgirão desafios imprevistos. Planejamos implementar elementos desta visão de forma incremental ao longo de um período de tempo prolongado. Nossa expectativa é que DONs seja lançado inicialmente com suporte para componentes pré-construídos específicos construídos de forma colaborativa por equipes dentro do Chainlink comunidade. A intenção é que usos mais amplos de DONs, por exemplo, a capacidade de lançar executáveis arbitrários, terá suporte posteriormente. Uma razão para tal cautela é que a composição de smart contracts pode ter efeitos colaterais complexos, não intencionais e perigosos, como recentes ataques baseados em empréstimos flash por exemplo mostrado [127, 189]. Da mesma forma, a composição de smart contracts, adaptadores e executáveis exigirão extremo cuidado. Em nossa implantação inicial de DONs, planejamos incluir apenas um conjunto pré-construído de executáveis e adaptadores modelados. Isto permitirá o estudo da segurança composicional dessas funcionalidades usando métodos formais [46, 170] e outras abordagens. Isso vai também simplificar o preço: o preço da funcionalidade pode ser estabelecido por nós DON com base na funcionalidade, em vez de por meio de medição generalizada, uma abordagem adotada em, por exemplo, [156]. Esperamos também que a comunidade Chainlink participe na criação de modelos adicionais, combinando vários adaptadores e executáveis em cada vez mais serviços descentralizados úteis que podem ser administrados por centenas, senão milhares de indivíduos DONs. Além disso, esta abordagem pode ajudar a evitar o inchaço do estado, ou seja, a necessidade de DON nós para reter uma quantidade impraticável de estado na memória de trabalho. Este problema é já surgindo em blockchains sem permissão, motivando abordagens como “stateless clientes” (ver, por exemplo, [206]). Pode ser mais agudo em sistemas de maior rendimento, motivando uma abordagem na qual um DON implanta apenas executáveis otimizados para tamanho de estado. À medida que os DONs evoluem e amadurecem e incluem barreiras de proteção robustas, conforme discutido na Seção 7, mecanismos de segurança criptoeconômicos e baseados em reputação, conforme discutido na Seção 9, e outros recursos que fornecem um alto grau de garantia para usuários de DON, nós também esperamos desenvolver uma estrutura e ferramentas para facilitar o lançamento e uso mais amplo de DONs pela comunidade. Idealmente, essas ferramentas permitirão uma coleção de operadores de nós se unirem como uma rede oracle e lançarem seus próprios DONs em um ambiente sem permissão ou de autoatendimento, o que significa que podem fazê-lo unilateralmente. 8.2 Associação dinâmica DON O conjunto de nós executando um determinado DON pode mudar com o tempo. Existem duas abordagens ao gerenciamento de chaves para skL, dada a associação dinâmica em O. A primeira é atualizar as ações de skL mantidas pelos nós após mudanças na associação, enquanto mantém o pkL inalterado. Esta abordagem, explorada em [41, 161, 198], tem o mérito de não exigir que as partes confiantes atualizem o pkL.A técnica clássica de compartilhar novamente, introduzida em [122], fornece uma maneira simples e eficiente de realizar tais atualizações de compartilhamento. Permite que um segredo seja transferido entre um conjunto de nós O(1) e um segundo, possivelmente cruzando um O(2). Neste abordagem, cada nó O (1) eu executa um compartilhamento secreto (k(2), n(2)) de seu compartilhamento secreto entre nós em O(2) para n(2) = |O(2)| e limite desejado (possivelmente novo) k(2). Vários esquemas de compartilhamento de segredos verificáveis (VSS) [108] podem fornecer segurança contra um adversário que corrompe ativamente os nós, ou seja, introduz comportamento malicioso no protocolo. As técnicas em [161] visam fazer isso, reduzindo a complexidade da comunicação e fornecendo resiliência contra falhas em suposições de dureza criptográfica. Uma segunda abordagem é atualizar a chave do razão pkL. Isto tem a vantagem de avançar segurança: O comprometimento de antigos compartilhamentos de pkL (ou seja, antigos nós do comitê) não seria resultar no comprometimento da chave atual. As atualizações do pkL, no entanto, apresentam duas desvantagens: (1) Os dados criptografados sob pkL precisam ser criptografados novamente durante uma atualização de chave e (2) As principais atualizações precisam ser propagadas para terceiros confiáveis. Pretendemos explorar ambas as abordagens, bem como hibridizações das duas. 8.3 DON Responsabilidade Tal como acontece com as redes Chainlink oracle existentes, DONs incluirão mecanismos de responsabilização, ou seja, gravação, monitoramento e aplicação do comportamento correto do nó. DONs terão capacidade de dados muito mais substancial do que muitos blockchains sem permissão existentes, especialmente devido à sua capacidade de conexão com armazenamento descentralizado externo. Consequentemente, eles serão capazes de registrar detalhadamente o histórico de desempenho dos nós, permitindo mecanismos de responsabilização mais refinados. Por exemplo, computação fora da cadeia de os preços dos ativos podem envolver insumos que são descartados antes que um resultado mediano seja enviado cadeia. Em um DON, esses resultados intermediários poderiam ser registrados. O mau comportamento ou falhas de desempenho de nós individuais em um DON podem, portanto, ser remediados ou penalizados em o DON de uma forma refinada. Além disso, discutimos abordagens para construir grades de proteção na Seção 7.3 que abordam o impacto específico do contrato de falhas sistêmicas. Contudo, também é importante ter mecanismos à prova de falhas para os próprios DONs, ou seja, proteções contra falhas DON sistêmicas e potencialmente catastróficas, especificamente falhas de bifurcação/equivocação e acordo de nível de serviço (SLA), como explicamos agora. Bifurcação / equívoco: Dado um número suficiente de nós defeituosos, um DON pode bifurcar ou equívoco, produzindo dois blocos ou sequências de blocos distintos e inconsistentes em L. Entretanto, como um DON assina digitalmente o conteúdo de L, é possível aproveitar um cadeia principal MAINCHAIN para prevenir e/ou penalizar equívocos. O DON pode verificar periodicamente o estado de L em um contrato de auditoria no MAINCHAIN. Se o seu estado futuro se desviar de um estado de checkpoint, um usuário/auditor poderá apresentar prova deste mau comportamento ao contrato de auditoria. Tal prova pode ser usada para gerar um alerta ou penalizar os nós DON por meio de cortes no contrato. Esta última abordagem introduz um problema de design de incentivo semelhante ao de feeds oracle específicos e pode se basear nosso trabalho descrito na Seção 9.Aplicação de acordos de nível de serviço: Embora DONs não sejam necessariamente destinados a executados indefinidamente, é importante que eles cumpram os acordos de nível de serviço (SLAs) com seus usuários. A aplicação básica do SLA é possível em uma cadeia principal. Por exemplo, Os nós DON podem se comprometer a manter o DON até uma determinada data ou a fornecer aviso prévio de rescisão do serviço (por exemplo, aviso prévio de três meses). Um contrato em MAINCHAIN pode fornecer aplicação básica de SLA criptoeconômico. Por exemplo, o contrato SLA pode reduzir os fundos depositados em DON se os pontos de verificação forem não fornecido nos intervalos exigidos. Um usuário pode depositar fundos e desafiar o DON para provar que um ponto de verificação representa corretamente uma sequência de blocos válidos (de uma maneira análogo a, por ex. [141]). É claro que a produção de blocos não significa transação processamento, mas o contrato SLA também pode servir para fazer cumprir este último. Por exemplo, em a versão compatível com legado do FSS, na qual as transações são buscadas no mempool (consulte a Seção 5.2), as transações são eventualmente extraídas e colocadas na cadeia. Um usuário pode provar DON prevaricação fornecendo ao contrato SLA uma transação que foi extraído, mas não foi transmitido pelo DON para processamento pelo contrato alvo dentro do intervalo de tempo apropriado.15 Também é possível provar a existência e penalizar SLAs mais refinados. falhas, incluindo erros na computação usando executáveis (através, por exemplo, dos mecanismos para provar transações estaduais fora da cadeia corretas descritas na Seção 6.3) ou falha na execução executáveis baseados em iniciadores visíveis em um DON, falha na retransmissão de dados em DON para MAINCHAIN em tempo hábil e assim por diante.
DON Cân nhắc triển khai
Mặc dù không phải là một phần trong thiết kế cốt lõi của chúng tôi nhưng có một số cân nhắc kỹ thuật quan trọng trong việc nhận ra DON đáng được điều trị ở đây.
8.1 Phương pháp triển khai Bài viết này đưa ra một tầm nhìn đầy tham vọng về chức năng Chainlink nâng cao mà Việc hiện thực hóa sẽ đòi hỏi các giải pháp cho nhiều thách thức trên đường đi. Sách trắng này xác định một số thách thức, nhưng những thách thức không lường trước được chắc chắn sẽ phát sinh. Chúng tôi dự định triển khai các yếu tố của tầm nhìn này theo cách tăng dần theo thời gian. khoảng thời gian kéo dài. Kỳ vọng của chúng tôi là DON ban đầu sẽ khởi chạy với hỗ trợ cho các thành phần dựng sẵn cụ thể được các nhóm trong nhóm hợp tác xây dựng Chainlink cộng đồng. Mục đích là sử dụng DONs rộng rãi hơn, ví dụ: khả năng khởi chạy các tệp thực thi tùy ý, sẽ thấy hỗ trợ sau. Một lý do cần thận trọng như vậy là thành phần của smart contract có thể có những tác dụng phụ phức tạp, ngoài ý muốn và nguy hiểm, như các cuộc tấn công dựa trên khoản vay nhanh gần đây đã gây ra ví dụ được hiển thị [127, 189]. Tương tự, thành phần của smart contract, bộ điều hợp và các tệp thực thi sẽ yêu cầu hết sức cẩn thận. Trong quá trình triển khai DON ban đầu, chúng tôi dự định chỉ bao gồm một tập hợp các bộ điều hợp và thực thi được tạo khuôn mẫu dựng sẵn. Điều này sẽ cho phép nghiên cứu về an ninh thành phần của các chức năng này bằng cách sử dụng các phương pháp hình thức [46, 170] và các cách tiếp cận khác. Nó sẽ cũng đơn giản hóa việc định giá: Việc định giá chức năng có thể được thiết lập bởi các nút DON trên cơ sở chức năng, thay vì thông qua đo lường tổng quát, một cách tiếp cận được áp dụng trong, ví dụ: [156]. Chúng tôi cũng mong muốn cộng đồng Chainlink tham gia vào quá trình tạo các mẫu bổ sung, kết hợp nhiều bộ điều hợp và tệp thực thi khác nhau để ngày càng các dịch vụ phi tập trung hữu ích có thể được điều hành bởi hàng trăm, nếu không phải hàng nghìn cá nhân DONs. Ngoài ra, cách tiếp cận này có thể giúp ngăn ngừa sự phình to của trạng thái, tức là nhu cầu DON các nút để giữ lại một lượng trạng thái không thể thực hiện được trong bộ nhớ làm việc. Vấn đề này là đã phát sinh trong blockchains không được phép, thúc đẩy các phương pháp tiếp cận như “không quốc tịch khách hàng” (xem ví dụ: [206]). Nó có thể gay gắt hơn trong các hệ thống thông lượng cao hơn, thúc đẩy một cách tiếp cận trong đó DON chỉ triển khai các tệp thực thi được tối ưu hóa theo quy mô trạng thái. Khi DON phát triển và hoàn thiện, đồng thời bao gồm các rào chắn bảo vệ mạnh mẽ, như được thảo luận trong Phần 7, các cơ chế bảo mật dựa trên danh tiếng và kinh tế tiền điện tử như được thảo luận trong Phần 9, cũng như các tính năng khác cung cấp mức độ đảm bảo cao cho người dùng DON, chúng tôi cũng mong muốn phát triển một khuôn khổ và các công cụ để tạo điều kiện cho việc triển khai và sử dụng rộng rãi hơn DON bởi cộng đồng. Lý tưởng nhất là những công cụ này sẽ cho phép một tập hợp các toán tử nút kết hợp với nhau thành một mạng oracle và khởi chạy DON của riêng họ theo cách không cần cấp phép hoặc theo cách tự phục vụ, nghĩa là họ có thể đơn phương thực hiện việc đó. 8.2 Năng động DON Tư cách thành viên Tập hợp các nút chạy DON nhất định có thể thay đổi theo thời gian. Có hai cách tiếp cận quản lý khóa cho skL với tư cách thành viên năng động trong O. Đầu tiên là cập nhật phần chia sẻ của skL do các nút nắm giữ khi có thay đổi về tư cách thành viên, trong khi vẫn giữ pkL không thay đổi. Cách tiếp cận này, được khám phá trong [41, 161, 198], có giá trị không yêu cầu các bên liên quan cập nhật pkL.Kỹ thuật chia sẻ lại chia sẻ cổ điển, được giới thiệu trong [122], cung cấp một cách đơn giản và cách hiệu quả để hiện thực hóa các cập nhật chia sẻ đó. Nó cho phép một bí mật được chuyển giao giữa một tập hợp các nút O(1) và một giây, có thể giao nhau với một O(2). Trong này cách tiếp cận, mỗi nút O(1) tôi thực hiện (k(2), n(2)) chia sẻ bí mật việc chia sẻ bí mật của nó trên các nút trong O(2) với n(2) = |O(2)| và ngưỡng mong muốn (có thể là mới) k(2). Các sơ đồ chia sẻ bí mật có thể xác minh (VSS) khác nhau [108] có thể cung cấp bảo mật chống lại kẻ thù chủ động làm hỏng các nút, tức là đưa hành vi nguy hiểm vào giao thức. Các kỹ thuật trong [161] nhằm mục đích thực hiện điều đó đồng thời giảm độ phức tạp trong giao tiếp và cung cấp khả năng phục hồi chống lại các thất bại trong các giả định về độ cứng của mật mã. Cách tiếp cận thứ hai là cập nhật khóa sổ cái pkL. Điều này có lợi ích về phía trước bảo mật: Việc thỏa hiệp các cổ phiếu cũ của pkL (tức là các nút ủy ban cũ) sẽ không dẫn đến sự thỏa hiệp của khóa hiện tại. Tuy nhiên, các bản cập nhật lên pkL có hai nhược điểm: (1) Dữ liệu được mã hóa theo pkL cần được mã hóa lại trong quá trình làm mới khóa và (2) Các cập nhật quan trọng cần được phổ biến tới các bên tin cậy. Chúng tôi dự định khám phá cả hai cách tiếp cận cũng như sự kết hợp của cả hai. 8.3 DON Trách nhiệm Giống như các mạng Chainlink oracle hiện có, DON sẽ bao gồm các cơ chế về trách nhiệm giải trình, tức là ghi lại, giám sát và thực thi hành vi chính xác của nút. DONs sẽ có dung lượng dữ liệu đáng kể hơn nhiều so với nhiều blockchain không được phép hiện có, đặc biệt là khả năng kết nối với bộ lưu trữ phi tập trung bên ngoài. Do đó, họ sẽ có thể ghi lại lịch sử hiệu suất của các nút một cách chi tiết, cho phép cơ chế trách nhiệm giải trình chi tiết hơn. Ví dụ: tính toán ngoài chuỗi của giá tài sản có thể liên quan đến các yếu tố đầu vào bị loại bỏ trước khi kết quả trung bình được gửi đi chuỗi. Trong DON, những kết quả trung gian này có thể được ghi lại. Do đó, hành vi sai trái hoặc mất hiệu suất của các nút riêng lẻ trong DON có thể được khắc phục hoặc bị phạt đối với DON một cách chi tiết. Chúng tôi cũng đã thảo luận thêm về các phương pháp xây dựng lan can bảo vệ trong Phần 7.3 đề cập đến tác động cụ thể theo hợp đồng của các lỗi hệ thống. Tuy nhiên, điều quan trọng là phải có cơ chế an toàn cho chính DON, tức là, các biện pháp bảo vệ chống lại các lỗi hệ thống, có khả năng gây thảm họa DON, cụ thể là các lỗi phân nhánh/không rõ ràng và thỏa thuận cấp độ dịch vụ (SLA), như chúng tôi giải thích hiện nay. Phân nhánh/không rõ ràng: Với đủ nhiều nút bị lỗi, DON có thể phân nhánh hoặc lập lờ, tạo ra hai khối hoặc chuỗi khối riêng biệt, không nhất quán trong L. Tuy nhiên, vì DON ký điện tử vào nội dung của L nên có thể tận dụng chuỗi chính MAINCHAIN để ngăn chặn và/hoặc trừng phạt hành vi không rõ ràng. DON có thể kiểm tra định kỳ trạng thái điểm từ L trong hợp đồng kiểm tra trên MAINCHAIN. Nếu trạng thái trong tương lai của nó khác với trạng thái được kiểm tra, người dùng/kiểm toán viên có thể đưa ra bằng chứng về hành vi sai trái này đối với hợp đồng kiểm toán. Bằng chứng như vậy có thể được sử dụng để tạo ra một cảnh báo hoặc phạt DON nút bằng cách gạch chéo trong hợp đồng. Cách tiếp cận sau này giới thiệu một vấn đề thiết kế khuyến khích tương tự như vấn đề đối với các nguồn cấp dữ liệu oracle cụ thể và có thể xây dựng dựa trên công việc của chúng tôi được nêu trong Phần 9.Thực thi các thỏa thuận cấp độ dịch vụ: Mặc dù DON không nhất thiết nhằm mục đích chạy vô thời hạn, điều quan trọng là chúng phải tuân thủ các thỏa thuận cấp độ dịch vụ (SLA) với người dùng của họ. Có thể thực thi SLA cơ bản trên chuỗi chính. Ví dụ, Các nút DON có thể cam kết duy trì DON cho đến một ngày nhất định hoặc cung cấp thông báo trước về việc chấm dứt dịch vụ (ví dụ: thông báo trước ba tháng). Một hợp đồng trên MAINCHAIN có thể cung cấp việc thực thi SLA kinh tế tiền điện tử cơ bản. Ví dụ: hợp đồng SLA có thể cắt giảm số tiền ký gửi DON nếu điểm kiểm tra không được cung cấp ở những khoảng thời gian cần thiết. Người dùng có thể gửi tiền và thách thức DON để chứng minh rằng điểm kiểm tra thể hiện chính xác một chuỗi các khối hợp lệ (theo cách tương tự như, ví dụ: [141]). Tất nhiên, sản xuất khối không đồng nghĩa với giao dịch. xử lý, nhưng hợp đồng SLA cũng có thể dùng để thực thi quy trình sau. Ví dụ, trong phiên bản tương thích cũ của FSS trong đó các giao dịch được tìm nạp từ mempool (xem Phần 5.2), các giao dịch cuối cùng sẽ được khai thác và đặt trên chuỗi. Một người dùng có thể chứng minh DON hành vi sai trái bằng cách cung cấp cho hợp đồng SLA một giao dịch đã được khai thác nhưng không được DON truyền đi để hợp đồng mục tiêu xử lý trong khoảng thời gian thích hợp.15 Cũng có thể chứng minh sự tồn tại và xử phạt SLA chi tiết hơn các lỗi, bao gồm các lỗi trong tính toán sử dụng các tệp thực thi (ví dụ: thông qua các cơ chế để chứng minh các giao dịch trạng thái ngoài chuỗi chính xác được nêu trong Phần 6.3) hoặc không chạy được các tệp thực thi dựa trên các trình khởi tạo hiển thị trên DON, không thể chuyển tiếp dữ liệu trên DON tới MAINCHAIN một cách kịp thời, v.v.
Economia e Criptoeconomia
Para que a rede Chainlink alcance uma segurança forte dentro de um modelo de confiança descentralizado, é essencial que os nós exibam coletivamente um comportamento correto, o que significa que eles aderem na maioria das vezes exatamente para protocolos DON. Nesta seção, discutimos abordagens para ajudar a impor tal comportamento por meio de incentivos econômicos, também conhecidos como criptoeconômicos incentivos. Esses incentivos se enquadram em duas categorias: explícitos e implícitos, realizados respectivamente por meio de staking e oportunidade de taxa futura (FFO). Estacamento: O staking em Chainlink, como em outros sistemas blockchain, envolve participantes da rede, ou seja, nós oracle, depositando fundos bloqueados na forma de LINK tokens. Estes os fundos, que também chamamos de participação ou participação explícita, são um incentivo explícito. Eles estão sujeitos a confisco em caso de falha ou prevaricação do nó. No contexto blockchain, esse procedimento costuma ser chamado de corte. O piqueteamento por nós oracle em Chainlink, no entanto, difere fundamentalmente de staking por validators em blockchains sem permissão. Os validadores podem se comportar mal ao ordenar transações de forma equivocada ou adversária. O protocolo de consenso subjacente em um 15Como os usuários podem substituir transações no mempool, é necessário cuidado para garantir uma correspondência correta entre as transações extraídas e as enviadas por DON.blockchain sem permissão, entretanto, usa regras de validação de bloco rígidas e rápidas e primitivas criptográficas para evitar que validators gerem blocos inválidos. Em contraste, as proteções programáticas não podem impedir que uma rede oracle trapaceira gere relatórios inválidos. O motivo é uma diferença fundamental entre os dois tipos de sistema: a validação da transação em blockchains é uma propriedade de consistência interna, enquanto a correção dos relatórios oracle em um blockchain é uma propriedade de dados externos, ou seja, dados fora da cadeia. Projetamos um mecanismo staking preliminar para a rede Chainlink baseada em um protocolo interativo entre nós oracle que podem fazer uso de dados externos. Isto mecanismo cria incentivos financeiros para o comportamento correto usando recompensas explícitas e penalidades (corte). Como o mecanismo é econômico, ele foi projetado para evitar que os nós corrupção por um adversário que usa recursos financeiros para corromper nós por meio de suborno. (Tal adversário é muito geral e se estende, por exemplo, a nós que cooperam para extrair valor de seu mau comportamento coletivo.) O mecanismo Chainlink staking que projetamos tem alguns recursos poderosos e inovadores características.16 A principal característica é o impacto superlinear staking (especificamente, quadrático). Um adversário deve ter recursos consideravelmente superiores aos fundos depositados pelos nós em para subverter o mecanismo. Nosso mecanismo staking fornece adicionalmente proteção contra um adversário mais forte do que considerado anteriormente em sistemas semelhantes, ou seja, um adversário que pode criar subornos condicionados ao comportamento futuro dos nós. Além disso, discutimos como ferramentas Chainlink como DECO podem ajudar a fortalecer nosso staking mecanismo, facilitando a adjudicação correta no caso de comportamento defeituoso do nó. Oportunidade de taxa futura (FFO): blockchains sem permissão - tanto do PoW e variedade de PoS – hoje dependem criticamente do que chamamos de incentivos implícitos. Estes são incentivos económicos para o comportamento honesto que não derivam de recompensas explícitas, mas da própria participação na plataforma. Por exemplo, a comunidade mineira Bitcoin é incentivada a não montar um ataque de 51% pelo risco de minar a confiança em Bitcoin, deprimindo seu valor e, conseqüentemente, corroendo o valor de seu coletivo investimentos de capital em infraestrutura de mineração [150]. A rede Chainlink se beneficia de um incentivo implícito semelhante ao qual nos referimos como oportunidade de taxa futura (FFO). Nós Oracle com fortes históricos de desempenho ou reputações atraem taxas dos usuários. O mau comportamento de um nó oracle compromete o futuro pagamentos de taxas e, portanto, penaliza o nó com um custo de oportunidade em termos de potencial receitas obtidas através da participação na rede. Por analogia com a aposta explícita, O FFO pode ser visto como uma forma de participação implícita, um incentivo para um comportamento honesto que deriva do benefício compartilhado de manter a confiança na plataforma na qual o negócio dos operadores de nós depende, ou seja, do desempenho positivo e da reputação do rede. Este incentivo é inerente, mas não explicitamente expresso, na rede Chainlink protocolos. Em Bitcoin, manutenção do valor das operações de mineração conforme mencionado acima 16O mecanismo staking que descrevemos aqui atualmente visa apenas forçar a entrega de relatórios corretos por redes oracle. Esperamos em trabalhos futuros estendê-lo para garantir a execução correta dos muitos outras funcionalidades DONs fornecerão.pode igualmente ser visto como uma forma de aposta implícita. Ressaltamos que o FFO já existe em Chainlink e ajuda a proteger a rede hoje. Nossa principal contribuição no desenvolvimento futuro de Chainlink será uma abordagem baseada em princípios e empiricamente orientada para avaliar incentivos implícitos, como o FFO, por meio de o que chamamos de Quadro de Incentivos Implícitos (IIF). Para estimar quantidades como o oportunidade futura de taxas dos nós, o IIF aproveitará continuamente o abrangente dados de desempenho e pagamento acumulados pela rede Chainlink. Tais estimativas permitirá a parametrização baseada em IIF de sistemas staking que reflete os incentivos dos nós com maior precisão do que os modelos heurísticos e/ou estáticos atuais. Para resumir, então, os dois principais incentivos econômicos para o nó oracle correto o comportamento na rede Chainlink em desenvolvimento será: • Staking (participação depositada) ó Incentivo explícito • Oportunidade de taxas futuras (FFO) ó Incentivo implícito Essas duas formas de incentivo são complementares. Os nós Oracle podem simultaneamente participe do protocolo Chainlink staking, desfrute de um fluxo de receita contínuo de usuários e se beneficiar coletivamente de seu bom comportamento contínuo. Assim, ambos os incentivos contribuir para a segurança criptoeconômica fornecida por uma rede oracle. Além disso, os dois incentivos podem reforçar-se e/ou ser negociados entre si. Por exemplo, um novo operador oracle sem histórico de desempenho e fluxo de receita pode apostar um grande quantidade de LINK como garantia de comportamento honesto, atraindo assim usuários e taxas. Por outro lado, um operador oracle estabelecido com um tempo longo e relativamente livre de falhas histórico de desempenho pode cobrar taxas substanciais de uma grande base de usuários e, portanto, depender mais fortemente no seu FFO como forma de incentivo implícito. Em geral, a abordagem que consideramos aqui visa uma determinada quantidade de oracle-rede recurso para criar os maiores incentivos econômicos possíveis em Chainlink para racional agentes – isto é, nós que maximizam sua utilidade financeira – se comportem honestamente. Coloque outro Dessa forma, o objetivo é maximizar os recursos financeiros necessários para um adversário atacar a rede com sucesso. Ao formular um protocolo staking com matematicamente bem segurança econômica definida e também usando o IFI, pretendemos medir a força de Os incentivos de Chainlink com a maior precisão possível. Os criadores de contratos confiáveis irão então ser capaz de determinar com forte confiança se uma rede oracle atende seus níveis exigidos de segurança criptoeconômica. O ciclo virtuoso da segurança económica: Os incentivos que discutimos nesta seção, staking e FFO, têm um impacto além do reforço da segurança de DONs. Eles prometem induzir o que chamamos de ciclo virtuoso de segurança económica. O impacto superlinear staking (e outras economias de escala) resulta em menor custo à medida que a segurança de um DON aumenta. O custo mais baixo atrai usuários adicionais para DON,aumentando o pagamento de taxas. Um aumento no pagamento de taxas continua a incentivar o crescimento do rede, que perpetua o ciclo virtuoso. Acreditamos que o ciclo virtuoso da segurança económica é apenas um exemplo de uma economia de escala e efeito de rede, entre outros que discutiremos mais adiante nesta seção. Organização da seção: O piqueteamento apresenta desafios técnicos e conceituais notáveis para que projetamos um mecanismo com recursos novos. O piqueteamento será, portanto, nosso foco principal nesta seção. Fornecemos uma visão geral da abordagem staking que apresentamos neste artigo na Seção 9.1, seguida por uma discussão detalhada nas Seções 9.2 a 9.5. Apresentamos o IFF na Seção 9.6. Apresentamos uma visão resumida dos incentivos da rede Chainlink na Seção 9.7. Na Secção 9.8, discutimos o ciclo virtuoso de segurança económica que a nossa abordagem staking proposta pode trazer para as redes oracle. Finalmente, descrevemos brevemente outros potenciais efeitos que impulsionam o crescimento da rede Chainlink na Seção 9.9. 9.1 Visão geral do piqueteamento O design do mecanismo staking que apresentamos aqui, conforme observado acima, envolve um protocolo interativo entre nós oracle permitindo a resolução de inconsistências no reporte de dados externos. O piqueteamento visa garantir um comportamento honesto de nós oracle racionais. Podemos, portanto, modelar um adversário atacando um protocolo staking como um subornador: A estratégia do adversário é corromper nós oracle usando incentivos financeiros. O adversário pode obter recursos financeiros prospectivamente através da manipulação bem-sucedida com um relatório oracle, por exemplo, oferta para compartilhar o lucro resultante com nós corrompidos. Em nosso projeto de mecanismo staking visamos simultaneamente dois objetivos ambiciosos: 1. Resistir a um adversário poderoso: O mecanismo staking foi projetado para proteger oracle redes contra uma ampla classe de adversários que são capazes de ações complexas, estratégias de suborno condicional, incluindo suborno prospectivo, que oferece subornos para oracles cujas identidades são determinadas após o fato (por exemplo, oferece subornos a oracles selecionados aleatoriamente para alerta de alta prioridade). Enquanto outros designs oracle consideraram um conjunto restrito de ataques sem todas as capacidades de um cenário realista adversário, até onde sabemos, o mecanismo adversário que introduzimos aqui é o primeiro a abordar explicitamente um amplo conjunto de estratégias de suborno e mostrar resistência neste modelo. Nosso modelo assume que os nós além do invasor estão economicamente racional (em oposição a honesto), e assumimos a existência de um fonte de verdade que é proibitivamente cara para uso típico, mas está disponível em caso de desacordo (discutido mais abaixo). 2. Alcançando impacto superlinear staking: Nosso objetivo é garantir que uma rede oracle composta por agentes racionais reporte sinceramente, mesmo na presença de um invasor com um orçamento superlinearna participação total depositada por toda a rede. Em sistemas staking existentes, se cada um dos n nós aposta $d, um invasor pode emitir um suborno confiável que solicita que os nós se comportem desonestamente em troca de um pagamento de um pouco mais do que \(d to each node, using a total budget of about \)dn. Isto já é um padrão alto, pois o invasor precisa ter um orçamento líquido da ordem dos depósitos combinados de todos os participantes da rede. O nosso objectivo é um grau ainda mais forte de segurança económica do que este obstáculo já substancial. Nosso objetivo é projetar o primeiro sistema staking que pode alcançar segurança para um invasor geral com um orçamento superlinear em n. Embora as considerações práticas possam ter um impacto menor, como discutiremos abaixo, nosso projeto preliminar atinge um requisito orçamentário adversário maior do que $dn2/2, ou seja, escalando quadrático em n, tornando o suborno amplamente impraticável, mesmo quando os nós apostam apenas quantias moderadas. Alcançar estes dois objectivos requer uma combinação inovadora de concepção de incentivos e criptografia. Ideias principais: Nossa abordagem staking depende de uma ideia que chamamos de prioridade de vigilância. Um relatório gerado por uma rede Chainlink oracle e enviado para um contrato confiável (por exemplo, no preço de um ativo) é agregado a partir de relatórios individuais contribuídos pelos nós participantes (por exemplo, tomando a mediana). Normalmente, um acordo de nível de serviço (SLA) especifica limites aceitáveis de desvio para relatórios, ou seja, até que ponto o relatório de um nó pode desviar-se do relatório agregado e até que ponto o agregado deve ser autorizado a desviar do valor verdadeiro para ser considerado correto. Em nosso sistema staking, para uma determinada rodada de relatórios, cada nó oracle pode atuar como um watchdog para emitir um alerta se acreditar que o relatório agregado está incorreto. Em cada rodada de relatórios, cada nó oracle recebe uma prioridade pública que determina o ordem em que seu alerta (se houver) será processado. Nosso mecanismo visa recompensar concentração, o que significa que o cão de guarda de maior prioridade para emitir um alerta ganha o recompensa total obtida pelo confisco dos depósitos de nós defeituosos. Nossos projetos de sistema staking envolvem dois níveis: o primeiro, nível padrão, e o segundo, nível de proteção. A primeira camada é a própria rede oracle, um conjunto de n nós. (Para simplificar, assumimos que n é ímpar.) Se a maioria dos nós relatar valores incorretos, um watchdog no O primeiro nível é fortemente incentivado a emitir um alerta. Se um alerta for gerado, o relatório A decisão da rede é então escalada para um segundo nível – um sistema de alto custo e máxima confiabilidade que pode ser especificado pelo usuário no acordo de nível de serviço da rede. Este poderia ser um sistema que, por exemplo, é composto apenas por nós com forte pontuações de confiabilidade histórica, ou uma que tenha uma ordem de magnitude maior que oracles do que o primeiro nível. Além disso, conforme discutido na Seção 9.4.3, DECO ou Town Crier podem servir como ferramentas poderosas para ajudar a garantir uma adjudicação eficiente e conclusiva no segundo nível. Para simplificar, assumimos assim que este sistema de segundo nível chega a um relatório correto valor. Embora possa parecer atraente confiar apenas no segundo nível para gerar todos os relatórios, o benefício do nosso design é que ele atinge consistentemente as propriedades de segurança dosistema de segundo nível, pagando apenas o custo operacional, no caso típico, do sistema de primeiro nível. A prioridade do watchdog resulta em impacto superlinear staking da seguinte maneira: se o rede oracle de primeira camada gera um resultado incorreto e vários nós de vigilância alerta, o mecanismo de incentivo staking recompensa o cão de guarda de maior prioridade com mais de $dn/2 retirados dos depósitos da (maioria) nós com comportamento inadequado. O a recompensa total é, portanto, concentrada nas mãos deste único cão de guarda, que, portanto, determina o mínimo que um adversário deve prometer a um cão de guarda em potencial para incentivá-lo a não alertar. Como nosso mecanismo garante que todo oracle receba o chance de agir como cão de guarda se os cães de guarda de maior prioridade aceitarem seus subornos (e optou por não alertar), o adversário deve, portanto, oferecer um suborno de mais de $dn/2 para cada nó para evitar que qualquer alerta seja gerado. Como existem n nós, o o orçamento necessário do adversário para um suborno bem-sucedido equivale a mais de $dn2/2, o que é quadrático no número n de nós na rede. 9.2 Plano de fundo Nossa abordagem para staking baseia-se em pesquisas nas áreas de teoria dos jogos e mecanismos design (MD) (para referência de livro, consulte [177]). A teoria dos jogos é matematicamente estudo formalizado de interação estratégica. Neste contexto, um jogo é um modelo de tal uma interação, tipicamente no mundo real, que codifica conjuntos de ações disponíveis para participantes do jogo, conhecidos como jogadores. Um jogo também especifica os pagamentos obtidos pelos jogadores individuais - recompensas que dependem das ações escolhidas pelo jogador e do ações dos outros jogadores. Talvez o exemplo mais conhecido de jogo estudado em game teoria é o Dilema dos Prisioneiros [178]. Os teóricos dos jogos geralmente pretendem compreender o equilíbrio ou equilíbrios (se houver) representados em um determinado jogo. Um equilíbrio é um conjunto de estratégias (uma para cada jogador) tal que nenhum jogador possa obter um valor mais alto recompensa ao desviar-se unilateralmente da sua estratégia. O desenho de mecanismos, por sua vez, é a ciência de desenhar incentivos de modo que o O equilíbrio de uma interação (e seu jogo associado) tem alguma propriedade desejável. MD pode ser visto como o inverso da teoria dos jogos: a questão canônica no jogo a teoria é: “dados os incentivos e o modelo, qual será o equilíbrio?” Em MD, o a questão é, em vez disso, “que incentivos resultarão num jogo com um equilíbrio desejável?” Um objetivo típico de um projetista de mecanismo é criar um mecanismo “compatível com incentivos”, o que significa que os participantes do mecanismo (por exemplo, um leilão ou outra informação sistema de elicitação [228]) são incentivados a relatar a verdade sobre algum assunto (por exemplo, como quanto eles valorizam um determinado item). O leilão de Vickrey (segundo preço) é talvez o mecanismo compatível com incentivos mais conhecido, no qual os participantes apresentam propostas lacradas para um item e o licitante com lance mais alto ganha o item, mas paga o segundo preço mais alto [214]. A criptoeconomia é uma forma de MD de domínio específico que aproveita a criptografia técnicas para criar equilíbrios desejáveis dentro de sistemas descentralizados. O suborno e o conluio criam desafios significativos em todo o campo da DM. Quase todos os mecanismos quebram na presença de conluio, definido como contratos paralelos entreentre as partes participantes de um mecanismo [125, 130]. O suborno, em que uma parte externa introduz novos incentivos no jogo, apresenta um problema ainda mais difícil do que o conluio; o conluio pode ser visto como um caso especial de suborno entre jogadores participantes. Os sistemas Blockchain podem muitas vezes ser conceituados como jogos com recompensas monetárias (baseadas em criptomoedas). Um exemplo simples é a mineração Proof-of-Work: os mineradores têm um espaço de ação no qual eles podem escolher a hashtaxa com a qual extrair blocos. O retorno da mineração é uma recompensa negativa garantida (custo de eletricidade e equipamentos) mais um fator estocástico. recompensa positiva (subsídio de mineração) que depende do número de outros mineradores ativos [106, 172] e taxas de transação. oracles crowdsourced como SchellingCoin [68] são outro exemplo: o espaço de ação é o conjunto de relatórios possíveis que um oracle pode enviar, enquanto a recompensa é a recompensa especificada pelo mecanismo oracle, por exemplo, o pagamento pode depender sobre quão próximo o relatório de um oracle está da mediana dos outros relatórios [26, 68, 119, 185]. Os jogos Blockchain oferecem oportunidades propícias para ataques de conluio e suborno; na verdade, smart contracts podem até facilitar tais ataques [96, 165]. Talvez o mais conhecido O ataque de suborno a oracles de crowdsourcing é o ataque p-plus-epsilon [67]. Este ataque surge no contexto de um mecanismo semelhante ao SchellingCoin, no qual os jogadores enviam relatórios com valor booleano (ou seja, falsos ou verdadeiros) e são recompensados com p se concordarem com o submissão da maioria. Em um ataque p-mais-épsilon, o invasor promete, com credibilidade, por exemplo, pague aos usuários $p + ϵ por votarem falso se e somente se a submissão da maioria for verdadeira. O resultado é um equilíbrio, em que todos os intervenientes são incentivados a denunciar falsas independentemente do que os outros jogadores façam; conseqüentemente, o subornador pode induzir os nós através do suborno prometido para reportar informações falsas sem realmente pagar o suborno (!). A exploração de outras estratégias de suborno no contexto de oracles, no entanto - e particularmente de oracles que não são de crowdsourcing - tem sido limitada a adversários bastante fracos. modelos. Por exemplo, no cenário PoW, os pesquisadores estudaram subornos, ou seja, subornos pagos apenas se uma mensagem alvo for censurada com sucesso e não aparecem em um bloco, independentemente da ação individual de um minerador [96, 165]. No caso de oracles, no entanto, além do ataque p-plus-epsilon, estamos cientes apenas do trabalho em um modelo estritamente limitado de suborno, no qual um subornador envia um suborno condicionado a um ação individual do jogador, não no resultado resultante. Aqui esboçamos projetos de mecanismos de elicitação de informações que permanecem incentivos compatível mesmo em um modelo adversário forte, conforme descrito na próxima subseção. 9.3 Suposições de modelagem Nesta subseção, explicamos como modelamos o comportamento e as capacidades dos jogadores em nosso sistema, especificamente nós oracle de primeira camada, nós de segunda camada (julgamento) camada e adversários.9.3.1 Modelo de incentivo de primeiro nível: atores racionais Muitos sistemas blockchain dependem de segurança na suposição de um certo número de informações honestas nós participantes. Os nós são definidos para serem honestos se seguirem o protocolo mesmo quando não for do seu interesse financeiro fazê-lo. Sistemas de prova de trabalho normalmente exigem que a maior parte do poder de hash seja honesto, os sistemas de prova de participação normalmente exigem que 2/3 ou mais de todas as participações participantes sejam honestos, e até mesmo sistemas de camada 2 como Arbitrum [141] exige pelo menos um único participante honesto. Na modelagem do nosso mecanismo staking, fazemos uma suposição muito mais fraca. (Para ser suposições claras e mais fracas significam propriedades de segurança mais fortes e são, portanto, preferíveis.) Assumimos que o adversário corrompeu, ou seja, controla, alguns (minoria) fração de nós oracle de primeira camada. Modelamos os nós restantes não como agentes honestos, mas como maximizadores racionais da utilidade esperada. Esses nós agem inteiramente de acordo com incentivos financeiros de interesse próprio, escolhendo ações que resultem em um resultado financeiro esperado. ganho. Por exemplo, se for oferecido a um nó um suborno maior do que a recompensa resultante de comportamento honesto, aceitará o suborno. Nota sobre nós adversários: De acordo com a modelagem de confiança comum para sistemas descentralizados, assumimos que todos os nós são racionais, ou seja, buscando maximizar receita líquida, em vez de ser controlada por um adversário malicioso. Nossas reivindicações, no entanto - impacto staking especificamente superlinear ou quadrático - mantido assintoticamente fornecido que o conjunto de nós controlados adversamente é no máximo (1/2 −c)n, para alguns pontos positivos constante c. 9.3.2 Modelo de adjudicação de segundo nível: correção por suposição Lembre-se de que um recurso crítico do nosso mecanismo staking que ajuda a alcançar a segurança contra nós racionais é seu sistema de segunda camada. Em nosso mecanismo staking proposto, qualquer oracle pode gerar um alerta indicando que ele acredita que a saída do mecanismo está incorreta. Um alerta resulta em uma alta confiança sistema de segundo nível ativando e relatando o resultado correto. Assim, uma modelagem chave O requisito para a nossa abordagem é a adjudicação correta, ou seja, o relato correto por parte do sistema de segundo nível. Nosso modelo staking assume um sistema de segundo nível que atua como uma fonte de verdade incorruptível e extremamente confiável. É provável que tal sistema seja caro e lento e, portanto, inadequado para uso no caso típico. No caso de equilíbrio, entretanto, ou seja, quando Se o sistema de primeira camada funcionar corretamente, o sistema de segunda camada não será invocado. Em vez disso, a sua existência aumenta a segurança de todo o sistema oracle, fornecendo um proteção de alta segurança. O uso de uma camada de julgamento de alta confiança e alto custo assemelha-se ao processo de apelação no coração da maioria dos sistemas judiciais. Também já é comum no design de oracle sistemas, por exemplo, [119, 185]. Discutimos brevemente abordagens para a realização do segundo nível em nosso mecanismo na Seção 9.4.3.Nosso protocolo staking usa a suposta adjudicação correta do sistema de segundo nível como uma ameaça credível para impor relatórios corretos por nós oracle. O protocolo confisca parte ou toda a participação dos nós oracle que geram relatórios identificados por o sistema de segundo nível como incorreto. Os nós Oracle são, portanto, impedidos de se comportarem mal pela penalidade financeira resultante. Esta abordagem é semelhante em sabor àquela usada em rollups otimistas, por exemplo, [141, 10]. 9.3.3 Modelo Adversário Nosso mecanismo staking foi projetado para obter informações verdadeiras e, ao mesmo tempo, obter segurança contra uma classe ampla e bem definida de adversários. Melhora os trabalhos anteriores, que omitem um modelo adversário explícito ou se concentram em subclasses estreitas de adversários, por exemplo, o adversário p-mais-épsilon discutido acima. Nosso objetivo é projetar um staking mecanismo com segurança formalmente comprovada contra todo o espectro de adversários prováveis a ser encontrado na prática. Modelamos nosso adversário como tendo um orçamento fixo (parametrizável), denotado por $ B. O adversário pode se comunicar individual e confidencialmente com cada oracle em rede e pode oferecer secretamente a qualquer indivíduo oracle pagamento garantido de suborno dependente de resultados publicamente observáveis do mecanismo. Resultados determinantes subornos podem incluir, por exemplo, o valor relatado pelo oracle, quaisquer mensagens públicas enviado por qualquer oracle ao mecanismo (por exemplo, um alerta), os valores relatados por outros oracles e o valor gerado pelo mecanismo. Nenhum mecanismo pode proteger contra um invasor com capacidades ilimitadas. Portanto, consideramos alguns comportamentos irrealistas ou fora do escopo. Presumimos que nosso atacante não pode quebrar primitivas criptográficas padrão e, como observado acima, tem um valor fixo (se potencialmente grande) orçamento $B. Assumimos ainda que o adversário não controla comunicação na rede oracle, especificamente que não pode atrasar substancialmente tráfego entre nós de primeira e/ou segunda camada. (Se o adversário pode observar tal comunicação depende do mecanismo específico, conforme explicamos abaixo.) Informalmente, porém, como observado acima, presumimos que o adversário pode: (1) Corromper uma fração de nós oracle ((1/2 −c)-fração para alguma constante c), ou seja, controle total e (2) oferecer subornos a quaisquer nós desejados, com pagamento contingente garantido nos resultados especificados pelo adversário, conforme descrito acima. Embora não ofereçamos um modelo formal ou uma taxonomia completa da situação completa do adversário, gama de capacidades de suborno neste whitepaper, aqui estão exemplos dos tipos de subornos abrangidos pelo nosso modelo. Para simplificar, assumimos que oracles emitem booleanos relatórios cujo valor correto (w.l.o.g.) é verdadeiro, e que um resultado final é calculado como um agregado desses relatórios a ser usado por um consumidor smart contract. O subornado O objetivo é que o resultado final seja incorreto, ou seja, falso. • Subornador incondicional: O suborno oferece suborno $b a qualquer oracle que reporte algo falso. • Subornador probabilístico: o subornador oferece suborno $b com alguma probabilidade q para qualquer oracle que reporta falso.• suborno condicionado a resultado falso: o subornador oferece suborno $b a qualquer oracle que relate falso, desde que o resultado final seja falso. • Subornador sem alerta: o subornador oferece suborno em $b a qualquer oracle que denuncie false enquanto nenhum alerta for gerado. • Subornador p-plus-epsilon: O suborno oferece suborno $b a qualquer oracle que relate falso como desde que a maioria dos oracles não relatem falsos. • Subornador em potencial: o suborno oferece suborno $b antecipadamente para qualquer oracle selecionado para um papel aleatório e relatórios falsos. Em nosso protocolo staking proposto, todos nós atuam como potenciais vigilantes, e somos capazes de mostrar que a randomização das prioridades de vigilância não se presta a possíveis subornos. Muitos sistemas de prova de trabalho, proof-of-stake e sistemas autorizados são suscetíveis a possíveis suborno, no entanto, o que mostra a importância de considerá-lo em nosso contexto antagônico modelo e garantindo que nossos protocolos staking sejam resilientes a ele. Consulte o Apêndice E para mais detalhes. 9.3.4 Quanto de segurança criptoeconômica é suficiente? Um adversário racional só gastará dinheiro para atacar um sistema se puder obter lucro maior do que as suas despesas. Assim, para nosso modelo adversário e proposto staking mecanismo, $B pode ser visto como uma medida do lucro potencial que um adversário é capaz extrair de smart contracts confiáveis corrompendo uma rede oracle e causando-a para gerar um relatório ou conjunto de relatórios incorreto. Ao decidir se uma rede oracle oferece um grau suficiente de segurança criptoeconômica para seus propósitos, um usuário deve avaliar a rede a partir desta perspectiva. Para adversários plausíveis em ambientes práticos, esperamos que $B seja geralmente substancialmente menor do que os ativos totais em smart contracts confiáveis. Na maioria dos casos, é é inviável para um adversário extrair esses ativos na sua totalidade. 9.4 Mecanismo de piquetagem: esboço Apresentamos aqui as ideias principais e a estrutura geral do mecanismo staking que estão considerando atualmente. Para facilitar a apresentação, descrevemos um método simples, mas lento protocolo (multi-round) nesta subseção. Notamos, no entanto, que este esquema é bastante prático. Dadas as garantias económicas proporcionadas pelo mecanismo, ou seja, a penalização e o consequente incentivo contra nós defeituosos, muitos utilizadores podem estar dispostos a aceitar relatórios com otimismo. Em outras palavras, tais usuários podem aceitar relatórios antes de possível julgamento pela segunda camada. Os usuários que não desejam aceitar relatórios de forma otimista podem optar por esperar até que o protocolo a execução termina, ou seja, até que ocorra qualquer escalonamento potencial para o segundo nível. Isto, no entanto, pode retardar substancialmente o tempo de confirmação dos relatórios. Portanto, brevementeFigura 15: Esquema do esquema staking com alerta. Neste exemplo, 1⃝a maioria de nós são corrompidos/subornados e emitem um valor incorreto ˜r, em vez do correto valor do relatório r. O nó watchdog 2⃝envia um alerta ao comitê de segundo nível, que 3⃝determina e emite o valor correto do relatório r, resultando em nós corrompidos perdendo seus depósitos - cada $d para o nó watchdog 4⃝. delinear algumas otimizações que resultam em uma rodada mais rápida (rodada única), embora um pouco mais projeto complexo na Seção 9.5. Lembre-se de que a primeira camada do nosso mecanismo staking consiste no oracle básico própria rede. A estrutura principal do nosso mecanismo, conforme descrito acima, é que em cada rodada, cada nó pode atuar como um “watchdog” com alguma prioridade e, portanto, tem a capacidade de emitir um alerta se o mecanismo chegar a uma saída incorreta ˜r, em vez de uma saída correta um R. Este alerta causa uma resolução de segundo nível, que presumimos que chega a um nível correto relatório. Nós com relatórios incorretos são punidos, no sentido de que suas apostas são cortado e concedido a cães de guarda. Esta estrutura básica é comum em sistemas oracle, como em, por exemplo, [119, 185]. A principal inovação em nosso projeto, mencionada brevemente acima, é que cada nó é atribuiu uma prioridade distinta na ordenação de potenciais vigilantes. Ou seja, cães de guarda recebem oportunidades de alertar em sequência de prioridade. Lembre-se de que se um nó tiver o prioridade mais alta para gerar um alerta, ele recebe o depósito reduzido $d de cada mau comportamento nó, para um total de mais de \(dn/2 = \)d × n/2, pois um relatório incorreto implica um maioria dos nós ruins. Consequentemente, o adversário deve pagar pelo menos esta recompensa ao subornar um nó arbitrário. Assim, para subornar a maioria dos nós, o adversário deve pagar uma taxa grande suborno para a maioria dos nós, ou seja, estritamente mais do que $dn2/2. Mostramos esquematicamente como funciona o alerta e o escalonamento do watchdog na Figura 15.9.4.1 Mais detalhes do mecanismo O sistema resistente ao suborno que descrevemos agora com mais detalhes é um esboço simplificado de a construção de dois níveis que pretendemos construir. A maior parte do nosso foco será na descrição a rede de primeiro nível (doravante simplesmente “rede” quando claro no contexto) junto com o seu mecanismo de incentivo e o procedimento de escalada para o segundo nível. Considere uma rede Chainlink composta por n nós oracle que são responsáveis por regularmente (por exemplo, uma vez por minuto) relatando um valor booleano (por exemplo, se o mercado a capitalização do BTC excede a da ETH). Como parte do mecanismo staking, nós deve fornecer dois depósitos: um depósito $d sujeito a redução em caso de desacordo com a maioria e um depósito de vigilância $dw sujeito a redução em caso de defeito escalada. Assumimos que os nós não podem copiar os envios de outros nós, por exemplo, através de um esquema commit-reveal conforme discutido na Seção 5.3. Em cada rodada, os nós primeiro comprometer-se com seu relatório e, quando todos os nós forem confirmados (ou o tempo limite expirar), nós revelam seus relatórios. Para cada relatório a ser gerado, cada nó também recebe uma prioridade de watchdog entre 1 e n escolhida aleatoriamente, sendo 1 a prioridade máxima. Esta prioridade permite concentração de recompensa nas mãos de um cão de guarda. Depois que todos os relatórios forem públicos, segue-se uma fase de alerta. Ao longo de uma sequência de n rodadas (síncronas), o nó com prioridade i tem a oportunidade de alertar na rodada i. Vamos considerar os resultados possíveis para o mecanismo após os nós terem revelado seus relatórios. Novamente assumindo um relatório binário, suponha que o valor correto seja verdadeiro e o incorreto é falso. Suponha também que o mecanismo de primeiro nível produza o valor majoritário produzido pelos nós como o relatório final r. Existem três resultados possíveis no mecanismo: • Concordância completa: na melhor das hipóteses, os nós estão em concordância completa: todos os nós estão disponíveis e forneceram um relatório oportuno com o mesmo valor r (verdadeiro ou falso). Neste caso, a rede precisa apenas encaminhar r para contratos confiáveis e recompensar cada nó com um pagamento fixo por rodada $p, que é muito menor do que $ d. • Concordância parcial: é possível que alguns nós estejam off-line ou haja desacordo sobre qual valor é correto, mas a maioria dos nós reporta verdadeiro e apenas um relatórios minoritários falsos. Este caso também é simples. O valor majoritário (verdadeiro) é calculado, resultando em um relatório correto r. Todos os nós que relataram r são recompensado com $p enquanto os oracles que relataram incorretamente têm seus depósitos reduzido modestamente, por exemplo, em US$ 10 centavos. • Alerta: Caso um watchdog acredite que a saída da rede está incorreta, ele aciona publicamente um alerta, escalando o mecanismo para a rede de segundo nível. Existem então dois resultados possíveis: – Alerta correto: Se a rede de segundo nível confirmar que a saída doFigura 16: Ampliando o custo do suborno por meio de recompensas concentradas em alertas. Um suborno O adversário deve subornar cada nó com mais do que a recompensa que pode ganhar ao alertar (mostrado como uma barra vermelha). Se as recompensas de alerta forem compartilhadas, então esta recompensa pode ser relativamente pequeno. Recompensas de alerta concentrado aumentam a recompensa que qualquer nó único pode obter (barra vermelha alta). Consequentemente, o pagamento total pelo adversário por um suborno viável (regiões cinzas) é muito maior com recompensas de alerta concentradas do que compartilhadas. rede de primeira camada estava incorreta, o nó watchdog alertador recebe uma recompensa consistindo em todos os depósitos reduzidos e, portanto, mais de $dn/2. – Alerta de falha: Se os oracles de segundo e primeiro nível concordarem, o escalonamento é considerado defeituoso e o nó de alerta perde seu depósito $dw. No caso de aceitação otimista dos relatórios, os alertas de vigilância não causam qualquer alteração na execução de contratos de confiança. Para contratos concebidos para aguardar possível arbitragem pelo comitê de segundo nível, alertas de vigilância atrasam, mas não congele a execução do contrato. Também é possível que os contratos designem um failover DON para períodos de adjudicação. 9.4.2 Impacto de piquetagem quadrática A capacidade de cada nó atuar como um cão de guarda, combinada com uma prioridade estrita de nó garantindo recompensas concentradas, permite que o mecanismo atinja staking quadrático impacto para cada tipo de atacante de suborno descrito na Seção 9.3.3. Lembre-se que isso significa especificamente em nossa configuração que, para uma rede com n nós, cada um com depósito $d, um subornador bem-sucedido (de qualquer um dos tipos acima) deve ter um orçamento maior que $dn2/2. Para ser mais preciso, o subornador deve corromper pelo menos (n+1)/2 nós, uma vez que o subornador deve corromper a maioria de n nós (para n ímpares, por suposição). Assim, um cão de guarda deve ganhe uma recompensa de $d(n + 1)/2. O subornador, consequentemente, deve pagar esta quantia a cadanó para garantir que nenhum atue como um cão de guarda. Estamos trabalhando para mostrar formalmente que se o subornador tem um orçamento de no máximo $d(n2 + n)/2, então o equilíbrio perfeito do subjogo do jogo entre os subornadores e os oracles - em outras palavras, o equilíbrio em qualquer ponto durante o jogo - é para o subornador não emitir o suborno e para cada oracle relate seus verdadeiros valores honestamente. Explicamos acima como é possível que um subornador bem-sucedido exija uma orçamento significativamente maior do que a soma dos depósitos dos nós. Para ilustrar isso resultado intuitivo, a Fig. 16 mostra graficamente o impacto das recompensas de alerta concentrado. Como vemos aí, se a recompensa pelo alerta de vigilância - nomeadamente os depósitos de dinheiro subornado nós reportando falsos) - foram divididos entre todos os alertas potenciais, o valor total que qualquer nó de alerta individual poderia esperar que fosse relativamente pequeno, da ordem de $d. Um subornador, sabendo que um pagamento maior que $d era improvável, poderia usar um suborno condicional de resultado falso para subornar cada um dos n nós com um pouco mais de $d + ϵ. Contra-intuitivamente, a Fig. 16 mostra que um sistema que distribui uma recompensa amplamente entre os nós que sinalizam um alerta é muito mais fraco do que aquele que concentra a recompensa em nas mãos de um único cão de guarda. Parâmetros de exemplo: Considere uma rede (de primeira camada) com n = 100 nós, cada depositando \(d = \)20K. Esta rede teria um total de US$ 2 milhões depositados, mas estar protegido contra suborno com orçamento \(100M = \)dn2/2. Aumentando o número de oracles é mais eficaz do que aumentar $d, é claro, e pode ter um efeito dramático: uma rede com n = 300 nós e depósitos \(d = \)20K estaria protegida contra um subornador com orçamento de até US$ 900 milhões. Observe que um sistema staking pode, em muitos casos, proteger smart contracts representando mais valor do que o nível oferecido de proteção contra suborno. Isso ocorre porque um adversário atacar estes contratos não consegue extrair o valor total em muitos casos. Por exemplo, um O contrato movido por Chainlink que garante US$ 1 bilhão em valor só pode exigir garantia contra um subornador com US$ 100 milhões em recursos porque tal adversário pode extrair lucro de maneira viável de apenas 10% do valor do contrato. Nota: A ideia de que o valor de uma rede pode crescer quadraticamente é expressa em a conhecida Lei de Metcalfe [167, 235], que afirma que o valor de uma rede cresce quadraticamente no número de entidades conectadas. A Lei de Metcalfe, no entanto, surge do crescimento no número de possíveis conexões de rede em pares, um fenômeno diferente daquele impacto quadrático subjacente staking em nosso incentivo mecanismo. 9.4.3 Realização do Segundo Nível Dois recursos operacionais facilitam a realização de um segundo nível de alta confiabilidade: (1) A adjudicação de segundo nível deve ser um evento raro em redes oracle e, portanto, pode ser significativamente mais dispendioso do que a operação normal do primeiro nível e (2) Assumindorelatórios aceitos com otimismo – ou contratos cuja execução pode aguardar arbitragem – a segunda camada não precisa ser executada em tempo real. Estas características resultam em uma série de opções de configuração para o segundo nível para atender aos requisitos de DONs específicos. Como exemplo de abordagem, um comitê de segundo nível pode consistir em nós selecionados por um DON (ou seja, primeiro nível) dos nós mais antigos e confiáveis no Chainlink rede. Além de considerável experiência operacional relevante, os operadores de tais nós têm um incentivo implícito considerável no FFO que motiva um desejo para garantir que a rede Chainlink permaneça altamente confiável. Eles também têm publicamente históricos de desempenho disponíveis que fornecem transparência em sua confiabilidade. Vale ressaltar que os nós de segunda camada não precisam ser participantes da rede de primeira camada, e pode julgar falhas em múltiplas redes de primeira camada. Os nós em um determinado DON podem pré-designar e comprometer-se publicamente com um conjunto de n′ tais nós como constituindo o comitê de segundo nível para aquele DON. Além disso, DON os nós publicam um parâmetro k′ ≤n′ que determina o número de votos de segundo nível necessário para penalizar um nó de primeira camada. Quando um alerta é gerado para um determinado relatório, os membros do segundo nível votam na correção dos valores fornecidos por cada dos nós de primeira camada. Qualquer nó de primeira camada que receber k′ votos negativos perde sua depósitos no nó watchdog. Devido à raridade do julgamento e à oportunidade de execução prolongada mencionado acima, em contraste com o primeiro nível, os nós do segundo nível podem: 1. Ser altamente remunerado pela condução da adjudicação. 2. Recorrer a fontes de dados adicionais, para além do conjunto diversificado utilizado pelo primeiro nível. 3. Confiar na inspeção e intervenção manual e/ou especializada, por exemplo, para identificar e reconciliar erros nos dados de origem e distinguir entre um nó honesto retransmitindo dados defeituosos e um nó com mau comportamento. Enfatizamos que a abordagem que acabamos de descrever para a seleção de nós de segundo nível e para a adjudicação de políticas que governam representa apenas um ponto dentro de um grande espaço de design de possíveis realizações do segundo nível. Nosso mecanismo de incentivo oferece total flexibilidade quanto à forma como o segundo nível é realizado. DONs individuais podem, portanto, constituir e definir regras para seus segundos níveis que atendam aos requisitos específicos e expectativas dos nós e usuários participantes. DECO e Town Crier como ferramentas de adjudicação: É essencial para o segundo nível em nosso mecanismo para sermos capazes de distinguir entre nós adversários de primeira camada que produzem intencionalmente relatórios incorretos e nós honestos de primeira camada que involuntariamente retransmitir dados incorretos na origem. Só então o segundo nível poderá implementar cortar para desincentivar a trapaça, o objetivo do nosso mecanismo. DECO e Pregoeiro são ferramentas poderosas que podem permitir que nós de segundo nível façam essa distinção crítica de forma confiável.Os nós de segunda camada podem, em alguns casos, ser capazes de consultar diretamente a fonte de dados usada por um nó de primeira camada ou use a Seção 7.1 do ADO para verificar se um relatório incorreto resultou de uma fonte de dados defeituosa. Em outros casos, entretanto, os nós de segundo nível podem não ter acesso direto à fonte de dados de um nó de primeira camada. Nesses casos, a decisão correta seria parecem ser inviáveis ou exigem confiança em julgamento subjetivo. Anterior oracle sistemas de disputas têm dependido de rodadas de votação ineficientes e crescentes para resolver tais desafios. Usando DECO ou Town Crier, no entanto, um nó de primeiro nível pode provar o comportamento correto para nós de segunda camada. (Veja a Seção 3.6.2 para detalhes sobre os dois sistemas.) Especificamente, se o nó da segunda camada identifica um nó da primeira camada como tendo gerado um valor de relatório defeituoso ˜r, o nó de primeiro nível pode usar DECO ou Town Crier para gerar evidências à prova de falsificação para nós de segunda camada que estão retransmitindo corretamente ˜r de uma fonte (habilitada para TLS) reconhecido como oficial pelo DON. Criticamente, o nó de primeira camada pode fazer isso sem nós de segundo nível que exijam acesso direto à fonte de dados.17 Consequentemente, a adjudicação correta é viável em Chainlink para qualquer fonte de dados desejada. 9.4.4 Relatório incorreto de seguro A forte resistência ao suborno alcançada pelo nosso mecanismo staking depende fundamentalmente sobre a redução de fundos concedidos aos alertadores. Sem uma recompensa monetária, os alertadores não têm incentivo direto para rejeitar subornos. Como resultado, porém, os fundos cortados não são disponível para compensar usuários prejudicados por relatórios incorretos, por exemplo, usuários que perdem dinheiro quando dados de preço incorretos são retransmitidos para smart contract. Por suposição, relatórios incorretos não representam um problema se os relatórios forem aceitos por um contrato somente após eventual adjudicação, ou seja, ação da segunda camada. Como explicado acima, porém, para alcançar o melhor desempenho possível, os contratos podem, em vez disso, contar com otimistas sobre o mecanismo para impor relatórios corretos, o que significa que eles aceitam relatórios antes de uma possível adjudicação de segundo nível. Na verdade, esse comportamento optimista está seguro em nosso modelo assumindo adversários racionais cujos orçamentos não excedam o staking impacto do mecanismo. Usuários preocupados com o evento improvável de falha do mecanismo resultante de, por exemplo, adversários com recursos financeiros esmagadores podem querer empregar uma camada adicional de segurança económica sob a forma de declarações falsas de seguros. Nós sabemos de múltiplas seguradoras que já pretendem oferecer apólices deste tipo apoiadas por contratos inteligentes para protocolos protegidos por Chainlink em um futuro próximo, inclusive por meio de mecanismos inovadores como DAOs, por exemplo, [7]. A existência de histórico de desempenho para Chainlink nós e outros dados sobre nós, como seus valores de participação, fornecem uma base excepcionalmente forte para avaliações atuariais de risco, tornando possível definir preços de políticas de formas que sejam baratas para os segurados, mas sustentáveis para as seguradoras. 17Com o Town Crier, também é possível que nós de primeiro nível gerem atestados localmente de correção para os relatórios que eles produzem e fornecem esses atestados para nós de segundo nível em um conforme necessário.Formas básicas de seguro contra declarações falsas podem ser implementadas de forma confiável e maneira eficiente usando smart contracts. Como exemplo simples, um seguro paramétrico contrato SCins pode compensar os segurados automaticamente se nosso mecanismo de incentivo segunda camada identifica um erro em um relatório gerado na primeira camada. Um usuário U que deseja adquirir uma apólice de seguro, por exemplo, o criador de um alvo contrato SC, pode enviar uma solicitação a uma seguradora descentralizada por um valor de apólice $ milhões no contrato. Ao aprovar U, a seguradora pode definir um valor contínuo (por exemplo, mensal) prêmio de $P em SCins. Enquanto U paga o prêmio, sua apólice permanece ativa. Caso ocorra falha de reporte no SC, o resultado será a emissão de um par (r1, r2) de relatórios conflitantes para SC, onde r1 é assinado pelo primeiro nível em nosso mecanismo e r2, o relatório corrigido correspondente, é assinado pelo segundo nível. Se o U fornecer um par válido (r1, r2) para SCins, o contrato paga automaticamente $M a ela, desde que seus pagamentos de prêmio estão em dia. 9,5 Variante de Rodada Única O protocolo descrito na subseção anterior exige que o comitê de segundo nível espere n rodadas para determinar se um cão de guarda emitiu um alerta. Isto O requisito é válido mesmo no caso otimista, ou seja, quando o primeiro nível está funcionando corretamente. Para usuários que não desejam aceitar relatórios de forma otimista, ou seja, antes de possíveis adjudicação, o atraso associado a essa abordagem seria impraticável. Por esta razão, também estamos explorando protocolos alternativos que requerem apenas um redondo. Nesta abordagem, todos os nós oracle enviam bits secretos indicando se ou não eles desejam levantar um alerta. O comité de segundo nível verifica então estes valores em ordem de prioridade. Para fornecer um esboço, tal esquema pode envolver o seguinte etapas: 1. Envio de bits de watchdog: cada nó Oi compartilha secretamente um valor de watchdog de um bit wi ∈{no alert, alert} entre os nós da segunda camada para cada relatório gerado. 2. Dicas anônimas: Qualquer nó oracle pode enviar uma dica anônima α ao comitê de segundo nível na mesma rodada em que os bits de vigilância são enviados. Essa dica α é uma mensagem indicando que um alerta foi gerado para o relatório atual. 3. Verificação de bits de vigilância: o comitê de segundo nível revela o cão de guarda dos nós oracle bits em ordem de prioridade. Observe que os nós não devem enviar bits de vigilância de alerta quando não alertam: caso contrário, a análise de tráfego revela os bits de todos os nós. O protocolo revela o não alerta bits de watchdog de nós com prioridade mais alta do que o watchdog de alerta de maior prioridade. Observe que o que é revelado é idêntico ao do nosso protocolo n-round. As recompensas também são distribuídas de forma idêntica a esse esquema, ou seja, o primeiro cão de guarda identificado recebe os depósitos reduzidos de nós que enviaram relatórios incorretos.O uso de denúncias anônimas permite que o comitê de segundo nível permaneça não interativo nos casos em que nenhum alerta foi levantado, reduzindo a complexidade da comunicação no caso comum. Observe que qualquer cão de guarda que emita um alerta tem um incentivo econômico para enviar uma denúncia anônima: se nenhuma denúncia for enviada, nenhuma recompensa será paga a qualquer nó. Para garantir que o remetente Oi de uma denúncia anônima α não possa ser identificado pelo adversário com base em dados de rede, a denúncia anônima pode ser enviada por meio de uma rede anônima canal, por exemplo, via Tor, ou, mais praticamente, proxy através de um provedor de serviços em nuvem. Para autenticar a ponta como originária de O, Oi pode assinar α usando uma assinatura de anel [39, 192]. Alternativamente, para evitar ataques de negação de serviço não atribuíveis contra o comitê de segundo nível por um nó oracle malicioso, α pode ser uma credencial anônima com anonimato revogável [73]. Este protocolo, embora praticamente alcançável, possui engenharia um tanto pesada requisitos (que estamos explorando maneiras de reduzir). Nós de primeira camada, por exemplo, deve se comunicar diretamente com nós de segunda camada, exigindo manutenção de um diretório. A necessidade de canais anônimos e assinaturas em anel aumenta a engenharia complexidade do esquema. Finalmente, há um requisito especial de confiança brevemente discutido na nota abaixo. Estamos, portanto, também a explorar esquemas mais simples que ainda alcançam impacto superlinear staking, mas talvez menos que quadrático, em que um subornador precisa assintoticamente de recursos de pelo menos $n log n, por exemplo. Alguns dos esquemas sob consideração envolve a seleção aleatória de um subconjunto estrito de nós para atuar como vigilantes, nesse caso, o possível suborno torna-se um ataque especialmente poderoso. Observação: A segurança deste mecanismo staking de rodada única requer canais entre oracle e nós de segundo nível - um requisito padrão em sistemas resistentes à coerção, por exemplo, votação [82, 138], e um requisito razoável na prática. Além disso, porém, um nó da Oi que busca cooperar com um subornador pode construir suas ações secretas de forma a mostrar ao subornador que ele codificou um determinado valor. Por exemplo, se a Oi não sabe quais nós o subornador controla, então a Oi pode enviar ações com valor 0 para todos os membros do comitê. O subornador pode então verificar as informações da Oi conformidade probabilisticamente. Para evitar este problema em qualquer protocolo de rodada única, exigir que a Oi conheça a identidade de pelo menos um nó honesto de segunda camada. Com um protocolo interativo no qual cada nó de segunda camada adiciona uma randomização fator para as ações, o melhor que o subornador pode fazer é forçar a seleção pela Oi de um número aleatório pedaço de cão de guarda. 9.6 Quadro de Incentivos Implícitos (IIF) FFO é uma forma de incentivo implícito para o comportamento correto na rede Chainlink. Isso funciona como participação explícita, ou seja, depósitos, na medida em que ajuda a reforçar a segurança económica para a rede. Em outras palavras, o FFO deve ser incluído como parte do depósito (efetivo) $d de um nó na rede.A questão é: como medimos o FFO e outras formas de incentivo implícito dentro da rede Chainlink? O Quadro de Incentivos Implícitos (IIF) é um conjunto de princípios e técnicas que planejamos desenvolver para esse fim. Sistemas Blockchain fornecem muitas formas de transparência sem precedentes e os registros de alta confiança dos nós O desempenho que eles criam é um trampolim para a nossa visão de como o IIF funcionará. Aqui esboçamos brevemente ideias sobre elementos-chave do IIF. O próprio IIF consistirá em um conjunto de fatores que identificamos como importantes na avaliação incentivos implícitos, juntamente com mecanismos para publicação de dados relevantes de forma altamente segura para consumo por algoritmos analíticos. Diferentes usuários Chainlink podem desejam usar o IFI de maneiras diferentes, por exemplo, dando pesos diferentes a fatores diferentes. Esperamos que surjam serviços de análise na comunidade que ajudem os usuários a aplicar o IIF de acordo com suas preferências individuais de avaliação de risco, e nosso objetivo é facilitar tais serviços, garantindo o seu acesso a dados de apoio de alta segurança e oportunos, conforme discutiremos abaixo (Seção 9.6.4). 9.6.1 Oportunidade de taxas futuras Os nós participam do ecossistema Chainlink para ganhar uma parte das taxas que as redes pagam por qualquer um dos vários serviços descritos neste artigo, desde feeds de dados comuns para serviços avançados, como identidade descentralizada, sequenciamento justo, e preservação de confidencialidade DeFi. As taxas na rede Chainlink suportam os custos dos operadores de nós para, por exemplo, executar servidores, adquirir licenças de dados necessárias e manter uma equipe global para garantir alto tempo de atividade. FFO denota as taxas de serviço, líquidas de despesas, que um nó pode ganhar no futuro – ou perder caso demonstre comportamento defeituoso. FFO é uma forma de participação que ajuda a proteger a rede. Uma característica útil do FFO é o fato de que os dados on-chain (complementados por dados off-chain dados) estabelecem um registro de alta confiança do histórico de um nó, permitindo o cálculo do FFO de forma transparente e empiricamente orientada. Uma medida simples e de primeira ordem do FFO pode derivar da receita líquida média de um nó durante um período de tempo (ou seja, receita bruta menos despesas operacionais). FFO pode então ser calculado como, por exemplo, o valor presente líquido [114] da receita líquida futura acumulada, em outras palavras, o valor descontado no tempo de todos os ganhos futuros. A receita do nó pode ser volátil, no entanto, como mostrado, por exemplo, na Figura 17. Mais importante ainda, a receita do nó pode não seguir uma distribuição estacionária ao longo do tempo. Consequentemente, outros fatores que planejamos explorar na estimativa do FFO incluem: • Histórico de desempenho: o histórico de desempenho de um operador – incluindo a exatidão e pontualidade de seus relatórios, bem como seu tempo de atividade – fornece um objetivo pedra de toque para os usuários avaliarem sua confiabilidade. O histórico de desempenho será, portanto, fornecem um fator crítico na seleção de nós oracle pelos usuários (ou, com o advento de DONs, sua seleção de DONs). É provável que um forte histórico de desempenho correlacionar com alta receita contínua.18 18Uma importante questão de investigação que pretendemos abordar é a detecção de volumes de serviços falsificados.Figura 17: Receita obtida por nós Chainlink em um único feed de dados (ETH-USD) durante uma semana representativa em março de 2021. • Acesso a dados: embora oracles possam obter muitas formas de dados de APIs abertas, certas formas de dados ou certas fontes de alta qualidade podem estar disponíveis apenas em um por assinatura ou por meio de acordos contratuais. Acesso privilegiado a determinados as fontes de dados podem desempenhar um papel na criação de um fluxo de receitas estável. • Participação de DON: Com o advento de DONs, comunidades de nós surgirão juntos para fornecer serviços específicos. Esperamos que muitos DONs incluam operadores de forma seletiva, estabelecendo participação em DONs respeitáveis como um posição privilegiada no mercado que ajuda a garantir uma fonte consistente de receitas. • Atividade entre plataformas: alguns operadores de nós podem ter presenças bem estabelecidas e registros de desempenho em outros contextos, por exemplo, como PoS validators ou provedores de dados em contextos não blockchain. O seu desempenho nestes outros sistemas (quando os dados sobre eles estão disponíveis de forma confiável) pode informar a avaliação de seu histórico de desempenho. Da mesma forma, comportamento defeituoso na rede Chainlink pode comprometer a receita nesses outros sistemas, afastando usuários, ou seja, FFO pode se estender através de plataformas. 9.6.2 FFO especulativo Os operadores de nós participam da rede Chainlink não apenas para gerar receita de operações, mas sim criar e posicionar-se para aproveitar novas oportunidades para administrar empregos. Em outras palavras, os gastos por oracle nós da rede também são uma declaração positiva sobre o futuro de DeFi e outras aplicações de contratos inteligentes domínios, bem como aplicativos emergentes não blockchain de redes oracle. Os operadores de nós hoje ganham as taxas disponíveis nas redes Chainlink existentes e, simultaneamente, Estas são vagamente análogas às avaliações falsas em sites da Internet, exceto que o problema é mais fácil no oracle porque temos um registro definitivo se as mercadorias, ou seja, relatórios, foram encomendadas e entregues - em oposição, por exemplo, a bens físicos encomendados em lojas online. Dito de outra forma, no oracle configuração, o desempenho pode ser validado, mesmo que a veracidade do cliente não possa.construir uma reputação, histórico de desempenho e conhecimento operacional que posicionará vantajosamente para ganhar taxas disponíveis em redes futuras (contingentes, é claro, sobre comportamento honesto). Os nós que operam no ecossistema Chainlink hoje irão neste sentido, têm uma vantagem sobre os recém-chegados em ganhar taxas adicionais Chainlink serviços ficam disponíveis. Esta vantagem aplica-se a novos operadores, bem como a empresas de tecnologia com reputação estabelecida; por exemplo, a T-Systems, uma tradicional fornecedor de tecnologia (subsidiária da Deutsche Telekom) e Kraken, uma grande empresa centralizada exchange, estabeleceram presenças iniciais no ecossistema Chainlink [28, 143]. Tal participação dos nós oracle em oportunidades futuras pode ser considerada em si como uma espécie de FFO especulativo e, portanto, constitui uma forma de participação no Chainlink rede. 9.6.3 Reputação Externa O IIF, como o descrevemos, pode operar em uma rede com nomes estritamente pseudônimos. operadores, ou seja, sem divulgação das pessoas ou entidades do mundo real envolvidas. Um fator potencialmente importante para a seleção de fornecedores pelos usuários, no entanto, é a reputação. Por reputação externa entendemos a percepção de confiabilidade associada a identidades do mundo real, em vez de pseudônimos. Risco reputacional associado a identidades do mundo real podem ser vistas como uma forma de incentivo implícito. Nós vemos a reputação através das lentes do IIF, ou seja, no sentido criptoeconômico, como meio de estabelecer atividade multiplataforma que pode ser incorporada nas estimativas de FFO. O benefício de usar a reputação externa como um fator nas estimativas do FFO, em oposição à ligação por pseudônimo, é que a reputação externa vincula o desempenho não apenas a um atividades atuais do operador, mas também às futuras. Se, por exemplo, uma má reputação atribui a uma pessoa individual, pode manchar os futuros empreendimentos dessa pessoa. Dito de outra forma, a reputação externa pode capturar uma faixa mais ampla de FFO do que o pseudônimo registros de desempenho, como o impacto da má conduta associada a uma pessoa ou estabelecida empresa é mais difícil de escapar do que aquela associada a uma operação pseudônima. Chainlink é compatível com tecnologias de identidade descentralizadas (Seção 4.3) que pode fornecer suporte para o uso da reputação externa no IFI. Tais tecnologias pode validar e, assim, ajudar a garantir a veracidade das declarações do mundo real afirmadas pelos operadores. identidades.19 9.6.4 Abra a análise IIF O IIF, como observamos, visa fornecer dados e ferramentas confiáveis e de código aberto para análise de incentivo implícito. O objetivo é capacitar os provedores da comunidade desenvolver análises adaptadas às necessidades de avaliação de risco de diferentes partes do Chainlink base de usuários. 19Credenciais de identidade descentralizadas também podem, quando desejado, embelezar pseudônimos com informações validadas informações complementares. Por exemplo, um operador de nó poderia, em princípio, usar essas credenciais para provar que se trata de uma empresa Fortune 500, sem revelar qual.Uma quantidade considerável de dados históricos sobre receita e desempenho dos nós reside na cadeia de uma forma imutável e de alta confiança. Nosso objetivo, no entanto, é fornecer o dados mais abrangentes possíveis, incluindo dados sobre comportamentos que são visíveis apenas fora cadeia, como relatório fora da cadeia (OCR) ou atividade DON. Esses dados podem potencialmente ser volumoso. A melhor forma de armazená-lo e garantir sua integridade, ou seja, protegê-lo de a adulteração, acreditamos, será com a ajuda de DONs, usando técnicas discutidas na Seção 3.3. Alguns incentivos se prestam a formas diretas de medição, como staking depósitos e FFO básico. Outros, como o FFO especulativo e a reputação, são mais difíceis de medir de maneira objetiva, mas acreditamos que apoiar formas de dados, incluindo crescimento histórico do ecossistema Chainlink, métricas de reputação de mídia social, etc., pode suportar modelos analíticos IIF mesmo para esses elementos mais difíceis de quantificar. Podemos imaginar que DONs dedicados surgem especificamente para monitorar, validar e registrar dados relacionados a registros de desempenho off-chain de nós, bem como outros dados usados no IIF, como informações de identidade validadas. Esses DONs podem fornecer dados IIF uniformes e de alta confiança para qualquer provedor de análise que atenda à comunidade Chainlink. Eles também fornecerão um registro de ouro que fará com que as reivindicações dos provedores de análise verificável de forma independente pela comunidade. 9.7 Juntando tudo: incentivos para operadores de nós Sintetizando nossas discussões acima sobre incentivos explícitos e implícitos para operadores de nós fornece uma visão holística das maneiras pelas quais os operadores de nós participam e se beneficiam a rede Chainlink. Como guia conceitual, podemos expressar o total de ativos em jogo por um determinado Chainlink operador de nó $S em uma forma aproximada e estilizada como: \(S ≈\)D + \(F + \)FS +$R, onde: • $D é o agregado de todas as participações explicitamente depositadas em todas as redes nas quais a operadora participa; • $F é o valor presente líquido do agregado de todos os FFO em todas as redes em em que o operador participa; • $FS é o valor presente líquido do FFO especulativo do operador; e • $R é o patrimônio reputacional do operador fora do ecossistema Chainlink que pode ser prejudicado pelo mau comportamento identificado em seus nós oracle. Embora em grande parte conceitual, essa igualdade aproximada mostra de forma útil que há uma multiplicidade de fatores econômicos que favorecem o desempenho de alta confiabilidade dos nós Chainlink. Todos esses fatores, exceto $D, estão presentes nas redes Chainlink atuais.9,8 O Ciclo Virtuoso da Segurança Económica A combinação do impacto superlinear staking com representação de pagamentos de taxas como a oportunidade de taxas futuras (FFO) no IIF pode levar ao que chamamos de ciclo virtuoso de segurança econômica em uma rede oracle. Isto pode ser visto como uma espécie de economia de escala. À medida que o montante total garantido por uma determinada rede aumenta, o montante de a participação adicional necessária para adicionar uma quantidade fixa de segurança econômica diminui, assim como o custo médio por usuário. Portanto, é mais barato, em termos de taxas, para um usuário aderir uma rede já existente do que alcançar o mesmo aumento na economia de rede segurança criando uma nova rede. É importante ressaltar que a adição de cada novo usuário diminui o custo do serviço para todos os usuários anteriores dessa rede. Dada uma estrutura de taxas específica (por exemplo, uma taxa de rendimento específica sobre o valor apostado), se o total de taxas recebidas por uma rede aumentar, isso incentiva o fluxo de recursos adicionais apostar na rede para protegê-la a uma taxa mais alta. Especificamente, se a aposta total um nó individual pode reter no sistema é limitado, então, quando novos pagamentos de taxas entrar no sistema, aumentando seu FFO, o número de nós n aumentará. Graças ao impacto superlinear staking do design do nosso sistema de incentivos, a segurança econômica de o sistema subirá mais rápido que n, por exemplo, como n2 no mecanismo que esboçamos na Seção 9.4. Como resultado, o custo médio para a segurança económica – ou seja, a quantidade de participação que contribui um dólar de segurança económica – cairá. A rede pode, portanto, cobrar de seus usuários taxas mais baixas. Supondo que a demanda por serviços oracle seja elástica (ver, por exemplo, [31] para um breve explicação), a demanda aumentará, gerando taxas e FFO adicionais. Ilustramos esse ponto com o seguinte exemplo. Exemplo 5. Visto que a segurança económica de uma rede oracle com o nosso incentivo esquema é \(dn2 for stake \)dn, a segurança econômica contribuída por um dólar de participação é n e, portanto, o custo médio por dólar de segurança econômica - ou seja, o valor da participação contribuir para um dólar de segurança económica – é 1/n. Considere uma rede na qual os incentivos económicos consistem inteiramente em FFO, limitados em \(d ≤\)10K por nó. Suponha que a rede tenha n = 3 nós. Então o custo médio por dólar de segurança económica é de cerca de 0,33 dólares. Suponha que o FFO total da rede ultrapasse \(30K (e.g., to \)31K). Dado o limite de FFO por nó, a rede cresce para (pelo menos) n = 4. Agora o custo médio por dólar de segurança económica cai para cerca de 0,25 dólares. Ilustramos esquematicamente o ciclo virtuoso completo da segurança económica nas redes oracle na Fig. Enfatizamos que o ciclo virtuoso da segurança económica deriva do efeito dos usuários agrupando suas taxas. É o seu FFO colectivo que trabalha a favor de maiores tamanhos de rede e, portanto, maior segurança coletiva. Notamos também que o ciclo virtuoso da segurança económica funciona a favor de DONs alcançarem a sustentabilidade financeira. Uma vez criados, DONs que atendem às necessidades do usuário devem crescer até e além do ponto em que a receita proveniente de taxas excede os custos operacionais para nós oracle.




Figura 18: Esquema do ciclo virtuoso de Chainlink staking. Um aumento nas taxas de utilização pagamentos para uma rede oracle 1⃝faz com que ela cresça, levando ao crescimento de sua economia segurança 2⃝. Este crescimento superlinear realiza economias de escala em redes Chainlink 3⃝. Especificamente, significa uma redução no custo médio da segurança económica, ou seja, a segurança econômica por dólar decorrente de pagamentos de taxas ou outras fontes de participação aumenta. Custos mais baixos, repassados aos usuários, estimulam o aumento da demanda por oracle serviços 4⃝. 9,9 Fatores adicionais que impulsionam o crescimento da rede À medida que o ecossistema Chainlink continua a se expandir, acreditamos que a sua atratividade para os usuários e a importância da infraestrutura para a economia blockchain irá acelerar. O valor fornecido pelas redes oracle é superlinear, o que significa que cresce mais rápidodo que o tamanho das próprias redes. Este crescimento em valor decorre tanto economias de escala – maior eficiência de custos por usuário à medida que os volumes de serviço aumentam – e efeitos de rede – um aumento da utilidade da rede à medida que os usuários adotam DONs mais amplamente. À medida que os smart contracts existentes continuam a ver mais valor garantido e totalmente novo smart contract aplicações são possibilitadas por serviços mais descentralizados, o total o uso e as taxas agregadas pagas a DONs devem aumentar. Aumentar os conjuntos de taxas em por sua vez, traduzem-se em meios e incentivos para criar serviços ainda mais descentralizados, resultando em um ciclo virtuoso. Este ciclo virtuoso resolve uma questão crítica do ovo e da galinha problema no ecossistema híbrido smart contract: recursos inovadores smart contract muitas vezes exigem serviços descentralizados que ainda não existem (por exemplo, novos mercados DeFi muitas vezes exigem novos fluxos de dados) mas precisam de procura económica suficiente para existirem. O agrupamento de taxas por vários smart contracts para DONs existentes sinalizará a demanda por serviços descentralizados adicionais a partir de uma base de utilizadores crescente, dando origem à sua criação por DONs e uma capacitação contínua de novos e variados smart contracts híbridos. Em resumo, acreditamos que o crescimento da segurança de rede impulsionado por princípios virtuosos ciclos no mecanismo Chainlink staking exemplificam padrões maiores de crescimento que a rede Chainlink pode ajudar a criar uma economia em cadeia para descentralização serviços.
Kinh tế và kinh tế tiền điện tử
Để mạng Chainlink đạt được mức độ bảo mật mạnh mẽ trong mô hình tin cậy phi tập trung, điều cần thiết là các nút phải thể hiện hành vi đúng đắn một cách tập thể, nghĩa là chúng tuân thủ phần lớn thời gian đều chính xác với các giao thức DON. Trong phần này, chúng tôi thảo luận về các phương pháp để giúp thực thi hành vi đó bằng các biện pháp khuyến khích kinh tế, hay còn gọi là kinh tế tiền điện tử khuyến khích. Những ưu đãi này được chia thành hai loại: rõ ràng và tiềm ẩn, được thực hiện tương ứng thông qua staking và cơ hội thu phí trong tương lai (FFO). Đặt cọc: Đặt cược vào Chainlink, giống như trong các hệ thống blockchain khác, bao gồm những người tham gia mạng, tức là các nút oracle, gửi tiền bị khóa dưới dạng LINK tokens. Những cái này quỹ mà chúng tôi còn gọi là cổ phần hoặc cổ phần rõ ràng là một động lực rõ ràng. Họ có thể bị mất khi nút bị lỗi hoặc trục trặc. Trong ngữ cảnh blockchain, thủ tục này thường được gọi là chém. Tuy nhiên, việc đặt cược bởi các nút oracle trong Chainlink về cơ bản khác với staking bởi validator giây trong blockchain giây không được phép. Người xác nhận có thể hoạt động sai bằng cách đặt hàng các giao dịch không rõ ràng hoặc đối nghịch. Giao thức đồng thuận cơ bản trong một 15Vì người dùng có thể thay thế các giao dịch trong mempool nên cần phải cẩn thận để đảm bảo sự tương ứng chính xác giữa các giao dịch được khai thác và DON đã gửi.Tuy nhiên, blockchain không được phép sử dụng các quy tắc xác thực khối nhanh chóng và nguyên gốc bằng mật mã để ngăn validator tạo các khối không hợp lệ. Ngược lại, các biện pháp bảo vệ có lập trình không thể ngăn mạng oracle gian lận tạo ra báo cáo không hợp lệ. Lý do là sự khác biệt chính giữa hai loại hệ thống: xác thực giao dịch trong blockchains là thuộc tính của tính nhất quán nội bộ, trong khi tính chính xác của oracle báo cáo về blockchain là thuộc tính của dữ liệu bên ngoài, tức là dữ liệu ngoài chuỗi. Chúng tôi đã thiết kế cơ chế staking sơ bộ cho mạng Chainlink dựa trên trên giao thức tương tác giữa các nút oracle có thể sử dụng dữ liệu bên ngoài. Cái này cơ chế tạo ra các khuyến khích tài chính cho hành vi đúng đắn bằng cách sử dụng các phần thưởng và hình phạt (chém). Vì cơ chế này mang tính kinh tế nên nó được thiết kế để ngăn chặn nút tham nhũng bởi kẻ thù sử dụng nguồn tài chính để làm hỏng các nút bằng cách hối lộ. (Đối thủ như vậy rất chung chung và mở rộng, ví dụ: tới các nút hợp tác với rút ra giá trị từ hành vi sai trái tập thể của họ.) Cơ chế Chainlink staking mà chúng tôi đã thiết kế có một số cơ chế mạnh mẽ và mới lạ tính năng.16 Tính năng chính như vậy là tác động siêu tuyến tính staking (cụ thể là bậc hai). Đối thủ phải có tài nguyên vượt quá đáng kể số tiền gửi của các nút trong nhằm phá hoại cơ chế. Cơ chế staking của chúng tôi còn cung cấp thêm khả năng bảo vệ chống lại đối thủ mạnh hơn so với những gì đã được xem xét trước đây trong các hệ thống tương tự, cụ thể là một kẻ thù có thể đưa ra hối lộ điều chỉnh hành vi trong tương lai của các nút. Ngoài ra, chúng tôi còn thảo luận về cách các công cụ Chainlink như DECO có thể giúp củng cố staking của chúng tôi cơ chế bằng cách tạo điều kiện cho việc xét xử chính xác trong trường hợp nút hoạt động bị lỗi. Cơ hội thu phí trong tương lai (FFO): blockchains không được phép—của cả PoW và sự đa dạng của PoS—ngày nay chủ yếu dựa vào cái mà chúng tôi gọi là động cơ ngầm. Đây là khuyến khích kinh tế cho hành vi trung thực không xuất phát từ những phần thưởng rõ ràng, mà là từ chính sự tham gia của nền tảng. Ví dụ: cộng đồng thợ mỏ Bitcoin được khuyến khích chống lại việc thực hiện cuộc tấn công 51% do nguy cơ làm suy yếu niềm tin vào Bitcoin, làm giảm giá trị của nó và do đó làm xói mòn giá trị tập thể của họ đầu tư vốn vào cơ sở hạ tầng khai thác mỏ [150]. Mạng Chainlink được hưởng lợi từ động cơ ngầm tương tự mà chúng tôi đề cập đến như cơ hội phí trong tương lai (FFO). Các nút Oracle có lịch sử hiệu suất mạnh mẽ hoặc danh tiếng thu hút phí từ người dùng. Hành vi sai trái của nút oracle gây nguy hiểm cho tương lai thanh toán phí và do đó phạt nút bằng chi phí cơ hội về mặt tiềm năng doanh thu kiếm được thông qua việc tham gia vào mạng lưới. Bằng cách tương tự với cổ phần rõ ràng, FFO có thể được xem như một dạng cổ phần tiềm ẩn, một động cơ khuyến khích hành vi trung thực bắt nguồn từ lợi ích chung của việc duy trì niềm tin vào nền tảng mà trên đó Hoạt động kinh doanh của nhà khai thác nút phụ thuộc vào, tức là hiệu suất tích cực và danh tiếng của mạng. Khuyến khích này vốn có nhưng không được thể hiện rõ ràng trong mạng Chainlink giao thức. Trong Bitcoin, duy trì giá trị của hoạt động khai thác như đã đề cập ở trên 16Cơ chế staking mà chúng tôi mô tả ở đây hiện chỉ nhằm mục đích thực thi việc gửi báo cáo chính xác bởi oracle mạng. Chúng tôi hy vọng trong công việc tương lai sẽ mở rộng nó để đảm bảo thực hiện đúng nhiều các chức năng khác DON sẽ cung cấp.tương tự có thể được xem như một hình thức cổ phần tiềm ẩn. Chúng tôi nhấn mạnh rằng FFO đã tồn tại trong Chainlink và giúp bảo mật mạng hôm nay. Đóng góp chính của chúng tôi trong việc phát triển hơn nữa Chainlink sẽ là cách tiếp cận có nguyên tắc, dựa trên kinh nghiệm để đánh giá các biện pháp khuyến khích ngầm như FFO thông qua cái mà chúng tôi gọi là Khung khuyến khích tiềm ẩn (IIF). Để ước tính số lượng như cơ hội thu phí trong tương lai của các nút, IIF sẽ liên tục dựa trên toàn diện dữ liệu hiệu suất và thanh toán được mạng Chainlink tích lũy. Những ước tính như vậy sẽ cho phép tham số hóa dựa trên IIF của các hệ thống staking phản ánh khuyến khích nút với độ chính xác cao hơn các mô hình heuristic và/hoặc tĩnh hiện tại. Tóm lại, hai động lực kinh tế chính cho nút oracle chính xác hành vi trong mạng Chainlink đang phát triển sẽ là: • Đặt cọc (đặt cọc) ồ Khuyến khích rõ ràng • Cơ hội thu phí trong tương lai (FFO) ồ Khuyến khích ngầm Hai hình thức khuyến khích này bổ sung cho nhau. Các nút Oracle có thể đồng thời tham gia vào giao thức Chainlink staking, tận hưởng luồng doanh thu liên tục từ người dùng và cùng được hưởng lợi từ hành vi tốt liên tục của họ. Như vậy cả hai biện pháp khuyến khích góp phần bảo mật kinh tế tiền điện tử do mạng oracle cung cấp. Ngoài ra, hai động cơ khuyến khích này có thể củng cố và/hoặc được trao đổi với nhau. Ví dụ, toán tử oracle mới không có lịch sử hiệu suất và luồng doanh thu có thể đặt cược số lượng lớn LINK như một sự đảm bảo cho hành vi trung thực, từ đó thu hút người dùng và phí. Ngược lại, một toán tử oracle đã được thiết lập có thời gian dài, tương đối không có lỗi lịch sử hiệu suất có thể tính phí đáng kể từ cơ sở người dùng lớn và do đó dựa vào nặng nề hơn vào FFO của nó như một hình thức khuyến khích ngầm. Nói chung, cách tiếp cận mà chúng tôi xem xét ở đây nhằm vào số lượng oracle mạng nhất định nguồn lực để tạo ra các khuyến khích kinh tế lớn nhất có thể trong Chainlink cho hợp lý các đại lý—tức là các nút tối đa hóa tiện ích tài chính của họ—hành xử trung thực. Đặt cái khác theo cách này, mục tiêu là tối đa hóa nguồn tài chính cần thiết để đối thủ tấn công mạng thành công. Bằng cách xây dựng giao thức staking với tính toán tốt an ninh kinh tế được xác định và cũng sử dụng IIF, chúng tôi mong muốn đo lường sức mạnh của Ưu đãi của Chainlink chính xác nhất có thể. Những người tạo ra các hợp đồng dựa trên sẽ sau đó có thể xác định một cách chắc chắn liệu mạng oracle có đáp ứng được không mức độ bảo mật kinh tế tiền điện tử cần thiết của họ. Chu kỳ đạo đức của an ninh kinh tế: Các biện pháp khuyến khích mà chúng ta thảo luận trong phần này, staking và FFO, có tác động vượt ra ngoài việc tăng cường tính bảo mật của DONs. Họ hứa sẽ tạo ra cái mà chúng ta gọi là một chu kỳ an ninh kinh tế có đạo đức. Tác động siêu tuyến tính staking (và tính kinh tế theo quy mô khác) dẫn đến hiệu quả hoạt động thấp hơn chi phí khi mức độ bảo mật của DON tăng lên. Chi phí thấp hơn sẽ thu hút thêm người dùng vào DON,tăng cường thanh toán phí. Sự gia tăng trong thanh toán phí tiếp tục khuyến khích sự tăng trưởng của mạng lưới, giúp duy trì chu kỳ đạo đức. Chúng tôi tin rằng chu kỳ lành mạnh của an ninh kinh tế chỉ là một ví dụ về tính kinh tế theo quy mô và hiệu ứng mạng trong số những vấn đề khác mà chúng ta sẽ thảo luận sau trong phần này. Tổ chức phần: Đặt cọc đưa ra những thách thức đáng chú ý về mặt kỹ thuật và khái niệm cho mà chúng tôi đã thiết kế một cơ chế với các tính năng mới. Do đó, việc đặt cược sẽ được trọng tâm chính của chúng tôi trong phần này. Chúng tôi cung cấp tổng quan về cách tiếp cận staking mà chúng tôi giới thiệu trong bài viết này ở Phần 9.1, sau đó là thảo luận chi tiết trong Phần 9.2 đến 9.5. Chúng tôi trình bày IFF trong Phần 9.6. Chúng tôi trình bày quan điểm tóm tắt về Chainlink ưu đãi mạng trong Phần 9.7. Trong Phần 9.8, chúng tôi thảo luận về chu kỳ hợp lý của an ninh kinh tế mà phương pháp staking được đề xuất của chúng tôi có thể mang lại cho các mạng oracle. Cuối cùng, chúng tôi mô tả ngắn gọn các tiềm năng khác tác động thúc đẩy sự phát triển của mạng Chainlink trong Phần 9.9. 9.1 Tổng quan về đặt cược Thiết kế cơ chế staking mà chúng tôi giới thiệu ở đây, như đã lưu ý ở trên, bao gồm một giao thức tương tác giữa các nút oracle cho phép giải quyết sự không nhất quán trong báo cáo dữ liệu bên ngoài. Đặt cược nhằm mục đích đảm bảo hành vi trung thực từ các nút oracle hợp lý. Do đó, chúng ta có thể lập mô hình đối thủ tấn công giao thức staking dưới dạng kẻ hối lộ: Chiến lược của kẻ thù là mua chuộc các nút oracle bằng cách sử dụng các biện pháp khuyến khích tài chính. Kẻ thù có thể lấy được nguồn tài chính từ việc giả mạo thành công với báo cáo oracle, ví dụ: đề nghị chia sẻ lợi nhuận thu được với các nút bị hỏng. Chúng tôi hướng tới thiết kế cơ chế staking của mình đồng thời hai mục tiêu đầy tham vọng: 1. Chống lại kẻ thù hùng mạnh: Cơ chế staking được thiết kế để bảo vệ oracle mạng lưới chống lại một nhóm đối thủ rộng lớn có khả năng phức tạp, chiến lược hối lộ có điều kiện, bao gồm cả hối lộ tiềm năng, đưa hối lộ tới oracle có danh tính được xác định sau sự việc (ví dụ: đưa hối lộ cho oracle được chọn ngẫu nhiên để cảnh báo mức độ ưu tiên cao). Trong khi các thiết kế oracle khác đã xem xét một loạt các cuộc tấn công hẹp mà không có đầy đủ khả năng thực tế đối thủ, theo hiểu biết tốt nhất của chúng tôi, cơ chế đối nghịch mà chúng tôi giới thiệu đây là lần đầu tiên đề cập một cách rõ ràng một loạt các chiến lược hối lộ và chỉ ra kháng cự trong mô hình này. Mô hình của chúng tôi giả định rằng các nút bên cạnh kẻ tấn công là hợp lý về mặt kinh tế (trái ngược với trung thực) và chúng tôi giả định sự tồn tại của một nguồn sự thật cực kỳ tốn kém cho việc sử dụng thông thường nhưng có sẵn trong trường hợp không đồng ý (được thảo luận thêm bên dưới). 2. Đạt được tác động siêu tuyến tính staking: Mục tiêu của chúng tôi là đảm bảo rằng mạng oracle bao gồm các báo cáo tác nhân hợp lý trung thực ngay cả khi có sự hiện diện của kẻ tấn công với ngân sách siêu tuyến tínhtrong tổng số cổ phần được gửi bởi toàn bộ mạng lưới. Trong các hệ thống staking hiện có, nếu mỗi nút trong số n nút đặt cược $d, kẻ tấn công có thể đưa ra một khoản hối lộ đáng tin cậy yêu cầu các nút đó hành xử không trung thực để đổi lấy khoản thanh toán nhiều hơn một chút \(d to each node, using a total budget of about \)dn. Đây đã là một thanh cao như kẻ tấn công phải có một ngân sách thanh khoản theo thứ tự tổng số tiền gửi của tất cả các staker trong mạng. Mục tiêu của chúng tôi là mức độ an ninh kinh tế cao hơn nữa hơn trở ngại vốn đã đáng kể này. Chúng tôi mong muốn thiết kế hệ thống staking đầu tiên có thể đạt được sự bảo mật cho kẻ tấn công thông thường với ngân sách siêu tuyến tính trong n. Mặc dù những cân nhắc thực tế có thể đạt được tác động thấp hơn, như chúng tôi thảo luận dưới đây, thiết kế sơ bộ của chúng tôi đạt được yêu cầu ngân sách đối nghịch lớn hơn $dn2/2, tức là, chia tỷ lệ bậc hai theo n, thậm chí khiến việc hối lộ hầu như không thực tế khi các nút chỉ đặt cược số tiền vừa phải. Để đạt được hai mục tiêu này đòi hỏi sự kết hợp sáng tạo giữa thiết kế khuyến khích và mật mã. Ý tưởng chính: Cách tiếp cận staking của chúng tôi xoay quanh một ý tưởng mà chúng tôi gọi là ưu tiên của cơ quan giám sát. Báo cáo được tạo bởi mạng Chainlink oracle và được gửi tới hợp đồng phụ thuộc (ví dụ: về giá tài sản) được tổng hợp từ các báo cáo riêng lẻ do các nút tham gia đóng góp (ví dụ: bằng cách lấy giá trị trung bình). Điển hình là thỏa thuận cấp độ dịch vụ (SLA) chỉ định giới hạn độ lệch có thể chấp nhận được cho các báo cáo, tức là báo cáo của nút có thể đi được bao xa đi chệch khỏi báo cáo tổng hợp và mức độ tổng hợp được phép lệch khỏi giá trị thực thì được coi là đúng. Trong hệ thống staking của chúng tôi, đối với một vòng báo cáo nhất định, mỗi nút oracle có thể hoạt động như cơ quan giám sát đưa ra cảnh báo nếu họ tin rằng báo cáo tổng hợp là không chính xác. Trong mỗi vòng báo cáo, mỗi nút oracle được chỉ định một mức độ ưu tiên công khai xác định thứ tự cảnh báo của nó (nếu có) sẽ được xử lý. Cơ chế của chúng tôi nhằm mục đích khen thưởng tập trung, có nghĩa là cơ quan giám sát có mức độ ưu tiên cao nhất đưa ra cảnh báo sẽ nhận được toàn bộ phần thưởng thu được bằng cách tịch thu tiền gửi của các nút bị lỗi. Thiết kế hệ thống staking của chúng tôi bao gồm hai cấp: cấp đầu tiên, mặc định và cấp thứ hai, tầng cản trở. Tầng đầu tiên chính là mạng oracle, một tập hợp n nút. (Để đơn giản, chúng tôi giả sử n là số lẻ.) Nếu phần lớn các nút báo cáo giá trị không chính xác, cơ quan giám sát trong cấp đầu tiên được khuyến khích mạnh mẽ để đưa ra cảnh báo. Nếu cảnh báo được đưa ra, báo cáo quyết định của mạng sau đó được chuyển lên cấp thứ hai—một hệ thống có chi phí cao, độ tin cậy tối đa có thể được người dùng chỉ định trong thỏa thuận cấp độ dịch vụ mạng. Ví dụ, đây có thể là một hệ thống chỉ bao gồm các nút có điểm số về độ tin cậy lịch sử hoặc điểm có độ lớn hơn oracles so với bậc đầu tiên. Ngoài ra, như đã thảo luận trong Phần 9.4.3, DECO hoặc Town Crier có thể phục vụ là những công cụ mạnh mẽ giúp đảm bảo việc xét xử hiệu quả và có tính kết luận ở cấp độ thứ hai. Để đơn giản, chúng tôi giả định rằng hệ thống cấp hai này đưa ra một báo cáo chính xác giá trị. Mặc dù việc dựa vào cấp thứ hai để tạo tất cả các báo cáo có vẻ hấp dẫn, Lợi ích của thiết kế của chúng tôi là nó luôn đạt được các đặc tính bảo mật củahệ thống cấp hai trong khi chỉ phải trả chi phí vận hành, trong trường hợp điển hình, của hệ thống cấp một. Mức độ ưu tiên của cơ quan giám sát dẫn đến tác động staking siêu tuyến tính theo cách sau: nếu mạng oracle cấp một đưa ra kết quả không chính xác và một số nút cơ quan giám sát cảnh báo, cơ chế khuyến khích staking thưởng cho cơ quan giám sát có mức độ ưu tiên cao nhất hơn $dn/2 được rút từ tiền gửi của (phần lớn) các nút hoạt động sai. các do đó, tổng phần thưởng tập trung vào tay cơ quan giám sát duy nhất này, do đó xác định mức tối thiểu mà đối thủ phải hứa với một cơ quan giám sát tiềm năng để khuyến khích nó không cảnh báo. Vì cơ chế của chúng tôi đảm bảo rằng mọi oracle đều nhận được cơ hội đóng vai trò là cơ quan giám sát nếu các cơ quan giám sát có mức độ ưu tiên cao hơn đã nhận hối lộ của họ (và được chọn không cảnh báo), do đó đối thủ phải đưa hối lộ nhiều hơn $dn/2 tới mọi nút để ngăn chặn bất kỳ cảnh báo nào được đưa ra. Vì có n nút nên Ngân sách cần thiết của đối phương để hối lộ thành công lên tới hơn $dn2/2, tức là là bậc hai của số n nút trong mạng. 9,2 Nền Cách tiếp cận của chúng tôi đối với staking dựa trên nghiên cứu trong lĩnh vực lý thuyết và cơ chế trò chơi thiết kế (MD) (để tham khảo sách giáo khoa, xem [177]). Lý thuyết trò chơi là lý thuyết toán học nghiên cứu chính thức về tương tác chiến lược. Trong bối cảnh này, trò chơi là một mô hình của một sự tương tác, điển hình là trong thế giới thực, mã hóa các tập hợp hành động có sẵn để người tham gia trò chơi, được gọi là người chơi. Trò chơi cũng chỉ định số tiền nhận được bởi từng người chơi—phần thưởng phụ thuộc vào hành động được lựa chọn của người chơi và hành động của những người chơi khác. Có lẽ ví dụ nổi tiếng nhất về trò chơi được nghiên cứu trong trò chơi lý thuyết là Thế tiến thoái lưỡng nan của tù nhân [178]. Các nhà lý thuyết trò chơi thường hướng tới việc hiểu trạng thái cân bằng hoặc cân bằng (nếu có) thể hiện trong một trò chơi nhất định. Một trạng thái cân bằng là một tập hợp các chiến lược (mỗi người chơi một chiến lược) sao cho không người chơi nào có thể đạt được điểm cao hơn thanh toán bằng cách đơn phương đi chệch khỏi chiến lược của mình. Trong khi đó, thiết kế cơ chế là khoa học thiết kế các biện pháp khuyến khích sao cho trạng thái cân bằng của một tương tác (và trò chơi liên quan của nó) có một số đặc tính mong muốn. MD có thể được coi là nghịch đảo của lý thuyết trò chơi: Câu hỏi kinh điển trong trò chơi lý thuyết là “với các động cơ và mô hình được đưa ra, trạng thái cân bằng sẽ như thế nào?” Ở MD, Thay vào đó, câu hỏi là “những khuyến khích nào sẽ mang lại một trò chơi có trạng thái cân bằng mong muốn?” Mục tiêu điển hình của người thiết kế cơ chế là tạo ra một cơ chế 'tương thích khuyến khích', nghĩa là những người tham gia cơ chế (ví dụ: đấu giá hoặc thông tin khác) hệ thống gợi ý [228]) được khuyến khích báo cáo sự thật về một số vấn đề (ví dụ: làm thế nào họ đánh giá cao một mặt hàng cụ thể). Cuộc đấu giá Vickrey (giá thứ hai) có lẽ là cơ chế khuyến khích tương thích được biết đến nhiều nhất, trong đó người tham gia nộp hồ sơ dự thầu kín cho một món hàng và người trả giá cao nhất sẽ thắng món hàng đó nhưng phải trả mức giá cao thứ hai [214]. Kinh tế học mật mã là một dạng MD dành riêng cho từng miền, tận dụng kỹ thuật mã hóa kỹ thuật để tạo ra sự cân bằng mong muốn trong các hệ thống phi tập trung. Hối lộ và thông đồng tạo ra những thách thức đáng kể trong lĩnh vực MD. Hầu như tất cả các cơ chế đều bị phá vỡ khi có sự thông đồng, được định nghĩa là các hợp đồng phụgiữa các bên tham gia cơ chế [125, 130]. Hối lộ, trong đó một bên bên ngoài đưa các khuyến khích mới vào trò chơi, gây ra một vấn đề thậm chí còn khó khăn hơn hơn là thông đồng; thông đồng có thể được coi là một trường hợp đặc biệt của hối lộ trong trò chơi người tham gia. Các hệ thống chuỗi khối thường có thể được khái niệm hóa như một trò chơi với các khoản thanh toán bằng tiền (dựa trên tiền điện tử). Một ví dụ đơn giản là khai thác Bằng chứng công việc: thợ mỏ có không gian hành động trong đó họ có thể chọn tỷ lệ hash để khai thác khối. Lợi ích của việc khai thác là phần thưởng âm được đảm bảo (chi phí điện và thiết bị) cộng với chi phí ngẫu nhiên phần thưởng tích cực (trợ cấp khai thác) phụ thuộc vào số lượng người khai thác đang hoạt động khác [106, 172] và phí giao dịch. oracle được cộng đồng đóng góp như SchellingCoin [68] là một ví dụ khác: không gian hành động là tập hợp các báo cáo có thể có mà oracle có thể gửi, trong khi khoản thanh toán là phần thưởng được chỉ định bởi cơ chế oracle, ví dụ: khoản thanh toán có thể phụ thuộc vào về mức độ gần gũi giữa báo cáo của oracle với giá trị trung bình của các báo cáo khác [26, 68, 119, 185]. Trò chơi chuỗi khối mang lại cơ hội chín muồi cho các cuộc tấn công thông đồng và hối lộ; thực sự, smart contracts thậm chí có thể tạo điều kiện thuận lợi cho các cuộc tấn công như vậy [96, 165]. Có lẽ được biết đến nhiều nhất cuộc tấn công hối lộ vào oracle được cộng đồng sử dụng là cuộc tấn công p-plus-epsilon [67]. Cuộc tấn công này phát sinh trong bối cảnh cơ chế giống như SchellingCoin trong đó người chơi gửi báo cáo có giá trị boolean (nghĩa là sai hoặc đúng) và được thưởng p nếu họ đồng ý với sự đệ trình của đa số. Trong cuộc tấn công p-plus-epsilon, kẻ tấn công hứa hẹn một cách đáng tin cậy: ví dụ: trả tiền cho người dùng $p + ϵ để bỏ phiếu sai khi và chỉ khi ý kiến đa số là đúng. Kết quả là một trạng thái cân bằng, trong đó tất cả người chơi được khuyến khích báo cáo sai bất kể người chơi khác làm gì; do đó, kẻ hối lộ có thể xúi giục các nút thông qua việc hối lộ đã hứa để báo cáo sai sự thật mà không thực sự trả tiền hối lộ (!). Tuy nhiên, việc khám phá các chiến lược hối lộ khác trong bối cảnh oracle—và đặc biệt là oracle không sử dụng nguồn lực từ cộng đồng—đã bị giới hạn ở đối thủ khá yếu các mô hình. Ví dụ, trong bối cảnh PoW, các nhà nghiên cứu đã nghiên cứu các yếu tố phụ thuộc vào kết quả hối lộ, tức là hối lộ chỉ được trả nếu thông điệp mục tiêu được kiểm duyệt thành công và không xuất hiện trong một khối, bất kể hành động của từng người khai thác [96, 165]. Trong trường hợp Tuy nhiên, trong số oracle, ngoài cuộc tấn công p-plus-epsilon, chúng tôi chỉ biết về công việc trong một mô hình hối lộ có giới hạn nghiêm ngặt, trong đó người đưa hối lộ gửi hối lộ với điều kiện hành động của từng người chơi chứ không phải kết quả đạt được. Ở đây chúng tôi phác thảo các thiết kế của cơ chế khơi gợi thông tin vẫn mang tính khuyến khích tương thích ngay cả trong một mô hình đối nghịch mạnh, như được mô tả trong tiểu mục tiếp theo. 9,3 Giả định mô hình hóa Trong tiểu mục này, chúng tôi giải thích cách chúng tôi mô hình hóa hành vi và khả năng của người chơi trong hệ thống của chúng tôi, cụ thể là các nút oracle cấp một, các nút ở cấp hai (xác định) lớp và đối thủ.9.3.1 Mô hình khuyến khích cấp một: Tác nhân hợp lý Nhiều hệ thống blockchain dựa vào tính bảo mật dựa trên giả định về một số thông tin trung thực các nút tham gia. Các nút được xác định là trung thực nếu chúng tuân theo giao thức ngay cả khi khi việc làm đó không mang lại lợi ích tài chính cho họ. Hệ thống Bằng chứng công việc thường yêu cầu phần lớn quyền lực hash phải trung thực, hệ thống Bằng chứng cổ phần thường yêu cầu 2/3 tổng số cổ phần tham gia phải trung thực và thậm chí cả các hệ thống lớp 2 như Trọng tài [141] yêu cầu ít nhất một người tham gia trung thực. Khi lập mô hình cho cơ chế staking, chúng tôi đưa ra giả định yếu hơn nhiều. (Trở thành các giả định rõ ràng, yếu hơn có nghĩa là các thuộc tính bảo mật mạnh hơn và do đó được ưu tiên hơn.) Chúng tôi cho rằng đối thủ đã làm hỏng, tức là các quyền kiểm soát, một số (thiểu số) một phần của nút oracle cấp một. Chúng tôi lập mô hình các nút còn lại không phải là tác nhân trung thực, mà là tối đa hóa tiện ích kỳ vọng hợp lý. Các nút này hoạt động hoàn toàn theo các khuyến khích tài chính mang tính tư lợi, lựa chọn các hành động mang lại hiệu quả tài chính dự kiến. đạt được. Ví dụ: nếu một nút được đưa hối lộ lớn hơn phần thưởng thu được từ hành vi trung thực thì sẽ nhận hối lộ. Lưu ý về các nút đối nghịch: Theo mô hình tin cậy phổ biến cho hệ thống phi tập trung, chúng tôi giả định rằng tất cả các nút đều hợp lý, tức là tìm cách tối đa hóa doanh thu ròng, thay vì bị kiểm soát bởi một đối thủ độc hại. Tuy nhiên, những tuyên bố của chúng tôi— tác động đặc biệt là siêu tuyến tính hoặc bậc hai staking—giữ được cung cấp tiệm cận rằng tập hợp các nút bị kiểm soát đối nghịch tối đa là (1/2 −c)n, đối với một số giá trị dương hằng số c. 9.3.2 Mô hình xét xử cấp hai: Tính đúng đắn dựa trên giả định Hãy nhớ rằng một tính năng quan trọng của cơ chế staking của chúng tôi giúp đạt được bảo mật chống lại các nút hợp lý là hệ thống cấp hai của nó. Trong cơ chế staking được đề xuất của chúng tôi, bất kỳ oracle nào cũng có thể đưa ra cảnh báo cho biết rằng nó tin rằng đầu ra của cơ chế này là không chính xác. Một cảnh báo mang lại độ tin cậy cao hệ thống cấp hai kích hoạt và báo cáo kết quả chính xác. Vì vậy, một mô hình chính yêu cầu đối với cách tiếp cận của chúng tôi là sự đánh giá chính xác, tức là báo cáo chính xác của hệ thống bậc hai. Mô hình staking của chúng tôi giả định hệ thống cấp hai hoạt động như một nguồn sự thật không thể bị hỏng, có độ tin cậy tối đa. Một hệ thống như vậy có thể sẽ tốn kém và chậm, và do đó không phù hợp để sử dụng cho trường hợp điển hình. Tuy nhiên, trong trường hợp cân bằng, tức là khi hệ thống cấp một hoạt động chính xác thì hệ thống cấp hai sẽ không được gọi. Thay vào đó, sự tồn tại của nó giúp tăng cường tính bảo mật của toàn bộ hệ thống oracle bằng cách cung cấp một backstop có độ đảm bảo cao. Việc sử dụng lớp xét xử có độ tin cậy cao, chi phí cao tương tự như quy trình kháng cáo trung tâm của hầu hết các hệ thống tư pháp. Nó cũng đã phổ biến trong thiết kế của oracle hệ thống, ví dụ: [119, 185]. Chúng tôi thảo luận ngắn gọn các cách tiếp cận để hiện thực hóa cấp độ thứ hai trong cơ chế của chúng tôi ở Mục 9.4.3.Giao thức staking của chúng tôi sử dụng phán đoán chính xác giả định của hệ thống cấp hai như một mối đe dọa đáng tin cậy để buộc các nút oracle báo cáo chính xác. giao thức tịch thu một phần hoặc toàn bộ cổ phần của các nút oracle tạo báo cáo được xác định bởi hệ thống cấp hai là không chính xác. Do đó, các nút của Oracle bị ngăn chặn hoạt động sai bởi hình phạt tài chính phát sinh. Cách tiếp cận này có tính chất tương tự như cách được sử dụng trong lạc quan rollups, ví dụ: [141, 10]. 9.3.3 Mô hình đối nghịch Cơ chế staking của chúng tôi được thiết kế để thu thập thông tin trung thực đồng thời đạt được sự bảo mật trước một nhóm đối thủ được xác định rõ ràng và rộng rãi. Nó cải thiện các tác phẩm trước đó, hoặc bỏ qua mô hình đối thủ rõ ràng hoặc tập trung vào các phân nhóm đối thủ hẹp, ví dụ: đối thủ p-plus-epsilon đã thảo luận ở trên. Mục tiêu của chúng tôi là thiết kế staking cơ chế bảo mật đã được chứng minh chính thức chống lại đầy đủ các đối thủ có khả năng phải gặp trong thực tế. Chúng ta mô hình đối thủ của mình là có ngân sách cố định (có thể tham số hóa), ký hiệu là $B. Kẻ thù có thể liên lạc riêng lẻ và bí mật với mỗi oracle trong mạng và có thể bí mật đưa ra bất kỳ cá nhân nào oracle khoản hối lộ được đảm bảo phụ thuộc vào các kết quả có thể quan sát được một cách công khai của cơ chế. Kết quả xác định hối lộ có thể bao gồm, ví dụ: giá trị được báo cáo bởi oracle, bất kỳ tin nhắn công khai nào được gửi bởi bất kỳ oracle nào tới cơ chế (ví dụ: cảnh báo), các giá trị được báo cáo bởi người khác oracles và giá trị đầu ra theo cơ chế. Không có cơ chế nào có thể bảo mật trước kẻ tấn công với khả năng không giới hạn. Do đó, chúng tôi coi một số hành vi là không thực tế hoặc nằm ngoài phạm vi. Chúng tôi cho rằng kẻ tấn công của chúng tôi không thể phá vỡ các nguyên tắc mã hóa tiêu chuẩn và, như đã lưu ý ở trên, có một điểm cố định (nếu có khả năng lớn) ngân sách $B. Chúng tôi còn giả định thêm rằng đối thủ không kiểm soát liên lạc trong mạng oracle, cụ thể là nó không thể trì hoãn đáng kể lưu lượng giữa các nút cấp một và/hoặc cấp hai. (Việc đối phương có thể quan sát được hoạt động giao tiếp như vậy hay không còn tùy thuộc vào cơ chế cụ thể, như chúng tôi giải thích bên dưới.) Tuy nhiên, một cách không chính thức, như đã lưu ý ở trên, chúng tôi cho rằng đối thủ có thể: (1) Tham nhũng một phần của oracle nút ((1/2 −c)-phân số cho một số hằng số c), tức là kiểm soát hoàn toàn họ, và (2) Đưa hối lộ cho bất kỳ nút nào mong muốn, với khoản thanh toán được đảm bảo về các kết quả do đối thủ quy định, như được mô tả ở trên. Mặc dù chúng tôi không cung cấp một mô hình chính thức hoặc phân loại đầy đủ về đối thủ nhiều khả năng hối lộ trong báo cáo nghiên cứu chuyên sâu này, sau đây là ví dụ về các loại những kẻ hối lộ nằm trong mô hình của chúng tôi. Để đơn giản, chúng tôi giả sử rằng oracle phát ra Boolean báo cáo có giá trị đúng (w.l.o.g.) là đúng và kết quả cuối cùng được tính là tổng hợp các báo cáo này sẽ được sử dụng bởi smart contract. Của kẻ hối lộ mục đích là làm cho kết quả cuối cùng không chính xác, tức là sai. • Kẻ hối lộ vô điều kiện: Kẻ hối lộ đưa hối lộ $b cho bất kỳ oracle nào báo cáo sai. • Kẻ hối lộ xác suất: Kẻ hối lộ đưa hối lộ $b với xác suất q nào đó cho bất kỳ oracle nào báo cáo đó là sai.• Kẻ hối lộ có điều kiện đưa ra kết quả sai: Kẻ hối lộ đưa hối lộ $b cho bất kỳ oracle nào báo cáo sai với điều kiện là kết quả cuối cùng là sai. • Kẻ hối lộ không có cảnh báo: Kẻ hối lộ đưa hối lộ $b cho bất kỳ oracle nào báo cáo sai miễn là không có cảnh báo nào được đưa ra. • p-plus-epsilon Kẻ hối lộ: Kẻ hối lộ đề nghị hối lộ $b cho bất kỳ oracle nào báo cáo sai là miễn là phần lớn oracle không báo cáo sai. • Người hối lộ tiềm năng: Kẻ hối lộ đưa hối lộ trước $b cho bất kỳ oracle nào được chọn cho một vai trò ngẫu nhiên và báo cáo sai. Trong giao thức staking được đề xuất của chúng tôi, tất cả các nút hoạt động như cơ quan giám sát tiềm năng và chúng tôi có thể chỉ ra rằng sự ngẫu nhiên trong số các ưu tiên của cơ quan giám sát không có khả năng dẫn đến hối lộ. Nhiều bằng chứng công việc, proof-of-stake và các hệ thống được cấp phép dễ bị tấn công tuy nhiên, hối lộ cho thấy tầm quan trọng của việc xem xét vấn đề này trong bối cảnh đối thủ của chúng ta mô hình và đảm bảo rằng các giao thức staking của chúng tôi có khả năng phục hồi theo mô hình đó. Xem Phụ lục E để biết thêm chi tiết. 9.3.4 Bao nhiêu bảo mật kinh tế tiền điện tử là đủ? Một đối thủ hợp lý sẽ chỉ chi tiền để tấn công một hệ thống nếu nó có thể thu được lợi nhuận lớn hơn chi phí của nó. Do đó, đối với mô hình đối nghịch của chúng tôi và đề xuất staking cơ chế, $B có thể được xem như thước đo lợi nhuận tiềm năng mà đối thủ có thể có được để trích xuất từ việc dựa vào smart contract bằng cách làm hỏng mạng oracle và khiến nó để tạo ra một báo cáo hoặc tập hợp các báo cáo không chính xác. Khi quyết định xem mạng oracle cung cấp mức độ bảo mật kinh tế tiền điện tử phù hợp cho mục đích của mình, người dùng nên đánh giá mạng từ quan điểm này. Đối với những đối thủ đáng tin cậy trong bối cảnh thực tế, chúng tôi kỳ vọng rằng $B nhìn chung sẽ nhỏ hơn đáng kể so với tổng tài sản tính theo smart contracts. Trong hầu hết các trường hợp, nó Đối phương không thể chiếm được toàn bộ tài sản này. 9,4 Cơ chế đặt cược: Phác thảo Ở đây chúng tôi trình bày các ý chính và cấu trúc chung của cơ chế staking mà chúng tôi hiện đang xem xét. Để dễ trình bày, chúng tôi mô tả một cách đơn giản nhưng chậm (nhiều vòng) trong tiểu mục này. Tuy nhiên, chúng tôi lưu ý rằng kế hoạch này khá thiết thực. Với những đảm bảo kinh tế được cung cấp bởi cơ chế, tức là việc trừng phạt và khuyến khích các nút bị lỗi, nhiều người dùng có thể sẵn sàng chấp nhận báo cáo một cách lạc quan. Nói cách khác, những người dùng như vậy có thể chấp nhận báo cáo trước khi sự xét xử tiềm năng của cấp thứ hai. Người dùng không muốn chấp nhận báo cáo một cách lạc quan có thể chọn đợi cho đến khi giao thức việc thực thi chấm dứt, tức là cho đến khi xảy ra bất kỳ sự leo thang tiềm năng nào lên tầng thứ hai. Cái này, tuy nhiên, có thể làm chậm đáng kể thời gian xác nhận báo cáo. Do đó chúng tôi tóm tắtHình 15: Sơ đồ lược đồ staking có cảnh báo. Trong ví dụ này, 1⃝a đa số của các nút bị hỏng/bị mua chuộc và phát ra giá trị ˜r không chính xác, thay vì giá trị chính xác giá trị báo cáo r. Nút cơ quan giám sát 2⃝ gửi cảnh báo đến ủy ban cấp hai, 3⃝xác định và đưa ra giá trị báo cáo chính xác r, dẫn đến các nút bị hỏng mất tiền gửi của họ—mỗi $d vào nút cơ quan giám sát 4⃝. phác thảo một số tối ưu hóa mang lại kết quả nhanh hơn (một vòng) nếu nhiều hơn một chút thiết kế phức tạp trong Phần 9.5. Hãy nhớ lại rằng tầng đầu tiên trong cơ chế staking của chúng tôi bao gồm oracle cơ bản bản thân mạng. Cấu trúc chính của cơ chế của chúng tôi, như được mô tả ở trên, là trong mỗi vòng, mỗi nút có thể hoạt động như một “cơ quan giám sát” với mức độ ưu tiên nhất định và do đó nó có khả năng đưa ra cảnh báo nếu cơ chế đạt được đầu ra không chính xác ˜r, thay vì đầu ra đúng một r. Cảnh báo này gây ra độ phân giải cấp hai mà chúng tôi cho rằng đạt đến độ phân giải chính xác báo cáo. Các nút có báo cáo không chính xác sẽ bị trừng phạt, theo nghĩa là cổ phần của họ bị chém và trao cho cơ quan giám sát. Cấu trúc cơ bản này phổ biến trong các hệ thống oracle, như trong, ví dụ: [119, 185]. Sự đổi mới quan trọng trong thiết kế của chúng tôi, được đề cập ngắn gọn ở trên, là mọi nút đều được giao một mức độ ưu tiên riêng biệt trong việc sắp xếp các cơ quan giám sát tiềm năng. Tức là cơ quan giám sát được tạo cơ hội để cảnh báo theo thứ tự ưu tiên. Hãy nhớ lại rằng nếu một nút có ưu tiên cao nhất để đưa ra cảnh báo, nó sẽ nhận được khoản tiền gửi bị cắt giảm $d cho mỗi hành vi sai trái nút, với tổng số lớn hơn \(dn/2 = \)d × n/2, vì một báo cáo không chính xác ngụ ý một phần lớn các nút xấu. Do đó, đối thủ ít nhất phải trả phần thưởng này cho hối lộ một nút tùy ý. Do đó, để hối lộ phần lớn các nút, đối thủ phải trả một khoản tiền hối lộ lớn cho phần lớn các nút, cụ thể là hơn $dn2/2. Chúng tôi trình bày dưới dạng sơ đồ cách thức hoạt động của cảnh báo và cơ quan giám sát trong Hình 15.9.4.1 Chi tiết cơ chế khác Hệ thống chống hối lộ mà chúng tôi mô tả chi tiết hơn bây giờ là một bản phác thảo đơn giản về công trình hai tầng mà chúng tôi dự định xây dựng. Hầu hết trọng tâm của chúng tôi sẽ là mô tả mạng cấp một (từ đây gọi đơn giản là “mạng” nếu không phù hợp với ngữ cảnh) cùng với cơ chế khuyến khích và thủ tục chuyển lên cấp thứ hai. Hãy xem xét một mạng Chainlink bao gồm n nút oracle chịu trách nhiệm thường xuyên (ví dụ: mỗi phút một lần) báo cáo giá trị boolean (ví dụ: liệu thị trường có vốn hóa của BTC vượt quá ETH). Là một phần của cơ chế staking, các nút phải cung cấp hai khoản đặt cọc: một khoản đặt cọc $d có thể bị cắt giảm trong trường hợp không đồng ý với phần lớn và khoản đặt cọc của cơ quan giám sát $dw có thể bị cắt giảm trong trường hợp có lỗi leo thang. Chúng tôi giả định rằng các nút không thể sao chép nội dung gửi của các nút khác, ví dụ: thông qua sơ đồ tiết lộ cam kết như được thảo luận trong Phần 5.3. Trong mỗi vòng, các nút đầu tiên cam kết với báo cáo của họ và khi tất cả các nút đã cam kết (hoặc hết thời gian chờ), các nút tiết lộ báo cáo của họ. Đối với mỗi báo cáo được tạo, mọi nút cũng được cấp mức độ ưu tiên theo dõi từ 1 đến n được chọn ngẫu nhiên, trong đó 1 là mức độ ưu tiên hàng đầu. Ưu tiên này cho phép tập trung phần thưởng vào tay một cơ quan giám sát. Sau khi tất cả các báo cáo được công khai, một giai đoạn cảnh báo xảy ra sau đó. Qua một chuỗi n vòng (đồng bộ), nút có ưu tiên tôi có cơ hội cảnh báo ở vòng i. Chúng ta hãy xem xét các kết quả có thể xảy ra đối với cơ chế sau khi các nút được tiết lộ báo cáo của họ. Một lần nữa giả sử một báo cáo nhị phân, giả sử giá trị đúng là đúng và cái sai là sai. Cũng giả sử rằng cơ chế bậc một tạo ra đầu ra giá trị đa số theo các nút làm báo cáo cuối cùng r. Có ba kết quả có thể xảy ra trong cơ chế này: • Thỏa thuận hoàn chỉnh: Trong trường hợp tốt nhất, các nút đều hoàn toàn đồng ý: tất cả các nút có sẵn và đã cung cấp báo cáo kịp thời có cùng giá trị r (hoặc đúng hoặc sai). Trong trường hợp này, mạng chỉ cần chuyển tiếp r tới các hợp đồng dựa trên và thưởng cho mỗi nút một khoản thanh toán cố định cho mỗi vòng $p, số tiền này nhỏ hơn nhiều hơn $d. • Thỏa thuận một phần: Có thể một số nút đang ngoại tuyến hoặc có sự bất đồng về giá trị nào là đúng, nhưng hầu hết các nút đều báo cáo là đúng và chỉ có một báo cáo thiểu số sai. Trường hợp này cũng đơn giản thôi. Giá trị đa số (đúng) được tính toán, dẫn đến báo cáo đúng r. Tất cả các nút báo cáo r đều được thưởng $p trong khi oracle được báo cáo không chính xác có tiền gửi của họ giảm một cách khiêm tốn, ví dụ: 10 xu. • Cảnh báo: Trong trường hợp cơ quan giám sát tin rằng đầu ra của mạng không chính xác, nó công khai kích hoạt cảnh báo, chuyển cơ chế này sang mạng cấp hai. Khi đó có hai kết quả có thể xảy ra: – Cảnh báo đúng: Nếu mạng cấp hai xác nhận rằng đầu ra củaHình 16: Tăng chi phí của kẻ hối lộ thông qua các phần thưởng cảnh báo tập trung. Một sự hối lộ đối thủ phải hối lộ mỗi nút nhiều hơn phần thưởng mà nó có thể nhận được bằng cách cảnh báo (hiển thị dưới dạng thanh màu đỏ). Nếu phần thưởng cảnh báo được chia sẻ thì phần thưởng này có thể tương đối nhỏ. Phần thưởng cảnh báo tập trung làm tăng phần thưởng mà bất kỳ nút đơn lẻ nào cũng có thể có được (thanh cao màu đỏ). Do đó, tổng số tiền mà đối phương phải trả cho một khoản hối lộ khả thi (vùng màu xám) lớn hơn nhiều với phần thưởng cảnh báo tập trung hơn so với phần thưởng cảnh báo được chia sẻ. mạng cấp một không chính xác, nút cơ quan giám sát cảnh báo sẽ nhận được phần thưởng bao gồm tất cả các khoản tiền gửi bị cắt giảm, và do đó nhiều hơn $dn/2. – Cảnh báo lỗi: Nếu oracle cấp hai và cấp một đồng ý, thì mức tăng sẽ là được coi là bị lỗi và nút cảnh báo sẽ mất khoản tiền gửi $dw. Trong trường hợp chấp nhận báo cáo một cách lạc quan, cảnh báo của cơ quan giám sát không gây ra bất kỳ sự thay đổi nào trong việc thực hiện các hợp đồng căn cứ. Đối với các hợp đồng được thiết kế để chờ đợi khả năng được phân xử bởi ủy ban cấp hai, cơ quan giám sát sẽ trì hoãn cảnh báo nhưng không đình chỉ việc thực hiện hợp đồng. Hợp đồng cũng có thể chỉ định một chuyển đổi dự phòng DON trong thời gian xem xét. 9.4.2 Tác động đặt cược bậc hai Khả năng cho mọi nút hoạt động như một cơ quan giám sát, kết hợp với mức độ ưu tiên nghiêm ngặt của nút đảm bảo phần thưởng tập trung, cho phép cơ chế đạt được bậc hai staking tác động đối với từng loại kẻ tấn công hối lộ được mô tả trong Phần 9.3.3. Hãy nhớ lại rằng điều này có nghĩa cụ thể trong cài đặt của chúng tôi là, đối với một mạng có n nút, mỗi nút có tiền gửi $d, kẻ hối lộ thành công (thuộc bất kỳ loại nào ở trên) phải có ngân sách lớn hơn $dn2/2. Nói chính xác, kẻ hối lộ phải làm hỏng ít nhất (n+1)/2 nút, vì kẻ hối lộ phải làm hỏng phần lớn n nút (đối với n lẻ, theo giả định). Vì vậy, một cơ quan giám sát đứng ra kiếm được phần thưởng $d(n + 1)/2. Do đó, người hối lộ phải trả số tiền này cho mọi người.nút để đảm bảo rằng không có nút nào hoạt động như cơ quan giám sát. Chúng tôi đang làm việc để chứng tỏ một cách chính thức rằng nếu người hối lộ có ngân sách tối đa là $d(n2 + n)/2, khi đó trò chơi con sẽ có trạng thái cân bằng hoàn hảo của trò chơi giữa những kẻ hối lộ và oracle—nói cách khác, điểm cân bằng tại bất kỳ thời điểm nào trong quá trình chơi trò chơi—là người đưa hối lộ không được đưa hối lộ và mỗi oracle báo cáo giá trị thực của nó một cách trung thực. Ở trên chúng tôi đã giải thích tại sao một kẻ hối lộ thành công có thể yêu cầu một ngân sách lớn hơn đáng kể so với tổng số tiền gửi của nút. Để minh họa điều này kết quả trực quan, Hình 16 cho thấy tác động của phần thưởng cảnh báo tập trung bằng đồ họa. Như chúng ta thấy ở đó, nếu phần thưởng cho việc cảnh báo cơ quan giám sát—cụ thể là tiền gửi hối lộ các nút báo cáo sai)—được chia cho tất cả các cảnh báo tiềm năng, tổng số tiền bất kỳ nút cảnh báo riêng lẻ nào có thể mong đợi sẽ tương đối nhỏ, theo thứ tự $d. Một kẻ hối lộ biết rằng khoản tiền lớn hơn $d là không thể xảy ra nên có thể sử dụng một khoản hối lộ có điều kiện có kết quả sai để hối lộ từng nút trong số n nút nhiều hơn một chút $d + ϵ. Ngược lại, Hình 16 cho thấy rằng một hệ thống phân phối phần thưởng một cách rộng rãi giữa các nút báo hiệu cảnh báo yếu hơn nhiều so với nút tập trung phần thưởng vào bàn tay của một cơ quan giám sát duy nhất. Các tham số ví dụ: Hãy xem xét một mạng (cấp đầu tiên) có n = 100 nút, mỗi nút gửi tiền \(d = \)20K. Mạng này sẽ có tổng số tiền gửi là 2 triệu USD nhưng sẽ được bảo vệ khỏi kẻ hối lộ với ngân sách \(100M = \)dn2/2. Tăng số lượng Tất nhiên, oracles sẽ hiệu quả hơn việc tăng $d và có thể có tác động mạnh mẽ: một mạng có n = 300 nút và tiền gửi \(d = \)20K sẽ được bảo vệ chống lại một kẻ hối lộ với ngân sách lên tới 900 triệu USD. Lưu ý rằng trong nhiều trường hợp, hệ thống staking có thể bảo vệ smart contract đại diện có giá trị cao hơn mức độ bảo vệ chống hối lộ được đưa ra. Điều này là do đối thủ tấn công các hợp đồng này không thể trích xuất toàn bộ giá trị trong nhiều trường hợp. Ví dụ, một Hợp đồng do Chainlink cung cấp đảm bảo giá trị 1 tỷ USD chỉ có thể yêu cầu bảo đảm chống lại một kẻ hối lộ với nguồn lực 100 triệu đô la vì kẻ thù như vậy có thể kiếm được lợi nhuận chỉ 10% giá trị hợp đồng. Lưu ý: Ý tưởng rằng giá trị của một mạng có thể tăng theo phương pháp bậc hai được thể hiện trong Định luật Metcalfe nổi tiếng [167, 235], trong đó nêu rõ rằng giá trị của một mạng tăng bậc hai về số lượng thực thể được kết nối. Tuy nhiên, định luật Metcalfe phát sinh từ sự tăng trưởng về số lượng kết nối mạng theo cặp tiềm năng, một hiện tượng khác với tác động bậc hai cơ bản staking trong khuyến khích của chúng tôi cơ chế. 9.4.3 Hiện thực hóa tầng thứ hai Hai tính năng vận hành tạo điều kiện thuận lợi cho việc hiện thực hóa tầng thứ hai có độ tin cậy cao: (1) Việc phân xử cấp hai phải là một sự kiện hiếm gặp trong các mạng oracle và do đó có thể tốn kém hơn đáng kể so với hoạt động bình thường của cấp một và (2) Giả sửnhững báo cáo được chấp nhận một cách lạc quan—hoặc những hợp đồng mà việc thực hiện có thể chờ phân xử— tầng thứ hai không cần thực thi trong thời gian thực. Những đặc điểm này dẫn đến một loạt các các tùy chọn cấu hình cho tầng thứ hai để đáp ứng các yêu cầu của DON cụ thể. Theo cách tiếp cận ví dụ, một ủy ban cấp hai có thể bao gồm các nút được chọn bởi một DON (tức là cấp đầu tiên) từ các nút hoạt động lâu nhất và đáng tin cậy nhất trong Chainlink mạng. Ngoài kinh nghiệm hoạt động có liên quan đáng kể, các nhà khai thác trong số các nút như vậy có động cơ ngầm đáng kể trong FFO thúc đẩy mong muốn để đảm bảo rằng mạng Chainlink vẫn có độ tin cậy cao. Họ cũng đã công khai lịch sử hiệu suất có sẵn cung cấp sự minh bạch về độ tin cậy của chúng. Điều đáng chú ý là các nút cấp hai không cần phải là người tham gia vào mạng cấp một và có thể phân xử các lỗi trên nhiều mạng cấp một. Các nút trong DON nhất định có thể chỉ định trước và cam kết công khai với một tập hợp n′ như vậy các nút cấu thành ủy ban cấp hai cho DON đó. Ngoài ra, DON các nút xuất bản tham số k′ ≤n′ xác định số phiếu bầu cấp hai cần thiết để trừng phạt nút cấp một. Khi cảnh báo được tạo cho một báo cáo nhất định, các thành viên của cấp thứ hai bỏ phiếu về tính chính xác của các giá trị do mỗi người cung cấp của các nút lớp đầu tiên. Bất kỳ nút cấp 1 nào nhận được k′ phiếu bầu tiêu cực sẽ bị mất quyền tiền gửi đến nút cơ quan giám sát. Bởi vì hiếm có cơ hội xét xử và cơ hội thi hành án kéo dài đã lưu ý ở trên, trái ngược với tầng thứ nhất, các nút ở tầng thứ hai có thể: 1. Được trả thù lao cao khi tiến hành xét xử. 2. Sử dụng các nguồn dữ liệu bổ sung, thậm chí vượt ra ngoài tập hợp đa dạng được sử dụng đầu tiên. 3. Dựa vào sự kiểm tra và can thiệp thủ công và/hoặc chuyên gia, ví dụ: để xác định và điều chỉnh các lỗi trong dữ liệu nguồn và phân biệt giữa một nút chuyển tiếp trung thực dữ liệu bị lỗi và một nút hoạt động sai. Chúng tôi nhấn mạnh rằng cách tiếp cận mà chúng tôi vừa mô tả để lựa chọn các nút cấp hai và việc xét xử quản lý chính sách chỉ đại diện cho một điểm trong một phạm vi rộng lớn. không gian thiết kế của các khả năng thực hiện của tầng thứ hai. Cơ chế khuyến khích của chúng tôi cung cấp hoàn toàn linh hoạt về cách thực hiện tầng thứ hai. Do đó, DON cá nhân có thể cấu thành và đặt ra các quy tắc cho cấp thứ hai đáp ứng các yêu cầu cụ thể và kỳ vọng của các nút tham gia và người dùng. DECO và Town Crier làm công cụ xét xử: Nó rất cần thiết cho tầng thứ hai trong cơ chế của chúng tôi để có thể phân biệt giữa các nút cấp một đối thủ cố ý tạo ra các báo cáo không chính xác và các nút cấp một trung thực vô tình chuyển tiếp dữ liệu không chính xác tại nguồn. Chỉ khi đó tầng thứ hai mới có thể thực hiện chém để ngăn chặn gian lận, mục tiêu của cơ chế của chúng tôi. DECO và Town Crier là những công cụ mạnh mẽ có thể cho phép các nút cấp hai tạo ra sự khác biệt quan trọng này đáng tin cậy.Trong một số trường hợp, các nút cấp hai có thể truy vấn trực tiếp nguồn dữ liệu được sử dụng bởi nút cấp một hoặc sử dụng ADO Mục 7.1 để kiểm tra xem báo cáo không chính xác có do nguồn dữ liệu bị lỗi. Tuy nhiên, trong các trường hợp khác, các nút cấp hai có thể thiếu truy cập trực tiếp vào nguồn dữ liệu của nút cấp một. Trong những trường hợp như vậy, việc xét xử đúng sẽ dường như không khả thi hoặc đòi hỏi phải dựa vào đánh giá chủ quan. Trước oracle các hệ thống tranh chấp đã dựa vào các vòng bỏ phiếu leo thang, không hiệu quả để giải quyết các vấn đề đó những thách thức. Tuy nhiên, bằng cách sử dụng DECO hoặc Town Crier, nút cấp một có thể chứng minh hành vi đúng tới các nút lớp thứ hai. (Xem Phần 3.6.2 để biết chi tiết về hai hệ thống.) Cụ thể, nếu nút cấp thứ hai xác định nút cấp một có giá trị báo cáo bị lỗi ˜r, nút cấp một có thể sử dụng DECO hoặc Town Crier để tạo ra bằng chứng chống giả mạo cho các nút cấp hai đang chuyển tiếp chính xác từ nguồn (kích hoạt TLS) được công nhận là có thẩm quyền bởi DON. Điều quan trọng là nút cấp một có thể thực hiện việc này không có các nút cấp hai yêu cầu quyền truy cập trực tiếp vào nguồn dữ liệu.17 Do đó, việc đánh giá chính xác là khả thi ở Chainlink đối với bất kỳ nguồn dữ liệu mong muốn nào. 9.4.4 Báo cáo sai bảo hiểm Khả năng chống hối lộ mạnh mẽ mà cơ chế staking của chúng tôi đạt được về cơ bản phụ thuộc vào về số tiền bị cắt giảm được trao cho người cảnh báo. Nếu không có phần thưởng bằng tiền, người cảnh báo sẽ không có động cơ trực tiếp để từ chối hối lộ. Tuy nhiên, kết quả là số tiền bị cắt giảm không phải là có sẵn để bồi thường cho người dùng bị tổn hại do báo cáo không chính xác, ví dụ: người dùng bị mất tiền khi dữ liệu giá không chính xác được chuyển tiếp tới smart contract. Theo giả định, các báo cáo không chính xác sẽ không gây ra vấn đề gì nếu báo cáo được một cơ quan chấp nhận. chỉ ký hợp đồng sau khi có sự phân xử tiềm năng, tức là hành động của cấp thứ hai. Như đã giải thích Tuy nhiên, ở trên, để đạt được hiệu suất tốt nhất có thể, thay vào đó, hợp đồng có thể dựa vào lạc quan về cơ chế thực thi việc báo cáo đúng, nghĩa là họ chấp nhận báo cáo trước khi xét xử cấp hai tiềm năng. Quả thực, hành vi lạc quan như vậy là an toàn trong mô hình của chúng tôi giả sử các đối thủ hợp lý có ngân sách không vượt quá staking tác động của cơ chế. Người dùng lo ngại về khả năng xảy ra lỗi cơ chế do, ví dụ: đối thủ có nguồn tài chính dồi dào, có thể muốn sử dụng một lớp bảo đảm kinh tế bổ sung dưới hình thức bảo hiểm báo cáo sai. Chúng tôi biết về nhiều công ty bảo hiểm đã có ý định cung cấp các chính sách hỗ trợ hợp đồng thông minh thuộc loại này cho các giao thức được bảo mật Chainlink trong tương lai gần, bao gồm thông qua các cơ chế cải tiến như DAOs, ví dụ: [7]. Sự tồn tại của lịch sử hiệu suất cho Chainlink các nút và dữ liệu khác về các nút, chẳng hạn như số tiền đặt cọc của chúng, cung cấp cơ sở đặc biệt mạnh mẽ để đánh giá rủi ro theo mô hình thống kê, giúp cho việc định giá chính sách có thể thực hiện được. theo những cách không tốn kém cho người mua bảo hiểm nhưng vẫn bền vững cho các công ty bảo hiểm. 17Với Town Crier, các nút cấp một cũng có thể tạo chứng thực cục bộ về tính chính xác của các báo cáo mà họ xuất ra và cung cấp những chứng thực này cho các nút cấp hai trên một cơ sở theo nhu cầu.Các hình thức báo cáo sai cơ bản về bảo hiểm có thể được thực hiện một cách đáng tin cậy và cách hiệu quả bằng cách sử dụng smart contracts. Một ví dụ đơn giản, một bảo hiểm tham số SCins hợp đồng có thể tự động bồi thường cho các chủ hợp đồng nếu cơ chế khuyến khích của chúng tôi cấp thứ hai xác định lỗi trong báo cáo được tạo ở cấp đầu tiên. Người dùng U mong muốn mua hợp đồng bảo hiểm, ví dụ: người tạo mục tiêu hợp đồng SC, có thể gửi yêu cầu tới một công ty bảo hiểm phi tập trung về số tiền hợp đồng $M trên hợp đồng. Khi phê duyệt U, công ty bảo hiểm có thể đặt ra thời hạn liên tục (ví dụ: hàng tháng) phí bảo hiểm $P trong SCins. Trong khi U trả phí bảo hiểm, hợp đồng của cô ấy vẫn có hiệu lực. Nếu xảy ra lỗi báo cáo trong SC thì kết quả sẽ là phát ra một cặp (r1, r2) về các báo cáo xung đột cho SC, trong đó r1 được ký bởi cấp đầu tiên trong cơ chế của chúng tôi và r2, báo cáo đã sửa tương ứng, được cấp thứ hai ký. Nếu U cung cấp một cặp hợp lệ (r1, r2) cho SCins, hợp đồng sẽ tự động trả cho cô ấy M $, với điều kiện là các khoản thanh toán phí bảo hiểm của cô ấy được cập nhật. 9,5 Biến thể một vòng Giao thức được mô tả trong tiểu mục trước yêu cầu ủy ban cấp hai đợi n vòng để xác định xem cơ quan giám sát có đưa ra cảnh báo hay không. Cái này yêu cầu vẫn đúng ngay cả trong trường hợp lạc quan, tức là khi tầng đầu tiên hoạt động một cách chính xác. Đối với người dùng không muốn chấp nhận các báo cáo một cách lạc quan, tức là trước khi có khả năng xảy ra xét xử, sự chậm trễ liên quan đến cách tiếp cận đó sẽ không thể thực hiện được. Vì lý do này, chúng tôi cũng đang khám phá các giao thức thay thế chỉ yêu cầu một tròn. Theo cách tiếp cận này, tất cả các nút oracle gửi các bit bí mật cho biết có hay không họ muốn đưa ra một cảnh báo. Ủy ban cấp hai sau đó sẽ kiểm tra các giá trị này trong thứ tự ưu tiên. Để cung cấp một bản phác thảo thô, sơ đồ như vậy có thể bao gồm những điều sau đây: các bước: 1. Gửi bit cơ quan giám sát: Mỗi nút Oi chia sẻ bí mật một giá trị cơ quan giám sát một bit wi ∈{không có cảnh báo, cảnh báo} giữa các nút ở cấp thứ hai cho mỗi báo cáo mà nó tạo ra. 2. Mẹo ẩn danh: Bất kỳ nút oracle nào cũng có thể gửi mẹo ẩn danh α tới ủy ban cấp hai trong cùng vòng mà các bit cơ quan giám sát được gửi. Mẹo này à là thông báo cho biết cảnh báo đã được đưa ra cho báo cáo hiện tại. 3. Kiểm tra bit cơ quan giám sát: Ủy ban cấp hai tiết lộ cơ quan giám sát của nút oracle các bit theo thứ tự ưu tiên. Lưu ý rằng các nút không được gửi các bit cơ quan giám sát cảnh báo khi chúng không cảnh báo: nếu không, phân tích lưu lượng sẽ tiết lộ tất cả các bit của nút. Giao thức không tiết lộ cảnh báo không các bit cơ quan giám sát của các nút có mức độ ưu tiên cao hơn cơ quan giám sát cảnh báo có mức ưu tiên cao nhất. Quan sát rằng những gì được tiết lộ giống hệt với giao thức vòng n của chúng tôi. Phần thưởng cũng được phân phối giống hệt với chương trình đó, tức là cơ quan giám sát được xác định đầu tiên nhận được khoản tiền gửi bị cắt giảm của các nút đã gửi báo cáo không chính xác.Việc sử dụng các mẹo ẩn danh cho phép ủy ban cấp hai duy trì trạng thái không tương tác trong trường hợp không có cảnh báo nào được đưa ra, giảm độ phức tạp trong giao tiếp trong trường hợp thông thường. Lưu ý rằng bất kỳ cơ quan giám sát nào đưa ra cảnh báo đều có động cơ kinh tế để gửi mẹo ẩn danh: Nếu không gửi mẹo nào, sẽ không có phần thưởng nào được trả cho bất kỳ ai. nút. Để đảm bảo rằng người gửi Oi của một mẹo ẩn danh α không thể được xác định bởi đối thủ dựa trên dữ liệu mạng, mẹo ẩn danh có thể được gửi qua địa chỉ ẩn danh kênh, ví dụ: thông qua Tor hoặc thực tế hơn là được ủy quyền thông qua nhà cung cấp dịch vụ đám mây. Đến xác thực mẹo có nguồn gốc từ O, Oi có thể ký α bằng chữ ký vòng [39, 192]. Ngoài ra, để ngăn chặn các cuộc tấn công từ chối dịch vụ không thể phân bổ nhằm vào ủy ban cấp hai bằng nút oracle độc hại, α có thể là thông tin xác thực ẩn danh với ẩn danh có thể hủy bỏ [73]. Giao thức này, mặc dù có thể đạt được trên thực tế, nhưng có kỹ thuật hơi nặng nề yêu cầu (mà chúng tôi đang tìm cách giảm bớt). Ví dụ, các nút cấp một, phải giao tiếp trực tiếp với các nút cấp hai, yêu cầu duy trì một thư mục. Nhu cầu về các kênh ẩn danh và chữ ký vòng làm tăng thêm kỹ thuật sự phức tạp của sơ đồ. Cuối cùng, có một yêu cầu tin cậy đặc biệt được thảo luận ngắn gọn trong ghi chú dưới đây. Do đó, chúng tôi cũng đang khám phá các kế hoạch đơn giản hơn mà vẫn đạt được tác động siêu tuyến tính staking, nhưng có lẽ ít hơn bậc hai, chẳng hạn, trong đó kẻ hối lộ tiệm cận cần tài nguyên ít nhất $n log n. Một số phương án theo việc xem xét liên quan đến việc lựa chọn ngẫu nhiên một tập hợp con nghiêm ngặt các nút để hoạt động như cơ quan giám sát, trong trường hợp đó việc hối lộ tiềm năng sẽ trở thành một cuộc tấn công đặc biệt mạnh mẽ. Nhận xét: Tính bảo mật của cơ chế staking một vòng này yêu cầu không thể truy cập được các kênh giữa oracle và các nút cấp hai—một yêu cầu tiêu chuẩn trong các hệ thống chống cưỡng chế, ví dụ: biểu quyết [82, 138] và một yêu cầu hợp lý trong thực tế. Tuy nhiên, ngoài ra, nút Oi tìm cách hợp tác với kẻ hối lộ có thể xây dựng các chia sẻ bí mật của nó theo cách để cho kẻ hối lộ thấy rằng nó đã mã hóa một thông tin cụ thể giá trị. Ví dụ: nếu Oi không biết kẻ hối lộ kiểm soát nút nào thì Oi có thể gửi cổ phiếu có giá trị 0 cho tất cả các thành viên ủy ban. Sau đó, kẻ hối lộ có thể xác minh Oi tuân thủ theo xác suất. Để tránh vấn đề này trong bất kỳ giao thức một vòng nào, chúng tôi yêu cầu Oi biết danh tính của ít nhất một nút cấp hai trung thực. Với giao thức tương tác trong đó mỗi nút cấp hai thêm một sự ngẫu nhiên yếu tố chia sẻ, điều tốt nhất mà kẻ hối lộ có thể làm là ép buộc Oi lựa chọn ngẫu nhiên chút canh gác. 9,6 Khung khuyến khích tiềm ẩn (IIF) FFO là một hình thức khuyến khích ngầm cho hành vi đúng trong mạng Chainlink. Nó các chức năng như cổ phần rõ ràng, tức là tiền gửi, trong đó nó giúp thực thi an ninh kinh tế cho mạng lưới. Nói cách khác, FFO nên được đưa vào như một phần của khoản tiền gửi (có hiệu lực) $d của một nút trong mạng.Câu hỏi đặt ra là: Làm cách nào để đo lường FFO và các hình thức khuyến khích tiềm ẩn khác? trong mạng Chainlink? Khung khuyến khích tiềm ẩn (IIF) là một tập hợp các nguyên tắc và kỹ thuật mà chúng tôi dự định phát triển cho mục đích này. Hệ thống chuỗi khối cung cấp nhiều hình thức minh bạch chưa từng có và các bản ghi có độ tin cậy cao của nút hiệu suất mà họ tạo ra là bàn đạp cho tầm nhìn của chúng tôi về cách thức hoạt động của IIF. Ở đây chúng tôi phác thảo rất ngắn gọn các ý tưởng về các yếu tố chính của IIF. Bản thân IIF sẽ bao gồm một tập hợp các yếu tố mà chúng tôi xác định là quan trọng trong việc đánh giá các biện pháp khuyến khích tiềm ẩn, cùng với các cơ chế xuất bản dữ liệu liên quan ở dạng có độ bảo đảm cao để các thuật toán phân tích sử dụng. Những người dùng Chainlink khác nhau có thể muốn sử dụng IIF theo nhiều cách khác nhau, ví dụ: đưa ra trọng số khác nhau cho các yếu tố khác nhau. Chúng tôi hy vọng các dịch vụ phân tích sẽ xuất hiện trong cộng đồng giúp người dùng áp dụng IIF theo sở thích đánh giá rủi ro cá nhân của họ và mục tiêu của chúng tôi là tạo điều kiện thuận lợi các dịch vụ đó bằng cách đảm bảo quyền truy cập của họ vào dữ liệu hỗ trợ kịp thời và có độ bảo đảm cao, như chúng ta thảo luận dưới đây (Phần 9.6.4). 9.6.1 Cơ hội phí trong tương lai Các nút tham gia vào hệ sinh thái Chainlink để kiếm được một phần phí mà mạng chi trả cho bất kỳ dịch vụ nào trong số các dịch vụ khác nhau mà chúng tôi đã mô tả trong bài viết này, từ nguồn cấp dữ liệu thông thường đến các dịch vụ nâng cao như nhận dạng phi tập trung, sắp xếp công bằng, và bảo mật DeFi. Các khoản phí trong mạng Chainlink hỗ trợ chi phí của người vận hành nút, ví dụ: chạy máy chủ, lấy giấy phép dữ liệu cần thiết và duy trì một đội ngũ nhân viên toàn cầu để đảm bảo thời gian hoạt động cao. FFO biểu thị phí dịch vụ, chi phí ròng, rằng một nút sẽ được lợi trong tương lai—hoặc bị mất nếu nó thể hiện hành vi bị lỗi. FFO là một hình thức stake giúp bảo mật mạng. Một tính năng hữu ích của FFO là dữ liệu trên chuỗi (được bổ sung bởi các dữ liệu ngoài chuỗi data) thiết lập bản ghi có độ tin cậy cao về lịch sử của nút, cho phép tính toán FFO một cách minh bạch, mang tính thực nghiệm. Một phép đo FFO đơn giản, bậc nhất có thể được lấy từ doanh thu ròng trung bình của một nút trong một khoảng thời gian (tức là tổng doanh thu trừ đi chi phí hoạt động). FFO có thể sau đó được tính như sau, ví dụ: giá trị hiện tại ròng [114] của doanh thu ròng tích lũy trong tương lai, nói cách khác, giá trị chiết khấu theo thời gian của tất cả thu nhập trong tương lai. Tuy nhiên, doanh thu từ nút có thể không ổn định, như minh họa trong Hình 17. Quan trọng hơn, doanh thu từ nút có thể không tuân theo sự phân phối cố định theo thời gian. Do đó, các yếu tố khác mà chúng tôi dự định khám phá khi ước tính FFO bao gồm: • Lịch sử hiệu suất: Lịch sử hiệu suất của nhà điều hành—bao gồm tính chính xác và kịp thời của các báo cáo cũng như thời gian hoạt động của nó—cung cấp một mục tiêu tiêu chuẩn để người dùng đánh giá độ tin cậy của nó. Do đó, lịch sử hiệu suất sẽ cung cấp yếu tố quan trọng trong việc người dùng lựa chọn các nút oracle (hoặc, với sự xuất hiện trong số DONs, lựa chọn DONs của họ). Một lịch sử hiệu suất mạnh mẽ có thể tương quan với doanh thu liên tục cao.18 18Một câu hỏi nghiên cứu quan trọng mà chúng tôi dự định giải quyết là phát hiện khối lượng dịch vụ giả mạo.Hình 17: Doanh thu kiếm được từ các nút Chainlink trên một nguồn cấp dữ liệu duy nhất (ETH-USD) trong một tuần điển hình vào tháng 3 năm 2021. • Truy cập dữ liệu: Mặc dù oracles có thể lấy nhiều dạng dữ liệu từ các API mở, một số dạng dữ liệu nhất định hoặc một số nguồn chất lượng cao nhất định có thể chỉ có sẵn trên một cơ sở đăng ký hoặc thông qua các thỏa thuận hợp đồng. Quyền truy cập đặc quyền vào một số nguồn dữ liệu có thể đóng vai trò tạo ra nguồn doanh thu ổn định. • Sự tham gia của DON: Với sự xuất hiện của DONs, cộng đồng các nút sẽ xuất hiện cùng nhau cung cấp các dịch vụ cụ thể. Chúng tôi hy vọng rằng nhiều DON sẽ bao gồm các nhà khai thác trên cơ sở chọn lọc, thiết lập sự tham gia vào các DON có uy tín với tư cách là một vị trí thị trường đặc quyền giúp đảm bảo nguồn doanh thu ổn định. • Hoạt động đa nền tảng: Một số nhà khai thác nút có thể có sự hiện diện và hồ sơ theo dõi hiệu suất được thiết lập tốt trong các bối cảnh khác, ví dụ: như PoS validators hoặc nhà cung cấp dữ liệu trong ngữ cảnh không phải blockchain. Hiệu suất của chúng trong các hệ thống khác này (khi dữ liệu trên đó có sẵn ở dạng đáng tin cậy) có thể đưa ra đánh giá lịch sử hoạt động của họ. Tương tự, hành vi bị lỗi trong mạng Chainlink có thể gây nguy hiểm cho doanh thu trong các hệ thống khác này bằng cách khiến người dùng rời xa, tức là FFO có thể mở rộng trên các nền tảng. 9.6.2 FFO đầu cơ Các nhà khai thác nút tham gia vào mạng Chainlink không chỉ để tạo doanh thu từ mà là tạo dựng và định vị bản thân để tận dụng các cơ hội mới để thực hiện công việc. Nói cách khác, chi tiêu của các nút oracle trong mạng cũng tuyên bố tích cực về tương lai của DeFi và ứng dụng hợp đồng thông minh khác các miền cũng như các ứng dụng không thuộc blockchain mới nổi của mạng oracle. Các nhà khai thác nút ngày nay kiếm được khoản phí có sẵn trên các mạng Chainlink hiện có và đồng thời Những điều này gần giống với các đánh giá giả mạo trên các trang internet, ngoại trừ vấn đề dễ xảy ra hơn ở phần oracle cài đặt vì chúng tôi có hồ sơ chính xác về việc hàng hóa, tức là các báo cáo, đã được đặt hàng và chưa được giao—trái ngược với, ví dụ: hàng hóa vật chất được đặt hàng trong các cửa hàng trực tuyến. Nói cách khác, trong oracle cài đặt, hiệu suất có thể được xác thực, ngay cả khi tính xác thực của khách hàng không thể.xây dựng danh tiếng, lịch sử hoạt động và chuyên môn điều hành sẽ định vị họ một cách thuận lợi để kiếm được phí sẵn có trong các mạng trong tương lai (tất nhiên, về hành vi trung thực). Các nút hoạt động trong hệ sinh thái Chainlink ngày nay sẽ tham gia vào việc này cảm thấy có lợi thế hơn người mới trong việc kiếm thêm phí Chainlink dịch vụ trở nên sẵn có. Lợi thế này áp dụng cho các nhà khai thác mới cũng như các công ty công nghệ đã có danh tiếng; ví dụ: T-Systems, một công ty truyền thống nhà cung cấp công nghệ (công ty con của Deutsche Telekom) và Kraken, một công ty tập trung lớn Exchange, đã thiết lập sự hiện diện sớm trong hệ sinh thái Chainlink [28, 143]. Sự tham gia như vậy của các nút oracle trong các cơ hội trong tương lai có thể được coi là chính nó như một loại FFO đầu cơ và do đó tạo thành một dạng cổ phần trong Chainlink mạng. 9.6.3 Danh tiếng bên ngoài IIF như chúng tôi đã mô tả, nó có thể hoạt động trong một mạng có biệt danh hoàn toàn các nhà điều hành, tức là không tiết lộ những người hoặc các thực thể trong thế giới thực có liên quan. Tuy nhiên, một yếu tố quan trọng tiềm tàng đối với việc người dùng lựa chọn nhà cung cấp là bên ngoài. danh tiếng. Khi nói đến danh tiếng bên ngoài, chúng tôi muốn nói đến nhận thức về độ tin cậy gắn liền với danh tính trong thế giới thực chứ không phải là bút danh. Rủi ro danh tiếng gắn liền với danh tính trong thế giới thực có thể được xem như một hình thức khuyến khích ngầm. Chúng tôi xem danh tiếng thông qua lăng kính của IIF, tức là theo nghĩa kinh tế học mật mã, như một phương tiện để thiết lập hoạt động đa nền tảng có thể được đưa vào ước tính FFO. Lợi ích của việc sử dụng danh tiếng bên ngoài làm yếu tố ước tính FFO, trái ngược với với liên kết biệt danh, là danh tiếng bên ngoài liên kết hiệu quả hoạt động không chỉ với các hoạt động hiện tại của nhà điều hành cũng như các hoạt động trong tương lai. Ví dụ, nếu mang tiếng xấu gắn liền với một cá nhân, nó có thể làm hoen ố doanh nghiệp tương lai của người đó. Nói cách khác, danh tiếng bên ngoài có thể nắm bắt được phạm vi FFO rộng hơn so với bút danh hồ sơ hoạt động, vì tác động của hành vi sai trái gắn liền với một người hoặc tổ chức công ty khó trốn thoát hơn công ty liên quan đến hoạt động dưới danh nghĩa. Chainlink tương thích với các công nghệ nhận dạng phi tập trung (Phần 4.3) có thể cung cấp hỗ trợ cho việc sử dụng danh tiếng bên ngoài trong IIF. Những công nghệ như vậy có thể xác nhận và do đó giúp đảm bảo tính xác thực của các nhà khai thác trong thế giới thực được khẳng định danh tính.19 9.6.4 Mở phân tích IIF IIF, như chúng tôi đã lưu ý, nhằm mục đích cung cấp các công cụ và dữ liệu nguồn mở đáng tin cậy cho phân tích khuyến khích ngầm. Mục tiêu là cho phép các nhà cung cấp trong cộng đồng để phát triển các phân tích phù hợp với nhu cầu đánh giá rủi ro của các bộ phận khác nhau trong Chainlink cơ sở người dùng. 19Thông tin xác thực danh tính phi tập trung cũng có thể, nếu muốn, tô điểm cho các bút danh bằng các tên đã được xác thực thông tin bổ sung. Ví dụ: về nguyên tắc, người vận hành nút có thể sử dụng thông tin xác thực đó để chứng minh rằng đó là công ty Fortune 500 mà không tiết lộ đó là công ty nào.Một lượng dữ liệu lịch sử đáng kể liên quan đến doanh thu và hiệu suất của các nút nằm trên chuỗi ở dạng có độ tin cậy cao, không thể thay đổi. Tuy nhiên, mục tiêu của chúng tôi là cung cấp dữ liệu toàn diện nhất có thể, bao gồm dữ liệu về các hành vi chỉ có thể nhìn thấy được chuỗi, chẳng hạn như hoạt động Báo cáo Off-Chain (OCR) hoặc DON. Những dữ liệu như vậy có khả năng hãy đồ sộ. Cách tốt nhất để lưu trữ và đảm bảo tính toàn vẹn của nó, tức là bảo vệ nó khỏi chúng tôi tin rằng việc giả mạo sẽ được thực hiện với sự trợ giúp của DONs, sử dụng các kỹ thuật được thảo luận trong Phần 3.3. Một số khuyến khích phù hợp với các hình thức đo lường trực tiếp, chẳng hạn như staking tiền gửi và FFO cơ bản. Những thứ khác, chẳng hạn như FFO đầu cơ và danh tiếng, khó bị ảnh hưởng hơn. đo lường một cách khách quan, nhưng chúng tôi tin rằng các dạng dữ liệu hỗ trợ, bao gồm sự phát triển lịch sử của hệ sinh thái Chainlink, số liệu về danh tiếng trên mạng xã hội, v.v., có thể hỗ trợ các mô hình phân tích IIF ngay cả đối với các yếu tố khó định lượng hơn này. Chúng ta có thể tưởng tượng rằng DON chuyên dụng phát sinh đặc biệt để giám sát, xác thực và ghi lại dữ liệu liên quan đến bản ghi hiệu suất ngoài chuỗi của các nút, cũng như các dữ liệu khác được sử dụng trong IIF, chẳng hạn như thông tin nhận dạng được xác thực. Những DON này có thể cung cấp dữ liệu IIF thống nhất, có độ tin cậy cao cho bất kỳ nhà cung cấp phân tích nào phục vụ cộng đồng Chainlink. Họ cũng sẽ cung cấp một bản ghi vàng đưa ra tuyên bố của các nhà cung cấp phân tích được cộng đồng xác minh độc lập. 9,7 Kết hợp tất cả lại với nhau: Khuyến khích người vận hành nút Tổng hợp các cuộc thảo luận của chúng tôi ở trên về các ưu đãi rõ ràng và tiềm ẩn đối với các nhà khai thác nút cung cấp cái nhìn toàn diện về cách mà các nhà khai thác nút tham gia và hưởng lợi từ mạng Chainlink. Theo hướng dẫn khái niệm, chúng tôi có thể biểu thị tổng tài sản đang bị đe dọa bằng Chainlink nhất định toán tử nút $S ở dạng thô, cách điệu như: \(S ≈\)D + \(F + \)FS + $R, ở đâu: • $D là tổng hợp của tất cả cổ phần được ký gửi rõ ràng trên tất cả các mạng trong đó người điều hành tham gia; • $F là giá trị hiện tại ròng của tổng hợp tất cả FFO trên tất cả các mạng trong mà nhà điều hành tham gia; • $FS là giá trị hiện tại ròng của FFO đầu cơ của nhà điều hành; và • $R là giá trị danh tiếng của nhà điều hành bên ngoài hệ sinh thái Chainlink có thể bị nguy hiểm do hành vi sai trái được xác định trong các nút oracle của nó. Mặc dù phần lớn chỉ mang tính khái niệm, nhưng sự bình đẳng sơ bộ này cho thấy một cách hữu ích rằng có rất nhiều yếu tố kinh tế ủng hộ hiệu suất có độ tin cậy cao của các nút Chainlink. Tất cả những yếu tố này ngoài $D đều có trong mạng Chainlink ngày nay.9,8 Chu kỳ đạo đức của an ninh kinh tế Sự kết hợp giữa tác động siêu tuyến tính staking với việc thể hiện các khoản thanh toán phí vì cơ hội phí trong tương lai (FFO) trong IIF có thể dẫn đến cái mà chúng ta gọi là chu kỳ đạo đức về an ninh kinh tế trong mạng oracle. Đây có thể coi là một loại hình kinh tế về quy mô. Khi tổng số tiền được bảo đảm bởi một mạng cụ thể tăng lên, số lượng số cổ phần bổ sung cần có để tăng thêm một lượng cố định về an ninh kinh tế sẽ giảm đi chi phí trung bình cho mỗi người dùng. Do đó, về mặt phí, người dùng tham gia sẽ rẻ hơn một mạng lưới đã tồn tại hơn là đạt được mức tăng trưởng kinh tế mạng tương tự bảo mật bằng cách tạo ra một mạng mới. Điều quan trọng là việc thêm mỗi người dùng mới sẽ làm giảm chi phí dịch vụ cho tất cả người dùng trước đây của mạng đó. Với một cấu trúc phí cụ thể (ví dụ: tỷ suất lợi nhuận cụ thể trên số tiền đặt cược), nếu tổng phí mà mạng kiếm được tăng lên, điều này sẽ khuyến khích dòng tiền bổ sung tham gia vào mạng để bảo mật nó ở mức cao hơn. Cụ thể, nếu tổng số cổ phần một nút riêng lẻ có thể giữ trong hệ thống bị giới hạn, sau đó khi thanh toán phí mới vào hệ thống, tăng FFO của nó, số lượng nút n sẽ tăng lên. Nhờ có tác động siêu tuyến tính staking của thiết kế hệ thống khuyến khích của chúng tôi, an ninh kinh tế của hệ thống sẽ tăng nhanh hơn n, ví dụ như n2 trong cơ chế chúng ta phác họa ở Phần 9.4. Kết quả là, chi phí trung bình cho an ninh kinh tế - tức là lượng cổ phần đóng góp một đô la an ninh kinh tế – sẽ giảm. Do đó, mạng có thể tính phí người dùng của nó phí thấp hơn. Giả sử rằng nhu cầu về dịch vụ oracle co giãn (xem ví dụ: [31] để biết thông tin tóm tắt giải thích), nhu cầu sẽ tăng lên, tạo ra phí bổ sung và FFO. Chúng tôi minh họa điểm này bằng ví dụ sau. Ví dụ 5. Vì tính bảo mật kinh tế của mạng oracle với sự khuyến khích của chúng tôi kế hoạch là \(dn2 for stake \)dn, an ninh kinh tế được đóng góp bởi một đô la cổ phần là n và do đó chi phí trung bình trên mỗi đô la của an ninh kinh tế—tức là số lượng cổ phần đóng góp vào một đô la an ninh kinh tế - là 1/n. Hãy xem xét một mạng lưới trong đó các khuyến khích kinh tế bao gồm toàn bộ FFO, có giới hạn ở mức \(d ≤\)10K mỗi nút. Giả sử mạng có n = 3 nút. Khi đó chi phí trung bình mỗi đô la an ninh kinh tế là khoảng 0,33 đô la. Giả sử tổng FFO của mạng tăng lên trên \(30K (e.g., to \)31K). Cho giới hạn trên FFO mỗi nút, mạng sẽ tăng lên (ít nhất) n = 4. Bây giờ chi phí trung bình mỗi đô la an ninh kinh tế giảm xuống còn khoảng 0,25 đô la. Chúng tôi minh họa chu trình tốt đẹp đầy đủ của an ninh kinh tế trong các mạng oracle một cách sơ đồ trong Hình 18. Chúng tôi nhấn mạnh rằng chu kỳ lành mạnh của an ninh kinh tế bắt nguồn từ hiệu ứng người dùng gộp phí của họ. Đó là FFO tập thể của họ hoạt động vì lợi ích lớn hơn quy mô mạng và do đó an ninh tập thể lớn hơn. Chúng tôi cũng lưu ý rằng chu kỳ đạo đức của an ninh kinh tế hoạt động có lợi cho DON đạt được sự bền vững về tài chính. Một lần đã tạo, DON đáp ứng nhu cầu của người dùng sẽ tăng lên đến mức mà tại đó doanh thu từ phí vượt quá chi phí hoạt động cho oracle nút.



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

Conclusão
Neste artigo, apresentamos uma visão para a evolução de Chainlink. O tema principal nesta visão está a capacidade das redes oracle de fornecer uma gama muito mais ampla de serviços para smart contracts do que a mera entrega de dados. Usando DONs como base para os serviços descentralizados do futuro, Chainlink terá como objetivo fornecer funcionalidade oracle de desempenho e confidencialidade aprimorada. Suas redes oracle oferecerão forte minimização de confiança através de uma combinação de mecanismos criptoeconômicos de princípios, como staking e guarda-corpos cuidadosamente concebidos e aplicação do nível de serviço em cadeias principais confiáveis. DONs também ajudarão os sistemas de camada 2 a aplicar políticas de pedidos flexíveis e justas nas transações, bem como a reduzir os custos de gás para transações roteadas em mempool. Tomados em conjunto, todos esses recursos direcionam na direção de sistemas inteligentes híbridos seguros e altamente funcionais contratos. A flexibilidade dos DONs irá melhorar os serviços Chainlink existentes e dar origem a muitos recursos e aplicativos smart contract adicionais. Entre estes estão perfeitos conexão a uma ampla variedade de sistemas fora da cadeia, criação descentralizada de identidade a partir de dados existentes, canais prioritários para ajudar a garantir a entrega oportuna de recursos críticos para a infraestrutura transações e instrumentos de preservação de confidencialidade DeFi. A visão que apresentamos aqui é ambiciosa. No curto prazo, procuramos capacitar contratos híbridos para cumprir metas além do alcance de smart contracts hoje, enquanto no longo prazo, pretendemos realizar uma metacamada descentralizada. Felizmente podemos desenhar em novas ferramentas e ideias – desde algoritmos de consenso até prova de conhecimento zero sistemas – que a comunidade está desenvolvendo como fruto de pesquisas em rápida evolução.
Da mesma forma, esperamos priorizar a implementação das ideias deste documento em resposta às necessidades da comunidade de usuários de Chainlink. Estamos ansiosos pela próxima etapa em nossa busca para capacitar smart contracts por meio da conectividade universal e estabelecer tecnologias descentralizadas como a espinha dorsal da próxima geração de recursos financeiros do mundo e sistemas jurídicos. Agradecimentos Agradecimentos a Julian Alterini e Shawn Lee pela representação das figuras neste artigo.
Phần kết luận
Trong bài viết này, chúng tôi đã đặt ra tầm nhìn về sự phát triển của Chainlink. Chủ đề chính trong tầm nhìn này là khả năng của các mạng oracle trong việc cung cấp phạm vi dịch vụ rộng hơn nhiều cho smart contracts hơn là chỉ phân phối dữ liệu. Sử dụng DON làm nền tảng cho các dịch vụ phi tập trung trong tương lai, Chainlink sẽ nhằm mục đích cung cấp chức năng oracle được nâng cao hiệu quả, bảo mật. Mạng oracle của nó sẽ cung cấp khả năng giảm thiểu tin cậy mạnh mẽ thông qua sự kết hợp của các cơ chế kinh tế mật mã nguyên tắc như staking và các đường ray bảo vệ được hình thành cẩn thận và thực thi cấp độ dịch vụ dựa trên các chuỗi chính. DONs cũng sẽ giúp các hệ thống lớp 2 thực thi các chính sách đặt hàng công bằng, linh hoạt đối với các giao dịch cũng như giảm chi phí gas cho các giao dịch được định tuyến theo mempool. Gộp lại với nhau, tất cả những khả năng này đều hướng tới sự an toàn và đa chức năng kết hợp thông minh hợp đồng. Tính linh hoạt của DON sẽ nâng cao các dịch vụ Chainlink hiện có và làm phát sinh nhiều tính năng và ứng dụng smart contract bổ sung. Trong số này là liền mạch kết nối với nhiều hệ thống ngoài chuỗi, tạo danh tính phi tập trung từ dữ liệu hiện có, các kênh ưu tiên để giúp đảm bảo cung cấp kịp thời các cơ sở hạ tầng quan trọng giao dịch và các công cụ DeFi bảo mật bí mật. Tầm nhìn chúng tôi đặt ra ở đây đầy tham vọng. Trong ngắn hạn, chúng tôi tìm cách trao quyền hợp đồng kết hợp để hoàn thành các mục tiêu ngoài tầm với của smart contract giây hôm nay, trong khi về lâu dài, chúng tôi mong muốn hiện thực hóa một lớp kim loại phi tập trung. Thật hạnh phúc khi chúng ta có thể vẽ về các công cụ và ý tưởng mới—từ thuật toán đồng thuận đến bằng chứng không có kiến thức hệ thống—mà cộng đồng đang phát triển là thành quả của nghiên cứu đang phát triển nhanh chóng.
Tương tự, chúng tôi hy vọng sẽ ưu tiên thực hiện các ý tưởng trong bài viết này để đáp ứng đáp ứng nhu cầu của cộng đồng người dùng Chainlink. Chúng tôi mong chờ giai đoạn tiếp theo trong nỗ lực của chúng tôi nhằm trao quyền cho smart contract thông qua kết nối toàn cầu và thiết lập công nghệ phi tập trung như là xương sống của thế hệ tài chính tiếp theo của thế giới và các hệ thống pháp luật. Lời cảm ơn Cảm ơn Julian Alterini và Shawn Lee đã đưa ra các số liệu trong bài viết này.