TON: Telegram Open Network. Vaega 1: Folasaga, laupepa fesoʻotaʻiga, ADNL, DHT, faʻapipiʻi fesoʻotaʻiga

TON: Telegram Open Network. Vaega 1: Folasaga, laupepa fesoʻotaʻiga, ADNL, DHT, faʻapipiʻi fesoʻotaʻiga

Mo le lua vaiaso i le taimi nei, o le Runet o loʻo pisa e uiga i Telegram ma le tulaga i lona le mautonu ma le le alofa poloka e Roskomnadzor. O le ricochet na afaina ai le tele o tagata, ae o nei mea uma o autu mo pou i Geektimes. Na ou ofo i se isi mea - Ou te leʻi vaʻaia lava se suʻesuʻega se tasi i luga o le Habré o le TON network na fuafuaina mo le faʻasaʻolotoina i luga o le faavae o Telegram - Telegram Open Network. Na ou manaʻo e faʻaleleia lenei faʻaletonu, aua o loʻo i ai se mea e suʻesuʻe ai - tusa lava pe leai ni faʻamatalaga aloaia e uiga i ai.

Sei ou faamanatu atu ia te oe o loʻo i ai tala o Telegram ua faʻalauiloaina se ICO tapunia tele, ua uma ona aoina mai le tele o tupe. O loʻo faʻamoemoeina o le a faʻalauiloaina le tupe a le Gram i lenei tausaga - ma o tagata uma Telegram o le a otometi lava ona i ai se atotupe, lea e maua ai e ia lava se avanoa taua i luga o isi faʻamatalaga.

Ae paga lea, talu ai e leai ni faʻamatalaga aloaia, e mafai ona ou faʻaauau atili mai pepa e le iloa le amataga, lea ou te vave lapataia ai outou. O le mea moni, atonu e foliga mai o se pepelo sili ona atamai, ae e mafai foi ona avea o se pepa paʻepaʻe moni o le faiga o le lumanaʻi, na tusia e Nikolai Durov (ma faʻafefe, masalo, e se tasi o le au teu tupe). Ae tusa lava pe pepelo, e leai se tasi e faʻasaina i tatou e suʻesuʻe ma talanoaina, saʻo?

O le a le tala a lenei pepa? O le a ou taumafai e toe faamatala i aʻu lava upu, latalata i le tusitusiga, ae i le gagana Rusia ma sili atu le tagata (talosia ia faʻamagaloina aʻu e Nikolai ma lona uiga e alu i le matematika aloaʻia). Ia manatua e tusa lava pe moni lenei mea, o se faʻataʻitaʻiga faʻamatalaga o le faiga ma e foliga mai e suia i le taimi o le faʻalauiloaina lautele.

Matou te aʻoaʻoina e faʻaopoopo i le cryptocurrency, e tele naua mea e faʻamoemoeina. Sei o tatou faia i le faasologa.

  • TON Blockchain. O le faavae lea o le faiga atoa. Afai e te le iloa po o le a poloka poloka - Ou te fautuaina le sailia, aua o le a tele poloka poloka iinei. Fa'anofo i totonu o le tasi ma le isi, toetoe lava vaeluaina ma e oo lava i poloka poloka "tutusa" i totonu o poloka o isi poloka poloka. O le a iai fo'i ni fa'amatalaga manaia e pei o Fa'asolo vave Hypercube и Fa'ata'ita'iga Fa'asoa e le I'u, ae sili atu i lena mea mulimuli ane. Ma, ioe, faʻamaoniga-o-siteki ma konekarate atamai.
  • TON P2P Network. Feso'ota'iga peer-to-peer i luga o le fa'avae o le a fausia ai le faiga. O le a talanoaina muamua o ia i lenei vaega o le tala.
  • TON Teuga. O le teuina o faila, lea, e tusa lava po o le a le poloka poloka, o le a fausia i luga o le fesoʻotaʻiga a le tupulaga e taʻua i luga. E mafai ona faʻatusatusa i torrents.
  • TON Sui. Ole 'au'aunaga lea o lona fa'amoemoe o le fa'ateleina lea o le fa'ailoaina o tagata auai i feso'ota'iga. So'o se afifi e le mafai ona lafo sa'o, ae e ala atu i alalaupapa fa'alilolilo fa'atasi ai ma fa'ailoga fa'aopoopo - pei ole I2P po'o le TOR.
  • TONA DHT. Tufatufaina hash table mo le teuina o mea taua. E fausia foi i luga TON Network (ae i le taimi lava e tasi e faʻaaogaina e ia) ma fesoasoani TON Teuga su'e nodes "tufatufaina", ma TON Sui — tagata toe fai vavalo. Ae e tatau ona maitauina, e le pei o le poloka poloka, o lenei laulau hash e le o se teuina malu - e le mafai ona e teuina faʻamatalaga taua i totonu.
  • TON Services. Fa'avae mo auaunaga masani. O le mea moni, o se Initaneti fou lea i luga o mea uma o loʻo faʻamatalaina i luga. Fetufaaiga o faamatalaga - e ala i TON Network/TON Sui, ma o le manatu o loʻo i totonu o konekarate atamai a le TON Blockchain. Ma se fa'aoga fa'atasi ma URL masani masani.
  • TON DNS. Talu ai o loʻo matou talanoa e uiga i URL masani, matou te manaʻomia foi se tagata liliu mai ia i latou i tuatusi 256-bit - tala, konekarate, tautua ma nodes.
  • TON totogi. Ma o le mea lea e sau ai le mataupu tau tupe. Ma o le a le gata ina gram - pei o le eteru, soʻo se "faailoga" o le a mafai; O le kalama o le a na'o le tupe "valea" iinei.

