Modular blokçeyn paradıgmı

Fizikada, bağlılıq iki hərəkət formasının qarşılıqlı təsir vasitəsilə bir-birini necə təsir etdiyini ifadə edən fenomenidir. Ayrı-seçkilik isə, digər tərəfdən, iki hərəkət formasını problemin öhdəsindən gəlmək üçün riyazi cəhətdən ayırmağıdır.

Proqramlaşdırma sahəsində, modulyarlıq ideyası çox oxşardır: proqramın funksionallığını müstəqil, dəyişdirilə bilən modullara ayırmağa vurğu edən modul proqramlaşdırma adlanan bir proqram dizayn texnikasıdır ki, hər biri yalnız istənilən funksionallığın bir aspektini yerinə yetirmək üçün lazım olan hər şeyi ehtiva edir.

Blokçeyn-lər həm də kompüter proqramlarıdır. Əsasən, modulilik ideyasını ictimai blokçeylərə tətbiq edəndə onu üç əsas komponentə bölə bilərik:

  1. İcra (Execution) — Bu, zənciri yeniləmək üçün tələb olunan hesablama prosesidir; cari vəziyyəti (state) əldə etmək, bir dəstə yeni transaksiyanı əlavə etmək və yeni vəziyyətə keçməyi əhatə edir.

  2. Konsensus və ya Hesablaşma və ya Təhlükəsizlik — Bu, transaksiyalar və onların sıralanması üçün təhlükəsizlik və razılaşma təmin edir.

  3. Məlumat Mövcudluğu (DA) — Bu, blok başlığının arxasında duran transaksiya məlumatının dərc edildiyini və mövcud olduğunu təmin etmək üçündür ki, hər kəs vəziyyəti asanlıqla hesablaya və vəziyyət keçidlərini yoxlaya bilsin.

Mövcud böyük blokçeyn-lər kimi bu üç komponenti bir monolit zəncirdə birləşdirmək əvəzinə, onları ixtisaslaşmış zəncirlər və ya qatlar kimi ayıra bilərik; hər biri bir modulun rolunu oynayır və beləliklə blokçeyn funksionallığını daha səmərəli şəkildə həyata keçirmək mümkün olur. Bu, modul blokçeyn paradiqmasıdır.

Modul blokçeynlərin üstünlükləri

Daha əvvəl qeyd edildiyi kimi, modul blokçeynlər tək bir blokçeynin əsas komponentlərini ayırıb onları ayrı qatlarda işlətməyin nəticəsidir. Bəs modul blokçeynlər qeyri-modul olanlarla müqayisədə hansı üstünlüklərə malikdir? Aşağıdakılar sadalanan üstünlüklərdir.

Miqyaslanma (Scalability)

Əsas funksiyaların bir cütü üçün ixtisaslaşmış qatlar, monolit blokçeynlə gələn güzəştlər məhdudiyyəti olmadan daha böyük miqyaslanma təmin edəcək. Məsələn, DA sampling ilə modul məlumat mövcudluğu qatı istifadəçi sayına görə xətti şəkildə miqyaslana bilər.

Özəlləşən qarşılıqlı işləmə (Interoperability)

Blokçeynlər eyni klasterdəki blokçeyn-lər arasında etibara-minimal (trust-minimized) körpüləşməni təmin etmək üçün modul paylaşılan təhlükəsizlik qatı tətbiq edə bilər. Bu həm təhlükəsizliyi, həm də bir neçə blokçeynin bir-biri ilə ünsiyyət səviyyəsini yaxşılaşdırır.

İlkin işə salma (Bootstrapping)

Yeni blokçeyn-lər minimal xərc və zamanla yaradıla bilər. Rollup Software Development Kits kimi alətlər təkcə bunu asanlaşdırmır, həm də konsensus mexanizmi, validator-lar və ya token paylanması mexanizmləri tələb etmədən işə salmağa (bootstrap) imkan verən bir yol təqdim edir.

Eksperimentlər (Experimentation)

Blokçeyn-lər əlavə miqyaslanma və optimizasiyalar gətirən yeni innovativ texnologiyaları asanlıqla yaratmaq və bütün zəncirlər yığınında (stack) sınaqdan keçirmək üçün istifadə edilə bilər. Bunu etmək yeni zəncərlərin birbaşa yenilik etmək istədikləri elementlərə fokuslanmasına imkan verir; həmin elementlər daha sonra qalan zəncirlərə də yayıla bilər.

