Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?

Haut hunn nëmmen déi Lazy net iwwer Blockchain Technologie, Krypto-Währungen geschriwwen a wéi cool et ass. Awer dësen Artikel wäert dës Technologie net luewen, mir schwätzen iwwer seng Mängel a Weeër fir se ze eliminéieren.

Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?

Wärend un engem vun de Projete bei Altirix Systems geschafft huet, ass d'Aufgab vun der sécherer, zensurbeständeger Bestätegung vun Daten aus enger Quell extern zum Blockchain entstanen. Et war néideg Ännerungen an den records vum drëtte System ze bestätegen an, baséiert op dësen Ännerungen, eng oder aner Branche an der Smart Kontrakt Logik auszeféieren. D'Aufgab op den éischte Bléck ass zimmlech trivial, awer wann de finanziellen Zoustand vun enger vun de Parteien, déi um Prozess deelhuelen, hänkt vum Resultat vu senger Ëmsetzung of, erschéngen zousätzlech Ufuerderungen. Als éischt ass dëst iwwergräifend Vertrauen an esou engem Validatiounsmechanismus. Awer éischt Saachen éischt.

De Problem ass datt de Blockchain selwer eng autonom, zougemaach Entitéit ass, sou datt déi intelligent Kontrakter bannent der Blockchain näischt iwwer d'Äussewelt wëssen. Zur selwechter Zäit sinn d'Konditioune vu Smart Kontrakter dacks mat Informatioun iwwer real Saachen (Flugverzögerung, Währungssätz, etc.) Zesummenhang. Fir intelligent Kontrakter richteg ze funktionnéieren, muss d'Informatioun, déi vun ausserhalb vum Blockchain kritt gëtt, zouverlässeg a verifizéiert sinn. Dëse Problem gëtt geléist andeems Dir Orakelen wéi Town Crier an DECO benotzt. Dës Orakel erlaaben e Smart Kontrakt am Blockchain Netzwierk fir Informatioun vun engem vertrauenswürdege Webserver ze vertrauen, kënne mir soen datt dës Ubidder vun zouverléissege Informatioun sinn.

Orakel

Stellt Iech vir datt e Smart Kontrakt 0.001 btc op Äre Bitcoin Portemonnaie transferéiert wann Äre Liiblingsfussballclub de russesche Coupe gewënnt. Am Fall vun enger richteger Victoire muss de Smart Kontrakt Informatioun iwwerdroen iwwer wéi ee Veräin gewonnen huet, an hei entstinn eng Rei Probleemer: Wou kritt een dës Informatioun, wéi een se sécher an de Smart Kontrakt transferéiert a wéi sécherzestellen datt d'Informatiounen am Smart Kontrakt kritt ass gëlteg eigentlech gläichzäiteg mat Realitéit?

Wann et ëm d'Quell vun Informatioun kënnt, kënnen et 2 Szenarie sinn: e Smart Kontrakt op eng zouverléisseg Websäit verbannen, wou Informatioun iwwer Matchresultater zentral gespäichert ass, an déi zweet Optioun ass verschidde Siten gläichzäiteg ze verbannen an dann Informatioun aus de meeschte Quellen auswielen déi déiselwecht Donnéeën ubidden. Fir d'Korrektheet vun der Informatioun z'iwwerpréiwen, ginn Orakel benotzt, zum Beispill Oraclize, déi TLSNotary benotzt (TLS Notaire Modifikatioun fir d'Authentizitéit vun den Donnéeën ze beweisen). Awer et gëtt genuch Informatioun op Google iwwer Oraclize, an et gi verschidde Artikelen iwwer Habré Haut wäert ech iwwer Orakelen schwätzen, déi eng liicht aner Approche benotze fir Informatioun ze vermëttelen: Town Crier an DECO. Den Artikel bitt eng Beschreiwung vun den Operatiounsprinzipien vu béide Orakelen, wéi och en detailléierte Verglach.

Stad Krier