Ole vaega muamua lea o lo'o fa'amatalaina ai le "grounded" layer o le TON - lona vaega feso'ota'iga, fausia i luga o tu ma aga masani. I le isi vaega o le a tatou talanoa e uiga i le "malulu" - poloka poloka, lea o le a lagolagoina e le faiga o loʻo faʻamatalaina i lalo. O le mea lea, o laʻu faʻatonuga o le toe faʻamatalaina e fai si ese mai le faʻaaogaina i le pepa o loʻo taʻua i luga (lea e amata vave i le tulaga faʻapitoa).

Faʻamatalaga autu

TL (Ituaiga Gagana). Ose fa'avasegaina fa'aletupe mo fa'atonuga fa'amaumauga. E faʻaaogaina i le Telegram protocol ma o le a faʻaaogaina i le TON. Afai e te manaʻo e faʻamasani auʻiliʻili i ai - o lana faamatalaga lea.

Hash (A'afia). O se galuega e fa'atino ai se suiga e le mafai ona toe fa'afo'isia o se fa'asologa o fa'amaumauga i totonu o se numera tasi o le umi tumau. I totonu o faʻamaumauga uma matou te talanoa e uiga i le galuega SHA-256.

Node feso'ota'iga (pona). O le node o le polokalama lea e mautinoa ai le faʻaogaina o le faiga. Aemaise lava, o loʻo faʻapea o talosaga taʻitasi a le tagata faʻatau Telegram o le a aofia ai se node TON. I se tulaga maualalo, o nodes o loʻo i ai tuatusi IPv4/IPv6 ma fesoʻotaʻi e faʻaaoga ai le UDP protocol; i se tulaga maualuga, latou te maua. tuatusi manino ma fa'atino le fa'asologa o le ADNL (e uiga i tuatusi fa'apitoa ma ADNL - va'ai i lalo). A oʻo mai i le mea moni o nisi vaega o le faiga e faia se mea pe teuina ni faʻamatalaga, e malamalama o loʻo faia lenei mea e nodes network.

Fa'amatalaga fa'amatalaga (pe faigofie foi tuatusi, tuatusi). O le tuatusi o se node e fuafua i lona ki lautele. E sili atu le faʻamaoni, o se 256-bit hash (SHA256) o le faʻasologa o faʻamaumauga o loʻo i ai le ki lautele (e le o faʻamaonia le cryptographic algorithm - elliptic curves ma RSA-2048 o loʻo tuʻuina atu e fai ma faʻataʻitaʻiga). Ina ia mafai ona fesoʻotaʻi le tasi node ma le isi, e manaʻomia le iloa e le gata o le tuatusi o lena, ae faʻapea foʻi ma lenei faʻamaumauga. I le talitonuga, e tasi le node faaletino e mafai ona fatuina soʻo se numera o tuatusi (e fetaui ma ki eseese).

E le gata i lea, e naʻo se fesoʻotaʻiga e masani ona faʻaaogaina: o se "faʻataʻitaʻiga" i le tulaga o se fausaga TL (o loʻo i ai toetoe lava o soʻo se faʻamatalaga), ma se 256-bit hash mai ai, faʻaaogaina mo le tautala.

Blockchain (blockchain). Blockchain o se faʻamaumauga faʻamaumauga, elemene (poloka) lea e faʻatonuina i totonu o se "filifili", ma o poloka taʻitasi mulimuli ane o le filifili o loʻo i ai le hash o le muamua. I lenei auala, e ausia ai le faʻamaoni - e naʻo le faʻaopoopoina o poloka fou e mafai ona faia suiga.

tautua (tautua). Au'aunaga i totonu o le TON e mafai ona eseese ituaiga, fa'alagolago pe latou te fa'aogaina poloka poloka pe leai. Mo se faʻataʻitaʻiga, tasi (poʻo le tele) fesoʻotaʻiga nodes e mafai ona faʻatautaia nisi o talosaga a le RPC e faʻaaoga ai le ADNL protocol o loʻo faʻamatalaina i lalo, e aunoa ma le fatuina o soʻo se faʻamaumauga i le poloka poloka - e pei o sapalai i luga ole laiga masani. E aofia ai le avanoa e faʻatino ai le HTTP i luga ole ADNL, faʻapea foʻi ma le suiga o le avefeau lava ia i lenei feagaiga. I le faʻatusa ma le TOR poʻo le I2P, o le a sili atu ona faʻasaʻo i poloka eseese.

I le taimi lava e tasi, o le tele o auʻaunaga e aofia uma ai fegalegaleaiga ma le poloka poloka ma le faagasologa o talosaga i fafo atu. Mo se faʻataʻitaʻiga, mo le TON Storage - faila faila - e le talafeagai tele le teuina o faila i luga ole poloka poloka. O le a aofia ai naʻo faila faila (faʻatasi ai ma nisi faʻamatalaga-meta e uiga ia i latou), ma faʻapitoa fesoʻotaiga fesoʻotaʻiga o le a avea ma "faila faila", sauni e auina atu i isi nodes e ala i le ADNL.

Tautua puao (tautua puao). O loʻo matou talanoa e uiga i nisi o auʻaunaga e faʻaalia ai le tuʻufaʻatasia ma tatala le auai i latou. Mo se faʻataʻitaʻiga, TON Proxy o se auaunaga e mafai ona lagolagoina e soʻo se sui auai e manaʻo e tuʻuina atu a latou node e fai ma sui (proxy) faʻafeiloaʻi pepa i le va o isi node. Afai e manaʻo ai, e mafai ona ia totogiina se totogifuapauina na ia faʻatulagaina mo lenei mea - faʻaaogaina le TON Payments system mo micropayments (lea, i le isi itu, o se auaunaga fog).

ADNL: Avanoa Faʻamatalaga Faʻamatalaga Faʻamatalaga

I le tulaga pito i lalo, o fesoʻotaʻiga i le va o nodes o le a faia e faʻaaoga ai le UDP protocol (e ui o isi filifiliga e talia).

E pei ona taʻua i luga, ina ia mafai e le tasi node ona lafo se afifi i le isi, e tatau ona iloa se tasi o ana ki lautele (ma o le tuatusi o loʻo faʻamatalaina). Na te fa'ailogaina le pepa i lenei ki ma fa'aopoopo le 256-bit tuatusi taunu'u i le amataga o le afifi - talu ai e tasi le node e mafai ona i ai le tele o nei tuatusi, o le a mafai ai ona iloa po'o fea ki e fa'aoga mo le decryption.

TON: Telegram Open Network. Vaega 1: Folasaga, laupepa fesoʻotaʻiga, ADNL, DHT, faʻapipiʻi fesoʻotaʻiga

E le gata i lea, nai lo le tuatusi o le tagata e mauaina, o le amataga o le pepa faʻamatalaga e mafai ona aofia ai le mea e taʻua. fa'ailoa auala. I lenei tulaga, o le faagasologa o le afifi ua uma ona faʻalagolago i maliega faʻapitoa i le va o nodes - mo se faʻataʻitaʻiga, o faʻamatalaga na lafoina i se auala e mafai ona faʻamoemoeina mo se isi node ma e tatau ona tuʻuina atu i ai (o le auaunaga lea. TON Sui). O le isi mataupu fa'apitoa atonu o le fegalegaleai sa'o i le va o nodes, ae fa'atasi ai ma fa'amatalaga e fa'aaoga ai se paga ta'ito'atasi mo lenei alalaupapa (mua'i fa'atupuina ile fa'aogaina ole Diffie-Hellman protocol).

Ma le mea mulimuli, o se mataupu faʻapitoa o le "null" auala - afai e leʻi iloa e se node ki lautele a ona "tuaoi," e mafai ona auina atu ia i latou pepa e aunoa ma se faʻailoga. E fa'amoemoe mo na'o le amataga - a lafo loa e nodes fa'amatalaga e uiga ia latou ki, e tatau ona fa'aoga mo nisi feso'ota'iga.

O le faʻasalalauga o loʻo faʻamatalaina i luga (256 bits o le faʻailoaina o alalaupapa + mea e aofia ai pusa) e taʻua o le ADNL. O faʻamaumauga o loʻo taʻua ai le mafai ona faʻaaogaina se faʻatusa o le TCP i luga o le pito i luga poʻo lana lava faʻaopoopoga - RLDP (Reliable Large Datagram Protocol), ae e le o faʻamatalaga e uiga i le faʻatinoga.

TON DHT: Fa'asoa Hash Table

E pei o le tulaga i isi faiga tufatufaina, TON e aofia ai le faʻatinoina o le DHT - tufatufaina hash table. Aemaise lava, o le laulau o E pei o Kademlia. Afai e te le masani i lenei ituaiga o laulau hash, aua e te popole, i lalo o le a ou faʻamatalaina pe faapefea ona latou galulue.

TON: Telegram Open Network. Vaega 1: Folasaga, laupepa fesoʻotaʻiga, ADNL, DHT, faʻapipiʻi fesoʻotaʻiga

I se faʻamatalaga faʻapitoa, DHT faʻafanua 256-bit ki i tau faʻalua o le umi faʻatatau. I lenei tulaga, o ki o loʻo i luga o le laulau o faʻamaʻi mai se fausaga TL faʻapitoa (o fausaga lava ia e teuina faʻatasi ma le DHT). E talitutusa lava ma le faʻatulagaina o tuatusi node - ma e mafai moni lava ona i ai i le DHT (mo se faʻataʻitaʻiga, faʻaaogaina o sea ki le tuatusi IP o se node e fetaui ma se mea ua tuʻuina atu. tuatusi fa'amatalaga, pe afai na te le natia). Ae i le tulaga lautele, "faʻataʻitaʻiga o ki" (latou faamatalaga, fa'amatalaga autu) o metadata o loʻo faʻaalia ai le "tagata e ona" o se faʻamatalaga i totonu o se laulau hash (o lona uiga, o le ki lautele o nisi node), le ituaiga o tau o loʻo teuina, ma tulafono e mafai ai ona suia mulimuli ane lenei faʻamatalaga. Mo se faʻataʻitaʻiga, e mafai e se tulafono ona faʻatagaina naʻo lē e ona e suia le tau, pe faʻasa le suia o le tau i lalo (e puipuia mai osofaʻiga toe fai).

I le faaopoopo atu i 256-bit ki, o le manatu o tuatusi DHT ua faʻalauiloaina. O le eseesega ma tuatusi talimalo masani o le tuatusi DHT e tatau ona noatia i se tuatusi IP. Afai e le natia e se node lona IP, e mafai ona faʻaogaina se tuatusi masani mo le DHT. Ae o le tele o taimi, o le a faia se tuatusi "semi-permanent" ese mo manaoga DHT.
TON: Telegram Open Network. Vaega 1: Folasaga, laupepa fesoʻotaʻiga, ADNL, DHT, faʻapipiʻi fesoʻotaʻiga
O le manatu o le mamao o loʻo faʻaalia i luga aʻe o ki ma tuatusi DHT - i lenei mea mea uma e fetaui ma laulau. kademlia - o le mamao i le va o ki e tutusa ma le XOR (bitwise exclusive OR) o latou. E pei o laulau a Kademlia, o le tau e fetaui ma se ki faapitoa e tatau ona teuina i luga s nodes e sili ona puupuu le mamao i lenei ki (s o se numera laʻititi lea).

Ina ia mafai e le DHT ona fesoʻotaʻi ma isi faʻapena, e teu i le mafaufau DHT laulau ta'avale - DHT ma tuatusi IP o nodes lea na fegalegaleai ai muamua, faʻavasega i le mamao ia i latou. E 256 ia vaega (latou te fetaui ma le pito sili ona taua o loʻo seti i le tau mamao - o lona uiga, nodes i le mamao mai le 0 i le 255 o le a pa'ū i le tasi vaega, mai le 256 i le 65535 - i le isi, ma isi). I totonu o vaega taʻitasi, o loʻo teuina se numera faʻatapulaʻa o nodes "sili ona lelei" (i tulaga o ping ia i latou).

TON: Telegram Open Network. Vaega 1: Folasaga, laupepa fesoʻotaʻiga, ADNL, DHT, faʻapipiʻi fesoʻotaʻiga

O node ta'itasi e tatau ona lagolagoina ni galuega se tele: teuina o se tau mo se ki, sailiga node и saili mo tulaga faatauaina. O le su'eina o nodes e aofia ai le tu'uina atu, fa'avae i luga o se ki ua tu'uina atu, o nodes e sili ona latalata i ai mai le laulau fa'ata'avalevale; o le suʻeina o tau e tutusa, sei vagana ua iloa e le node le tau o le ki (ona toe faʻafoʻi mai lea). E tusa ai, afai e manaʻo le node e suʻe se tau e ala i le ki i le DHT, e tuʻuina atu talosaga i se numera itiiti o nodes e latalata i lenei ki mai lona laulau faʻataʻavalevale. Afai o le tau manaomia e le oi totonu o latou tali, ae o loʻo i ai isi tuatusi node, ona toe fai lea o le talosaga ia i latou.

TON DHT e mafai ona faʻaaogaina mo faʻamoemoega eseese, mo se faʻataʻitaʻiga, e faʻatino ai se faila faila e pei o torrent (vaai. TON Teuga); e fuafua ai tuatusi o nodes o loʻo faʻatinoina nisi auaunaga; e teu ai faʻamatalaga e uiga i tagata e ona faʻamatalaga i le poloka poloka. Ae o le faʻaoga sili ona taua o le mauaina o nodes e ala i latou tuatusi faʻamatalaga. Ina ia faia lenei mea, o le tuatusi e faʻaaogaina o se ki e manaʻomia ona maua lona tau. O se taunuuga o le talosaga, a le o le node lava ia o le a maua (pe a fai o le tuatusi suʻesuʻe o lona tuatusi DHT semi-permanent), poʻo le tau o le tuatusi IP ma le taulaga mo fesoʻotaʻiga - poʻo se isi tuatusi e tatau ona faʻaaogaina e avea o se alavai vavalo.

Fa'apipi'i feso'otaiga ile TON

O le tulafono a le ADNL o loʻo faʻamatalaina i luga o loʻo faʻaalia ai le mafai e soʻo se nodes ona fefaʻasoaaʻi faʻamatalaga ma isi - e ui lava e le o se auala sili ona lelei. E mafai ona matou fai atu faʻafetai i le ADNL, o nodes uma e fausia ai se kalafi TON i le lalolagi (fesoʻotaʻi lelei). Ae e mafai fo'i ona fai fa'apipi'i feso'ota'iga - subkalafa i totonu o lenei kalafi.
TON: Telegram Open Network. Vaega 1: Folasaga, laupepa fesoʻotaʻiga, ADNL, DHT, faʻapipiʻi fesoʻotaʻiga

I totonu o sea fesoʻotaʻiga, o fegalegaleaiga e faia saʻo - e ala i fesoʻotaʻiga muamua i le va o nodes o loʻo auai i le fesoʻotaʻiga (e ala i auala ADNL o loʻo faʻamatalaina i luga). O le faʻavaeina o ia fesoʻotaʻiga i le va o tuaoi, o le sailiga mo tuaoi lava ia, o se faiga faʻapitoa lea e taumafai e faʻamautu le fesoʻotaʻiga o le fesoʻotaʻiga faʻapipiʻi ma faʻaitiitia le tuai i le fesuiaiga o faʻamatalaga i totonu.

E le gata i lea, o loʻo i ai se auala e faʻasalalau vave ai faʻasalalauga tetele i totonu o le fesoʻotaʻiga - o loʻo malepelepe, faʻaopoopoina i le faʻasaʻoina o mea sese, ma o nei vaega uma e lafo mai le tasi tagata auai i le isi. O le mea lea, e le manaʻomia e le tagata auai ona maua atoatoa vaega uma aʻo leʻi tuʻuina atu i luga o le upega tafailagi.

O feso'ota'iga fa'apipi'i e mafai ona fa'alaua'itele pe fa'alilolilo. O le avea ma se sui o se feso'ota'iga lautele e le faigata - e tatau ona e su'e se fausaga TL e fa'amatala ai (e mafai ona fa'alaua'itele pe mafai ona maua e se ki i le DHT). I le tulaga o se fesoʻotaʻiga tumaoti, o lenei fausaga e tatau ona iloa muamua i le node.

Ia faaauau pea

Na ou filifili e vaevae le iloiloga a le TON i ni nai tala. O iinei e gata ai le vaega lea, ma i le isi Ou te agai i luma e mafaufau i le fausaga o le poloka poloka (sili atu saʻo, poloka poloka) o le a aofia ai le TON.

puna: www.habr.com

Faaopoopo i ai se faamatalaga