TON: د ټیلیګرام خلاص شبکه. 2 برخه: بلاکچین، شارډینګ

TON: د ټیلیګرام خلاص شبکه. 2 برخه: بلاکچین، شارډینګ

دا متن د یو لړ مقالو تسلسل دی په کوم کې چې زه د (احتمالي) توزیع شوي شبکې ټلیګرام خلاص شبکې (TON) جوړښت معاینه کوم ، کوم چې سږکال د خپریدو لپاره چمتو شوی. IN پخوانۍ برخه ما د هغې ترټولو بنسټیز کچه بیان کړه - هغه طریقه چې نوډونه یو بل سره اړیکه لري.

یوازې په دې حالت کې، اجازه راکړئ تاسو ته یادونه وکړم چې زه د دې شبکې له پراختیا سره هیڅ تړاو نلرم او ټول مواد د خلاصې سرچینې څخه راټول شوي (که څه هم نا تایید شوي) - سند (یو ملګری هم شتون لري بروشر، په لنډه توګه اصلي ټکي په ګوته کول) چې د تیر کال په پای کې څرګند شوي. په دې سند کې د معلوماتو مقدار، زما په اند، د هغې صداقت په ګوته کوي، که څه هم د دې رسمي تایید شتون نلري.

نن ورځ به موږ د TON اصلي برخه وګورو - بلاکچین.

بنسټیز مفهومونه

ګڼون (ګڼون). د 256-bit شمیرې لخوا پیژندل شوي ډیټا سیټ د حساب شمیره (ډیری وختونه دا د حساب مالک عامه کیلي وي). په اساسی قضیه کې (لاندې وګورئ صفر کاري زنځیر)، دا ډاټا د کارونکي توازن ته اشاره کوي. "اشغال" مشخص د حساب شمیره هر څوک کولی شي، مګر ارزښت یې یوازې د ځانګړو مقرراتو سره سم بدلیدلی شي.

سمارټ تړون (سمارټ تړون). په اصل کې، دا د حساب یوه ځانګړې قضیه ده، د سمارټ قرارداد کوډ او د دې متغیرونو ذخیره کولو سره ضمیمه شوی. که د "بټو" په حالت کې تاسو کولی شئ د نسبتا ساده او دمخه ټاکل شوي مقرراتو سره سم له هغې څخه پیسې وسپارئ او وباسئ، نو د سمارټ قرارداد په صورت کې دا مقررات د دې کوډ په بڼه لیکل شوي دي (په یو ځانګړي تورینګ کې - بشپړ شوی. د پروګرام کولو ژبه).

د بلاکچین ایالت (د بلاکچین حالت). د ټولو حسابونو / سمارټ قراردادونو ایالتونو سیټ (په لنډ معنی کې، د هش میز، چیرته چې کیلي د حساب پیژندونکي دي او ارزښتونه په حسابونو کې زیرمه شوي ډاټا دي).

پیغام (پیغام). پورته ما د "کریډیټ او ډیبیټ پیسو" کلمه کارولې - دا د پیغام یوه ځانګړې بیلګه ده ("لیږدول ن ګرامه له حساب څخه حساب_1 حساب ته حساب_2"). په ښکاره ډول، یوازې هغه نوډ چې د حساب شخصي کیلي لري کولی شي دا ډول پیغام واستوي حساب_1 - او د دې توان لري چې دا د لاسلیک سره تایید کړي. منظم حساب ته د ورته پیغامونو رسولو پایله د دې توازن زیاتوالی دی ، او د سمارټ تړون پایله د دې کوډ اجرا کول دي (کوم چې د پیغام رسید پروسس کوي). البته، نور پیغامونه هم ممکن دي (د پیسو مقدار نه لیږدول، مګر د سمارټ قراردادونو ترمنځ خپل سري معلومات).

معامله (د راکړې ورکړې). حقیقت چې یو پیغام لیږدول کیږي د لیږد په نوم یادیږي. لیږدونه د بلاکچین حالت بدلوي. دا لیږدونه دي (د پیغام رسولو ریکارډونه) چې په بلاکچین کې بلاکونه جوړوي. په دې اړه، تاسو کولی شئ د بلاکچین حالت د زیاتیدونکي ډیټابیس په توګه فکر وکړئ - ټول بلاکونه "تفاوت" دي چې د ډیټابیس اوسني حالت ترلاسه کولو لپاره په ترتیب سره پلي کولو ته اړتیا لري. د دې "توپیرونو" بسته کولو ځانګړتیاوې (او له دوی څخه د بشپړ حالت بحالول) به په راتلونکې مقاله کې بحث وشي.

په TON کې بلاکچین: دا څه دي او ولې؟