Town Crier (TC) gouf vum IC3 (The Initiative for Cryptocurrency and Contracts) am Joer 2016 op CCS'16 agefouert. D'Haaptidee vum TC: Transfert Informatioun vun enger Websäit op e Smart Kontrakt a gitt sécher datt d'Informatioun geliwwert vum TC d'selwecht ass wéi op der Websäit. TC benotzt TEE (Trusted Execution Environment) fir d'Datebesëtzer ze authentifizéieren. D'Original Versioun vun TC beschreift wéi mat Intel SGX ze schaffen.
Town Crier besteet aus engem Deel am Blockchain an engem Deel am OS selwer - TC Server.
Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?
TC Kontrakt ass op der Blockchain an handelt als Frontend fir TC. Et acceptéiert Ufroe vun der CU (Benotzer Smart Kontrakt) a gëtt eng Äntwert vum TC Server zréck. Bannen am TC Server gëtt et e Relais, deen eng Verbindung tëscht der Enclave an dem Internet (bidirektionalen Traffic) etabléiert an d'Enclave mat der Blockchain verbënnt. Enclave enthält progencl, wat Code ass, deen Ufroe vum Blockchain mécht a Messagen un de Blockchain mat enger digitaler Ënnerschrëft zréckginn, progencl enthält en Deel vum Smart Kontrakt Code a mécht am Wesentlechen e puer vu senge Funktiounen aus.

D'Intel SGX Enclave kann als gemeinsame Bibliothéik geduecht ginn mat enger API déi iwwer Ecall leeft. Ecall iwwerdroen d'Kontroll an d'Enclave. D'Enklave fiert säi Code aus bis et erausgeet oder bis eng Ausnam geschitt. Fir Funktiounen ausserhalb vun der Enclave definéiert ze ruffen, gëtt ocall benotzt. Ocall gëtt ausserhalb vun der Enclave ausgefouert a gëtt als en net vertrauenswürdege Ruff behandelt. Nom ocall ausgefouert gëtt, gëtt d'Kontroll an d'Enclave zréckgezunn.
Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?
Am Enclave Deel ass e séchere Kanal mat engem Webserver konfiguréiert, d'Enclave selwer mécht en TLS Handshake mam Zilserver a mécht all kryptografesch Operatiounen intern. D'TLS-Bibliothéik (mbedTLS) a reduzéierter HTTP-Code goufen an d'SGX-Ëmfeld exportéiert. Och Enclave enthält Root CA Certificaten (eng Sammlung vun Certificaten) fir d'Zertifikater vu Fernserveren z'iwwerpréiwen. De Request Handler akzeptéiert eng Datagram Ufro am Format vum Ethereum geliwwert, entschlësselt et a parséiert et. Da generéiert et eng Ethereum Transaktioun mat dem ugefrote Datagram, ënnerschreift et mat skTC a schéckt se op de Relais.

De Relais Deel enthält Client Interface, TCP, Blockchain Interface. De Client Interface ass néideg fir den Enclave Code ze zertifiéieren a mam Client ze kommunizéieren. De Client schéckt eng Attestation Ufro benotzt ecall a kritt en Zäitstempel ënnerschriwwen vun skTC zesumme mat Att (Attestatioun Ënnerschrëft), da gëtt att mat Intel Attestation Service verifizéiert (IAS), an den Zäitstempel gëtt vun engem zouverléissege Zäitservice verifizéiert. Blockchain Interface verifizéiert erakommen Ufroen a setzt Transaktiounen op der Blockchain fir d'Liwwerung vun Datagrammen. Geth ass en offiziellen Ethereum Client an erlaabt Relais mat der Blockchain iwwer RPC Uriff ze interagéieren.

Schafft mat TEE, TC erlaabt Iech e puer Enklaven parallel ze lafen, wouduerch d'Geschwindegkeet vun der Informatiounsveraarbechtung ëm 3 Mol eropgeet. Wann mat enger lafender Enclave d'Geschwindegkeet 15 tx / sec war, da mat 20 parallel lafende Enklaven erhéicht d'Geschwindegkeet op 65 tx / sec zum Verglach, ass déi maximal Operatiounsgeschwindegkeet am Bitcoin Blockchain 26 tx / sec.

DECO