Rollup-larda DA qatı

Təsirli şəkildə miqyaslandırmağı hədəfləyən Ethereum-un layer 2 həlli olan rollup-lar fundamental olaraq modul yanaşmadır. Rollup icra qatını Ethereum layer 1-dən ayırır və mümkün qədər sürətli transaksiyaların işlənməsinə yönəlmiş, yalnız icra (execution-exclusive) ikinci qatı yaradır. Digər tərəfdən Ethereum layer 1 həm təhlükəsizlik, həm də məlumat mövcudluğu baxımından çətin işin məsuliyyətini yenə də üzərində saxlayır.

Burada iki sual var. Birincisi, məlumat mövcudluğu niyə bu qədər vacibdir? İkincisi, modulilik ideyasını yenidən tətbiq edib DA-nı layer 1-dən ayıra bilərikmi? Xahiş edirəm, izah etməyə vaxt verin.

Birinci sual üçün vəziyyəti ayrıca müzakirə etməliyəm. Optimistic Rollup halda, sekvenser pis davranıb yanlış hesab balansı vəziyyətini settlement edərsə, istənilən şəxs layer 1-dən orijinal transaksiya məlumatını geri götürüb, düzgün hesab vəziyyətini yenidən quraraq challenge (çağırış) prosesini icra edə bilər. Yəni DA-nın rolu, challenge zamanı orijinal sübut təqdim edən bir arxiv bürosu kimidir; bu, challenge-in düzgün və etibarlı olmasını təmin edir.

Zero Knowledge (ZK) Rollup vəziyyətində isə sekvenser sıfır bilik kriptoqrafik sübutuna görə pis davranmaq iqtidarında deyil. Amma sekvenserin düşdüyü və ya hər hansı səbəbdən əlçatan olmadığı həddindən artıq hallarda istifadəçilər layer 2 zəncirindən çıxıb pullarını layer 1-ə geri qaytarmalı olurlar; burada DA çox vacibdir ki, hər kəs verilənlər əsasında son statusu yenidən qura bilsin. Buna görə DA-nın rolu, fövqəladə vəziyyət zamanı istifadəçilər üçün rahat “qaçış”ı təmin edən təhlükəsizlik qapısı kimidir.

İkinci sual üçün qısa cavab: bəli. DA bu qədər həyati olsa da, onu saxlamaq üçün ən yaxşı yer Ethereum layer 1-dir; ən təhlükəsiz zəncir də ən bahalı zəncirdir — settlement transaksiyalarının qaz dəyəri və məlumat saxlanması xərcləri digər zəncirlərlə müqayisədə çox daha yüksəkdir. Ona görə Matter Labs və Starkware, DA-nı layer 1-də saxlamadan güzəştə gedərək istifadəçilərə daha ucuz ZK Rollup versiyaları — ZK-Porter və Validium — təqdim edir.

Nəticədə, ixtisaslaşmış və modul DA qatının ortaya çıxması başlanır.

İxtisaslaşmış DA qatının layihələri

Celestia

Əvvəllər LazyLedger adlandırılan Celestia — modul konsensus və məlumat şəbəkəsidir. Hər kəsin minimal əlavə xərc ilə öz blokçeynini asanlıqla yerləşdirməsini (deploy) təmin etmək üçün qurulub. Konsensus və DA qatlarını tətbiq icrası ilə decouple (ayırmaq) vasitəsilə Celestia blokçeyn texnologiyası stack-ini modullaşdırır və mərkəzləşdirilməmiş tətbiq (dApp) qurucuları üçün yeni imkanlar açır.

Səma (Celestia) ilə təmin edilmiş modul arxitektura altında tərtibatçılar öz virtual icra mühitlərini asanlıqla müəyyən edə bilirlər. Hər bir tətbiq öz suveren icra məkanını alır və əsas zəncirin (main chain) hard fork-larına ehtiyac olmadan yenilənə bilər.

