{"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\/ro\/blog\/administrirovanie\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie","title":{"rendered":"TON: Telegram Open Network. Partea 2: Blockchain-uri, \u0219ardare","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Partea 2: Blockchain-uri, \u0219ardare\" src=\"\/wp-content\/uploads\/2019\/05\/e2a24aa1dda6a435e60da257af662853.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Acest text reprezint\u0103 continuarea unei serii de articole \u00een care analiza structura (presupus) a re\u021belei distribuite Telegram Open Network (TON) care ar urma s\u0103 fie lansat\u0103 \u00een acest an. \u00cen <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/post\/354366\/\">partea anterioar\u0103<\/a><\/noindex> am descris nivelul s\u0103u de baz\u0103 - modul \u00een care nodurile interac\u021bioneaz\u0103 \u00eentre ele.<\/p>\n<p><\/p>\n<p>\u00cemi amintesc, pentru orice eventualitate, c\u0103 nu am nicio leg\u0103tur\u0103 cu dezvoltarea acestei re\u021bele, iar tot materialul este extras dintr-o surs\u0103 deschis\u0103 (de\u0219i neconfirmat\u0103) - <noindex><a rel=\"nofollow\" href=\"https:\/\/denull.ru\/telegram\/ton-tech.pdf\">document.<\/a><\/noindex> (la care se ata\u0219eaz\u0103 <noindex><a rel=\"nofollow\" href=\"https:\/\/denull.ru\/telegram\/ton.pdf\">un bro\u0219ur\u0103<\/a><\/noindex>, care rezum\u0103 pe scurt punctele principale), ap\u0103rut\u0103 la sf\u00e2r\u0219itul anului trecut. Cantitatea de informa\u021bii din acest document, \u00een opinia mea, dovede\u0219te autenticitatea acestuia, de\u0219i nu exist\u0103 nicio confirmare oficial\u0103.<\/p>\n<p><\/p>\n<p>Ast\u0103zi ne vom uita la componenta principal\u0103 a TON - blockchain-ul.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3 id=\"bazovye-ponyatiya\">No\u021biuni de baz\u0103<\/h3>\n<p><\/p>\n<p><strong>Cont<\/strong> (<em>account<\/em>). Un set de date identificat printr-un num\u0103r de 256 de bi\u021bi <em>account_id<\/em> (cel mai frecvent, acesta este cheia public\u0103 a proprietarului contului). \u00cen cazul de baz\u0103 (vezi mai jos <em>blockchain zero<\/em>), aceste date reprezint\u0103 soldul utilizatorului. Oricine poate \u201e\u00eemprumuta\u201d un anumit <em>account_id<\/em> dar modificarea valorii sale se poate face doar conform unor reguli specifice.<\/p>\n<p><\/p>\n<p><strong>Contract inteligent<\/strong> (<em>smart-contract<\/em>). Practic, este un caz particular al unui cont, completat cu codul contractului inteligent \u0219i stocarea variabilelor sale. \u00cen cazul \u201eportofelului\u201d se pot ad\u0103uga \u0219i retrage bani din acesta conform unor reguli relativ simple \u0219i predefinite, iar \u00een cazul contractului inteligent, aceste reguli sunt scrise sub form\u0103 de cod (\u00eentr-un anumit limbaj de programare Turing-complet).<\/p>\n<p><\/p>\n<p><strong>Starea blockchain-ului<\/strong> (<em>state of blockchain<\/em>). Totalitatea st\u0103rilor tuturor conturilor\/contractelor inteligente (\u00een sens abstract - o tabel\u0103 hash, unde cheile sunt identificatorii conturilor, iar valorile sunt datele stocate \u00een conturi).<\/p>\n<p><\/p>\n<p><strong>Mesaj<\/strong> (<em>message<\/em>). Mai sus am folosit expresia \u201ea ad\u0103uga \u0219i a retrage bani\u201d - acesta este un exemplu particular de mesaj (\u201ea transfera <em>N grame<\/em> de la contul <em>account_1<\/em> la contul <em>account_2<\/em>\u201d). Evident, un astfel de mesaj poate fi trimis doar de un nod care de\u021bine cheia privat\u0103 a contului. <em>account_1<\/em> \u2014 \u0219i capabil s\u0103 confirme acest lucru printr-o semn\u0103tur\u0103. Rezultatul livr\u0103rii unor astfel de mesaje c\u0103tre un cont obi\u0219nuit este cre\u0219terea soldului acestuia, iar contractul inteligent \u2014 executarea codului s\u0103u (care va procesa primirea mesajului). Desigur, sunt posibile \u0219i alte mesaje (care nu transfer\u0103 sume de bani, ci date arbitrare \u00eentre contractele inteligente).<\/p>\n<p><\/p>\n<p><strong>Transac\u021bie<\/strong> (<em>transac\u021bie<\/em>). Faptul livr\u0103rii mesajului se nume\u0219te transac\u021bie. Transac\u021biile schimb\u0103 starea blockchain-ului. Tocmai din transac\u021bii (\u00eenregistr\u0103ri de livrare a mesajelor) sunt formate blocurile \u00een blockchain. \u00cen acest sens, starea blockchain-ului poate fi v\u0103zut\u0103 ca o baz\u0103 de date incremental\u0103 \u2014 toate blocurile sunt \u201edife\u201d care trebuie aplicate secven\u021bial pentru a ob\u021bine starea actual\u0103 a BDD. Despre specificul ambal\u0103rii acestor \u201edife\u201d (\u0219i restaurarea st\u0103rii complete pe baza lor) va fi vorba \u00een articolul urm\u0103tor.<\/p>\n<p><\/p>\n<h3 id=\"blokcheyn-v-ton-chto-eto-i-zachem\">Blockchain \u00een TON: ce este \u0219i de ce este necesar?<\/h3>\n<p><\/p>\n<p>A\u0219a cum a fost men\u021bionat \u00een articolul anterior, <em>blockchain-ul este o structur\u0103 de date, elementele (blocurile) c\u0103reia sunt ordonate \u00eentr-un \u201elan\u021b\u201d, iar fiecare bloc urm\u0103tor al lan\u021bului con\u021bine hash-ul precedentului<\/em>. \u00cen comentarii s-a ridicat \u00eentrebarea: de ce este nevoie de o astfel de structur\u0103 de date, c\u00e2nd deja avem DHT \u2014 o tabel\u0103 hash distribuit\u0103? Este evident c\u0103 anumite date pot fi stocate \u0219i \u00een DHT, dar aceasta este potrivit\u0103 doar pentru informa\u021bii care nu sunt foarte \u201esensibile\u201d. Soldurile criptomonedelor nu pot fi stocate \u00een DHT \u2014 \u00een primul r\u00e2nd din cauza lipsei verific\u0103rilor de <em>integritate<\/em>. De fapt, \u00eentreaga complexitate a structurii blockchain-ului cre\u0219te pentru a preveni interven\u021biile \u00een datele p\u0103strate \u00een el.<\/p>\n<p><\/p>\n<p>Cu toate acestea, blockchain-ul \u00een TON arat\u0103 chiar mai complex dec\u00e2t \u00een majoritatea altor sisteme distribuite \u2014 \u0219i exist\u0103 dou\u0103 motive pentru aceasta. Primul \u2014 dorin\u021ba de a minimiza nevoia de <em>forkuri<\/em>. \u00cen criptomonedele tradi\u021bionale, toate parametrii sunt defini\u021bi ini\u021bial \u0219i orice \u00eencercare de modificare a acestora duce \u00een esen\u021b\u0103 la apari\u021bia unei \u201eunivers alternativ\u201d al criptomonedei. Al doilea motiv \u2014 suportul pentru fragmentare (<em>sharding<\/em>, <em>shardare<\/em>) blockchain-ului. Blockchain-ul este o structur\u0103 care nu poate deveni mai mic\u0103 odat\u0103 cu trecerea timpului; \u00een general, fiecare nod responsabil cu func\u021bionarea re\u021belei este obligat s\u0103 o stocheze \u00een \u00eentregime. \u00cen sistemele tradi\u021bionale (centralizate), pentru a rezolva probleme asem\u0103n\u0103toare, se aplic\u0103 sharding-ul: o parte din \u00eenregistr\u0103rile din baza de date se afl\u0103 pe un server, o parte pe altul, \u0219i a\u0219a mai departe. \u00cen cazul criptomonedelor, o astfel de func\u021bionalitate este \u00eenc\u0103 destul de rar\u0103 \u2014 \u00een special, din cauza dificult\u0103\u021bii de a ad\u0103uga sharding \u00eentr-un sistem unde nu a fost planificat ini\u021bial.<\/p>\n<p><\/p>\n<p>Cum inten\u021bioneaz\u0103 TON s\u0103 rezolve ambele probleme descrise anterior?<\/p>\n<p><\/p>\n<h3 id=\"soderzhimoe-blokcheyna-vorkcheyny\">Con\u021binutul blockchain-ului. Workchains.<\/h3>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Partea 2: Blockchain-uri, \u0219ardare\" src=\"\/wp-content\/uploads\/2019\/05\/c4f0f6e6702322ad4312cb262b3a0fab.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u00cen primul r\u00e2nd, s\u0103 discut\u0103m despre ce se preconizeaz\u0103 a fi stocat \u00een blockchain. Vor fi stocate acolo st\u0103rile conturilor (\u201eportofele\u201d \u00een cazul de baz\u0103) \u0219i ale contractelor inteligente (pentru simplificare, s\u0103 presupunem c\u0103 acestea sunt acelea\u0219i cu conturile). Practic, aceasta va fi o tabel\u0103 hash obi\u0219nuit\u0103 \u2014 \u00een care cheile vor fi identificatorii <strong>account_id<\/strong>, iar valorile vor fi structuri de date care con\u021bin lucruri precum:<\/p>\n<p><\/p>\n<ul>\n<li>saldo;<\/li>\n<li>codul contractului inteligent (doar pentru contractele inteligente);<\/li>\n<li>depozitul de date al contractului inteligent (doar pentru contractele inteligente);<\/li>\n<li>statistici;<\/li>\n<li>(<em>op\u021bional<\/em>) cheia public\u0103 pentru transferuri din cont, default account_id;<\/li>\n<li>coada mesajelor ie\u0219ite (acestea sunt introduse aici pentru a fi trimise destinatarului);<\/li>\n<li>lista ultimelor mesaje livrate acestui cont.<\/li>\n<\/ul>\n<p><\/p>\n<p>Dup\u0103 cum s-a men\u021bionat mai sus, blocurile constau \u00een tranzac\u021bii \u2014 mesaje livrate diferitelor conturi account_id. Totu\u0219i, pe l\u00e2ng\u0103 account_id, mesajele con\u021bin de asemenea un c\u00e2mp de 32 de bi\u021bi <em>workchain_id<\/em> \u2014 identificatorul a\u0219a-numitului <strong>workchain<\/strong> (<em>workchain<\/em>, <em>blockchain-ul activ<\/em>). Acest lucru permite existen\u021ba mai multor blockchain-uri independente \u00eentre ele cu configura\u021bii diferite. \u00cen acest context, workchain_id = 0 este considerat un caz special, <strong>workchain-ul zero<\/strong> \u2014 soldurile aflate \u00een el vor corespunde criptomonedei TON (Grams). Cel mai probabil, \u00een primele etape nu vor exista deloc alte workchains.<\/p>\n<p><\/p>\n<h3 id=\"shardcheyny-infinite-sharding-paradigm\">Sharding-urile. Infinite Sharding Paradigm.<\/h3>\n<p><\/p>\n<p>\u00cens\u0103 cre\u0219terea num\u0103rului de blockchain-uri nu se opre\u0219te aici. S\u0103 ne ocup\u0103m de sharding. S\u0103 presupunem c\u0103 fiec\u0103rui cont (account_id) i se aloc\u0103 propriul blockchain \u2014 \u00een el se afl\u0103 toate mesajele care \u00eei sunt destinate \u2014 iar st\u0103rile tuturor acestor blockchain-uri sunt stocate pe noduri separate.<\/p>\n<p><\/p>\n<p>Desigur, este destul de costisitor: cel mai probabil, \u00een fiecare dintre aceste <strong>shardchain-uri<\/strong> (<em>shardchain<\/em>, <em>shard blockchain<\/em>) tranzac\u021biile vor veni foarte rar, iar noduri puternice vor fi necesare \u00een num\u0103r mare (pentru a anticipa, men\u021bionez c\u0103 nu este vorba doar despre clien\u021bi pe telefoane mobile \u2014 ci despre servere serioase).<\/p>\n<p><\/p>\n<p>De aceea, shardchain-urile combin\u0103 conturile prin prefixele binare ale identificatorilor lor: dac\u0103 un shardchain are prefixul 0110, atunci tranzac\u021biile tuturor account_id-urilor care \u00eencep cu ace\u0219ti cifre vor fi incluse. Acest <em>shard_prefix<\/em> poate avea o lungime de la 0 la 60 de bi\u021bi \u2014 iar cel mai important este c\u0103 poate fi modificat dinamic.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Partea 2: Blockchain-uri, \u0219ardare\" src=\"\/wp-content\/uploads\/2019\/05\/568aec7ad3d8cc3e268f0e60d453b502.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Atunci c\u00e2nd \u00eentr-unul dintre shardchain-uri \u00eencep s\u0103 vin\u0103 excesiv de multe tranzac\u021bii, nodurile care lucreaz\u0103 la el \u201e\u00eempart\u201d conform unor reguli predefinite \u00een dou\u0103 descenden\u021bi \u2014 prefixele lor vor fi cu un bit mai lung (\u0219i pentru unul dintre ei, acest bit va fi 0, iar pentru cel\u0103lalt \u2014 1). De exemplu, <em>shard_prefix<\/em> = <u>0110<\/u>b se va \u00eemp\u0103r\u021bi \u00een <u>0110<\/u>0b \u0219i <u>0110<\/u>1b. La r\u00e2ndul s\u0103u, dac\u0103 dou\u0103 shardchain-uri \u201evecine\u201d \u00eencep s\u0103 se simt\u0103 suficient de confortabil (pe o perioad\u0103 de timp), ele se vor fuziona din nou.<\/p>\n<p><\/p>\n<p>Astfel, sharding-ul se face \u201ede jos \u00een sus\u201d \u2014 presupunem c\u0103 fiecare cont are propriul s\u0103u shard, dar acestea sunt, deocamdat\u0103, \u201elipite\u201d \u00eempreun\u0103 prin prefixe. Aceasta este ceea ce implic\u0103 <strong>Infinite Sharding Paradigm<\/strong> (<em>paradigma sharding-ului infinit<\/em>).<\/p>\n<p><\/p>\n<p>Deosebit de important este c\u0103 workchain-urile exist\u0103 doar virtual \u2014 de fapt, <em>workchain_id<\/em> aceasta este o parte a identificatorului unui anumit shardchain. Vorbind \u00eentr-un limbaj formal, fiecare shardchain este definit printr-o pereche de numere (<em>workchain_id<\/em>, <em>shard_prefix<\/em>).<\/p>\n<p><\/p>\n<h3 id=\"ispravlenie-oshibok-vertikalnye-blokcheyny\">Corectarea erorilor. Blockchain-uri verticale.<\/h3>\n<p><\/p>\n<p>Se consider\u0103 \u00een mod tradi\u021bional c\u0103 orice tranzac\u021bie \u00een blockchain este \u201esculptat\u0103 \u00een piatr\u0103\u201d. Cu toate acestea, \u00een cazul TON este prev\u0103zut\u0103 posibilitatea de a \u201erescrie istoria\u201d \u2014 \u00een cazul \u00een care cineva (a\u0219a-numitul <em>nod-\u00abpe\u0219te\u00bb<\/em>) va dovedi c\u0103 unul dintre blocuri a fost semnat incorect. \u00cen acest caz, un bloc corectiv special este ad\u0103ugat la shardchain-ul corespunz\u0103tor, con\u021bin\u00e2nd hash-ul blocului corectat (\u0219i nu al ultimului bloc din shardchain). Reprezent\u00e2nd shardchain-ul ca un lan\u021b de blocuri a\u0219ezate orizontal, se poate spune c\u0103 blocul corectiv este ata\u0219at blocului eronat nu \u00een dreapta, ci deasupra \u2014 prin urmare, se consider\u0103 c\u0103 face parte dintr-un mic \u201elan\u021b de blocuri vertical\u201d. Astfel, se poate afirma c\u0103 shardchain-urile sunt <em>lan\u021buri de blocuri bidimensionale<\/em>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"TON: Telegram Open Network. Partea 2: Blockchain-uri, \u0219ardare\" src=\"\/wp-content\/uploads\/2019\/05\/eda526705f5febd37995901b5542264c.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u00cen cazul \u00een care blocurile ulterioare au f\u0103cut referire la modific\u0103rile introduse de blocul eronat (adic\u0103, au existat noi tranzac\u021bii pe baza unor blocuri invalide), blocurile respective primesc de asemenea corective ad\u0103ugate \u201edeasupra\u201d. Dac\u0103 blocurile nu au afectat informa\u021biile \u201ep\u0103gubite\u201d, aceste \u201evaluri corective\u201d nu se propag\u0103 la ele. De exemplu, \u00een ilustra\u021bia de mai sus, tranzac\u021bia din primul bloc care cre\u0219te soldul contului C a fost recunoscut\u0103 ca fiind eronat\u0103 \u2014 prin urmare, tranzac\u021bia care reduce soldul acestui cont \u00een al treilea bloc trebuie s\u0103 fie anulat\u0103, iar un bloc corectiv deasupra blocului \u00een sine trebuie s\u0103 fie angajat.<\/p>\n<p><\/p>\n<p>Trebuie remarcat \u2014 de\u0219i blocurile corective sunt ilustrate ca fiind \u201edeasupra\u201d celor originale, de fapt ele vor fi ad\u0103ugate la sf\u00e2r\u0219itul lan\u021bului de blocuri corespunz\u0103tor (unde ar trebui s\u0103 fie din punct de vedere cronologic). Dispunerea bidimensional\u0103 arat\u0103 doar la ce punct din lan\u021bul de blocuri va fi \u201eata\u0219at\u201d (prin intermediul hash-ului blocului original care se afl\u0103 \u00een ele).<\/p>\n<p><\/p>\n<p>Se poate filozofa separat asupra c\u00e2t de bun\u0103 este decizia de a \u201eschimba trecutul\u201d. S-ar p\u0103rea c\u0103, dac\u0103 admitem posibilitatea apari\u021biei unui bloc incorect \u00een shardchain, nu putem exclude nici posibilitatea apari\u021biei unui bloc corectiv eronat. Aici, din c\u00e2te \u00eemi pot da seama, diferen\u021ba const\u0103 \u00een num\u0103rul de noduri care trebuie s\u0103 ajung\u0103 la consens cu privire la noile blocuri \u2014 fiecare shardchain va avea o \u201e<em>echip\u0103 de lucru<\/em>\u201e de noduri (destul de des \u00ee\u0219i va schimba componen\u021ba), iar introducerea blocurilor corective va necesita acordul tuturor <em>nodurilor-validatoare<\/em>. Mai multe detalii despre validatori, echipe de lucru \u0219i alte roluri ale nodurilor voi prezenta \u00een urm\u0103torul articol.<\/p>\n<p><\/p>\n<h3 id=\"odin-blokcheyn-chtob-pravit-vsemi\">O singur blockchain pentru a le guverna pe toate<\/h3>\n<p><\/p>\n<p>Informa\u021biile enumerate mai sus despre diverse tipuri de blockchain-uri trebuie de asemenea stocate undeva. \u00cen special, ne referim la urm\u0103toarele date:<\/p>\n<p><\/p>\n<ul>\n<li>despre num\u0103rul \u0219i configura\u021biile workchain-urilor;<\/li>\n<li>despre num\u0103rul shardchain-urilor \u0219i prefixelor acestora;<\/li>\n<li>despre care noduri sunt \u00een prezent responsabile pentru care shardchain-uri;<\/li>\n<li>hash-urile celor mai recent ad\u0103ugate blocuri \u00een toate shardchain-urile.<\/li>\n<\/ul>\n<p><\/p>\n<p>A\u0219a cum a\u021bi putut ghici, toate aceste lucruri sunt \u00eenregistrate \u00eentr-un alt depozit blockchain - <strong>masterchain<\/strong> (<em>masterchain<\/em>, <em>master blockchain<\/em>). Datorit\u0103 prezen\u021bei hash-urilor blocurilor tuturor shardchain-urilor \u00een blocurile sale, acesta face sistemul foarte interconectat. Aceasta \u00eenseamn\u0103 c\u0103 generarea unui nou bloc \u00een masterchain va avea loc imediat dup\u0103 generarea blocurilor \u00een shardchain-uri - se a\u0219teapt\u0103 ca blocurile \u00een shardchain-uri s\u0103 apar\u0103 aproape simultan la fiecare aproximativ 5 secunde, iar un nou bloc \u00een masterchain s\u0103 apar\u0103 la o secund\u0103 dup\u0103 aceasta.<\/p>\n<p><\/p>\n<p>Dar cine va fi responsabil pentru implementarea \u00eentregii acestei lucr\u0103ri titanice - pentru trimiterea mesajelor, executarea contractelor inteligente, formarea blocurilor \u00een shardchain-uri \u0219i masterchain, \u0219i de asemenea verificarea blocurilor pentru erori? Oare toate acestea vor fi realizate \u00een t\u0103cere de telefoanele a milioane de utilizatori cu clientul Telegram instalat pe ele? Sau, poate, echipa lui Durov va renun\u021ba la ideea de descentralizare \u0219i va \u00eencerca s\u0103 fac\u0103 acest lucru pe serverele lor \u00een stilul vechi?<\/p>\n<p><\/p>\n<p>De fapt, niciuna dintre aceste r\u0103spunsuri nu este corect\u0103. Dar paginile acestui articol se termin\u0103 rapid, a\u0219a c\u0103 discutarea diferitelor roluri ale nodurilor (a\u021bi putut observa deja unele dintre ele) \u0219i mecanicile lor de func\u021bionare va fi f\u0103cut\u0103 \u00een partea urm\u0103toare.<\/p>\n<p>Sursa: <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.2.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\/ro\/blog\/administrirovanie\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\/ro\/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. Partea 2: Blockchain-uri, shardare | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/ton-telegram-open-network-chast-2-blokchejny-shardirovanie","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\/ro\/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\/ro\/wp-json\/wp\/v2\/posts\/34631","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=34631"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/34631\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/26098"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=34631"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=34631"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=34631"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}