DECO (Decentralized Oracles for TLS) war op CCS'20 presentéiert, schafft mat Siten déi TLS Verbindungen ënnerstëtzen. Assuréiert Datenvertraulechkeet an Integritéit.
DECO mat TLS benotzt symmetresch Verschlësselung, sou datt de Client an de Webserver Verschlësselungsschlësselen hunn, an de Client kann TLS Sessiounsdaten formuléieren wann et wëllt. Fir dëse Problem ze léisen, benotzt DECO en Dräi-Wee-Handshake-Protokoll tëscht dem Prover (Smart Kontrakt), Verifizéierer (Oracle) a Web-Server (Datenquell).

Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?

De Wee DECO funktionnéiert ass datt de Verifizéierer e Stéck Daten D kritt an dem Verifizéierer bestätegt datt D vum TLS Server S koum. En anere Problem ass datt TLS d'Donnéeën net ënnerschreift an et schwéier ass fir den TLS Client ze beweisen datt de Donnéeën goufen aus genee de richtege Server kritt (Provenenz Schwieregkeeten).

Den DECO Protokoll benotzt KEnc a KMac Verschlësselungsschlësselen. De Client schéckt eng Ufro Q un de Webserver, d'Äntwert vum Server R kënnt a verschlësselte Form, awer de Client an de Server besëtzen deeselwechte KMac, an de Client kann den TLS Message schmieden. Dem DECO seng Léisung ass de KMac vum Client (Prover) ze "verstoppen" bis en op d'Ufro reagéiert. Elo ass KMac opgedeelt tëscht Prover a Verifizéierer - KpMac a KvMac. De Server kritt KMac fir d'Äntwert ze verschlësselen mat der Schlësseldeeloperatioun KpMac ⊕ KvMac = KMac.

Andeems Dir en Dräi-Wee-Handshake opstellt, gëtt den Datenaustausch tëscht dem Client an dem Server mat enger Garantie vu Sécherheet duerchgefouert.
Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?
Wann Dir iwwer en dezentraliséierten Orakelsystem schwätzt, kann een net versoen Chainlink ze ernimmen, wat zielt fir en dezentraliséierten Netzwierk vun Orakelnoden kompatibel mat Ethereum, Bitcoin an Hyperledger ze kreéieren, andeems d'Modularitéit berücksichtegt gëtt: all Deel vum System kann aktualiséiert ginn. Zur selwechter Zäit, fir d'Sécherheet ze garantéieren, bitt Chainlink all Orakel, deen un der Aufgab deelhëlt, eng Kombinatioun vu Schlësselen (ëffentlech a privat) auszeginn. De private Schlëssel gëtt benotzt fir eng partiell Ënnerschrëft ze generéieren déi hir Entscheedung iwwer d'Datenufro enthält. Fir eng Äntwert ze kréien, ass et néideg all deelweis Ënnerschrëfte vun den Orakelen vum Netz ze kombinéieren.

Chainlink plangt en initialen PoC DECO ze maachen mat engem Fokus op dezentraliséierter Finanzapplikatiounen wéi Mixicles. Zu der Zäit vum Schreiwen koumen Neiegkeeten op Forbes eraus datt Chainlink DECO vun der Cornell University kaaft huet.

Attacken op Orakel

Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?

