TON: Telegram Qhib Network. Part 2: Blockchains, sib faib

TON: Telegram Qhib Network. Part 2: Blockchains, sib faib

Cov ntawv no yog ib qho txuas ntxiv ntawm cov kab lus uas kuv tshuaj xyuas cov qauv ntawm (tej zaum) faib network Telegram Open Network (TON), uas tau npaj rau kev tso tawm xyoo no. IN yav dhau los Kuv tau piav qhia txog nws theem pib tshaj plaws - txoj kev nodes cuam tshuam nrog ib leeg.

Tsuas yog nyob rau hauv rooj plaub no, cia kuv ceeb toom rau koj tias kuv tsis muaj dab tsi cuam tshuam nrog kev txhim kho ntawm lub network no thiab tag nrho cov khoom tau khaws cia los ntawm qhov qhib (txawm tias tsis tau lees paub) qhov chaw - daim ntawv (tseem muaj nrog daim ntawv qhia, luv luv piav qhia txog cov ntsiab lus tseem ceeb), uas tau tshwm sim thaum kawg ntawm xyoo tas los. Tus nqi ntawm cov ntaub ntawv hauv daim ntawv no, hauv kuv lub tswv yim, qhia nws qhov tseeb, txawm tias tsis muaj kev lees paub txog qhov no.

Niaj hnub no peb yuav saib lub ntsiab ntawm TON - lub blockchain.

Cov ntsiab lus yooj yim

account (account). Ib pawg ntawm cov ntaub ntawv txheeb xyuas los ntawm tus lej 256-ntsis account_id (feem ntau qhov no yog tus yuam sij rau pej xeem ntawm tus tswv account). Hauv cov ntaub ntawv hauv paus (saib hauv qab no xoom workchain), cov ntaub ntawv no hais txog tus neeg siv qhov nyiaj tshuav. "Occupy" tshwj xeeb account_id leej twg tuaj yeem, tab sis nws tus nqi tsuas yog hloov tau raws li qee txoj cai.

Daim ntawv cog lus ntse (ntse-sib cog lus). Hauv cov ntsiab lus, nws yog ib qho tshwj xeeb ntawm tus account, ntxiv nrog cov ntawv cog lus ntse thiab khaws cia ntawm nws qhov hloov pauv. Yog hais tias nyob rau hauv cov ntaub ntawv ntawm "lub hnab nyiaj" koj tuaj yeem tso thiab rho nyiaj los ntawm nws raws li cov cai yooj yim thiab tau txiav txim siab ua ntej, tom qab ntawd nyob rau hauv cov ntaub ntawv ntawm daim ntawv cog lus ntse cov cai no tau sau rau hauv daim ntawv ntawm nws cov cai (hauv qee qhov Turing-ua tiav. programming lus).

Blockchain State (lub xeev ntawm blockchain). Cov txheej txheem ntawm lub xeev ntawm tag nrho cov nyiaj / cov ntawv cog lus ntse (hauv qhov kev nkag siab tsis meej, lub rooj hash, qhov twg cov yuam sij yog tus lej account thiab cov txiaj ntsig yog cov ntaub ntawv khaws cia hauv cov nyiaj).

lus (lus). Saum toj no kuv siv cov lus qhia "credit thiab debit nyiaj" - qhov no yog ib qho piv txwv ntawm cov lus ("hloov N grams los ntawm tus account account_1 rau account account_2"). Pom tseeb, tsuas yog cov node uas yog tus tswv tus account tus yuam sij ntiag tug tuaj yeem xa cov lus zoo li no account_1 - thiab muaj peev xwm lees paub qhov no nrog kos npe. Qhov tshwm sim ntawm kev xa cov lus no mus rau ib tus account tsis tu ncua yog qhov nce hauv nws qhov nyiaj tshuav, thiab qhov tshwm sim ntawm daim ntawv cog lus ntse yog kev ua tiav ntawm nws cov cai (uas yuav ua tiav cov ntawv txais cov lus). Tau kawg, lwm cov lus tseem tuaj yeem ua tau (hloov tsis yog nyiaj txiag, tab sis cov ntaub ntawv tsis txaus ntseeg ntawm cov ntawv cog lus ntse).