لکه څنګه چې په تیره مقاله کې یادونه وشوه، بلاکچین د ډیټا جوړښت دی، عناصر (بلاکونه) چې په یو "زنځير" کې ترتیب شوي، او د سلسلې هر راتلونکی بلاک د تیر یو هش لري.. تبصرو پوښتنه وکړه: ولې موږ داسې ډیټا جوړښت ته اړتیا لرو کله چې موږ دمخه DHT لرو - د توزیع شوي هش میز؟ په ښکاره ډول، ځینې معلومات په DHT کې زیرمه کیدی شي، مګر دا یوازې د "حساس" معلوماتو لپاره مناسبه نه ده. د کریپټو کرنسی بیلانسونه په DHT کې نشي زیرمه کیدی - اساسا د چیک نشتوالي له امله بشپړتیا. په حقیقت کې ، د بلاکچین جوړښت ټوله پیچلتیا وده کوي ترڅو پدې کې ذخیره شوي ډیټا سره د مداخلې مخه ونیسي.

په هرصورت، په TON کې بلاکچین د ډیری نورو توزیع شوي سیسټمونو په پرتله خورا پیچلي ښکاري - او د دوو دلیلونو لپاره. لومړی د اړتیا کمولو هیله ده فورکس. په دودیز کریپټو کرنسیونو کې، ټول پیرامیټونه په ابتدايي مرحله کې ټاکل شوي او د دوی د بدلولو هره هڅه په حقیقت کې د "بدیل کریپټو کارنسي کائنات" رامنځته کیدو لامل کیږي. دوهم دلیل د کرشنگ ملاتړ دی (ټوټه کول, ټوټه کولبلاکچین. بلاکچین یو جوړښت دی چې نشي کولی د وخت په تیریدو سره کوچنی شي. او معمولا هر نوډ د شبکې عملیاتو لپاره مسؤل دی مجبور دی چې دا په بشپړ ډول ذخیره کړي. په دودیز (مرکزي) سیسټمونو کې، شارډینګ د داسې ستونزو د حل لپاره کارول کیږي: په ډیټابیس کې ځینې ریکارډونه په یو سرور کې موقعیت لري، ځینې په بل کې، او داسې نور. د کریپټو اسعارو په قضیه کې ، دا ډول فعالیت لاهم خورا لږ دی - په ځانګړي توګه د دې حقیقت له امله چې په سیسټم کې د شارډینګ اضافه کول ستونزمن دي چیرې چې دا په اصل کې پلان شوی نه و.

TON څنګه پلان لري چې پورته دواړه ستونزې حل کړي؟

د بلاکچین مینځپانګه. Workchains.

TON: د ټیلیګرام خلاص شبکه. 2 برخه: بلاکچین، شارډینګ

له هرڅه دمخه ، راځئ چې د هغه څه په اړه وغږیږو چې پلان شوي په بلاکچین کې زیرمه شي. د حسابونو حالتونه (په اساس قضیه کې "بټو") او سمارټ قراردادونه به هلته زیرمه شي (د سادګۍ لپاره، موږ به فرض کړو چې دا د حسابونو په څیر دی). په اصل کې، دا به یو منظم هش میز وي - په دې کې کیلي به پیژندونکي وي د حساب شمیره، او ارزښتونه د معلوماتو جوړښتونه دي چې داسې شیان لري لکه:

  • توازن
  • د سمارټ قرارداد کوډ (یوازې د سمارټ قراردادونو لپاره)؛
  • د سمارټ قرارداد ډیټا ذخیره کول (یوازې د سمارټ قراردادونو لپاره)؛
  • احصایې
  • (اختیاري) د حساب څخه د لیږد لپاره عامه کیلي، په ډیفالټ حساب_id؛
  • د وتلو پیغامونو کتار (دلته دوی ترلاسه کونکي ته د لیږلو لپاره داخل شوي)؛
  • د وروستي پیغامونو لیست چې دې حساب ته سپارل شوي.

لکه څنګه چې پورته یادونه وشوه، بلاکونه پخپله د معاملو څخه جوړ شوي دي - پیغامونه مختلف اکاونټ_id حسابونو ته لیږل شوي. په هرصورت، د account_id سربیره، پیغامونه د 32-bit ساحه هم لري workchain_id - تش په نامه پیژندونکی کاري زنځیر (کاري زنځیر, بلاکچین کار کوي). دا تاسو ته اجازه درکوي څو بلاکچینونه د مختلف تشکیلاتو سره له یو بل څخه خپلواک وي. په دې حالت کې، workchain_id = 0 یوه ځانګړې قضیه ګڼل کیږي، صفر کاري زنځیر - دا په دې کې بیلانس دی چې د TON (ګرام) کریپټو کرنسی سره مطابقت لري. ډیری احتمال، په لومړي سر کې، نور کاري چینونه به شتون ونلري.

شارډچینز. لامحدود شارډینګ تمثیل.

مګر د بلاکچینونو په شمیر کې وده دلته نه دریږي. راځئ چې د شارډینګ سره معامله وکړو. راځئ تصور وکړو چې هر حساب (account_id) خپل بلاکچین تخصیص شوی - دا ټول هغه پیغامونه لري چې ورته راځي - او د دې ټولو بلاکچین حالتونه په جلا نوډونو کې زیرمه شوي.

البته، دا خورا ضایع دی: ډیری احتمال، په هر یو کې شارډچین (شارډچین, شارډ بلاکچین) لیږدونه به په ندرت سره راشي، او ډیری پیاوړې نوډونو ته به اړتیا وي (مخکې په لټه کې، زه یادونه کوم چې موږ یوازې په ګرځنده تلیفونونو کې د پیرودونکو په اړه خبرې نه کوو - مګر د جدي سرورونو په اړه).

له همدې امله، شارډچین د دوی د پیژندونکو د بائنری مخکینیو لخوا حسابونه یوځای کوي: که چیرې یو شارډچین د 0110 مخکینۍ ولري، نو پدې کې به د ټولو اکاونټ_ids لیږد شامل وي چې د دې شمیرو سره پیل کیږي. دا shard_prefix کیدای شي له 0 څخه تر 60 بټونو پورې اوږدوالی ولري - او اصلي شی دا دی چې دا په متحرک ډول بدلیدلی شي.

TON: د ټیلیګرام خلاص شبکه. 2 برخه: بلاکچین، شارډینګ

هرڅومره ژر چې یو له شارډ چینز څخه ډیری لیږدونه ترلاسه کول پیل کړي ، نوډونه چې پدې باندې کار کوي ، د دمخه ټاکل شوي مقرراتو سره سم ، دا په دوه ماشومانو ویشي - د دوی مختګونه به یو څه اوږد وي (او د دوی لپاره به دا بټ وي. د 0 سره مساوي، او د بل لپاره - 1). د مثال په ډول، shard_prefix = 0110b به ووېشل شي 01100ب او 01101ب. په بدل کې، که دوه "ګاونډي" شارډچینز په کافي اندازه د آرامۍ احساس پیل کړي (د یو څه وخت لپاره)، دوی به بیا یوځای شي.

په دې توګه، شارډینګ "له لاندې څخه پورته" ترسره کیږي - موږ فرض کوو چې هر حساب خپل شارډ لري، مګر د اوس لپاره دوی د مخکینیو پواسطه "یو بل سره نښلول شوي" دي. دا هغه څه دي چې دا معنی لري لامحدود شارډینګ تمثیل (لامحدود شارډینګ تمثیل).

په جلا توګه، زه غواړم ټینګار وکړم چې کاري چین یوازې په حقیقت کې شتون لري - په حقیقت کې، workchain_id دا د ځانګړي شارډچین پیژندونکي برخه ده. په رسمي اصطلاحاتو کې، هر شارډچین د یو جوړه شمیرو لخوا تعریف شوی (workchain_id, shard_prefix).

د تېروتنې اصلاح. عمودی بلاکچین.

په دودیز ډول، په بلاکچین کې هر ډول معامله "په ډبره کې جوړه شوې" ګڼل کیږي. په هرصورت، د TON په قضیه کې، دا ممکنه ده چې "تاریخ بیا لیکل" - په هغه صورت کې چې یو څوک (په نوم یادیږي. د کب نیونکي غوټۍ) به ثابته کړي چې یو بلاک په غلطه توګه لاسلیک شوی. په دې حالت کې، په اړونده شارډچین کې یو ځانګړی اصالح بلاک اضافه شوی، چې د بلاک هش پخپله سم شوی (او په شارډچین کې وروستی بلاک نه دی). د شارډچین په اړه فکر کول د بلاکونو سلسله په افقی ډول ایښودل شوي ، موږ کولی شو ووایو چې اصلاح کوونکی بلاک له غلط بلاک سره وصل دی نه ښیې ته ، مګر له پورته څخه - نو داسې انګیرل کیږي چې دا د کوچني "عمودي بلاکچین" برخه کیږي. . په دې توګه، موږ کولی شو ووایو چې شارډچینز دي دوه اړخیز بلاکچین.

TON: د ټیلیګرام خلاص شبکه. 2 برخه: بلاکچین، شارډینګ

که چیرې د غلط بلاک څخه وروسته، د هغې لخوا رامینځته شوي بدلونونه د راتلونکو بلاکونو لخوا حواله شوي وي (د بیلګې په توګه، نوي لیږدونه د ناسمو پر بنسټ ترسره شوي)، اصالحات هم په دې بلاکونو کې "پورته" اضافه کیږي. که بلاکونه په "اغیزمن" معلوماتو اغیزه ونکړي، دا "اصلاحي څپې" په دوی باندې نه پلي کیږي. د مثال په توګه، په پورته مثال کې، د لومړي بلاک معامله، د حساب C د بیلانس زیاتوالی، غلط وپیژندل شو - له همدې امله، په دریم بلاک کې د دې حساب بیلانس کمولو معامله هم باید لغوه شي، او یو اصلاحي بلاک. باید پخپله د بلاک په سر کې ژمن وي.

دا باید په یاد ولرئ چې که څه هم اصلاحي بلاکونه د اصلي "پورته" موقعیت په توګه ښودل شوي ، په حقیقت کې دوی به د اړوند بلاکچین پای ته اضافه شي (چیرې چې دوی باید په تاریخي ډول وي). دوه اړخیز موقعیت یوازې په بلاکچین کې کوم ځای ته ښیې چې دوی به "وصل شوي" وي (د اصلي بلاک هش له لارې چې په دوی کې موقعیت لري).

تاسو کولی شئ په جلا توګه فلسفه وکړئ چې د "تیر بدلولو" پریکړه څومره ښه ده. داسې بریښي چې که موږ په شارډ چین کې د غلط بلاک د څرګندیدو احتمال ومنو ، نو موږ نشو کولی د غلط اصلاحي بلاک څرګندیدو احتمال مخنیوی وکړو. دلته، تر هغه ځایه چې زه کولی شم ووایم، توپیر د نوډونو په شمیر کې دی چې باید په نوي بلاکونو کې توافق ته ورسیږي - په هر شارډچین کې به نسبتا لږ شمیر خلک کار وکړي."کاري ډله» نوډونه (کوم چې ډیری وختونه خپل جوړښت بدلوي)، او د اصلاحي بلاکونو معرفي کول به د هرچا رضایت ته اړتیا ولري د اعتبار وړ نوډونه. زه به په راتلونکې مقاله کې د اعتبار کونکو، کاري ګروپونو، او نورو نوډ رولونو په اړه نور خبرې وکړم.

یو بلاکچین د دوی ټولو حاکمولو لپاره

د بلاکچین مختلف ډولونو په اړه پورته لیست شوي ډیری معلومات شتون لري ، کوم چې پخپله باید په یو ځای کې زیرمه شي. په ځانګړې توګه، موږ د لاندې معلوماتو په اړه خبرې کوو:

  • د کاري چینونو شمیر او تشکیلاتو په اړه؛
  • د شارډچینونو شمیر او د دوی مخکینۍ په اړه؛
  • د کوم نوډونو په اړه چې اوس مهال د کوم شارډچین لپاره مسؤل دي؛
  • د وروستي بلاکونو هشونه په ټولو شارډ چینو کې اضافه شوي.

لکه څنګه چې تاسو اټکل کړی وي، دا ټول شیان په بل بلاکچین ذخیره کې ثبت شوي - ماسټرچین (ماسټرچین, ماسټر بلاکچین). د دې بلاکونو کې د ټولو شارډچین بلاکونو څخه د هشونو شتون له امله ، دا سیسټم خورا ډیر وصل کوي. دا پدې مانا ده، د نورو شیانو په منځ کې، په ماسټر چین کې د نوي بلاک نسل به په شارډچین کې د بلاکونو له تولید څخه سمدستي وروسته واقع شي - تمه کیږي چې په شارډچین کې بلاکونه به نږدې په هرو 5 ثانیو کې په ورته وخت کې څرګند شي، او راتلونکی بلاک به په شارډچین کې. masterchain - وروسته یوه ثانیه.

مګر څوک به د دې ټول ټایټانیک کار پلي کولو لپاره مسؤل وي - د پیغامونو لیږلو لپاره ، د سمارټ قراردادونو پلي کولو لپاره ، په شارډ چینز او ماسټر چین کې د بلاکونو رامینځته کول ، او حتی د غلطیو لپاره بلاکونه چیک کول؟ ایا دا ټول به په پټه توګه د ملیونونو کاروونکو تلیفونونو لخوا د ټیلیګرام پیرودونکي نصب شوي سره ترسره شي؟ یا، شاید، د Durov ټیم به د غیر متمرکز کولو نظرونه پریږدي او د دوی سرورونه به دا په زاړه طریقه ترسره کړي؟

په حقیقت کې، نه یو او نه بل ځواب سم دی. مګر د دې مقالې حاشیه په چټکۍ سره پای ته رسیږي، نو موږ به د نوډونو مختلف رولونو په اړه وغږیږو (تاسو ممکن مخکې له دې چې ځینې یې یادونه کړې وي)، او همدارنګه د دوی د کار میکانیزم په راتلونکې برخه کې.

سرچینه: www.habr.com

Add a comment