Celestia-nın əsas üstünlüyü blokçeyn miqyaslandırmasının fundamental məhdudiyyətlərindən birini — “məlumat mövcudluğu problemi”ni — həll etməsindədir. Problem belədir: yeni bir blok yaradıldıqda, blokdakı bütün məlumatların həqiqətən şəbəkəyə dərc edildiyini node-lar necə əmin ola bilər? Dilemma ondan ibarətdir ki, əgər sekvenser və ya blok istehsalçısı blokdakı məlumatların hamısını açıqlamırsa, heç kim həmin bloka gizlədilmiş zərərli (bədxassəli) transaksiyanın olub-olmadığını aşkarlaya bilməz.

Celestia bunu necə həll edir? O, məlumat mövcudluğu sübutlarını yaratmaq üçün erasure codes (itirmə kodları) istifadə edir və yüksək ehtimalla təmin edir ki, həmin məlumatlar on-çeynə (on-chain) yerləşdirilib.

Xüsusən, Celestia sekvenser yeni blok yaratdıqda blok məlumatını 2-ölçülü reed-solomon kodlama sxemi ilə kodlayır. Bu sxem, blokun tam yayımlandığını statistik əminliklə yoxlamaq üçün yalnız az miqdarda məlumat nümunəsinin kifayət etməsini təmin edir. Data Availability Sampling (DAS) adlı əməliyyatı yerinə yetirmək üçün yalnız yüngül (light) klientlər lazımdır — sekvensenin düzgün davranmadığını və məlumatı saxladığını aşkar etmək üçün bloka aid məlumatın kiçik bir hissəsini təsadüfi şəkildə yükləyirlər. Bu metod ehtimal-statistika baxımından çox effektivdir. Əslində, light client 7-ci dəfə təsadüfi olaraq məlumat parçasını yoxlamağa cəhd etdikdə, sekvensenin səhv/yanlış davranmasını aşkar etməmək ehtimalı 1%-dən də aşağı düşəcək. Və şəbəkə, istənilən kiçik məlumat hissəsinin səhv kodlandığı aşkar edilən kimi, fraud proof (fırıldaq sübutu) vasitəsilə məlumatlandırılır. Bu, Celestia-nın ötürücülüyünün (throughput) iştirak edən istifadəçi sayına uyğun miqyaslana bilməsini təmin edir və ənənəvi blokçeynlərdəki kimi state execution (icra vəziyyəti) ilə tıxanma (bottleneck) yaranmır.

Əvvəlcə EVM və Cosmos SDK üzərinə fokuslansa da, Celestia Ethereum və Cosmos ekosistemlərinə inteqrasiyanı istisna etmir. Celestia, Celestium adlı bir plan buraxıb; bu plan istənilən Ethereum L2 zəncirinin məlumat mövcudluğu üçün Celestia-dan, settlement (hesablaşma) və mübahisə həlli (dispute resolution) üçün isə Ethereum-dan istifadə etməsinə imkan verir. Celestium-lar Ethereum L2-lər üçün digər off-çeyn məlumat mövcudluğu yanaşmalarından daha yüksək səviyyədə təhlükəsizliklə yanaşı yüksək ötürücülük təmin edəcək.

Üstəlik, Celestia EVM rollapları üçün Cevmos adlı settlement (hesablaşma) qatını qurmaq məqsədilə Evmos ilə tərəfdaşlıq edir. Settlement zənciri Optimint istifadə etməklə Celestia rollap kimi tətbiq olunacaq və DA qat kimi Celestia-dan istifadə edərək rollaplar üçün optimallaşdırılmış, tam EVM-əquivalent stack yaradır; nəticədə ödənişlər (fees) azalır və rollaplarda miqyaslama yaxşılaşır.

Polygon Avail

Polygon-un toolkit-indəki miqyaslandırma həllərindən biri olan Avail — müstəqil zəncirlər (standalone chains), side-chains və off-çeyn miqyaslandırma həllləri üçün hədəflənmiş, ümumi təyinatlı, miqyaslana bilən və məlumat mövcudluğu yönümlü blokçeyn-dir.

Avail çox dayanıqlı məlumat mövcudluğu qatı təqdim edir: son dərəcə təhlükəsiz riyazi ibtidai (primitive) vasitəsilə — itirmə kodları ilə erasure code-lar istifadə edilərək məlumat mövcudluğu yoxlamaları (data availability checks) — bir əsas yeniliklə. Onlar fraud proof-lardan istifadə etməyən 2D məlumat mövcudluğu sxemi yaratmaq üçün Kate polynomial commitments-dən istifadə edirlər; honest majority (dürüst çoxluq) fərziyyəsinə ehtiyac duymur və məlumatın mövcudluğuna əmin olmaq üçün honest full node peer-ə (dürüst tam node həmkarına) etibar etmir.