Aus Informatiounssécherheetssiicht goufen déi folgend Attacken op Town Crier ugesinn:

  1. Rogue Smart-Kontakt Code Injektioun op TEE Wirbelen.
    D'Essenz vun der Attack: Iwwerdroung vun engem bewosst falsche Smart Kontrakt Code op TEE, also, en Ugräifer, deen Zougang zum Node krut, kann säin eegene (fraudulenten) Smart Kontrakt op den entschlësselten Donnéeën ausféieren. Wéi och ëmmer, d'Retourwäerter wäerte mat engem private Schlëssel verschlësselt ginn, an deen eenzege Wee fir Zougang zu sou Donnéeën ze kréien ass de Chiffertext beim Retour / Ausgang ze lecken.
    De Schutz géint dësen Attack besteet aus der Enklave déi d'Korrektheet vum Code op der aktueller Adress iwwerpréift. Dëst kann mat engem Adressschema erreecht ginn, wou d'Kontraktadress bestëmmt gëtt andeems de Kontraktcode hashing.

  2. Kontrakt Staat Chiffertext Ännerungen Leck.
    D'Essenz vum Attack: Besëtzer vun Noden, op deenen Smart Kontrakter ausgefouert ginn, hunn Zougang zum Kontraktstaat a verschlësselte Form ausserhalb vun der Enclave. En Ugräifer, deen d'Kontroll vun engem Node gewonnen huet, kann de Kontaktzoustand virun an no der Transaktioun vergläichen a bestëmmen wéi eng Argumenter agefouert goufen a wéi eng Smart Kontraktmethod benotzt gouf, well de Smart Kontrakt Code selwer a seng technesch Spezifikatioune sinn ëffentlech verfügbar.
    Schutz fir d'Zouverlässegkeet vum Node selwer ze garantéieren.

  3. Säit-Kanal Attacken.
    Eng speziell Aart vun Attack, déi d'Iwwerwaachung vun der Enclave Erënnerung a Cache Zougang a verschiddene Szenarie benotzt. E Beispill vun esou engem Attack ass Prime a Probe.
    Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?
    Attack Uerdnung:

    • t0: Den Ugräifer fëllt de ganzen Datekache vum Afferprozess.
    • t1: D'Affer exekutéiert Code mat Erënnerung Zougang datt op d'Affer sensibel Donnéeën (kryptographesch Schlësselen) hänkt. D'Cache Linn gëtt ausgewielt op Basis vum Keybit Wäert. Am Beispill an der Figur ass keybit = 0 an d'Adress X an der Cache Linn 2 gëtt gelies.
    • t2: Den Ugräifer iwwerpréift wéi eng vu senge Cache-Zeilen evictéiert goufen - Linnen déi vum Affer benotzt ginn. Dëst gëtt gemaach andeems Dir Zougangszäit moosst. Andeems Dir dës Operatioun fir all Keybit widderhëlt, kritt den Ugräifer de ganze Schlëssel.

Attack Schutz: Intel SGX huet Schutz géint Säit-Channel Attacken, déi d'Iwwerwaachung vu Cache-relatéierten Eventer verhënnert, awer e Prime- a Probe-Attack funktionnéiert nach ëmmer, well den Ugräifer d'Cache-Evenementer vu sengem Prozess iwwerwaacht an de Cache mat dem Affer deelt.
Town Crier vs DECO: wéi en Orakel fir am Blockchain ze benotzen?
Also, am Moment gëtt et keen zouverléissege Schutz géint dësen Attack.

Attacke wéi Spectre a Foreshadow (L1TF), ähnlech wéi Prime a Probe, sinn och bekannt. Si erlaben Iech Daten aus Cache Memory duerch en Drëtt Partei Kanal ze liesen. Schutz géint d'Spectre-v2 Schwachstelle gëtt zur Verfügung gestallt, wat géint zwee vun dësen Attacke funktionnéiert.

Am Zesummenhang mat DECO bitt den Dräi-Wee-Handshake eng Sécherheetsgarantie:

  1. Prover Integritéit: En gehackte Prover kann d'Serverursprungsinformatioun net fälschen a kann net verursaachen datt de Server ongëlteg Ufroe akzeptéiert oder falsch op valabel Ufroe reagéiert. Dëst gëtt duerch Ufromuster tëscht Server a Prover gemaach.
  2. Verifizéierungsintegritéit: En gehackte Verifizéierer kann net verursaachen datt de Beweis falsch Äntwerten kritt.
  3. Privatsphär: Den gehackte Verifizéierer ënnersicht nëmmen ëffentlech Informatioun (Ufro, Servernumm).

Am DECO sinn nëmme Schwachstelle vu Verkéiersinjektioun méiglech. Als éischt, mat engem Dräi-Wee Handshake, kann de Verifizéierer d'Identitéit vum Server mat enger frëscher Nonce feststellen. Wéi och ëmmer, nom Handshake, muss de Verifizéierer op Netzwierkschichtindikatoren (IP Adressen) vertrauen. Also muss d'Kommunikatioun tëscht dem Verifizéierer an dem Server vu Verkéiersinjektioun geschützt sinn. Dëst gëtt erreecht andeems Dir Proxy benotzt.

Verglach vun Orakel