Kev lag luam (lw). Qhov tseeb hais tias cov lus xa tawm yog hu ua kev hloov pauv. Kev lag luam hloov lub xeev ntawm blockchain. Nws yog kev lag luam (cov ntawv xa cov ntaub ntawv) uas tsim cov blocks hauv blockchain. Hauv qhov no, koj tuaj yeem xav txog lub xeev ntawm blockchain raws li cov ntaub ntawv nce ntxiv - tag nrho cov blocks yog "diffs" uas yuav tsum tau siv ua ntu zus kom tau txais lub xeev tam sim no ntawm cov ntaub ntawv. Qhov tshwj xeeb ntawm ntim cov "diffs" no (thiab rov ua kom tag nrho lub xeev los ntawm lawv) yuav tau tham hauv tsab xov xwm tom ntej.

Blockchain hauv TON: nws yog dab tsi thiab vim li cas?

Raws li tau hais hauv tsab xov xwm dhau los, blockchain yog cov ntaub ntawv qauv, cov ntsiab lus (blocks) uas tau txiav txim rau hauv "chain", thiab txhua qhov txuas ntxiv ntawm cov saw muaj ib qho hash ntawm yav dhau los.. Cov lus nug cov lus nug: vim li cas peb thiaj xav tau cov qauv ntaub ntawv zoo li no thaum peb twb muaj DHT - lub rooj sib faib hash? Pom tseeb, qee cov ntaub ntawv tuaj yeem khaws cia hauv DHT, tab sis qhov no tsuas yog tsim nyog rau cov ntaub ntawv "rhiab heev" tsis dhau. Cryptocurrency tshuav nyiaj li cas tsis tuaj yeem khaws cia hauv DHT - feem ntau yog vim tsis muaj kev txheeb xyuas kev ncaj ncees. Qhov tseeb, tag nrho qhov nyuaj ntawm cov qauv blockchain loj hlob txhawm rau tiv thaiv kev cuam tshuam nrog cov ntaub ntawv khaws cia hauv nws.

Txawm li cas los xij, blockchain hauv TON zoo nkaus li nyuaj dua li hauv feem ntau lwm cov kev faib tawm - thiab rau ob qho laj thawj. Thawj yog qhov kev ntshaw kom txo qis qhov xav tau diav rawg. Nyob rau hauv ib txwm cryptocurrencies, tag nrho cov tsis tau teem rau thawj theem thiab kev sim hloov lawv tiag tiag ua rau qhov tshwm sim ntawm "lwm cryptocurrency ntug." Qhov laj thawj thib ob yog kev txhawb nqa rau crushing (kev sib faib, kev sib faib) blockchain. Blockchain yog ib qho qauv uas tsis tuaj yeem ua me dua lub sijhawm; thiab feem ntau txhua tus ntawm lub luag haujlwm rau kev ua haujlwm ntawm lub network raug yuam kom khaws nws tag nrho. Hauv cov txheej txheem ib txwm muaj (centralized), sharding yog siv los daws cov teeb meem zoo li no: qee cov ntaub ntawv hauv cov ntaub ntawv muaj nyob ntawm ib tus neeg rau zaub mov, qee qhov ntawm lwm tus, thiab lwm yam. Nyob rau hauv cov ntaub ntawv ntawm cryptocurrencies, xws li functionality yog tseem tsis tshua muaj - tshwj xeeb, vim hais tias nws yog ib qho nyuaj rau ntxiv sharding rau ib tug system uas nws tsis yog thawj zaug npaj.

TON npaj yuav daws ob qho teeb meem saum toj no li cas?

Blockchain cov ntsiab lus. Cov hlua ua haujlwm.

TON: Telegram Qhib Network. Part 2: Blockchains, sib faib