Avail-in məlumat mövcudluğu problemini həll etmə yanaşması Celestia-nın DAS-ə bənzəyir, amma yalnız kiçik məqamlarda fərqlənir. Avail sekvenserlərin səhv davranmasının qarşısını almaq üçün fraud proof-lar əvəzinə KZG polynomial commitments-dən istifadə edir. KZG commitments, Kate commitments kimi də tanınır; 2010-cu ildə Aniket Kate, Gregory M. Zaverucha və Ian Goldberg tərəfindən təqdim edilmiş və polinomlara qısa (succinct) şəkildə commit etməyə imkan verən bir üsul təqdim etmişdir.

Sadə desək, bir blokdakı bütün məlumatlar ikiölçülü matris kimi düzülür. Məlumatın artıqlığı (redundancy) isə matrisin hər bir sütununu erasure coding ilə kodlayaraq orijinal ölçünü ikiqat etməklə gətirilir. Hər bir sətri komit etmək üçün Kate commitments istifadə olunur və bu komit blok başlığına (block header) daxil edilir. Sxem, yalnız blok başlıqlarına çıxışı olan istənilən yüngül klientin matrisin təsadüfi hüceyrələrini sorğulayıb blok başlıqlarına qarşı yoxlana bilən qısa sübutlar ala bilməsi sayəsində məlumat gizlətmə cəhdini aşkar etməyi asanlaşdırır. Məlumatın artıqlığı sekvenseni, yalnız bir transaksiyanı gizlətmək istəsə belə, blokun böyük hissəsini gizlətməyə məcbur edir və bu, onu təsadüfi nümunə götürmə (random sampling) zamanı tutulmağa daha həssas edir. Buna görə də fraud proof-ların ehtiyacı aradan qalxır: Kate commitments-in “bağlayıcılıq” (binding) təbiəti sekvenserlərin səhv komitment qurmasını və tutulmamasını çox böyük hesablama baxımından praktik olaraq mümkünsüz edir.

Xülasə

Modul blokçeynlərin prototipi kimi xüsusi məlumat mövcudluğu qatı, blokçeyn sistemlərinin dizaynına yanaşma tərzində tam dəyişiklik etməyi hədəfləyir; müxtəlif icra mühitlərinin məlumat sıralanması və mövcudluq üçün bu ixtisaslaşmış qatdan istifadə edə bildiyi modul blokçeyn paradiqmasını yaradır. Xüsusi DA qatından istifadə edən rollap-ların Ethereum mainnet-lə müqayisədə o qədər də təhlükəsiz olmaya biləcəyi ilə bağlı kiçik bir narahatlıq yarana bilər, amma bu, modul blokçeynlərin daha çevik, miqyaslana bilən, fərdiləşdirilə bilən və qarşılıqlı işləyə bilən şəbəkə gətirə bilməsi səbəbilə vacib bir güzəştdir. Uzunmüddətdə xüsusi DA qat modul blokçeyn paradiqmasının əsas dayağına çevriləcək və blokçeyn miqyaslanmasının “son mərhələsi”nə doğru yol açacaq.

İmtina: Bu tədqiqat yalnız məlumat məqsədi daşıyır. Heç bir investisiya məsləhəti və ya hər hansı bir investisiyanı almaq/satmaq üçün tövsiyə kimi qiymətləndirilməməlidir və hər hansı investisiya qərarının dəyərini qiymətləndirərkən istifadə edilməməlidir.

🐦 @chestersigned

📅 18 aprel 2022

Link:

https://medium.com/blockchain-capital-blog/wtf-is-data-availability-80c2c95ded0f

https://polynya.medium.com/the-lay-of-the-modular-blockchain-land-d937f7df4884

https://rileygmi.substack.com/p/celestia?s=r&utm_campaign=post&utm_medium=web

https://coinyuppie.com/focus-on-the-data-availability-layer-to-understand-the-new-public-chain-celestia/

https://polygon.technology/blog/introducing-avail-by-polygon-a-robust-general-purpose-scalable-data-availability-layer-98bc9814c048

https://polygon.technology/solutions/polygon-avail/