{"id":93794,"date":"2020-09-10T07:42:27","date_gmt":"2020-09-10T05:42:27","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/town-crier-vs-deco-kakoj-orakul-ispolzovat-v-blokchejne"},"modified":"2020-09-10T07:42:27","modified_gmt":"2020-09-10T05:42:27","slug":"town-crier-vs-deco-kakoj-orakul-ispolzovat-v-blokchejne","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/town-crier-vs-deco-kakoj-orakul-ispolzovat-v-blokchejne","title":{"rendered":"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Heutzutage hat nur derjenige, der faul ist, nicht \u00fcber die Blockchain-Technologie, Kryptow\u00e4hrungen und wie cool das ist, geschrieben. In diesem Artikel wird es jedoch nicht um das Lob dieser Technologie gehen, sondern wir werden uns vielmehr mit ihren Nachteilen und m\u00f6glichen L\u00f6sungen befassen. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/af435f4c102071d7248778ff5354ed5e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>W\u00e4hrend der Arbeit an einem der Projekte bei Altirics Systems stellte sich die Aufgabe der sicheren, zensurresistenten Best\u00e4tigung von Daten aus einer externen Quelle f\u00fcr die Blockchain. Es war notwendig, \u00c4nderungen in den Datens\u00e4tzen eines dritten Systems zu best\u00e4tigen und auf Grundlage dieser \u00c4nderungen in der Logik des Smart Contracts entweder diesen oder jenen Pfad auszuf\u00fchren. Die Aufgabe erschien zun\u00e4chst recht trivial, aber wenn das Ergebnis ihrer Ausf\u00fchrung vom finanziellen Zustand einer der am Prozess beteiligten Parteien abh\u00e4ngt, kommen zus\u00e4tzliche Anforderungen hinzu. Dabei handelt es sich vor allem um das umfassende Vertrauen in einen solchen Validierungsmechanismus. Aber lassen Sie uns der Reihe nach vorgehen. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Das Problem besteht darin, dass die Blockchain an sich ein autonomes, geschlossenes Objekt darstellt, weshalb Smart Contracts innerhalb der Blockchain nichts \u00fcber die Au\u00dfenwelt wissen. Gleichzeitig sind die Bedingungen von Smart Contracts h\u00e4ufig mit Informationen \u00fcber reale Dinge (Flugversp\u00e4tungen, Wechselkurse usw.) verkn\u00fcpft. Damit Smart Contracts ordnungsgem\u00e4\u00df funktionieren, muss die von au\u00dferhalb der Blockchain erhaltene Information zuverl\u00e4ssig und \u00fcberpr\u00fcft sein. Dieses Problem wird durch die Verwendung von Orakeln wie Town Crier und DECO gel\u00f6st. Diese Orakel erm\u00f6glichen es dem Smart Contract in einem Blockchain-Netzwerk, den Informationen von einem \u00fcberpr\u00fcften Webserver zu vertrauen, man kann sagen, dass es sich um Lieferanten zuverl\u00e4ssiger Informationen handelt. <\/p>\n<p><\/p>\n<h1 id=\"orakuly\">Orakel<\/h1>\n<p><\/p>\n<p>Stellen Sie sich vor, ein Smart Contract \u00fcberweist 0,001 BTC auf Ihre Bitcoin-Brieftasche im Falle des Sieges Ihres Lieblingsfu\u00dfballvereins im russischen Pokal. Im Falle eines tats\u00e4chlichen Sieges muss dem Smart Contract mitgeteilt werden, welcher Verein gewonnen hat, und hier treten einige Probleme auf: Woher bekommen wir diese Informationen, wie \u00fcbermitteln wir sie sicher an den Smart Contract und wie stellen wir sicher, dass die Informationen, die in den Smart Contract gelangen, tats\u00e4chlich mit der Realit\u00e4t \u00fcbereinstimmen? <\/p>\n<p><\/p>\n<p>Es gibt zwei Szenarien hinsichtlich der Informationsquelle: die Verbindung eines Smart Contracts mit einer vertrauensw\u00fcrdigen Website, auf der die Informationen \u00fcber die Spielergebnisse zentral gespeichert sind, und die zweite M\u00f6glichkeit - die Anbindung mehrerer Websites, um die Informationen aus den meisten Quellen auszuw\u00e4hlen, die die gleichen Daten liefern. Um die Richtigkeit der Informationen zu \u00fcberpr\u00fcfen, werden Orakel verwendet, beispielsweise Oraclize, das TLSNotary nutzt (eine Modifikation von TLS zur Nachweisf\u00fchrung der Datenauthentizit\u00e4t). Zu Oraclize gibt es gen\u00fcgend Informationen bei Google, und auf Habr gibt es mehrere Artikel. Ich werde heute \u00fcber Orakel sprechen, die einen etwas anderen Ansatz zur \u00dcbertragung von Informationen verwenden: Town Crier und DECO. Der Artikel beschreibt die Funktionsweise beider Orakel sowie einen detaillierten Vergleich. <\/p>\n<p><\/p>\n<h1 id=\"town-crier\">Town Crier<\/h1>\n<p><\/p>\n<p>Town Crier (TC) wurde 2016 auf der CCS'16 von IC3 (The Initiative for CryptoCurrencies and Contracts) vorgestellt. Die Hauptidee von TC besteht darin, Informationen von einer Website an einen Smart Contract zu \u00fcbertragen und sicherzustellen, dass die \u00fcber TC bereitgestellten Informationen mit denen auf der Website \u00fcbereinstimmen. TC verwendet TEE (Trusted Execution Environment) zur Gew\u00e4hrleistung der Datenauthentizit\u00e4t. Im Original wird die Arbeit mit Intel SGX beschrieben.<br \/>\nTown Crier besteht aus einem Teil innerhalb der Blockchain und einem Teil innerhalb des Betriebssystems selbst \u2013 dem TC Server.<br \/>\n<img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/d94251340bfe563ca69bf74c358caf62.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nDer TC Contract befindet sich in der Blockchain und fungiert als Frontend f\u00fcr TC. Er empf\u00e4ngt Anfragen vom CU (Smart Contract des Benutzers) und gibt Antworten vom TC Server zur\u00fcck. Innerhalb des TC Servers befindet sich ein Relay, das die Verbindung zwischen dem Enklave und dem Internet (bidirektionaler Datenverkehr) herstellt und die Enklave mit der Blockchain verbindet. Die Enklave enth\u00e4lt progencl, der den Code darstellt, der Anfragen aus der Blockchain ausf\u00fchrt und Nachrichten mit digitaler Signatur zur\u00fcck in die Blockchain sendet. Progencl enth\u00e4lt Teile des Smart Contract-Codes und f\u00fchrt im Wesentlichen einige seiner Funktionen aus. <\/p>\n<p><\/p>\n<p>Die Intel SGX-Enklave kann als eine allgemeine Bibliothek mit API betrachtet werden, die \u00fcber ecall funktioniert. Ecall \u00fcbertr\u00e4gt die Kontrolle an die Enklave. Die Enklave f\u00fchrt ihren Code aus, bis er abgeschlossen ist oder eine Ausnahme auftritt. F\u00fcr den Aufruf von Funktionen, die au\u00dferhalb der Enklave definiert sind, werden ocall verwendet. Ocall wird au\u00dferhalb der Enklave ausgef\u00fchrt und vom System als unsicherer Aufruf behandelt. Nach der Ausf\u00fchrung von ocall wird die Kontrolle an die Enklave zur\u00fcckgegeben.<br \/>\n<img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/6b4e0952862d6fe8597793cac03e760c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nIm Enclave wird ein sicherer Kanal mit dem Webserver eingerichtet, das Enclave f\u00fchrt das TLS-Handschlag mit dem Zieldatenserver durch und f\u00fchrt alle kryptografischen Operationen intern aus. Die TLS-Bibliothek (mbedTLS) und der HTTP-Code in verkleinerter Form wurden in die SGX-Umgebung exportiert. Au\u00dferdem enth\u00e4lt das Enclave Root-CA-Zertifikate (eine Sammlung von Zertifikaten), um die Zertifikate von entfernten Servern zu \u00fcberpr\u00fcfen. Der Request Handler nimmt das Datagramm im Format entgegen, das von Ethereum bereitgestellt wird, entschl\u00fcsselt es und analysiert es. Anschlie\u00dfend generiert er eine Ethereum-Transaktion, die das angeforderte Datagramm enth\u00e4lt, signiert es mit skTC und \u00fcbergibt es an den Relay.<\/p>\n<p><\/p>\n<p>Der Relay-Bereich umfasst die Client-Schnittstelle, TCP und die Blockchain-Schnittstelle. Die Client-Schnittstelle ist notwendig f\u00fcr die Attestation des Enclave-Codes und die Verbindung zum Client. Der Client sendet eine Anfrage zur Attestation \u00fcber ecall und erh\u00e4lt einen Zeitstempel, der mit skTC signiert ist, zusammen mit att (dem Attestierungszeichen), danach wird att \u00fcber den Intel Attestation Service (IAS) best\u00e4tigt, und der Zeitstempel wird durch einen vertrauensw\u00fcrdigen Zeitdienst \u00fcberpr\u00fcft. Die Blockchain-Schnittstelle \u00fcberpr\u00fcft die eingehenden Anfragen und platziert die Transaktionen in der Blockchain zur Lieferung der Datagrams. Geth ist der offizielle Ethereum-Client und erm\u00f6glicht es dem Relay, \u00fcber RPC-Calls mit der Blockchain zu interagieren. <\/p>\n<p><\/p>\n<p>Durch die Arbeit mit TEE erm\u00f6glicht TC das gleichzeitige Starten mehrerer Enclaves, wodurch die Informationsverarbeitungsgeschwindigkeit um das Dreifache erh\u00f6ht wird. Wenn bei einem laufenden Enclave die Geschwindigkeit 15 tx\/sec betrug, steigt sie bei 20 parallel gestarteten Enclaves auf 65 tx\/sec, zum Vergleich: die maximale Geschwindigkeit im Bitcoin-Blockchain betr\u00e4gt 26 tx\/sec.<\/p>\n<p><\/p>\n<h1 id=\"deco\">DECO<\/h1>\n<p><\/p>\n<p>DECO (Dezentrale Orakel f\u00fcr TLS) wurde auf CCS\u201920 vorgestellt und funktioniert mit Websites, die TLS-Verbindungen unterst\u00fctzen. Es gew\u00e4hrleistet die Vertraulichkeit und Integrit\u00e4t der Daten.<br \/>\nDECO mit TLS verwendet symmetrische Verschl\u00fcsselung, sodass der Client und der Webserver Verschl\u00fcsselungsschl\u00fcssel haben, und der Client kann, wenn er m\u00f6chte, die TLS-Sitzungsdaten f\u00e4lschen. Um dieses Problem zu l\u00f6sen, verwendet DECO ein dreiseitiges Handshake-Protokoll zwischen prover (Smart Contract), verifier (Oracle) und web-server (Datenquelle).<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/17245f0af8d3cf448291652fd58312f2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Der Arbeitsprinzip von DECO besteht darin, dass der pr\u00fcfende (prover) einen Teil der Daten D erh\u00e4lt und dem verifizierer (verifier) best\u00e4tigt, dass D vom TLS-Server S stammt. Ein weiteres Problem besteht darin, dass TLS die Daten nicht signiert und es dem TLS-Client schwerf\u00e4llt zu beweisen, dass die Daten von genau diesem Server stammen (Provenance-Schwierigkeit). <\/p>\n<p><\/p>\n<p>Im DECO-Protokoll werden die Verschl\u00fcsselungsschl\u00fcssel KEnc und KMac verwendet. Der Client sendet eine Anfrage Q an <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/de\/server\/\"   title=\"einen Webserver\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1157\">einen Webserver<\/a>, die Antwort des Servers R kommt in verschl\u00fcsselter Form, aber der Client und der Server besitzen die gleichen KMacs, sodass der Client die TLS-Nachricht f\u00e4lschen kann. Die L\u00f6sung von DECO besteht darin, KMac vor dem Client (prover) zu \"verstecken\", bis dieser auf die Anfrage antwortet. Nun ist KMac zwischen prover und verifier aufgeteilt \u2013 KpMac und KvMac. Der Server erh\u00e4lt KMac zur Verschl\u00fcsselung der Antwort mittels der Operation der Schl\u00fcsselteile KpMac \u2295 KvMac = KMac.<\/p>\n<p><\/p>\n<p>Durch die Einrichtung eines dreiseitigen Handshakes wird der Austausch von Daten zwischen Client und Server mit einer Sicherheitsgarantie durchgef\u00fchrt.<br \/>\n<img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/2d6405ae1e7e2b283539d3a4bd8c315c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nWenn es um das System der dezentralisierten Orakel geht, muss Chainlink erw\u00e4hnt werden, das eine dezentrale Netzwerkarchitektur von Orakel-Knoten anstrebt, die mit Ethereum, Bitcoin und Hyperledger kompatibel ist, unter Ber\u00fccksichtigung der Modularit\u00e4t: Jeder Teil des Systems kann aktualisiert werden. Um die Sicherheit zu gew\u00e4hrleisten, bietet Chainlink jedem Orakel, das an einer Aufgabe beteiligt ist, eine Kombination von Schl\u00fcsseln (\u00f6ffentlich und privat) an. Der private Schl\u00fcssel wird verwendet, um eine partielle Unterschrift zu generieren, die ihre L\u00f6sung f\u00fcr die Datenanforderung enth\u00e4lt. Um die Antwort zu erhalten, ist die Kombination aller partiellen Unterschriften der Netzwerkorakel erforderlich.<\/p>\n<p><\/p>\n<p>Chainlink plant die Durchf\u00fchrung eines ersten PoC DECO mit dem Fokus auf dezentralisierte Finanzanwendungen wie Mixicles. Zum Zeitpunkt des Schreibens wurde in den Nachrichten von Forbes berichtet, dass Chainlink DECO von der Cornell University erworben hat.<\/p>\n<p><\/p>\n<h1 id=\"ataki-na-orakuly\">Angriffe auf Orakel<\/h1>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/ce964b3961f4b0035f96e33777ed77d0.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Aus der Perspektive der Informationssicherheit wurden die folgenden Angriffe auf Town Crier betrachtet:<\/p>\n<p><\/p>\n<ol>\n<li>\n<p>Rogue-Smart-Contract-Code-Injektion auf TEE-Knoten.<br \/>\nDas Wesen des Angriffs besteht darin, einen absichtlich falschen Smart-Contract-Code in die TEE zu \u00fcbertragen, sodass ein Angreifer, der Zugang zum Knoten hat, seinen eigenen (betr\u00fcgerischen) Smart-Contract auf entschl\u00fcsselte Daten ausf\u00fchren kann. Die zur\u00fcckgegebenen Werte werden jedoch mit dem privaten Schl\u00fcssel verschl\u00fcsselt, und die einzige M\u00f6glichkeit, auf solche Daten zuzugreifen, besteht darin, dass der verschl\u00fcsselte Text bei der R\u00fcckgabe\/\u00dcbertragung ausl\u00e4uft.<br \/>\nDer Schutz vor diesem Angriff besteht darin, dass der Enklave die Richtigkeit des Codes an der aktuellen Adresse \u00fcberpr\u00fcft. Dies kann durch ein Addressing-Schema erreicht werden, bei dem die Adresse des Vertrags durch das Hashing des Codes des Vertrags bestimmt wird. <\/p>\n<p>\n<\/li>\n<li>\n<p>\u00c4nderungen des Verschl\u00fcsselungszustands des Vertrags f\u00fchren zu Leaks.<br \/>\nDie Essenz des Angriffs: Die Betreiber von Knoten, auf denen Smart Contracts ausgef\u00fchrt werden, haben Zugriff auf den Contract-State in verschl\u00fcsselter Form au\u00dferhalb des Enklave. Ein Angreifer, der die Kontrolle \u00fcber den Knoten erlangt, kann den Contract-State vor und nach der Ausf\u00fchrung der Transaktion vergleichen und ermitteln, welche Argumente \u00fcbergeben wurden und welche Methode des Smart Contracts verwendet wurde, da der Code des Smart Contracts und seine technischen Spezifikationen \u00f6ffentlich zug\u00e4nglich sind.<br \/>\nSchutz zur Gew\u00e4hrleistung der Zuverl\u00e4ssigkeit des Knotens selbst.<\/p>\n<p>\n<\/li>\n<li>\n<p>Seitenkanalangriffe.<br \/>\nEine spezielle Art von Angriffen, die das Monitoring des Zugriffs auf den Speicher und den Cache der Enklave in verschiedenen Szenarien nutzt. Ein Beispiel f\u00fcr einen solchen Angriff ist Prime and Probe.<br \/>\n<img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/df57664f060e294b969f96dda8a69b32.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nAblauf des Angriffs:<\/p>\n<p><\/p>\n<ul>\n<li>t0: Der Angreifer f\u00fcllt den gesamten Datencache des Zielprozesses.<\/li>\n<li>t1: Das Ziel f\u00fchrt Code mit Speicherzugriffen aus, die von vertraulichen Daten des Opfers abh\u00e4ngen (kryptografische Schl\u00fcssel). Die Auswahl der Cache-Linie erfolgt anhand des Wertes keybit. Im Beispiel auf der Abbildung ist keybit = 0 und die Adresse X in Cache-Linie 2 wurde gelesen. Die Daten, die in X gespeichert sind, werden in den Cache geladen und verdr\u00e4ngen die zuvor dort gespeicherten Daten. <\/li>\n<li>t2: Der Angreifer pr\u00fcft, welche seiner Cache-Zeilen verdr\u00e4ngt wurden - die Zeilen, die vom Opfer verwendet wurden. Dies geschieht durch Messung der Zugriffszeit. Indem er diese Operation f\u00fcr jedes keybit wiederholt, erh\u00e4lt der Angreifer den gesamten Schl\u00fcssel. <\/li>\n<\/ul>\n<p>\n<\/li>\n<\/ol>\n<p><\/p>\n<p>Schutz vor dem Angriff: In Intel SGX gibt es einen Schutz gegen Seitenkanalangriffe, der das Monitoring von cachebezogenen Ereignissen verbietet, aber der Angriff Prime and Probe wird trotzdem durchgehen, da der Angreifer die Cache-Ereignisse seines Prozesses \u00fcberwacht und den Cache mit dem Opfer teilt.<br \/>\n<img decoding=\"async\" alt=\"Town Crier vs DECO: welcher Orakel soll im Blockchain verwendet werden?\" src=\"\/wp-content\/uploads\/2020\/09\/9b2821eedacc189f44cf903aad0fdba3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nSomit gibt es derzeit keinen zuverl\u00e4ssigen Schutz gegen diesen Angriff.<\/p>\n<p><\/p>\n<p>Es sind auch Angriffe vom Typ Spectre und Foreshadow (L1TF) bekannt, die den Angriff Prime and Probe \u00e4hneln. Sie erm\u00f6glichen das Auslesen von Daten aus dem Cache \u00fcber einen Seitenkanal. Es gibt einen Schutz gegen die Spectre-v2-Schwachstelle, die gegen diese beiden Angriffe wirkt. <\/p>\n<p><\/p>\n<p>In Bezug auf DECO bietet das dreiseitige Handshake Sicherheitsgarantien: <\/p>\n<p><\/p>\n<ol>\n<li>Prover-Integrit\u00e4t: Ein gehackter Prover kann keine Informationen zur Herkunft des Servers f\u00e4lschen und kann den Server nicht dazu bringen, ung\u00fcltige Anfragen anzunehmen oder falsch auf g\u00fcltige Anfragen zu antworten. Dies wird durch Anfragevorlagen zwischen Server und Prover realisiert. <\/li>\n<li>Verifier-Integrit\u00e4t: Ein gehackter Verifier kann den Prover nicht dazu bringen, falsche Antworten zu erhalten.<\/li>\n<li>Vertraulichkeit: Der gehackte Verifier betrachtet nur \u00f6ffentliche Informationen (Anfrage, Servername).<\/li>\n<\/ol>\n<p><\/p>\n<p>In DECO sind nur Schwachstellen in Zusammenhang mit Traffikanalysen m\u00f6glich. Zun\u00e4chst kann der Verifier beim Triple-Handshake die Identit\u00e4t des Servers mit einem frischen Nonce feststellen. Nach dem Handshake muss der Verifier jedoch auf Netzwerkebene (<a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/de\/lir\/ipv4\/\"   title=\"IP-Adressen\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"674\">IP-Adressen<\/a>) vertrauen. So muss die Verbindung zwischen Verifier und Server vor Traffikanalysen gesch\u00fctzt werden. Dies wird durch die Verwendung eines Proxys erreicht.<\/p>\n<p><\/p>\n<h1 id=\"sravnenie-orakulov\">Vergleich der Orakel<\/h1>\n<p><\/p>\n<p>Town Crier basiert auf der Arbeit mit einem Enklave auf der Serverseite, DECO hingegen erm\u00f6glicht die Authentifizierung der Herkunft von Daten durch einen Triple-Handshake und Verschl\u00fcsselung von Daten mit kryptografischen Schl\u00fcsseln. Der Vergleich der Daten der Orakel wurde nach folgenden Kriterien durchgef\u00fchrt: Geschwindigkeit, Sicherheit, Kosten und Praktikabilit\u00e4t. <\/p>\n<p><\/p>\n<p>Town Crier<br \/>\nDECO<\/p>\n<p>Geschwindigkeit<br \/>\nSchneller (0,6 s bis zum Abschluss)<br \/>\nLangsam (10,50 s bis zum Abschluss des Protokolls)<\/p>\n<p>Sicherheit<br \/>\nWeniger sicher<br \/>\nSicherer<\/p>\n<p>Kosten<br \/>\nTeurer<br \/>\nG\u00fcnstiger<\/p>\n<p>Praktikabilit\u00e4t<br \/>\nBen\u00f6tigt spezielle Hardware<br \/>\nFunktioniert mit jedem Server, der TLS unterst\u00fctzt<\/p>\n<p><\/p>\n<p><strong>Geschwindigkeit<\/strong>: F\u00fcr die Arbeit mit DECO ist die Einrichtung eines Triple-Handshakes erforderlich, was bei der Einrichtung \u00fcber LAN 0,37 Sekunden dauert, und f\u00fcr die Interaktion nach Verbindungserstellung ist 2PC-HMAC (0,13 s beim Schreiben) effektiv. Die Leistung von DECO h\u00e4ngt von den verf\u00fcgbaren TLS-Verschl\u00fcsselungsalgorithmen, der Menge an pers\u00f6nlichen Daten und der Komplexit\u00e4t der Beweise f\u00fcr eine bestimmte Anwendung ab. Am Beispiel der Bin\u00e4roptionen-App von IC3: Der Abschluss des Protokolls \u00fcber LAN dauert etwa 10,50 s. Zum Vergleich ben\u00f6tigt Town Crier f\u00fcr die Durchf\u00fchrung einer \u00e4hnlichen Anwendung ungef\u00e4hr 0,6 Sekunden, also etwa 20 Mal schneller als DECO. Unter gleichen Bedingungen wird TC schneller sein. <\/p>\n<p><\/p>\n<p><strong>Sicherheit<\/strong>: Angriffe auf die Intel SGX-Enklave (Seitenkanalangriffe) funktionieren und k\u00f6nnen den Teilnehmern des Smart Contracts echten Schaden zuf\u00fcgen. In Bezug auf DECO sind Angriffe in Verbindung mit Traffikanalysen m\u00f6glich, aber die Verwendung eines Proxys macht solche Angriffe unwirksam. Daher ist DECO sicherer.<\/p>\n<p><\/p>\n<p><strong>Kosten<\/strong>: Die Kosten f\u00fcr Hardware, die mit Intel SGX arbeitet, sind h\u00f6her als die Kosten f\u00fcr die Einrichtung des Protokolls in DECO. Daher ist TC teurer.<\/p>\n<p><\/p>\n<p><strong>Praktikabilit\u00e4t<\/strong>: F\u00fcr die Arbeit mit Town Crier ist spezielle Hardware erforderlich, die TEE unterst\u00fctzt. Zum Beispiel wird Intel SGX auf Prozessoren der Intel Core 6. Generation und neuer unterst\u00fctzt. DECO hingegen erm\u00f6glicht die Arbeit mit beliebiger Hardware, obwohl es eine DECO-Konfiguration mit Verwendung von TEE gibt. Beim Einrichtungsprozess kann das dreiseitige Handshake bei DECO etwas Zeit in Anspruch nehmen, jedoch steht dies in keinem Vergleich zu den Hardwarebeschr\u00e4nkungen f\u00fcr TC, weshalb DECO praktischer ist.<\/p>\n<p><\/p>\n<h1 id=\"zaklyuchenie\">Fazit<\/h1>\n<p><\/p>\n<p>Wenn man die beiden Orakel einzeln betrachtet und sie nach vier Kriterien vergleicht, wird deutlich, dass Town Crier in drei von vier Punkten hinter DECO zur\u00fcckbleibt. DECO ist in Bezug auf Informationssicherheit zuverl\u00e4ssiger, kosteng\u00fcnstiger und praktischer, obwohl die Einrichtung des dreiseitigen Protokolls etwas Zeit in Anspruch nehmen und Nachteile mit sich bringen kann, wie z. B. zus\u00e4tzliche Operationen mit Verschl\u00fcsselungsschl\u00fcsseln. TC arbeitet schneller als DECO, aber die Verwundbarkeit im Zusammenhang mit Side-Channel-Angriffen macht es anf\u00e4llig f\u00fcr den Verlust der Vertraulichkeit. Es ist zu beachten, dass DECO im Januar 2020 pr\u00e4sentiert wurde und noch nicht gen\u00fcgend Zeit vergangen ist, um es als sicher zu betrachten. Town Crier wird seit 4 Jahren angegriffen und hat viele \u00dcberpr\u00fcfungen durchlaufen, weshalb sein Einsatz in vielen Projekten gerechtfertigt ist.<\/p>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/518234\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u043d\u0438\u0432\u044b\u0439 \u043d\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u0440\u043e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d, \u043a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u044b \u0438 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u043e \u043a\u0440\u0443\u0442\u043e. \u041d\u043e \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0441\u0445\u0432\u0430\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u043e\u0439 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438, \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043a\u0430\u043a \u0440\u0430\u0437 \u043e \u0435\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u0445 \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u0445 \u0438\u0445 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f. \u0412\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0434 \u043e\u0434\u043d\u0438\u043c \u0438\u0437 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0410\u043b\u044c\u0442\u0438\u0440\u0438\u043a\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u0441, \u043f\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u0437\u0430\u0434\u0430\u0447\u0430 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u043e\u0433\u043e, \u0446\u0435\u043d\u0437\u0443\u0440\u043e\u0441\u0442\u043e\u0439\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0432\u043d\u0435\u0448\u043d\u0435\u0433\u043e \u0434\u043b\u044f \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":93795,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-93794","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u043d\u0438\u0432\u044b\u0439 \u043d\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u0440\u043e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d, \u043a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u044b \u0438 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u043e \u043a\u0440\u0443\u0442\u043e. \u041d\u043e \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0441\u0445\u0432\u0430\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u043e\u0439 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438, \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043a\u0430\u043a \u0440\u0430\u0437 \u043e \u0435\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u0445 \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u0445 \u0438\u0445 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/town-crier-vs-deco-kakoj-orakul-ispolzovat-v-blokchejne\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Town Crier vs DECO: \u043a\u0430\u043a\u043e\u0439 \u043e\u0440\u0430\u043a\u0443\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435? | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u043d\u0438\u0432\u044b\u0439 \u043d\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u0440\u043e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d, \u043a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u044b \u0438 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u043e \u043a\u0440\u0443\u0442\u043e. \u041d\u043e \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0441\u0445\u0432\u0430\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u043e\u0439 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438, \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043a\u0430\u043a \u0440\u0430\u0437 \u043e \u0435\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u0445 \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u0445 \u0438\u0445 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/town-crier-vs-deco-kakoj-orakul-ispolzovat-v-blokchejne\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-09-10T05:42:27+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-10T05:42:27+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Stadtanzeiger vs DECO: Welchen Oracle in der Blockchain verwenden? | ProHoster","description":"Heutzutage hat nur derjenige, der faul ist, nicht \u00fcber die Blockchain-Technologie, Kryptow\u00e4hrungen und wie cool das ist, geschrieben. In diesem Artikel wird es jedoch nicht um das Lob dieser Technologie gehen, sondern wir werden uns vielmehr mit ihren Nachteilen und m\u00f6glichen L\u00f6sungen befassen.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/town-crier-vs-deco-kakoj-orakul-ispolzovat-v-blokchejne","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Town Crier vs DECO: \u043a\u0430\u043a\u043e\u0439 \u043e\u0440\u0430\u043a\u0443\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435? | ProHoster","og:description":"\u041d\u0430 \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u043d\u0438\u0432\u044b\u0439 \u043d\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u043f\u0440\u043e \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044e \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d, \u043a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u043b\u044e\u0442\u044b \u0438 \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u043e \u043a\u0440\u0443\u0442\u043e. \u041d\u043e \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0432\u043e\u0441\u0445\u0432\u0430\u043b\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u043e\u0439 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438, \u0440\u0435\u0447\u044c \u043f\u043e\u0439\u0434\u0435\u0442 \u043a\u0430\u043a \u0440\u0430\u0437 \u043e \u0435\u0435 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0430\u0445 \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u0445 \u0438\u0445 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f.","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/town-crier-vs-deco-kakoj-orakul-ispolzovat-v-blokchejne","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-09-10T05:42:27+00:00","article:modified_time":"2020-09-10T05:42:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"93794","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:39:33","updated":"2026-02-09 15:05:02","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/93794","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=93794"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/93794\/revisions"}],"predecessor-version":[{"id":158360,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/93794\/revisions\/158360"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/93795"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=93794"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=93794"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=93794"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}