Ua ntej tshaj plaws, cia peb tham txog dab tsi tau npaj yuav khaws cia hauv blockchain. Cov xeev ntawm cov nyiaj ("hnab nyiaj" hauv cov ntaub ntawv hauv paus) thiab cov ntawv cog lus ntse yuav muab khaws cia rau ntawd (rau qhov yooj yim, peb yuav xav tias qhov no yog tib yam li cov nyiaj). Hauv qhov tseem ceeb, qhov no yuav yog lub rooj hash tsis tu ncua - cov yuam sij hauv nws yuav yog tus cim account_id, thiab qhov tseem ceeb yog cov ntaub ntawv qauv uas muaj xws li:

  • tshuav nyiaj li cas;
  • ntse daim ntawv cog lus (tsuas yog rau cov ntawv cog lus ntse);
  • ntse daim ntawv cog lus khaws cia (rau cov ntawv cog lus ntse nkaus xwb);
  • txheeb cais;
  • (yeem) pej xeem tus yuam sij rau kev hloov ntawm tus as khauj, los ntawm lub neej ntawd account_id;
  • kab ntawm cov lus tawm (ntawm no lawv tau nkag mus rau xa mus rau tus neeg txais);
  • ib daim ntawv teev cov lus tseeb xa mus rau tus account no.

Raws li tau hais los saum no, cov blocks lawv tus kheej muaj cov kev lag luam - cov lus xa mus rau ntau tus account_id accounts. Txawm li cas los xij, ntxiv rau account_id, cov lus tseem muaj 32-ntsis teb workchain_id - lub npe hu ua identifier txoj haujlwm (txoj haujlwm, ua haujlwm blockchain). Qhov no tso cai rau koj kom muaj ntau lub blockchains ywj siab los ntawm ib leeg nrog cov teeb tsa sib txawv. Nyob rau hauv cov ntaub ntawv no, workchain_id = 0 yog suav hais tias yog ib rooj plaub tshwj xeeb, xoom workchain - nws yog qhov sib npaug hauv nws uas yuav sib haum rau TON (Grams) cryptocurrency. Feem ntau yuav, thaum xub thawj, lwm cov khoom ua haujlwm yuav tsis muaj nyob rau hauv tag nrho.

Shardchains. Infinite Sharding Paradigm.

Tab sis kev loj hlob ntawm tus naj npawb ntawm blockchains tsis nres ntawd. Cia peb nrog sharding. Cia peb xav txog tias txhua tus account (account_id) tau faib nws tus kheej blockchain - nws muaj tag nrho cov lus uas tuaj rau nws - thiab cov xeev ntawm tag nrho cov blockchains no tau khaws cia ntawm cov nodes.

Tau kawg, qhov no yog qhov khib nyiab heev: feem ntau yuav, hauv txhua qhov ntawm no shardchains (shardchain, thaiv blockchain) kev lag luam yuav tuaj txog tsis tshua muaj, thiab ntau cov nodes muaj zog yuav xav tau (saib tom ntej, kuv nco ntsoov tias peb tsis yog tham txog cov neeg siv khoom ntawm cov xov tooj ntawm tes - tab sis hais txog cov servers loj).

Yog li ntawd, shardchains muab cov nyiaj los ntawm binary prefixes ntawm lawv cov cim: yog tias lub shardchain muaj lub npe ntawm 0110, ces nws yuav suav nrog kev hloov pauv ntawm txhua tus account_ids uas pib nrog cov lej no. Qhov no shard_prefix tuaj yeem muaj qhov ntev ntawm 0 txog 60 khoom - thiab qhov tseem ceeb yog tias nws tuaj yeem hloov pauv hloov pauv.

TON: Telegram Qhib Network. Part 2: Blockchains, sib faib

