{"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 die Fortsetzung einer Reihe von Artikeln, in denen ich die Struktur des (vermutlich) in diesem Jahr zur Ver\u00f6ffentlichung anstehenden dezentralen Netzwerks Telegram Open Network (TON) behandle. In <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/post\/354366\/\">vorherigen Teil<\/a><\/noindex> habe ich die grundlegende Ebene beschrieben \u2013 die Art und Weise, wie Knoten miteinander interagieren.<\/p>\n<p><\/p>\n<p>Zur Sicherheit erinnere ich daran, dass ich mit der Entwicklung dieses Netzwerks nichts zu tun habe und das gesamte Material aus einer offenen (wenn auch unbest\u00e4tigten) Quelle stammt \u2013 <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 Hauptpunkte kurz zusammenfasst), die Ende letzten Jahres erschien. Das Volumen der Informationen in diesem Dokument spricht meines Erachtens f\u00fcr seine Echtheit, obwohl es keine offiziellen Best\u00e4tigungen daf\u00fcr gibt.<\/p>\n<p><\/p>\n<p>Heute schauen wir uns die Hauptkomponente von TON an \u2013 die Blockchain.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3 id=\"bazovye-ponyatiya\">Grundbegriffe<\/h3>\n<p><\/p>\n<p><strong>Konto<\/strong> (<em>account<\/em>). Eine Datenmenge, die durch eine 256-Bit-Zahl identifiziert wird <em>account_id<\/em> (h\u00e4ufig der \u00f6ffentliche Schl\u00fcssel des Kontoinhabers). Im grundlegenden Fall (siehe unten <em>Null-Blockchain<\/em>), bezieht sich diese Datenmenge auf das Guthaben des Nutzers. Jeder kann einen bestimmten <em>account_id<\/em> ausleihen, aber seinen Wert kann man nur nach bestimmten Regeln ver\u00e4ndern.<\/p>\n<p><\/p>\n<p><strong>Smart Contract<\/strong> (<em>Smart-Contract<\/em>). Im Wesentlichen handelt es sich um eine spezielle Art von Konto, die mit dem Code eines Smart-Contracts und dem Speicher seiner Variablen erg\u00e4nzt wird. Wenn im Fall eines \u201eWallets\u201c Geld nach relativ einfachen und im Voraus festgelegten Regeln eingezahlt und abgebucht werden kann, sind diese Regeln im Fall eines Smart-Contracts in Form seines Codes (in einer 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 \u2013 eine Hash-Tabelle, in der 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 den Ausdruck \u201eGeld einzahlen und abheben\u201c verwendet \u2013 ein konkretes Beispiel f\u00fcr eine Nachricht (\u201e\u00fcbertragen <em>N Gramm<\/em> von Konto <em>account_1<\/em> auf das Konto <em>account_2<\/em>\u201c). Offensichtlich kann eine solche Nachricht nur von einem Knoten gesendet werden, der im Besitz des privaten Schl\u00fcssels des Kontos ist <em>account_1<\/em> und dies durch eine Unterschrift best\u00e4tigen kann. Das Ergebnis der Zustellung solcher Nachrichten an ein normales Konto ist die Erh\u00f6hung seines Guthabens, und f\u00fcr den Smart-Contract die Ausf\u00fchrung seines Codes (der die Ankunft der Nachricht verarbeitet). 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>Die Transaktion<\/strong> (<em>transaction<\/em>). Die Zustellungsbest\u00e4tigung einer Nachricht wird als Transaktion bezeichnet. Transaktionen \u00e4ndern den Zustand der Blockchain. Genau aus diesen Transaktionen (Aufzeichnungen \u00fcber die Zustellung von Nachrichten) bestehen die Bl\u00f6cke in der Blockchain. In diesem Sinne kann man sich den Zustand der Blockchain als eine inkrementelle Datenbank vorstellen \u2013 alle Bl\u00f6cke sind \u201eDiffs\u201c, die nacheinander angewendet werden m\u00fcssen, um den aktuellen Zustand der Datenbank zu erhalten. \u00dcber die spezifische Verpackung dieser \u201eDiffs\u201c (und die Wiederherstellung des vollst\u00e4ndigen Zustands aus ihnen) wird im n\u00e4chsten Artikel die Rede sein.<\/p>\n<p><\/p>\n<h3 id=\"blokcheyn-v-ton-chto-eto-i-zachem\">Blockchain in TON: Was ist das und wozu brauchen wir das?<\/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 folgende Block der Kette enth\u00e4lt den Hash des vorherigen.<\/em>. In den Kommentaren wurde die Frage gestellt: Warum ben\u00f6tigen wir \u00fcberhaupt eine solche Datenstruktur, wenn wir bereits DHT \u2013 eine verteilte Hash-Tabelle \u2013 haben? Offensichtlich k\u00f6nnen einige Daten auch in der DHT gespeichert werden, aber das eignet sich nur f\u00fcr nicht allzu \u201esensiblen\u201c Informationen. Kryptow\u00e4hrungsbilanzen k\u00f6nnen nicht in der DHT gespeichert werden \u2013 haupts\u00e4chlich aufgrund des Fehlens von \u00dcberpr\u00fcfungen auf <em>Integrit\u00e4t.<\/em>Die gesamte Komplexit\u00e4t der Blockchain-Struktur entsteht also, um Eingriffe in die darin gespeicherten Daten zu verhindern.<\/p>\n<p><\/p>\n<p>Die Blockchain in TON sieht jedoch noch komplizierter aus als in den meisten anderen verteilten Systemen \u2013 und daf\u00fcr gibt es zwei Gr\u00fcnde. Der erste ist der Versuch, den Bedarf an <em>Forks<\/em>. In traditionellen Kryptow\u00e4hrungen sind alle Parameter zu Beginn festgelegt, und jeder Versuch, sie zu \u00e4ndern, f\u00fchrt praktisch zur Schaffung eines \u201ealternativen Universums\u201c der Kryptow\u00e4hrung. Der zweite Grund ist die Unterst\u00fctzung von Sharding (<em>Sharding<\/em>, <em>) der Blockchain. Die Blockchain ist eine Struktur, die mit der Zeit nicht kleiner werden kann; und normalerweise 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 verwendet: Teile der Aufzeichnungen in der Datenbank befinden sich auf einem Server, Teile auf einem anderen usw. Im Fall von Kryptow\u00e4hrungen ist eine solche Funktionalit\u00e4t bisher recht selten \u2013 insbesondere weil es schwierig ist, Sharding in ein System einzuf\u00fcgen, in dem es urspr\u00fcnglich nicht eingeplant war.<\/em>Wie plant TON also, beide oben beschriebenen Probleme zu l\u00f6sen?<\/p>\n<p><\/p>\n<p>Wie plant TON, die beiden oben beschriebenen Probleme zu l\u00f6sen?<\/p>\n<p><\/p>\n<h3 id=\"soderzhimoe-blokcheyna-vorkcheyny\">Inhalt der Blockchain. Workchains.<\/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 im Blockchain gespeichert werden soll. Dort gespeichert werden die Zust\u00e4nde von Konten (in der einfachsten Form \u201eWallets\u201c) und Smart Contracts (der Einfachheit halber betrachten wir diese als die gleichen wie Konten). Im Grunde wird es sich um eine normale Hash-Tabelle handeln \u2013 die Schl\u00fcssel darin sind die Identifikatoren <strong>account_id<\/strong>, und die Werte sind Datenstrukturen, die Dinge wie Folgendes enthalten:<\/p>\n<p><\/p>\n<ul>\n<li>Balance;<\/li>\n<li>Code des Smart Contracts (nur f\u00fcr Smart Contracts);<\/li>\n<li>Datenspeicher des 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 ausgehender Nachrichten (hier werden sie f\u00fcr den Versand an den Empf\u00e4nger erfasst);<\/li>\n<li>Liste der zuletzt an dieses Konto zugestellten 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 zugestellt werden. Neben account_id enthalten die Nachrichten auch ein 32-Bit-Feld <em>workchain_id<\/em> \u2013 die Kennung der sogenannten <strong>Workchain<\/strong> (<em>workchain<\/em>, <em>arbeitsblockchain<\/em>). Dies erm\u00f6glicht mehrere unabh\u00e4ngige Blockchains mit unterschiedlichen Konfigurationen. Dabei gilt workchain_id = 0 als Sonderfall, <strong>Null-Workchain<\/strong> \u2013 die dortigen Salden entsprechen der Kryptow\u00e4hrung TON (Grams). H\u00f6chstwahrscheinlich wird es in den ersten Phasen keine anderen Workchains geben.<\/p>\n<p><\/p>\n<h3 id=\"shardcheyny-infinite-sharding-paradigm\">Shardchains. Unendliches Sharding-Paradigma.<\/h3>\n<p><\/p>\n<p>Aber das Wachstum der Anzahl der Blockchains stoppt hier nicht. Lassen Sie uns mit dem Sharding befassen. Stellen wir uns vor, dass jedem Konto (account_id) eine eigene Blockchain zugeordnet ist \u2013 dort liegen alle eingehenden Nachrichten \u2013 und die Zust\u00e4nde all dieser Blockchains werden auf separaten Knoten gespeichert.<\/p>\n<p><\/p>\n<p>Nat\u00fcrlich ist das sehr verschwenderisch: Wahrscheinlich werden die Transaktionen in jeder dieser <strong>Shardchains<\/strong> (<em>Shardchain<\/em>, <em>Shard-Blockchain<\/em>) nur sehr selten eintreffen, und es werden viele leistungsstarke Knoten ben\u00f6tigt (um es vorwegzunehmen, dies bezieht sich nicht nur auf Clients auf Mobiltelefonen \u2013 sondern auf ernsthafte Server).<\/p>\n<p><\/p>\n<p>Deshalb fassen Shardchains Konten nach den bin\u00e4ren Pr\u00e4fixen ihrer Identifikatoren zusammen: Wenn der Shardchain einen Pr\u00e4fix von 0110 hat, werden alle account_id, die mit diesen Ziffern beginnen, Transaktionen in ihn gelangen. Dieses <em>shard_prefix<\/em> kann eine L\u00e4nge von 0 bis 60 Bit haben \u2013 und das Wichtigste ist, dass es 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 in einen der Shard-Chains \u00fcberm\u00e4\u00dfig viele Transaktionen eingehen, teilen die daran arbeitenden Knoten ihn gem\u00e4\u00df vorab festgelegten Regeln in zwei Tochter-Chain \u2013 ihre Pr\u00e4fixe werden um ein Bit l\u00e4nger sein (und f\u00fcr einen von ihnen wird dieses Bit 0 sein, f\u00fcr den anderen 1). Zum Beispiel, <em>shard_prefix<\/em> = <u>0110<\/u>b wird aufgeteilt in <u>0110<\/u>0b und <u>0110<\/u>1b. Wenn zwei \"benachbarte\" Shard-Chains sich lange genug wohlf\u00fchlen, werden sie wieder zu einer Einheit verschmelzen.<\/p>\n<p><\/p>\n<p>So wird Sharding \"von unten nach oben\" durchgef\u00fchrt \u2013 wir nehmen an, dass jedes Konto seinen eigenen Shard hat, aber sie sind bis auf Weiteres nach Pr\u00e4fixen \"verklebt\". Das impliziert <strong>Infinite Sharding Paradigm<\/strong> (<em>die Paradigma des unendlichen Shardings<\/em>).<\/p>\n<p><\/p>\n<p>Es ist wichtig zu betonen, dass Workchains nur virtuell existieren \u2013 in Wirklichkeit ist <em>workchain_id<\/em> es ein Teil des Identifikators eines bestimmten Shard-Chains. In formellen Worten wird jeder Shard-Chain durch ein Zahlenpaar definiert (<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 besteht jedoch die M\u00f6glichkeit, die \"Geschichte neu zu schreiben\" \u2013 falls jemand (sogenannter <em>Fishing-Node<\/em>) nachweisen kann, dass einer der Bl\u00f6cke nicht korrekt signiert wurde. In diesem Fall wird dem entsprechenden Shard-Chain ein spezieller Korrekturblock hinzugef\u00fcgt, der den Hash des zu korrigierenden Blocks (und nicht des letzten Blocks im Shard-Chain) enth\u00e4lt. Wenn man den Shard-Chain als eine horizontal angeordnete Kette von Bl\u00f6cken betrachtet, kann man sagen, dass der Korrekturblock nicht nach rechts, sondern von oben an den fehlerhaften Block angeh\u00e4ngt wird \u2013 daher wird angenommen, dass er Teil einer kleinen \"vertikalen Blockchain\" wird. So 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>Im Falle, dass nach einem fehlerhaften Block auf die von ihm vorgenommenen \u00c4nderungen in sp\u00e4teren Bl\u00f6cken verwiesen wurde (d. h., es wurden neue Transaktionen auf Basis ung\u00fcltiger Daten durchgef\u00fchrt), werden auch zu diesen Bl\u00f6cken oben Korrekturbl\u00f6cke hinzugef\u00fcgt. Wenn die Bl\u00f6cke die \"betroffene\" Information nicht beeintr\u00e4chtigt haben, finden diese \"Korrekturwellen\" auf ihnen keine Anwendung. Zum Beispiel wurde in der obigen Darstellung die Transaktion des ersten Blocks, die das Guthaben des Kontos C erh\u00f6ht, als fehlerhaft angesehen \u2013 daher muss auch die Transaktion, die das Guthaben dieses Kontos im dritten Block verringert, annulliert werden, und ein Korrekturblock muss \u00fcber dem Block verbucht werden.<\/p>\n<p><\/p>\n<p>Es ist zu beachten, dass, obwohl Korrekturbl\u00f6cke als \"\u00fcber\" den Originalbl\u00f6cken dargestellt werden, sie in Wirklichkeit am Ende des entsprechenden Blockchains hinzugef\u00fcgt werden (dort, wo sie chronologisch hingeh\u00f6ren). Die zweidimensionale Anordnung zeigt lediglich, an welchem Punkt im Blockchain sie \"angeh\u00e4ngt\" werden (mittels des in ihnen enthaltenen Hashes des Originalblocks).<\/p>\n<p><\/p>\n<p>Man k\u00f6nnte separat philosophieren, wie gut die Entscheidung ist, \"die Vergangenheit zu ver\u00e4ndern\". Es scheint, dass, wenn wir die M\u00f6glichkeit eines ung\u00fcltigen Blocks im Shard-Chain zulassen, wir auch die M\u00f6glichkeit eines fehlerhaften Korrekturblocks nicht ausschlie\u00dfen k\u00f6nnen. Hier, soweit ich urteilen kann, liegt der Unterschied in der Anzahl der Knoten, die einen Konsens \u00fcber neue Bl\u00f6cke erreichen m\u00fcssen \u2013 \u00fcber jedem Shard wird eine relativ kleine \"<em>Arbeitsgruppe<\/em>\" von Knoten (die sich recht h\u00e4ufig \u00e4ndern) arbeiten, w\u00e4hrend die Einf\u00fchrung von Korrekturbl\u00f6cken die Zustimmung aller \" <em>Validator-Knoten<\/em>erfordert. Mehr Informationen \u00fcber Validatoren, Arbeitsgruppen und andere Rollen von Knoten werde ich im n\u00e4chsten Artikel geben.<\/p>\n<p><\/p>\n<h3 id=\"odin-blokcheyn-chtob-pravit-vsemi\">Eine Blockchain, um alles zu verwalten<\/h3>\n<p><\/p>\n<p>Oben wurde viel Informationen \u00fcber verschiedene Arten von Blockchains aufgef\u00fchrt, die ebenfalls irgendwo gespeichert werden sollten. Insbesondere geht es um folgende Daten:<\/p>\n<p><\/p>\n<ul>\n<li>\u00fcber die Anzahl und Konfigurationen der Workchains;<\/li>\n<li>\u00fcber die Anzahl der Shardchains und ihre Pr\u00e4fixe;<\/li>\n<li>dar\u00fcber, welche Knoten derzeit f\u00fcr welche Shardchains verantwortlich sind;<\/li>\n<li>Hashes der zuletzt hinzugef\u00fcgten Bl\u00f6cke f\u00fcr alle Shardchains.<\/li>\n<\/ul>\n<p><\/p>\n<p>Wie Sie bereits vermuten konnten, werden all diese Dinge in ein weiteres Speicher-Blockchain - <strong>Masterchain<\/strong> (<em>Masterchain<\/em>, <em>Master Blockchain<\/em>). Dank der Verwendung von Hashes aus den Bl\u00f6cken aller Shard-Blockchains in seinen Bl\u00f6cken ist das System stark miteinander verbunden. Das bedeutet unter anderem, dass die Erstellung eines neuen Blocks in der Masterchain unmittelbar nach der Erstellung der Bl\u00f6cke in den Shard-Blockchains erfolgt \u2013 es wird erwartet, dass die Bl\u00f6cke in den Shard-Blockchains fast gleichzeitig alle 5 Sekunden erscheinen, und der n\u00e4chste Block in der Masterchain eine Sekunde sp\u00e4ter entsteht.<\/p>\n<p><\/p>\n<p>Aber wer ist verantwortlich f\u00fcr die Umsetzung dieser titanischen Arbeit \u2013 f\u00fcr das Versenden von Nachrichten, das Ausf\u00fchren von Smart Contracts, das Erstellen von Bl\u00f6cken in den Shard-Blockchains und der Masterchain, und auch f\u00fcr die \u00dcberpr\u00fcfung der Bl\u00f6cke auf Fehler? Werden das tats\u00e4chlich die Smartphones von Millionen Nutzern sein, auf denen der Telegram-Client installiert ist? Oder wird das Team von Durov die Ideen der Dezentralisierung aufgeben und das Ganze wieder wie fr\u00fcher auf ihren Servern erledigen?<\/p>\n<p><\/p>\n<p>In Wirklichkeit ist keine der beiden Antworten korrekt. Aber die Seiten dieses Artikels neigen 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 Mechaniken ihrer Funktionsweise im n\u00e4chsten Teil 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 5.0.1.1 - aioseo.com -->\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) 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\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: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":"","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: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","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\/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}]}}