Town Crier baséiert op enger Aarbecht mat enger Enclave am Server Deel, iwwerdeems DECO erlaabt Iech d'Authentizitéit vun der Hierkonft vun Donnéeën mat engem Dräierkoalitioun Handshake an Dateverschlësselung mat cryptographic Schlëssel z'iwwerpréiwen. Verglach vun dësen Orakel gouf no de folgende Critèren duerchgefouert: Leeschtung, Sécherheet, Käschten a Praktikitéit.

Stad Krier
DECO

Leeschtung
Méi séier (0.6s bis zum Schluss)
Méi lues (10.50s fir de Protokoll fäerdeg ze maachen)

Sécherheet
Manner sécher
Méi sécher

Käschte vun
Méi deier
Méi bëlleg

Praxis
Verlaangt speziell Hardware
Schafft mat all Server deen TLS ënnerstëtzt

Schnell Leeschtung: Fir eng Aarbecht mat DECO, engem Dräierkoalitioun Handshake néideg, wann via LAN Ariichten et dauert 0.37 Sekonnen, fir Interaktioun no der Verbindung etabléiert ass, 2PC-HMAC effikass (0,13 s pro schreiwen). Dem DECO seng Leeschtung hänkt vun den verfügbaren TLS Chiffer Suiten, der Gréisst vun de privaten Donnéeën, an der Komplexitéit vun de Beweiser fir eng bestëmmte Applikatioun of. Benotzt d'binär Optiounsapplikatioun vum IC3 als Beispill: de Protokoll iwwer LAN fäerdeg ze maachen dauert ongeféier 10,50 Sekonnen. Zum Verglach hëlt Town Crier ongeféier 0,6 Sekonnen fir eng ähnlech Applikatioun ze kompletéieren, wat ongeféier 20 Mol méi séier ass wéi DECO. Alles wat gläich ass, wäert TC méi séier sinn.

Sécherheet: Attacken op der Intel SGX Enclave (Säit-Kanal Attacken) Aarbecht a kann real Schued un de Participanten vun der Smart Kontrakt Ursaach. Wat DECO ugeet, sinn Attacken am Zesummenhang mat Verkéiersinjektioun méiglech, awer d'Benotzung vun engem Proxy reduzéiert esou Attacken op näischt. Dofir ass DECO méi sécher.

Käschte vun: D'Käschte vun Ausrüstung déi Intel SGX ënnerstëtzt ass méi héich wéi d'Käschte fir de Protokoll am DECO opzestellen. Dofir ass TC méi deier.

Praktikitéit: Fir eng Aarbecht mat Town Crier, speziell Ausrüstung déi TEE ënnerstëtzt ass néideg. Zum Beispill gëtt Intel SGX op der 6. Generatioun Intel Core Prozessor Famill a spéider ënnerstëtzt. DECO erlaabt Iech mat all Ausrüstung ze schaffen, obwuel et eng DECO-Astellung gëtt mat TEE. Geméiss dem Setupprozess kann dem DECO säin Dräi-Wee-Handshake e bëssen Zäit daueren, awer dëst ass näischt am Verglach mat der Hardwarebegrenzung vum TC, sou datt DECO méi praktesch ass.

Konklusioun

Wann Dir déi zwee Orakelen getrennt kuckt an se op véier Critèren vergläicht, ass et kloer datt Town Crier op dräi vu véier Punkte manner wéi DECO ass. DECO ass méi zouverlässeg aus Informatiounssécherheetssiicht, méi bëlleg a méi praktesch, obwuel d'Opstelle vun engem Dräi-Partei-Protokoll e bëssen Zäit daueren kann an seng Nodeeler huet, zum Beispill zousätzlech Operatiounen mat Verschlësselungsschlësselen. TC ass méi séier wéi DECO, awer Säit-Kanal Attack Schwachstelle maachen et ufälleg fir Verloscht vu Vertraulechkeet. Et muss berücksichtegt ginn datt DECO am Januar 2020 agefouert gouf, an net genuch Zäit ass vergaangen fir et sécher ze betruechten. Town Crier ass ënner Attack fir 4 Joer an ass duerch vill Tester gaangen, sou datt seng Notzung a ville Projeten gerechtfäerdegt ass.

Source: will.com

Setzt e Commentaire