Sai li ib qho ntawm cov shardchains pib tau txais ntau qhov kev lag luam, cov nodes ua haujlwm ntawm nws, raws li cov cai tau teev tseg, "sib cais" rau hauv ob tug me nyuam - lawv cov lus ua ntej yuav ntev me ntsis (thiab rau ib qho ntawm lawv qhov no yuav yog. sib npaug rau 0, thiab rau lwm tus - 1). Piv txwv li, shard_prefix = 0110b yuav faib ua 01100b i ib 01101b ib. Nyob rau hauv lem, yog hais tias ob tug "neeg nyob sib ze" shardchains pib xav tias yooj yim txaus (rau qee lub sijhawm), lawv yuav rov ua dua.

Yog li, sharding yog ua tiav "los ntawm hauv qab mus" - peb xav tias txhua tus account muaj nws tus kheej shard, tab sis rau lub sij hawm uas lawv tau "glued ua ke" los ntawm prefixes. Qhov no txhais li cas Infinite Sharding Paradigm (infinite sharding paradigm ua).

Cais, kuv xav hais ntxiv tias workchains tsuas muaj nyob xwb - qhov tseeb, workchain_id nws yog ib feem ntawm tus cim ntawm ib qho tshwj xeeb shardchain. Hauv cov ntsiab lus raug cai, txhua tus shardchain yog txhais los ntawm ib khub ntawm tus lej (workchain_id, shard_prefix).

Kev kho yuam kev. Vertical blockchains.

Kev lig kev cai, ib qho kev lag luam ntawm blockchain raug suav tias yog "teem hauv pob zeb." Txawm li cas los xij, nyob rau hauv rooj plaub ntawm TON, nws muaj peev xwm "rewrite keeb kwm" - nyob rau hauv cov ntaub ntawv ib tug neeg (lub thiaj li hu ua. neeg nuv ntses) yuav ua pov thawj tias ib qho ntawm cov blocks tau kos npe tsis raug. Nyob rau hauv cov ntaub ntawv no, ib tug tshwj xeeb kho thaiv yog ntxiv rau tus coj shardchain, muaj cov hash ntawm lub block nws tus kheej raug kho (thiab tsis yog lub xeem thaiv nyob rau hauv lub shardchain). Xav txog lub shardchain raws li ib tug saw ntawm cov blocks nteg tawm kab rov tav, peb yuav hais tau hais tias qhov kho thaiv yog txuas mus rau lub erroneous block tsis mus rau sab xis, tab sis los ntawm saum toj no - yog li nws yog xam tau tias nws yog ib feem ntawm ib tug me me "ntev blockchain" . Yog li, peb tuaj yeem hais tias shardchains yog ob-dimensional blockchains.

TON: Telegram Qhib Network. Part 2: Blockchains, sib faib

Yog tias, tom qab ib qho kev thaiv tsis raug, cov kev hloov pauv uas tau hais los ntawm cov blocks tom ntej (piv txwv li, kev hloov pauv tshiab tau ua raws li qhov tsis raug), cov kev kho yuav raug ntxiv rau cov blocks "saum toj". Yog tias cov blocks tsis cuam tshuam rau cov ntaub ntawv "kev cuam tshuam", cov "kho tsis raug" tsis siv rau lawv. Piv txwv li, hauv cov lus piav qhia saum toj no, kev hloov pauv ntawm thawj qhov thaiv, nce qhov nyiaj tshuav ntawm tus lej C, tau lees paub tias yog qhov tsis raug - yog li ntawd, kev ua lag luam txo qis qhov nyiaj tshuav ntawm tus as khauj thib peb yuav tsum tau muab tso tseg, thiab kho qhov thaiv. yuav tsum tau cog lus rau saum lub thaiv nws tus kheej.

Nws yuav tsum tau muab sau tseg tias txawm hais tias cov kev kho blocks yog depicted raws li nyob rau hauv "saum toj no" cov thawj, qhov tseeb lawv yuav muab ntxiv mus rau qhov kawg ntawm cov coj blockchain (qhov twg lawv yuav tsum tau chronologically). Qhov thib ob qhov chaw tsuas yog qhia txog qhov twg hauv blockchain lawv yuav "txuas" (ntawm qhov hash ntawm thawj block nyob rau hauv lawv).

