{"id":34631,"date":"2019-10-31T21:59:31","date_gmt":"2019-10-31T18:59:31","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie\/"},"modified":"2019-10-31T21:59:31","modified_gmt":"2019-10-31T18:59:31","slug":"ton-telegram-open-network-chast-2-blokchejny-shardirovanie","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie","title":{"rendered":"TON: Telegram Open Network. Teil 2: Blockchains, Sharding","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Teil 2: Blockchains, Sharding\" src=\"\/wp-content\/uploads\/2019\/05\/e2a24aa1dda6a435e60da257af662853.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dieser Text ist eine Fortsetzung einer Serie von Artikeln, in denen ich die Struktur des vermeintlich in diesem Jahr erscheinenden verteilten Netzwerks Telegram Open Network (TON) bespreche. In <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/post\/354366\/\">vorherigen Teile<\/a><\/noindex> habe ich die grundlegendste Ebene beschrieben \u2014 die Art und Weise, wie Knoten miteinander interagieren.<\/p>\n<p><\/p>\n<p>Zur Erinnerung: Ich habe nichts mit der Entwicklung dieses Netzwerks zu tun, und das gesamte Material stammt aus einer offenen (wenn auch unbest\u00e4tigten) Quelle \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/denull.ru\/telegram\/ton-tech.pdf\">des Dokuments<\/a><\/noindex> (es gibt auch eine beiliegende <noindex><a rel=\"nofollow\" href=\"https:\/\/denull.ru\/telegram\/ton.pdf\">Brosch\u00fcre<\/a><\/noindex>, die die wichtigsten Punkte zusammenfasst), die Ende letzten Jahres erschienen ist. Nach meiner Einsch\u00e4tzung deutet das Volumen der Informationen in diesem Dokument auf seine Authentizit\u00e4t hin, obwohl es daf\u00fcr keine offiziellen Best\u00e4tigungen gibt.<\/p>\n<p><\/p>\n<p>Heute schauen wir uns den Hauptbestandteil von TON \u2014 die Blockchain \u2014 an.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3 id=\"bazovye-ponyatiya\">Grundlagen<\/h3>\n<p><\/p>\n<p><strong>Account<\/strong> (<em>account<\/em>). Eine Art Datensatz, der durch eine 256-Bit-Zahl identifiziert wird, <em>account_id<\/em> (meist handelt es sich um den \u00f6ffentlichen Schl\u00fcssel des Kontoinhabers). Im Grundfall (siehe unten <em>Null-Blockchain<\/em>) bezieht sich dieser Datensatz auf das Guthaben des Benutzers. \u00abAusleihen\u00bb kann es jeder, aber den Wert zu \u00e4ndern, ist nur nach bestimmten Regeln m\u00f6glich. <em>account_id<\/em> Smart-Contract<\/p>\n<p><\/p>\n<p><strong>Smart-Contract<\/strong> (<em>Smart Contract<\/em>). Im Grunde genommen handelt es sich um einen speziellen Fall eines Kontos, das durch einen Smart-Contract-Code und dessen Variablen-Speicher erg\u00e4nzt wird. W\u00e4hrend es bei einem \u201eWallet\u201c m\u00f6glich ist, Geld gem\u00e4\u00df relativ einfachen und vorher festgelegten Regeln einzuzahlen und abzuheben, sind die Regeln f\u00fcr einen Smart Contract in seinem Code (in einer bestimmten Turing-vollst\u00e4ndigen Programmiersprache) festgelegt.<\/p>\n<p><\/p>\n<p><strong>Zustand der Blockchain<\/strong> (<em>state of blockchain<\/em>). Die Gesamtheit der Zust\u00e4nde aller Konten\/Smart Contracts (im abstrakten Sinne eine Hash-Tabelle, wobei die Schl\u00fcssel die Identifikatoren der Konten und die Werte die in den Konten gespeicherten Daten sind).<\/p>\n<p><\/p>\n<p><strong>Nachricht<\/strong> (<em>message<\/em>). Ich habe zuvor den Ausdruck \u201eGeld einzahlen und abheben\u201c verwendet \u2013 das ist ein spezifisches Beispiel f\u00fcr eine Nachricht (\u201e\u00fcbertragen <em>N Gramm<\/em> von Konto <em>account_1<\/em> auf Konto <em>account_2<\/em>\u201c). Offensichtlich kann eine solche Nachricht nur von einem Knoten gesendet werden, der den privaten Schl\u00fcssel des Kontos besitzt. <em>account_1<\/em> \u2014 und kann dies durch eine Signatur best\u00e4tigen. Das Ergebnis der Zustellung solcher Nachrichten an ein regul\u00e4res Konto ist eine Erh\u00f6hung seines Guthabens, w\u00e4hrend der Smart Contract seinen Code ausf\u00fchrt (der die Nachricht empf\u00e4ngt). Nat\u00fcrlich sind auch andere Nachrichten m\u00f6glich (die nicht monet\u00e4re Betr\u00e4ge, sondern beliebige Daten zwischen Smart Contracts \u00fcbertragen).<\/p>\n<p><\/p>\n<p><strong>Transaktion<\/strong> (<em>Transaktion<\/em>). Die Tatsache der Nachrichten\u00fcbermittlung wird als Transaktion bezeichnet. Transaktionen \u00e4ndern den Zustand der Blockchain. Tats\u00e4chlich bestehen Bl\u00f6cke in der Blockchain aus Transaktionen (Aufzeichnungen \u00fcber die Zustellung von Nachrichten). In dieser Hinsicht kann man sich den Zustand der Blockchain wie eine inkrementelle Datenbank vorstellen \u2013 alle Bl\u00f6cke sind \u201eDiffs\u201c, die nacheinander angewendet werden m\u00fcssen, um den aktuellen Zustand der DB zu erhalten. \u00dcber die Details der Verpackung dieser \u201eDiffs\u201c (und die Wiederherstellung des vollst\u00e4ndigen Zustands davon) wird im n\u00e4chsten Artikel gesprochen werden.<\/p>\n<p><\/p>\n<h3 id=\"blokcheyn-v-ton-chto-eto-i-zachem\">Blockchain im TON: Was ist das und wozu dient es?<\/h3>\n<p><\/p>\n<p>Wie im vorherigen Artikel erw\u00e4hnt, <em>ist die Blockchain eine Datenstruktur, deren Elemente (Bl\u00f6cke) in einer \u201eKette\u201c angeordnet sind, und jeder nachfolgende Block in der Kette enth\u00e4lt den Hash des vorherigen.<\/em>. In den Kommentaren wurde die Frage gestellt: Warum \u00fcberhaupt eine solche Datenstruktur, wenn wir bereits DHT \u2014 eine verteilte Hash-Tabelle \u2014 haben? Offensichtlich k\u00f6nnen einige Daten auch in DHT gespeichert werden, aber das eignet sich nur f\u00fcr nicht zu \u201esensible\u201c Informationen. Kryptow\u00e4hrungsbilanzen k\u00f6nnen nicht in DHT gespeichert werden \u2014 vor allem wegen fehlender Integrit\u00e4tspr\u00fcfungen. <em>Integrit\u00e4t<\/em>. Tats\u00e4chlich entsteht die gesamte Komplexit\u00e4t der Blockchain-Struktur, um Eingriffe in die darin gespeicherten Daten zu verhindern.<\/p>\n<p><\/p>\n<p>Allerdings sieht die Blockchain im TON noch komplexer aus als in den meisten anderen verteilten Systemen \u2014 und daf\u00fcr gibt es zwei Gr\u00fcnde. Der erste ist der Wunsch, die Notwendigkeit von <em>Forks<\/em>zu minimieren. In traditionellen Kryptow\u00e4hrungen sind alle Parameter zu Beginn festgelegt, und jeder Versuch, diese zu \u00e4ndern, f\u00fchrt faktisch zur Entstehung eines \u201ealternativen Universums\u201c der Kryptow\u00e4hrung. Der zweite Grund ist die Unterst\u00fctzung von Sharding (<em>Sharding<\/em>, <em>Sharding).<\/em>) Blockchain. Die Blockchain ist eine Struktur, die im Laufe der Zeit nicht kleiner werden kann; und in der Regel ist jeder Knoten, der f\u00fcr die Funktionsf\u00e4higkeit des Netzwerks verantwortlich ist, gezwungen, sie vollst\u00e4ndig zu speichern. In traditionellen (zentralisierten) Systemen wird zur L\u00f6sung solcher Probleme Sharding eingesetzt: Ein Teil der Datenbankinhalte befindet sich auf einem Server, ein anderer Teil auf einem anderen, usw. Bei Kryptow\u00e4hrungen ist eine solche Funktionalit\u00e4t bisher recht selten \u2014 insbesondere, weil es schwierig ist, Sharding in ein System einzuf\u00fcgen, das nicht von Anfang an daf\u00fcr geplant wurde.<\/p>\n<p><\/p>\n<p>Wie plant TON, beide oben beschriebenen Probleme zu l\u00f6sen?<\/p>\n<p><\/p>\n<h3 id=\"soderzhimoe-blokcheyna-vorkcheyny\">Inhalt der Blockchain. W\u00e4hrungen.<\/h3>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Teil 2: Blockchains, Sharding\" src=\"\/wp-content\/uploads\/2019\/05\/c4f0f6e6702322ad4312cb262b3a0fab.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Zun\u00e4chst sprechen wir dar\u00fcber, was in der Blockchain gespeichert werden soll. Dort werden die Zust\u00e4nde der Konten (im einfachsten Fall \u201eWallets\u201c) und der Smart Contracts gespeichert (der Einfachheit halber nehmen wir an, dass dies dasselbe ist wie die Konten). Im Grunde wird es sich um eine gew\u00f6hnliche Hash-Tabelle handeln \u2014 die Schl\u00fcssel darin sind die Identifikatoren <strong>account_id<\/strong>, und die Werte sind Datenstrukturen, die solche Dinge enthalten wie:<\/p>\n<p><\/p>\n<ul>\n<li>Kontostand;<\/li>\n<li>Code des Smart Contracts (nur f\u00fcr Smart Contracts);<\/li>\n<li>Datenablage f\u00fcr Smart Contracts (nur f\u00fcr Smart Contracts);<\/li>\n<li>Statistik;<\/li>\n<li>(<em>optional<\/em>) \u00f6ffentlicher Schl\u00fcssel f\u00fcr \u00dcberweisungen vom Konto, standardm\u00e4\u00dfig account_id;<\/li>\n<li>Warteschlange f\u00fcr ausgehende Nachrichten (hier werden sie zur Weiterleitung an den Empf\u00e4nger abgelegt);<\/li>\n<li>Liste der zuletzt an dieses Konto gelieferten Nachrichten.<\/li>\n<\/ul>\n<p><\/p>\n<p>Wie bereits erw\u00e4hnt, bestehen die Bl\u00f6cke direkt aus Transaktionen \u2013 Nachrichten, die an verschiedene Konten (account_id) geliefert werden. Neben account_id enthalten die Nachrichten auch ein 32-Bit-Feld <em>workchain_id<\/em> \u2013 die Kennung des sogenannten <strong>Workchains<\/strong> (<em>workchain<\/em>, <em>arbeitenden Blockchain<\/em>). Dies erm\u00f6glicht die Existenz mehrerer unabh\u00e4ngiger Blockchains mit unterschiedlichen Konfigurationen. Dabei wird workchain_id = 0 als Sonderfall angesehen, <strong>Null-Workchain<\/strong> \u2013 die darin befindlichen Guthaben entsprechen der Kryptow\u00e4hrung TON (Grams). Vermutlich wird es anfangs keine anderen Workchains geben.<\/p>\n<p><\/p>\n<h3 id=\"shardcheyny-infinite-sharding-paradigm\">Shardchains. Infinite Sharding Paradigm.<\/h3>\n<p><\/p>\n<p>Doch das Wachstum der Anzahl der Blockchains stoppt hier nicht. Lassen Sie uns mit Sharding vertrautmachen. Stellen Sie sich vor, dass jedem Konto (account_id) eine eigene Blockchain zugewiesen ist, in der alle eingehenden Nachrichten liegen, und die Zust\u00e4nde aller dieser Blockchains auf separaten Knoten gespeichert werden.<\/p>\n<p><\/p>\n<p>Nat\u00fcrlich ist das ziemlich verschwenderisch: Wahrscheinlich werden in jede dieser <strong>Shardchains<\/strong> (<em>shardchain<\/em>, <em>Shard-Blockchain<\/em>) Transaktionen nur sehr selten eingehen, und es werden viele leistungsstarke Knoten ben\u00f6tigt (vorweggenommen sei, dass es nicht nur um mobile Telefonkunden geht \u2013 sondern um ernsthafte Server).<\/p>\n<p><\/p>\n<p>Deshalb fassen Shardchains die Konten nach bin\u00e4ren Pr\u00e4fixen ihrer Identifikatoren zusammen: Wenn eine Shardchain das Pr\u00e4fix 0110 hat, gelangen die Transaktionen aller account_id, die mit diesen Ziffern beginnen, in sie. Dieser <em>shard_prefix<\/em> kann eine L\u00e4nge von 0 bis 60 Bit haben \u2013 und das Wichtigste ist, dass er dynamisch ver\u00e4ndert werden kann.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Teil 2: Blockchains, Sharding\" src=\"\/wp-content\/uploads\/2019\/05\/568aec7ad3d8cc3e268f0e60d453b502.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Sobald ein Shardchain \u00fcberm\u00e4\u00dfig viele Transaktionen erh\u00e4lt, teilen die Knoten, die daran arbeiten, ihn gem\u00e4\u00df vordefinierten Regeln in zwei Tochterchains auf \u2013 deren Pr\u00e4fixe sind um ein Bit l\u00e4nger (wobei f\u00fcr einen das Bit 0 und f\u00fcr den anderen das Bit 1 ist). Zum Beispiel, <em>shard_prefix<\/em> = <u>0110<\/u>wird b aufgeteilt in <u>0110<\/u>0b und <u>0110<\/u>1b. Umgekehrt, wenn zwei \"benachbarte\" Shardchains sich \u00fcber einen gewissen Zeitraum hinweg wohlf\u00fchlen, k\u00f6nnen sie wieder zu einer Einheit zusammengef\u00fchrt werden.<\/p>\n<p><\/p>\n<p>Somit erfolgt das Sharding \u201evon unten nach oben\u201c \u2013 wir gehen davon aus, dass jedes Konto seinen eigenen Shard hat, diese jedoch \u2013 vor\u00fcbergehend \u2013 nach Pr\u00e4fixen \u201everklebt\u201c sind. Das bringt uns zur <strong>Unendliches Sharding-Paradigma<\/strong> (<em>Paradigmen des endlosen Shardings.<\/em>).<\/p>\n<p><\/p>\n<p>Es ist wichtig zu betonen, dass Workchains nur virtuell existieren \u2013 tats\u00e4chlich ist <em>workchain_id<\/em> dies ein Teil der Identifikationsnummer eines bestimmten Shardchains. Formell ausgedr\u00fcckt wird jeder Shardchain durch ein Zahlenpaar bestimmt (<em>workchain_id<\/em>, <em>shard_prefix<\/em>).<\/p>\n<p><\/p>\n<h3 id=\"ispravlenie-oshibok-vertikalnye-blokcheyny\">Fehlerbehebung. Vertikale Blockchains.<\/h3>\n<p><\/p>\n<p>Traditionell wird angenommen, dass jede Transaktion in der Blockchain 'in Stein gemei\u00dfelt' ist. Im Fall von TON gibt es jedoch die M\u00f6glichkeit, die 'Geschichte neu zu schreiben' \u2013 wenn jemand (ein sogenannter <em>Fisher-Knoten<\/em>) beweist, dass einer der Bl\u00f6cke fehlerhaft signiert wurde. In diesem Fall wird ein spezieller Korrekturblock zum entsprechenden Shard-Chain hinzugef\u00fcgt, der den Hash des zu korrigierenden Blocks (und nicht des letzten Blocks in der Shard-Chain) enth\u00e4lt. Wenn man die Shard-Chain als eine horizontal ausgelegte Kette von Bl\u00f6cken betrachtet, kann man sagen, dass der Korrekturblock nicht rechts an den fehlerhaften Block angeh\u00e4ngt wird, sondern oben \u2013 weshalb man sagt, dass er Teil einer kleinen 'vertikalen Blockchain' wird. Daher kann man sagen, dass Shard-Chains <em>zweidimensionale Blockchains sind.<\/em>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Teil 2: Blockchains, Sharding\" src=\"\/wp-content\/uploads\/2019\/05\/eda526705f5febd37995901b5542264c.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Wenn nach einem fehlerhaften Block die \u00c4nderungen, die er vorgenommen hat, von nachfolgenden Bl\u00f6cken referenziert wurden (d.h. es wurden neue Transaktionen auf Basis ung\u00fcltiger Daten durchgef\u00fchrt), werden auch diesen Bl\u00f6cken \"Korrekturen\" \"von oben\" hinzugef\u00fcgt. Wenn die Bl\u00f6cke jedoch keine \"betroffenen\" Informationen ber\u00fchrten, gelten diese \"Korrekturwellen\" nicht f\u00fcr sie. Zum Beispiel wurde in der obigen Abbildung die Transaktion des ersten Blocks, die das Guthaben des Kontos C erh\u00f6ht, als fehlerhaft angesehen \u2013 daher muss die Transaktion, die das Guthaben dieses Kontos im dritten Block verringert, ebenfalls annulliert werden, und \u00fcber diesem Block wird ein Korrekturblock vermerkt.<\/p>\n<p><\/p>\n<p>Es ist anzumerken \u2013 obwohl Korrekturbl\u00f6cke als \"\u00fcber\" den Originalbl\u00f6cken dargestellt werden, werden sie tats\u00e4chlich an das Ende der entsprechenden Blockchain angeh\u00e4ngt (dort, wo sie chronologisch hingeh\u00f6ren). Die zweidimensionale Anordnung zeigt lediglich, an welchen Punkt in der Blockchain sie \"angeh\u00e4ngt\" werden (mittels des in ihnen enthaltenen Hashes des Originalblocks).<\/p>\n<p><\/p>\n<p>Man k\u00f6nnte lange dar\u00fcber philosophieren, wie gut die L\u00f6sung \u201edie Vergangenheit zu \u00e4ndern\u201c tats\u00e4chlich ist. Es scheint, dass wenn wir die M\u00f6glichkeit eines fehlerhaften Blocks in der Blockchain zulassen, wir ebenso die M\u00f6glichkeit eines fehlerhaften Korrekturblocks zulassen m\u00fcssen. Hier, so viel ich beurteilen kann, liegt der Unterschied in der Anzahl der Knoten, die Konsens \u00fcber neue Bl\u00f6cke erreichen m\u00fcssen \u2014 an jedem Shard-Chain wird eine relativ kleine \"<em>Arbeitsgruppe<\/em>\" von Knoten arbeiten (die sich ziemlich oft ver\u00e4ndert), w\u00e4hrend das Einf\u00fcgen von Korrekturbl\u00f6cken die Zustimmung aller <em>Validator-Knoten<\/em>erfordert. Mehr Details \u00fcber Validatoren, Arbeitsgruppen und andere Rollen von Knoten werde ich im n\u00e4chsten Artikel erl\u00e4utern.<\/p>\n<p><\/p>\n<h3 id=\"odin-blokcheyn-chtob-pravit-vsemi\">Eine Blockchain, um alle zu regieren<\/h3>\n<p><\/p>\n<p>Ich habe oben viele Informationen \u00fcber verschiedene Arten von Blockchains aufgelistet, die selbst irgendwo gespeichert werden sollten. Insbesondere handelt es sich um folgende Angaben:<\/p>\n<p><\/p>\n<ul>\n<li>\u00fcber die Anzahl und Konfigurationen von Workchains;<\/li>\n<li>\u00fcber die Anzahl der Shard-Chains und deren Pr\u00e4fixe;<\/li>\n<li>dar\u00fcber, welche Knoten derzeit f\u00fcr welche Shard-Chains verantwortlich sind;<\/li>\n<li>Hashes der zuletzt hinzugef\u00fcgten Bl\u00f6cke zu allen Shard-Chains.<\/li>\n<\/ul>\n<p><\/p>\n<p>Wie Sie sich vielleicht schon denken k\u00f6nnen, werden all diese Dinge in einem weiteren Speicher \u2013 der <strong>Masterchain<\/strong> (<em>Masterchain<\/em>, <em>Master-Blockchain<\/em>). Durch die Hashes der Bl\u00f6cke aller Shardchains in seinen Bl\u00f6cken wird das System stark miteinander verbunden. Das bedeutet auch, dass die Generierung eines neuen Blocks in der Masterchain direkt nach der Erstellung der Bl\u00f6cke in den Shardchains erfolgt \u2013 erwartet wird, dass die Bl\u00f6cke in den Shardchains fast gleichzeitig alle 5 Sekunden erscheinen, und ein neuer Block in der Masterchain eine Sekunde danach.<\/p>\n<p><\/p>\n<p>Aber wer wird verantwortlich sein f\u00fcr die Durchf\u00fchrung dieser titanischen Aufgaben \u2013 das Versenden von Nachrichten, das Ausf\u00fchren von Smart Contracts, die Bildung von Bl\u00f6cken in den Shardchains und in der Masterchain sowie die \u00dcberpr\u00fcfung der Bl\u00f6cke auf Fehler? Werden all dies heimlich die Smartphones von Millionen Nutzern mit dem Telegram-Client darauf erledigen? Oder wird das Team von Durov die Ideen der Dezentralisierung aufgeben und es werden ihre Server auf die altmodische Weise tun?<\/p>\n<p><\/p>\n<p>Tats\u00e4chlich ist ke Antworten richtig. Doch der Platz in diesem Artikel neigt sich dem Ende zu. Daher wird die Diskussion \u00fcber die verschiedenen Rollen der Knoten (vielleicht haben Sie bereits einige ihrer Erw\u00e4hnungen bemerkt) sowie \u00fcber die Mechanismen ihres Betriebs in der n\u00e4chsten Folge fortgesetzt.<\/p>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/354568\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u2014 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0442\u0435\u0439, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u044f \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 (\u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e) \u0433\u043e\u0442\u043e\u0432\u044f\u0449\u0435\u0439\u0441\u044f \u043a \u0432\u044b\u0445\u043e\u0434\u0443 \u0432 \u044d\u0442\u043e\u043c \u0433\u043e\u0434\u0443 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Telegram Open Network (TON). \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0435\u0451 \u0441\u0430\u043c\u044b\u0439 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u2014 \u0441\u043f\u043e\u0441\u043e\u0431 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439. \u041d\u0430 \u0432\u0441\u044f\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u043d\u0430\u043f\u043e\u043c\u043d\u044e, \u0447\u0442\u043e \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438 \u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u043d\u0435 \u0438\u043c\u0435\u044e \u0438 \u0432\u0435\u0441\u044c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26098,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-34631","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u2014 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0442\u0435\u0439, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u044f \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 (\u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e) \u0433\u043e\u0442\u043e\u0432\u044f\u0449\u0435\u0439\u0441\u044f \u043a \u0432\u044b\u0445\u043e\u0434\u0443 \u0432 \u044d\u0442\u043e\u043c \u0433\u043e\u0434\u0443 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Telegram Open Network (TON). \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0435\u0451 \u0441\u0430\u043c\u044b\u0439 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u2014 \u0441\u043f\u043e\u0441\u043e\u0431 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439. \u041d\u0430 \u0432\u0441\u044f\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u043d\u0430\u043f\u043e\u043c\u043d\u044e, \u0447\u0442\u043e \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438 \u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u043d\u0435 \u0438\u043c\u0435\u044e \u0438 \u0432\u0435\u0441\u044c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\" \/>\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\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\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\udd47TON: Telegram Open Network. \u0427\u0430\u0441\u0442\u044c 2: \u0411\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u044b, \u0448\u0430\u0440\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u2014 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0442\u0435\u0439, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u044f \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 (\u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e) \u0433\u043e\u0442\u043e\u0432\u044f\u0449\u0435\u0439\u0441\u044f \u043a \u0432\u044b\u0445\u043e\u0434\u0443 \u0432 \u044d\u0442\u043e\u043c \u0433\u043e\u0434\u0443 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Telegram Open Network (TON). \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0435\u0451 \u0441\u0430\u043c\u044b\u0439 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u2014 \u0441\u043f\u043e\u0441\u043e\u0431 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439. \u041d\u0430 \u0432\u0441\u044f\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u043d\u0430\u043f\u043e\u043c\u043d\u044e, \u0447\u0442\u043e \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438 \u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u043d\u0435 \u0438\u043c\u0435\u044e \u0438 \u0432\u0435\u0441\u044c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie\" \/>\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=\"2019-10-31T18:59:31+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:59:31+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\udd47TON: Telegram Open Network. Teil 2: Blockchains, Sharding | ProHoster","description":"Dieser Text ist eine Fortsetzung einer Reihe von Artikeln, in denen ich die Struktur des (vermutlich) in diesem Jahr erscheinenden dezentralen Netzwerks Telegram Open Network (TON) behandle. Im vorherigen Teil habe ich die grundlegendste Ebene beschrieben \u2013 wie die Knoten miteinander interagieren. Ich m\u00f6chte zur Sicherheit daran erinnern, dass ich nicht an der Entwicklung dieses Netzwerks beteiligt bin und das gesamte Material.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie","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\udd47TON: Telegram Open Network. \u0427\u0430\u0441\u0442\u044c 2: \u0411\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u044b, \u0448\u0430\u0440\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 | ProHoster","og:description":"\u0414\u0430\u043d\u043d\u044b\u0439 \u0442\u0435\u043a\u0441\u0442 \u2014 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 \u0441\u0435\u0440\u0438\u0438 \u0441\u0442\u0430\u0442\u0435\u0439, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u044f \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 (\u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e) \u0433\u043e\u0442\u043e\u0432\u044f\u0449\u0435\u0439\u0441\u044f \u043a \u0432\u044b\u0445\u043e\u0434\u0443 \u0432 \u044d\u0442\u043e\u043c \u0433\u043e\u0434\u0443 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 Telegram Open Network (TON). \u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0435\u0451 \u0441\u0430\u043c\u044b\u0439 \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c \u2014 \u0441\u043f\u043e\u0441\u043e\u0431 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0443\u0437\u043b\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u043e\u0439. \u041d\u0430 \u0432\u0441\u044f\u043a\u0438\u0439 \u0441\u043b\u0443\u0447\u0430\u0439 \u043d\u0430\u043f\u043e\u043c\u043d\u044e, \u0447\u0442\u043e \u043a \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u044d\u0442\u043e\u0439 \u0441\u0435\u0442\u0438 \u044f \u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044f \u043d\u0435 \u0438\u043c\u0435\u044e \u0438 \u0432\u0435\u0441\u044c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie","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":"2019-10-31T18:59:31+00:00","article:modified_time":"2019-10-31T18:59:31+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34631","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":"2026-01-21 20:00:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:17:24","updated":"2026-01-21 20:00:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/34631","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=34631"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/34631\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/26098"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=34631"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=34631"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=34631"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}