Polkadot: 異種マルチチェーン フレームワークのビジョン
Özet
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 DR. GAVİN AHŞAP KURUCU, ETHEREUM & PARİTE [email protected] Özet. Günümüzün blockchain mimarilerinin tümü, özellikle pratik genişletilebilirlik ve ölçeklenebilirlik araçlarının yanı sıra bir dizi sorundan muzdariptir. Bunun, fikir birliği mimarisinin çok önemli iki parçasını birbirine bağlamasından kaynaklandığına inanıyoruz: kanoniklik ve geçerlilik birbirine çok yakındır. Bu makale, heterojen çoklu zincir mimarisini tanıtmaktadır. bu ikisini temelde birbirinden ayırıyor. Bu iki parçayı bölümlere ayırarak ve sağlanan genel işlevselliği mutlak minimumda tutarak Güvenlik ve ulaşım açısından, çekirdeğin yerinde genişletilebilirliğine yönelik pratik araçlar sunuyoruz. Ölçeklenebilirlik şu şekilde ele alınır: bu iki işleve böl ve yönet yaklaşımı, bağlı çekirdeğin ölçeğini, teşvik yoluyla genişletiyor güvenilmeyen genel düğümler. Bu mimarinin heterojen doğası, çok farklı türden konsensüs sistemlerinin güvene dayalı olmayan, tamamen merkezi olmayan bir "federasyon" içinde birlikte çalışmasına olanak tanıyarak, açık ve kapalı ağların güvensiz erişime sahip olmasına olanak tanır. Birbirimiz. Aşağıdakiler gibi önceden var olan bir veya daha fazla ağ ile geriye dönük uyumluluk sağlamanın bir yolunu ortaya koyduk: Ethereum. Böyle bir sistemin pratik olarak genel arayışta temel düzeyde yararlı bir bileşen sağladığına inanıyoruz. Küresel ticarette ölçeklenebilirlik ve gizlilik düzeylerine ulaşabilen uygulanabilir bir sistem. 1. Önsöz Bunun teknik bir “vizyon” özeti olması amaçlanmıştır blockchain paradigmasını daha da geliştirmek için alınabilecek olası bir yön ve bu yönün neden mantıklı olduğuna dair bazı gerekçeler. Şurada yer alıyor: Gelişimin bu aşamasında mümkün olduğu kadar fazla ayrıntı somut bir iyileşme sağlayabilecek bir sistem blockchain teknolojisinin çeşitli yönleri. Resmi veya başka türlü bir spesifikasyon olması amaçlanmamıştır. Kapsamlı olması ya da bir olması amaçlanmamıştır. son tasarım. Temel olmayan hususları kapsaması amaçlanmamıştır. API'ler, bağlamalar, diller ve kullanım. Bu özellikle deneyseldir; nerede parametreler belirtilirse, değişmeleri muhtemeldir. Mekanizmalar topluluğa yanıt olarak eklenebilir, geliştirilebilir ve kaldırılabilir fikirler ve eleştiriler. Bu makalenin büyük bir kısmı muhtemelen Deneysel kanıt ve prototiplemenin sağladığı gibi revize edilebilir Neyin işe yarayıp neyin yaramayacağına dair bize bilgi verin. Bu belge, protokolün temel bir tanımını ve alınabilecek talimatlara ilişkin fikirleri içerir. çeşitli yönleri geliştirmek. Çekirdek olması öngörülüyor açıklama bir başlangıç için başlangıç noktası olarak kullanılacaktır bir dizi kavram kanıtı. Son bir “versiyon 1.0” şu şekilde olacaktır: kanıtlanmış ve kararlı hale gelen ek fikirlerle birlikte bu rafine protokole dayanmaktadır. Projenin hedeflerine ulaşması için gerekli olan 1.1. Tarih. • 09/10/2016: 0.1.0'a dayanıklı1 • 20/10/2016: 0.1.0'a dayanıklı2 • 01/11/2016: 0.1.0'a dayanıklı3 • 10/11/2016: 0.1.0 2. Giriş Blok zincirleri, “Nesnelerin İnterneti” de dahil olmak üzere birçok alanda büyük fayda vaat ediyor (IoT), finans, yönetişim, kimlik yönetimi, web merkezi olmayanlaştırma ve varlık takibi. Ancak buna rağmen teknolojik vaat ve büyük konuşma, henüz göremedik mevcut teknolojinin önemli gerçek dünyaya yayılması. Bunun günümüzün beş önemli başarısızlığından kaynaklandığına inanıyoruz. teknoloji yığınları: Ölçeklenebilirlik: Küresel olarak ne kadar kaynak harcanıyor? sistemin tek bir işlemi işlemesi için işleme, bant genişliği ve depolama ve kaç tane işlemler makul bir şekilde gerçekleştirilebilir zirve koşulları? Yalıtılabilirlik: Çoklu bireylerin farklı ihtiyaçları Taraflar ve başvurular aynı çerçeve altında optimuma yakın bir düzeyde ele alınabiliyor mu? Geliştirilebilirlik: Araçlar ne kadar iyi çalışıyor? Yap API'ler geliştiricilerin ihtiyaçlarını karşılıyor mu? Eğitim materyalleri mevcut mu? Doğru entegrasyonlar mevcut mu? Yönetişim: Ağ esnek kalabilir mi? zaman içinde gelişip uyum sağlıyor mu? Kararlar olabilir mi Yeterli kapsayıcılık, meşruluk ve etkili bir liderlik sağlamak için şeffaflık merkezi olmayan sistem? Uygulanabilirlik: Teknoloji gerçekten kendi başına yakıcı bir ihtiyacı karşılıyor mu? Aradaki boşluğu kapatmak için başka bir "ara katman yazılımı" gerekli mi? gerçek uygulamalar? Bu çalışmamızda ilk ikisini ele almayı amaçlıyoruz. Sorunlar: ölçeklenebilirlik ve yalıtılabilirlik. Bununla birlikte, inanıyoruz Polkadot çerçevesi bu sorun sınıflarının her birinde anlamlı iyileştirmeler sağlayabilir. Modern, verimli blockchain uygulamalar gibi Eşlik Ethereum istemcisi [17] işlem yapabilirfazla Performanslı tüketici donanımı üzerinde çalışırken saniyede 3.000 işlem. Ancak mevcut gerçek dünya blockchain ağlar pratik olarak yaklaşık 30 ile sınırlıdır saniye başına işlemler. Bu sınırlama temel olarak mevcut eşzamanlı konsensüs mekanizmalarının geniş zamanlama güvenlik marjları gerektirmesinden kaynaklanmaktadır. nedeniyle daha da kötüleşen beklenen işlem süresi 1
概要
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 DR.ギャビン・ウッド 創設者、イーサリアム、パリティ ギャビン@PARITY.IO 抽象的。現在の blockchain アーキテクチャはすべて、拡張性とスケーラビリティの実際的な手段をはじめとする多くの問題を抱えています。私たちは、これはコンセンサス アーキテクチャの 2 つの非常に重要な部分を結び付けることに起因すると考えています。 正規性と有効性が近すぎる。この論文では、異種マルチチェーンというアーキテクチャを紹介します。 これが根本的にこの 2 つを区別します。 これら 2 つの部分を区分けし、提供される全体的な機能を最小限に抑えることで、 セキュリティとトランスポートの観点から、現場でのコア拡張性の実用的な手段を導入します。スケーラビリティには次のような方法があります。 これら 2 つの機能に対する分割統治アプローチであり、 信頼できないパブリックノード。 このアーキテクチャの異質な性質により、多くの非常に多様なタイプのコンセンサス システムがトラストレスで完全に分散された「フェデレーション」で相互運用できるようになり、オープン ネットワークとクローズド ネットワークがトラストフリーでアクセスできるようになります。 お互いに。 私たちは、次のような 1 つ以上の既存のネットワークとの下位互換性を提供する手段を提案します。 Ethereum。私たちは、このようなシステムが、実用的なシステムの全体的な探索において有用な基本レベルのコンポーネントを提供すると信じています。 グローバルコマースレベルのスケーラビリティとプライバシーを実現できる実装可能なシステム。 1. はじめに これは技術的な「ビジョン」の概要を目的としています。 blockchain パラダイムをさらに発展させる際に取られる可能性のある 1 つの方向性と、この方向性が合理的である理由についての理論的根拠を示します。にレイアウトされます 開発のこの段階で可能な限り詳細を 具体的な改善をもたらす可能性のあるシステム blockchain テクノロジーのさまざまな側面。 これは、形式的であるかどうかにかかわらず、仕様を意図したものではありません。包括的であることや、 最終デザイン。コア以外の側面をカバーすることを目的としたものではありません API、バインディング、言語などのフレームワークの 使用法。 これは特に実験的なものです。ここでパラメータ 指定されていますが、変更される可能性があります。メカニズムは、 コミュニティに応じて追加、改良、削除される アイデアと批評。この文書の大部分は、おそらく 実験的証拠やプロトタイピングによって得られるものとして改訂される 何が機能し、何が機能しないのかについての情報を提供します。 この文書には、プロトコルの核となる説明と、取るべき方向性のアイデアが含まれています。 さまざまな面を改善するために。コアとなると想定されるのは、 説明は最初の作業の開始点として使用されます。 一連の概念実証。最終的な「バージョン 1.0」は次のようになります。 この洗練されたプロトコルと、実証され決定された追加のアイデアをベースにしています。 プロジェクトが目標を達成するために必要です。 1.1.歴史。 • 2016 年 9 月 10 日: 0.1.0 耐性 1 • 2016/10/20: 0.1.0-proof2 • 2016 年 11 月 1 日: 0.1.0-proof3 • 2016 年 10 月 11 日: 0.1.0 2. はじめに ブロックチェーンは、「モノのインターネット」を含むいくつかの分野で有用性が大いに期待できることが証明されています。 (IoT)、財務、ガバナンス、アイデンティティ管理、ウェブ分散化、資産追跡。しかし、にもかかわらず、 技術的な約束と壮大な話はまだわかりません 現在のテクノロジーの重要な現実世界への展開。 私たちは、これは現在の 5 つの主要な失敗に起因すると考えています。 テクノロジースタック: スケーラビリティ: 世界中でどれだけのリソースが費やされているか システムが単一のトランザクションを処理するための処理、帯域幅、およびストレージ、およびそのトランザクション数 トランザクションは以下に基づいて合理的に処理できます ピークコンディション? 分離性: 複数の異なるニーズに対応できるか 関係者とアプリケーションは、同じフレームワークの下で最適に近い程度まで対処できるでしょうか? 開発性: ツールはどの程度うまく機能しますか?する API は開発者のニーズに対応しているでしょうか?教育用の教材はありますか?適切な統合は行われていますか? ガバナンス: ネットワークは柔軟性を維持できるか 時間の経過とともに進化して適応しますか? 決定は可能ですか 十分な包括性、正当性、そして 効果的なリーダーシップを発揮するための透明性 分散型システム? 適用可能性: そのテクノロジーは実際にそれ自体で切実なニーズに対応しているのでしょうか?ギャップを埋めるには他の「ミドルウェア」が必要ですか? 実際のアプリケーションは? 現在の作業では、最初の 2 つに対処することを目指しています。 問題: スケーラビリティと分離性。そうは言っても、私たちは信じています Polkadot フレームワークは、これらの問題のそれぞれのクラスにおいて有意義な改善を提供できます。 最新の効率的な blockchain 実装 パリティ Ethereum クライアント [17] は proc できます超過 高性能のコンシューマ ハードウェアで実行すると、1 秒あたり 3,000 トランザクション。 しかし、現在の現実世界では、 blockchain ネットワークは実質的に約 30 に制限されています 1秒あたりのトランザクション数。 この制限は主に、現在の同期コンセンサス メカニズムが広いタイミング安全マージンを必要とするという事実に起因しています。 予想される処理時間は、 1
giriiş
Blok zincirleri, “Nesnelerin İnterneti” de dahil olmak üzere birçok alanda büyük fayda vaat ediyor (IoT), finans, yönetişim, kimlik yönetimi, web merkezi olmayanlaştırma ve varlık takibi. Ancak buna rağmen teknolojik vaat ve büyük konuşma, henüz göremedik mevcut teknolojinin önemli gerçek dünyaya yayılması. Bunun günümüzün beş önemli başarısızlığından kaynaklandığına inanıyoruz. teknoloji yığınları: Ölçeklenebilirlik: Küresel olarak ne kadar kaynak harcanıyor? sistemin tek bir işlemi işlemesi için işleme, bant genişliği ve depolama ve kaç tane işlemler makul bir şekilde gerçekleştirilebilir zirve koşulları? Yalıtılabilirlik: Çoklu bireylerin farklı ihtiyaçları Taraflar ve başvurular aynı çerçeve altında optimuma yakın bir düzeyde ele alınabiliyor mu? Geliştirilebilirlik: Araçlar ne kadar iyi çalışıyor? Yap API'ler geliştiricilerin ihtiyaçlarını karşılıyor mu? Eğitim materyalleri mevcut mu? Doğru entegrasyonlar mevcut mu? Yönetişim: Ağ esnek kalabilir mi? zaman içinde gelişip uyum sağlıyor mu? Kararlar olabilir mi Yeterli kapsayıcılık, meşruluk ve etkili bir liderlik sağlamak için şeffaflık merkezi olmayan sistem? Uygulanabilirlik: Teknoloji gerçekten kendi başına yakıcı bir ihtiyacı karşılıyor mu? Aradaki boşluğu kapatmak için başka bir "ara katman yazılımı" gerekli mi? gerçek uygulamalar? Bu çalışmamızda ilk ikisini ele almayı amaçlıyoruz. Sorunlar: ölçeklenebilirlik ve yalıtılabilirlik. Bununla birlikte, inanıyoruz Polkadot çerçevesi bu sorun sınıflarının her birinde anlamlı iyileştirmeler sağlayabilir. Modern, verimli blockchain uygulamalar gibi Eşlik Ethereum istemcisi [17] şunu aşabilir: Performanslı tüketici donanımı üzerinde çalışırken saniyede 3.000 işlem. Ancak mevcut gerçek dünya blockchain ağlar pratikte yaklaşık 30 ile sınırlıdır saniye başına işlemler. Bu sınırlama temel olarak mevcut eşzamanlı konsensüs mekanizmalarının geniş zamanlama güvenlik marjları gerektirmesinden kaynaklanmaktadır. nedeniyle daha da kötüleşen beklenen işlem süresiPOLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 2 Daha yavaş uygulamaları destekleme arzusu. Bunun nedeni altta yatan fikir birliği mimarisi: durum geçiş mekanizması veya tarafların bir araya geldiği araçlar ve işlemleri yürütür, mantığı temelden birbirine bağlıdır fikir birliğine varılmış “kanonikleştirme” mekanizmasına veya Tarafların çeşitli seçeneklerden biri üzerinde anlaşmaya vardıkları araç mümkün, geçerli, geçmişler. Bu, hem Bitcoin [15] ve Ethereum [5,23] gibi proof-of-work (PoW) sistemleri hem de NXT [8] ve Bitshares [12] gibi stake kanıtı (PoS) sistemleri için eşit derecede geçerlidir: sonuçta hepsi aynı handikaptan muzdariptir. Bu basit bir blockchains'nin başarıya ulaşmasına yardımcı olan strateji. Ancak, bu iki mekanizmayı tek bir ünitede sıkı bir şekilde birleştirerek protokolün yanı sıra birden fazla farklı öğeyi de bir araya getiriyoruz farklı risk profillerine, farklı ölçeklenebilirlik gereksinimlerine ve farklı gizlilik ihtiyaçlarına sahip aktörler ve uygulamalar. Tek beden herkese uymaz. Çoğu zaman durum böyledir Geniş bir kitleye ulaşma arzusunda olan bir ağ, en düşük ortak paydayla sonuçlanan bir muhafazakarlık derecesini benimser optimal olarak az sayıda kişiye hizmet vermek ve sonuçta başarısızlığa yol açmak Bazen yenilik yapma, performans gösterme ve uyum sağlama yeteneğinde dramatik bir şekilde öyle. Örneğin bazı sistemler. Factom [21] durum geçiş mekanizmasını tamamen bırakın. Ancak çoğu Arzuladığımız fayda, geçiş durumuna geçme yeteneğini gerektirir paylaşılan bir durum makinesine göre. Bırakmak çözer alternatif bir sorun; bir alternatif sunmuyor çözüm. Bu nedenle, makul bir yönün olduğu açık görünüyor ölçeklenebilir merkezi olmayan bir bilişime giden yolu keşfetmek platform, fikir birliği mimarisini birbirinden ayırmaktır. durum geçiş mekanizması. Ve belki de şaşırtıcı olmayan bir şekilde bu, Polkadot'nın ölçeklenebilirliğe çözüm olarak benimsediği stratejidir. 2.1. Protokol, Uygulama ve Ağ. Beğen Bitcoin ve Ethereum, Polkadot aynı anda bir ağ protokolüne ve (şimdiye kadar varsayılan) birincil ağ protokolüne atıfta bulunur Bu protokolü çalıştıran genel ağ. Polkadot ücretsiz ve açık bir proje olarak tasarlanmıştır; protokol spesifikasyonu Creative Commons lisansı altındadır ve kod FLOSS lisansı altına yerleştiriliyor. Proje açık bir şekilde geliştirildi ve katkıları kabul etti nerede faydalı olurlarsa olsunlar. RFC'lerden oluşan bir sistem, pek de farklı değil Python Geliştirme Önerileri, bir araç sağlayacaktır Protokol değişiklikleri ve yükseltmeleri üzerinde kamuya açık işbirliği yapmak. Polkadot protokolünü ilk uygulamamız Parite Polkadot Platformu olarak bilinecek ve API ile birlikte tam bir protokol uygulamasını içerir bağlamalar. Diğer Eşlik blockchain uygulamalarında olduğu gibi, PPP, genel amaçlı bir blockchain teknoloji yığını olacak şekilde tasarlanmıştır; ne yalnızca genel bir ağ için ne de özel/konsorsiyum operasyonu. Gelişimi bu şekilde far dahil olmak üzere çeşitli taraflarca finanse edildi İngiliz hükümetinden bir hibe. Yine de bu belgede Polkadot şu şekilde açıklanmaktadır: halka açık bir ağın bağlamı. Genel bir ağda öngördüğümüz işlevsellik, gerekli olanın bir üst kümesidir. alternatif (örn. özel ve/veya konsorsiyum) ayarlar. Ayrıca bu bağlamda Polkadot'nin tam kapsamı daha net bir şekilde tanımlanıp tartışılacaktır. Bu şu anlama geliyor okuyucu belirli mekanizmaların olabileceğinin farkında olmalıdır. Polkadot ile doğrudan alakalı olmayan şekilde tanımlanmalı (örneğin diğer genel ağlarla birlikte çalışma) kamuya açık olmayan (“izin verilen”) durumlarda konuşlandırıldığında. 2.2. Önceki çalışma. Temel fikir birliğinin devlet geçişinden ayrılması gayri resmi olarak önerildi en az iki yıl boyunca özel olarak - Max Kaye, devrimin ilk günlerinde böyle bir stratejinin savunucusuydu. Ethereum. Zincir olarak bilinen daha karmaşık ölçeklenebilir bir çözüm tarihi Haziran 2014'e kadar uzanan ve ilk kez daha sonra yayınlanan lifler o yıl1, şeffaf bir zincirler arası yürütme mekanizması sağlayan tek bir aktarma zinciri ve birden fazla homojen zincirin gerekliliği ortaya çıktı. Uyumsuzluğun bedeli ödendi işlem gecikmesi yoluyla - işlem gerektiren işlemler sistemin farklı bölümlerinin koordinasyonu işlenmesi daha uzun sürer. Polkadot mimarisinin çoğunu bundan ve takip eden görüşmelerden alıyor Tasarımı ve hükümleri açısından büyük farklılıklar gösterse de çeşitli insanlar tarafından tercih edilir. Polkadot ile karşılaştırılabilecek bir sistem olmasa da aslında üretimde, bazı alakalı birkaç sistem önemli düzeyde az da olsa önerilmiştir. detay. Bu öneriler şunlar olabilir:sistemlere ayrılmış küresel olarak tutarlılık kavramını düşüren veya azaltan küresel bir hizmet sağlamaya çalışan devlet makinesi homojen parçalar aracılığıyla tutarlı tekli makine ve yalnızca heterojenliği hedefleyenler. 2.2.1. Küresel Devleti olmayan sistemler. Factom [21], uygun olmayan şekilde kanoniklik gösteren bir sistemdir geçerlilik, verilerin kronikleştirilmesine etkili bir şekilde izin verir. Küresel devletten kaçınma ve zorluklar nedeniyle bunun getirdiği ölçeklendirme ile ölçeklenebilir bir çözüm sayılabilir. Ancak daha önce de belirtildiği gibi set çözdüğü problemlerin sayısı kesinlikle ve önemli ölçüde daha azdır. Tangle [18] fikir birliği sistemlerine yeni bir yaklaşımdır. İşlemleri bloklar halinde düzenlemek ve durum değişikliklerine küresel olarak kanonik bir sıralama vermek için sıkı bir şekilde bağlantılı bir liste üzerinde fikir birliği oluşturmak yerine, yoğun şekilde yapılandırılmış bir sıralama fikrinden büyük ölçüde vazgeçilir ve bunun yerine daha önceki öğelerin kanonikleştirilmesine yardımcı olan daha sonraki öğelerle birlikte bağımlı işlemlerin yönlendirilmiş, döngüsel olmayan bir grafiğini zorlar açık referans yoluyla. Keyfi durum değişiklikleri için, bu bağımlılık grafiği hızla kontrol edilemez hale gelecektir, ancak çok daha basit olan UTXO model2 için bu şu şekilde olur: oldukça makul. Çünkü sistem sadece gevşek bir şekilde tutarlıdır ve işlemler genellikle birbirinden bağımsızdır. Öte yandan, büyük miktarda küresel paralellik oldukça doğal. UTXO modelini kullanmanın etkisi var Tangle'ı tamamen değer aktarımı sağlayan bir "para birimi" ile sınırlamak daha genel veya genişletilebilir bir şey yerine sistem. Üstelik katı küresel tutarlılık olmadan, mutlak bir kontrole ihtiyaç duyma eğiliminde olan diğer sistemlerle etkileşim Sistem durumu hakkında derece bilgisi pratik hale gelir. 1https://github.com/ethereum/wiki/wiki/Chain-Fibers-Redux 2harcanmamış işlem çıktısı, Bitcoin'nin kullandığı model, burada durum etkin olarak bir değerle ilişkili adres kümesidir; işlemler bu tür adresleri bir araya getirir ve bunları toplamı eşdeğer olan yeni bir adres kümesi halinde yeniden düzenler
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 3 2.2.2. Heterojen Zincir Sistemleri. Yan zincirler [3] bir ana Bitcoin zinciri arasında güvenilmez etkileşime izin verecek Bitcoin protokolüne önerilen ekleme ve ek yan zincirler. Herhangi bir hüküm bulunmamaktadır Yan zincirler arasındaki 'zengin' etkileşimin derecesi: etkileşim, yan zincirlerin birbirine bağlanmasına izin vermekle sınırlı olacaktır. yerel düzeyde birbirlerinin varlıklarının koruyucuları jargon—iki yönlü sabit 3. Nihai vizyon, Bitcoin para biriminin sağlanabileceği bir çerçeveye yöneliktir. sabitleme yoluyla ek, eğer çevresel ise, işlevsellik daha egzotik durum geçişiyle diğer bazı zincirlere Bitcoin protokolünün izin verdiği sistemler. Bu anlamda, Yan zincirler ölçeklenebilirlikten ziyade genişletilebilirliğe yöneliktir. Aslında yan zincirlerin geçerliliğine ilişkin temelde hiçbir hüküm yoktur; Bir zincirden tokens (ör. Bitcoin) bir yan zincir adına tutulanlar yalnızca Yan zincirin madencileri kanonikleştirmeye teşvik etme yeteneği geçerli geçişler Bitcoin ağının güvenliği başkaları adına çalışmaya kolaylıkla geçiş yapılamaz blockchains. Ayrıca Bitcoin sağlanmasına yönelik bir protokol Madenciler madeni birleştiriyor (yani kanonikleştirme güçlerini yan zincirinkine kopyalıyorlar) ve daha da önemlisi, yan zincirin geçişlerinin yan zincirin dışında olduğunu doğruluyorlar bu teklifin kapsamı. Cosmos [10] önerilen bir çok zincirli sistemdir. Yan zincirlerle aynı damar, Nakamoto PoW'u değiştiriyor Jae Kwon'un Tendermint algoritması için fikir birliği yöntemi. Esasen birden fazla zinciri tanımlar (birbirinde faaliyet gösteren) bölgeleri) her biri ayrı ayrı Tendermint örneklerini ve bir ağ üzerinden güven gerektirmeyen iletişim aracını kullanıyor ana göbek zinciri. Bu zincirler arası iletişim, keyfi bilgilerden ziyade dijital varlıkların (“özellikle tokens hakkında”) aktarımıyla sınırlıdır, ancak bu tür zincirler arası iletişimin veriler için bir dönüş yolu vardır, örneğin Göndericiye aktarımın durumu hakkında rapor vermek. Bölgelere ayrılmış zincirler için doğrulayıcı kümeler ve özellikle onları teşvik etmenin araçları yan zincirler gibi bırakıldı çözülmemiş bir sorun olarak Genel varsayım şudur her bölgeli zincirin kendisi token değerinde bir değere sahip olacak ve bu değerin enflasyonu validators'yi ödemek için kullanılacak. Hala erken aşamalarda Tasarım konusunda şu anda teklif, ölçeklenebilir hedefe ulaşmanın ekonomik araçlarına ilişkin kapsamlı ayrıntılardan yoksundur. Küresel geçerliliğin kesinliği. Ancak bölgeler ile merkez arasında gereken gevşek tutarlılık, bölgelere ayrılmış parametreler üzerinde ilave esneklik için daha güçlü bir sistem uygulayan bir sistemle karşılaştırıldığında zincirler tutarlılık. 2.2.3. Casper. Casper [6] ve Polkadot arasında henüz kapsamlı bir inceleme veya yan yana karşılaştırma yok oldukça kapsamlı bir inceleme yapılabilir ancak ikisinin (ve buna bağlı olarak yanlış) karakterizasyonu. Casper, PoS konsensüs algoritmasının nasıl yeniden tasarlandığını gösteriyor katılımcıların hangi çatala dair bahis oynadıkları temeline dayanabilir. sonuçta kanonik hale gelecektir. Ağa karşı dayanıklı olmasını sağlamak için büyük önem verildi çatallar, uzatıldığında bile ve temel Ethereum modelinin üzerinde bir miktar ek ölçeklenebilirliğe sahiptir. olarak Casper bugüne kadar önemli ölçüde daha fazla olma eğilimindeydi. Polkadot ve atalarından daha karmaşık bir protokol ve temel blockchain biçiminden önemli sapma. o Casper'ın gelecekte nasıl yineleneceği henüz bilinmiyor ve nihayet konuşlandırıldığında neye benzeyeceği. Casper ve Polkadot her ikisi de ilginç yeni protokolleri ve bir anlamda Ethereum, aralarında önemli farklar var Nihai hedefler ve dağıtım yolları. Casper bir Ethereum Orijinal olarak tasarlanmış temel merkezli proje istemeden protokolde PoS değişikliği yapmak temelde ölçeklenebilir bir blockchain oluşturun. Önemli olan, daha kapsamlı bir şey olmaktan ziyade bir hard fork olacak şekilde tasarlandı ve bu nedenle tüm Ethereum istemcileri ve kullanıcıları Yükseltilmesi veya belirsiz bir benimseme çatalında kalması gerekiyor. Bu nedenle, sıkı kuralların olduğu merkezi olmayan bir projenin doğasında olduğu gibi dağıtım önemli ölçüde daha zor hale gelir. koordinasyon gereklidir. Polkadot birkaç açıdan farklılık gösterir; her şeyden önce, Polkadot tamamen genişletilebilir ve ölçeklenebilir olacak şekilde tasarlanmıştır blockchain geliştirme, dağıtım ve etkileşim testi yatak. Büyük ölçüde geleceğe yönelik bir emniyet kemeri olacak şekilde inşa edilmiştir. yeni blockchain asimile etaşırı karmaşık merkezi olmayan koordinasyon olmadan kullanılabilir hale gelen teknoloji veya sert çatallar. Halihazırda bunun gibi çeşitli kullanım senaryolarını öngörüyoruz. şifrelenmiş konsorsiyum zincirleri ve yüksek frekanslı zincirler olarak yapılması gerçekçi olmayan çok düşük blok süreleriyle Ethereum'nin şu anda öngörülen gelecekteki herhangi bir sürümü. Son olarak, onunla Ethereum arasındaki bağlantı son derece yüksektir gevşek; Ethereum tarafından herhangi bir işlem yapılmasına gerek yoktur. ikisi arasında güvenilir işlem iletimini etkinleştir ağlar. Kısacası Casper/Ethereum 2.0 ve Polkadot Nihai hedeflerine inandığımız bazı geçici benzerlikleri paylaşıyoruz önemli ölçüde farklıdır ve rekabet etmek yerine, iki protokolün sonuçta bir arada var olması muhtemeldir öngörülebilir gelecek için karşılıklı yarar sağlayan ilişkiler.
導入
ブロックチェーンは、「モノのインターネット」を含むいくつかの分野で有用性が大いに期待できることが証明されています。 (IoT)、財務、ガバナンス、アイデンティティ管理、ウェブ分散化、資産追跡。しかし、にもかかわらず、 技術的な約束と壮大な話はまだわかりません 現在のテクノロジーの重要な現実世界への展開。 私たちは、これは現在の 5 つの主要な失敗に起因すると考えています。 テクノロジースタック: スケーラビリティ: 世界中でどれだけのリソースが費やされているか システムが単一のトランザクションを処理するための処理、帯域幅、およびストレージ、およびそのトランザクション数 トランザクションは以下に基づいて合理的に処理できます ピークコンディション? 分離性: 複数の異なるニーズに対応できるか 関係者とアプリケーションは、同じフレームワークの下で最適に近い程度まで対処できるでしょうか? 開発性: ツールはどの程度うまく機能しますか?する API は開発者のニーズに対応しているでしょうか?教育用の教材はありますか?適切な統合は行われていますか? ガバナンス: ネットワークは柔軟性を維持できるか 時間の経過とともに進化して適応しますか? 決定は可能ですか 十分な包括性、正当性、そして 効果的なリーダーシップを発揮するための透明性 分散型システム? 適用可能性: そのテクノロジーは実際にそれ自体で切実なニーズに対応しているのでしょうか?ギャップを埋めるには他の「ミドルウェア」が必要ですか? 実際のアプリケーションは? 現在の作業では、最初の 2 つに対処することを目指しています。 問題: スケーラビリティと分離性。そうは言っても、私たちは信じています Polkadot フレームワークは、これらの問題のそれぞれのクラスにおいて有意義な改善を提供できます。 最新の効率的な blockchain 実装 パリティ Ethereum クライアント [17] は、 高性能のコンシューマ ハードウェアで実行すると、1 秒あたり 3,000 トランザクション。 しかし、現在の現実世界では、 blockchain ネットワークは実質的に約 30 に制限されています 1秒あたりのトランザクション数。 この制限は主に、現在の同期コンセンサス メカニズムが広いタイミング安全マージンを必要とするという事実に起因しています。 予想される処理時間は、POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 2 遅い実装をサポートしたいと考えています。これは次の理由によるものです 基礎となるコンセンサスアーキテクチャ: 状態遷移メカニズム、または当事者が照合する手段 トランザクションを実行し、そのロジックは基本的に結合されています コンセンサス「正規化」メカニズム、または 当事者がいくつかの事項のうちの 1 つに同意する手段 可能性のある、有効な、履歴。 これは、Bitcoin [15] や Ethereum [5,23] などの proof-of-work (PoW) システムと、NXT [8] や Bitshares [12] などのプルーフオブステーク (PoS) システムの両方に同様に当てはまります。 最終的には全員が同じハンディキャップを負うことになります。シンプルです blockchain の成功に貢献した戦略。ただし、 これら 2 つの機構を 1 つのユニットに緊密に結合することにより、 プロトコルの複数の異なるプロトコルもバンドルします さまざまなリスク プロファイル、さまざまなスケーラビリティ要件、さまざまなプライバシー ニーズを持つアクターとアプリケーション。 1 つのサイズがすべてに適合するわけではありません。次のようなケースが非常に頻繁にあります。 広くアピールしたいという願望があるため、ネットワークはある程度の保守主義を採用し、その結果最小公倍数が低くなります 少数の人々に最適にサービスを提供し、最終的には失敗につながる 時には、革新し、実行し、適応する能力において 劇的にそうです。 いくつかのシステム、例えばFactom [21] は状態遷移メカニズムを完全に削除します。ただし、その多くは、 私たちが望む実用性には状態を遷移する能力が必要です 共有ステートマシンに従って。落とせば解決する 別の問題。代替手段は提供されません 解決策。 したがって、合理的な方向性の 1 つは明らかであるように思われます。 スケーラブルな分散コンピューティングへのルートとして探索する プラットフォームはコンセンサスアーキテクチャを分離することを目的としています。 状態遷移メカニズム。そして、おそらく驚くことではないでしょうが、これは Polkadot がスケーラビリティの解決策として採用している戦略です。 2.1.プロトコル、実装、およびネットワーク。いいね Bitcoin および Ethereum、Polkadot は、ネットワーク プロトコルと (これまで想定されていた) プライマリを同時に指します このプロトコルを実行するパブリック ネットワーク。 Polkadot は無料でオープンなプロジェクトであることを目的としており、プロトコル仕様はクリエイティブ コモンズ ライセンスに基づいており、 コードは FLOSS ライセンスの下に配置されます。プロジェクトは オープンな方法で開発され、貢献を受け入れます 役に立つ場所ならどこでも。 RFC のシステムと似ています Python 拡張提案により、次の手段が可能になります。 プロトコルの変更とアップグレードに関して公的に協力しています。 Polkadot プロトコルの初期実装 はパリティ Polkadot プラットフォームとして知られ、 API とともに完全なプロトコル実装を含める バインディング。他のパリティ blockchain 実装と同様に、 PPP は、パブリック ネットワークやネットワークに固有のものではなく、汎用の blockchain テクノロジー スタックとして設計されています。 民間/コンソーシアム運営。こうして発展したのが、 これまで、以下を含むいくつかの団体から資金提供を受けてきました。 英国政府からの補助金。 それにも関わらず、この文書では Polkadot について次のように説明しています。 パブリックネットワークのコンテキスト。私たちがパブリック ネットワークで想定している機能は、ネットワークで必要とされる機能のスーパーセットです。 代替設定(プライベートおよび/またはコンソーシアムなど)。さらに、この文脈では、Polkadot の全範囲は次のようになります。 より明確に説明され、議論されるべきです。これはつまり、 読者は、特定のメカニズムが Polkadot に直接関係のない説明 (他のパブリック ネットワークとの相互運用など) 非公開(「許可」)状況で展開される場合。 2.2.以前の作品。基礎となるコンセンサスを状態遷移から切り離すことが非公式に提案されている 少なくとも 2 年間はプライベートで活動していた――マックス・ケイは、社会の非常に初期の頃、そのような戦略の支持者であった。 Ethereum。 チェーンとして知られる、より複雑でスケーラブルなソリューション ファイバーは 2014 年 6 月に遡り、その後初めて公開されました 同年1、透過的なチェーン間実行メカニズムを提供する単一のリレーチェーンと複数の同種チェーンの主張を行いました。 デコヒーレンスには代償が支払われた トランザクション レイテンシによる - トランザクションを必要とする システムの異なる部分を調整することで、 処理に時間がかかります。 Polkadot は、そのアーキテクチャの多くを、それとその後の会話から取り入れています。 ただし、その設計と規定の多くは大きく異なります。 Polkadot に匹敵するシステムはありませんが、 実際に実稼働中であり、何らかの関連性を持ついくつかのシステム 提案されているが、実質的なレベルではほとんどない 詳細。これらの提案は、システムに分解される グローバルに一貫性のある概念を削除または削減します。 ステート マシン、グローバルに提供しようとするもの 均質なシャードによるコヒーレントなシングルトン マシン 異質性のみを対象とするものもあります。 2.2.1.グローバル状態のないシステム。 Factom [21] は、対応するものなしで正規性を実証するシステムです。 有効性を高め、データの記録を効果的に可能にします。グローバルな状態と困難を回避するため これによってもたらされるスケーリングを考慮すると、スケーラブルなソリューションと考えることができます。ただし、前述したように、このセットは それによって解決される問題の割合は厳密かつ実質的に小さくなります。 Tangle [18] は、コンセンサス システムへの新しいアプローチです。 トランザクションをブロックに配置し、厳密にリンクされたリストに基づいて合意を形成して、状態変化の世界的に標準的な順序付けを行うのではなく、高度に構造化された順序付けの概念を大幅に放棄し、代わりに 初期の項目を正規化するのに役立つ、後の項目を持つ依存トランザクションの有向非巡回グラフを推進します。 明示的な参照を通じて。任意の状態変化の場合、 この依存関係グラフはすぐに手に負えなくなるでしょう。 ただし、より単純な UTXO モデル 2 の場合、これは次のようになります。 かなり合理的です。システムの一貫性は緩やかであり、トランザクションは通常、それぞれから独立しているためです。 その他、大量のグローバル並列処理が非常に多くなります。 自然な。 UTXO モデルを使用すると効果があります タングルを純粋に価値移転「通貨」に限定すること より一般的または拡張可能なものではなく、システムです。 さらに、厳密なグローバル一貫性がなければ、他のシステムとの相互作用は、絶対的なシステムを必要とする傾向があります。 システム状態に関するある程度の知識は非現実的になります。 1https://github.com/ethereum/wiki/wiki/Chain-Fibers-Redux 2 未使用のトランザクション出力。Bitcoin が使用するモデル。これにより、状態は事実上、ある値に関連付けられたアドレスのセットになります。 トランザクションはそのようなアドレスを照合し、合計が等しい新しいアドレスのセットに再構成します。
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 3 2.2.2.異種チェーン システム。サイドチェーン [3] は メインの Bitcoin チェーン間のトラストレスな対話を可能にする Bitcoin プロトコルへの追加を提案 そして追加のサイドチェーン。何の規定もありません 側鎖間の「豊富な」相互作用の程度: 相互作用は、側鎖の相互作用を可能にするものに限定されます。 お互いの資産を管理し、地域内で影響を与える 専門用語—双方向ペッグ 3. 最終的なビジョンは、Bitcoin 通貨を提供できるフレームワークです。 ペギングによる追加機能 (周辺機能である場合) よりエキゾチックな状態遷移を伴う他のチェーンへ Bitcoin プロトコルで許可されているシステムを超えています。この意味で、 サイドチェーンは、スケーラビリティではなく拡張性に対処します。 実際、サイドチェーンの有効性に関する規定は基本的にありません。 1 つのチェーンからの token 個 (例: Bitcoin) サイドチェーンに代わって保持されるのは、 マイナーに正規化を促すサイドチェーンの機能 有効な遷移。 Bitcoin ネットワークのセキュリティ 他の人に代わって仕事に簡単に移行できない blockchain秒。さらに、Bitcoin を保証するためのプロトコル マイナーはマージマイニング (つまり、正規化権限をサイドチェーンの権限に複製します) し、さらに重要なことに、サイドチェーンの遷移が外部にあることを検証します。 この提案の範囲。 Cosmos [10] は、 サイドチェーンと同じ流れで、ナカモトのPoWを交換します Jae Kwon の Tendermint アルゴリズムのコンセンサス手法。 基本的に、それは複数のチェーン(で動作する)を記述します。 ゾーン) それぞれが Tendermint の個別のインスタンスを使用し、 マスターハブチェーン。このチェーン間通信は、任意の情報ではなく、デジタル資産 (「具体的には tokens について」) の転送に限定されていますが、このようなチェーン間通信にはデータのリターン パスがあり、 例:転送のステータスを送信者に報告するため。 ゾーンチェーンのバリデーターセット、特に 彼らを奨励する手段は、サイドチェーンと同様に、左にあります。 未解決の問題として。一般的な仮定は次のとおりです 各ゾーンチェーン自体は、validator の支払いに使用される値の token を保持します。まだ初期段階にある 設計の点で、現時点ではこの提案には、スケーラブルな設計を達成するための経済的手段に関する包括的な詳細が欠けています。 グローバルな妥当性に対する確実性。ただし、ゾーンとハブの間に必要な緩やかな一貫性により、 ゾーンのパラメータに対する柔軟性をさらに高めるため より強力なチェーンを適用するシステムのチェーンと比較して、 一貫性。 2.2.3.キャスパー。 Casper [6] と Polkadot の包括的なレビューや比較はまだ行われていません かなり広範囲に作成することもできますが、 (したがって不正確な) 2 つの特徴付け。 Casper は、PoS コンセンサス アルゴリズムの仕組みを再考したものです 参加者がどのフォークに賭けるかに基づいている可能性があります 最終的には正規化されるでしょう。ネットワークに対する堅牢性を確保するために十分な考慮が払われました 延長された場合でもフォークを使用し、基本的な Ethereum モデルに加えてある程度の追加のスケーラビリティを備えています。として このように、Casper はこれまでのところ、実質的に Polkadot やその前身よりも複雑なプロトコル、 基本的な blockchain 形式から大幅に逸脱しています。それ Casper が将来どのように反復するかはまだわかりません そして、それが最終的に展開された場合にどのようになるか。 Casper と Polkadot はどちらも興味深い新しいプロトコルであり、ある意味では、 Ethereum、両者の間には大きな違いがあります。 最終的な目標と導入までの道筋。 キャスパーは、 Ethereum 当初設計された財団中心のプロジェクト 意図せずにプロトコルの PoS 変更を行うこと 基本的にスケーラブルな blockchain を作成します。重要なことは、それは、 これ以上拡張的なものではなく、ハードフォークとして設計されているため、すべての Ethereum クライアントとユーザーは アップグレードするか、採用が不確実な分岐点に留まる必要があります。そのため、緊密な分散プロジェクトに特有のこととして、デプロイメントは大幅に困難になります。 調整が必要です。 Polkadot はいくつかの点で異なります。何よりもまず、 Polkadot は、完全に拡張可能でスケーラブルになるように設計されています。 blockchain 開発、展開、および対話テスト ベッド。これは、ほぼ将来性のあるハーネスとして構築されており、 新しいblockchainを同化する過度に複雑な分散型調整なしで利用できるテクノロジー またはハードフォーク。私たちはすでに次のようないくつかのユースケースを想定しています 暗号化されたコンソーシアムチェーンおよび高周波チェーンとして ブロック時間が非常に短いため、実行するのは非現実的です。 現在想定されている Ethereum の将来のバージョン。最後に、それと Ethereum との結合は非常に強力です。 緩い; Ethereum 側でのアクションは必要ありません。 2 つの間のトラストレスなトランザクション転送を有効にする ネットワーク。 つまり、Casper/Ethereum 2.0 および Polkadot いくつかのつかの間の類似点を共有しますが、私たちは彼らの最終目標を信じています 実質的に異なっており、競合するのではなく、 2 つのプロトコルは最終的には共存する可能性があります。 予見可能な将来にわたって相互に有益な関係を維持します。
Özet
Polkadot ölçeklenebilir, heterojen bir çoklu zincirdir. Bu önceki blockchain uygulamalarından farklı olduğu anlamına gelir değişen tek bir zincir sağlamaya odaklanmış olan potansiyel uygulamalara göre genellik dereceleri, Polkadot kendisi hiçbir şekilde doğal bir uygulama işlevselliği sağlamak üzere tasarlanmıştır. Aksine, Polkadot ana kayayı sağlar Çok sayıda doğrulanabilir bilginin yer aldığı “aktarma zinciri”, küresel olarak tutarlı dinamik veri yapıları barındırılabilir yan yana. Bu veri yapılarına “paralelleştirilmiş” diyoruz özel bir ihtiyaç olmasa da zincirler veya parachainler doğası gereği blockchain olmaları. Başka bir deyişle, Polkadot, bir dizi bağımsız zincire (ör. Ethereum, Ethereum Classic, Namecoin ve Bitcoin) çok önemli iki nokta hariç: • Havuzlanmış güvenlik; • güven gerektirmeyen zincirler arası işlem yapılabilirlik. Bu noktalar, Polkadot öğesinin "ölçeklenebilir" olduğunu düşünmemizin nedenidir. Prensip olarak, Polkadot üzerinde konuşlandırılacak bir sorun büyük ölçüde paralelleştirilebilir (ölçeği genişletilebilir) çok sayıda parachain. Çünkü her birinin tüm yönleri parachain Polkadot ağının farklı bir bölümü tarafından paralel olarak yürütülebilir, sistemin bazı yetenekleri vardır ölçeklendirmek için. Polkadot oldukça basit bir parça sağlar 3aslında bir zincirdeki tokens'yi yok ederek başka bir zincirde tokens'yi oluşturmadan oluşan tek yönlü sabitlemenin aksine Orijinal tokens'yi kurtarmak için bunun tersini yapacak mekanizmaPOLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 4 karmaşıklığın çoğunu ara yazılım düzeyinde ele almayı bırakan altyapı. Bu, kalkınma riskini azaltmayı amaçlayan bilinçli bir karardır. Kısa sürede geliştirilecek gerekli yazılımlar ve güvenliği konusunda iyi düzeyde bir güven ile sağlamlık. 3.1. Polkadot Felsefesi. Polkadot gerekir üzerine oturulacak mutlak kaya gibi sağlam bir temel sağlar. bir sonraki mutabakat sistemi dalgasını oluşturun üretim kapasitesine sahip olgun tasarımlardan kaynaklanan risk spektrumu yeni oluşan fikirlere. Polkadot, güvenlik, izolasyon ve iletişim konusunda güçlü garantiler sunarak aşağıdakilere izin verebilir: bir dizi özellik arasından seçim yapmak için parachainler. Aslında, çeşitli deneysel blockchain'lerin mantıklı kabul edilebilecek özellikleri zorladığını öngörüyoruz bugün. muhafazakar görüyoruz benzer yüksek değerli zincirler Bitcoin veya Z-cash [20] daha düşük değerle birlikte mevcut “Tema zincirleri” (böyle pazarlama, çok eğlenceli) ve test ağları sıfır veya sıfıra yakın ücretlerle. Tamamen şifrelenmiş görüyoruz, "karanlık", birlikte çalışan konsorsiyum zincirleri - ve hatta son derece işlevsel ve açık zincirlere hizmet sağlamak Ethereum gibi olanlar gibi. Deneysel yeni görüyoruz Sübjektif zaman yüklü wasm gibi VM tabanlı zincirler zincir, zorlu bilgi işlem sorunlarını daha olgun Ethereum benzeri bir zincirden dış kaynak olarak sağlama aracı olarak kullanılıyor veya daha kısıtlı Bitcoin benzeri bir zincir. Zincir yükseltmelerini yönetmek için Polkadot doğası gereği muhtemelen dayalı bir tür yönetim yapısını desteklemek mevcut istikrarlı siyasi sistemlere ilişkindir ve Sarı Kağıt Konseyi'ne benzer iki meclisli bir yapıya sahiptir [24]. olarak nihai otorite, temel stake edilebilir token sahipleri "referandum" kontrolüne sahip olacaktır. Kullanıcıların düşüncelerini yansıtmak için Geliştirme ihtiyacı ama geliştiricilerin meşruiyet ihtiyacı, makul bir yönlendirmenin oluşmasını bekliyoruz bir “kullanıcı” komitesinin iki odası (aşağıdakilerden oluşur) validators teminatlı) ve bir “teknik” komite oluşturuldu büyük müşteri geliştiricileri ve ekosistem oyuncularından oluşan bir ekip.
token sahiplerinden oluşan bir grup nihai meşruiyeti koruyacak ve bu yapıyı geliştirmek, yeniden parametrelendirmek, değiştirmek veya feshetmek için bir süper çoğunluk oluşturacaktır; Nihai ihtiyaçtan şüphe etmeyin: Twain'in sözleriyle “Hükümetler ve bebek bezleri sık sık değiştirilmeli ve aynı sebep”. Yeniden parametrelendirmenin daha geniş bir konsensüs mekanizması içinde düzenlenmesi tipik olarak önemsiz olsa da, değiştirme ve genişletme gibi daha niteliksel değişiklikler büyük ihtimalle otomatik olmayan “yumuşak kararnameler” (ör. Bir blok numarasının kanonikleştirilmesi yoluyla ve hash resmi olarak yeni protokolü belirten bir belge) veya bir temel konsensüs mekanizmasının bulunmasını gerektirir. kendisinin herhangi bir yönünü tanımlayacak kadar zengin bir dil bunun değişmesi gerekebilir. İkincisi nihai bir amaçtır, ancak birincisinin seçilme olasılığı daha yüksektir Makul bir geliştirme zaman çizelgesini kolaylaştırmak. Polkadot'nin temel ilkeleri ve içinde yer aldığı kurallar Tüm tasarım kararlarını değerlendiriyoruz: Minimal: Polkadot mümkün olduğunca az işlevselliğe sahip olmalıdır. Basit: Hiçbir ek karmaşıklık mevcut olmamalıdır temel protokolde makul olarak olabileceğinden ara yazılıma yüklenmiş, aracılığıyla yerleştirildi parachain veya daha sonraki bir optimizasyonda tanıtıldı. Genel: gereksiz gereksinim yok, kısıtlama veya parachainlere sınırlama getirilmeli; Polkadot, fikir birliği sistemi geliştirme için optimize edilebilecek bir test ortamı olmalıdır. Uzantıların yer aldığı modeli mümkün olduğunca soyut hale getirmek. Sağlam: Polkadot temel olarak bir sağlamalıdır kararlı taban katmanı. Ekonomik sağlamlığın yanı sıra bu aynı zamanda merkezi olmayan yönetim anlamına da gelir. yüksek ödüllü saldırıların vektörleri.
まとめ
Polkadot は、スケーラブルな異種マルチチェーンです。これ 以前の blockchain 実装とは異なることを意味します さまざまなチェーンを単一チェーンで提供することに重点を置いています。 潜在的なアプリケーションに対する一般性の度合い、Polkadot それ自体は、アプリケーション固有の機能をまったく提供しないように設計されています。 むしろ、Polkadot が基盤を提供します 多数の検証可能な「リレーチェーン」、 グローバルに一貫性のある動的データ構造をホストできる 並んで。これらのデータ構造を「並列化」と呼びます。 チェーンまたはパラチェーン。ただし、特に必要なわけではありません。 それらは本質的にblockchainであると考えられます。 言い換えれば、Polkadot は独立したチェーンのセット (例: Ethereum、Ethereum Classic、Namecoin、および Bitcoin)、2 つの非常に重要な点を除きます。 • プールされたセキュリティ。 • トラストフリーのチェーン間取引可能性。 これらの点が、Polkadot が「スケーラブル」であると考える理由です。原則として、Polkadot にデプロイされる問題は、実質的に並列化、スケールアウトすることができます。 多数のパラチェーン。それぞれのあらゆる側面から、 パラチェーンは Polkadot ネットワークの異なるセグメントによって並行して実行される可能性があり、システムには何らかの機能があります スケールするために。 Polkadot は、かなり必要最低限の部分を提供します。 3一方向ペグとは対照的に、基本的に 1 つのチェーン内の token を破棄して、別のチェーンに token を作成します。 元の token を回復するために逆の処理を行うメカニズムPOLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 4 インフラストラクチャの複雑さの多くはミドルウェア レベルで解決される必要があります。これは開発リスクを軽減することを目的とした意識的な決定であり、 必要なソフトウェアを短期間で開発する必要がある そしてそのセキュリティには十分な自信があり、 堅牢性。 3.1. Polkadot の哲学。 Polkadot すべきです 絶対的な強固な基盤を提供します。 コンセンサス システムの次の波を即座に構築する 生産可能な成熟した設計からのリスクスペクトル 初期のアイデアに。 Polkadot は、セキュリティ、分離、通信に対する強力な保証を提供することで、 パラチェーン自体をさまざまなプロパティから選択します。 実際、私たちは、賢明であると考えられるものの特性を押し上げるさまざまな実験的な blockchain を予見しています。 今日。 私たちは保守的だと考えていますが、 ~に似た高価値チェーン Bitcoin または Z-cash [20] が低額と共存 「テーマチェーン」(このようなマーケティング、非常に楽しい)とテストネット 手数料はゼロ、またはほぼゼロです。 完全に暗号化されていることがわかります。 「ダーク」、コンソーシアム チェーンが並行して運営され、さらには 高機能でオープンなチェーンへのサービスの提供 Ethereum など。実験的な新しいものを見る 主観的な時間課金型の Wasm などの VM ベースのチェーン チェーンは、より成熟したEthereumのようなチェーンから難しい計算問題をアウトソーシングする手段として使用されています または、より制限された Bitcoin のようなチェーン。 チェーン アップグレードを管理するために、Polkadot は本質的に 何らかのガバナンス構造をサポートしている可能性が高い 既存の安定した政治制度と、イエローペーパー評議会[24]と同様の二院制の側面を持っています。として 最終的な権威である、根底にあるステーカブルtoken保有者が「国民投票」のコントロールを有することになる。ユーザーの意見を反映するため 開発の必要性はあるが、開発者の正当性の必要性も考慮すると、合理的な方向性は、 両院の「ユーザー」委員会(以下で構成) validators) と「技術」委員会が設立されました 主要なクライアント開発者とエコシステムプレーヤーの数。 の token 保有者の集団は究極の正当性を維持し、この構造を強化、再パラメータ化、置き換え、または解体する超多数派を形成するでしょう。 トウェインの言葉を借りれば、最終的には次のことが必要になることを疑ってはなりません。 「おむつもおむつも頻繁に交換しなければなりませんし、 同じ理由です。」 通常、再パラメータ化は大規模なコンセンサスメカニズム内で調整するのは簡単ですが、置き換えや増強などのより質的な変更は、 おそらく、自動化されていない「軟令」(例: ブロック番号の正規化と 新しいプロトコルを正式に指定する文書の hash) あるいは、核となるコンセンサスメカニズムに、 それ自体のあらゆる側面を説明するのに十分な豊かな言語 変更する必要があるかもしれません。後者は最終的な目標ですが、 ただし、次の目的では前者が選択される可能性が高くなります。 合理的な開発スケジュールを促進します。 Polkadot の主な信条とその中のルール 私たちはすべての設計上の決定事項を次のように評価します。 最小限: Polkadot にはできる限り機能を少なくする必要があります。 シンプル: 追加の複雑さは存在すべきではありません 基本プロトコルでは合理的に考えられる以上の ミドルウェアにオフロードされ、 を通して置かれる パラチェーン、または後の最適化で導入されました。 一般: 不必要な要件や制約はありません またはパラチェーンに制限を設ける必要があります。 Polkadot は、次の方法で最適化できるコンセンサス システム開発のテスト ベッドである必要があります。 拡張機能が適合するモデルを可能な限り抽象化します。 堅牢: Polkadot は基本的に 安定したベースレイヤー。これは、経済の健全性に加えて、最小限に抑えるための分散化も意味します。 高額な報酬をもたらす攻撃のベクトル。
Polkadot katılımı
Polkadot bakımında dört temel rol vardır ağ: derleyici, balıkçı, aday gösteren ve validator. içinde Polkadot'nin olası bir uygulaması, ikinci rol aslında iki role ayrılabilir: temel validator ve kullanılabilirlik garantörü; bu bölümde tartışılıyor 6.5.3. Harmanlayıcı Balıkçı Doğrulayıcılar (bu grup) Doğrulayıcılar (diğer gruplar) onaylıyor olur monitörler raporlar kötü davranış blok sağlar adaylar için Aday gösteren Şekil 1. Polkadot'nin dört rolü. 4.1. Doğrulayıcılar. validator en yüksek ücrettir ve Polkadot ağında yeni blokların kapatılmasına yardımcı olur. validator'nın rolü yeterince yüksek bir bağa bağlıdır diğer bağlı tarafların ödeme yapmasına izin vermemize rağmen yatırılıyor onlar adına hareket etmek üzere bir veya daha fazla validator aday gösterin ve validator tahvilinin bu tür bir kısmının mutlaka validator'ya ait olması gerekmeyebilir, bunun yerine bu kişilere ait olabilir aday gösterenler. Bir validator, yüksek kullanılabilirlik ve bant genişliğine sahip bir aktarma zinciri istemci uygulamasını çalıştırmalıdır. Her blokta düğüm onaylama rolünü kabul etmeye hazır olmalıdır aday gösterilen bir parachain üzerinde yeni bir blok. Bu süreç adayın alınmasını, doğrulanmasını ve yeniden yayınlanmasını içerir bloklar. Adaylık deterministiktir ancak çok önceden tahmin edilmesi neredeyse imkansızdır. validator yapamadığı için tam senkronizasyonu sürdürmesi makul olarak beklenebilir tüm parachain'lerin veri tabanına göre, validator'nin önerilen yeni bir zincir tasarlama görevini aday göstermesi bekleniyor Parachain bloğunu harmanlayıcı olarak bilinen üçüncü bir tarafa aktarır. Tüm yeni parachain blokları atanmış validator alt grupları tarafından uygun şekilde onaylandıktan sonra, validators daha sonra aktarma zinciri bloğunu kendisinin onaylaması gerekir. Bu şunları içerir: işlem kuyruklarının durumunun güncellenmesi (esasen verileri bir parachain'in çıktı kuyruğundan diğerine taşımak parachain'in giriş kuyruğu), işlemleri işleme Onaylanmış aktarma zinciri işlem seti ve onaylanması son parachain değişiklikleri de dahil olmak üzere son blok.POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 5 validator fikir birliği bulma görevini yerine getirmiyor seçtiğimiz fikir birliği algoritmasının kurallarına göre cezalandırılır. Başlangıçtaki kasıtsız arızalar için bu, validator ödülünün durdurulması. Tekrarlanan arızalar güvenlik bağlarının azalmasına (yanma yoluyla) neden olur. Çift imzalama gibi muhtemelen kötü niyetli eylemler veya Geçersiz bir blok sağlamak için komplo kurmak, bağın tamamı (kısmen yanmış ancak çoğunlukla verilmiştir) muhbirlere ve dürüst aktörlere). Bir bakıma validator'ler madencilik havuzlarına benziyor mevcut PoW'un blockchains'si. 4.2. Aday gösterenler. Aday gösteren, hisse sahibi bir partidir validator'nin teminat tahviline katkıda bulunan kişi. onlar Risk sermayesi yerleştirmek dışında ek bir rolü yoktur ve belirli bir validator (veya bunların bakımında sorumlu bir şekilde hareket etmek ağ. Orantılı bir artış veya azalma alırlar tahvilin büyümesine göre mevduatlarında katkıda bulunurlar. Sıralayıcılarla birlikte aday gösterenler de bazı ülkelerde günümüz PoW ağlarındaki madencilere benzer bir his veriyor. 4.3. Harmanlayıcılar. İşlem harmanlayıcıları (kısaca harmanlayıcılar) validators'nin geçerli bilgiler üretmesine yardımcı olan taraflar mı? Parachain blokları. Belirli bir parachain için “tam düğüm” sağlarlar; gerekli olan her şeyi muhafaza ettikleri anlamına gelir Yeni bloklar yazabilmek ve yürütebilmek için gerekli bilgiler işlemler, madencilerin mevcut PoW blockchains üzerinde yaptıklarıyla hemen hemen aynı şekilde yapılır. Normal şartlarda onlar mühürsüz bir kayıt oluşturmak için işlemleri toplayacak ve yürütecek sıfır bilgiyle birlikte engelleyin ve sağlayın şu anda sorumlu olan bir veya daha fazla validators'ye kanıt bir parachain bloğu öneriyor. Düzenleyenler, aday gösterenler ve validator'ler arasındaki ilişkinin kesin niteliği muhtemelen değişecek zaman. Başlangıçta, derleyicilerin çok yakın çalışmasını bekliyoruz validators ile, çünkü yalnızca birkaç tane olacak (belki küçük işlem hacmine sahip yalnızca bir) parachain(ler). İlk istemci uygulaması, RPC'leri içerecektir. Parachain harmanlayıcı düğümü, bir (aktarma zinciri) validator düğümüne koşulsuz olarak geçerli olduğu kanıtlanabilen bir parachain sağlamak için Blok. Senkronize edilmiş bir sürümünü sürdürmenin maliyeti olarak bu tür parachainlerin tümü artıyor, ek görmeyi bekliyoruz ayırmaya yardımcı olacak altyapı mevcuttur. Bağımsız, ekonomik motivasyona sahip taraflara yönelik görevler. Sonunda, rekabet eden harmanlayıcı havuzlarını görmeyi bekliyoruz. En fazla işlem ücretini toplayın. Bu tür düzenleyicilerle, ödül gelirlerinden sürekli bir pay almak için belirli bir süre boyunca belirli validator'lere hizmet vermek üzere sözleşme yapılabilir. Alternatif olarak, "serbest" derleyiciler basitçe bir Piyasa, anında ödenecek ödülün rekabetçi bir payı karşılığında geçerli parachain blokları sunuyor. Benzer şekilde, merkezi olmayan aday havuzları birden fazla adaya izin verecektir. katılımcıları koordine etmek ve görevini paylaşmak üzere bir araya getirdi. validator. Bu havuzlama yeteneği açık katılımı garanti eder daha merkezi olmayan bir sisteme yol açmaktadır. 4.4. Balıkçılar. Diğer iki aktif partinin aksine, balıkçılar blok yazarlığıyla doğrudan ilişkili değil süreç. Daha ziyade bağımsız “ödül avcıları”dırlar büyük bir tek seferlik ödülle motive edildi. Tam olarak nedeniyle Balıkçıların varlığı nedeniyle, uygunsuz davranış olaylarının nadiren meydana gelmesini bekleriz ve bunlar yalnızca balıkçılar nedeniyle gerçekleştiğinde bağlı tarafın gizli anahtar güvenliği konusunda dikkatsiz olması, kötü niyetle değil. İsim geliyor Beklenen ödül sıklığından, katılım için gereken minimum gereksinimlerden ve nihai ödül boyutundan. Balıkçılar ödüllerini zamanında kanıtlayarak alıyorlar en az bir bağlı taraf yasa dışı hareket etti. Yasa dışı eylemler her biri aynı onaylı ebeveynle iki blok imzalamayı veya parachain durumunda geçersiz bir anlaşmanın onaylanmasına yardımcı olmayı içerir Blok. Aşırı ödüllendirmeyi veya taviz vermeyi önlemek ve bir oturumun gizli anahtarının yasa dışı kullanımı, temel ödül tek bir validator'nin yasa dışı olarak imzalanmış mesajını sağlamak minimum. Bu ödül asimptotik olarak arttıkça artar. diğer validator'lerden gelen yasa dışı imzaları doğrulamak gerçek bir saldırıyı ima ediyor. Asimptot ayarlandı en azından temel güvenlik iddiamızı takiben %66 oranında validator'ların üçte ikisi iyiliksever davranıyor. Balıkçılar bir bakıma “tam düğümlere” benzerler. kaynakların ihtiyaç duyduğu günümüz blockchain sistemleri nispeten küçüktür ve istikrarlı çalışma süresi taahhüdü ve bant genişliği gerekli değildir. Balıkçılar bu konuda farklılık gösteriyor küçük bir tahvil yatırmaları gerektiği kadar.Bu bağ engelliyor validators'nin zamanını ve hesaplamasını boşa harcayan sybil saldırıları kaynaklar. Hemen geri çekilebilir, muhtemelen hayır birkaç dolara eşdeğerden daha fazla ve yol açabilir yaramaz bir davranışı fark ederek büyük bir ödül elde etmek validator.
Polkadot への参加
Polkadot の維持には 4 つの基本的な役割があります。 ネットワーク: 照合者、漁師、指名者、validator。で Polkadot の実装可能な 1 つ、後者の役割 実際には、基本的な validator と可用性の保証という 2 つの役割に分類できます。これについてはセクションで説明します 6.5.3. コレーター 漁師 バリデーター (このグループ) バリデーター (他のグループ) 承認する になる モニター レポート 悪い に対する行動 ブロックを提供します 候補者 のために 推薦者 図 1. 間の相互作用 Polkadot の 4 つの役割。 4.1.バリデーター。 validator は最高料金であり、 Polkadot ネットワーク上の新しいブロックを封印するのに役立ちます。 validator の役割は、十分に高い結合力に依存します ただし、他の保税当事者に預けられることは許可されています。 彼らのために行動する 1 人以上の validator を指名し、 validator の債券のそのような一部は、必ずしも validator 自体が所有しているわけではなく、これらの者が所有している可能性があります。 推薦者。 validator は、高可用性と帯域幅を備えたリレー チェーン クライアント実装を実行する必要があります。各ブロックで ノードは批准の役割を受け入れる準備ができていなければなりません 指定されたパラチェーン上の新しいブロック。 このプロセス 候補者の受信、検証、再公開が含まれます ブロック。指名は決定的ですが、事前に予測することは事実上不可能です。 validator はできないため、 完全な同期を維持することが合理的に期待される すべてのパラチェーンのデータベースを作成するには、validator が提案された新しいパラチェーンを考案するタスクを指名することが期待されます。 コレーターとして知られるサードパーティへのパラチェーン ブロック。 すべての新しいパラチェーン ブロックが、指定された validator サブグループ、validator によって適切に承認されると、 その後、リレーチェーンブロック自体を承認する必要があります。これには、 トランザクションキューの状態を更新する(本質的には パラチェーンの出力キューから別の出力キューにデータを移動する パラチェーンの入力キュー)、トランザクションを処理します。 承認されたリレーチェーントランザクションセットと承認 最終ブロック(最後のパラチェーン変更を含む)。POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 5 validator は合意を見つける義務を果たしていない 私たちが選択したコンセンサスアルゴリズムのルールの下では罰せられます。初期の意図しない障害の場合、これは次のとおりです。 validator の報酬を保留します。失敗が繰り返されると、セキュリティ保証金が (焼き付けによって) 減少します。二重署名や 共謀して無効なブロックを提供すると、 債券全体(部分的には燃えていますが、ほとんどが残っています) 情報提供者と誠実な関係者に)。 ある意味、validator はマイニング プールに似ています。 現在の PoW blockchain 件。 4.2.推薦者。指名者は利害関係者です validator の保証金に貢献した人。彼らは リスク資本を投入する以外に追加の役割はありません。 特定の validator (または のメンテナンスにおいて責任を持って行動すること。 ネットワーク。 比例配分された増額または減額が受けられます 債券の成長に応じて預金に入金されます。 彼らは貢献します。 照合者と合わせて、次に、推薦者もいくつかいます。 現在のPoWネットワークのマイナーと同じ感覚です。 4.3.照合者。取引照合者(略して照合者) validator が有効なものを作成するのを支援する当事者です。 パラチェーンブロック。彼らは特定のパラチェーンの「フルノード」を維持します。つまり、必要なものはすべて保持されます 新しいブロックを作成して実行できるようにするための情報 現在の PoW blockchain に対してマイナーが行うのとほぼ同じ方法でトランザクションを実行できます。通常の状況では、彼らは、 トランザクションを照合して実行し、封印されていないものを作成します をブロックし、ゼロ知識とともに提供する 現在責任を負っている 1 人以上の validator に証拠を提出します。 パラチェーンブロックを提案しています。 照合者、推薦者、validator 間の関係の正確な性質は変わる可能性があります。 時間。当初は、照合者が非常に緊密に連携することが期待されます validators は数が少ないため (おそらく 1 つだけ)トランザクション量が少ないパラチェーン。の 初期のクライアント実装には、 パラチェーン コレーター ノードは、(リレーチェーン) validator ノードに有効なパラチェーンを無条件に提供します ブロック。 同期バージョンを維持するコストとして このようなパラチェーンがすべて増加すると、さらに多くのパラチェーンが発生すると予想されます。 インフラを整備することで、 独立した経済的動機を持つ当事者に対する義務。 最終的には、 最も多くの取引手数料を徴収します。このような照合者は、報酬収益の継続的な分配のために、一定期間にわたって特定の validator を提供する契約を結ぶ可能性があります。 あるいは、「フリーランス」の照合者が単純に すぐに支払われる報酬の競争力のあるシェアと引き換えに、有効なパラチェーンブロックを提供する市場。同様に、分散型の推薦者プールでは、複数の推薦者プールが許可されます。 結束した参加者が調整し、責任を共有する validator。このプール機能により、オープンな参加が保証されます より分散化されたシステムにつながります。 4.4.漁師さんたち。他の2つのアクティブなパーティーとは異なり、 漁師はブロックオーサリングに直接関係していない プロセス。むしろ彼らは独立した「賞金稼ぎ」です。 高額な 1 回限りの報酬が動機です。 まさに、 漁師の存在を考えると、不正行為が起こることはめったになく、不正行為が起こるのは次のような場合のみであると予想されます。 結合した当事者が秘密鍵のセキュリティに不注意である、 悪意によるものではなく。名前が来る 予想される報酬の頻度、参加するための最小要件、および最終的な報酬のサイズから構成されます。 漁師は、タイムリーに次のことを証明することで報酬を得ることができます。 少なくとも一方の保税当事者が違法行為を行った。違法行為 それぞれ同じ承認された親を持つ 2 つのブロックに署名すること、またはパラチェーンの場合は無効なブロックの承認を支援することが含まれます。 ブロック。過剰な報酬や妥協を防ぐため、 セッションの秘密鍵の不正使用、基本報酬 単一の validator の違法に署名されたメッセージを提供することは、 最小限。この報酬は、増加するにつれて漸近的に増加します 他のvalidatorからの違法な署名を裏付けるものは、 本物の攻撃を暗示するもの。漸近線が設定されています 少なくとも次の基本的なセキュリティ主張に従って 66% validator の 3 分の 2 は慈善的に行動します。 フィッシャーマンは、以下の「フルノード」に似ています。 リソースが必要とする現在の blockchain システム 比較的小規模であり、安定した稼働時間を約束します 帯域幅も必要ありません。漁師の違いはこうだ 少額の保証金を支払わなければならないのと同じくらい。この絆は、 validator秒の時間と計算を無駄にするシビル攻撃 リソース。すぐに撤回可能ですが、おそらくそうではありません 数ドル相当以上の金額がかかる可能性があります 不正行為を発見することで多額の報酬を得る validator。
Tasarıma Genel Bakış
Bu bölüm, konuyla ilgili kısa bir genel bakış sunmayı amaçlamaktadır. bir bütün olarak sistem. Konunun daha kapsamlı bir araştırması Sistemi takip eden bölümde verilmiştir. 5.1. Konsensüs. Aktarma zincirinde Polkadot şunu başarır: karşılıklı olarak kabul edilen geçerli bir dizi karar üzerinde düşük düzeyde fikir birliği modern bir eşzamansız Bizans hataya dayanıklı (BFT) algoritması aracılığıyla bloklar. Algoritma ilham alacak basit Tendermint [11] ve çok daha fazlası ile HoneyBadgerBFT [14] dahil. İkincisi bir sağlar keyfi bir şekilde etkin ve hataya dayanıklı bir fikir birliği çoğunlukla zararsız otoriteler veya validators kümesi göz önüne alındığında kusurlu ağ altyapısı. Yetki kanıtı (PoA) tarzı bir ağ için yalnızca bu yeterli olacaktır, ancak Polkadot olduğu düşünülüyor tamamen açık ve halka açık bir ağ olarak da dağıtılabilir belirli bir kuruluş veya güvenilir olmayan durum sürdürmek için gerekli olan yetkidir. Bu nedenle bir ihtiyacımız var validators kümesini belirleme ve teşvik etme araçları dürüst olmaları. Bunun için PoS tabanlı seçimi kullanıyoruz Kriterler. 5.2. Bahsi Kanıtlamak. Ağın olduğunu varsayıyoruz ne kadar "bahis" olduğunu ölçmek için bazı araçlara sahip olacak herhangi bir hesabın olması. Karşılaştırma kolaylığı için önceden var olan sistemlere ölçü birimi diyeceğiz “tokens”. Ne yazık ki bu terim ideal olmaktan uzaktır. pek çok neden var, en azından bunun basit bir skaler olması bir hesapla ilişkili değer, hiçbir kavram yoktur bireysellik. validator'lerin nadiren (en fazla) seçildiğini hayal ediyoruz günde bir kez ama belki üç ayda bir kadar nadiren), Aday Hisse Kanıtı (NPoS) şeması aracılığıyla. Teşvik, oranlı bir tahsis yoluyla gerçekleşebilir.POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 6 Röle zincir Doğrulayıcı sürüsü (her biri kendi rengine göre renklendirilmiştir) belirlenmiş parachain) İşlem (tarafından gönderildi dış aktör) Parachain köprü Sanal parachain (örneğin Ethereum) Parachain Parachain kuyruklar ve G/Ç Yayılan işlemler Aday gönderimini engelle 2. sıra Röle zinciri Parachain topluluğu Hesap Gelen işlem Giden işlem Zincirler arası işlemler (validators tarafından yönetilmektedir) Harmanlayıcı Yayılan blok Balıkçı Şekil 2. Polkadot sisteminin özet şeması. Bu, harmanlayıcıların kullanıcı işlemlerini toplayıp yaymasının yanı sıra blok adaylarını balıkçılara ve validator'lere yaydığını gösteriyor. Aynı zamanda bir hesabın kendi parachain'inden gerçekleştirilen bir işlemi aktarma zinciri aracılığıyla nasıl yayınlayabileceğini gösterir ve oradaki bir hesaba yapılan bir işlem olarak yorumlanabileceği başka bir parachain'e. token temel genişletmeden gelen fonlar (%100'e kadar) yılda, ancak daha büyük ihtimalle %10 civarındadır. toplanan işlem ücretleri. Tüm token sahipler olduğundan, para tabanı genişlemesi genellikle enflasyona yol açsa da katılımda adil bir fırsata sahip olacak, hiçbir tokensahibinin değerinin düşmesine maruz kalması gerekmeyecek almaktan mutlu olmaları koşuluyla, zaman içinde holdingleri Konsensüs mekanizmasındaki rolü. Belirli bir oran tokens sayısı staking süreci için hedeflenecektir; the etkili token temel genişletme şu şekilde ayarlanacaktır: Bu hedefe ulaşmak için piyasaya dayalı bir mekanizma. Doğrulayıcılar büyük ölçüde çıkarlarına bağlı; çıkıyor validators'nin tahvilleri, validators'nin görevleri sona erdikten uzun süre sonra (belki yaklaşık 3 ay) yerinde kalır. Bu uzun tahvil tasfiye süresi gelecekteki uygunsuz davranışlara izin verir zincirin periyodik kontrol noktasına kadar cezalandırılır. Kötü davranış, cezanın azaltılması gibi cezalarla sonuçlanır. Ödül veya kasıtlı olarak taviz veren durumlarda ağın bütünlüğünün bozulması, validator bağlantısının bir kısmını veya tamamını kaybetmesi diğer validator'lere, muhbirlere veya paydaşlara pay bir bütün olarak (yanma yoluyla). Örneğin, bir validator bir çatalın her iki dalını da onaylamaya çalışan kişi (bazen "kısa menzilli" saldırı olarak bilinir) tanımlanabilir ve ikinci şekilde cezalandırılır. Uzun menzilli "tehlikede olmayan" saldırılar4, basit bir "kontrol noktası" mandalı aracılığıyla atlatılır ve bu, zincirin tehlikeli bir şekilde yeniden düzenlenmesini engeller. özellikle zincir derinliği. İstemcilerin yeni senkronize edilmesini sağlamak için yanlış zincire aldanamazlar, düzenli olarak “Sert çatallanmalar” meydana gelecektir (en fazla validators'nin tahvil tasfiyesi), son kontrol noktası bloğunu hashes istemcilere sabit kodlayan. Bu, ayak izini azaltan başka bir "sonlu zincir uzunluğu" ölçüsüyle iyi bir uyum sağlar veya oluşum bloğunun periyodik olarak sıfırlanması. 5.3. Parachain'ler ve Harmanlayıcılar. Her parachain alır aktarma zincirine benzer güvenlik düzenlemeleri: the Parachain'lerin başlıkları röle zinciri bloğunun içinde mühürlenmiştir Onayın ardından yeniden düzenlemenin veya "çifte harcamanın" mümkün olmamasını sağlamak. Bu, Bitcoin'nin yan zincirleri ve birleştirme madenciliği tarafından sunulana benzer bir güvenlik garantisidir. Ancak Polkadot aynı zamanda parachainlerin durum geçişlerinin geçerli olduğuna dair güçlü garantiler de sağlar. Bu validator kümesinin kriptografik olarak rastgele alt kümelere bölünmesi yoluyla gerçekleşir; başına bir alt küme parachain'de alt kümeler blok başına potansiyel olarak farklılık gösterir. Bu kurulum genellikle parachainlerin blok sürelerinin artacağını ima eder en az röle zincirininki kadar uzun olmalıdır. spesifik bölümlendirmenin kapsam dışında olduğunu belirleme araçları 4Böyle bir saldırı, düşmanın başlangıç bloğundan itibaren tamamen yeni bir tarih zinciri oluşturduğu yerdir. Bir kontrol yoluyla dengede göreceli olarak önemsiz bir paya sahip olsalar da, diğer tüm paylara göre kendi paylarına düşen payı kademeli olarak artırabilirler Paydaşlar, alternatif tarihlerinin tek aktif katılımcılarıdır. Yaratılışta hiçbir içsel fiziksel sınırlama bulunmadığından (oldukça gerçek hesaplama enerjisinin harcanması gereken PoW'un aksine), gerçek zincirden daha uzun bir zincir oluşturabilirler. nispeten kısa bir zaman aralığına sahiptir ve ağın kanonik durumunu devralarak onu potansiyel olarak en uzun ve en iyi hale getirir.POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 7 bu belgenin ancak muhtemelen aşağıdakilere dayalı olması muhtemeldir: RanDAO [19] benzeri bir taahhüt-açıklama çerçevesi veya her parachain'in önceki bloklarından birleştirilmiş verileri kullanın kriptografik olarak güvenli bir hash altında. validator'lerin bu tür alt kümelerinin aşağıdakileri sağlaması gerekir: Geçerliliği garanti edilen parachain blok adayı (açık) tahvillere el konulmasının acısı). Geçerlilik iki etrafında döner önemli noktalar; ilk olarak özünde geçerli olduğu - yani tüm durum geçişleri aslına sadık kalınarak gerçekleştirildi ve hepsi Referans verilen harici veriler (yani işlemler) dahil edilmek üzere geçerlidir. İkincisi, kendi dışsal olan herhangi bir verinin harici işlemler gibi adayın yeterince yüksek kullanılabilirliğe sahip olması, böylece katılımcıların indirin ve bloğu manuel olarak çalıştırın.5 Doğrulayıcılar yalnızca hiçbir harici "işlem" verisi içermeyen "boş" bir blok sağlayabilir, ancak bunu yapmaları halinde daha düşük bir ödül alma riskiyle karşı karşıya kalabilirler. Birlikte çalışıyorlar derleyiciler (bireyler) ile bir parachain dedikodu protokolü İşlemleri bloklar halinde toplayan ve bloğun ebeveyninin geçerli bir alt öğesi olduğuna dair etkileşimli olmayan, sıfır bilgili bir kanıt sağlayan (ve herhangi bir işlemi üstlenen) sıkıntıları için ücretler). Kendilerini belirlemek parachain protokollerine bırakılmıştır. Spam önleme araçları: "bilgi işlem kaynağı ölçümü" veya "işlem ücreti" gibi temel bir kavram yoktur röle zinciri tarafından empoze edilir. Aktarma zinciri protokolü tarafından da bu konuda doğrudan bir yaptırım bulunmamaktadır (gerçi Paydaşların benimsemeyi seçmesi pek olası değil düzgün bir mekanizma sağlamayan bir parachain). Bu, zincirlerin farklı olma ihtimaline açık bir işarettir. Ethereum, ör. çok daha basit bir ücret modeline veya henüz önerilmemiş başka bir spam önleme modeline sahip Bitcoin benzeri bir zincir. Polkadot'in aktarma zincirinin kendisi muhtemelen bir Ethereum-benzeri hesaplar ve durum zinciri, muhtemelen bir EVMtürevi. Röle zinciri düğümlerinin gerekli olacağından önemli miktarda başka işlem ve işlem hacmi yapmak büyük işlem ücretleri yoluyla kısmen en aza indirilecek ve araştırma modellerimizin gerektirmesi durumunda bir blok boyutu sınırı. 5.4. Zincirler Arası İletişim. Polkadot'nin kritik son bileşeni zincirler arası iletişimdir. O zamandan beri Parachain'ler aralarında bir tür bilgi kanalına sahip olabilir, biz de Polkadot a olarak düşünmemize izin veriyoruz. ölçeklenebilir çoklu zincir. Polkadot durumunda iletişim olabildiğince basittir: parachain (bu zincirin mantığına göre) yapabilir Bir işlemin ikinci bir parachain'e gönderilmesini sağlamak veya potansiyel olarak röle zinciri. Harici işlemler gibi blockchains üretiminde tamamen eşzamansızdırlar ve onların herhangi bir şeyi geri döndürme konusunda içsel bir yetenekleri yoktur. bir tür bilginin kökenine geri dönmesi. Hedef: alır önceki veriler bloğun validators. Hesap şu gönderiyi alır: giriş kaldırıldı giriş Merkle tree Hesap gönderi gönderir: giriş yerleştirildi çıkış Merkle tree hedef için paraşütle atlama çıkış Kaynak: paylaşımlar sonraki bloktaki veriler validators posta kanıtının saklandığı yer Parachain çıkışı Merkle ağaç yönlendirilmiş referans yerleştirildi hedef parachain'de giriş Merkle tree giriş Şekil 3. Temel şematik gösterim gönderilenler için yönlendirmenin ana bölümleri işlemler (“gönderiler”). Minimum uygulama karmaşıklığını sağlamak için minimum risk ve asgari düz ceket arasında gelecek Parachain mimarilerinde bu zincirler arası işlemler standart harici imzalı işlemlerden etkili bir şekilde ayırt edilemez. İşlemin bir parachain tanımlama yeteneği sağlayan bir kaynak segmenti vardır ve isteğe bağlı boyutta olabilecek bir adres. Bitcoin ve Ethereum gibi yaygın mevcut sistemlerin aksine, zincirler arası işlemler herhangi bir türde ücret "ödemesi" ile birlikte gelmez; Bu tür herhangi bir ödemenin kaynak ve hedef parachainler üzerindeki müzakere mantığı yoluyla yönetilmesi gerekir. Bunun için önerilene benzer bir sistem Ethereum'in Serenity sürümü [7] basit bir yöntem olabilir böyle bir zincirler arası kaynak ödemesini yönetme zamanı gelince başkalarının da öne çıkabileceğini varsayıyoruz. Zincirler arası işlemler basit bir çözüm kullanılarak çözülür sağlamak için Merkle tree temeline dayalı kuyruklama mekanizması sadakat. Röle zinciri bakımcılarının görevi işlemleri bir parachain'in çıkış kuyruğunda taşıyın hedef parachain'in giriş kuyruğuna. aktarılan işlemlere aktarma zincirinde başvurulur, ancak bunlar ilgili değildiray-chain işlemlerinin kendisi. Bir parachain'in başka bir parachain'e spam göndermesini önlemek için işlemler, bir işlemin gönderilebilmesi için gereklidir hedefin giriş kuyruğunun çok büyük olmaması önceki bloğun bitiş zamanı. Giriş ise Blok işleme sonrasında sıra çok büyükse, bu durumda "doymuş" olarak kabul edilir ve hiçbir işlem şu adrese yönlendirilemez: tekrar altına düşene kadar sonraki bloklar içinde Sınır. Bu kuyruklar aktarma zincirinde yönetilir Parachainlerin birbirlerinin doygunluğunu belirlemesine izin vermek durum; bu şekilde bir işlemi yayınlamak için başarısız bir girişim Durmuş bir varış noktasına eşzamanlı olarak rapor edilebilir. (Geri dönüş yolu bulunmadığından ikincil bir işlemin bu nedenle başarısız olması durumunda geri bildirim yapılamamaktadır.) ilk arayana ve diğer bazı kurtarma yollarına gerçekleşmesi gerekirdi.) 5.5. Polkadot ve Ethereum. Ethereum'nin Turing bütünlüğü nedeniyle, Polkadot ve Ethereum'nin birlikte çalışabilmesi için bol miktarda fırsat olmasını bekliyoruz en azından kolayca çıkarılabilecek bazı güvenlik sınırları dahilinde. Kısaca, işlemlerin şu andan itibaren gerçekleşmesini öngörüyoruz: Polkadot, validators tarafından imzalanıp daha sonra beslenebilir 5Böyle bir görev validator'ler arasında paylaşılabilir veya yoğun biçimde bağlı validator'ler kümesinin atanmış görevi haline gelebilir. kullanılabilirlik garantörleri.
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 8 Ethereum burada yorumlanıp yürürlüğe konulabilirler bir işlem yönlendirme sözleşmesi. Diğer yönde ise özel olarak biçimlendirilmiş günlüklerin (olayların) kullanımını öngörüyoruz belirli bir mesajın iletilmesi gerektiğinin hızlı bir şekilde doğrulanmasına olanak tanıyan bir "kaçış sözleşmesi"nden geliyor. 5.5.1. Polkadot - Ethereum arası. Bir seçim yoluyla BFT fikir birliği mekanizması, validator'lerin oluşturduğu bir Onay oylamasıyla belirlenen paydaşlar grubu mekanizma ile güvenli bir fikir birliğine varabiliriz. nadiren değişen ve mütevazı sayıda validators. Toplam 144 validators olan bir sistemde blok süresi 4 saniye ve 900 blokluk sonluluk (kötü amaçlı yazılımlara izin verir) Çift oy verme gibi davranışların bildirilmesi, cezalandırılması ve onarılmış), bir bloğun geçerliliği makul bir şekilde 97 kadar az imzayla (144'ün üçte ikisi artı bir) ve ardından hiçbir sorgulamanın yapılmadığı 60 dakikalık doğrulama süresiyle kanıtlanmış sayılır. Ethereum bir "zorla girme sözleşmesi" düzenleyebilir 144 imza sahibini koruyabilir ve onlar tarafından kontrol edilebilir onlar. Eliptik eğri dijital imza (ECDSA) kurtarma işlemi EVM altında yalnızca 3.000 gaz gerektirdiğinden ve muhtemelen doğrulamanın yalnızca bir tarihte gerçekleşmesini isteriz. validators'lik süper çoğunluk (tam oybirliği yerine), bir talimatın onaylandığını doğrulayan Ethereum tutarındaki taban maliyet Polkadot ağından gelen gazın 300.000'den fazla olmayacağı, yani gazın yalnızca %6'sı olacağı gerektiği şekilde doğrulandı toplam blok gaz limiti 5,5M'dir. validators sayısını artırmak (sorunlarla başa çıkmak için gerekli olacak şekilde) düzinelerce zincir) bu maliyeti kaçınılmaz olarak artırıyor ancak Ethereum'nin işlem bant genişliğinin teknoloji olgunlaştıkça ve zaman içinde büyümesi genel olarak bekleniyor altyapı iyileşiyor. Olmadığı gerçeğiyle birlikte tüm validator'lerin dahil olması gerekir (ör. yalnızca en yüksek stake edilen validator'ler böyle bir görev için çağrılabilir) Bu mekanizmanın sınırları oldukça geniştir. Bu tür validator'lerin günlük rotasyonunu varsayarsak (ki bu Oldukça ihtiyatlı (haftalık, hatta aylık kabul edilebilir), o zaman bakım ağının maliyeti bu Ethereum-yönlendirme köprüsünün sayısı 540.000 civarında olacaktır günlük gaz veya mevcut gaz fiyatlarıyla yıllık 45 dolar. Köprü üzerinden tek başına iletilen temel bir işlemin maliyeti yaklaşık 0,11 dolar; ek sözleşme hesaplamasının maliyeti olacaktır elbette daha fazlası. İşlemleri tamponlayarak ve paketleyerek birlikte, izinsiz girme yetkilendirme maliyetleri kolaylıkla karşılanabilir. paylaşılarak işlem başına maliyetin önemli ölçüde azaltılması; yönlendirmeden önce 20 işlem gerekiyorsa, o zaman temel bir işlemin iletilmesinin maliyeti yaklaşık 0,01 dolar. Bu çoklu imza sözleşme modeline ilginç ve daha ucuz bir alternatif, çok taraflı sahiplik semantiğine ulaşmak için eşik imzaların kullanılması olacaktır. ECDSA için eşik imza şemaları hesaplama açısından pahalıdır, diğer planlar için olanlar Schnorr imzaları gibi imzalar oldukça makul. Ethereum bunu sağlayacak ilkelleri tanıtmayı planlıyor Yaklaşan Metropolis hardfork'unda kullanımı ucuz planlar. Eğer böyle bir yöntem kullanılabilseydi, gaz maliyetleri Polkadot işlemini Ethereum'ye iletmek için ağ önemli ölçüde sıfıra yakın bir seviyeye düşecek doğrulama için temel maliyetlerin ötesinde genel giderler imza ve temel işlemin yürütülmesi. Bu modelde, Polkadot'nin validator düğümleri mesajları imzalamaktan başka çok az şey yapmak. İşlemlerin gerçekte Ethereum ağına yönlendirilmesini sağlamak için, validator'lardan herhangi birinin kendisinin de burada ikamet edeceğini varsayalım Ethereum ağı veya daha büyük ihtimalle o küçük ödüller mesajı ileten ilk aktöre sunulacaktır. ağa (ödül önemsiz bir şekilde ödenebilir) işlem yaratıcısı). 5.5.2. Ethereum - Polkadot arası. İşlemlerin gerçekleşmesi Ethereum'den Polkadot'ye iletilen basit günlük kavramını kullanır. Bir Ethereum sözleşmesi belirli bir Polkadot parachain'ine bir işlem göndermek istediğinde, sadece özel bir "ayrılma sözleşmesi" imzalaması yeterli. Ayrılma sözleşmesi olabilecek her türlü ödemeyi alacaktır. gerekli olmalı ve bir Merkle kanıtı ve karşılık gelen bloğun başlığının geçerli olduğuna dair bir iddia yoluyla varlığının kanıtlanabilmesi için bir kayıt talimatı yayınlayın ve kanonik. Son iki koşuldan geçerlilik belki de kanıtlamak en basiti. Prensip olarak tek şartkanıta ihtiyaç duyan her Polkadot düğüm için (yani atanmış validator düğümleri), standart bir Ethereum düğümünün tamamen senkronize edilmiş bir örneğini çalıştıracak şekilde. Ne yazık ki, bu oldukça ağır bir bağımlılıktır. bir daha hafif yöntem, basit bir kanıt kullanmak olacaktır. başlık yalnızca sağlanarak doğru şekilde değerlendirildi Ethereum'nin düzgün bir şekilde yürütülmesi için gereken durum denemesinin bir kısmı bloktaki işlemleri yapın ve günlüklerin (blok makbuzunda bulunan) geçerli olup olmadığını kontrol edin. Böyle “SPV benzeri”6 Kanıtlar henüz önemli miktarda bilgi gerektirebilir; uygun bir şekilde, genellikle bunlara ihtiyaç duyulmaz hepsi: Polkadot içindeki bir tahvil sistemi tahvillere izin verir üçüncü tarafların başlıklarını kaybetme riskiyle karşı karşıya kalmaları başka bir üçüncü tarafın (“balıkçı” gibi, bkz. 6.2.3) başlığın geçersiz olduğuna dair bir kanıt sunması durumunda tahvil (özellikle devlet kökü veya makbuz köklerinin sahtekar olduğu). Ethereum gibi sonlandırılmayan bir PoW ağında, kanonikliğin kesin olarak kanıtlanması imkansızdır. Bu sorunu çözmek için her türlü veriye güvenmeye çalışan uygulamalar Zincire bağlı neden-sonuç ilişkileri için bir dizi “onay” bekleyin veya bağımlı işlem belli bir seviyeye gelinceye kadar bekleyin. Zincir içindeki belirli derinlik. Ethereum tarihinde bu derinlik, bilinen ağ sorunu olmayan en az değerli işlemler için 1 bloktan, olduğu gibi 1200 bloğa kadar değişir borsalar için ilk Frontier sürümü sırasındaki durum. Sabit “Homestead” ağında bu rakam Çoğu borsa için 120 blok ve muhtemelen bunu alırız benzer bir parametre. Yani biz yapabilir hayal et bizim Polkadot tarafı Ethereumarayüzünün bazı basit işlevlere sahip olmasını sağlamak: Ethereum ağından yeni bir başlık kabul edin ve PoW'u doğrulayın; belirli bir günlük, yeterli derinliğe (ve ileriye doğru) sahip bir başlık için Ethereum tarafı koparma sözleşmesi tarafından yayınlandı Polkadot içindeki ilgili mesajı) ve son olarak daha önce kabul edilmiş ancak kabul edilmiş kanıtları kabul edebilmek henüz etkinleştirilmemiş başlık, geçersiz bir makbuz kökü içeriyor. Aslında Ethereum başlık verilerinin kendisini almak için (ve herhangi bir SPV kanıtı veya geçerlilik/kanoniklik reddi) Polkadot ağı, yönlendirme için bir teşvik 6SPV, Bitcoin'de Basitleştirilmiş Ödeme Doğrulamasına atıfta bulunur ve müşterilerin yalnızca tutarken işlemleri doğrulaması için bir yöntem açıklar. En uzun PoW zincirinin tüm blok başlıklarının bir kopyası.POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 9 veriye ihtiyaç var. Bu bir ödeme kadar basit olabilir (Ethereum tarafında toplanan ücretlerden finanse edilir) ödendi başlığı olan yararlı bir bloğu iletebilen herkese geçerlidir. Doğrulayıcılardan son birkaç bin bloğa ilişkin bilgileri saklamaları istenecektir. bazı protokole özgü araçlarla veya üzerinde tutulan bir sözleşme aracılığıyla çatalları yönetebilme röle zinciri. 5.6. Polkadot ve Bitcoin. Bitcoin karşılıklı çalışma Polkadot için ilginç bir zorluk sunuyor: sözde “İki yönlü bağlantı” faydalı bir altyapı parçası olabilir her iki ağın da tarafında olmak. Ancak nedeniyle böyle bir sabitleyicinin güvenli bir şekilde sağlanması koşuluyla Bitcoin sınırlamaları önemsiz olmayan bir girişim. Bir işlemin teslim edilmesi Bitcoin ila Polkadot arası prensipte Ethereum için olana benzer bir işlemle yapılabilir; bir “çıkış adresi” Polkadot validator'ler tarafından bir şekilde kontrol ediliyor olabilir aktarılan token'leri (ve onlarla birlikte gönderilen verileri) alın. SPV kanıtları teşvikli oracle'ler tarafından sağlanabilir ve, bir onay süresiyle birlikte verilen bir ödül işlemi ima eden kanonik olmayan blokların tanımlanması “çifte harcandı”. Daha sonra sahip olunan tüm token'ler Bu durumda "kaçış adresi" prensipte daha sonra dağıtılmak üzere aynı validator'lar tarafından kontrol edilecektir. Ancak sorun, birikintilerin dönen bir validator setinden nasıl güvenli bir şekilde kontrol edilebileceğidir. aksine Ethereum dayalı olarak keyfi kararlar alabilen imza kombinasyonları üzerine Bitcoin büyük ölçüde çoğu müşteri yalnızca maksimum 3 tarafla çoklu imza işlemlerini kabul ettiğinden daha sınırlıdır. Bunu 36'ya, hatta istenildiği gibi binlerce kişiye çıkarmak mevcut protokol uyarınca imkansızdır. Seçeneklerden biri, etkinleştirmek için Bitcoin protokolünü değiştirmektir. bu tür işlevsellik, ancak buna "sert çatallar" da denir Bitcoin dünyasında son girişimlere göre değerlendirme yapmak zor. Olasılıklardan biri eşik imzaların kullanılmasıdır. tek olarak tanımlanabilir bir kamuya izin veren kriptografik şemalar birden fazla gizli "parça" tarafından etkin bir şekilde kontrol edilebilecek anahtar, geçerli bir imza oluşturmak için bunların bir kısmı veya tamamı kullanılmalıdır. Maalesef eşik imzaları uyumlu Bitcoin'nin ECDSA'sı hesaplama açısından pahalıdır polinom karmaşıklığı yaratır ve oluşturur. Bunun gibi diğer planlar a Schnorr imzaları çok daha düşük maliyetler sağlar, ancak Bitcoin'ya dahil edilebilecekleri zaman çizelgesi protokol belirsizdir. Mevduatın nihai güvenliği, bir dizi bağlı validators, diğer bir seçenek de Çoklu imza anahtar sahiplerini yalnızca büyük ölçüde azaltın toplam validators'nin bağlı alt kümesi öyle ki eşik imzalar mümkün hale gelir (veya en kötü ihtimalle Bitcoin'nin yerel imzası) çoklu imza mümkündür). Bu elbette azaltır validator'lerin yasa dışı davranması durumunda tazminatlardan düşülebilecek toplam teminat tutarı, ancak bu zarif bir bozulmadır, sadece bir üst sınır belirler arasında güvenli bir şekilde çalıştırılabilecek fon miktarı iki ağ (ya da aslında bir saldırı durumunda kayıp yüzdesi) validator'lerden başarılı). Bu nedenle, makul derecede güvenli bir Bitcoin birlikte çalışabilirlik “sanal parachain” yerleştirmenin gerçekçi olmadığına inanıyoruz. iki ağ arasında, yine de belirsiz bir zaman çizelgesine sahip önemli bir çaba ve büyük olasılıkla paydaşların işbirliğini gerektiren ağ.
設計の概要
このセクションは、概要を簡単に説明することを目的としています。 システム全体として。をさらに徹底的に調査すると、 システムについては、それに続くセクションで説明します。 5.1.コンセンサス。リレーチェーン上で、Polkadot は次のことを達成します。 相互に合意された有効なセットに関する低レベルの合意 最新の非同期ビザンチン フォールトトレラント (BFT) アルゴリズムを通じてブロックします。アルゴリズムがインスピレーションを受けます シンプルな Tendermint [11] とそれ以上の機能による HoneyBadgerBFT [14] が関与しています。後者は、 恣意的なものに対する効率的でフォールトトレラントな合意 ネットワーク インフラストラクチャに欠陥があり、ほとんど無害な一連の権限または validator が指定されています。 Proof-of-Authority (PoA) スタイルのネットワークの場合、これだけで で十分ですが、Polkadot は次のようになると考えられます。 完全にオープンでパブリックなネットワークとして展開することも可能 特定の組織や信頼できる組織がない状況 それを維持するために必要な権限。 したがって、 validator のセットを決定し、奨励する手段 正直に言うと彼らは。このために、PoS ベースの選択を利用します 基準。 5.2.賭け金を証明する。ネットワークが どれくらいの「賭け金」を計測する何らかの手段を持つだろう 特定のアカウントにはあります。 比較しやすいように、 既存のシステムでは、測定単位と呼びます。 「tokens」。残念ながら、この用語は理想的なものではありません。 理由はたくさんありますが、特に単にスカラーであるということは重要です アカウントに関連付けられた値、という概念はありません。 個性。 私たちは、validator 人が選出されるのはまれであると想像しています (せいぜい 1 日に 1 回ですが、おそらく四半期に 1 回ほどの頻度で行われます)、 指名プルーフ・オブ・ステーク (NPoS) スキームを通じて。インセンティブは、比例配分によって発生します。POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 6 リレー チェーン バリデーターの群れ (それぞれの色で色分けされています) 指定されたパラチェーン) トランザクション (提出者 外部俳優) パラチェーン 橋 仮想パラチェーン (例: Ethereum) パラチェーン パラチェーン キューと I/O 伝播されたトランザクション 候補者の提出をブロックする 2次注文 リレーチェーン パラチェーンコミュニティ アカウント インバウンドトランザクション アウトバウンドトランザクション インターチェーントランザクション (validators が管理) コレーター 伝播されたブロック 漁師 図 2. Polkadot システムの概要図。これは、照合者がユーザー トランザクションを収集して伝播すること、およびブロック候補を漁師と validator に伝播することを示しています。それも アカウントがリレーチェーンを介してパラチェーンから実行されるトランザクションを投稿する方法を示します そして、別のパラチェーンに移行し、そこのアカウントへのトランザクションとして解釈できます。 token のベース拡張からの資金 (最大 100%) 年間、ただし可能性としては約 10%) 徴収される取引手数料。マネタリーベースの拡大は通常インフレにつながりますが、token の所有者全員が 参加する際には公平な機会が与えられ、token所有者は、その価値の減少に苦しむ必要はありません。 彼らが喜んで取得した場合に限り、長期にわたる保有量 コンセンサスメカニズムにおける役割。特定の割合 token 個が staking プロセスの対象となります。の 実質的なtokenベースの拡張は、次のように調整されます。 この目標を達成するための市場ベースのメカニズム。 バリデーターは、その利害関係によって強い絆で結ばれています。終了します validator の保証は、validator の職務が終了した後も長期間 (おそらく約 3 か月) 維持されます。こんなに長い 債券清算期間により、将来の不正行為が可能になる チェーンの定期的なチェックポイントまで罰せられます。 不正行為があった場合には減給などの懲罰が科せられます。 報酬を与える場合、または意図的に侵害する場合 ネットワークの整合性が失われ、validator はその一部またはすべてを失います。 他のvalidator、情報提供者、または利害関係者への利害関係 全体として(燃焼を通じて)。たとえば、validator フォークの両方のブランチを承認しようとする人 (場合によっては 「短距離」攻撃として知られる)が特定される可能性があり、 後者の方法で処罰されます。 長距離の「何も関係のない」攻撃4は、単純な「チェックポイント」ラッチによって回避され、複数の危険なチェーンの再編成を防ぎます。 特定のチェーンの深さ。 新しく同期するクライアントを確実にするには 間違ったチェーンにだまされることはありません。 「ハードフォーク」は(せいぜい同時期に)発生するだろう。 validators の債券清算)、最近のチェックポイント ブロック hashes をクライアントにハードコーディングします。これは、「有限チェーン長」または「有限チェーン長」というさらなるフットプリント削減策とうまく機能します。 ジェネシスブロックの定期的なリセット。 5.3.パラチェーンとコレーター。各パラチェーンが取得するのは、 リレーチェーンに対する同様のセキュリティ アフォーダンス: の パラチェーンのヘッダーはリレーチェーンブロック内に密封されています 確認後は、組織再編や「二重支出」が不可能であることを保証します。これは、Bitcoin のサイドチェーンとマージマイニングによって提供されるものと同様のセキュリティ保証です。ただし、Polkadot は、パラチェーンの状態遷移が有効であるという強力な保証も提供します。これ validator のセットが暗号的にランダムにサブセットに分割されることによって発生します。 1 つあたり 1 つのサブセット パラチェーンでは、サブセットはブロックごとに異なる可能性があります。これ セットアップは通常、パラチェーンのブロック時間が 少なくともリレーチェーンの長さと同じ長さにしてください。具体的な 分割を決定する手段は範囲外です 4 このような攻撃では、敵はジェネシス ブロック以降、全く新しい歴史の連鎖を作り上げます。をコントロールすることで、 オフセットでの賭け金の割合は比較的微々たるものですが、他のすべての賭け金と比べて徐々に自分の賭け金の割合を増やすことができます。 利害関係者は、彼らの代替歴史の唯一の積極的な参加者であるためです。創造物には本質的な物理的制限が存在しないため、 (実際の計算エネルギーを費やす必要がある PoW とは異なり) のブロックで、実際のチェーンよりも長いチェーンを作成できます。 比較的短い期間であり、ネットワークの正規の状態を引き継ぎ、最長かつ最良となる可能性があります。POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 7 この文書の内容は次のいずれかに基づいている可能性がありますが、 RanDAO [19] に似た commit-reveal フレームワーク、または 各パラチェーンの前のブロックから結合されたデータを使用する 暗号的に安全な hash の下で。 validator のこのようなサブセットは、 有効性が保証されているパラチェーンブロック候補( 債券没収の痛み)。有効性は 2 を中心に展開します 重要な点。第一に、それは本質的に有効であるということ、 すべての状態遷移が忠実に実行され、すべてが 参照される外部データ (トランザクションなど) は含めることができます。第二に、外部データはすべて、 外部トランザクションなどの候補は十分に高い可用性を備えているため、参加者は次のことを行うことができます。 それをダウンロードし、ブロックを手動で実行します。5 バリデーターは、外部の「トランザクション」データを含まない「null」ブロックのみを提供する場合がありますが、提供すると報酬が減額されるリスクが生じる可能性があります。彼らは一緒に働きます 照合者 (個人) とのパラチェーン ゴシップ プロトコル トランザクションをブロックに照合し、そのブロックが親の有効な子を構成することを示す非対話型のゼロ知識証明を提供します (トランザクションを取得する) 彼らのトラブルに対する料金)。 独自の指定はパラチェーン プロトコルに委ねられます。 スパム防止手段: 「コンピューティング リソースの測定」または「トランザクション料金」という基本的な概念はありません。 リレーチェーンによって課せられます。また、リレーチェーンプロトコルによってこれを直接強制することはありません(ただし、 利害関係者が採用を選択する可能性は低い まともなメカニズムを提供していないパラチェーン)。 これは、これまでとは異なるチェーンの可能性に対する明確なうなずきです。 Ethereum、例: Bitcoin のようなチェーンは、はるかに単純な料金モデル、またはその他のまだ提案されていないスパム防止モデルを備えています。 Polkadot のリレー チェーン自体はおそらく Ethereum のようなアカウントと状態チェーン (おそらく EVM__ 派生)。リレーチェーンノードは次のことを行う必要があるため、 他の重要な処理、トランザクション スループットを実行する 多額の取引手数料により部分的に最小限に抑えられる また、研究モデルでブロック サイズの制限が必要な場合もあります。 5.4.チェーン間通信。 Polkadot の重要な最終要素はチェーン間通信です。以来 パラチェーン間には何らかの情報チャネルが存在する可能性があるため、Polkadot をパラチェーンとみなすことができます。 スケーラブルなマルチチェーン。 Polkadot の場合、通信は可能な限り単純です。トランザクションは、 パラチェーンは(そのチェーンのロジックに従って)次のことができます。 トランザクションを 2 番目のパラチェーンにディスパッチします。 またはリレーチェーンの可能性もあります。外部トランザクションと同様 本番環境 blockchain では完全に非同期です そして、それらには何かを返す本質的な能力はありません。 情報の原点に戻ること。 宛先: 取得 以前のデータ ブロックのvalidator。 アカウントが投稿を受信します: エントリが削除されました イングレス Merkle tree アカウントが投稿を送信します: に置かれたエントリ 出口 Merkle tree 目的地に向けて パラチェーン 出口 出典:株式 次のブロックのデータ validators に保存されている投稿証明 パラチェーン出口マークル 木 配線された参照が配置されました 宛先パラチェーン内 イングレス Merkle tree 進入 図 3. を示す基本的な回路図 投稿のルーティングの主要部分 トランザクション (「投稿」)。 実装の複雑さを最小限に抑えるために、最小限の リスク そして 最小限の ストレートジャケット の 未来 パラチェーン アーキテクチャでは、これらのインターチェーン トランザクションは 標準の外部署名トランザクションと実質的に区別できません。 トランザクションにはオリジンセグメントがあり、パラチェーンを識別する機能を提供します。 任意のサイズのアドレス。 Bitcoin や Ethereum などの一般的な現在のシステムとは異なり、チェーン間トランザクションにはいかなる種類の手数料の「支払い」も伴いません。このような支払いは、ソースおよび宛先のパラチェーン上のネゴシエーション ロジックを通じて管理する必要があります。のために提案されているようなシステム Ethereum の Serenity リリース [7] は簡単な手段です ただし、そのようなクロスチェーンリソースの支払いを管理することは困難です やがて他の人たちが前面に出てくるかもしれないと私たちは考えています。 チェーン間トランザクションはシンプルな方法で解決されます。 Merkle tree に基づいたキューイング メカニズムにより、 忠実さ。リレーチェーンのメンテナの仕事は次のとおりです。 1 つのパラチェーンの出力キューでトランザクションを移動する 宛先パラチェーンの入力キューに追加されます。の 渡されたトランザクションはリレーチェーン上で参照されますが、相対ではありませんay-chain トランザクション自体。パラチェーンが別のパラチェーンにスパム送信するのを防ぐには トランザクション、トランザクションを送信するには、これが必要です 宛先の入力キューが大きすぎないこと 前のブロックの終了時刻。入力の場合 ブロック処理後のキューが大きすぎる場合、キューは「飽和」とみなされ、トランザクションはルーティングされません。 それは後続のブロック内で、以下に戻されるまで続きます。 限界。これらのキューはリレーチェーン上で管理されます パラチェーンが互いの飽和度を決定できるようにする ステータス。この方法では、トランザクションを投稿しようとして失敗しました 停止した宛先へのメッセージは同期的に報告される場合があります。 (ただし、リターンパスが存在しないため、その理由でセカンダリトランザクションが失敗した場合、それを報告することはできません) 元の呼び出し元とその他の回復手段に送信します。 開催しなければならないだろう。) 5.5. Polkadot と Ethereum。 Ethereum のチューリング完全性により、Polkadot と Ethereum が相互運用できる可能性が十分にあると予想されます。 少なくとも、容易に推測できるセキュリティの範囲内では、相互に影響を及ぼします。つまり、私たちは次のようなトランザクションを想定しています。 Polkadot は validators によって署名され、 5このようなタスクは、validator 間で共有される場合もあれば、強く結合された validator のセットの指定タスクになる場合もあります。 可用性の保証人。
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 8 Ethereum によって解釈および実行できます。 トランザクション転送契約。反対方向では、 特別にフォーマットされたログ (イベント) の使用が予想されます。 これは、特定のメッセージを転送する必要があるかどうかを迅速に検証できるようにするための「ブレークアウト コントラクト」に由来しています。 5.5.1. Polkadot から Ethereum まで。の選択を通じて、 BFT コンセンサス メカニズムと validator から形成された 承認投票を通じて決定された一連の利害関係者 このメカニズムにより、安全な合意を得ることができます。 変更頻度は低く、validator の数は控えめです。 合計 144 validator のシステムでは、ブロック時間は 4 秒、900 ブロックのフィナリティ (悪意のある攻撃を許可) 二重投票などの行為は通報され処罰される および修復される)、ブロックの有効性は合理的に判断できます。 わずか 97 件の署名 (144 件の 3 分の 2 に 1 件を加えたもの) と、異議申し立てが提出されないその後の 60 分間の検証期間を通じて証明されたとみなされます。 Ethereum は「不法侵入契約」をホストできます。 144 の署名者を維持し、次の者によって制御されることができます。 彼ら。 EVM では、楕円曲線デジタル署名 (ECDSA) の回復に必要なガスは 3,000 ガスのみであるため、 おそらく検証は、 validator の超過半数 (完全な全会一致ではなく)、 Ethereum の基本コスト、命令が実行されたことを確認 Polkadot ネットワークからのガスは 300,000 ガス以下であることが適切に検証されており、その割合はわずか 6% です。 総ブロックガス制限は5.5Mです。 validator の数を増やす (問題に対処するために必要なため) 数十のチェーン) は必然的にこのコストを増加させますが、 技術が成熟するにつれて、Ethereum のトランザクション帯域幅は時間の経過とともに増加すると広く予想されています。 インフラが改善されます。そうではないという事実とともに、 すべての validator が関与する必要があります (例: 最高の validator のみ) ステークされた validator は、そのようなタスクのために呼び出される可能性があります) このメカニズムの限界はかなり拡張されます。 このような validator が毎日ローテーションすると仮定します (これは かなり保守的であり、毎週または毎月でも許容される場合があります)、その後、ネットワークの維持コストがかかります。 このEthereum-転送ブリッジは約540,000になります 1 日あたりのガソリン、または現在のガス価格では年間 45 ドルです。基本的なトランザクションを単独でブリッジ経由で転送するとコストがかかります 約0.11ドル。追加の契約計算には費用がかかります もちろんもっとです。トランザクションのバッファリングとバンドルによる 合わせて、侵入許可コストは簡単に計算できます。 共有され、トランザクションごとのコストが大幅に削減されます。 転送する前に 20 個のトランザクションが必要な場合、 基本的なトランザクションの転送コストは次のようになります。 約0.01ドル。 この複数署名契約モデルに代わる、興味深い、より安価な代替手段の 1 つは、多国間所有権のセマンティクスを実現するためにしきい値署名を使用することです。 ECDSA のしきい値署名スキーム 他のスキームの場合は計算コストが高くなります Schnorr 署名などは非常に合理的です。 Ethereum そのようなものを作るプリミティブを導入する予定です 今後の Metropolis ハードフォークで安価に使用できるスキーム。このような手段が利用できれば、ガス代は Polkadot トランザクションを Ethereum に転送するため ネットワークは大幅にゼロ近くまで削減されるでしょう 検証のための基本コストを超えるオーバーヘッド 署名し、基礎となるトランザクションを実行します。 このモデルでは、Polkadot の validator ノードは次のようになります。 メッセージに署名する以外に何もすることはありません。トランザクションを実際に Ethereum ネットワークにルーティングするには、次のようにします。 どちらかの validator 自体も存在すると仮定します。 Ethereum ネットワーク、またはおそらくその少額の報奨金 メッセージを転送した最初のアクターにオファーされます ネットワークに送信します(報奨金は簡単に支払われる可能性があります) トランザクションの発信者)。 5.5.2. Ethereum から Polkadot まで。トランザクションを取得する Ethereum から Polkadot への転送では、ログという単純な概念が使用されます。 Ethereum コントラクトが Polkadot の特定のパラチェーンにトランザクションをディスパッチしたい場合、 特別な「ブレイクアウト契約」を結ぶだけで済みます。 ブレイクアウト契約では、以下のような支払いが発生します。 マークル証明と対応するブロックのヘッダーが有効であるというアサーションによってその存在が証明されるように、ロギング命令を発行します。 正規の。 後の 2 つの条件のうち、おそらく有効性が最も重要です。 証明するのが最も簡単です。原則として、唯一の要件は、証明が必要な各 Polkadot ノードに対して (つまり、指定された validator ノード) は、標準の Ethereum ノードの完全に同期されたインスタンスを実行します。残念ながら、これ自体はかなり重い依存関係です。さらに 軽量な方法は、次のような単純な証明を使用することです。 ヘッダーは、 適切に実行するために必要な Ethereum の状態トライの一部 ブロック内のトランザクションを確認し、ログ (ブロック レシートに含まれる) が有効であることを確認します。そんな「SPVらしさ」6 証明にはまだかなりの量の情報が必要になる場合があります。都合の良いことに、通常は必要ありません。 all: Polkadot 内の結合システムにより結合が可能になります。 サードパーティは、ヘッダーを失う危険を冒してヘッダーを送信する必要があります。 債券は、他の第三者 (「漁師」など、6.2.3 を参照) がヘッダーが無効であるという証拠を提供した場合に限ります。 (具体的には、状態ルートまたは領収書のルートが偽者であったこと)。 Ethereum のようなファイナライズされていない PoW ネットワークでは、 正規性を決定的に証明することは不可能です。 これに対処するために、あらゆる種類のものに依存しようとするアプリケーションは、 チェーン依存の因果関係は、多数の「確認」を待つか、依存するトランザクションが一定のレベルに達するまで待ちます。 チェーン内の特定の深さ。 Ethereum に、これは 深さは、既知のネットワーク問題がない最も価値の低いトランザクションの 1 ブロックから、従来の 1200 ブロックまで変化します。 交換用の最初のフロンティアリリース時のケース。 安定した「Homestead」ネットワークでは、この数字は次の位置にあります。 ほとんどの取引所では 120 ブロックかかりますが、おそらくかかるでしょう。 同様のパラメータ。 それで 私たち できる 想像してください 私たちの Polkadot側 Ethereumインターフェイスにはいくつかの簡単な機能があります: Ethereum ネットワークから新しいヘッダーを受け入れ、PoW を検証して、何らかの証拠を受け入れることができるようにします。 特定のログは、十分な深さのヘッダー (および前方) の Ethereum 側のブレークアウト コントラクトによって発行されました。 Polkadot 内の対応するメッセージ)、そして最後に 以前に受け入れられた証拠を受け入れることができるようになりますが、 まだ制定されていないヘッダーには無効なレシート ルートが含まれています。 実際に Ethereum ヘッダー データ自体を取得するには (そして SPV の証明または有効性/正規性の反駁) Polkadot ネットワーク、転送の奨励 6SPV は、Bitcoin の簡易支払検証を指し、クライアントがトランザクションのみを保持しながら検証する方法を説明します。 最長の PoW チェーンのすべてのブロック ヘッダーのコピー。POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 9 データが必要です。 これは支払いと同じくらい簡単です (Ethereum 側で徴収された料金から賄われます) 支払われました ヘッダーが次のような有用なブロックを転送できる人 有効です。検証者は、次の目的で最後の数千ブロックに関する情報を保持することが求められます。 何らかのプロトコル固有の手段または上で維持されるコントラクトを通じて、フォークを管理できる。 リレーチェーン。 5.6. Polkadot そして Bitcoin。 Bitcoin 相互運用 Polkadot には興味深い課題が提示されています。 「双方向ペグ」は便利なインフラになる 両方のネットワーク側に置く必要があります。ただし、理由により、 Bitcoin の制限により、そのようなペグを安全に提供するには、 簡単ではない仕事。からのトランザクションの配信 Bitcoin から Polkadot までは、原則として Ethereum と同様のプロセスで実行できます。 「ブレークアウトアドレス」 Polkadot validator によって何らかの方法で制御される可能性があります 転送された token (およびそれらと一緒に送信されたデータ) を受信します。 SPV 証明は、インセンティブ付きの oracle によって提供できます。 確認期間とともに、報奨金が与えられます。 トランザクションを暗示する非正規ブロックを特定する 「二重支出」されている。 token はすべて 「ブレークアウト アドレス」は、原則として、後の分散のために同じ validator によって制御されます。 しかし、問題は、回転する validator セットから堆積物をどのように安全に制御できるかということです。 とは異なります Ethereum に基づいて任意の決定を下すことができます 署名の組み合わせにより、Bitcoin は実質的に さらに制限があり、ほとんどのクライアントは最大 3 者とのマルチシグネチャ トランザクションのみを受け入れます。これを 36、実際には最終的に望まれる数千まで拡張することは、現在のプロトコルでは不可能です。 1 つのオプションは、Bitcoin プロトコルを変更して有効にすることです。 このような機能は、いわゆる「ハードフォーク」と呼ばれるものですが、 Bitcoin 最近の試みから判断すると、世界を調整するのは困難です。可能性の 1 つは、しきい値署名の使用です。 単一識別可能な公衆を許可する暗号化スキーム 鍵は複数の秘密「部分」によって効果的に制御されます。 有効な署名を作成するには、その一部またはすべてを利用する必要があります。 残念ながら、しきい値署名と互換性があります Bitcoin の ECDSA は計算コストが高くつきます 多項式の複雑さを作成します。その他のスキームとしては、 Schnorr 署名はコストがはるかに低くなりますが、 Bitcoin に導入される可能性のあるタイムライン プロトコルは不明です。 預金の最終的な安全性は次のとおりです。 多数の validator を結合する、もう 1 つのオプションは、 マルチサインキーホルダーを大幅に削減 合計 validator の結合されたサブセット (しきい値など) 署名が実行可能になります (または、最悪の場合、Bitcoin のネイティブ マルチ署名も可能です)。 これにより、当然のことながら、 validator が違法行為を行った場合に賠償金として差し引かれる可能性がある保証金の総額ですが、これは はグレースフル デグラデーションであり、単に上限を設定するだけです 間で安全に運用できる資金の量。 2 つのネットワーク (実際、攻撃による損失の割合) validator からは成功します)。 そのため、合理的に安全な Bitcoin 相互運用性の「仮想パラチェーン」を配置することは非現実的ではないと考えています。 2 つのネットワーク間での作業はかなりの努力が必要ですが、スケジュールは不確実であり、可能性は十分にあります。 その中で利害関係者の協力を必要とする ネットワーク。
Ayrıntılı Protokol
Protokol kabaca üçe ayrılabilir Parçalar: fikir birliği mekanizması, parachain arayüzü ve zincirler arası işlem yönlendirme. 6.1. Röle zinciri Operasyon. röle zinciri irade büyük ihtimalle Ethereum'a genel olarak benzeyen bir zincir olabilir, çünkü hesaba durum eşleme adresi ile durum tabanlıdır bilgi, esas olarak bakiyeler ve (tekrar oynatmayı önlemek için) işlem sayacı. Hesapları buraya yerleştirmek tek bir amaca hizmet eder: Kimliğin sahip olduğu muhasebeyi sağlamak sistemdeki payın miktarı.7 Ancak dikkate değer farklılıklar olacaktır: • Sözleşmeler işlemler yoluyla dağıtılamaz; Aktarma zincirindeki uygulama işlevselliğinden kaçınma arzusundan dolayı, sözleşmelerin kamuya açık hale getirilmesini desteklemek. • Bilgi işlem kaynağı kullanımı (“gaz”) hesaba katılmaz; kamusal kullanıma açık tek işlevler olduğundan gaz muhasebesinin arkasındaki mantık düzeltilecek artık tutmuyor. Bu nedenle sabit bir ücret uygulanacaktır. her durumda daha fazla performansa olanak tanır yapılması gerekebilecek dinamik kod yürütme ve daha basit bir işlem formatı. • Listelenen sözleşmeler için otomatik yürütmeye ve ağ mesajı çıktılarına izin veren özel işlevsellik desteklenir. Aktarma zincirinin bir VM'ye sahip olması durumunda ve bu EVM temel alınarak, maksimum basitliği sağlamak için bir dizi değişiklik yapılacaktır. Muhtemelen bir dizi yerleşik sözleşmeye sahiptir (şu adrestekilere benzer) platforma özel izin vermek için Ethereum içindeki 1-4 adresleri) Bir fikir birliği sözleşmesi de dahil olmak üzere yönetilmesi gereken görevler, validator sözleşmesi ve parachain sözleşmesi. EVM değilse, WebAssembly [2] (wasm) arka ucu en olası alternatiftir; bu durumda genel yapı benzer olurdu ama gerek olmazdı Wasm'ın geçerli bir hedef olduğu yerleşik sözleşmeler için olgunlaşmamış diller yerine genel amaçlı diller için ve EVM için sınırlı diller. Mevcut Ethereum protokolünden diğer olası sapmalar da oldukça mümkündür; örneğin, protokolün basitleştirilmesi. Aynı blok içerisinde çakışmayan işlemlerin paralel olarak yürütülmesine olanak tanıyan işlem-makbuz formatı, Serenity değişiklik serisi için önerildiği gibi. Pek olası olmasa da, Serenity benzeri bir şeyin olması mümkündür. "saf" zincir, aktarma zinciri olarak konuşlandırılabilir ve staking token gibi şeyleri yönetmek için özel bir sözleşme bunu temel bir parçası haline getirmek yerine dengeler zincirin protokolü. Şu anda bunun pek olası olmadığını düşünüyoruz yeterince mükemmel bir protokol basitleştirmesi sunacak içerdiği ek karmaşıklık ve belirsizliğe değer onu geliştirmede. 7Sistemin genel güvenliğinden belirli bir sahibinin sorumlu olduğu tutarı temsil etmenin bir yolu olarak, bu hisse hesapları kaçınılmaz olarak bazı ekonomik değerleri kodlar. Ancak şunu da anlamak gerekir ki, bu tür değerlerin kullanılmasına yönelik bir niyet söz konusu değildir. herhangi bir şekilde gerçek dünya mal ve hizmetleriyle takas amacıyla token'lerin şunlara benzetilemeyeceği belirtilmelidir: para birimidir ve bu nedenle aktarma zinciri, uygulamalara ilişkin nihilist felsefesini korur.POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 10 Konsensüs mekanizmasını, validator setini, doğrulama mekanizmasını ve parachainleri yönetmek için gereken bir dizi küçük işlevsellik vardır. Bunlar yekpare bir protokol altında birlikte uygulanabilir. Bununla birlikte, modülerliğin göstergesi olarak bunları aktarma zincirinin "sözleşmeleri" olarak tanımlıyoruz. Bu gerekir nesneler oldukları anlamına gelecek şekilde alınmalıdır (anlamında) nesne yönelimli programlama) aktarma zincirinin konsensüs mekanizması tarafından yönetilir, ancak bu zorunlu değildir. EVM benzeri işlem kodlarındaki programlar olarak tanımlanırlar veya aracılığıyla ayrı ayrı adreslenebilir olsalar bile hesap sistemi. 6.2. Bahis Sözleşmesi. Bu sözleşme validator kümesini korur. Şunları yönetir: • şu anda hangi hesapların validators olduğu; • kısaca validators olmaya müsait olanlar uyarı; • hangi hesaplara hisse adaylığı yerleştirildi bir validator; • staking hacmi, kabul edilebilir ödeme oranları ve adresleri ve kısa vadeli (oturum) kimliklerini içeren her birinin özellikleri. Bir hesabın üye olma arzusunu kaydetmesine olanak tanır. bağlı validator (gereksinimleriyle birlikte), bir kimliğe aday olmak ve önceden mevcut bağlı validators için bu durumdan çıkma isteklerini kaydetmek için. Aynı zamanda doğrulama ve kanonikleştirme mekanizması için makinenin kendisini içerir. 6.2.1. Stake-token Likidite. Genellikle arzu edilir toplam staking tokens'nin mümkün olduğu kadar çoğuna sahip olmak beri ağ bakım operasyonlarında görevlendirildi bu, ağ güvenliğini doğrudan staking token'nin genel "piyasa değerine" bağlar. Bu kolayca yapılabilir para biriminin şişirilmesi ve gelirlerin katılımcılara validators olarak dağıtılması yoluyla teşvik edilebilir. Ancak bunu yapmak bir sorun yaratır: token ise Staking Sözleşmesinde indirim cezasıyla kilitlenmişse, önemli bir kısmı nasıl yeterince kalabilir? Fiyat keşfine izin vermek için sıvı mı? Buna bir yanıt, temel hisseli token üzerinde değiştirilebilir token'leri güvence altına alan basit bir türev sözleşmesine izin vermektir. Bunu güvene dayalı olmayan bir şekilde düzenlemek zordur. Ayrıca, bu türev token'ler, farklı Avro Bölgesi hükümetlerinin tahvillerinin takas edilebilir olmaması nedeniyle aynı nedenle eşit olarak ele alınamaz: dayanak varlığın başarısızlığa uğraması ve yeniden oluşması ihtimalidir değersiz. Avro Bölgesi hükümetleri ile varsayılan. validator-bahisli tokens ile validator olabilir kötü niyetli davranın ve cezalandırılın. İlkelerimize sadık kalarak en basit çözümü seçiyoruz: token'ların tümü stake edilmeyecektir. Bu şu anlama gelir token'lerin bir kısmı (belki %20) zorunlu olarak sıvı kalacaktır. Bu, güvenlik açısından kusurlu olsa da, güvenlik açısından temel bir fark yaratması pek olası değildir. ağın güvenliği; Tahvillere el konulmasından kaynaklanabilecek tazminatların yüzde 80'i hala yapılabilecek %100 staking "mükemmel durum" ile karşılaştırıldığında. Stacked ve likit token'ler arasındaki oran, ters açık artırma mekanizması yoluyla oldukça basit bir şekilde hedeflenebilir. Temel olarak, token sahipleri validator olmakla ilgileniyorlar her biri staking sözleşmesine şunu belirten bir teklif gönderir: almaları gereken minimum ödeme oranı parçası. Her oturumun başında (oturumlar düzenli olarak, belki saatte bir kez kadar sıklıkta meydana gelir) validator yuva her isteğe göre doldurulacak validator'nın bahis miktarı ve ödeme oranı. Olası bir algoritma çünkü bu, en düşük teklifleri verenleri almak olacaktır. hedeflenen toplam hisseden daha yüksek olmayan bir hisseyi temsil eder yuva sayısına bölünür ve bu miktarın yarısının alt sınırından daha az olamaz. Yuvalar doldurulamıyorsa, alt sınır, tatmin etmek için bazı faktörlerle tekrar tekrar azaltılabilir. 6.2.2. Aday gösterme. Güvenle aday gösterilmek mümkündür staking tokens olanları aktif bir validator'ye bağlayarak onlara veririz validator'nin görevlerinin sorumluluğu. Eserlerin aday gösterilmesi onay-oylama sistemi aracılığıyla. Her aday aday staking sözleşmesine bir talimat gönderebilir altında bir veya daha fazla validator kimliği ifade eden sorumluluklarını emanet etmeye hazırdırlar. Her oturumda adayların tahvilleri dağıtılır. bir veya daha fazla validator ile temsil edilir. Dağıtma algoritması, eşdeğer toplamın validators kümesi için optimize eder tahviller. Aday gösterenlerin tahvilleri validator a'nın etkin sorumluluğu altına girer.ya faiz kazanırsın ya da acı çekersin buna göre ceza indirimi. 6.2.3. Senetlere El Koyma/Yakma. Belirli validator davranışları, teminatlarının cezai olarak azaltılmasıyla sonuçlanır. Eğer Tahvilin izin verilen minimum seviyenin altına düşürülmesi, oturum zamanından önce sonlandırıldı ve başka bir oturum başlatıldı. Cezalandırılabilir validator uygunsuz davranışların kapsamlı olmayan listesi şunları içerir: • Sağlayamayan bir parachain grubunun parçası olmak parachain bloğunun geçerliliği konusunda fikir birliği; • geçersiz bir belgenin geçerliliği için aktif olarak imza atmak parachain bloğu; • çıkış yüklerini önceden sağlayamama uygun olarak oylandı; • fikir birliği süreci sırasında hareketsizlik; • rakip çatallardaki aktarma zinciri bloklarının doğrulanması. Bazı hatalı davranış vakaları ağın bütünlüğünü tehdit eder (geçersiz parachain bloklarının imzalanması ve bir çatalın birden fazla tarafının doğrulanması gibi) ve dolayısıyla bağın tamamen azaltılması yoluyla etkili bir şekilde sürgüne yol açar. içinde diğer, daha az ciddi durumlar (örn. fikir birliğinde hareketsizlik) süreç) veya suçun kesin olarak dağıtılamadığı durumlarda (etkisiz bir grubun parçası olmak), küçük bir kısım Bunun yerine teminat para cezasına çarptırılabilir. İkinci durumda, bu kötü amaçlı olduğundan emin olmak için alt grup karmaşasıyla iyi çalışır düğümler, ikincil olarak hasar görmüş hayırsever düğümlerden önemli ölçüde daha fazla kayba uğrar. Bazı durumlarda (örneğin, çoklu çatal doğrulaması ve geçersiz alt blok imzalama) validator'ler sürekli doğrulama nedeniyle birbirlerinin hatalı davranışlarını kendileri kolayca tespit edemiyorlar Her bir parachain bloğunun kaldırılması çok zorlu bir görev olacaktır. Burada dışındaki tarafların desteğinin sağlanması gerekmektedir. Bu tür hatalı davranışları doğrulamak ve raporlamak için doğrulama süreci. Taraflar bu tür bir faaliyeti bildirdikleri için bir ödül alırlar; "Balıkçı" terimi, bu durumun pek mümkün olmamasından kaynaklanıyor böyle bir ödülden. Bu vakalar genellikle çok ciddi olduğundan, el konulan tahvilden her türlü ödülün kolayca ödenebileceğini öngörüyoruz. Genelde yanmayı dengelemeyi tercih ederiz (yani hiçbir şeye indirgeme) yerine yeniden tahsis ile toptan yeniden tahsis girişiminde bulunuldu. Bunun etkisi var
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 11 token'nin genel değerini artırarak, ağ belirli bir düzeyden ziyade genel olarak bir dereceye kadar keşifte yer alan taraf. Bu esas olarak bir güvenlik amaçlıdır Mekanizma: İlgili büyük miktarlar, hepsi aşırı ve akut davranış teşviklerine yol açabilir tek bir hedefe bahşedilmiştir. Genel olarak, ödülün ağ için doğrulamayı değerli kılacak kadar büyük olması, ancak bir doğrulamanın karşılanmasının maliyetini karşılayacak kadar da büyük olmaması önemlidir. iyi finanse edilmiş, iyi organize edilmiş “endüstriyel düzeyde” suç Kötü davranışlara zorlamak için bazı şanssız validator'ya hack saldırısı. Bu şekilde, talep edilen tutarın genellikle hatalı validator'nin doğrudan bağından daha büyük, öyle ki yaramazlık yapmaktan ve ödül için kendini ihbar etmekten kaynaklanan sapkın teşvikler. Bu durumla açıkça mücadele edilebilir olmak için asgari doğrudan tahvil şartı aracılığıyla validator veya dolaylı olarak aday gösterenleri, yatırılmış küçük tahvilleri olan validator'ların büyük bir teşvikinin olmadığı konusunda eğiterek iyi davranmak. 6.3. Parachain Kaydı. Her parachain şu şekilde tanımlanır: bu kayıt defteri. Nispeten basit bir veritabanı benzeri yapıdır ve hem statik hem de dinamik bilgileri tutar. her zincir. Statik bilgiler zincir indeksini (basit bir tamsayı), doğrulama protokolü kimliğiyle birlikte bir farklı sınıfları birbirinden ayırmanın bir yolu doğru doğrulama algoritmasının olabilmesi için parachain geçerli bir aday öne sürmekle görevli validators tarafından yönetiliyor. İlk kavram kanıtı yerleştirmeye odaklanacaktır. yeni doğrulama algoritmalarını istemcilerin kendilerine aktarır ve her seferinde protokolün sert bir şekilde çatallanmasını gerektirir. ek zincir sınıfı eklendi. Sonuçta yine de doğrulama algoritmasını belirtmek mümkün olabilir Müşterilerin kullanabileceği kadar titiz ve etkili bir yol yeni parachain'lerle etkili bir şekilde çalışabilmektedir. sert çatal. Bunun olası bir yolu şunu belirtmek olacaktır: köklü bir parachain doğrulama algoritması, WebAssembly gibi yerel olarak derlenmiş, platformdan bağımsız bir dil. Belirlemek için ek araştırma gereklidir bunun gerçekten mümkün olup olmadığı, ancak eğer öyleyse, bununla birlikte sert çatalları ortadan kaldırmanın muazzam avantajı kesinlikle. Dinamik bilgi, işlem yönlendirme sisteminin küresel anlaşmaya sahip olması gereken yönlerini içerir. Parachain'in giriş kuyruğu olarak (bölüm 6.6'da açıklanmıştır). Kayıt defteri yalnızca parachain'lerin eklenmesini sağlayabilir tam referandum oylaması yoluyla; bu yönetilebilir dahili olarak ancak daha büyük olasılıkla harici bir yere yerleştirilir kapsamında yeniden kullanımı kolaylaştırmak amacıyla referandum sözleşmesi daha genel yönetişim bileşenleri. Parametreler oylama gereklilikleri (örneğin gerekli yeter çoğunluk, çoğunluk ek zincirlerin ve diğerlerinin kaydı için gerekli) daha az resmi sistem yükseltmeleri bir “ana anayasa” ama muhtemelen oldukça geleneksel bir anayasayı takip edecekler. en azından başlangıçta yol. Kesin formülasyon bitti mevcut çalışmanın kapsamı, ancak ör. toplam sistemin üçte birinden fazlasıyla geçecek üçte ikilik bir çoğunluk Hisselerin olumlu oylanması mantıklı bir başlangıç noktası olabilir. Ek işlemler arasında parachainlerin askıya alınması ve kaldırılması yer alır. Uzaklaştırma umarım hiçbir zaman olmaz olur, ancak en azından bir koruma olacak şekilde tasarlanmıştır Parachain'in doğrulama sisteminde bazı zorlu problemler var. Bunun olabileceği en bariz örnek validators'nin üzerinde anlaşamamasına yol açan uygulamalar arasında fikir birliği açısından kritik bir farka ihtiyaç duyulmaktadır. geçerlilik veya bloklar. Doğrulayıcıların kullanması teşvik edilecektir. birden fazla istemci uygulamasını gerçekleştirebilmeleri için tahvillere el konulmadan önce böyle bir sorunu tespit etmek. Askıya alma acil bir tedbir olduğundan, dinamik validator-oylamanın himayesi altında referandumdan daha fazlası. Yeniden etkinleştirme her ikisi de mümkün olabilir validators'den veya referandumdan. Parachainlerin tamamen ortadan kaldırılması ancak referandumdan sonra gerekli olacak düzenli bir geçişe izin vermek için önemli miktarda ödemesiz süre ya bağımsız bir zincir ya da başka bir zincirin parçası olmak fikir birliği sistemi. Ek süre muhtemelen Ayların sırasına göre düzenlenir ve farklı sıralamaların yapılabilmesi için parachain kayıt defterinde her zincir bazında düzenlenmesi muhtemeldir. Parachain'ler duruma göre farklı ödemesiz sürelerden yararlanabilirler onların ihtiyacı. 6.4. Sızdırmazlık Rölesi Blokları. Sızdırmazlık, özünde, kanonikleştirme sürecine; yani temel bir veri hangisini dönüştürorijinali temelde tekil ve anlamlı bir şeye dönüştürür. PoW zinciri altında, mühürleme aslında madencilikle eşanlamlıdır. Bizim durumumuzda, validators'den bir belgenin geçerliliği, kullanılabilirliği ve kanonikliğine ilişkin imzalı ifadelerin toplanmasını içerir. belirli röle zinciri bloğu ve parachain blokları temsil ediyor. Temel BFT fikir birliği algoritmasının mekaniği mevcut çalışmanın kapsamı dışındadır. Yapacağız bunun yerine bunu varsayan bir ilkel kullanarak tanımlayın. fikir birliği yaratan devlet makinesi. Sonuçta bekliyoruz bir dizi umut verici BFT fikir birliğinden ilham almak çekirdekteki algoritmalar; Tangaora [9] (BFT çeşidi) Raft [16]), Tendermint [11] ve HoneyBadgerBFT [14]. Algoritmanın paralel olarak birden fazla parachain üzerinde anlaşmaya varması gerekecek, bu da alışılagelmiş olandan farklı olacaktır. blockchain fikir birliği mekanizmaları. Bir kez olduğunu varsayıyoruz fikir birliğine varıldığında fikir birliğini kaydedebiliriz herhangi biri tarafından sağlanabilecek reddedilemez bir kanıtla Katılımcılar buna. Ayrıca hatalı davranışı da varsayıyoruz. protokol dahilinde genellikle küçük bir miktara indirgenebilir en aza indirmek için yaramazlık yapan katılımcıları içeren grup cezayı verirken ikincil hasar.8 İmzalı ifadelerimizin şeklini alan kanıt, röle zinciri bloğunun başlığına birlikte yerleştirilir aktarma zincirinin durum kökü ve işlem deneme kökü başta olmak üzere bazı diğer alanlarla birlikte.
sızdırmazlık süreç alır yer altında bir bekar fikir birliği yaratan mekanizma adresleme ikisi de the röle zincirinin bloğu ve parachainlerin blokları aktarıcının içeriğinin bir kısmı: parachain'ler alt grupları tarafından ayrı ayrı "taahhüt edilmez" ve daha sonra harmanlanmaz daha sonra. Bu, aktarma zinciri için daha karmaşık bir süreçle sonuçlanır, ancak gecikmeyi en aza indirerek ve tüm sistemin fikir birliğini tek bir aşamada tamamlamamıza olanak tanır. oldukça karmaşık veri kullanılabilirliği gereksinimleri için aşağıdaki yönlendirme işlemi için faydalıdır. 8Tendermint BFT ve orijinal Slasher gibi mevcut PoS tabanlı BFT fikir birliği şemaları bu iddiaları karşılamaktadır.
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 12 Her katılımcının fikir birliği makinesinin durumu basit (2 boyutlu) bir tablo olarak modellenebilir. Her katılımcının (validator) formda bir dizi bilgisi vardır. Her bir parachain blok adayı ve aktarma zinciri blok adayı ile ilgili olarak diğer katılımcıların imzalı beyanlarının (“oyları”). Bilgi seti iki parçadan oluşmaktadır veri sayısı: Kullanılabilirlik: var bu validator sahip olmak çıkış bu bloktan işlem sonrası bilgiler Aşağıdaki blokta parachain adaylarını doğru şekilde doğrulayabiliyorlar mı? Oy verebilirler 1(bilinen) veya 0 (henüz bilinmiyor). Bir kez onlar 1 oy, benzer şekilde oy vermeye kararlılar bu sürecin geri kalanı. Daha sonra geçerli olmayan oylar buna saygı duymak cezanın gerekçesidir. Geçerlilik: parachain bloğu geçerli mi ve hepsi geçerli mi? harici referanslı veriler (ör. işlemler) müsait mi? Bu yalnızca oy verdikleri parachain'e atanan validator'ler için geçerlidir. 1 (geçerli), -1 (geçersiz) veya 0 şeklinde oy verebilirler. (henüz bilinmiyor). Sıfır dışında oy verdiklerinde, geri kalan süre boyunca bu şekilde oy kullanmaya kararlıyız süreç. Daha sonra buna saygı göstermeyen oylar ceza gerekçesidir. Tüm validator'ler oy vermelidir; Yukarıdaki kurallara uygun olarak oylar yeniden gönderilebilir. ilerlemesi Konsensüs, paralel olarak gerçekleşen her bir parachain üzerinde birden fazla standart BFT konsensüs algoritması olarak modellenebilir. Bunlar potansiyel olarak göreceli olarak engellendiğinden kötü niyetli aktörlerin küçük bir azınlığı yoğunlaşıyor tek bir parachain grubu için genel fikir birliği mevcuttur En kötü senaryoyu sınırlayan bir geri durdurma noktası oluşturun yalnızca bir veya daha fazla geçersiz parachain bloğuna kilitlenme (ve Sorumlulara bir dizi ceza). Bireysel blokların geçerliliği için temel kurallar (toplam validators kümesinin bir bütün olarak elde edilmesine olanak sağlar) benzersiz parachain adayı olma konusunda fikir birliği kanonik röleden referans alınacak): • validator üyelerinin en az üçte ikisinin olumlu oy kullanması ve hiçbirinin olumsuz oy kullanmaması gerekir; • çıkış kuyruğu bilgilerinin kullanılabilirliği konusunda üçte birden fazla validator olumlu oy kullanmalıdır. Geçerliliğe ilişkin en az bir olumlu ve en az bir olumsuz oy olması halinde istisnai bir durum yaratılır ve validator'lerden oluşan grubun tamamı karar vermek için oy kullanmalı kötü niyetli taraflar varsa veya kazara bir durum varsa çatal. Geçerli ve geçersiz oyların dışında üçüncü tür oylar izin veriliyor, her ikisine de oy vermeye eşdeğer, yani Düğümün çelişkili görüşleri var. Bunun nedeni şunlar olabilir: düğümün sahibi birden fazla uygulamayı çalıştırıyor katılmıyorum, bu da protokolde olası bir belirsizliğe işaret ediyor. Tüm oylar tam validator kümesinden sayıldıktan sonra, eğer kaybedilen görüşün en azından küçük bir oranı vardır ( parametrelendirilebilir; en fazla yarısı, belki de önemli ölçüde daha az) kazanan görüşün oylarının, o zaman olduğu varsayılır kazara bir parachain çatalı olursa, parachain otomatik olarak konsensüs sürecinden askıya alınır. Aksi takdirde bunun kötü niyetli bir davranış olduğunu varsayarız ve cezalandırırız. muhalif görüşe oy veren azınlık. Sonuç, aşağıdakileri gösteren bir dizi imzadır: kanoniklik. Röle zinciri bloğu daha sonra kapatılabilir ve bir sonraki bloğun mühürlenmesi süreci başladı. 6.5. Sızdırmazlık Röle Bloklarına yönelik iyileştirmeler. iken bu sızdırmazlık yöntemi sistemin çalışması konusunda güçlü garantiler verir, çok iyi ölçeklenmez çünkü her parachain'in anahtar bilgisinin kendine ait olması gerekir kullanılabilirlik, tüm validator'lerin üçte birinden fazlası tarafından garanti edilir. Bu, her validator'nin sorumluluk ayak izinin olduğu anlamına gelir daha fazla zincir eklendikçe büyür. Açık fikir birliği ağlarında veri kullanılabilirliği özünde çözülmemiş bir sorun olduğundan, validator düğümlerine yerleştirilen yükü azaltmanın yolları vardır. Basit bir çözüm, validators'nin omuz vermesi gerektiğini fark etmektir. Veri kullanılabilirliği sorumluluğu kendilerine ait olduğundan, verileri kendilerinin saklaması, iletmesi veya çoğaltması gerekmez. Muhtemelen ilişkili (ya da hatta tam olarak) ikincil veri siloları aynı) bu verileri derleyen derleyiciler şunları yönetebilir: validator'lerin faiz/gelirlerinin bir kısmını ödeme olarak sunarak kullanılabilirliği garanti etme görevi. Ancak bu, bir miktar orta düzeyde ölçeklenebilirlik satın alsa da, yine de altta yatan soruna yardımcı olmuyor; o zamandan beri daha fazla zincir eklemek genel olarak ek validator gerektirecektir; devam eden ağ kaynağı tüketimi (özellikle bant genişliği açısından) karesi ile birlikte artar. thezincirler uzun vadede savunulamaz bir özelliktir. Eninde sonunda kafamızı vurmaya devam edeceğiz şunu belirten temel sınırlamaya karşı: Güvenli olarak kabul edilebilecek bir fikir birliği ağı, devam eden bant genişliği gereksinimleri toplam mertebesindedir validators çarpı toplam giriş bilgisi. Bunun nedeni güvenilmeyen bir ağın, veri depolama görevini birçok düğüme düzgün bir şekilde dağıtamaması fazlasıyla dağıtılabilir işleme görevi dışında. 6.5.1. Gecikme ile tanışın. Bunu yumuşatmanın bir yolu Kural, aciliyet kavramını gevşetmektir. validators'nin %33+1 validators'nin kullanılabilirlik için oy vermesini hemen değil, yalnızca eninde sonunda zorunlu kılarak, üstel veri yayılımından daha iyi yararlanabilir ve veri alışverişindeki zirve noktaların dengelenmesine yardımcı olabiliriz. Makul bir eşitlik (kanıtlanmamış olsa da) şunlar olabilir: (1) gecikme = katılımcılar × zincirler Mevcut modelde sistemin boyutu ölçekleniyor İşlemenin yapılmasını sağlamak için zincir sayısıyla dağıtılmış; her zincir en az bir validator gerektireceğinden ve kullanılabilirlik kanıtını sabit bir değere sabitledik oranı validators ise katılımcılar da benzer şekilde büyür zincir sayısı ile. Sonuç olarak: (2) gecikme = boyut2 Bu, sistem büyüdükçe gerekli bant genişliğinin ve kullanılabilirliğe kadar olan gecikmenin tüm ağ genelinde bilindiği anlamına gelir. numara olarak da nitelendirilebilecek ağ kesinlikten önceki blok sayısı karesiyle birlikte artar. bu önemli bir büyüme faktörüdür ve önemli bir engel teşkil edebilir ve bizi “düz olmayan” paradigmalara zorlayabilir birkaç “Polkadotes”i bir hiyerarşi halinde oluşturmak gibi direklerin bir aktarma zinciri ağacı aracılığıyla çok seviyeli yönlendirilmesi için.
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 13 6.5.2. Halkın Katılımı. Bir olası yön daha sürece halkın katılımını sağlamaktır. Mikro şikayet sistemi. Balıkçılara benzer şekilde, iddia eden validator'leri denetleyen harici taraflar olabilir kullanılabilirlik. Görevleri bu tür bir uygunluğu gösteremeyen birini bulmaktır. Bunu yaparken onlar diğer validator'lere mikro şikayette bulunabilir. PoW veya Sybil saldırısını azaltmak için hisseli tahvil kullanılabilir bu da sistemi büyük ölçüde işe yaramaz hale getirecektir. 6.5.3. Kullanılabilirlik Garantörleri. Son bir rota şu olacaktır: ikinci bir bağlı validator kümesini "kullanılabilirlik" olarak aday gösterin garantörler”. Bunlar normal validator'lerde olduğu gibi bağlanır ve hatta aynı kümeden bile alınabilir. (eğer öyleyse, en azından oturum başına, uzun vadeli bir süre boyunca seçileceklerdir). Normal validator'lerin aksine, onlar Parachain'ler arasında geçiş yapmazdım ama bunun yerine Tüm önemli zincirler arası verilerin kullanılabilirliğini doğrulamak için tek bir grup oluşturun. Bunun katılımcılar ve zincirler arasındaki denkliği gevşetme avantajı vardır. Esas olarak zincirler büyür (orijinal zincir validator seti ile birlikte), oysa katılımcılar ve özellikle veri kullanılabilirliği vasiyetinde yer alanlar en azından alt doğrusal kalabilirler ve muhtemelen sabit. 6.5.4. Harmanlayıcı Tercihleri. Bunun önemli bir yönü Sistemin amacı sağlıklı seçim yapılmasını sağlamaktır. herhangi bir parachain'de blokları oluşturan harmanlayıcılar. eğer bir tek bir harmanlayıcı bir parachain'e hakim oldu, ardından bazı saldırılar oldu eksikliği olasılığı nedeniyle daha uygulanabilir hale gelir. dış verilerin mevcudiyeti daha az belirgin olacaktır. Bir seçenek parachain bloklarını yapay olarak ağırlıklandırmaktır. çok çeşitli derleyicileri tercih etmek için sözde rastgele bir mekanizma. İlk etapta şunu isteriz: validators'nin desteklediği fikir birliği mekanizmasının bir parçası olarak Parachain blok adaylarının “daha ağır” olduğu belirlendi. Benzer şekilde, validators'yi şunu yapmaya teşvik etmeliyiz: bulabilecekleri en ağır bloğu önerin; bu olabilir ödüllerinin bir kısmını adaylarının ağırlığına orantılı hale getirerek yapılır. Harmanlayıcılara makul bir adalet sağlanmasını sağlamak adaylarının kazanan olarak seçilme şansı Adayın fikir birliği içinde olması durumunda, belirli bir ağırlığı belirleriz. Parachain blok adayı, her bir harmanlayıcıya bağlı rastgele bir fonksiyon üzerinde belirlenir. Örneğin, alarak harmanlayıcının adresi arasındaki XOR mesafe ölçüsü ve bazı kriptografik olarak güvenli sahte rastgele numaralar oluşturulan bloğun noktasına yakın olarak belirlenir (kavramsal bir “kazanan bilet”). Bu, her birine etkili bir şekilde verir harmanlayıcı (veya daha spesifik olarak her harmanlayıcının adresi) aday bloğunun "kazanması" için rastgele şans diğerleri. Tek bir harmanlayıcının kazanan bilete yakın bir adresi "madencilik" yapmasının ve böylece her bloğun favorisi olsaydı, harmanlayıcının adresine bir miktar atalet eklerdik. Bu onları istemek kadar basit olabilir adreste temel miktarda para bulunması. bir daha Zarif yaklaşım, yakınlığa ağırlık vermek olacaktır. park edilen para miktarıyla bilet kazanma söz konusu adres. Modelleme henüz yapılmamışken, bu mekanizmanın çok fazla olanak sağlaması oldukça mümkündür. Küçük paydaşların derleyici olarak katkıda bulunmaları. 6.5.5. Aşırı Kilolu Bloklar. Bir validator kümesinin güvenliği ihlal edilirse, bir blok oluşturabilir ve önerebilirler. geçerlidir, yürütülmesi aşırı miktarda zaman alır ve doğrulayın. Bu bir validator grubunun yapabileceği bir sorundur. makul bir şekilde çok uzun zaman alan bir blok oluşturur Kısa yola izin veren belirli bir bilgi parçası zaten bilinmiyorsa, örneğin; büyük çarpanlara ayırma birinci sınıf. Eğer tek bir derleyici bu bilgiyi biliyorsa, o zaman kendilerininkini alma konusunda açık bir avantaja sahip olacaklar diğerleri eski bloğu işlemekle meşgul olduğu sürece adaylar kabul edildi. Bu bloklara fazla kilolu diyoruz. validator'lerin bu blokları göndermesine ve doğrulamasına karşı koruma, büyük ölçüde aşağıdakilerle aynı kisvenin altında kalır: geçersiz bloklar, ancak ek bir uyarıyla: Çünkü bir bloğun yürütülmesi için geçen süre (ve dolayısıyla durumu aşırı kilo) subjektiftir, oylamanın nihai sonucu Kötü davranışlar esasen üç kampa ayrılacaktır. Bir olasılık bloğun kesinlikle aşırı kilolu olmamasıdır. bu durumda üçte ikiden fazlası yapabileceklerini beyan ediyor bloğu belirli bir limit dahilinde yürütün (örneğin, bloklar arasında izin verilen toplam sürenin %50'si). Bir diğeri ise blok d'dirkesinlikle fazla kilolu - eğer daha fazlaysa bu olurdu üçte ikisi bloğu yürütemediklerini beyan ediyor söz konusu limit dahilinde. Son bir olasılık oldukça eşit validators arasında fikir ayrılığı. Bu durumda şunları yapabiliriz: orantılı bir ceza uygulamayı seçin. validators'nin ne zaman olabileceklerini tahmin edebilmelerini sağlamak için Aşırı ağırlıklı bir blok önerirken, her blok için kendi performanslarına ilişkin bilgi yayınlamalarını talep etmek mantıklı olabilir. Yeterli bir süre boyunca, bu onların işlem hızlarının profilini çıkarmalarına olanak sağlamalıdır onları yargılayacak akranlarına göre. 6.5.6. Harmanlayıcı Sigortası. validators için bir sorun kaldı: PoW ağlarından farklı olarak, bir harmanlayıcının bilgilerini kontrol etmek için Geçerlilik için bloğun içindeki işlemleri gerçekten yürütmeleri gerekir. Kötü niyetli harmanlayıcılar validator'lere geçersiz veya aşırı ağırlıklı bloklar besleyerek onların sıkıntı yaşamasına neden olabilir (boşa harcama) kaynakları) ve potansiyel olarak önemli bir fırsat maliyeti talep etmektedir. Bunu azaltmak için basit bir strateji öneriyoruz. validators'nin bir parçası. İlk olarak parachain blok adayları gönderildi validators'ye geçiş zinciri hesabından imza atılmalıdır fonlarla; değilse validator düşmelidir hemen. İkinci olarak, bu tür adaylar, aşağıdakilerin bir kombinasyonu (örneğin çarpma) yoluyla öncelik sırasına konmalıdır: belirli bir sınıra kadar hesaptaki fon miktarı, derleyicinin geçmişte başarılı bir şekilde önerdiği önceki blokların sayısı (önceki bloklardan bahsetmeye bile gerek yok) cezalar) ve kazanmaya yakınlık faktörü daha önce tartışıldığı gibi bilet. Kapak aynı olmalı davada validator'ye ödenen cezai tazminat olarak geçersiz bir blok gönderiyorlar. Düzenleyicileri geçersiz veya fazla kilolu blok adaylarını validators'ye göndermekten caydırmak için herhangi bir validator Bir sonraki bloğa, hatalı davranış iddiasında bulunan ve hatalı davranan toplayıcının hesabındaki fonların bir kısmının veya tamamının transfer edilmesi sonucunu doğuran kusurlu bloğu içeren bir işlem yerleştirir mağdur validator adına hesap verin. Bu tür işlemler, harmanlayıcının işlem yapamayacağını garantilemek için diğer işlemleri önden çalıştırır. cezadan önce fonları kaldırın. miktarı Hasar olarak aktarılan fonlar henüz dinamik bir parametredir
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 14 modellenecek ancak neden olunan kederin düzeyini yansıtacak şekilde muhtemelen validator blok ödülünün bir oranı olacaktır. Kime Kötü niyetli validator'lerin, toplayıcıların fonlarına keyfi olarak el koymasını önlemek için, düzenleyici, validator'nin kararına, karşılığında rastgele seçilmiş validator'lardan oluşan bir jüri ile itiraz edebilir. küçük bir depozito yatırmak için. validator'nin lehine karar verirlerse depozito onlar tarafından tüketilir. Değilse, depozito iade edilir ve validator para cezasına çarptırılır (çünkü validator çok daha kubbeli bir konumda, ceza kesilecek muhtemelen oldukça ağır olacaktır). 6.6. Zincirler arası İşlem Yönlendirme. Zincirler arası işlem yönlendirme temel bakımlardan biridir Aktarma zincirinin görevleri ve validator'leri. Bu Gönderilen bir işlemin (genellikle basitçe "göndermek" olarak kısaltılır) istenen çıktı olmaktan nasıl çıkacağını yöneten mantık bir kaynak parachain'den başka bir hedef parachain'in herhangi bir güven olmadan pazarlık edilemez girdisi olmaya gereksinimleri. Yukarıdaki ifadeleri dikkatle seçiyoruz; özellikle biz kaynakta bir işlem olmasını gerektirmez Parachain bu gönderiyi açıkça onayladı. Tek Modelimize koyduğumuz kısıtlamalar parachainlerin genel bloklarının bir parçası olarak paketlenmiş olarak sağlamalıdır işlem çıktısı, sonucu olan gönderiler bloğun yürütülmesi. Bu gönderiler birkaç FIFO kuyruğu olarak yapılandırılmıştır; the listelerin sayısı yönlendirme tabanı olarak bilinir ve 16 civarında. Özellikle bu sayı miktarı temsil ediyor başvurmak zorunda kalmadan destekleyebileceğimiz parachain sayısı çok fazlı yönlendirme. Başlangıçta Polkadot bunu destekleyecektir bir çeşit doğrudan yönlendirme, ancak biz olası bir yönlendirmeyi özetleyeceğiz bir araç olarak çok aşamalı yönlendirme süreci (“hiper yönlendirme”) Başlangıçtaki parachain setinin çok ötesine ölçeklendirme. Biz varsaymak bu hepsi katılımcılar biliyorum the sonraki iki blok için alt gruplamalar n, n + 1. Özetle, Yönlendirme sistemi şu aşamaları takip eder: • CollatorS: Doğrulayıcıların iletişim üyeleri[n][S] • Harmanlayıcılar: HER ALT GRUP İÇİN: Doğrulayıcıların[n][s] en az 1 üyesi temas halinde • Harmanlayıcılar: HER alt grup İÇİN: varsaymak çıkış[n −1][s][S] mevcut (tüm gelen gönderiler) verileri son bloktan 'S'ye aktarın) • Harmanlayıcılar: S için blok adayı b'yi oluşturun: (b.başlık, b.ext, b.kanıt, b.makbuz, b.çıkış) • Harmanlayıcılar: Gönder kanıt bilgi kanıt[S] = (b.başlık, b.ext, b.kanıt, b.makbuz) ila Doğrulayıcılar[n][S] • CollatorS: Harici işlem verilerinin b.ext olmasını sağlayın diğer derleyicilerin ve validator'lerin kullanımına sunulur • Harmanlayıcılar: İÇİN HER BİRİ alt grup s: Gönder çıkış bilgi çıkış[n][S][s] = (b.başlık, b.makbuz, b.çıkış[lar]) için the alma alt grup üyeler arasında sonraki blok Doğrulayıcılar[n + 1][s] • V alidatorV : Aynı kümedeki tüm üyeleri önceden bağlayın sonraki blok için: N = Zincir[n + 1][V ]; bağlanmak tüm validators v öyle ki Zincir[n + 1][v] = N • DoğrulayıcıV : Bunun için tüm veri girişlerini toplayın blok: İÇİN HER BİRİ alt grup s: Al çıkış[n −1][s][Zincir[n][V ]], diğer validators v'den Zincir[n][v] = Zincir[n][V ] olacak şekilde alın. Muhtemelen girişimin kanıtı için rastgele seçilmiş diğer validator'lerden geçiyoruz. • DoğrulayıcıV : Bunun için aday kanıtlarını kabul edin blok kanıtı[Zincir[n][V ]]. Oy bloğunun geçerliliği • DoğrulayıcıV : Şunun için aday çıkış verilerini kabul edin: sonraki blok: HER alt grup İÇİN, kabul et çıkış[n][s][N]. Oy engelleme çıkış kullanılabilirliği; ilgilenen validator'ler arasında yeniden yayınlayın, öyle ki Zincir[n + 1][v] = Zincir[n + 1][V ]. • DoğrulayıcıV : UZLAŞMAYA KADAR Burada: egress[n][from][to] geçerli çıkış kuyruğudur Parachain'den 'başlangıç'a giden gönderiler için bilgi 'n' blok numarasındaki parachain 'to'. CollatorS, parachain S için bir harmanlayıcıdır. V alidators[n][s], n blok numarasındaki parachain s için validators kümesidir. Tam tersine, Zincir[n][v], n numaralı blokta validator v'nin atandığı parachaindir. Block.egress[to] çıkıştır bazı parachain blok bloklarından gelen gönderi kuyruğu hedef parachain'dir. Harmanlayıcılar (işlem) ücretlerini topladıkları için blokları kanonik hale geliyor, teşvik ediliyorlar her bir sonraki blok hedefi için alt grubun üyeler mevcut çıkış kuyruğu hakkında bilgilendirilir Blok. Doğrulayıcılar yalnızca bir (parachain) blok üzerinde fikir birliği oluşturmaya teşvik edilir, bu nedenle pek umursamazlar hangi harmanlayıcının bloğu sonuçta kanonik hale gelir. içinde prensip olarak, bir validator bir derleyiciyle bağlılık oluşturabilir ve diğer derleyicilerin şansını azaltmak için komplo kurabilir blokların kanonik hale gelmesi, ancak bu hem zordur rastgele seçim nedeniyle düzenlemek içinvalidators'nin işlemi için Parachain'lere karşı, dayanıklı parachain blokları için ödenecek ücretlerde indirim yapılarak bu savunma yapılabilir. fikir birliği süreci. 6.6.1. Harici Veri Kullanılabilirliği. Parachain'in sağlanması harici verilerin aslında mevcut olması kalıcı bir sorundur İş yükünü dağıtmayı amaçlayan merkezi olmayan sistemler ağ. Sorunun merkezinde kullanılabilirlik var mümkün olmadığı için bunu belirten sorun etkileşimli olmayan bir kullanılabilirlik kanıtı veya herhangi bir türde ibraz etmek BFT sisteminin düzgün bir şekilde çalışması için kullanılabilir olmadığının kanıtı Doğruluğu aşağıdakilere dayanan herhangi bir geçişi doğrulamak bazı harici verilerin kullanılabilirliği, maksimum sayı kabul edilebilir Bizans düğümlerinin sayısı artı sistemin bir tanesi mevcut verilerin doğrulanması gerekir. Polkadot gibi bir sistemin ölçeğinin düzgün şekilde genişletilmesi için bu bir soruna davetiye çıkarıyor: eğer sabit bir oran validators ise Verilerin kullanılabilirliğini doğrulamalıdır ve varsayarak validators, verilerin mevcut olduğunu iddia etmeden önce verileri gerçekten depolamak isteyecekse, o zaman bu durumdan nasıl kaçınabiliriz? sistem boyutu (ve dolayısıyla validators sayısı) arttıkça bant genişliği/depolama gereksinimlerinin artması sorunu mu var? Olası bir cevap ayrı bir sete sahip olmak olabilir Siparişleri artan validators (kullanılabilirlik garantörleri) sayısı bir bütün olarak Polkadot boyutunda alt çizgisel olarak. bu 6.5.3'te açıklanmıştır. Ayrıca ikincil bir numaramız da var. Bir grup olarak derleyiciler, tüm verilerin doğrulanmasını sağlamak için içsel bir teşvike sahiptir. seçtikleri parachain için uygunlar çünkü onsuz yapabilecekleri başka bloklar yazamazlar işlem ücretlerini toplayın. Düzenleyiciler ayrıca üyelikleri değişkenlik gösteren bir grup oluşturur (rastgele doğası nedeniyle) parachain validator grupları) girişi önemsiz ve kolay
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 15 kanıtlamak. Bu nedenle son derleyicilerin (belki de son birkaç bin bloğun) meydan okumalarına izin veriliyor. belirli bir parachain için harici verilerin kullanılabilirliği küçük bir tahvil için validators'ye blok yapın. Doğrulayıcılar, açıkça suç teşkil eden validator alt grubundan ifade veren kişilerle iletişime geçmeli ve ya verileri alıp derleyiciye iade etmeli ya da durumu üst kademeye iletmelidir. mevcudiyetin bulunmadığına dair ifade vererek meseleyi ifade etmek (veri sayımlarını sağlamanın doğrudan reddedilmesi tahvillere el koyma suçu olarak kabul edilir, bu nedenle uygunsuz davranış validator muhtemelen sadece bağlantıyı kes) ve ek validator'lerle iletişim kurma aynı testi yapmak için. İkinci durumda, teminat verenin tahvili iade edilir. Bu tür müsaitlik durumu olmayan referansları sunabilecek validator yeter sayısına ulaşıldığında serbest bırakılırlar, yaramazlık yapan alt grup cezalandırılır ve engelleme geri alınır. 6.6.2. Mesaj Yönlendirme. Her parachain başlığı bir içerir çıkış-üçlü-kök; bu, şunu içeren bir try'nin köküdür yönlendirme tabanı bölmeleri, her bölme birleştirilmiş bir listedir çıkış direkleri. Merkle kanıtları her yerde sunulabilir belirli bir parachain'in olduğunu kanıtlamak için parachain validators bloğun belirli bir hedef parachain için belirli bir çıkış kuyruğu vardı. Bir parachain bloğunun işlenmesinin başlangıcında, her biri söz konusu bloğa bağlı diğer parachain'in çıkış kuyruğu: bloğumuzun giriş kuyruğuna birleştirildi. Güçlü sanıyoruz, muhtemelen CSPR9, herhangi biri arasında herhangi bir kayırmacılık sunmayan deterministik bir operasyon elde etmek için alt blok sıralaması Parachain blok eşleştirmesi. Harmanlayıcılar yeni kuyruğu hesaplar ve çıkış kuyruklarını parachain'in kurallarına göre boşaltın mantık. Giriş kuyruğunun içeriği açıkça yazılmıştır parachain bloğuna. Bunun iki ana amacı vardır: İlk olarak, bu, parachain'in diğer parachain'lerden ayrı olarak güvenilir bir şekilde senkronize edilebileceği anlamına gelir. İkincisi, tüm girişin gerçekleşmesi durumunda veri lojistiğini basitleştirir kuyruk tek bir blokta işlenemiyor; validator'ler ve harmanlayıcılar aşağıdaki blokları işleyebilir kuyruğun verilerini özel olarak kaynaklamak zorunda kalmadan. Parachain'in giriş kuyruğu bir eşiğin üzerindeyse blok işlemenin sonunda miktar, ardından işaretlenir Aktarma zinciri doygun hale gelir ve başka mesaj gönderilemez. temizlenene kadar kendisine teslim edilecektir. Merkle kanıtları harmanlayıcının işleminin doğruluğunu göstermek için kullanılır Parachain bloğunun kanıtı. 6.6.3. Eleştiri. Bu temelle ilgili küçük bir kusur Mekanizma bomba sonrası saldırıdır. Burası her şeyin olduğu yer Parachain'ler mümkün olan maksimum miktarda gönderi gönderir belirli bir parachain'e. Bu hedefin bağlantısını sağlarken giriş kuyruğuna tek seferde girer, tekrar tekrar hasar verilmez standart bir işlem DoS saldırısı. Bir dizi iyi senkronize edilmiş ve normal şekilde çalışıyor N parachain için kötü amaçlı olmayan harmanlayıcılar ve validator'ler, Parachain başına N × M toplam validators ve L harmanlayıcı, biz blok başına toplam veri yollarını şu şekilde parçalayabilir: Doğrulayıcı: M −1+L+L: diğer validator'ler için M −1 Parachain setinde, bir aday parachain bloğu sağlayan her bir harmanlayıcı için L ve her bir harmanlayıcı için ikinci bir L önceki bloğun çıkış yüklerini gerektiren sonraki bloğun. (İkincisi aslında daha çok en kötü duruma benziyor Harmanlayıcıların bu tür bilgileri paylaşması muhtemel olduğundan operasyon veriler.) Harmanlayıcı: M +kN: İlgili her bir bağlantı için M parachain bloğu validator, çıkış yüklerini her parachain validator grubunun bazı alt kümelerine dağıtmak için kN bir sonraki blok (ve muhtemelen bazı tercih edilen harmanlayıcı(lar)). Bu nedenle, düğüm başına veri yolu yolları doğrusal olarak büyür sistemin genel karmaşıklığı ile. Bu iken makul, sistem yüzlerce veya binlerce parachain'e ölçeklendiğinden bir miktar iletişim gecikmesi olabilir daha düşük bir karmaşıklık büyüme oranı karşılığında emilir. Bu durumda çok aşamalı bir yönlendirme algoritması kullanılabilir. anlık yolların sayısını azaltmak için depolama arabellekleri ve gecikmenin eklenmesi pahasına. 6.6.4. Hyper-cube Yönlendirme. Hyper-cube yönlendirme çoğunlukla bir uzantı olarak oluşturulabilen bir mekanizmadır. Yukarıda açıklanan temel yönlendirme mekanizması. Esasen, Parachain ve alt grup düğümlerinin sayısıyla düğüm bağlantısını artırmak yerine yalnızca Parachainlerin logaritması. Gönderiler şu tarihler arasında geçiş yapabilir: Birkaç parachain kuyruğu nihai teslimata doğru ilerliyor. Yönlendirmenin kendisi deterministik ve basittir. Şununla başlıyoruz: giriş/çıkış kuyruklarındaki kutu sayısının sınırlandırılması; toplam parachain sayısı yerine bunlaryönlendirme tabanı (b) . Bu numara olarak sabitlenecek Parachainlerin sayısı değişir, bunun yerine yönlendirme üssü (e) yükseltilir. Bu modelde mesaj hacmimiz O(be) ile büyür, yollar sabit kalır ve gecikme (veya teslimat için gereken blok sayısı) O(e) ile. Yönlendirme modelimiz e boyutlu bir hiperküptür, küpün her iki tarafı da b olası konuma sahiptir. Her blokta mesajları tek bir eksen boyunca yönlendiririz. Biz Ekseni sıralı olarak değiştirerek blokların en kötü durumda teslim süresini garanti altına alırsınız. Parachain işlemenin bir parçası olarak, yurtdışına bağlı Giriş kuyruğunda bulunan mesajlar, verilen gereklilik dikkate alınarak derhal uygun çıkış kuyruğunun bölmesine yönlendirilir. geçerli blok numarası (ve dolayısıyla yönlendirme boyutu). Bu süreç her atlama için ek veri aktarımı gerektirir teslimat rotasında, ancak bu başlı başına bir sorun bazı alternatif yöntemler kullanılarak hafifletilebilecek olan veri yükünün teslimi ve yalnızca bir referans içermesi, deneme sonrası gönderinin tam yükü yerine. Bir sistem için böyle bir hiper küp yönlendirme örneği 4 parachain ile b = 2 ve e = 2 şöyle olabilir: Aşama 0, her M mesajında: • sub0: eğer Mdest ∈{2, 3} ise sendTo(2) yoksa devam et • sub1: eğer Mdest ∈{2, 3} ise sendTo(3) yoksa devam et • sub2: eğer Mdest ∈{0, 1} ise sendTo(0) yoksa devam et • sub3: eğer Mdest ∈{0, 1} ise sendTo(1) yoksa devam et Aşama 1, her M mesajında: • sub0: eğer Mdest ∈{1, 3} ise sendTo(1) yoksa devam et • sub1: eğer Mdest ∈{0, 2} ise sendTo(0) yoksa devam et • sub2: eğer Mdest ∈{1, 3} ise sendTo(3) yoksa devam et • sub3: eğer Mdest ∈{0, 2} ise sendTo(2) yoksa devam et Buradaki iki boyutu ilk boyut olarak görmek kolaydır. hedef indeksin iki biti; ilk blok için yüksek dereceli bit tek başına kullanılır. İkinci blok anlaşmaları düşük dereceli bit ile. Her ikisi de gerçekleştiğinde (keyfi olarak sipariş) ardından gönderi yönlendirilecektir. 9kriptografik olarak güvenli sözde rastgele
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 16 6.6.5. Serendipity'yi en üst düzeye çıkarmak. Temelde bir değişiklik teklifte sabit toplam c2 −c validators görülecektir; her alt grupta c−1 validators. Her blok yerine validators'nin yapılandırılmamış bir yeniden bölümlenmesi var Parachain'ler arasında, bunun yerine her parachain alt grubu için, her validator benzersiz ve farklı bir numaraya atanacaktır Aşağıdaki blokta parachain alt grubu. Bu herhangi iki blok arasında herhangi bir değişken için değişmezliğe yol açar iki parachain çifti var, iki validators var Parachain sorumluluklarını değiştirdik. Bu, kullanılabilirlik konusunda mutlak garantiler elde etmek için kullanılamasa da (tek bir validator ara sıra devre dışı kalacaktır, hatta yardımsever), yine de genel durumu optimize edebilir. Bu yaklaşım komplikasyonsuz değildir. Parachain'in eklenmesi aynı zamanda yeniden yapılanmayı da gerektirecektir. validator kümesinin. Ayrıca validators sayısı parachain sayısının karesine bağlıdır, başlangıçta çok küçük başlayacak ve sonunda çok büyüyecekti çok hızlı, yaklaşık 50 parachain'den sonra savunulamaz hale geliyor. Bunların hiçbiri temel sorunlar değil. İlk durumda, validator kümelerinin yeniden düzenlenmesi olması gereken bir şeydir zaten düzenli olarak yapılıyor. validator boyutuyla ilgili olarak ayarlandı, çok küçük olduğunda birden fazla validator atanabilir aynı parachain'e bir tam sayı faktörü uygulayarak genel toplam validators. 6.6.4'te tartışılan Hypercube Routing gibi çok aşamalı bir yönlendirme mekanizması, çok sayıda validators gereksinimini hafifletmek çok sayıda zincir olduğunda. 6.7. Parachain Doğrulaması. A validator'in asıl amacı iyi ilişkilere sahip bir aktör olarak bir parachain'in Blok, herhangi bir durum geçişi, herhangi bir harici işlem dahil ancak bunlarla sınırlı olmamak üzere geçerlidir. giriş kuyruğundaki tüm bekleme noktaları ve son durum çıkış kuyruğundan. Sürecin kendisi oldukça basittir. validator önceki bloğu mühürledikten sonra özgürdürler aday parachain bloğu sağlamak için çalışmaya başlamak bir sonraki konsensüs turuna aday. Başlangıçta, validator bir parachain harmanlayıcı (sonraki bölümde anlatılacaktır) veya bir parachain harmanlayıcı aracılığıyla bir parachain blok adayını bulur. eş-validators. Parachain bloğu aday verileri bloğun başlığını, önceki bloğun başlığını içerir, dahil edilen tüm harici giriş verileri (Ethereum ve Bitcoin için, bu tür veriler işlemler olarak anılacaktır, ancak prensipte keyfi amaçlar için rastgele veri yapıları içerebilirler), çıkış kuyruğu verileri ve durum geçişi geçerliliğini kanıtlamak için dahili veriler (Ethereum için) bu, her bir işlemi yürütmek için gereken çeşitli durum/depolama düğümleri olacaktır). Deneysel kanıtlar, yeni bir Ethereum bloğu için bu tam veri kümesini gösteriyor en fazla birkaç yüz KiB olacaktır. Eş zamanlı olarak, henüz yapılmadıysa validator Başlangıçta önceki bloğun geçişinden önceki bloğun geçişine ilişkin bilgileri almaya çalışmak validators ve sonrası için imza atan tüm validators'den verilerin kullanılabilirliği. validator böyle bir aday bloğu aldığında, daha sonra bunu yerel olarak doğrularlar. Doğrulama işlemi parachain sınıfının validator modülünde bulunur; yazılması gereken fikir birliğine duyarlı yazılım modülü Polkadot'nin herhangi bir uygulaması için (prensipte olsa da) C ABI'ye sahip bir kütüphane, tek bir kütüphanenin uygulamalar arasında uygun şekilde paylaştırılmalıdır. yalnızca tek bir “referans” uygulamaya sahip olmaktan kaynaklanan güvenlik azalması). Süreç, önceki bloğun başlığını alır ve yakın zamanda üzerinde anlaşmaya varılan aktarma zinciri aracılığıyla kimliğini doğrular. hash kaydedilmesi gereken blok. Ana başlığın geçerliliği doğrulandıktan sonra özel parachain sınıfın doğrulama işlevi çağrılabilir. Bu, bir dizi veri alanını kabul eden tek bir işlevdir (kabaca daha önce verilenler) ve basit bir Boole değeri döndürmek bloğun geçerliliğini ilan ediyor. Bu tür doğrulama işlevlerinin çoğu ilk olarak doğrudan türetilebilen başlık alanları ana blok (örn. ebeveyn hash, sayı). Takip ediliyor bunu yaparak, herhangi bir dahili veri yapısını şu şekilde dolduracaklar: işlemleri ve/veya gönderileri işlemek için gerekli. Ethereum benzeri bir zincir için bu, bir için ihtiyaç duyulacak düğümleri içeren veritabanını deneyin. işlemlerin tam olarak yürütülmesi. Diğer zincir türlerinde şunlar olabilir: diğer ponarıcı mekanizmalar. İşlem tamamlandıktan sonra, giriş gönderileri ve harici işlemler (veya harici verilerin temsil ettiği şey) zincirin spesifikasyonuna göre dengelenmiş, yürürlüğe konmuştur. (Bir mantıklı varsayılan, tüm giriş gönderilerinin olmasını gerektirmek olabilir harici işlemlere hizmet verilmeden önce işlenir, ancak buna parachain mantığının karar vermesi gerekir.) Bu yasayla bir dizi çıkış noktası oluşturulacak. oluşturuldu ve bunların gerçekten eşleştiği doğrulanacak derleyicinin adayı. Son olarak, uygun şekilde doldurulmuş başlık, adayın başlığına göre kontrol edilecektir. Tamamen doğrulanmış bir aday blokla validator daha sonra başlığının hash'sına oy verebilir ve gerekli tüm doğrulama bilgilerini alt grubundaki ortak validator'lere gönderebilir. 6.7.1. Parachain Düzenleyicileri. Parachain harmanlayıcıları madencilerin görevlerinin çoğunu yerine getiren bağımsız operatörlerdir günümüzün blockchain ağlarında. Bunlar spesifiktir belirli bir parachain'e. Çalıştırmak için şunları yapmaları gerekir: hem röle zincirini hem de tam senkronizeyi koruyun Parachain. "Tam senkronize"nin kesin anlamı parachain sınıfına bağlı olacaktır ancak her zaman parachain giriş kuyruğunun mevcut durumunu içerecektir. Ethereum durumunda bu aynı zamanda en azından bakımı da içerir son birkaç bloğun Merkle ağacı veri tabanı, ancak ayrıca Bloom dahil çeşitli diğer veri yapılarını da içerir Hesabın varlığı, aile bilgileri, günlük kaydı için filtreler blok numarası için çıkışlar ve geriye doğru arama tabloları. İki zinciri senkronize tutmanın yanı sıra, ayrıca bir işlem kuyruğunu koruyarak ve uygun şekilde doğrulanmış işlemleri kabul ederek işlemler için "avlanmalı" halka açık ağdan. Sıra ve zincirle, her blokta seçilen validator'ler için (aktarma zinciri senkronize olduğundan kimliği bilinen) yeni aday bloklar oluşturabilir ve bunları geçerlilik kanıtı gibi çeşitli yardımcı bilgiler eş ağ. Zahmetine karşılık, içerdiği işlemlere ilişkin tüm ücretleri tahsil eder. Bunun etrafında çeşitli ekonomiler dönüyor düzenleme. Yoğun rekabetin olduğu bir piyasada teminat verenlerin fazlalığı varsa, işlemin gerçekleşmesi mümkündür ücretler teşvik amacıyla validators parachain ile paylaşılacaktır belirli bir harmanlayıcı bloğunun dahil edilmesi. Benzer şekilde,
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 17 bazı düzenleyiciler ihtiyaç duyulan ücretleri bile artırabilir bloğun daha çekici hale getirilmesi için ödeme yapılması validators. Bu durumda doğal bir pazarın oluşması gerekmektedir. daha yüksek ücretler ödeyen işlemler kuyruğu atlıyor ve zincire daha hızlı dahil olma. 6.8. Ağ oluşturma. Geleneksel blockchains üzerinde ağ oluşturma Ethereum ve Bitcoin gibi oldukça basit gereksinimlere sahiptir. Tüm işlemler ve bloklar basit, yönlendirilmemiş bir dedikoduyla yayınlanır. Senkronizasyon daha kapsamlıdır, özellikle Ethereum ile ancak gerçekte bu mantık şunun içinde yer alıyordu: birkaç istek ve yanıt mesajı türü etrafında çözümlenen protokolün kendisinden ziyade akran stratejisi. Ethereum devp2p protokolüyle mevcut protokol teklifleri konusunda ilerleme kaydederken, bu da birçok kişiye olanak sağladı alt protokoller tek bir eş bağlantı üzerinden çoğaltılacak ve dolayısıyla aynı eş katman paylaşımına sahip olacak ve birçok p2p protokolleri aynı anda, Ethereum kısmı protokol hala nispeten basit kaldı ve p2p protokol bir süredir önemli konularla tamamlanmamış durumda QoS desteği gibi işlevsellik eksik. Ne yazık ki, daha yaygın bir "web 3" protokolü oluşturma arzusu büyük ölçüde başarısız oldu, bunu kullanan tek proje açıkça bunlardı Ethereum toplu satıştan finanse edildi. Polkadot ile ilgili gereksinimler oldukça daha önemlidir. Tamamen tek tip bir ağ yerine, Polkadot her birinin akran yapısından ve çeşitli ağlardan farklı gereksinimleri olan çeşitli katılımcı türleri vardır Katılımcıların hakkında sohbet etme eğiliminde olacağı “yollar” özel veriler. Bu, önemli ölçüde daha yapılandırılmış bir ağ katmanı ve bunu destekleyen bir protokol anlamına gelir. muhtemelen gerekli olacaktır. Ayrıca, yeni tür “zincir” gibi gelecekteki eklemeleri kolaylaştıracak genişletilebilirlik, kendileri yeni bir katman yapısı gerektirir. Ağ oluşturmanın nasıl yapıldığına dair derinlemesine bir tartışma protokol bu belgenin kapsamı dışında görünebilir, bazı gereksinim analizleri makul olabilir. Yapabiliriz ağ katılımcılarımızı kabaca iki gruba ayırın (röle zinciri, parachainler) her biri üç alt kümeden oluşur. Yapabiliriz ayrıca parachain katılımcılarının her birinin yalnızca aksine kendi aralarında sohbet etmekle ilgileniyorlar diğer parachainlerdeki katılımcılar: • Aktarma zinciri katılımcıları: • Doğrulayıcılar: P, her biri için P[s] alt kümelerine bölünür paraşütle atlama • Kullanılabilirlik Garantörleri: A (bu, protokolün temel formunda Doğrulayıcılar tarafından temsil edilebilir) • Aktarma zinciri istemcileri: M (her birinin üyelerini not edin) Parachain seti aynı zamanda M'nin üyesi olma eğiliminde olacaktır) • Parachain katılımcıları: • Parachain Düzenleyicileri: C[0], C[1], . . . • Parachain Balıkçıları: F[0], F[1], . . . • Parachain istemcileri: S[0], S[1], . . . • Parachain ışık istemcileri: L[0], L[1], . . . Genel olarak belirli iletişim sınıflarını adlandırırız bu kümelerin üyeleri arasında gerçekleşme eğiliminde olacaktır: • P | bir <-> P | C:
dolu ayarlamak arasında validators/garantörler zorunluluk olmak iyi bağlantılara sahip için fikir birliğine varmak. • P[s] <-> C[s] | P[s]: Belirli bir parachain grubunun üyesi olan her validator dedikodu yapma eğiliminde olacaktır bu tür diğer üyelerle ve derleyicilerle Blok adaylarını keşfetmek ve paylaşmak için bu parachain'in. • A <-> P[s] | C | A: Her kullanılabilirlik garantörü fikir birliğine duyarlı çapraz zincirleri toplaması gerekecek kendisine atanan validator'lardan gelen veriler; derleyiciler aynı zamanda fikir birliği şansını da optimize edebilir kullanılabilirlik garantörlerine reklam vererek engelleyin. Ellerine geçtikten sonra veriler şu adrese dağıtılacak: fikir birliğini kolaylaştırmak için bu tür başka garantörler. • P[s] <-> A | P[s']: Parachain validators olacak önceki validator grubundan veya kullanılabilirlik garantörlerinden ek giriş verileri toplaması gerekiyor. • F[s] <-> P: Balıkçılar rapor verirken herhangi bir katılımcıyla ilgili bir hak talebi. • M <-> M | P | C: Genel aktarma zinciri istemcileri, verileri validator'lerden ve garantörlerden dağıtır. • S[s] <-> S[s] | P[ler] | C: Parachain istemcileri verileri validator/garantörlerden dağıtır. • L[s] <-> L[s] | S[s]: Parachain ışık istemcileri Verileri tam istemcilerden dağıtın. Verimli bir taşıma mekanizması sağlamak için “düz” bir yer paylaşımlı ağ (Ethereum'nin devp2p'si gibi) burada her biri düğüm, kendi uygunluk değerini (keyfi olmayan bir şekilde) farklılaştırmaz. akranlarının uygun olması muhtemel değildir. Makul ölçüde genişletilebilir akran seçimi ve keşif mekanizması muhtemelen ihtiyaç duyacaktır agresif olmasının yanı sıra protokole dahil edilecek Doğru türden akranları sağlamak için ileriye yönelik bir planlama planlamak "tesadüfen" bağlanıyorlardoğru zamanda harekete geçtik. Akran oluşturmanın kesin stratejisi her katılımcı sınıfı için farklı olacaktır: uygun şekilde ölçeklendirilmiş bir çoklu zincir, harmanlayıcıların ya sürekli olması gerekecek buna uygun olarak seçilen validator'lere yeniden bağlanılıyor veya validators alt kümesiyle devam eden anlaşmalara ihtiyaç var validator için işe yaramaz oldukları çoğu zaman bağlantılarının kesilmediğinden emin olmak için. Düzenleyiciler aynı zamanda doğal olarak bir tanesini korumaya çalışacaklardır. veya kullanılabilirlik garantörüne daha istikrarlı bağlantılar fikir birliğine duyarlı yaklaşımlarının hızlı bir şekilde yayılmasını sağlamak üzere kurulmuştur. veri. Kullanılabilirlik garantörleri çoğunlukla bir birbirleriyle ve validators ile istikrarlı bağlantı (konsensüs ve konsensüs açısından kritik parachain verileri için) onaylıyorlar) ve bazı derleyicilere (parachain için) veriler) ve bazı balıkçılar ve tam müşteriler (dağıtım için) bilgi). Doğrulayıcılar diğer validator'leri, özellikle de aynı alt gruptakileri ve herhangi bir onlara parachain blok adayları sağlayabilecek harmanlayıcılar. Balıkçılar ve genel bayrak zinciri ve parachain istemciler genellikle bağlantıyı açık tutmayı hedeflerler. validator veya garantör, ancak benzer birçok başka düğüm var aksi takdirde kendilerine. Parachain hafif istemcileri de benzer şekilde parachain'in tam istemcisine bağlanmayı hedefleyecektir. sadece diğer parachain ışık istemcileri olmasa da. 6.8.1. Akran Kaybı Sorunu. Temel protokol teklifinde, bu alt kümelerin her biri, doğrulama için atanan validator'ler olarak her blokta rastgele olarak değişir. Parachain geçişleri rastgele seçilir. Bu olabilir farklı (eş olmayan) düğümlerin bir sorun olması gerekir birbirleri arasında veri aktarımı. Ya güvenmek gerekir adil bir şekilde dağıtılmış ve iyi bağlanmış bir eş ağ
POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 18 Atlama mesafesinin (ve dolayısıyla en kötü durumdaki gecikmenin) yalnızca ağ boyutunun logaritmasıyla arttığından emin olun (Kademlia benzeri bir protokol [13] burada yardımcı olabilir) veya bir eş kümesini korumak için gerekli bağlantı anlaşmasının gerçekleşmesine izin vermek amacıyla daha uzun blok süreleri uygulayın. düğümün mevcut iletişim ihtiyaçlarını yansıtır. Bunların hiçbiri mükemmel çözüm değil: uzun blok süreleri ağa zorlanmak onu işe yaramaz hale getirebilir özel uygulamalar ve zincirler. Hatta mükemmel bir adil ve bağlı ağ önemli miktarda israfa neden olacaktır İlgisiz düğümlerin sahip olması nedeniyle ölçeklendikçe bant genişliği onlara faydası olmayan verileri iletmek. Her iki yön de çözümün bir parçasını oluştursa da, Gecikmeyi en aza indirmeye yardımcı olacak makul bir optimizasyon bu parachain'in volatilitesini kısıtlamak için validator üyeliği yalnızca blok serileri arasında yeniden atayarak (örneğin 15'li gruplar halinde, 4 saniyede bir blok süresi, bağlantıların yalnızca bir kez değiştirilmesi anlamına gelir dakika) veya üyeliği kademeli olarak değiştirerek, örn. bir seferde bir üye tarafından değiştiriliyor (örneğin eğer varsa) Her bir parachain'e 15 validator atanmışsa, bu durumda ortalama olarak tamamen benzersiz olanlarla arasında tam bir dakika olacaktır. setleri). Akran kaybının miktarını sınırlayarak ve avantajlı akran bağlantılarının iyi bir şekilde kurulmasını sağlayarak Parachain'in kısmi öngörülebilirliği yoluyla ilerlemek ayarlar, her düğümün kalıcı olarak korunmasına yardımcı olabiliriz tesadüfen akran seçimi. 6.8.2. Etkili Bir Ağ Protokolüne Giden Yol. Muhtemelen En etkili ve makul geliştirme çabası, yuvarlanmak yerine önceden var olan bir protokolün kullanılmasına odaklanacaktır. bizim. Çeşitli eşler arası temel protokoller mevcuttur Ethereum'nin kendi devp2p'sini kullanabilir veya artırabiliriz [22], IPFS'nin libp2p'si [1] ve GNU'nun GNUnet'i [4]. Bu protokollerin tam bir incelemesi ve bunların bir Belirli yapısal garantileri, dinamik eş yönlendirmeyi ve genişletilebilir alt protokolleri destekleyen modüler eş ağ bu belgenin kapsamı dışındadır ancak bir Polkadot'nin uygulanmasında önemli bir adım. 7. Protokolün Uygulanabilirliği 7.1. Zincirler Arası İşlem Ödemesi. Harika bir zaman Ethereum'nin gazı gibi bütünsel bir hesaplama kaynağı muhasebe çerçevesine olan ihtiyacın ortadan kaldırılmasıyla bir miktar özgürlük ve basitlik kazanılır, bu önemli bir soruyu gündeme getirir: Gaz olmadan bir parachain nasıl yapılır? Başka bir parachain'in onu hesaplama yapmaya zorlamasını önlemek mi istiyorsunuz? İşlem sonrası giriş kuyruğuna güvenebiliriz Bir zincirin diğerine spam göndermesini önlemek için tamponlar işlem verileri, işlem sırasında spam gönderilmesini önlemek için protokol tarafından sağlanan eşdeğer bir mekanizma yoktur. Bu daha üst seviyeye bırakılmış bir sorundur. Zincirlerden beri gelen mesajlara keyfi anlambilim eklemekte özgürdürler. işlem sonrası veriler, hesaplamanın yapılmasını sağlayabiliriz başlamadan önce ödenmesi gerekmektedir. Buna benzer bir şekilde Ethereum Serenity'nin benimsediği model, hayal edebiliyoruz izin veren bir parachain içindeki "zorla girme" sözleşmesi validator karşılığında ödeme garanti edilecek belirli bir hacimde işlem kaynağının sağlanması. Bu kaynaklar gaz gibi bir şeyle ölçülebilir, ancak aynı zamanda öznel uygulama süresi veya Bitcoin benzeri sabit ücret modeli gibi tamamen yeni bir model de olabilir. Bu tek başına o kadar da kullanışlı değil çünkü zincir dışı arayanın onlara ulaşabildiğini kolayca varsayamayız. Hırsızlık tarafından tanınan değer mekanizması ne olursa olsun sözleşme. Ancak kaynak zincirinde ikincil bir “kırılma” sözleşmesi hayal edebiliriz. İki sözleşme birlikte birbirini tanıyan bir köprü oluşturacak ve değer eşdeğerliği sağlar. (Stake etme-tokens, mevcut her biri ödemeler dengesini dengelemek için kullanılabilir.) Böyle başka bir zincire çağrı yapmak, vekillik yapmak anlamına gelir ulaşımı sağlayacak olan bu köprüden zincirler arasında değer aktarımının müzakere edilmesi Hedef parachain'de gereken hesaplama kaynakları için ödeme yapın. 7.2. Ek Zincirler. iken the ekleme arasında bir parachain nispeten ucuz bir işlemdir, ücretsiz değildir. Daha fazla parachain, parachain başına daha az validators anlamına gelir ve sonunda her biri bir değere sahip daha fazla sayıda validator azaltılmış ortalama tahvil. Parachain'e saldırmanın daha küçük bir zorlama maliyeti sorunu, balıkçılar, büyüyen validator grubu aslında bir altta yatan fikir birliğinin mekaniği nedeniyle daha yüksek gecikme derecesiama. Ayrıca her parachain validators'yi üzme potansiyelini de beraberinde getiriyor aşırı külfetli doğrulama algoritması. Bu nedenle, validators tutarında bir "fiyat" olacaktır. ve/veya paydaş topluluğunun çıkaracağı yeni bir parachain eklenmesi. Zincirlere yönelik bu pazar muhtemelen aşağıdakilerden birinin eklendiğini görebilirsiniz: • Bir parçası haline getirilecek net katkı payı ödemesi muhtemelen sıfır olan zincirler (staking tokens'nin kilitlenmesi veya yakılması açısından) (örn. konsorsiyum zincirleri, Doge zincirleri, uygulamaya özel zincirler); • ağa gerçek değer sağlayan zincirler belirli işlevlerin eklenmesi zor başka bir yere ulaşmak (örneğin gizlilik, dahili ölçeklenebilirlik, hizmet bağlantıları). Esasen, paydaş topluluğunun şunları yapması gerekecektir: finansal veya finansal olarak alt zincirler eklemeye teşvik edilebilir röleye özellikli zincirler ekleme arzusuyla. Eklenen yeni zincirlerin çok büyük bir etki yaratacağı öngörülüyor. yeni zincirlerin çıkarılmasına olanak tanıyan kısa bir çıkarma süresi taviz verme riski olmadan denenebilir orta veya uzun vadeli değer teklifi. 8. Sonuç Bir kişinin bir makale yazmak için izleyebileceği bir yönü özetledik önceden var olan belirli protokollerle geriye doğru uyumlu olma potansiyeline sahip, ölçeklenebilir, heterojen çok zincirli protokol blockchain ağlar. Böyle bir protokol kapsamında katılımcılar İstisnai derecede özgür bir şekilde genişletilebilecek ve mevcut kullanıcılar için tipik bir maliyet olmaksızın genişletilebilecek genel bir sistem oluşturmak için aydınlanmış kişisel çıkarlar doğrultusunda çalışın. standart bir blockchain tasarımından gelir. biz verdik dahil olacak mimarinin kaba bir taslağı katılımcıların doğası, ekonomik teşvikleri ve dahil olmaları gereken süreçler. bizde temel bir tasarım tanımladı ve onun güçlü yönlerini tartıştı ve sınırlamalar; buna göre başka talimatlarımız da var bu sınırlamaları hafifletebilir ve tamamen ölçeklenebilir bir blockchain çözümüne doğru daha fazla zemin sağlayabilir.POLKADOT: HETEROJEN ÇOK ZİNCİRLİ BİR ÇERÇEVE VİZYONU TASLAK 1 19 8.1. Eksik Materyal ve Açık Sorular. Ağ çatallanması, protokolün farklı uygulamalarından dolayı her zaman bir olasılıktır. Böyle bir durumdan iyileşme olağanüstü durum tartışılmadı. Ağın zorunlu olarak sıfırdan farklı bir sonuçlandırma periyoduna sahip olacağı göz önüne alındığında, Aktarım zinciri çatallanmasından kurtulmak büyük bir sorun olmasa da, dikkatli bir entegrasyon gerektirecektir. fikir birliği protokolü. Tahvillere el konulması ve bunun tersine ödül hükmü derinlemesine araştırılmamıştır. Şu anda ödülleri varsayıyoruz kazanan her şeyi alır esasına göre sağlanır: bu Balıkçılara en iyi teşvik modelini verin. Kısa süreli bir taahhüt-açıklama süreci birçok balıkçının Ödüllerin daha adil dağılımını sağlayarak ödülü talep etmek, ancak süreç ek gecikmeye yol açabilir uygunsuz davranışın tespiti. 8.2. Teşekkürler. Hepsine çok teşekkürler Bunu belli belirsiz bir hale getirmeye yardımcı olan düzeltmenler prezentabl şekil. Özellikle Peter Czaban, Bjorn Wagner, Ken Kappler, Robert Habermeier, Vitalik Buterin, Reto Trinkler ve Jack Petersson. Herkese teşekkürler Fikirlere veya başlangıçlara katkıda bulunan insanlar Bu konuda Marek Kotewicz ve Aeron Buchanan özel olarak anılmayı hak ediyor. Ve yardımları için herkese teşekkürler yol boyunca. Tüm hatalar bana aittir. Bu çalışmanın bazı bölümleri, ilk araştırmalar da dahil olmak üzere fikir birliği algoritmaları kısmen İngilizler tarafından finanse edildi Innovate UK programı kapsamında hükümet.
プロトコルの詳細
プロトコルは大きく 3 つに分類できます。 部分: コンセンサスメカニズム、パラチェーンインターフェイス そしてチェーン間トランザクションルーティング。 6.1.リレーチェーン 操作。の リレーチェーン するだろう おそらく、Ethereum とほぼ同様のチェーンである可能性があります。 アドレスをアカウントにマッピングする状態を伴う状態ベースです 情報、主に残高と(リプレイを防ぐため) トランザクションカウンター。ここにアカウントを配置することで、アイデンティティが持つアカウントを提供するという 1 つの目的が達成されます。 システム内のステークの量。7 ただし、顕著な違いがあります。 • コントラクトはトランザクションを通じて展開できません。リレーチェーン上のアプリケーション機能を回避したいという要望から、それは行われません。 契約の公的展開をサポートします。 • コンピューティング リソースの使用量 (「ガス」) は考慮されません。 公的に使用できる唯一の機能であるため、 ガス会計の背後にある理論的根拠は修正されるでしょう もう成立しません。そのため、定額料金が適用されます すべてのケースで、より高いパフォーマンスを可能にします。 動的コードの実行が必要になる場合があります よりシンプルなトランザクション形式。 • リストされたコントラクトでは、自動実行とネットワークメッセージ出力を可能にする特別な機能がサポートされています。 リレーチェーンに VM があり、それが EVM をベースにしているため、最大限の簡素化を実現するために多くの変更が加えられています。 おそらく 多くの組み込みコントラクトがあります ( Ethereum のアドレス 1 ~ 4) を使用して、プラットフォーム固有の コンセンサス契約を含む管理すべき義務、 validator コントラクトとパラチェーン コントラクト。 EVM でない場合は、WebAssembly [2] (wasm) バックエンドが最も可能性の高い代替手段です。この場合は全体的に 構造は似ていますが、その必要はありません Wasm が実行可能なターゲットである組み込みコントラクトの場合 未熟な言語ではなく汎用言語向け EVM の言語は限定されています。 現在の Ethereum プロトコルからのその他の逸脱も十分に考えられます。たとえば、 同じブロック内で競合しないトランザクションを並列実行できるトランザクション受信形式。 Serenity シリーズの変更で提案されているとおりです。 可能性は低いですが、セレニティのようなものである可能性があります。 「純粋な」チェーンをリレー チェーンとして展開できるため、 staking token のようなものを管理するための特定の契約 それを基本的な部分にするのではなく、バランスを取る チェーンのプロトコル。現時点では、その可能性は低いと考えています 十分に優れたプロトコルの簡素化を提供します。 さらなる複雑さと不確実性が伴う価値がある それを開発する上で。 7 特定の保有者がシステム全体のセキュリティに対して責任を負う金額を表す手段として、これらのステーク アカウントは、 必然的に何らかの経済的価値をエンコードします。ただし、このような値を使用する意図はありませんので、ご理解ください。 いかなる方法であっても、現実世界の商品やサービスと交換することを目的とする場合、token を次のものに喩えるものではないことに注意してください。 通貨であるため、リレーチェーンはアプリケーションに関する虚無的な哲学を保持しています。POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 10 コンセンサス メカニズム、validator セット、検証メカニズム、およびパラチェーンを管理するために必要な機能の小さな部分が多数あります。これら モノリシックプロトコルの下で一緒に実装できます。ただし、モジュール性を高めるため、これらをリレーチェーンの「契約」と呼びます。これは、 それらはオブジェクトであることを意味すると解釈されます(という意味で) オブジェクト指向プログラミング)はリレーチェーンのコンセンサスメカニズムによって管理されますが、必ずしもそうではありません これらは、EVM のようなオペコードのプログラムとして定義されていません。 たとえそれらが アカウントシステム。 6.2.ステーキング契約。このコントラクトは validator セットを維持します。以下を管理します。 • 現在 validator であるアカウント。 • 短くするとvalidatorsになる可能性があります 気づいてください。 • どのアカウントが指名権を賭けているか validator; • staking ボリューム、許容可能なペイアウト率とアドレス、および短期 (セッション) ID を含むそれぞれのプロパティ。 アカウントがなりたいという願望を登録できるようになります。 結合された validator (その要件とともに)、何らかのアイデンティティを指名し、既存の結合された validator がこのステータスを終了する希望を登録します。それも 検証および正規化メカニズムのための機構自体が含まれています。 6.2.1.ステーク - token 流動性。一般的に望ましいのは、 合計 staking token をできるだけ多くする ネットワーク保守業務に関与して以来 これは、ネットワーク セキュリティを staking token 全体の「時価総額」に直接結び付けることになります。これは簡単にできます 通貨を吊り上げ、validator として参加する人に収益を分配することでインセンティブが与えられます。ただし、これを行うと問題が発生します。token 減額の罰を受けてステーキングコントラクトに固定されているのに、どうすればかなりの部分が十分に残るのでしょうか 価格発見を可能にするために液体を使用しますか? これに対する 1 つの答えは、単純なデリバティブ契約を許可し、基礎となるステーク済み token 上で代替可能な token を確保することです。これを信頼性のない方法で手配するのは困難です。 さらに、これらのデリバティブ token は、異なるユーロ圏政府の債券が代替不可能であるのと同じ理由で同等に扱うことができません。 原資産が故障して、 無価値。ユーロ圏各国政府では、 デフォルト。 validator でステーキングされた token では、validator が 悪意を持って行動し、罰せられます。 私たちの理念に従い、すべての token を賭けるわけではないという最も単純な解決策を選択します。これはつまり、 token の一部 (おそらく 20%) は強制的に液体のままになります。これはセキュリティの観点からは不完全ですが、根本的な違いを生む可能性は低いです。 ネットワークのセキュリティ。保釈金没収によって可能な賠償金の80%はまだ支払えるだろう 100% staking の「完璧なケース」と比較します。 ステーキングされたtokenとリキッドtokenの比率は、リバース オークション メカニズムを通じて非常に簡単に目標とすることができます。 基本的に、token 保有者は、validator になることに興味があります。 それぞれが、staking 契約に次のようなオファーを投稿します。 要求される最低ペイアウト率 部分。 各セッションの開始時 (セッションは 定期的に、おそらく 1 時間に 1 回程度の頻度で発生します) validator スロットは、それぞれの希望に応じて埋められます validator の賭け金とペイアウト率。考えられるアルゴリズムの 1 つ というのは、これは最低のオファーを持った人たちを採用することになるからです。 目標とする合計賭け金を超えない賭け金を表す スロット数で割った値であり、その半分の下限以上となります。スロットが埋まらない場合は、 下限は、満足するために、何らかの係数によって繰り返し削減される可能性があります。 6.2.2.指名する。信頼性の高い指名が可能 staking token をアクティブな validator に与えます。 validator の職務の責任。作品のノミネート 承認投票システムを通じて。各推薦者候補者は、staking 契約に指示を投稿できます。 1 つ以上の validator アイデンティティを表現し、その下に 彼らは自分たちの絆を託す用意があるという責任を持っています。 各セッションでは、推薦者の絆が分散されます。 1 つ以上の validator で表されます。分散アルゴリズムは、合計が等しい validator のセットを最適化します。 絆。指名者の債券は、validator a の有効な責任の下に置かれます。利息を得るか、苦しむか それに応じて刑罰も軽減される。 6.2.3.保証金の没収/バーニング。特定のvalidator行動により、懲罰的に絆が減らされます。もし ボンドが許容最小値を下回った場合、 セッションが途中で終了し、別のセッションが開始されました。罰せられるvalidatorの不正行為のリストはすべてではありませんが、次のとおりです。 • パラチェーングループの一員であるため、提供できない パラチェーンブロックの有効性についてのコンセンサス。 • 無効なファイルの有効性を確認するために積極的に署名する。 パラチェーンブロック。 • 以前は出力ペイロードを提供できなかった 利用可能として投票しました。 • 合意プロセス中の非アクティブ。 • 競合するフォーク上のリレーチェーンブロックを検証する。 不正行為の一部のケースでは、ネットワークの完全性が脅かされ(無効なパラチェーン ブロックへの署名やフォークの複数の側面の検証など)、その結果、ボンドの全体的な削減を通じて実質的な追放が発生します。で その他、それほど深刻ではないケース (例: コンセンサスにおける不活動) プロセス)、または責任を正確に割り当てることができない場合(非効率なグループの一員である場合)、ごく一部 代わりに、債券の全額に罰金が課される場合があります。後者の場合、これは サブグループのチャーンとうまく連携して、悪意のある行為が確実に行われるようにします。 ノードは、巻き添えで被害を受けた善良なノードよりも大幅に多くの損失を被ります。 場合によっては (マルチフォーク検証や無効な場合など) サブブロック署名) validator は定期的に検証されるため、互いの不正行為をそれ自体で簡単に検出できません。 各パラチェーンブロックの作成は非常に困難な作業になります。ここ 社外の関係者の支援を得る必要がある そのような不正行為を検証して報告するための検証プロセス。当事者は、そのような活動を報告すると報酬を受け取ります。彼らの「漁師」という言葉は、ありそうもないことに由来しています。 そのような報酬の。 通常、これらの事件は非常に深刻であるため、私たちは、没収された保証金から報酬が簡単に支払われることを想定しています。 一般に、燃焼のバランスをとることを好みます。 (つまり、ゼロに減らす) ではなく、再割り当てを使用します。 大規模な再配分を試みています。これには次のような効果があります
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 11 token の全体的な値を増やし、 特定のネットワークではなく、ある程度のネットワーク全般 発見に関与した当事者。 これは主に安全のためです メカニズム: 大量のものが関与するため、すべてが揃った場合、極端かつ急性の行動の奨励につながる可能性があります。 単一の対象に与えられます。 一般に、報酬は、ネットワークにとって検証を価値のあるものにするのに十分な額であることが重要ですが、ネットワークのフロントにかかるコストを相殺できるほど大きくないことが重要です。 資金力があり、巧妙に組織された「業界レベル」の犯罪者 不運な validator に対してハッキング攻撃を行い、不正行為を強制します。 このようにして、請求額は通常、ゼロになるはずです。 誤ったvalidatorの直接結合より大きい。 不正行為をしたり、報奨金を得るために自分自身を報告したりすることによって生じる倒錯的なインセンティブ。これは明示的に対処できます になるための最低直接債券要件を通じて validator または、保証金がほとんど預けられていない validator には大きなインセンティブがないことを推薦者に教育することによって暗黙的に 行儀よく振る舞うこと。 6.3.パラチェーンレジストリ。各パラチェーンは次のように定義されます。 このレジストリ。これは比較的単純なデータベースのような構造であり、静的情報と動的情報の両方を保持します。 各チェーン。 静的情報には、チェーン インデックス (単純な 整数)、検証プロトコル ID とともに、 異なるクラスを区別する手段 パラチェーンを使用することで、正しい検証アルゴリズムを実現できます。 有効な候補者を推薦するよう委託されたvalidatorsによって運営されています。最初の概念実証では、配置に焦点を当てます。 新しい検証アルゴリズムがクライアント自体に組み込まれるため、事実上、毎回プロトコルのハードフォークが必要になります。 チェーンの追加クラスが追加されました。結局のところ、 検証アルゴリズムを指定できる場合があります。 クライアントが安心して利用できるよう、厳密かつ効率的な方法です。 新しいパラチェーンを効果的に操作できる ハードフォーク。これに対する考えられる手段の 1 つは、次のように指定することです。 十分に確立されたパラチェーン検証アルゴリズム、 WebAssembly など、ネイティブにコンパイルされたプラットフォームに依存しない言語。判断するには追加の調査が必要です これが本当に実現可能かどうかはわかりませんが、もし可能であれば、 これにより、ハードフォークを排除するという大きな利点が得られます 永遠に。 動的情報には、グローバルな合意が必要なトランザクション ルーティング システムの側面が含まれます。 パラチェーンの入力キューとして(セクション6.6で説明)。 レジストリにはパラチェーンのみを追加できます 国民投票の完全な投票を通じて。これはなんとかなるだろう 内部に配置されますが、外部に配置される可能性が高くなります。 再利用を容易にするための住民投票契約 より一般的なガバナンスコンポーネント。パラメータは 投票要件 (例: 必要な定足数、過半数 必須)追加チェーンの登録など、 あまり正式ではないシステムのアップグレードは「マスター」で規定されます。 憲法」に従うが、かなり伝統的なものに従う可能性が高い 少なくとも最初はパス。正確な配合はできていない 現在の作業の範囲ですが、例:システム全体の 3 分の 1 以上で可決する 3 分の 2 の圧倒的多数 積極的に投票することが賢明な出発点かもしれません。 追加の操作には、パラチェーンの一時停止と削除が含まれます。 サスペンションは願わくば決してないでしょう しかし、それは最低限の安全策として設計されています パラチェーンの検証システムには解決しがたい問題があります。それが起こる可能性がある最も明白な例は、 必要なのは、実装間のコンセンサスが重要な違いであるため、validator は同意できない 有効性またはブロック。バリデーターは使用することをお勧めします。 複数のクライアント実装を可能にするために 保釈金を没収される前にそのような問題を発見すること。 停止は緊急措置なので、 むしろ動的なvalidator投票の後援の下で 住民投票よりも。再インストールはどちらも可能です validators または住民投票から。 パラチェーンの完全な除去は、 国民投票の後、それに伴い、 ~への秩序ある移行を可能にするための実質的な猶予期間 スタンドアロンのチェーンか、他のチェーンの一部になるかのどちらか コンセンサスシステム。 猶予期間はおそらく次のとおりです 数か月のオーダーで、異なる順序でパラチェーン レジストリにチェーンごとに設定される可能性があります。 パラチェーンは、以下に応じてさまざまな猶予期間を楽しむことができます。 彼らの必要性。 6.4.リレーブロックの密閉。シーリングとは、本質的には、 正規化のプロセスへ。つまり基礎データです どれを変換するオリジナルを根本的に特異で意味のあるものにマッピングします。 PoW チェーンの下では、 封印は事実上採掘と同義です。私たちの場合、 これには、validators からの、有効性、可用性、正規性に関する署名付きステートメントの収集が含まれます。 特定のリレーチェーン ブロックとパラチェーン ブロック それは表します。 基礎となる BFT コンセンサス アルゴリズムの仕組みは、現在の作業の範囲外です。 させていただきます 代わりに、を想定するプリミティブを使用してそれを記述します。 合意形成ステートマシン。最終的に私たちが期待するのは、 多くの有望なBFTコンセンサスに触発される コア内のアルゴリズム。 Tangaora [9] (BFT の亜種) ラフト [16])、テンダーミント [11]、ハニーバジャーBFT [14]。 アルゴリズムは複数のパラチェーンで並行して合意に達する必要があるため、通常のアルゴリズムとは異なります。 blockchain コンセンサス メカニズム。一度は コンセンサスに達した場合、そのコンセンサスを記録することができます 以下のいずれかによって提供できる反駁できない証拠において 参加者はそれに参加します。不正行為も想定されます プロトコル内では通常、小さな値に減らすことができます。 不正行為を行った参加者を含むグループを最小限に抑える 罰を与える際の巻き添え被害。8 私たちの署名済みステートメントの形式をとった証明は、リレーチェーンブロックのヘッダーに一緒に配置されます 他の特定のフィールド、特にリレーチェーンのステートトライルートとトランザクショントライルート。 の 封印 プロセス かかります 場所 下 ある 独身 合意形成 仕組み アドレス指定 両方 の リレーチェーンのブロックとパラチェーンのブロック リレーのコンテンツの一部: パラチェーンはサブグループによって個別に「コミット」されてから照合されるわけではありません 後で。これにより、リレーチェーンのプロセスがより複雑になりますが、システム全体のコンセンサスを 1 つの段階で完了できるため、遅延が最小限に抑えられ、 非常に複雑なデータ可用性要件に対応します。 以下のルーティング プロセスに役立ちます。 8 Tendermint BFT やオリジナルの Slasher などの既存の PoS ベースの BFT コンセンサス スキームは、これらの主張を満たしています。
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 12 各参加者のコンセンサスマシンの状態は、 単純な (2 次元) テーブルとしてモデル化できます。各参加者 (validator) は、次の形式で一連の情報を持っています。 各パラチェーン ブロック候補およびリレーチェーン ブロック候補に関する他の参加者からの署名付きステートメント (「投票」) の合計。情報のセットは 2 つです データの: 可用性: あります これ validator 持っています 出口 このブロックからのトランザクションポスト情報なので、 次のブロックのパラチェーン候補を適切に検証できますか?彼らは投票するかもしれない 1 (既知) または 0 (まだ不明)。かつて彼らは 1 票を投じる場合、彼らは同様に投票することを約束します。 このプロセスの残りの部分。そうでない後の投票 これが処罰の理由であることを尊重してください。 有効性: パラチェーン ブロックは有効であり、すべて有効です。 外部参照データ (例: 取引) 利用可能ですか?これは、投票しているパラチェーンに割り当てられている validator にのみ関係します。 1 (有効)、-1 (無効)、または 0 のいずれかに投票できます。 (まだ知られていません)。一度非ゼロに投票すると、 残りの期間もこの方法で投票することを約束します プロセス。これを尊重しない後の投票 が処罰の根拠となります。 すべての validator は投票を提出する必要があります。投票は上記のルールに従って再提出することができます。の進行状況 コンセンサスは、各パラチェーン上で並行して発生する複数の標準 BFT コンセンサス アルゴリズムとしてモデル化できます。これらは相対的な要因によって潜在的に妨げられるため、 少数の悪意のある攻撃者が集中している 単一のパラチェーン グループでは、全体的なコンセンサスが存在します。 バックストップを確立し、最悪のシナリオを制限します。 1 つまたは複数の無効なパラチェーン ブロックのみでデッドロック (および 責任者には一連の懲罰を科す)。 個々のブロックの有効性に関する基本規則 (これにより、validator の合計セットが全体として次のようになります) 独自のパラチェーン候補となることで合意 正規リレーから参照されます): • validator の少なくとも 3 分の 2 が肯定的に投票し、否定的に投票する人がいない必要があります。 • 出力キュー情報の利用可能性に肯定的に投票している validator が 3 分の 1 を超えている必要があります。 有効性に関して少なくとも 1 つの肯定的な投票と少なくとも 1 つの否定的な投票がある場合、例外条件が作成されます。 validator のセット全体が投票して決定する必要があります 悪意のある当事者がいる場合、または事故があった場合 フォーク。有効・無効以外の第三の投票 これは両方に投票することと同等です。つまり、 ノードには矛盾した意見があります。この原因として考えられるのは、 ノードの所有者は複数の実装を実行しています。 一致しない場合は、プロトコルに曖昧さがある可能性があることを示しています。 すべての投票が完全な validator セットからカウントされた後、次の場合 負けた意見は少なくともある程度の割合を占める( パラメータ化される。多くても半分、おそらく大幅に少ない) 勝利意見の投票のうち、次のように仮定されます。 偶発的にパラチェーンがフォークされた場合、パラチェーンはコンセンサスプロセスから自動的に一時停止されます。そうでない場合は、悪質な行為とみなし、処罰します。 反対意見に投票した少数派。 結論は、次のことを示す一連の署名です。 正規性。その後、リレーチェーンブロックを密閉することができます そして次のブロックを封印するプロセスが始まりました。 6.5.シールリレーブロックの改良。その間 このシール方法はシステムの動作を強力に保証しますが、スケールアウトはあまりうまくいきません すべてのパラチェーンの鍵情報には、 すべての validator の 3 分の 1 以上で可用性が保証されています。 これは、すべての validator の責任の足跡が チェーンが追加されると増加します。 オープンコンセンサスネットワーク内でのデータの可用性 これは本質的に未解決の問題ですが、validator ノードにかかるオーバーヘッドを軽減する方法はあります。シンプルな 1 つの 解決策は、validators が負担しなければならないことを認識することです データの可用性に対して責任を負うため、データ自体を実際に保存、通信、複製する必要はありません。 セカンダリ データ サイロ。おそらく関連する (あるいは、まさに 同じ)このデータを編集する照合者は、 validator が利息/収入の一部を支払いとして提供することで、利用可能性を保証するというタスク。 ただし、これによりある程度の中間的なスケーラビリティは得られるかもしれませんが、それでも根本的な問題の解決にはなりません。それ以来 チェーンを追加するには、通常、追加の validator が必要となり、継続的なネットワーク リソースの消費 (特に帯域幅の点で) は の 2 乗で増加します。 の鎖は長期的には維持できない性質です。 結局のところ、我々は頭を打ち続けることになるだろう という基本的な制限に反して、 安全に利用できるとみなされるコンセンサスネットワーク、 継続的な帯域幅要件は合計のオーダーに相当します validators 倍の合計入力情報。これは次の理由によるものです 信頼できないネットワークでは、データ ストレージのタスクを多くのノードに適切に分散できず、 処理という非常に分散可能なタスクは別として。 6.5.1.レイテンシーの紹介。これを和らげる一つの手段 ルールは、即時性の概念を緩和することです。 可用性に関して 33%+1 validators の投票をすぐにではなく最終的にのみ要求することで、指数関数的なデータ伝播をより効果的に活用し、データ交換のピークを平準化することができます。 合理的な平等(証明されていないが) 次のようになります: (1) レイテンシ = 参加者 × チェーン 現在のモデルでは、システムのサイズが拡大します 処理が確実に行われるようにチェーンの数を設定します。 配布された。各チェーンには少なくとも 1 つの validator が必要であり、可用性証明書を定数に固定するためです。 validator の割合が増加すると、参加者も同様に増加します チェーンの数で。最終的には次のようになります。 (2) レイテンシ = サイズ2 つまり、システムが成長するにつれて、必要な帯域幅と可用性が得られるまでの遅延がシステム全体で判明します。 ネットワーク。番号としても特徴付けられます。 ファイナリティ前のブロックの数は、その二乗に応じて増加します。これは これは実質的な成長要因であるが、それが顕著な障害となり、私たちを「非フラット」パラダイムに追い込む可能性がある 複数の「Polkadot」を階層に構成するなど リレーチェーンのツリーを介したポストのマルチレベルルーティング用。
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 13 6.5.2.一般参加。もう一つ考えられる方向性 それは、プロセスへの一般の参加を求めることです。 マイクロクレームシステム。漁師と同じように、 主張するvalidatorを取り締まる外部の関係者である可能性があります 可用性。 彼らの任務は、そのような能力を証明できないと思われる人物を見つけることです。 そうすることで彼らは 他の validator に対してマイクロ苦情を申し立てることができます。捕虜か シビル攻撃を軽減するためにステーキングボンドが使用される可能性があります そうなるとシステムはほとんど役に立たなくなります。 6.5.3.可用性の保証者。最終的なルートは次のとおりです 結合された validator の 2 番目のセットを「可用性」として指名します。 保証人」。これらは通常の validator と同様に結合され、同じセットから取得されることもあります (ただし、その場合、少なくともセッションごとに、長期にわたって選択されることになります)。通常の validator とは異なり、 パラチェーン間で切り替えるのではなく、 すべての重要なチェーン間データの可用性を証明するために単一のグループを形成します。 これには、参加者とチェーン間の等価性が緩和されるという利点があります。 基本的に、チェーンは次のことができます。 (元のチェーン validator セットとともに) 成長しますが、 参加者、特にデータ可用性の証明に参加する人々は、少なくとも準線形性を維持できます。 そしておそらく一定です。 6.5.4.照合者の設定。この重要な側面の 1 つは、 このシステムは、健全な選択が行われることを保証することを目的としています。 特定のパラチェーンでブロックを作成するコレーター。もし 単一の照合者がパラチェーンを支配し、その後いくつかの攻撃を行った が不足する可能性が高いため、より実現可能になります。 外部データの利用可能性はそれほど明らかではありません。 1 つのオプションは、パラチェーン ブロックに人工的に重み付けすることです。 さまざまな照合者を優先するための擬似ランダム メカニズム。まず第一に、次のようにします。 validators が支持するコンセンサス メカニズムの一部として パラチェーンブロック候補は「より重い」と判定されました。 同様に、validator に次のことを試みるよう奨励する必要があります。 見つけられる最も重いブロックを提案します。これはおそらく これは、報酬の一部を候補者の体重に比例させることで行われます。 照合者に合理的な公平性が与えられるようにするため 彼らの候補者が勝利者として選ばれる可能性 候補者が合意に達した場合、私たちは特定の重要性を決定します。 パラチェーンブロック候補は、各照合器に接続されたランダム関数で決定されます。 たとえば、 照合者の住所間の XOR 距離測定値 および暗号的に安全な擬似乱数 ブロックが作成されるポイントの近くで決定される (概念的な「当たりチケット」)。これにより、それぞれに効果的な効果が得られます。 照合者 (より具体的には、各照合者の住所) 候補ブロックが「勝つ」ランダムな確率 他のすべて。 単一の照合者によるシビル攻撃を軽減するために、当選チケットに近いアドレスを「マイニング」し、 各ブロックをお気に入りにするには、照合者のアドレスに慣性を追加します。これは、それらを要求するのと同じくらい簡単かもしれません アドレスにベースライン金額の資金が含まれていること。さらに エレガントなアプローチは、 に駐車した金額の当選チケット 問題のアドレス。まだモデリングは終わっていないのですが、 このメカニズムにより、非常に 小規模な利害関係者が照合者として貢献します。 6.5.5.太り過ぎのブロック。 validator セットが侵害された場合、ブロックを作成して提案する可能性がありますが、 有効ですが、実行に膨大な時間がかかり、 検証します。 validator グループは次のような可能性があるため、これは問題です。 非常に長い時間がかかるブロックを合理的に形成する ショートカットを許可する特定の情報がすでにわかっている場合を除き、実行します。大きな因数分解 プライム。 もし 1 人の照合者がその情報を知っていたとしたら、 彼らは自分たちで手に入れたほうが明らかに有利だろう 他の候補者は、古いブロックの処理で忙しい限り受け入れられました。これらのブロックをオーバーウェイトと呼びます。 これらのブロックの送信と検証を行う validator に対する保護は、主に、 無効なブロックですが、追加の警告があります: ブロックの実行にかかった時間 (およびそのステータス) 太りすぎ)は主観的なものであり、投票の最終結果は 不正行為は基本的に 3 つのグループに分類されます。 1 つ 可能性としては、ブロックが明らかに太りすぎではないということです。 この場合、3分の2以上が「できる」と宣言している。 ある制限内でブロックを実行します (例: ブロック間に許可される合計時間の 50%)。 もう一つは、 ブロックはdです間違いなく太りすぎです。これは、以下の場合に当てはまります。 3 分の 2 がブロックを実行できなかったと宣言 上記制限内で。 最後の可能性はほぼ等しいです validator の間で意見が分かれています。この場合、私たちは、 相応の罰を与えることを選択します。 validator がいつそうなるかを確実に予測できるようにするため オーバーウェイトブロックを提案する場合、各ブロックのパフォーマンスに関する情報を公開するよう要求するのが賢明かもしれません。十分な期間を経て、 これにより、処理速度のプロファイリングが可能になるはずです 彼らを判断するであろう仲間と比較して。 6.5.6.コレーター保険。 validators には次の問題が 1 つ残っています。 PoW ネットワークとは異なり、照合者の 有効性を確保するためにブロックを作成するには、実際にその中でトランザクションを実行する必要があります。悪意のある照合者は、無効なブロックや重量超過のブロックを validator にフィードして、彼らを苦しめる (無駄な) 可能性があります。 彼らのリソース)、潜在的にかなりの機会費用がかかることになります。 これを軽減するために、私たちは、 validator の一部。まず、パラチェーンブロック候補が送信されました validator へはリレー チェーン アカウントから署名する必要があります 資金を使って。そうでない場合は、validator がドロップされるはずです それはすぐに。第二に、そのような候補は、次の組み合わせ(乗算など)によって優先順位を付ける必要があります。 アカウント内の資金の量が一定の上限まで、 照合者が過去に提案に成功した以前のブロックの数 (以前のブロックは言うまでもありません) 罰)、および勝利への近接要因 前述したようにチケット。キャップも同じはず この事件でvalidatorに支払われた懲罰的損害賠償金として うちは無効なブロックを送信しています。 照合者が無効または過大なブロック候補を validator に送信することを妨げるために、validator は次のことを行うことができます。 次のブロックに、不正行為を主張する問題ブロックを含むトランザクションを配置し、不正行為を行った照合者の資金の一部または全部を転送する 被害を受けたvalidatorにアカウントを送信します。 このタイプのトランザクションは、照合者が確実に実行できないように、他のトランザクションよりも優先して実行されます。 処罰の前に資金を削除してください。の量 損害賠償として送金される資金はまだ動的パラメータです
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 14 モデル化される予定ですが、引き起こされた悲しみのレベルを反映するvalidatorブロック報酬の割合になる可能性があります。へ 悪意のある validator が照合者の資金を恣意的に没収するのを防ぐため、照合者はその代わりにランダムに選ばれた validator からなる陪審を招いて validator の決定に対して上訴することができます 少額の入金のため。 彼らが validator に有利であると判断した場合、デポジットは彼らによって消費されます。そうでない場合は、 デポジットは返還され、validator には罰金が科せられます( validator ははるかにアーチ型の位置にあり、罰金は おそらくかなり重いでしょう)。 6.6.インターチェーン トランザクション ルーティング。インターチェーン トランザクション ルーティングは重要なメンテナンスの 1 つです リレーチェーンのタスクとそのvalidator。 これは、 投稿されたトランザクション (多くの場合、単に「投稿」と短縮される) が望ましい出力になるまでの過程を制御するロジック あるソースパラチェーンから、信頼を持たない別の宛先パラチェーンの交渉不可能な入力になるまで 要件。 上記の文言は慎重に選択しています。特に私たちは ソース内にトランザクションが存在する必要はありません parachain はこの投稿を明示的に承認しました。唯一の 私たちがモデルに課す制約は、パラチェーンです。 ブロック全体の一部としてパッケージ化して提供する必要があります 処理出力、その結果である投稿 ブロックの実行。 これらのポストは、複数の FIFO キューとして構造化されています。の リストの数はルーティング ベースとして知られており、 およそ 16。注目すべきことに、この数字は数量を表します。 に頼ることなくサポートできるパラチェーンの数 マルチフェーズルーティング。当初、Polkadot はこれをサポートします 一種の直接ルーティングですが、考えられる 1 つの概要を説明します。 手段としてのマルチフェーズ配線プロセス (「ハイパー配線」) パラチェーンの初期セットをはるかに超えてスケールアウトします。 私たち 仮定する それ すべて 参加者 知っています の 次の 2 つのブロック n、n + 1 のサブグループ化。要約すると、 ルーティング システムは次の段階に従います。 • CollatorS: Validators[n][S] のメンバーに連絡します。 • CollatorS: サブグループごとに: で確認します。 V alidators[n][s] の少なくとも 1 人のメンバーが接触中 • コレーター: 各サブグループについて: 仮定する egress[n −1][s][S] が利用可能です (すべての受信ポスト 最後のブロックから「S」へのデータ) • コレーター: S のブロック候補 b を構成します。 (b.header、b.ext、b.proof、b.receipt、b.egress) • コレーター: 送信 証拠 情報 proof[S] = (b.header、b.ext、b.proof、b.receipt) から バリデーター[n][S] • CollatorS: 外部トランザクション データ b.ext を保証します。 他の照合者とvalidatorが利用できるようになります • コレーター: のための それぞれ サブグループ s: 送信 出口 情報 出口[n][S][s] = (b.header、b.receipt、b.egress[s]) に の 受信 サブグループの メンバー の 次へ ブロック バリデータ[n + 1][s] • ValidatorV : すべての同じセットのメンバーを事前接続します 次のブロックの場合: N = Chain[n + 1][V ]; とします。接続する Chain[n + 1][v] = N となるすべての validators v • バリデーター V : このためのすべてのデータ入力を照合します ブロック: のための それぞれ サブグループ s: 取得 egress[n −1][s][Chain[n][V ]]、Chain[n][v] = Chain[n][V ] となるように他の validators v から取得します。 おそらく、試みの証拠として、ランダムに選択された他の validator を経由します。 • バリデーター V : これに対する候補証明を受け入れる ブロックプルーフ[Chain[n][V ]]。投票ブロックの有効性 • バリデーター V : の候補出力データを受け入れる 次のブロック: サブグループごとに、受け入れます 出口[n][s][N]。投票ブロック出力の可用性。関心のある validator 間で再公開します。 チェーン[n + 1][v] = チェーン[n + 1][V ]。 • ValidatorV : コンセンサスが得られるまで ここで: egress[n][from][to] は現在の出力キューです。 パラチェーン「from」から~への投稿に関する情報 ブロック番号「n」のパラチェーン「to」。 CollatorS は、パラチェーン S の照合器です。V alidators[n][s] は、ブロック番号 n のパラチェーンの validator のセットです。逆に、 Chain[n][v] は、ブロック番号 n で validator v が割り当てられるパラチェーンです。 block.egress[to] は出口です パラチェーンブロックからの投稿のキュー。 パラチェーンの目的地は です。 照合者は以下に基づいて(取引)手数料を徴収するため、 彼らのブロックが正規化されることを奨励されている 次のブロックの宛先ごとに、サブグループの メンバーには現在からの出力キューが通知されます ブロック。バリデーターは、(パラチェーン)ブロックに関する合意形成のみを目的としており、それ自体はほとんど気にしません。 どの照合者のブロックが最終的に正規となるのか。で 原則として、validator は照合者と同盟を結び、他の照合者が犯罪に関与する可能性を減らすために共謀する可能性があります。 ブロックが正規化されますが、これは両方とも困難です ランダムセレのため手配しますvalidator のアクション パラチェーンは、持続するパラチェーンブロックに支払われる手数料を削減することで防御できる可能性があります。 コンセンサスプロセス。 6.6.1.外部データの可用性。パラチェーンの確保 外部データが実際に利用できるかどうかは、永続的な問題です ワークロードを分散することを目的とした分散型システム ネットワーク。問題の中心は可用性です どちらも不可能であるため、 非インタラクティブな可用性の証明などを作成する BFT システムが適切に利用できないことの証明 正確さが依存する遷移を検証します。 一部の外部データの利用可能性、最大数 許容可能なビザンチン ノードの数とシステムの 1 つ データが利用可能であることを証明する必要があります。 Polkadot のように、システムが適切にスケールアウトするには、これ 問題が発生します: validators の割合が一定の場合 データの可用性を証明する必要があり、次のように仮定します。 validators は、データが利用可能であると主張する前に実際にデータを保存したいと考えている場合、どうすれば回避できますか? システムのサイズ (したがって validator の数) に応じて増加する帯域幅/ストレージ要件の問題はありますか?考えられる答えの 1 つは、別のセットを用意することです。 validator 件 (在庫保証者)、注文は増加中 全体として Polkadot のサイズでサブリニアに。これは 6.5.3 で説明されています。 二次的なトリックもあります。 グループとしての照合者には、すべてのデータが確実に収集されるようにするという本質的なインセンティブがあります。 選択したパラチェーンがなければ利用可能です。 それ以上のブロックを作成できません。 取引手数料を徴収します。照合者もグループを形成しますが、そのメンバーは (ランダムな性質のため) 様々です。 パラチェーン validator グループ) 入力は簡単ではありません
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 15 証明するために。したがって、最近の照合者 (おそらく最後の数千ブロック) は、 特定のパラチェーンの外部データの利用可能性 小規模な結合の場合は validators までブロックします。 検証者は、明らかに違反している validator サブグループの証言者に連絡し、データを取得して照合者に返すか、検証をエスカレーションする必要があります。 利用可能性が欠如していることを証言することで問題を解決する (データの提供を直接拒否することは保釈金没収犯罪としてカウントされるため、不正行為を行った validator はおそらくただの罪になるだろう) 接続を切断します)、追加の validator に連絡します 同じテストを実行します。後者の場合、担保保証金 が返されます。 このような利用不能の証言を行うことができる validator の定足数に達すると、解放され、 不正行為をしたサブグループは罰せられ、ブロックは元に戻されます。 6.6.2.投稿ルーティング。各パラチェーンヘッダーには、 出口トライルート;これは、を含むトライのルートです。 ルーティングベースのビン。各ビンは連結されたリストです 出口ポストの数。 マークル証明はさまざまな場所で提供される可能性があります parachain validators は、特定のパラチェーンの ブロックには、特定の宛先パラチェーンに対する特定の出力キューがありました。 パラチェーンブロックの処理の開始時に、それぞれの 当該ブロックに向かう他のパラチェーンの出力キューは ブロックの入力キューにマージされました。私たちは強いと仮定しますが、 おそらく CSPR9、サブブロックの順序付けにより、どのサブブロックにも優先順位が与えられない決定論的な操作を実現します。 パラチェーンブロックペアリング。照合者は新しいキューを計算します パラチェーンに従って出力キューを排出します ロジック。 入力キューの内容は明示的に書き込まれます。 パラチェーンブロックに入れます。 これには主に次の 2 つの目的があります。 まず、これはパラチェーンが他のパラチェーンから独立してトラストレスに同期できることを意味します。第二に、 イングレス全体が発生した場合のデータロジスティクスを簡素化します。 キューを単一のブロックで処理することはできません。 validator と照合者は次のブロックを処理できます キューのデータを特別に取得する必要はありません。 パラチェーンの入力キューがしきい値を超えている場合 ブロック処理の終了時に量がマークされる リレーチェーン上で飽和状態になり、それ以上のメッセージは送信できなくなります クリアされるまで配信されます。 マークル証明は、 照合者の操作の忠実性を実証するために使用されます。 パラチェーンブロックの証拠。 6.6.3.批評。この基本に関する小さな欠陥が 1 つあります メカニズムは爆弾後攻撃です。 ここがすべての場所です パラチェーンは可能な限り最大量の投稿を送信します 特定のパラチェーンに。これによりターゲットが拘束される一方で、 キューを一度に入力しても、何度繰り返してもダメージはありません 標準的なトランザクション DoS 攻撃。 正常に動作しており、十分に同期されており、 悪意のないコレーターと validator (N 個のパラチェーンの場合)、 パラチェーンごとに合計 N × M validator と L 個の照合器があり、 ブロックごとの合計データ経路を次のように分類できます。 バリデータ: M −1+L+L: 他の validator の場合は M −1 パラチェーン セットでは、候補パラチェーン ブロックを提供する各コレーターに L、各コレーターに 2 番目の L 前のブロックの出力ペイロードを必要とする次のブロックの。 (後者は実際には最悪のケースに近いです) 照合者がそのようなものを共有する可能性が高いため、 データです。) Collator: M +kN: M (関連するそれぞれへの接続用) パラチェーン ブロック validator、各パラチェーン validator グループのサブセットに出力ペイロードをシードするための kN 次のブロック (およびおそらくお気に入りの照合者)。 そのため、ノードごとのデータ パスウェイは直線的に増加します。 システム全体の複雑さによります。これがある間、 システムが数百または数千のパラチェーンにスケールアップされると、ある程度の通信遅延が発生する可能性があるのは当然です。 複雑さの増加率を下げる代わりに吸収されます。 この場合、マルチフェーズルーティングアルゴリズムが使用される可能性があります。 瞬間的な経路の数を減らすため その代償として、ストレージ バッファとレイテンシが発生します。 6.6.4.ハイパーキューブルーティング。ハイパーキューブ ルーティングは、主に、 上で説明した基本的なルーティング メカニズム。 本質的には、 パラチェーンやサブグループノードの数に応じてノード接続を増やすのではなく、 パラチェーンの対数。投稿は次の間を通過する可能性があります 最終配送に向かういくつかのパラチェーンのキュー。 ルーティング自体は決定的でシンプルです。まずは、 入力/出力キュー内のビンの数を制限します。 パラチェーンの総数ではなく、 はルーティングベース (b) 。これは数値として固定されます パラチェーンの変更が行われ、代わりにルーティング指数 (e) が増加します。このモデルでは、メッセージ量は O(be) とともに成長し、経路は一定のまま およびレイテンシー (または配信に必要なブロック数) O(e)で。 私たちのルーティング モデルは e 次元の超立方体です。 立方体の各側面には b 個の可能な位置があります。 各ブロックでは、単一の軸に沿ってメッセージをルーティングします。私たち ラウンドロビン方式で軸を交互に切り替えることで、ブロックの最悪の場合の配信時間が保証されます。 パラチェーン処理の一部として、外部バインド 入力キューで見つかったメッセージは、適切な出力キューのビンに直ちにルーティングされます。 現在のブロック番号 (および配線次元)。これ このプロセスではホップごとに追加のデータ転送が必要になります 配送ルート上だが、それ自体が問題 何らかの代替手段を使用することで軽減できる可能性があります データ ペイロード配信の、参照のみを含む、 ポストトライのポストの完全なペイロードではなく。 システムのハイパーキューブ ルーティングの例 パラチェーンが 4 つある場合、b = 2 および e = 2 は次のようになります。 フェーズ 0、各メッセージ M: • sub0: if Mdest ∈{2, 3} then sendTo(2) else keep • sub1: if Mdest ∈{2, 3} then sendTo(3) else keep • sub2: if Mdest ∈{0, 1} then sendTo(0) else keep • sub3: if Mdest ∈{0, 1} then sendTo(1) else keep フェーズ 1、各メッセージ M: • sub0: if Mdest ∈{1, 3} then sendTo(1) else keep • sub1: if Mdest ∈{0, 2} then sendTo(0) else keep • sub2: if Mdest ∈{1, 3} then sendTo(3) else keep • sub3: if Mdest ∈{0, 2} then sendTo(2) else keep ここでの 2 つの次元は、最初に見るのが簡単です。 宛先インデックスの 2 ビット。最初のブロックでは、 上位ビットのみが使用されます。 2 番目のブロックの取引 下位ビットを使用します。両方が発生すると(任意で) 順序)、投稿はルーティングされます。 9暗号的に安全な擬似ランダム
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 16 6.6.5.セレンディピティを最大化する。基本的なものを1つ変更すると、 プロポーザルでは、固定合計 c2 −c validators が表示されます。 各サブグループに c−1 validator 個。各ブロックではなく、 validator の非構造化再パーティション化が存在します パラチェーン間ではなく、パラチェーンのサブグループごとに、 各 validator は、一意の異なる名前に割り当てられます。 次のブロックのパラチェーン サブグループ。これは 任意の 2 つのブロック間の不変式を導出します。 パラチェーンの 2 つのペアには、2 つの validator が存在します。 パラチェーンの責任を交換しました。これを使用して可用性を絶対に保証することはできませんが、 (単一の validator は、たとえ 有益)、それでも一般的なケースを最適化できます。 このアプローチには複雑さが伴います。パラチェーンの追加には再組織化も必要になる validator セットの。さらに、validator の数はパラチェーンの数の 2 乗に関連付けられ、 最初は非常に小さく始まり、最終的には大きく成長します 速すぎて、約 50 パラチェーンを超えると維持できなくなります。 これらはいずれも根本的な問題ではありません。最初のケースでは、 validator セットの再編成は必ず実行する必要があります。 とにかく定期的に行われます。 validatorのサイズについて 設定が小さすぎる場合、複数の validator が割り当てられる可能性があります 同じパラチェーンに整数係数を適用します。 全体の合計は validator です。 6.6.4 で説明したハイパーキューブ ルーティングなどのマルチフェーズ ルーティング メカニズムは、次のようになります。 多数の validator の要件を軽減します チェーン数が多い場合。 6.7.パラチェーンの検証。 validator の主な目的 絆の強い俳優として、パラチェーンの ブロックは有効です。これには、状態遷移、含まれる外部トランザクション、実行が含まれますが、これらに限定されません。 入力キュー内の待機中のポストと最終状態 出力キューの。 プロセス自体は非常に簡単です。 validator が前のブロックを封印すると、それらは解放されます パラチェーンブロックの候補を提供する作業を開始する 次のコンセンサスラウンドの候補者。 最初に、validator は、パラチェーン コレーター (次に説明します) または 1 つのパラメーターを通じてパラチェーン ブロック候補を見つけます。 その共同validatorの。パラチェーンブロック候補データ ブロックのヘッダー、前のブロックのヘッダー、 含まれる外部入力データ (Ethereum および Bitcoin の場合、そのようなデータはトランザクションと呼ばれますが、原則として任意の目的のための任意のデータ構造が含まれる場合があります)、出力キュー データおよび状態遷移の妥当性を証明する内部データ (Ethereum の場合) これは、各トランザクションを実行するために必要なさまざまな状態/ストレージ トライ ノードになります)。 実験的証拠は、最近の Ethereum ブロックのこの完全なデータセットを示しています 最大でも数百 KiB です。 同時に、まだ完了していない場合は、validator が実行されます。 前のブロックの遷移に関する情報を、最初は前のブロックから取得しようとします。 validator 以降、すべての validator が署名しています データの可用性。 validator がそのような候補ブロックを受信すると、 次に、それをローカルで検証します。検証プロセスは、パラチェーン クラスの validator モジュール内に含まれています。 作成する必要があるコンセンサス重視のソフトウェア モジュール Polkadot の実装の場合 (原則的には C ABI を備えたライブラリでは、単一のライブラリで次のことが可能になります。 適切な実装間で共有される 「参照」実装が 1 つだけであることから安全性が低下します)。 このプロセスは前のブロックのヘッダーを取得し、最近合意されたリレーチェーンを通じてそのアイデンティティを検証します。 hash が記録されるブロック。親ヘッダーの有効性が確認されると、特定のパラチェーンが クラスの検証関数が呼び出される可能性があります。これは、多数のデータ フィールドを受け入れる単一の関数です (おおよそ 前に与えられたもの)、単純なブール値を返します ブロックの有効性を宣言します。 このような検証関数のほとんどは、最初に から直接派生できるヘッダーフィールド 親ブロック (例: 親 hash、番号)。フォロー中 これにより、内部データ構造が次のように設定されます。 トランザクションや投稿を処理するために必要です。 Ethereum のようなチェーンの場合、これは に必要なノードを含むデータベースを試してください。 トランザクションの完全な実行。他のチェーンタイプには、 その他のp修復メカニズム。 完了すると、イングレス投稿と外部トランザクション (または外部データが表すもの) は次のようになります。 チェーンの仕様に従って制定され、バランスがとれています。 (A 賢明なデフォルトは、すべての入力ポストを要求することかもしれません 外部トランザクションがサービスされる前に処理されますが、これはパラチェーンのロジックが決定する必要があります。) この制定により、一連の出力投稿は 作成され、これらが実際に一致することが検証されます 照合者の候補者。最後に、適切に設定された ヘッダーは候補者のヘッダーと照合されます。 完全に検証された候補ブロックでは、validator その後、ヘッダーの hash に投票し、必要な検証情報をすべてそのサブグループ内の co-validator に送信できます。 6.7.1.パラチェーンコレーター。パラチェーンの照合者は、マイナーのタスクの多くを実行する、拘束されていないオペレーターです。 現在のblockchainネットワーク上で。それらは具体的です 特定のパラチェーンに。操作するには、次のことを行う必要があります。 リレーチェーンと完全に同期されたものの両方を維持する パラチェーン。 「完全に同期」の正確な意味はパラチェーンのクラスによって異なりますが、パラチェーンの入力キューの現在の状態が常に含まれます。 Ethereum の場合、少なくともメンテナンスも必要です 最後の数ブロックのマークルツリー データベースですが、 ブルームを含む他のさまざまなデータ構造も含まれます アカウントの存在、家族情報、ログ記録用のフィルター ブロック番号の出力と逆引き参照テーブル。 2 つのチェーンの同期を維持するだけでなく、 トランザクションキューを維持し、適切に検証されたトランザクションを受け入れることによって、トランザクションを「フィッシング」する必要もあります パブリックネットワークから。キューとチェーンでは、 各ブロックで選択された validator の新しい候補ブロック (リレーチェーンが同期されているため、その ID がわかっている) を作成し、それらを 有効性の証明などのさまざまな付随情報。 ピアネットワーク。 その厄介な問題として、含まれる取引に関連するすべての手数料を徴収します。これに関してはさまざまな経済学が浮かんでいる アレンジメント。競争の激しい市場では、 担保者が余っているため、取引が行われる可能性があります。 インセンティブを与えるために手数料をパラチェーン validators と共有する 特定の照合者のブロックを含めること。 同様に、
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 17 一部の照合者は、必要な手数料を徴収する場合もあります。 ブロックをより魅力的なものにするために支払われる validator秒。 この場合、自然な市場が形成されるはずです トランザクションはキューをスキップして高い手数料を支払う そして、より早くチェーンに組み込まれるようになります。 6.8.ネットワーキング。従来の blockchain でのネットワーキング Ethereum や Bitcoin などの要件はかなり単純です。 すべてのトランザクションとブロックは、単純な方向性のないゴシップでブロードキャストされます。同期は特に複雑です。 Ethereum を使用していますが、実際には、このロジックは いくつかの要求および応答メッセージ タイプを中心に解決するプロトコル自体ではなく、ピア戦略。 Ethereum は、devp2p プロトコルを使用して現在のプロトコルの提供を進めました。これにより、多くの機能が可能になりました。 サブプロトコルは単一のピア接続上で多重化されるため、同じピア オーバーレイを多数サポートします。 p2p プロトコルと同時に、Ethereum 部分 プロトコルはまだ比較的単純なままであり、p2p 議定書はしばらくの間、重要な作業が完了していないため、 QoS サポートなどの機能がありません。悲しいことに、よりユビキタスな「Web 3」プロトコルを作成したいという願望は主に 失敗しました。明示的に使用しているのはプロジェクトだけです Ethereum クラウドセールから資金を調達しました。 Polkadot の要件はかなり厳密です。完全に均一なネットワークではなく、Polkadot 数種類の参加者がおり、それぞれのピア構成や複数のネットワークに対して異なる要件があります。 参加者が会話する傾向がある「通り」 特定のデータ。これは、実質的により構造化されたネットワーク オーバーレイ、およびそれをサポートするプロトコルを意味します。 おそらく必要になるだろう。さらに、新しい種類の「チェーン」など、将来の追加を容易にする拡張性も備えています。 それら自体には新しいオーバーレイ構造が必要です。 ネットワーキングの仕組みについて徹底的に議論しながら、 プロトコルはこの文書の範囲外であるように見えるかもしれませんが、一部の要件分析は合理的です。できます ネットワーク参加者を大まかに 2 つのセットに分類します (リレーチェーン、パラチェーン) 3 つのサブセットのそれぞれ。できます また、各パラチェーン参加者は、 ではなく、自分たち同士で会話することに興味がある 他のパラチェーンの参加者: • リレーチェーン参加者: • バリデータ: P、それぞれのサブセット P[s] に分割 パラチェーン • 可用性保証者: A (これは、プロトコルの基本形式のバリデーターによって表される場合があります) • リレーチェーンクライアント: M (各メンバーのメンバーに注意してください) パラチェーン セットも M のメンバーになる傾向があります) • パラチェーン参加者: • パラチェーン コレーター: C[0]、C[1]、. 。 。 • パラチェーン漁師: F[0]、F[1]、 。 。 。 • パラチェーン クライアント: S[0]、S[1]、. 。 。 • パラチェーン ライトクライアント: L[0]、L[1]、. 。 。 一般に、私たちはコミュニケーションの特定のクラスに名前を付けます これらのセットのメンバー間で発生する傾向があります。 •P |あ <-> P |答え: の いっぱい セット の validators/保証人 しなければならない なる よくつながっている に コンセンサスを得る。 • P[s] <-> C[s] | P[s]: 特定のパラチェーン グループのメンバーとしての各 validator は噂話をする傾向があります 他の同様のメンバーおよび照合者とともに そのパラチェーンのブロック候補を発見して共有します。 • A <-> P[s] | C | A:各空室保証人 コンセンサスに敏感なクロスチェーンを収集する必要がある validator からのデータが割り当てられています。照合者 また、彼らの合意形成の可能性を最適化する可能性もあります。 可用性保証者に通知することでブロックします。 データを取得すると、データは次の企業に支払われます。 合意を促進するための他のそのような保証人。 • P[s] <-> A | P[s']: パラチェーン validators は 以前の validator セットまたは可用性保証者から追加の入力データを収集する必要があります。 • F[s] <-> P: 漁師は報告する際、 参加者に対するクレーム。 • M <-> M | P | A: 一般的なリレー チェーン クライアントは、validator と保証人からデータを支払います。 • S[s] <-> S[s] | P[s] | A: パラチェーンのクライアントは、validator/保証人からデータを支払います。 • L[s] <-> L[s] | S[s]: パラチェーン ライト クライアント 完全なクライアントからデータを分配します。 効率的な輸送メカニズムを確保するために、「フラット」 オーバーレイ ネットワーク (Ethereum の devp2p など) ノードは、そのノードの適合性を (恣意的にではなく) 区別しません。 同僚が適切である可能性は低いです。適度に拡張可能な ピアの選択と検出のメカニズムが必要になる可能性があります 積極的であると同時にプロトコルに含まれること 適切な種類のピアを確保するための先読みを計画する 偶然にも適切なタイミングで実行されました。 ピアメイクの正確な戦略は、参加者のクラスごとに異なります。 マルチチェーンの場合、照合者は継続的に実行する必要があります。 それに応じて選出された validator に再接続するか、 validator のサブセットとの継続的な契約が必要です validator が役に立たないほとんどの時間で切断されないようにするためです。照合者も当然、その情報を維持しようとします。 または可用性保証者へのより安定した接続 コンセンサスに敏感な情報を迅速に広めることを保証するために設定されています。 データ。 可用性の保証者は主に、 相互および validators への安定した接続 (コンセンサスおよびコンセンサスが重要なパラチェーン データの場合) 彼らは証明します)、そして一部の照合者(パラチェーンの場合)も証明します データ)と一部の漁師と完全な顧客(分散のため) 情報)。バリデーターは、他の validator、特に同じサブグループ内のvalidator を探す傾向があります。 パラチェーンブロック候補を提供できる照合者。 漁師、一般的なリレーチェーン、パラチェーンなど クライアントは通常、接続をオープンな状態に保つことを目的とします。 validator または保証人ですが、他の多くの同様のノード そうでなければ自分自身に。パラチェーンのライトクライアントも同様に、パラチェーンの完全なクライアントに接続することを目指します。 他のパラチェーンライトクライアントだけではないにしても。 6.8.1.ピアチャーンの問題。基本的なプロトコルの提案では、これらの各サブセットは、検証するために割り当てられた validator として各ブロックとともに常にランダムに変化します。 パラチェーン遷移はランダムに選択されます。これはできる 異種 (非ピア) ノードが問題となる可能性があります。 相互にデータを渡します。どちらかに頼らなければなりません 公平に分散され、適切に接続されたピア ネットワーク
POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 18 ホップ距離 (したがって最悪の場合の遅延) がネットワーク サイズの対数に応じてのみ増加するようにする (Kademlia のようなプロトコル [13] がここで役立つかもしれません)、または、次のことを行う必要があります。 ピアセットを維持するために必要な接続ネゴシエーションを実行できるようにするために、より長いブロック時間を導入します。 ノードの現在の通信ニーズを反映します。 どちらも優れた解決策ではありません: ブロック時間が長い ネットワークに強制的にアクセスすると、ネットワークが役に立たなくなる可能性があります。 特定のアプリケーションとチェーン。完全に公平であっても ネットワークに接続すると、かなりの無駄が発生します 関心のないノードにより拡張される帯域幅の減少 彼らにとって役に立たないデータを転送するため。 両方の方向がソリューションの一部を形成する可能性がありますが、 レイテンシーを最小限に抑えるために合理的な最適化を行うと、 これらのパラチェーンのボラティリティを制限するためです validator 一連のブロック間でのみメンバーシップを再割り当てするセット (例: 15 個のグループ、4 秒ごと) ブロック時間は、接続を 1 回につき 1 回だけ変更することを意味します。 分)、またはメンバーシップを段階的にローテーションすることによって(例:一度に 1 人のメンバーによって変更されます (例: 各パラチェーンに 15 validator が割り当てられている場合、完全に一意なパラチェーン間の間隔は平均で丸 1 分になります。 セット)。ピアのチャーンの量を制限し、有利なピア接続が適切に確立されるようにすることで、 パラチェーンの部分的な予測可能性を通じて進歩する セットを使用すると、各ノードが永続的に保持されるようにすることができます。 偶然の仲間選び。 6.8.2.効果的なネットワーク プロトコルへのパス。おそらく、 最も効果的かつ合理的な開発努力は、ローリングではなく既存のプロトコルの利用に焦点を当てます。 私たち自身の。 いくつかのピアツーピアベースプロトコルが存在します。 Ethereum 独自の devp2p を使用または拡張する場合があります [22]、IPFS の libp2p [1]、GNU の GNUnet [4]。これらのプロトコルとその構築との関連性を完全にレビューします。 特定の構造保証、動的ピアステアリング、および拡張可能なサブプロトコルをサポートするモジュラーピアネットワーク この文書の範囲をはるかに超えていますが、 Polkadot の実装における重要なステップ。 7. プロトコルの実用性 7.1.インターチェーントランザクション支払い。素晴らしい一方で、 Ethereum のガスのような総合的な計算リソース アカウンティング フレームワークの必要性をなくすことで、かなりの自由とシンプルさが得られますが、これは重要な疑問を引き起こします。ガスがなければ、パラチェーンはどのように機能するのでしょうか。 別のパラチェーンが強制的に計算を実行するのを避けますか?トランザクション後の入力キューに依存することもできますが、 あるチェーンが別のチェーンにスパム送信するのを防ぐためのバッファー トランザクション データの場合、トランザクション処理のスパムを防止するための同等のメカニズムがプロトコルによって提供されることはありません。 これはより高いレベルに委ねられる問題です。チェーン以来 受信メッセージに任意のセマンティクスを自由に付加できる トランザクション後のデータを使用すると、計算が確実に行われるようになります。 開始前に料金を支払う必要があります。同じような流れで、 Ethereum Serenity が支持するモデル、想像できます パラチェーン内の「侵入」契約により、 validator と引き換えに支払いが保証されます。 特定の量の処理リソースの提供。 これらのリソースはガスのようなもので測定される可能性があります。 しかし、主観的な実行時間や Bitcoin のような定額料金モデルなど、まったく新しいモデルである可能性もあります。 オフチェーンの呼び出し元が利用できるとはすぐには想定できないため、これ自体はあまり役に立ちません。 侵入によって認識されるあらゆる価値メカニズム 契約。ただし、ソースチェーン内に二次的な「ブレイクアウト」コントラクトが存在することは想像できます。 2 つの契約は共に橋を形成し、お互いを認識し、 価値の同等性を提供します。 (ステーキング-tokens、利用可能 それぞれを国際収支の決済に使用できます。) 別のそのようなチェーンを呼び出すことはプロキシを意味します この橋を通って、 チェーン間での価値の移転を交渉して、 宛先パラチェーンで必要な計算リソースの料金を支払います。 7.2.追加 チェーン。その間 の 追加 の ある パラチェーンは比較的安価な操作ですが、無料ではありません。 パラチェーンが増えると、パラチェーンあたりの validator が少なくなります そして最終的には、それぞれが 平均債券の減少。パラチェーンを攻撃するための強制コストが小さいという問題は、次のように軽減されます。 漁師の皆さん、validator セットの成長は本質的に、 基礎となるコンセンサスの仕組みにより、レイテンシが高くなるそーだ。さらに各パラチェーン validators を悲しませる可能性があります。 負担の大きい検証アルゴリズム。 したがって、validator の「価格」が発生することになります。 および/または利害関係者コミュニティが、 新しいパラチェーンの追加。このチェーン市場は、 おそらく次のいずれかが追加されているのがわかります。 • 一部となる可能性が高い(staking tokens のロックアップまたはバーンアウトに関して)正味拠出金の支払いがゼロのチェーン(コンソーシアム チェーンなど) Doge チェーン、アプリ固有のチェーン)。 • ネットワークに本質的な価値を提供するチェーン 特定の機能を追加するのが難しい 他の場所(機密性、内部拡張性、サービス提携など)を取得するため。 基本的に、利害関係者のコミュニティは次のことを行う必要があります。 経済的または経済的に子チェーンを追加するよう奨励される リレーに機能的なチェーンを追加したいという願望を通じて。 新しいチェーンが追加されると、非常に大きな影響を受けることが想定されます。 削除の通知期間が短いため、新しいチェーンを使用できます。 妥協するリスクなしに実験できる 中長期的な価値提案。 8. 結論 私たちは、著者が取ることができる方向性を概説しました。 特定の既存のプロトコルとの下位互換性がある可能性のある、スケーラブルな異種マルチチェーン プロトコル blockchain ネットワーク。このようなプロトコルの下では、参加者は 賢明な自己利益に基づいて、既存ユーザーに通常のコストをかけずに、非常に自由な方法で拡張できるシステム全体を作成します。 標準の blockchain デザインから来ています。私たちは与えました 必要となるアーキテクチャの大まかな概要 参加者の性質、経済的インセンティブ そして彼らが関与しなければならないプロセス。私たちは持っています 基本設計を特定し、その長所について議論し、 制限;したがって、さらなる方向性があります。 これらの制限が緩和され、完全にスケーラブルな blockchain ソリューションに向けてさらに前進する可能性があります。POLKADOT: 異種マルチチェーン フレームワークのビジョン ドラフト 1 19 8.1.不足している資料と未解決の質問。プロトコルの実装が異なる場合、ネットワークの分岐が常に発生する可能性があります。そんな状態からの回復 例外的な状況については議論されなかった。ネットワークには必然的にゼロ以外のファイナライゼーション期間があると仮定すると、 リレーチェーンの分岐から回復することは大きな問題ではありませんが、慎重に統合する必要があります。 コンセンサスプロトコル。 保証金の没収と逆に報酬の提供は、 深くは研究されていません。現時点では報酬を想定しています 勝者総取りの原則に基づいて提供されます。これは当てはまらない場合があります。 漁師に最適な奨励モデルを提供する。短期間のコミットと公開のプロセスにより、多くの漁師が許可されるでしょう。 賞品をより公平に分配して賞品を受け取るため、 ただし、このプロセスにより、追加のレイテンシーが発生する可能性があります。 不正行為の発見。 8.2.謝辞。皆様、本当にありがとうございました これを漠然と理解するのに協力してくれた校正者 存在感のある形状。 特にピーター・ツァバン、ビョルン ワーグナー、ケン・カプラー、ロバート・ハーバマイヤー、ヴィタリック・ブテリン、レト・トリンクラー、ジャック・ピーターソン。 皆さんのおかげで アイデアや始まりに貢献した人々 その中で、マレク・コテヴィッチとアーロン・ブキャナンは特に言及に値する。そして、助けてくれた他の皆さんにも感謝します 途中で。すべての間違いは私自身のものです。 の初期研究を含むこの研究の一部 コンセンサスアルゴリズムの一部は英国によって資金提供されました。 Innovate UK プログラムに基づく政府。