Koj tuaj yeem cais kev xav txog qhov kev txiav txim siab "hloov yav dhau los" zoo npaum li cas. Nws yuav zoo li yog tias peb lees paub qhov muaj peev xwm ntawm qhov tsis raug thaiv tshwm sim hauv shardchain, ces peb tsis tuaj yeem zam qhov muaj peev xwm ntawm qhov kev kho qhov tsis raug tshwm sim. Ntawm no, raws li kuv tuaj yeem qhia tau, qhov sib txawv yog nyob rau hauv tus naj npawb ntawm cov nodes uas yuav tsum tau txais kev pom zoo ntawm cov blocks tshiab - yuav muaj tsawg tus neeg ua haujlwm ntawm txhua lub shardchain. "pab pawg ua haujlwmΒ» nodes (uas hloov nws cov muaj pes tsawg leeg heev), thiab kev qhia txog kev kho blocks yuav tsum tau kev tso cai los ntawm txhua tus neeg. validator nodes. Kuv mam li tham ntxiv txog validators, workgroups, thiab lwm yam node lub luag hauj lwm nyob rau hauv tsab xov xwm tom ntej no.

Ib blockchain los tswj lawv txhua tus

Muaj ntau cov ntaub ntawv teev saum toj no hais txog ntau hom blockchains, uas nws tus kheej yuav tsum tau muab khaws cia rau qhov chaw. Tshwj xeeb, peb tab tom tham txog cov ntaub ntawv hauv qab no:

  • hais txog tus naj npawb thiab teeb tsa ntawm workchains;
  • hais txog tus naj npawb ntawm shardchains thiab lawv prefixes;
  • txog cov nodes tam sim no lub luag hauj lwm rau cov shardchains;
  • hashes ntawm cov blocks kawg ntxiv rau tag nrho cov shardchains.

Raws li koj tuaj yeem tau twv, tag nrho cov khoom no tau sau tseg hauv lwm qhov chaw cia khoom blockchain - tus tswv (tus tswv, master blockchain). Vim lub xub ntiag ntawm hashes los ntawm cov blocks ntawm tag nrho cov shardchains nyob rau hauv nws cov blocks, nws ua rau lub system muaj kev cob cog rua heev. Qhov no txhais tau tias, ntawm lwm yam, hais tias tiam ntawm ib tug tshiab block nyob rau hauv lub masterchain yuav tshwm sim tam sim ntawd tom qab lub tiam ntawm blocks nyob rau hauv shardchains - nws xav tias blocks nyob rau hauv shardchains yuav tshwm sim yuav luag ib txhij txhua txhua 5 vib nas this, thiab lub block tom ntej nyob rau hauv lub shardchains. masterchain - thib ob tom qab ntawd.

Tab sis leej twg yuav muaj lub luag haujlwm rau kev siv tag nrho cov haujlwm titanic no - rau kev xa cov lus, ua tiav cov ntawv cog lus ntse, tsim cov blocks hauv shardchains thiab masterchain, thiab txawm kuaj xyuas cov blocks rau qhov yuam kev? Puas yog tag nrho cov no yuav raug nyiag los ntawm cov xov tooj ntawm ntau lab tus neeg siv nrog Telegram tus thov kev teeb tsa rau lawv? Los yog, tej zaum, pab pawg Durov yuav tso tseg cov tswv yim ntawm kev faib tawm thiab lawv cov servers yuav ua nws txoj kev qub?

Qhov tseeb, tsis yog ib qho lossis lwm lo lus teb yog qhov tseeb. Tab sis cov npoo ntawm kab lus no tau khiav tawm sai sai, yog li peb yuav tham txog ntau lub luag haujlwm ntawm cov nodes (tej zaum koj twb pom tau hais txog qee qhov ntawm lawv), nrog rau cov neeg kho tshuab ntawm lawv txoj haujlwm, hauv ntu tom ntej.

Tau qhov twg los: www.hab.com

Ntxiv ib saib