Polkadot: Vision für ein heterogenes Multi-Chain-Framework

โดย Gavin Wood · 2016

โหมดเดี่ยว polkadot.com

บทคัดย่อ

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 ดร. กาวิน วู้ด ผู้ก่อตั้ง ETHEREUM และความเท่าเทียมกัน กาวิน@PARITY.IO นามธรรม สถาปัตยกรรม blockchain ในปัจจุบันล้วนประสบกับปัญหาหลายประการ ไม่เพียงแต่ความสามารถในการขยายและความสามารถในการปรับขนาดในทางปฏิบัติเท่านั้น เราเชื่อว่าสิ่งนี้เกิดจากการเชื่อมโยงสองส่วนที่สำคัญมากของสถาปัตยกรรมฉันทามติ กล่าวคือ canonicality และ validity ใกล้เคียงกันเกินไป บทความนี้จะแนะนำสถาปัตยกรรม มัลติเชนที่ต่างกัน ซึ่งทำให้ทั้งสองแยกจากกันโดยพื้นฐาน ในการแบ่งส่วนทั้งสองส่วนนี้ออก และโดยการรักษาฟังก์ชันการทำงานโดยรวมให้เหลือน้อยที่สุด ด้านความปลอดภัยและการคมนาคมขนส่ง เราแนะนำวิธีการปฏิบัติจริงของความสามารถในการขยายหลักในแหล่งกำเนิด ความสามารถในการปรับขนาดได้รับการแก้ไขผ่าน แนวทางการแบ่งแยกและพิชิตสำหรับทั้งสองหน้าที่นี้ โดยขยายขอบเขตออกจากแกนกลางที่เชื่อมโยงกันด้วยการสร้างแรงจูงใจของ โหนดสาธารณะที่ไม่น่าเชื่อถือ ลักษณะที่แตกต่างกันของสถาปัตยกรรมนี้ช่วยให้ระบบฉันทามติประเภทที่แตกต่างกันอย่างมากทำงานร่วมกันใน "สหพันธ์" ที่ไร้ความไว้วางใจและกระจายอำนาจอย่างเต็มที่ ทำให้เครือข่ายแบบเปิดและแบบปิดสามารถเข้าถึงโดยปราศจากความไว้วางใจ กันและกัน เราหยิบยกวิธีการมอบความเข้ากันได้แบบย้อนหลังกับเครือข่ายที่มีอยู่แล้วตั้งแต่หนึ่งเครือข่ายขึ้นไป เช่น Ethereum. เราเชื่อว่าระบบดังกล่าวให้องค์ประกอบระดับฐานที่เป็นประโยชน์ในการค้นหาโดยรวมในทางปฏิบัติ ระบบที่นำไปปฏิบัติได้ซึ่งมีความสามารถในการปรับขนาดและความเป็นส่วนตัวในระดับการค้าระดับโลก 1. คำนำ ข้อมูลนี้มีวัตถุประสงค์เพื่อเป็น "วิสัยทัศน์" ทางเทคนิคโดยสรุป ของทิศทางหนึ่งที่เป็นไปได้ที่อาจนำไปใช้ในการพัฒนากระบวนทัศน์ blockchain เพิ่มเติม พร้อมด้วยเหตุผลบางประการว่าทำไมทิศทางนี้จึงสมเหตุสมผล มันวางอยู่ใน รายละเอียดให้มากที่สุดเท่าที่จะเป็นไปได้ในขั้นตอนของการพัฒนานี้ ระบบที่อาจให้การปรับปรุงอย่างเป็นรูปธรรมใน จำนวนแง่มุมของเทคโนโลยี blockchain ไม่ได้มีวัตถุประสงค์เพื่อเป็นการระบุรายละเอียด เป็นทางการหรืออย่างอื่น ไม่ได้มีวัตถุประสงค์เพื่อให้ครอบคลุมหรือเพื่อเป็น การออกแบบขั้นสุดท้าย ไม่ได้มีวัตถุประสงค์เพื่อให้ครอบคลุมประเด็นที่ไม่ใช่ประเด็นหลัก ของเฟรมเวิร์ก เช่น API, การเชื่อมโยง, ภาษา และ การใช้งาน นี่เป็นการทดลองที่น่าสังเกต โดยที่พารามิเตอร์ ระบุไว้แล้วมีแนวโน้มที่จะเปลี่ยนแปลง กลไกจะ จะถูกเพิ่ม ปรับปรุง และลบออกเพื่อตอบสนองต่อชุมชน ความคิดและคำวิจารณ์ ส่วนใหญ่ของบทความนี้น่าจะเป็นไปได้ ได้รับการแก้ไขเป็นหลักฐานการทดลองและการสร้างต้นแบบให้ ข้อมูลของเราเกี่ยวกับสิ่งที่จะได้ผลและสิ่งที่ไม่ได้ผล เอกสารนี้ประกอบด้วยคำอธิบายหลักของระเบียบการพร้อมกับแนวคิดสำหรับแนวทางที่อาจนำไปปฏิบัติ เพื่อปรับปรุงด้านต่างๆ ก็มีจินตนาการว่าแกนกลาง คำอธิบายจะถูกใช้เป็นจุดเริ่มต้นสำหรับการเริ่มต้น ชุดการพิสูจน์แนวคิด “เวอร์ชัน 1.0” สุดท้ายจะเป็น อิงตามระเบียบการที่ได้รับการปรับปรุงนี้พร้อมกับแนวคิดเพิ่มเติมที่ได้รับการพิสูจน์และมุ่งมั่นที่จะทำ จำเป็นเพื่อให้โครงการบรรลุเป้าหมาย 1.1. ประวัติศาสตร์. • 10 กันยายน 2559: 0.1.0-proof1 • 20/10/2559: 0.1.0-proof2 • 01/11/2016: 0.1.0-proof3 • 10/11/2559: 0.1.0 2. บทนำ Blockchains ได้แสดงให้เห็นถึงคำมั่นสัญญาที่ยอดเยี่ยมของประโยชน์ใช้สอยในหลาย ๆ ด้านรวมถึง “Internet of Things” (IoT) การเงิน การกำกับดูแล การจัดการข้อมูลประจำตัว การกระจายอำนาจทางเว็บ และการติดตามสินทรัพย์ อย่างไรก็ตาม แม้ว่า คำมั่นสัญญาทางเทคโนโลยีและการพูดคุยครั้งยิ่งใหญ่ที่เรายังไม่เคยเห็น การปรับใช้เทคโนโลยีปัจจุบันในโลกแห่งความเป็นจริงอย่างมีนัยสำคัญ เราเชื่อว่านี่เป็นความล้มเหลวหลักห้าประการในปัจจุบัน กองเทคโนโลยี: ความสามารถในการปรับขนาด: ปริมาณการใช้ทรัพยากรทั่วโลก ในการประมวลผลแบนด์วิธและการจัดเก็บเพื่อให้ระบบประมวลผลรายการเดียวและจำนวนเท่าใด ธุรกรรมสามารถดำเนินการได้ตามสมควรภายใต้ สภาวะสูงสุด? การแยกตัวได้: ความต้องการที่แตกต่างกันของหลาย ๆ สามารถ ฝ่ายและแอปพลิเคชันได้รับการแก้ไขในระดับที่ใกล้เคียงที่สุดภายใต้กรอบการทำงานเดียวกันหรือไม่ การพัฒนา: เครื่องมือทำงานได้ดีแค่ไหน? ทำ API ตอบสนองความต้องการของนักพัฒนาหรือไม่? มีสื่อการเรียนไหม? มีการบูรณาการที่ถูกต้องหรือไม่? การกำกับดูแล: เครือข่ายสามารถคงความยืดหยุ่นไว้ได้หรือไม่ พัฒนาและปรับตัวตามกาลเวลา? ตัดสินใจได้ สร้างขึ้นด้วยความครอบคลุม ความชอบธรรม และ ความโปร่งใสเพื่อให้ความเป็นผู้นำที่มีประสิทธิผลของ ระบบกระจายอำนาจ? การบังคับใช้: เทคโนโลยีนี้ตอบสนองความต้องการอันร้อนแรงด้วยตัวมันเองจริงหรือ จำเป็นต้องใช้ “มิดเดิลแวร์” อื่นๆ เพื่อลดช่องว่างนี้หรือไม่ การใช้งานจริง? ในงานปัจจุบัน เรามุ่งหวังที่จะกล่าวถึงสองเรื่องแรก ประเด็นสำคัญ: ความสามารถในการปรับขนาดและการแยกตัวได้ ก็บอกแล้วเราเชื่อ กรอบงาน Polkadot สามารถให้การปรับปรุงที่มีความหมายในแต่ละประเภทของปัญหาเหล่านี้ การใช้งาน blockchain ที่ทันสมัยและมีประสิทธิภาพ เช่น ลูกค้า Parity Ethereum [17] สามารถดำเนินการได้ess เกินกว่า ธุรกรรม 3,000 รายการต่อวินาทีเมื่อทำงานบนฮาร์ดแวร์สำหรับผู้บริโภคที่มีประสิทธิภาพ อย่างไรก็ตาม โลกแห่งความเป็นจริงในปัจจุบัน blockchain เครือข่ายถูกจำกัดไว้ที่ประมาณ 30 เครือข่าย การทำธุรกรรมต่อวินาที ข้อจำกัดนี้ส่วนใหญ่มาจากข้อเท็จจริงที่ว่ากลไกฉันทามติแบบซิงโครนัสในปัจจุบันจำเป็นต้องมีระยะขอบด้านความปลอดภัยที่กว้าง ระยะเวลาการประมวลผลที่คาดไว้ ซึ่งจะรุนแรงขึ้นโดย 1

Zusammenfassung

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 DR. GAVIN WOOD GRÜNDER, ETHEREUM & PARITÄT [email protected] Zusammenfassung. Heutige blockchain-Architekturen leiden alle unter einer Reihe von Problemen, nicht zuletzt hinsichtlich praktischer Möglichkeiten der Erweiterbarkeit und Skalierbarkeit. Wir glauben, dass dies auf die Verknüpfung zweier sehr wichtiger Teile der Konsensarchitektur zurückzuführen ist, nämlich Kanonizität und Gültigkeit liegen zu eng beieinander. In diesem Artikel wird eine Architektur vorgestellt, die eine heterogene Mehrkette darstellt. was die beiden grundlegend unterscheidet. Durch die Unterteilung dieser beiden Teile und durch die Beschränkung der Gesamtfunktionalität auf ein absolutes Minimum Im Hinblick auf Sicherheit und Transport führen wir praktische Mittel zur Kernerweiterbarkeit vor Ort ein. Die Skalierbarkeit wird durch adressiert ein „Teile-und-Herrsche“-Ansatz für diese beiden Funktionen, der aus seinem verbundenen Kern heraus durch Anreize erweitert wird nicht vertrauenswürdige öffentliche Knoten. Die heterogene Natur dieser Architektur ermöglicht die Zusammenarbeit vieler sehr unterschiedlicher Arten von Konsenssystemen in einer vertrauenslosen, vollständig dezentralisierten „Föderation“, die offenen und geschlossenen Netzwerken einen vertrauensfreien Zugriff ermöglicht einander. Wir schlagen ein Mittel zur Bereitstellung von Abwärtskompatibilität mit einem oder mehreren bereits vorhandenen Netzwerken vor, z Ethereum. Wir glauben, dass ein solches System eine nützliche Basiskomponente bei der allgemeinen Suche nach einer praktischen Lösung darstellt ein umsetzbares System, das in der Lage ist, Skalierbarkeits- und Datenschutzniveaus im globalen Handel zu erreichen. 1. Vorwort Dies soll eine technische „Vision“-Zusammenfassung sein einer möglichen Richtung, die bei der Weiterentwicklung des blockchain-Paradigmas eingeschlagen werden könnte, zusammen mit einer Begründung, warum diese Richtung sinnvoll ist. Es liegt in so detailliert wie möglich in dieser Entwicklungsphase ein System, das zu einer konkreten Verbesserung führen kann Anzahl der Aspekte der blockchain-Technologie. Es ist nicht als Spezifikation gedacht, weder formal noch anderweitig. Es erhebt keinen Anspruch auf Vollständigkeit und stellt auch keinen Anspruch darauf dar Endgültiges Design. Es ist nicht beabsichtigt, Aspekte abzudecken, die nicht zum Kerngeschäft gehören des Frameworks wie APIs, Bindungen, Sprachen usw Nutzung. Dies ist besonders experimentell; wo Parameter festgelegt sind, können sie sich wahrscheinlich ändern. Mechanismen werden als Reaktion auf die Community hinzugefügt, verfeinert und entfernt werden Ideen und Kritiken. Große Teile dieses Papiers werden wahrscheinlich überarbeitet werden, sobald experimentelle Beweise und Prototyping vorliegen uns Informationen darüber, was funktionieren wird und was nicht. Dieses Dokument enthält eine Kernbeschreibung des Protokolls sowie Vorschläge für mögliche Vorgehensweisen verschiedene Aspekte zu verbessern. Es ist vorgesehen, dass der Kern Die Beschreibung dient als Ausgangspunkt für eine Initiale Reihe von Proof-of-Concept. Eine endgültige „Version 1.0“ wäre Basierend auf diesem verfeinerten Protokoll zusammen mit den zusätzlichen Ideen, die sich bewährt haben und entschlossen sind erforderlich sein, damit das Projekt seine Ziele erreichen kann. 1.1. Geschichte. • 10.09.2016: 0.1.0-proof1 • 20.10.2016: 0.1.0-proof2 • 11.01.2016: 0.1.0-proof3 • 11.10.2016: 0.1.0 2. Einführung Blockchains haben sich in mehreren Bereichen als vielversprechend erwiesen, darunter auch im „Internet der Dinge“. (IoT), Finanzen, Governance, Identitätsmanagement, Webdezentralisierung und Asset-Tracking. Trotz der Das technologische Versprechen und die großen Worte müssen wir noch sehen bedeutender realer Einsatz der gegenwärtigen Technologie. Wir glauben, dass dies auf fünf wesentliche Versäumnisse der Gegenwart zurückzuführen ist Technologie-Stacks: Skalierbarkeit: Wie viele Ressourcen weltweit ausgegeben werden über Verarbeitung, Bandbreite und Speicher, damit das System eine einzelne Transaktion verarbeiten kann und wie viele Transaktionen können angemessen abgewickelt werden Spitzenbedingungen? Isolierbarkeit: Kann den unterschiedlichen Bedürfnissen mehrerer Personen gerecht werden Parteien und Anträge im gleichen Rahmen nahezu optimal angesprochen werden? Entwickelbarkeit: Wie gut funktionieren die Tools? Tun Sie es die APIs erfüllen die Bedürfnisse der Entwickler? Sind Lehrmaterialien verfügbar? Sind die richtigen Integrationen vorhanden? Governance: Kann das Netzwerk flexibel bleiben? sich im Laufe der Zeit weiterentwickeln und anpassen? Können Entscheidungen sein mit ausreichender Inklusivität, Legitimität und gemacht Transparenz zur Gewährleistung einer effektiven Führung eines dezentrales System? Anwendbarkeit: Befriedigt die Technologie tatsächlich allein ein dringendes Bedürfnis? Ist weitere „Middleware“ erforderlich, um die Lücke zu schließen? tatsächliche Anwendungen? In der vorliegenden Arbeit wollen wir uns mit den ersten beiden befassen Probleme: Skalierbarkeit und Isolierbarkeit. Das heißt, wir glauben Das Polkadot-Framework kann bei jeder dieser Problemklassen sinnvolle Verbesserungen bewirken. Moderne, effiziente blockchain-Implementierungen wie z Der Paritäts-Client Ethereum [17] kann process mehr als 3.000 Transaktionen pro Sekunde bei Ausführung auf leistungsstarker Consumer-Hardware. Allerdings aktuelle reale Welt blockchain Netzwerke sind praktisch auf etwa 30 begrenzt Transaktionen pro Sekunde. Diese Einschränkung ist hauptsächlich auf die Tatsache zurückzuführen, dass die aktuellen synchronen Konsensmechanismen große zeitliche Sicherheitsmargen erfordern die voraussichtliche Bearbeitungszeit, die durch die noch verschärft wird 1

การแนะนำ

Blockchains ได้แสดงให้เห็นถึงคำมั่นสัญญาที่ยอดเยี่ยมของประโยชน์ใช้สอยในหลาย ๆ ด้านรวมถึง “Internet of Things” (IoT) การเงิน การกำกับดูแล การจัดการข้อมูลประจำตัว การกระจายอำนาจทางเว็บ และการติดตามสินทรัพย์ อย่างไรก็ตาม แม้ว่า คำมั่นสัญญาทางเทคโนโลยีและการพูดคุยครั้งยิ่งใหญ่ที่เรายังไม่เคยเห็น การปรับใช้เทคโนโลยีปัจจุบันในโลกแห่งความเป็นจริงอย่างมีนัยสำคัญ เราเชื่อว่านี่เป็นความล้มเหลวหลักห้าประการในปัจจุบัน กองเทคโนโลยี: ความสามารถในการปรับขนาด: ปริมาณการใช้ทรัพยากรทั่วโลก ในการประมวลผลแบนด์วิธและการจัดเก็บเพื่อให้ระบบประมวลผลรายการเดียวและจำนวนเท่าใด ธุรกรรมสามารถดำเนินการได้ตามสมควรภายใต้ สภาวะสูงสุด? การแยกตัวได้: ความต้องการที่แตกต่างกันของหลาย ๆ สามารถ ฝ่ายและแอปพลิเคชันได้รับการแก้ไขในระดับที่ใกล้เคียงที่สุดภายใต้กรอบการทำงานเดียวกันหรือไม่ การพัฒนา: เครื่องมือทำงานได้ดีแค่ไหน? ทำ API ตอบสนองความต้องการของนักพัฒนาหรือไม่? มีสื่อการเรียนไหม? มีการบูรณาการที่ถูกต้องหรือไม่? การกำกับดูแล: เครือข่ายสามารถคงความยืดหยุ่นไว้ได้หรือไม่ พัฒนาและปรับตัวตามกาลเวลา? ตัดสินใจได้ สร้างขึ้นด้วยความครอบคลุม ความชอบธรรม และ ความโปร่งใสเพื่อให้ความเป็นผู้นำที่มีประสิทธิผลของ ระบบกระจายอำนาจ? การบังคับใช้: เทคโนโลยีนี้ตอบสนองความต้องการอันร้อนแรงด้วยตัวมันเองจริงหรือ จำเป็นต้องใช้ “มิดเดิลแวร์” อื่นๆ เพื่อลดช่องว่างนี้หรือไม่ การใช้งานจริง? ในงานปัจจุบัน เรามุ่งหวังที่จะกล่าวถึงสองเรื่องแรก ประเด็นสำคัญ: ความสามารถในการปรับขนาดและการแยกตัวได้ ก็บอกแล้วเราเชื่อ กรอบงาน Polkadot สามารถให้การปรับปรุงที่มีความหมายในแต่ละประเภทของปัญหาเหล่านี้ การใช้งาน blockchain ที่ทันสมัยและมีประสิทธิภาพ เช่น ลูกค้า Parity Ethereum [17] สามารถประมวลผลได้เกินกว่า ธุรกรรม 3,000 รายการต่อวินาทีเมื่อทำงานบนฮาร์ดแวร์สำหรับผู้บริโภคที่มีประสิทธิภาพ อย่างไรก็ตาม โลกแห่งความเป็นจริงในปัจจุบัน blockchain เครือข่ายถูกจำกัดไว้ที่ประมาณ 30 เครือข่าย การทำธุรกรรมต่อวินาที ข้อจำกัดนี้ส่วนใหญ่มาจากข้อเท็จจริงที่ว่ากลไกฉันทามติแบบซิงโครนัสในปัจจุบันจำเป็นต้องมีระยะขอบด้านความปลอดภัยที่กว้าง ระยะเวลาการประมวลผลที่คาดไว้ ซึ่งจะรุนแรงขึ้นโดยโพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 2 ความปรารถนาที่จะสนับสนุนการใช้งานที่ช้าลง ทั้งนี้ก็เนื่องมาจาก สถาปัตยกรรมฉันทามติพื้นฐาน: กลไกการเปลี่ยนผ่านของรัฐ หรือวิธีการที่ฝ่ายต่างๆ เปรียบเทียบ และดำเนินธุรกรรม โดยมีตรรกะที่เชื่อมโยงกันเป็นพื้นฐาน เข้าสู่กลไกฉันทามติ "canonicalization" หรือ หมายถึงการที่ฝ่ายใดฝ่ายหนึ่งตกลงกันอย่างใดอย่างหนึ่งในจำนวนหนึ่ง เป็นไปได้ ถูกต้อง ประวัติศาสตร์ สิ่งนี้ใช้ได้กับทั้งระบบ proof-of-work (PoW) เช่น Bitcoin [15] และ Ethereum [5,23] และระบบ Proofof-stake (PoS) เช่น NXT [8] และ Bitshares [12]: ในที่สุดทุกคนก็ต้องทนทุกข์ทรมานจากความพิการแบบเดียวกัน มันเป็นเรื่องง่าย กลยุทธ์ที่ช่วยให้ blockchains ประสบความสำเร็จ อย่างไรก็ตาม โดยการเชื่อมต่อกลไกทั้งสองนี้เข้าด้วยกันอย่างแน่นหนาเป็นหน่วยเดียว ของโปรโตคอล เรายังรวมกลุ่มที่แตกต่างกันหลายรายการไว้ด้วยกัน นักแสดงและแอปพลิเคชันที่มีโปรไฟล์ความเสี่ยงที่แตกต่างกัน ข้อกำหนดความสามารถในการขยายขนาดที่แตกต่างกัน และความต้องการความเป็นส่วนตัวที่แตกต่างกัน ขนาดเดียวไม่เหมาะกับทั้งหมด บ่อยเกินไปที่จะเป็นกรณีที่ใน ความปรารถนาที่จะอุทธรณ์ในวงกว้าง เครือข่ายใช้ระดับของการอนุรักษ์ซึ่งส่งผลให้มีตัวส่วนร่วมต่ำที่สุด ให้บริการเพียงไม่กี่อย่างอย่างเหมาะสมและนำไปสู่ความล้มเหลวในที่สุด ในความสามารถในการสร้างสรรค์ ดำเนินการ และปรับตัวในบางครั้ง อย่างมาก ระบบบางอย่างเช่นเช่น ข้อเท็จจริง [21] ยกเลิกกลไกการเปลี่ยนสถานะโดยสิ้นเชิง อย่างไรก็ตาม ส่วนใหญ่ ยูทิลิตี้ที่เราต้องการนั้นต้องการความสามารถในการเปลี่ยนสถานะ ตามเครื่องของรัฐที่ใช้ร่วมกัน ปล่อยมันไปก็ช่วยได้ ปัญหาทางเลือก มันไม่ได้ให้ทางเลือกอื่น วิธีการแก้ปัญหา ดังนั้นจึงดูเหมือนชัดเจนว่าเป็นทิศทางที่สมเหตุสมผลอย่างหนึ่ง เพื่อสำรวจเป็นเส้นทางสู่การประมวลผลแบบกระจายอำนาจที่ปรับขนาดได้ แพลตฟอร์มคือการแยกสถาปัตยกรรมฉันทามติจาก กลไกการเปลี่ยนผ่านของรัฐ และอาจไม่น่าแปลกใจเลยที่นี่คือกลยุทธ์ที่ Polkadot ใช้เป็นโซลูชันในการขยายขนาด 2.1. ระเบียบวิธี การนำไปใช้ และเครือข่าย ชอบ Bitcoin และ Ethereum, Polkadot อ้างถึงโปรโตคอลเครือข่ายและโปรโตคอลหลัก (สมมุติมาจนบัดนี้) พร้อมกัน เครือข่ายสาธารณะที่รันโปรโตคอลนี้ Polkadot มีวัตถุประสงค์เพื่อเป็นโครงการที่เปิดกว้างและฟรี ข้อกำหนดของโปรโตคอลอยู่ภายใต้ใบอนุญาต Creative Commons และ รหัสถูกวางไว้ภายใต้ใบอนุญาต FLOSS โครงการนี้ก็คือ พัฒนาในลักษณะเปิดกว้างและยอมรับการมีส่วนร่วม มันจะมีประโยชน์ที่ไหนก็ตาม ระบบของ RFC ที่ไม่เหมือนกัน ข้อเสนอการปรับปรุงหลามจะอนุญาตให้มีวิธีการ การทำงานร่วมกันอย่างเปิดเผยเกี่ยวกับการเปลี่ยนแปลงและการอัพเกรดโปรโตคอล การใช้งานโปรโตคอล Polkadot ครั้งแรกของเรา จะเป็นที่รู้จักในนามแพลตฟอร์ม Parity Polkadot และความตั้งใจ รวมการใช้งานโปรโตคอลเต็มรูปแบบพร้อมกับ API การผูกมัด เช่นเดียวกับการใช้งาน Parity blockchain อื่น ๆ PPP ได้รับการออกแบบให้เป็นสแต็กเทคโนโลยี blockchain วัตถุประสงค์ทั่วไป ไม่ใช่เฉพาะสำหรับเครือข่ายสาธารณะหรือสำหรับ การดำเนินงานของเอกชน/กิจการร่วมค้า การพัฒนาของมันเช่นนี้ ไกลได้รับทุนจากหลายฝ่ายรวมถึงผ่าน ได้รับทุนสนับสนุนจากรัฐบาลอังกฤษ บทความนี้ยังคงอธิบาย Polkadot ภายใต้ บริบทของเครือข่ายสาธารณะ ฟังก์ชันการทำงานที่เราจินตนาการไว้ในเครือข่ายสาธารณะนั้นเหนือกว่าฟังก์ชันที่จำเป็นใน การตั้งค่าทางเลือก (เช่น ส่วนตัวและ/หรือสมาคม) นอกจากนี้ ในบริบทนี้ ขอบเขตทั้งหมดของ Polkadot สามารถทำได้ อธิบายและอภิปรายได้ชัดเจนยิ่งขึ้น นี่ไม่ได้หมายถึง ผู้อ่านควรตระหนักว่ากลไกบางอย่างอาจเกิดขึ้นได้ ได้รับการอธิบาย (เช่น การทำงานร่วมกันกับเครือข่ายสาธารณะอื่นๆ) ซึ่งไม่เกี่ยวข้องโดยตรงกับ Polkadot เมื่อใช้งานภายใต้สถานการณ์ที่ไม่เปิดเผยต่อสาธารณะ (“ได้รับอนุญาต”) 2.2. ผลงานที่ผ่านมา. มีการเสนอการแยกฉันทามติพื้นฐานออกจากการเปลี่ยนผ่านรัฐอย่างไม่เป็นทางการ เป็นการส่วนตัวเป็นเวลาอย่างน้อยสองปี - Max Kaye เป็นผู้เสนอกลยุทธ์ดังกล่าวในช่วงแรก ๆ ของ Ethereum. โซลูชันที่ปรับขนาดได้ที่ซับซ้อนยิ่งขึ้นที่เรียกว่า Chain ไฟเบอร์ ย้อนหลังไปถึงเดือนมิถุนายน 2014 และเผยแพร่ครั้งแรกในภายหลัง ในปีนั้น 1 ได้สร้างกรณีของรีเลย์เชนเดียวและหลายเชนที่เป็นเนื้อเดียวกัน ทำให้เกิดกลไกการดำเนินการระหว่างเชนที่โปร่งใส ได้รับการจ่ายเงินสำหรับ Decoherence ผ่านเวลาแฝงของธุรกรรม—ธุรกรรมที่ต้องการ การประสานงานของส่วนต่าง ๆ ของระบบจะ ใช้เวลาในการประมวลผลนานขึ้น Polkadot ใช้สถาปัตยกรรมส่วนใหญ่จากสิ่งนั้นและการสนทนาติดตามผลด้วย แม้ว่าจะมีความแตกต่างกันอย่างมากในการออกแบบและการเตรียมการก็ตาม แม้ว่าจะไม่มีระบบใดเทียบได้กับ Polkadot จริงๆ แล้วในการผลิต มีหลายระบบที่เกี่ยวข้องกัน ได้รับการเสนอแม้ว่าจะมีน้อยคนในระดับที่สำคัญก็ตาม รายละเอียด ข้อเสนอเหล่านี้สามารถแตกออกเป็นระบบ ซึ่งลดหรือลดแนวคิดเรื่องการเชื่อมโยงกันทั่วโลก เครื่องของรัฐซึ่งพยายามให้บริการทั่วโลก เครื่องซิงเกิลตันที่สอดคล้องกันผ่านชิ้นส่วนที่เป็นเนื้อเดียวกัน และกลุ่มที่มุ่งเป้าไปที่ความหลากหลายเท่านั้น 2.2.1. ระบบที่ไม่มีสถานะสากล Factom [21] คือระบบที่แสดงให้เห็นถึง Canonicality โดยไม่ต้องปฏิบัติตาม ความถูกต้อง ช่วยให้สามารถบันทึกข้อมูลได้อย่างมีประสิทธิภาพ เนื่องจากการหลีกเลี่ยงสภาวะโลกและความยากลำบาก ด้วยการปรับขนาดที่นำมาซึ่งสิ่งนี้ถือได้ว่าเป็นโซลูชันที่ปรับขนาดได้ อย่างไรก็ตามดังที่ได้กล่าวไปแล้วว่าชุดนี้ ของปัญหาที่แก้ไขได้นั้นเข้มงวดและเล็กลงอย่างมาก Tangle [18] เป็นแนวทางใหม่ในระบบฉันทามติ แทนที่จะจัดเรียงธุรกรรมออกเป็นบล็อกและสร้างฉันทามติในรายการที่เชื่อมโยงกันอย่างเคร่งครัดเพื่อให้มีการจัดระเบียบการเปลี่ยนแปลงรัฐที่เป็นที่ยอมรับทั่วโลก ส่วนใหญ่กลับละทิ้งแนวคิดเรื่องการสั่งซื้อที่มีโครงสร้างหนักและแทนที่ ผลักดันให้เกิดกราฟแบบอะไซเคิลโดยตรงของธุรกรรมที่ขึ้นอยู่กับรายการภายหลังซึ่งจะช่วยให้รายการก่อนหน้าเป็นแบบมาตรฐาน ผ่านการอ้างอิงที่ชัดเจน สำหรับการเปลี่ยนแปลงสถานะโดยพลการ กราฟการพึ่งพานี้จะกลายเป็นเรื่องยากอย่างรวดเร็ว อย่างไรก็ตามสำหรับ UTXO model2 ที่ง่ายกว่ามากสิ่งนี้จะกลายเป็น ค่อนข้างสมเหตุสมผล เนื่องจากระบบมีความสอดคล้องกันอย่างหลวมๆ เท่านั้น และโดยทั่วไปธุรกรรมจะเป็นอิสระจากกัน ประการอื่น ความเท่าเทียมระดับโลกจำนวนมากกลายมาค่อนข้างมาก เป็นธรรมชาติ การใช้โมเดล UTXO จะมีผล ffect ของการจำกัด Tangle ให้เป็น “สกุลเงิน” การโอนมูลค่าล้วนๆ ระบบมากกว่าสิ่งทั่วไปหรือขยายได้ นอกจากนี้ หากปราศจากการเชื่อมโยงกันทั่วโลกอย่างหนัก การโต้ตอบกับระบบอื่นๆ—ซึ่งมีแนวโน้มว่าจะต้องมีความสมบูรณ์ ความรู้ระดับปริญญาเหนือสถานะของระบบ—กลายเป็นสิ่งที่ปฏิบัติไม่ได้ 1https://github.com/ethereum/wiki/wiki/Chain-Fibers-Redux 2เอาท์พุทธุรกรรมที่ยังไม่ได้ใช้ แบบจำลองที่ Bitcoin ใช้โดยที่สถานะเป็นชุดของที่อยู่ที่เกี่ยวข้องกับค่าบางอย่างอย่างมีประสิทธิภาพ ธุรกรรมจะเปรียบเทียบที่อยู่ดังกล่าวและปฏิรูปให้เป็นที่อยู่ชุดใหม่ซึ่งมียอดรวมเท่ากัน

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 3 2.2.2. ระบบโซ่ต่างกัน โซ่ข้าง [3] คือ a ข้อเสนอเพิ่มเติมในโปรโตคอล Bitcoin ซึ่งจะอนุญาตให้มีปฏิสัมพันธ์ที่ไม่น่าเชื่อถือระหว่างห่วงโซ่ Bitcoin หลัก และโซ่ข้างเพิ่มเติม ไม่มีข้อกำหนดใดๆ ระดับของการโต้ตอบที่ 'สมบูรณ์' ระหว่าง side-chain: การโต้ตอบจะถูกจำกัดให้อนุญาตให้ side-chain เป็นได้ ผู้ดูแลทรัพย์สินของกันและกัน ซึ่งส่งผล – ในท้องถิ่น ศัพท์แสง—หมุดสองทาง 3 วิสัยทัศน์สุดท้ายมีไว้สำหรับกรอบงานที่สามารถระบุสกุลเงิน Bitcoin ได้ เพิ่มเติม ถ้ามีอุปกรณ์ต่อพ่วง ฟังก์ชันการทำงานผ่านการตรึงไว้ ไปยังเครือข่ายอื่นๆ ที่มีการเปลี่ยนแปลงสถานะที่แปลกใหม่มากขึ้น ระบบเกินกว่าที่โปรโตคอล Bitcoin อนุญาต ในแง่นี้ side-chains เน้นความสามารถในการขยายมากกว่าความสามารถในการขยายขนาด แท้จริงแล้ว ไม่มีข้อกำหนดพื้นฐานสำหรับความถูกต้องของไซด์เชน tokens จากห่วงโซ่เดียว (เช่น Bitcoin) จัดขึ้นในนามของห่วงโซ่ด้านข้างเท่านั้นที่มีการป้องกันโดย ความสามารถของ side-chain ในการจูงใจนักขุดให้ยอมรับมาตรฐาน การเปลี่ยนภาพที่ถูกต้อง ความปลอดภัยของเครือข่าย Bitcoin ไม่สามารถเปลี่ยนมาทำงานแทนผู้อื่นได้โดยง่าย blockchainส. นอกจากนี้ โปรโตคอลสำหรับการรับรอง Bitcoin นักขุดผสานเหมือง (ซึ่งเป็นการทำซ้ำอำนาจการกำหนดมาตรฐานของพวกเขาไปยังห่วงโซ่ด้านข้าง) และที่สำคัญกว่านั้นคือตรวจสอบความถูกต้องของการเปลี่ยนผ่านของห่วงโซ่ด้านข้างอยู่นอก ขอบเขตของข้อเสนอนี้ Cosmos [10] เป็นระบบหลายลูกโซ่ที่นำเสนอใน เส้นเดียวกับโซ่ข้าง สลับ Nakamoto PoW วิธีการที่เป็นเอกฉันท์สำหรับอัลกอริทึม Tendermint ของ Jae Kwon โดยพื้นฐานแล้ว มันอธิบายหลายเชน (ปฏิบัติการใน โซน) แต่ละแห่งใช้อินสแตนซ์ของ Tendermint ร่วมกับวิธีการสื่อสารที่ปราศจากความไว้วางใจผ่านทาง ห่วงโซ่ฮับหลัก การสื่อสารระหว่างเครือข่ายนี้จำกัดอยู่ที่การถ่ายโอนสินทรัพย์ดิจิทัล (“โดยเฉพาะเกี่ยวกับ tokens”) แทนที่จะเป็นข้อมูลที่กำหนดเอง อย่างไรก็ตาม การสื่อสารระหว่างเครือข่ายดังกล่าวมีเส้นทางส่งคืนข้อมูล เช่น เพื่อรายงานสถานะการโอนเงินให้ผู้ส่งทราบ เครื่องมือตรวจสอบความถูกต้องตั้งค่าสำหรับเชนแบบแบ่งโซน และโดยเฉพาะอย่างยิ่ง วิธีการจูงใจพวกเขาก็เหมือนกับโซ่ข้างซ้าย เป็นปัญหาที่ยังไม่ได้รับการแก้ไข สมมติฐานทั่วไปก็คือว่า แต่ละ chained chain จะเก็บ token ของค่าที่อัตราเงินเฟ้อถูกใช้เพื่อจ่ายสำหรับ validators ยังอยู่ในช่วงเริ่มต้น ของการออกแบบ ปัจจุบันข้อเสนอยังขาดรายละเอียดที่ครอบคลุมเกี่ยวกับวิธีการทางเศรษฐกิจในการบรรลุการขยายขนาด ความแน่นอนเหนือความถูกต้องสากล อย่างไรก็ตาม การเชื่อมโยงแบบหลวมๆ ที่จำเป็นระหว่างโซนและฮับจะช่วยให้ได้ เพื่อความยืดหยุ่นเพิ่มเติมเหนือพารามิเตอร์ของโซน โซ่เมื่อเปรียบเทียบกับระบบที่บังคับใช้แข็งแกร่งกว่า การเชื่อมโยงกัน 2.2.3. แคสเปอร์. ยังไม่มีรีวิวที่ครอบคลุมหรือการเปรียบเทียบแบบเทียบเคียงระหว่าง Casper [6] และ Polkadot ได้ทำไว้แล้วถึงแม้จะสามารถกวาดล้างได้พอสมควรก็ตาม (และไม่ถูกต้องตามลำดับ) ลักษณะของทั้งสอง Casper เป็นการพลิกโฉมวิธีการใช้อัลกอริธึมฉันทามติของ PoS อาจขึ้นอยู่กับผู้เข้าร่วมเดิมพันว่าส้อมใด ในที่สุดก็จะกลายเป็นที่ยอมรับ มีการพิจารณาอย่างมากเพื่อให้แน่ใจว่าเครือข่ายมีความแข็งแกร่ง forks แม้ว่าจะใช้เวลานานและมีระดับความสามารถในการขยายเพิ่มเติมนอกเหนือจากโมเดล Ethereum พื้นฐาน เช่น แคสเปอร์ในปัจจุบันมีแนวโน้มที่จะมีมากขึ้นอย่างมาก โปรโตคอลที่ซับซ้อนกว่า Polkadot และบรรพบุรุษของมัน และ การเบี่ยงเบนอย่างมากจากรูปแบบ blockchain พื้นฐาน มัน ยังไม่มีใครเห็นว่าแคสเปอร์จะทำซ้ำในอนาคตอย่างไร และจะมีลักษณะอย่างไรหากนำไปใช้จริงในที่สุด ในขณะที่ Casper และ Polkadot ต่างก็เป็นตัวแทนของโปรโตคอลใหม่ที่น่าสนใจ และในบางแง่มุม เป็นการเสริมของ Ethereum มีความแตกต่างอย่างมากระหว่างสิ่งเหล่านั้น เป้าหมายสูงสุดและเส้นทางสู่การใช้งาน แคสเปอร์เป็น Ethereum โครงการที่มีรากฐานเป็นศูนย์กลางซึ่งได้รับการออกแบบแต่แรกเริ่ม เป็นการเปลี่ยนแปลง PoS ของโปรโตคอลโดยไม่ต้องการ สร้าง blockchain ที่ปรับขนาดได้ขั้นพื้นฐาน ที่สำคัญก็คือ ออกแบบมาให้เป็นการฮาร์ดฟอร์ก แทนที่จะเป็นสิ่งอื่นใดที่กว้างขวางกว่า ดังนั้นลูกค้าและผู้ใช้ Ethereum ทั้งหมดจะเป็น จำเป็นต้องอัปเกรดหรือคงอยู่ในทางแยกของการนำไปใช้ที่ไม่แน่นอน ด้วยเหตุนี้ การใช้งานจึงยากขึ้นอย่างมาก เช่นเดียวกับที่มีอยู่ในโครงการที่มีการกระจายอำนาจในพื้นที่ที่คับแคบ จำเป็นต้องมีการประสานงาน Polkadot มีความแตกต่างหลายประการ ประการแรกและสำคัญที่สุด Polkadot ได้รับการออกแบบมาให้สามารถขยายและปรับขนาดได้อย่างสมบูรณ์ blockchain การทดสอบการพัฒนา การปรับใช้ และการโต้ตอบ เตียง มันถูกสร้างขึ้นเพื่อเป็นสายรัดที่สามารถป้องกันอนาคตได้ ดูดซึมใหม่ blockchainเทคโนโลยีเมื่อมีให้ใช้งานโดยไม่ต้องมีการประสานงานแบบกระจายอำนาจที่ซับซ้อนมากเกินไป หรือฮาร์ดฟอร์ก เราจินตนาการถึงกรณีการใช้งานหลายกรณีเช่นนี้แล้ว เป็นเครือข่ายร่วมที่เข้ารหัสและเครือข่ายความถี่สูง ด้วยเวลาบล็อกที่ต่ำมากซึ่งไม่สามารถทำได้จริง เวอร์ชันในอนาคตของ Ethereum ที่จินตนาการไว้ในปัจจุบัน ในที่สุด การมีเพศสัมพันธ์ระหว่างมันกับ Ethereum นั้นยอดเยี่ยมมาก หลวม; ไม่จำเป็นต้องดำเนินการใดๆ ในส่วนของ Ethereum เปิดใช้งานการส่งต่อธุรกรรมที่ไม่น่าเชื่อถือระหว่างทั้งสอง เครือข่าย กล่าวโดยย่อในขณะที่ Casper/Ethereum 2.0 และ Polkadot แบ่งปันความคล้ายคลึงกันบางอย่างที่เราเชื่อว่าเป็นเป้าหมายสุดท้ายของพวกเขา มีความแตกต่างอย่างมาก และแทนที่จะแข่งขันกัน โปรโตคอลทั้งสองมีแนวโน้มที่จะอยู่ร่วมกันในที่สุดภายใต้ ความสัมพันธ์ที่เป็นประโยชน์ร่วมกันในอนาคตอันใกล้

Einführung

Blockchains haben sich in mehreren Bereichen als vielversprechend erwiesen, darunter auch im „Internet der Dinge“. (IoT), Finanzen, Governance, Identitätsmanagement, Webdezentralisierung und Asset-Tracking. Trotz der Das technologische Versprechen und die großen Worte müssen wir noch sehen bedeutender realer Einsatz der gegenwärtigen Technologie. Wir glauben, dass dies auf fünf wesentliche Versäumnisse der Gegenwart zurückzuführen ist Technologie-Stacks: Skalierbarkeit: Wie viele Ressourcen weltweit ausgegeben werden über Verarbeitung, Bandbreite und Speicher, damit das System eine einzelne Transaktion verarbeiten kann und wie viele Transaktionen können angemessen abgewickelt werden Spitzenbedingungen? Isolierbarkeit: Kann den unterschiedlichen Bedürfnissen mehrerer Personen gerecht werden Parteien und Anträge im gleichen Rahmen nahezu optimal angesprochen werden? Entwickelbarkeit: Wie gut funktionieren die Tools? Tun Sie es die APIs erfüllen die Bedürfnisse der Entwickler? Sind Lehrmaterialien verfügbar? Sind die richtigen Integrationen vorhanden? Governance: Kann das Netzwerk flexibel bleiben? sich im Laufe der Zeit weiterentwickeln und anpassen? Können Entscheidungen sein mit ausreichender Inklusivität, Legitimität und gemacht Transparenz zur Gewährleistung einer effektiven Führung eines dezentrales System? Anwendbarkeit: Befriedigt die Technologie tatsächlich allein ein dringendes Bedürfnis? Ist weitere „Middleware“ erforderlich, um die Lücke zu schließen? tatsächliche Anwendungen? In der vorliegenden Arbeit wollen wir uns mit den ersten beiden befassen Probleme: Skalierbarkeit und Isolierbarkeit. Das heißt, wir glauben Das Polkadot-Framework kann bei jeder dieser Problemklassen sinnvolle Verbesserungen bewirken. Moderne, effiziente blockchain-Implementierungen wie Der Paritäts-Client Ethereum [17] kann mehr verarbeiten 3.000 Transaktionen pro Sekunde bei Ausführung auf leistungsstarker Consumer-Hardware. Allerdings aktuelle reale Welt blockchain Netzwerke sind praktisch auf etwa 30 begrenzt Transaktionen pro Sekunde. Diese Einschränkung ist hauptsächlich auf die Tatsache zurückzuführen, dass die aktuellen synchronen Konsensmechanismen große zeitliche Sicherheitsmargen erfordern die voraussichtliche Bearbeitungszeit, die durch die noch verschärft wirdPOLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 2 Wunsch, langsamere Implementierungen zu unterstützen. Das liegt daran die zugrunde liegende Konsensarchitektur: der staatliche Übergangsmechanismus oder die Mittel, mit denen die Parteien zusammenarbeiten und die Ausführung von Transaktionen ist grundsätzlich logisch in den Konsens-„Kanonisierungs“-Mechanismus oder den Mittel, mit denen sich die Parteien auf eine von mehreren einigen einigen mögliche, gültige Geschichten. Dies gilt gleichermaßen für proof-of-work (PoW)-Systeme wie Bitcoin [15] und Ethereum [5,23] und Proof-of-Stake (PoS)-Systeme wie NXT [8] und Bitshares [12]: alle leiden letztlich unter der gleichen Behinderung. Es ist einfach Strategie, die zum Erfolg von blockchains beigetragen hat. Allerdings durch die enge Verbindung dieser beiden Mechanismen zu einer einzigen Einheit des Protokolls bündeln wir auch mehrere verschiedene Akteure und Anwendungen mit unterschiedlichen Risikoprofilen, unterschiedlichen Skalierbarkeitsanforderungen und unterschiedlichen Datenschutzanforderungen. Eine Einheitsgröße passt nicht für alle. Zu oft kommt es vor, dass in einem Im Streben nach breiter Anziehungskraft nimmt ein Netzwerk einen Grad an Konservatismus an, der zu einem kleinsten gemeinsamen Nenner führt nur wenigen optimal zu dienen und letztendlich zum Scheitern zu führen manchmal in der Fähigkeit zur Innovation, Leistung und Anpassung dramatisch. Einige Systeme wie z.B. Tatsache ist, dass [21] den Zustandsübergangsmechanismus vollständig fallen lässt. Allerdings ist ein Großteil davon Der von uns gewünschte Nutzen erfordert die Fähigkeit zum Übergangszustand gemäß einer gemeinsamen Zustandsmaschine. Das Ablegen löst das Problem ein alternatives Problem; es bietet keine Alternative Lösung. Es scheint daher klar, dass es eine vernünftige Richtung gibt als Weg zu einem skalierbaren dezentralen Computer zu erkunden Die Plattform besteht darin, die Konsensarchitektur von zu entkoppeln der Zustandsübergangsmechanismus. Und es überrascht vielleicht nicht, dass dies die Strategie ist, die Polkadot als Lösung für die Skalierbarkeit verfolgt. 2.1. Protokoll, Implementierung und Netzwerk. Wie Bitcoin und Ethereum, Polkadot beziehen sich sowohl auf ein Netzwerkprotokoll als auch auf das (bisher vorausgesetzte) Primäre öffentliches Netzwerk, das dieses Protokoll ausführt. Polkadot soll ein kostenloses und offenes Projekt sein, dessen Protokollspezifikation unter einer Creative Commons-Lizenz steht und die Code, der unter eine FLOSS-Lizenz gestellt wird. Das Projekt ist wird offen entwickelt und nimmt Beiträge entgegen wo immer sie nützlich sind. Ein System von RFCs, nicht unähnlich Die Python Enhancement Proposals ermöglichen eine Möglichkeit öffentliche Zusammenarbeit bei Protokolländerungen und -aktualisierungen. Unsere erste Implementierung des Polkadot-Protokolls wird als Parity Polkadot-Plattform bekannt sein und wird umfassen eine vollständige Protokollimplementierung zusammen mit der API Bindungen. Wie andere Parity blockchain-Implementierungen PPP ist als allgemeiner blockchain Technologie-Stack konzipiert, weder speziell für ein öffentliches Netzwerk noch für Privat-/Konsortialbetrieb. Die Entwicklung davon also Bisher wurde es von mehreren Parteien finanziert, unter anderem durch ein Zuschuss der britischen Regierung. Dieses Papier beschreibt jedoch Polkadot unter dem Kontext eines öffentlichen Netzwerks. Die Funktionalität, die wir uns in einem öffentlichen Netzwerk vorstellen, ist eine Obermenge dessen, was in erforderlich ist alternative (z. B. private und/oder konsortiale) Einstellungen. Darüber hinaus kann in diesem Zusammenhang der volle Umfang von Polkadot genutzt werden klarer beschrieben und besprochen werden. Das bedeutet Der Leser sollte sich darüber im Klaren sein, dass es bestimmte Mechanismen geben kann beschrieben werden (z. B. Zusammenarbeit mit anderen öffentlichen Netzwerken), die für Polkadot nicht direkt relevant sind wenn es in nichtöffentlichen („erlaubten“) Situationen eingesetzt wird. 2.2. Vorherige Arbeit. Es wurde informell vorgeschlagen, den zugrunde liegenden Konsens vom Staatsübergang zu entkoppeln mindestens zwei Jahre lang privat – Max Kaye war in den frühen Tagen von ein Befürworter einer solchen Strategie Ethereum. Eine komplexere skalierbare Lösung, bekannt als Chain Fasern, die auf Juni 2014 zurückgehen und später erstmals veröffentlicht wurden In diesem Jahr plädierte1 für eine einzelne Relay-Chain und mehrere homogene Chains, die einen transparenten Interchain-Ausführungsmechanismus bieten. Dekohärenz wurde bezahlt durch Transaktionslatenz – Transaktionen, die das erfordern Koordination unterschiedlicher Teile des Systems würde die Bearbeitung dauert länger. Polkadot übernimmt einen Großteil seiner Architektur daraus und aus den Folgegesprächen mit Es wird von verschiedenen Menschen genutzt, auch wenn es sich in seiner Gestaltung und Ausstattung stark unterscheidet. Es gibt zwar keine mit Polkadot vergleichbaren Systeme Tatsächlich in Produktion, mehrere Systeme von einiger Relevanz wurden vorgeschlagen, wenn auch nur wenige in nennenswertem Umfang Detail. Diese Vorschläge können seinin Systeme zerlegt die die Vorstellung einer global kohärenten Situation aufgeben oder reduzieren Zustandsautomaten, also solche, die versuchen, einen globalen Zustand bereitzustellen kohärente Singleton-Maschine durch homogene Shards und diejenigen, die nur auf Heterogenität abzielen. 2.2.1. Systeme ohne globalen Staat. Factom [21] ist ein System, das Kanonizität ohne entsprechendes demonstriert Gültigkeit, wodurch die Chronik der Daten effektiv ermöglicht wird. Wegen der Vermeidung des globalen Zustands und der Schwierigkeiten Mit der damit verbundenen Skalierung kann es als skalierbare Lösung betrachtet werden. Allerdings ist, wie bereits erwähnt, das Set Die Anzahl der Probleme, die es löst, ist grundsätzlich und wesentlich kleiner. Tangle [18] ist ein neuartiger Ansatz für Konsenssysteme. Anstatt Transaktionen in Blöcken anzuordnen und einen Konsens über eine streng verknüpfte Liste zu bilden, um eine global kanonische Ordnung von Zustandsänderungen zu erreichen, wird die Idee einer stark strukturierten Ordnung weitgehend aufgegeben und stattdessen drängt auf einen gerichteten azyklischen Graphen abhängiger Transaktionen mit späteren Elementen, die dabei helfen, frühere Elemente zu kanonisieren durch explizite Referenzierung. Für beliebige Zustandsänderungen gilt: dieser Abhängigkeitsgraph würde schnell unlösbar werden, Für das viel einfachere Modell UTXO2 gilt dies jedoch durchaus vernünftig. Weil das System nur lose kohärent ist und die Transaktionen im Allgemeinen voneinander unabhängig sind Andererseits wird ein großer Teil der globalen Parallelität ziemlich groß natürlich. Die Verwendung des Modells UTXO hat tatsächlich den Effekt Tangle auf eine reine Werttransfer-„Währung“ zu beschränken System und nicht etwas Allgemeineres oder Erweiterbares. Darüber hinaus ohne die harte globale Kohärenz, die Interaktion mit anderen Systemen – die tendenziell eines Absoluten bedürfen Grad des Wissens über den Systemzustand wird unpraktisch. 1https://github.com/ethereum/wiki/wiki/Chain-Fibers-Redux 2nicht ausgegebene Transaktionsausgabe, das Modell, das Bitcoin verwendet, wobei der Status effektiv der Satz von Adressen ist, die einem Wert zugeordnet sind; Transaktionen sammeln solche Adressen und formen sie in einen neuen Satz von Adressen um, deren Gesamtsumme äquivalent ist

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 3 2.2.2. Heterogene Kettensysteme. Seitenketten [3] ist ein vorgeschlagene Ergänzung des Bitcoin-Protokolls, die eine vertrauenslose Interaktion zwischen der Hauptkette Bitcoin ermöglichen würde und zusätzliche Seitenketten. Für welche ist keine vorgesehen Grad der „reichen“ Wechselwirkung zwischen Seitenketten: Die Wechselwirkung wäre darauf beschränkt, die Seitenketten zuzulassen Verwalter des gegenseitigen Vermögens, mit Wirkung – vor Ort Jargon – eine zweiseitige Bindung 3. Die Endvision ist ein Rahmen, mit dem die Währung Bitcoin bereitgestellt werden könnte zusätzliche, wenn auch periphere Funktionalität durch Papping auf einige andere Ketten mit exotischeren Zustandsübergängen Systeme, als das Protokoll Bitcoin zulässt. In diesem Sinne, Bei Sidechains geht es eher um Erweiterbarkeit als um Skalierbarkeit. Tatsächlich ist die Gültigkeit von Seitenketten grundsätzlich nicht geregelt; tokens aus einer Kette (z. B. Bitcoin) im Namen einer Seitenkette gehalten werden, werden nur durch die gesichert Die Fähigkeit der Seitenkette, Bergleute zur Kanonisierung zu motivieren gültige Übergänge. Die Sicherheit des Netzwerks Bitcoin kann nicht einfach in die Arbeit für andere überführt werden blockchains. Darüber hinaus ein Protokoll zur Sicherstellung von Bitcoin Bergleute führen Merge-Mine durch (d. h. duplizieren ihre Kanonisierungskraft auf die der Seitenkette) und, was noch wichtiger ist, sie validieren, dass die Übergänge der Seitenkette außerhalb der Seitenkette liegen Umfang dieses Vorschlags. Cosmos [10] ist ein vorgeschlagenes Mehrkettensystem im Gleiche Ader wie die Seitenketten, Austausch des Nakamoto PoW Konsensmethode für den Tendermint-Algorithmus von Jae Kwon. Im Wesentlichen beschreibt es mehrere Ketten (die in arbeiten). Zonen), die jeweils einzelne Instanzen von Tendermint verwenden, zusammen mit einem Mittel zur vertrauensfreien Kommunikation über a Hauptnabenkette. Diese Kommunikation zwischen den Ketten beschränkt sich auf die Übertragung digitaler Vermögenswerte („insbesondere über tokens“) und nicht auf willkürliche Informationen. Eine solche Kommunikation zwischen den Ketten verfügt jedoch über einen Rückweg für Daten. z.B. um dem Absender den Status der Übertragung mitzuteilen. Validator-Sets für die Zonenketten und insbesondere Die Mittel, Anreize zu schaffen, bleiben wie Seitenketten übrig als ungelöstes Problem. Die allgemeine Annahme ist das Jede Zonenkette wird selbst einen Wert von token halten, dessen Inflation zur Bezahlung von validators verwendet wird. Noch im Anfangsstadium Hinsichtlich des Designs mangelt es dem Vorschlag derzeit an umfassenden Details zu den wirtschaftlichen Mitteln zur Erreichung der Skalierbarkeit Gewissheit über globale Gültigkeit. Die erforderliche lockere Kohärenz zwischen den Zonen und dem Hub wird dies jedoch ermöglichen für zusätzliche Flexibilität hinsichtlich der Parameter der Zone Ketten im Vergleich zu einem System, das stärker durchsetzt Kohärenz. 2.2.3. Casper. Bisher gibt es noch keine umfassende Rezension oder einen direkten Vergleich zwischen Casper [6] und Polkadot wurden gemacht, obwohl man ein ziemlich umfassendes Bild machen kann (und dementsprechend ungenaue) Charakterisierung der beiden. Casper ist eine Neuinterpretation eines PoS-Konsensalgorithmus könnte darauf basieren, dass die Teilnehmer auf welche Gabel wetten würde letztendlich kanonisch werden. Es wurde viel Wert darauf gelegt, sicherzustellen, dass es netzwerkfähig ist Forks, auch wenn sie verlängert sind, und verfügen zusätzlich zum Basismodell Ethereum über ein gewisses Maß an Skalierbarkeit. Als So war Casper bisher tendenziell wesentlich mehr komplexeres Protokoll als Polkadot und seine Vorfahren, und a erhebliche Abweichung vom Grundformat blockchain. Es Es bleibt unklar, wie Casper in Zukunft iterieren wird und wie es aussehen wird, wenn es endlich eingesetzt wird. Während Casper und Polkadot beide interessante neue Protokolle und in gewissem Sinne Erweiterungen davon darstellen Ethereum, es gibt erhebliche Unterschiede zwischen ihnen ultimative Ziele und Wege zum Einsatz. Casper ist ein Ethereum Stiftungszentriertes Projekt, ursprünglich entworfen eine PoS-Änderung des Protokolls sein, ohne dass dies gewünscht wird Erstellen Sie ein grundsätzlich skalierbares blockchain. Entscheidend ist, dass es so ist Entwickelt als Hard-Fork und nicht als etwas Expansiveres, und daher wären es alle Ethereum-Clients und -Benutzer erforderlich, um ein Upgrade durchzuführen oder auf einer Abzweigung mit ungewisser Akzeptanz zu bleiben. Dadurch wird die Bereitstellung erheblich erschwert, wie es bei einem dezentralen Projekt mit Engpässen üblich ist Koordination ist notwendig. Polkadot unterscheidet sich in mehrfacher Hinsicht; in erster Linie, Polkadot ist vollständig erweiterbar und skalierbar blockchain Entwicklungs-, Bereitstellungs- und Interaktionstest Bett. Es ist so gebaut, dass es ein weitgehend zukunftssicheres Geschirr ist Neues assimilieren blockchainTechnologie, sobald sie verfügbar ist, ohne übermäßig komplizierte dezentrale Koordination oder harte Gabeln. Wir stellen uns bereits mehrere Anwendungsfälle vor, z als verschlüsselte Konsortialketten und Hochfrequenzketten mit sehr niedrigen Blockzeiten, die unrealistisch sind jede derzeit geplante zukünftige Version von Ethereum. Schließlich ist die Kopplung zwischen ihm und Ethereum extrem locker; Es ist keine Aktion seitens Ethereum erforderlich ermöglichen eine vertrauenswürdige Transaktionsweiterleitung zwischen den beiden Netzwerke. Kurz gesagt, während Casper/Ethereum 2.0 und Polkadot Wir haben einige flüchtige Gemeinsamkeiten, von denen wir glauben, dass sie ihr Endziel sind ist wesentlich unterschiedlich und das anstatt zu konkurrieren, Die beiden Protokolle werden wahrscheinlich letztendlich unter einem koexistieren eine für beide Seiten vorteilhafte Beziehung auf absehbare Zeit.

สรุป

Polkadot คือ multi-chain ที่ต่างกันที่ปรับขนาดได้ นี้ หมายความว่าไม่เหมือนกับการใช้งาน blockchain ก่อนหน้านี้ ซึ่งได้เน้นการให้บริการห่วงโซ่เดียวที่แตกต่างกัน องศาทั่วไปเหนือแอปพลิเคชันที่เป็นไปได้ Polkadot ตัวมันเองได้รับการออกแบบมาเพื่อไม่ให้มีฟังก์ชันการทำงานของแอปพลิเคชันโดยธรรมชาติเลย แต่ Polkadot เป็นผู้ให้ข้อมูลพื้นฐาน “รีเลย์-เชน” ซึ่งสามารถตรวจสอบความถูกต้องได้จำนวนมาก โครงสร้างข้อมูลไดนามิกที่เชื่อมโยงกันทั่วโลกอาจถูกโฮสต์ เคียงข้างกัน เราเรียกโครงสร้างข้อมูลเหล่านี้ว่า "แบบขนาน" โซ่หรือพาราเชน แม้ว่าจะไม่จำเป็นต้องระบุเป็นพิเศษก็ตาม พวกมันจะมี blockchain ในธรรมชาติ กล่าวอีกนัยหนึ่ง Polkadot อาจถือว่าเทียบเท่ากับชุดของลูกโซ่อิสระ (เช่น ชุดที่มี Ethereum, Ethereum Classic, Namecoin และ Bitcoin) ยกเว้นสองประเด็นที่สำคัญมาก: • การรักษาความปลอดภัยแบบรวมกลุ่ม; • การทำธุรกรรมระหว่างเครือข่ายที่ปราศจากความไว้วางใจ ประเด็นเหล่านี้คือเหตุผลที่เราถือว่า Polkadot สามารถ "ปรับขนาดได้" โดยหลักการแล้ว ปัญหาที่จะปรับใช้บน Polkadot อาจถูกขนานอย่างมาก—ขยายขนาด—มากกว่า parachains จำนวนมาก เนื่องจากทุกแง่มุมของแต่ละคน parachain อาจดำเนินการแบบขนานโดยส่วนที่แตกต่างกันของเครือข่าย Polkadot ระบบมีความสามารถบางอย่าง เพื่อปรับขนาด Polkadot ให้ชิ้นส่วนที่ค่อนข้างเปลือยเปล่า 3 ซึ่งตรงข้ามกับหมุดทางเดียวซึ่งโดยพื้นฐานแล้วคือการทำลาย tokens ในสายโซ่หนึ่งเพื่อสร้าง tokens ในอีกสายหนึ่งโดยไม่มี กลไกในการสนทนาเพื่อกู้คืน tokens ดั้งเดิมโพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 4 โครงสร้างพื้นฐานทำให้ความซับซ้อนมากต้องได้รับการแก้ไขในระดับมิดเดิลแวร์ นี่เป็นการตัดสินใจอย่างมีสติโดยมีจุดประสงค์เพื่อลดความเสี่ยงในการพัฒนา ซอฟต์แวร์ที่จำเป็นในการพัฒนาภายในระยะเวลาอันสั้น และมีความมั่นใจในระดับดีในเรื่องความปลอดภัยและ ความทนทาน 3.1. ปรัชญาของ Polkadot Polkadot ควร มอบรากฐานที่แข็งแกร่งอย่างแท้จริงให้กับคุณ สร้างคลื่นลูกใหม่ของระบบฉันทามติทันที สเปกตรัมความเสี่ยงจากการออกแบบที่ครบกำหนดในการผลิต สู่ความคิดใหม่ๆ ด้วยการให้การรับประกันที่รัดกุมในเรื่องความปลอดภัย การแยกตัว และการสื่อสาร Polkadot สามารถทำได้ parachains ให้เลือกจากคุณสมบัติต่างๆ มากมาย แท้จริงแล้ว เราคาดการณ์ว่า blockchain การทดลองต่างๆ จะผลักดันคุณสมบัติของสิ่งที่ถือว่าสมเหตุสมผล วันนี้ เราเห็นอนุรักษ์นิยม เครือที่มีมูลค่าสูงคล้ายกับ Bitcoin หรือ Z-cash [20] อยู่ร่วมกันพร้อมกับมูลค่าที่ต่ำกว่า “theme-chains” (การตลาดที่สนุกสนานมาก) และเครือข่ายทดสอบ โดยมีค่าธรรมเนียมเป็นศูนย์หรือเกือบเป็นศูนย์ เราเห็นการเข้ารหัสอย่างสมบูรณ์ “มืด” กลุ่มเครือที่ดำเนินงานเคียงข้าง—และแม้กระทั่ง ให้บริการแก่—เครือข่ายแบบเปิดและใช้งานได้ดี เช่นที่ชอบ Ethereum เราเห็นการทดลองใหม่ๆ เครือข่ายที่ใช้ VM เช่น wasm ที่คิดตามเวลาแบบอัตนัย ห่วงโซ่ที่ถูกใช้เป็นวิธีหนึ่งในเอาท์ซอร์สปัญหาการคำนวณที่ยากจากห่วงโซ่ที่มีลักษณะคล้าย Ethereum ที่เป็นผู้ใหญ่มากขึ้น หรือเชนแบบ Bitcoin ที่จำกัดมากขึ้น ในการจัดการการอัพเกรดลูกโซ่ Polkadot จะทำโดยธรรมชาติ สนับสนุนโครงสร้างการกำกับดูแลบางประเภทซึ่งอาจอิงตาม เกี่ยวกับระบบการเมืองที่มั่นคงที่มีอยู่และมีแง่มุมสองสภาที่คล้ายกับสภากระดาษเหลือง [24] เช่น ผู้มีอำนาจขั้นสูงสุด ผู้ถือ token ที่มีความเชื่อถือได้จะมีการควบคุม "การลงประชามติ" เพื่อสะท้อนถึงผู้ใช้ ความจำเป็นในการพัฒนา แต่ความต้องการของนักพัฒนาในด้านความชอบธรรม เราคาดหวังว่าจะมีทิศทางที่สมเหตุสมผล สองห้องจากคณะกรรมการ "ผู้ใช้" (ประกอบด้วย ผูกมัด validators) และมีการจัดตั้งคณะกรรมการ "ด้านเทคนิค" ของนักพัฒนาลูกค้ารายใหญ่และผู้เล่นในระบบนิเวศ ที่ เนื้อหาของผู้ถือ token จะรักษาความชอบธรรมขั้นสูงสุดและก่อให้เกิดความยิ่งใหญ่ในการขยาย ปรับพารามิเตอร์ แทนที่หรือยุบโครงสร้างนี้ ซึ่งเป็นสิ่งที่เรา อย่าสงสัยในความจำเป็นในที่สุด: ตามคำพูดของทเวน “รัฐบาลและผ้าอ้อมต้องเปลี่ยนบ่อยๆและเพื่อ เหตุผลเดียวกัน” ในขณะที่การกำหนดพารามิเตอร์ใหม่โดยทั่วไปเป็นเรื่องเล็กน้อยในการจัดเตรียมภายในกลไกฉันทามติที่ใหญ่กว่า การเปลี่ยนแปลงเชิงคุณภาพมากกว่า เช่น การแทนที่และการเพิ่มจะ มีแนวโน้มว่าจะต้องเป็น “คำสั่งซอฟต์เดครี” ที่ไม่อัตโนมัติ (เช่น ผ่านการบัญญัติมาตรฐานของหมายเลขบล็อกและ hash ของเอกสารที่ระบุโปรโตคอลใหม่อย่างเป็นทางการ) หรือจำเป็นต้องมีกลไกฉันทามติหลักเพื่อให้มี ภาษาที่อุดมสมบูรณ์เพียงพอที่จะอธิบายแง่มุมใด ๆ ของตัวเอง ซึ่งอาจจำเป็นต้องเปลี่ยนแปลง อันหลังเป็นเป้าหมายสุดท้าย อย่างไรก็ตาม อดีตมีแนวโน้มที่จะถูกเลือกเพื่อที่จะ อำนวยความสะดวกในการพัฒนาไทม์ไลน์ที่เหมาะสม หลักคำสอนหลักของ Polkadot และกฎเกณฑ์ภายในนั้น เราประเมินการตัดสินใจออกแบบทั้งหมดคือ: น้อยที่สุด: Polkadot ควรมีฟังก์ชันการทำงานน้อยที่สุด ง่าย: ไม่ควรมีความซับซ้อนเพิ่มเติม ในโปรโตคอลพื้นฐานเกินกว่าที่จะสมเหตุสมผล ที่ถูกโหลดเข้าสู่มิดเดิลแวร์ วางผ่านก parachain หรือนำมาใช้ในการเพิ่มประสิทธิภาพในภายหลัง ทั่วไป: ไม่มีข้อกำหนดที่ไม่จำเป็น, ข้อจำกัด หรือควรวางข้อจำกัดไว้บนพาราเชน Polkadot ควรเป็นเตียงทดสอบสำหรับการพัฒนาระบบฉันทามติที่สามารถปรับให้เหมาะสมได้ผ่าน ทำให้แบบจำลองที่ส่วนขยายพอดีกับนามธรรมมากที่สุด แข็งแกร่ง: Polkadot ควรจัดให้มีพื้นฐาน ชั้นฐานที่มั่นคง นอกจากความสมบูรณ์ทางเศรษฐกิจแล้ว ยังหมายถึงการกระจายอำนาจเพื่อลดให้เหลือน้อยที่สุดอีกด้วย เวกเตอร์สำหรับการโจมตีที่ให้ผลตอบแทนสูง

Zusammenfassung

Polkadot ist eine skalierbare heterogene Multikette. Dies bedeutet, dass im Gegensatz zu früheren blockchain-Implementierungen die sich auf die Bereitstellung einer einzigen Kette unterschiedlicher Produkte konzentriert haben Grad der Allgemeinheit über potenzielle Anwendungen, Polkadot selbst ist so konzipiert, dass es überhaupt keine inhärente Anwendungsfunktionalität bietet. Vielmehr liefert Polkadot das Fundament „Relaiskette“, auf der eine große Anzahl validierbarer, Es können global kohärente dynamische Datenstrukturen gehostet werden Seite an Seite. Wir nennen diese Datenstrukturen „parallelisiert“. Ketten oder Parachains, obwohl kein besonderer Bedarf dafür besteht sie sollen blockchain in der Natur sein. Mit anderen Worten, Polkadot kann als äquivalent zu einer Menge unabhängiger Ketten angesehen werden (z. B. der Menge, die enthält Ethereum, Ethereum Classic, Namecoin und Bitcoin) bis auf zwei sehr wichtige Punkte: • Gebündelte Sicherheit; • Vertrauensfreie Interchain-Transaktionsfähigkeit. Aufgrund dieser Punkte halten wir Polkadot für „skalierbar“. Im Prinzip kann ein Problem, das auf Polkadot bereitgestellt werden soll, im Wesentlichen parallelisiert – skaliert – werden eine große Anzahl von Parachains. Da alle Aspekte von jedem Parachain kann parallel von einem anderen Segment des Polkadot-Netzwerks ausgeführt werden, das System verfügt über einige Fähigkeiten zu skalieren. Polkadot bietet ein eher schlichtes Stück davon 3im Gegensatz zu einer Einwegbindung, bei der im Wesentlichen tokens in einer Kette zerstört werden, um tokens in einer anderen ohne das zu erstellen Mechanismus, um das Gegenteil zu tun und die ursprünglichen tokens wiederherzustellenPOLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 4 Infrastruktur, so dass ein Großteil der Komplexität auf der Middleware-Ebene angegangen werden muss. Dies ist eine bewusste Entscheidung, die darauf abzielt, das Entwicklungsrisiko zu verringern und dies zu ermöglichen erforderliche Software innerhalb kurzer Zeit zu entwickeln und mit einem guten Maß an Vertrauen in seine Sicherheit und Robustheit. 3.1. Die Philosophie von Polkadot. Polkadot sollte bieten eine absolut grundsolide Grundlage Bauen Sie die nächste Welle von Konsenssystemen auf das Risikospektrum produktionsfähiger ausgereifter Konstruktionen zu aufkeimenden Ideen. Durch die Bereitstellung starker Garantien für Sicherheit, Isolation und Kommunikation kann Polkadot dies ermöglichen Parachains können selbst aus einer Reihe von Eigenschaften auswählen. Tatsächlich gehen wir davon aus, dass verschiedene experimentelle blockchains die Eigenschaften dessen, was als sinnvoll angesehen werden könnte, vorantreiben heute. Wir sehen konservativ, hochwertige Ketten ähnlich Bitcoin oder Z-Cash [20], die neben niedrigeren Werten koexistieren „Themenketten“ (so ein Marketing, so lustig) und Testnetze mit null oder nahezu null Gebühren. Wir sehen vollständig verschlüsselt, „dunkle“, Konsortiumsketten, die daneben operieren – und sogar Bereitstellung von Dienstleistungen für hochfunktionale und offene Ketten wie solche wie Ethereum. Wir sehen experimentelles Neues VM-basierte Ketten wie ein subjektiv zeitbelasteter Wasm Die Kette wird als Mittel zur Auslagerung schwieriger Rechenprobleme aus einer ausgereifteren Ethereum-ähnlichen Kette verwendet oder eine eingeschränktere Bitcoin-ähnliche Kette. Um Ketten-Upgrades zu verwalten, wird Polkadot von Natur aus verwendet Unterstützen Sie wahrscheinlich eine Art Governance-Struktur auf bestehenden stabilen politischen Systemen und hat einen Zweikammeraspekt, ähnlich dem Yellow Paper Council [24]. Als Die ultimative Autorität, die zugrunde liegenden steckbaren token-Inhaber, hätte die „Referendums“-Kontrolle. Um die Benutzerfreundlichkeit widerzuspiegeln Angesichts des Entwicklungsbedarfs, aber des Legitimitätsbedarfs der Entwickler gehen wir davon aus, dass sich eine vernünftige Richtung herausbilden würde Die beiden Kammern bestehen aus einem „Benutzer“-Ausschuss (bestehend aus gebunden validators) und ein „technischer“ Ausschuss gebildet großer Kundenentwickler und Ökosystemteilnehmer. Die Die Gruppe der token-Inhaber würde die ultimative Legitimität behalten und eine Supermehrheit bilden, um diese Struktur zu erweitern, neu zu parametrisieren, zu ersetzen oder aufzulösen, was wir tun Zweifeln Sie nicht an der eventuellen Notwendigkeit: in den Worten von Twain „Regierungen und Windeln müssen oft und für immer gewechselt werden aus dem gleichen Grund“. Während eine Neuparametrisierung in der Regel trivial innerhalb eines größeren Konsensmechanismus zu arrangieren ist, wären eher qualitative Änderungen wie Ersatz und Erweiterung erforderlich Wahrscheinlich muss es sich entweder um nicht automatisierte „Soft-Dekrete“ handeln (z. B. durch die Kanonisierung einer Blocknummer und der hash eines Dokuments, das das neue Protokoll offiziell spezifiziert) oder es erforderlich machen, dass der Kernkonsensmechanismus Folgendes enthält: eine ausreichend reichhaltige Sprache, um jeden Aspekt ihrer selbst zu beschreiben was möglicherweise geändert werden muss. Letzteres ist ein mögliches Ziel, Ersteres wird jedoch eher gewählt, um dies zu tun einen angemessenen Entwicklungszeitplan ermöglichen. Die wichtigsten Grundsätze von Polkadot und die darin enthaltenen Regeln Wir bewerten alle Designentscheidungen: Minimal: Polkadot sollte möglichst wenig Funktionalität haben. Einfach: Es sollte keine zusätzliche Komplexität vorhanden sein im Basisprotokoll enthalten, als vernünftigerweise möglich ist in Middleware geladen, durch a gelegt parachain oder in einer späteren Optimierung eingeführt. Allgemein: keine unnötige Anforderung, Einschränkung oder Parachains sollten eingeschränkt werden; Polkadot sollte ein Prüfstand für die Entwicklung eines Konsenssystems sein, das dadurch optimiert werden kann Das Modell, in das Erweiterungen passen, so abstrakt wie möglich gestalten. Robust: Polkadot sollte eine grundsätzliche Bereitstellung bieten Stabile Basisschicht. Neben der wirtschaftlichen Solidität bedeutet dies auch eine Dezentralisierung zur Minimierung die Vektoren für hochlohnende Angriffe.

การเข้าร่วมใน Polkadot

มีบทบาทพื้นฐานสี่ประการในการบำรุงรักษา Polkadot เครือข่าย: ผู้ประสานงาน ชาวประมง ผู้เสนอชื่อ และ validator ใน การใช้งานที่เป็นไปได้อย่างหนึ่งของ Polkadot บทบาทหลัง จริงๆ แล้วอาจแบ่งออกเป็นสองบทบาท: พื้นฐาน validator และผู้รับประกันความพร้อม; นี้จะกล่าวถึงในมาตรา 6.5.3. ผู้รวบรวม ชาวประมง ผู้ตรวจสอบความถูกต้อง (กลุ่มนี้) ผู้ตรวจสอบความถูกต้อง (กลุ่มอื่นๆ) อนุมัติ กลายเป็น จอภาพ รายงาน ไม่ดี พฤติกรรมที่จะ ให้บล็อก ผู้สมัคร สำหรับ ผู้เสนอชื่อ รูปที่ 1 ปฏิสัมพันธ์ระหว่าง สี่บทบาทของ Polkadot 4.1. ผู้ตรวจสอบความถูกต้อง A validator คือค่าใช้จ่ายสูงสุดและ ช่วยปิดผนึกบล็อกใหม่บนเครือข่าย Polkadot บทบาทของ validator ขึ้นอยู่กับความผูกพันที่สูงเพียงพอ กำลังฝากอยู่แม้ว่าเราจะอนุญาตให้ฝ่ายที่ถูกผูกมัดอื่น ๆ ก็ตาม เสนอชื่อ validator หนึ่งรายการขึ้นไปเพื่อดำเนินการแทนพวกเขาและเป็น บางส่วนของพันธะของ validator ดังกล่าวอาจไม่จำเป็นต้องเป็นของ validator เอง แต่เป็นของสิ่งเหล่านี้ ผู้เสนอชื่อ validator ต้องรันการใช้งานไคลเอ็นต์ลูกโซ่รีเลย์ที่มีความพร้อมใช้งานและแบนด์วิธสูง ในแต่ละบล็อค โหนดจะต้องพร้อมที่จะยอมรับบทบาทของการให้สัตยาบัน บล็อกใหม่บน parachain ที่ได้รับการเสนอชื่อ กระบวนการนี้ เกี่ยวข้องกับการรับ การตรวจสอบ และการเผยแพร่ผู้สมัครอีกครั้ง บล็อก การเสนอชื่อนั้นเป็นสิ่งที่กำหนดไว้ล่วงหน้าแต่แทบจะคาดเดาไม่ได้ล่วงหน้ามาก เนื่องจาก validator ไม่สามารถ คาดหวังได้อย่างสมเหตุสมผลว่าจะรักษาการซิงโครไนซ์อย่างเต็มที่ ฐานข้อมูลของ parachains ทั้งหมด คาดว่า validator จะเสนอชื่องานคิดค้นสิ่งใหม่ที่แนะนำ บล็อก parachain ให้กับบุคคลที่สามหรือที่เรียกว่า collator เมื่อบล็อกพาราเชนใหม่ทั้งหมดได้รับการรับรองอย่างเหมาะสมโดยกลุ่มย่อย validator ที่ได้รับการแต่งตั้งแล้ว validators จากนั้นจะต้องให้สัตยาบันต่อบล็อกรีเลย์โซ่เอง สิ่งนี้เกี่ยวข้องกับ อัปเดตสถานะของคิวธุรกรรม (โดยพื้นฐานแล้ว ย้ายข้อมูลจากเอาต์พุตคิวของ parachain ไปยังอีกคิวหนึ่ง คิวอินพุตของ parachain) ประมวลผลธุรกรรมของ การทำธุรกรรมสายโซ่รีเลย์ที่ให้สัตยาบันที่กำหนดและให้สัตยาบัน บล็อกสุดท้าย รวมถึงการเปลี่ยนแปลงพาราเชนสุดท้ายด้วยโพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 5 validator ไม่ปฏิบัติหน้าที่ของตนในการค้นหาฉันทามติ ภายใต้กฎของอัลกอริทึมฉันทามติที่เราเลือกจะถูกลงโทษ สำหรับความล้มเหลวครั้งแรกโดยไม่ตั้งใจ ก็ถือว่าผ่านแล้ว ระงับรางวัลของ validator ความล้มเหลวซ้ำแล้วซ้ำเล่าส่งผลให้พันธบัตรด้านความปลอดภัยลดลง (ผ่านการเผา) การกระทำที่เป็นอันตรายที่พิสูจน์ได้ เช่น การลงนามสองครั้งหรือ การสมคบคิดที่จะจัดให้มีการบล็อกที่ไม่ถูกต้องส่งผลให้สูญเสีย พันธะทั้งหมด (ซึ่งถูกเผาบางส่วนแต่ส่วนใหญ่ให้มา) แก่ผู้ให้ข้อมูลและผู้แสดงที่ซื่อสัตย์) ในแง่หนึ่ง validators มีความคล้ายคลึงกับกลุ่มการขุด ของ PoW ปัจจุบัน blockchains 4.2. ผู้เสนอชื่อ ผู้เสนอชื่อเป็นฝ่ายที่ถือหุ้น ที่มีส่วนในหลักประกันความปลอดภัยของ validator พวกเขา ไม่มีบทบาทเพิ่มเติมยกเว้นการวางทุนความเสี่ยงและเป็น เช่นเพื่อส่งสัญญาณว่าพวกเขาเชื่อถือ validator โดยเฉพาะ (หรือ ที่กำหนดไว้) ให้ดำเนินการด้วยความรับผิดชอบในการบำรุงรักษา เครือข่าย พวกเขาได้รับการเพิ่มหรือลดตามสัดส่วน ในเงินฝากตามการเติบโตของพันธบัตรนั้น พวกเขามีส่วนร่วม ร่วมกับผู้เปรียบเทียบ ถัดไป ผู้เสนอชื่ออยู่ในบางส่วน มีความรู้สึกคล้ายกับนักขุดของเครือข่าย PoW ในปัจจุบัน 4.3. ผู้รวบรวม. ผู้เรียกเก็บเงินธุรกรรม (ผู้เรียกเก็บเงินระยะสั้น) เป็นฝ่ายที่ช่วยเหลือ validators ในการผลิตที่ถูกต้อง บล็อกพาราเชน พวกเขารักษา "โหนดเต็ม" สำหรับ parachain เฉพาะ หมายความว่าพวกเขาเก็บทุกสิ่งที่จำเป็นไว้ ข้อมูลเพื่อให้สามารถเขียนบล็อกใหม่และดำเนินการได้ การทำธุรกรรมในลักษณะเดียวกับที่นักขุดทำบน PoW blockchains ปัจจุบัน ภายใต้สถานการณ์ปกติพวกเขา จะเปรียบเทียบและดำเนินธุรกรรมเพื่อสร้างเปิดผนึก บล็อกและจัดเตรียมไว้พร้อมกับความรู้เป็นศูนย์ หลักฐานสำหรับ validator หนึ่งคนขึ้นไปที่รับผิดชอบในปัจจุบัน เสนอบล็อกพาราเชน ลักษณะความสัมพันธ์ที่ชัดเจนระหว่างผู้ทำงานร่วมกัน ผู้เสนอชื่อ และ validators มีแนวโน้มที่จะเปลี่ยนแปลงไป เวลา. ในตอนแรก เราคาดหวังให้ผู้ทำงานร่วมกันทำงานอย่างใกล้ชิด ด้วย validators เนื่องจากจะมีเพียงไม่กี่รายการเท่านั้น (บางที พาราเชนเพียงอันเดียวที่มีปริมาณธุรกรรมน้อย ที่ การใช้งานไคลเอนต์ครั้งแรกจะรวม RPC เพื่ออนุญาต โหนด collator parachain เพื่อจัดหาโหนด (relaychain) validator โดยไม่มีเงื่อนไขพร้อมกับ parachain ที่ถูกต้องที่พิสูจน์ได้ บล็อก เป็นค่าใช้จ่ายในการบำรุงรักษาเวอร์ชันที่ซิงค์ของ พาราเชนทั้งหมดเพิ่มขึ้น เราคาดว่าจะเห็นเพิ่มเติม โครงสร้างพื้นฐานที่จะช่วยแยกออกจากกัน หน้าที่ของพรรคอิสระที่มีแรงจูงใจทางเศรษฐกิจ ในที่สุด เราคาดว่าจะเห็นกลุ่มผู้เปรียบเทียบที่แย่งชิงกัน เก็บค่าธรรมเนียมการทำธุรกรรมมากที่สุด ผู้สมรู้ร่วมคิดดังกล่าวอาจได้รับการว่าจ้างให้ให้บริการ validators เฉพาะเจาะจงในช่วงระยะเวลาหนึ่งสำหรับส่วนแบ่งรางวัลที่ได้รับอย่างต่อเนื่อง อีกทางหนึ่ง ผู้ประสานงาน “อิสระ” อาจเพียงแค่สร้าง ตลาดที่นำเสนอบล็อก parachain ที่ถูกต้องเพื่อแลกกับส่วนแบ่งการแข่งขันของรางวัลที่จ่ายทันที ในทำนองเดียวกัน กลุ่มผู้เสนอชื่อแบบกระจายอำนาจจะอนุญาตให้มีหลายกลุ่ม ผู้เข้าร่วมผูกพันเพื่อประสานงานและแบ่งปันหน้าที่ของก validator. ความสามารถในการรวมกลุ่มนี้ช่วยให้มั่นใจได้ถึงการมีส่วนร่วมแบบเปิด นำไปสู่ระบบการกระจายอำนาจมากขึ้น 4.4. ชาวประมง. ต่างจากอีกสองพรรคที่ยังเคลื่อนไหวอยู่ ชาวประมงไม่เกี่ยวข้องโดยตรงกับการเขียนบล็อก กระบวนการ แต่เป็น “นักล่าเงินรางวัล” ที่เป็นอิสระ ได้รับแรงบันดาลใจจากรางวัลใหญ่รางวัลเดียว เนื่องมาจาก การมีอยู่ของชาวประมง เราคาดว่าเหตุการณ์ความประพฤติไม่ดีจะเกิดขึ้นน้อยครั้ง และเมื่อเกิดขึ้นเพียงเพราะ ผู้ถูกผูกมัดประมาทกับการรักษาความปลอดภัยด้วยกุญแจลับ มากกว่าด้วยเจตนาร้าย ชื่อก็มา. จากความถี่ในการให้รางวัลที่คาดหวัง ข้อกำหนดขั้นต่ำในการเข้าร่วม และขนาดรางวัลในท้ายที่สุด ชาวประมงจะได้รับรางวัลจากการพิสูจน์อย่างทันท่วงทีว่า ฝ่ายที่ถูกผูกมัดอย่างน้อยหนึ่งฝ่ายกระทำการผิดกฎหมาย การกระทำที่ผิดกฎหมาย รวมถึงการลงนามสองช่วงตึกโดยแต่ละช่วงตึกมีผู้ปกครองที่ให้สัตยาบันคนเดียวกัน หรือในกรณีของพาราเชน จะช่วยให้สัตยาบันเป็นโมฆะ บล็อก เพื่อป้องกันการให้รางวัลมากเกินไปหรือการประนีประนอมและ การใช้รหัสลับของเซสชันอย่างผิดกฎหมาย ซึ่งเป็นรางวัลพื้นฐานสำหรับ การระบุข้อความที่ลงนามอย่างผิดกฎหมายของ validator เพียงข้อความเดียวคือ น้อยที่สุด รางวัลนี้จะเพิ่มขึ้นแบบไม่แสดงอาการเช่นกัน การยืนยันลายเซ็นที่ผิดกฎหมายจาก validators อื่นๆ ถือเป็นการโจมตีอย่างแท้จริง เส้นกำกับถูกตั้งค่า ที่ 66% ตามการยืนยันความปลอดภัยพื้นฐานของเราอย่างน้อยที่สุด สองในสามของ validators กระทำการอย่างมีเมตตา ชาวประมงค่อนข้างจะคล้ายกับ “โหนดเต็ม” ค่ะ ระบบ blockchain ในปัจจุบันที่ทรัพยากรต้องการ มีขนาดค่อนข้างเล็กและความมุ่งมั่นในเรื่องเวลาทำงานที่มั่นคง และแบนด์วิธก็ไม่จำเป็น ชาวประมงก็มีความแตกต่างกัน มากเท่าที่พวกเขาต้องโพสต์ความผูกพันเล็กน้อยพันธะนี้ป้องกัน การโจมตีของ sybil จากการเสียเวลาและการคำนวณ validators ทรัพยากร ถอนได้ทันทีคงไม่มี มากกว่าเทียบเท่ากับไม่กี่ดอลลาร์และอาจนำไปสู่ เพื่อได้รับผลอันมหาศาลจากการเห็นความประพฤติไม่ดี validator.

Teilnahme an Polkadot

Es gibt vier grundlegende Rollen bei der Wartung eines Polkadot Netzwerk: Collator, Fisherman, Nominator und validator. In eine mögliche Implementierung von Polkadot, der letztgenannten Rolle kann tatsächlich in zwei Rollen unterteilt werden: grundlegende validator und Verfügbarkeitsgarantie; Dies wird im Abschnitt besprochen 6.5.3. Collator Fischer Validatoren (diese Gruppe) Validatoren (andere Gruppen) stimmt zu wird Monitore Berichte schlecht Verhalten zu bietet Block Kandidaten für Nominator Abbildung 1. Die Interaktion zwischen vier Rollen von Polkadot. 4.1. Validatoren. Ein validator ist die höchste Gebühr und hilft dabei, neue Blöcke im Polkadot-Netzwerk abzudichten. Voraussetzung für die Rolle des validator ist eine ausreichend hohe Bindung hinterlegt werden, obwohl wir dies auch anderen gebundenen Parteien gestatten Nominieren Sie einen oder mehrere validators, die für sie und als handeln Ein solcher Teil der Anleihe des validator gehört möglicherweise nicht unbedingt dem validator selbst, sondern diesen Nominatoren. Ein validator muss eine Relay-Chain-Client-Implementierung mit hoher Verfügbarkeit und Bandbreite ausführen. An jedem Block Der Knoten muss bereit sein, die Rolle des Ratifizierenden zu übernehmen ein neuer Block auf einer nominierten Parachain. Dieser Prozess beinhaltet den Empfang, die Validierung und die erneute Veröffentlichung des Kandidaten Blöcke. Die Nominierung ist deterministisch, aber praktisch unvorhersehbar. Da der validator nicht möglich ist Es ist vernünftigerweise zu erwarten, dass eine vollständige Synchronisierung gewährleistet ist Datenbank aller Parachains, es wird erwartet, dass der validator die Aufgabe benennen wird, einen Vorschlag für ein neues zu entwickeln Parachain-Block an einen Dritten, einen sogenannten Collator, weiter. Sobald alle neuen Parachain-Blöcke ordnungsgemäß von ihren ernannten validator-Untergruppen, validators, ratifiziert wurden muss dann den Relay-Chain-Block selbst ratifizieren. Dies beinhaltet Aktualisieren des Status der Transaktionswarteschlangen (im Wesentlichen Verschieben von Daten aus der Ausgabewarteschlange einer Parachain in eine andere Eingabewarteschlange von Parachain), Verarbeitung der Transaktionen von der ratifizierte Relay-Chain-Transaktionssatz und die Ratifizierung des Endblock, einschließlich der letzten Parachain-Änderungen.POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 5 Ein validator kommt seiner Pflicht, einen Konsens zu finden, nicht nach nach den Regeln unseres gewählten Konsensalgorithmus wird bestraft. Bei anfänglichen, unbeabsichtigten Ausfällen gilt dies als durch die Belohnung von validator einbehalten. Wiederholte Ausfälle führen zu einer Verringerung ihrer Sicherheitsbindung (durch Brennen). Nachweislich böswillige Aktionen wie Doppelsignierung oder Die Verschwörung zur Bereitstellung eines ungültigen Blocks führt zum Verlust von die gesamte Bindung (die teilweise verbrannt, aber größtenteils gegeben ist). an den Informanten und die ehrlichen Akteure). In gewisser Weise ähneln validators den Mining-Pools der aktuellen PoW blockchains. 4.2. Nominatoren. Ein Nominator ist eine Beteiligungspartei Wer trägt zur Sicherheitsleistung eines validator bei? Sie haben keine zusätzliche Rolle außer der Platzierung von Risikokapital und dergleichen So signalisieren sie, dass sie einem bestimmten validator vertrauen (oder Satz davon), verantwortungsbewusst bei der Aufrechterhaltung der zu handeln Netzwerk. Sie erhalten eine anteilige Erhöhung oder Kürzung in ihrer Einlage entsprechend dem Wachstum der Anleihe sie tragen dazu bei. Zusammen mit den Collatoren sind es in einigen Fällen auch die Nominatoren Sinn ähnlich wie die Miner der heutigen PoW-Netzwerke. 4.3. Collatoren. Transaktions-Collators (kurz Collators) sind Parteien, die validators bei der Erstellung gültiger Dokumente unterstützen Parachain-Blöcke. Sie pflegen einen „vollständigen Knoten“ für eine bestimmte Parachain; Das bedeutet, dass sie alles Notwendige behalten Informationen, um neue Blöcke erstellen und ausführen zu können Transaktionen auf die gleiche Weise wie Miner auf aktuellen PoW blockchains. Unter normalen Umständen sind sie sammelt Transaktionen und führt sie aus, um eine unversiegelte Transaktion zu erstellen blockieren und zusammen mit einem Zero-Wissen bereitstellen Beweis, an einen oder mehrere validators, für die derzeit verantwortlich ist schlägt einen Parachain-Block vor. Die genaue Art der Beziehung zwischen Collators, Nominators und validators wird sich wahrscheinlich ändern Zeit. Zunächst erwarten wir, dass die Zusammensteller sehr eng zusammenarbeiten mit validators, da es nur wenige geben wird (vielleicht nur eine) Parachain(s) mit geringem Transaktionsvolumen. Die Die anfängliche Client-Implementierung umfasst RPCs, um a zu ermöglichen Parachain-Collator-Knoten, um einen (Relaychain-) validator-Knoten bedingungslos mit einer nachweislich gültigen Parachain zu versorgen blockieren. Da die Kosten für die Aufrechterhaltung einer synchronisierten Version von Alle diese Parachains nehmen zu, wir gehen davon aus, dass es noch mehr geben wird Infrastruktur vorhanden, die dabei hilft, die zu trennen Pflichten gegenüber unabhängigen, wirtschaftlich motivierten Parteien. Wir gehen davon aus, dass es irgendwann Zusammentragspools geben wird, die darum wetteifern erheben die meisten Transaktionsgebühren. Solche Kollektoren können beauftragt werden, bestimmte validators über einen bestimmten Zeitraum zu bedienen und einen fortlaufenden Anteil am Prämienerlös zu erhalten. Alternativ können „freiberufliche“ Zusammensteller einfach eine erstellen Markt, der gültige Parachain-Blöcke als Gegenleistung für einen wettbewerbsfähigen Anteil der sofort zahlbaren Belohnung anbietet. Ebenso würden dezentrale Nominator-Pools mehrere ermöglichen gebundene Teilnehmer koordinieren und teilen die Pflicht eines validator. Diese Bündelungsfähigkeit gewährleistet eine offene Beteiligung Dies führt zu einem dezentraleren System. 4.4. Fischer. Im Gegensatz zu den anderen beiden aktiven Parteien Fischer stehen in keinem direkten Zusammenhang mit der Blockerstellung Prozess. Sie sind vielmehr unabhängige „Kopfgeldjäger“. motiviert durch eine große einmalige Belohnung. Genau wegen Aufgrund der Existenz von Fischern gehen wir davon aus, dass Fehlverhalten selten vorkommt und wenn, dann nur aufgrund von die gebundene Partei ist bei der Sicherheit geheimer Schlüssel nachlässig, und nicht aus böswilliger Absicht. Der Name kommt aus der erwarteten Häufigkeit der Belohnung, den Mindestvoraussetzungen für die Teilnahme und der letztendlichen Belohnungsgröße. Fischer erhalten ihre Belohnung durch einen rechtzeitigen Nachweis mindestens eine gebundene Partei hat rechtswidrig gehandelt. Illegale Handlungen Dazu gehört die Unterzeichnung von jeweils zwei Blöcken mit demselben ratifizierten übergeordneten Element oder, im Fall von Fallschirmen, die Unterstützung bei der Ratifizierung eines ungültigen Elements blockieren. Um eine Überbelohnung oder den Kompromiss zu verhindern und unerlaubte Verwendung des geheimen Schlüssels einer Sitzung, der Basisbelohnung dafür Die Bereitstellung einer einzelnen illegal signierten Nachricht von validator ist minimal. Diese Belohnung nimmt asymptotisch zu, je mehr Dies bestätigen illegale Signaturen von anderen validators vorausgesetzt, es handelt sich um einen echten Angriff. Die Asymptote ist eingestellt bei 66 %, was unserer grundlegenden Sicherheitsaussage entspricht Zwei Drittel der validators handeln wohlwollend. Fischer ähneln in gewisser Weise „vollständigen Knoten“ in heutigen blockchain Systemen die benötigten Ressourcen sind relativ klein und erfordern eine stabile Betriebszeit und Bandbreite ist nicht erforderlich. Fischer unterscheiden sich darin so wie sie eine kleine Kaution hinterlegen müssen.Diese Bindung verhindert Sybil-Angriffe verschwenden die Zeit und Rechenleistung von validators Ressourcen. Es ist sofort ausziehbar, wahrscheinlich nein mehr als den Gegenwert von ein paar Dollar und kann führen eine saftige Belohnung dafür zu ernten, dass man ein Fehlverhalten entdeckt validator.

ภาพรวมการออกแบบ

ส่วนนี้มีวัตถุประสงค์เพื่อให้ภาพรวมโดยย่อของ ระบบโดยรวม การสำรวจอย่างละเอียดยิ่งขึ้นของ ระบบมีระบุไว้ในหัวข้อต่อไปนี้ 5.1. ฉันทามติ บนรีเลย์เชน Polkadot สำเร็จ ฉันทามติระดับต่ำเหนือชุดที่ตกลงร่วมกันถูกต้อง บล็อกผ่านอัลกอริธึม Byzantine Faulttolerant (BFT) แบบอะซิงโครนัสสมัยใหม่ อัลกอริทึมจะได้รับแรงบันดาลใจ โดย Tendermint ง่ายๆ [11] และอื่นๆ อีกมากมาย เกี่ยวข้องกับ HoneyBadgerBFT [14] หลังให้ ฉันทามติที่มีประสิทธิภาพและทนทานต่อข้อผิดพลาดเหนือกฎเกณฑ์ โครงสร้างพื้นฐานเครือข่ายที่มีข้อบกพร่อง โดยได้รับชุดของหน่วยงานที่ไม่เป็นอันตรายเป็นส่วนใหญ่หรือ validators สำหรับเครือข่ายสไตล์ Proof-of-authority (PoA) เพียงอย่างเดียว จะเพียงพอ แต่ Polkadot จินตนาการว่าเป็น อีกทั้งยังสามารถใช้งานเป็นเครือข่ายแบบเปิดและสาธารณะได้อย่างเต็มที่ สถานการณ์ที่ไม่มีองค์กรใดองค์กรหนึ่งหรือเชื่อถือได้ อำนาจที่จำเป็นในการบำรุงรักษา เช่นนี้เราจำเป็นต้องมี วิธีการกำหนดชุดของ validators และการสร้างแรงจูงใจ พูดตามตรง สำหรับสิ่งนี้ เราใช้การเลือกตาม PoS เกณฑ์ 5.2. การพิสูจน์เดิมพัน เราถือว่าเครือข่าย ก็จะมีวิธีการวัดว่า “เดิมพัน” เท่าไร มีบัญชีใดบัญชีหนึ่งโดยเฉพาะ เพื่อความสะดวกในการเปรียบเทียบกับ ระบบที่มีอยู่แล้วเราจะเรียกหน่วยวัดว่า “tokens” น่าเสียดายที่คำนี้น้อยกว่าอุดมคติสำหรับ a เหตุผลหลายประการ ไม่เพียงแต่เป็นเพียงสเกลาร์เท่านั้น มูลค่าที่เกี่ยวข้องกับบัญชี ไม่มีแนวคิดเกี่ยวกับ บุคลิกลักษณะ เราจินตนาการว่า validator ได้รับการเลือกตั้งไม่บ่อยนัก (มากที่สุด วันละครั้งแต่อาจจะแทบจะไม่เท่ากับไตรมาสละครั้ง) ผ่านโครงการ Nominated Proof-of-Stake (NPoS) การสร้างแรงจูงใจสามารถเกิดขึ้นได้ผ่านการจัดสรรตามสัดส่วนของโพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 6 รีเลย์ โซ่ ฝูงผู้ตรวจสอบความถูกต้อง (แต่ละสีตามของมัน พาราเชนที่กำหนด) การทำธุรกรรม (ส่งโดย นักแสดงภายนอก) พาราเชน สะพาน พาราเชนเสมือนจริง (เช่น Ethereum) พาราเชน พาราเชน คิวและ I/O ธุรกรรมที่เผยแพร่ บล็อกการส่งผู้สมัคร ลำดับที่ 2 รีเลย์โซ่ ชุมชนพาราเชน บัญชี ธุรกรรมขาเข้า ธุรกรรมขาออก การทำธุรกรรมระหว่างกัน (จัดการโดย validators) ผู้รวบรวม บล็อกการแพร่กระจาย ชาวประมง รูปที่ 2. แผนผังสรุปของระบบ Polkadot สิ่งนี้แสดงให้ผู้เปรียบเทียบรวบรวมและเผยแพร่ธุรกรรมของผู้ใช้ รวมถึงการเผยแพร่ตัวเลือกบล็อกไปยังชาวประมงและ validators มันยัง แสดงให้เห็นว่าบัญชีสามารถโพสต์ธุรกรรมที่ดำเนินการจาก Parachain ผ่านทาง Relay-Chain ได้อย่างไร และต่อไปยัง parachain อื่นที่สามารถตีความได้ว่าเป็นธุรกรรมไปยังบัญชีที่นั่น เงินทุนที่มาจากการขยายฐาน token (สูงถึง 100% ต่อปีแต่มีแนวโน้มมากกว่าประมาณ 10%) ด้วยกัน ค่าธรรมเนียมการทำธุรกรรมใด ๆ ที่เรียกเก็บ ในขณะที่การขยายฐานการเงินมักจะนำไปสู่ภาวะเงินเฟ้อ เนื่องจากเจ้าของ token ทั้งหมด จะมีโอกาสที่ยุติธรรมในการเข้าร่วม ไม่มีผู้ถือ token รายใดที่ต้องทนทุกข์ทรมานจากการลดมูลค่าของพวกเขา การถือครองเมื่อเวลาผ่านไปหากพวกเขายินดีที่จะรับ บทบาทในกลไกฉันทามติ สัดส่วนเฉพาะ ของ tokens จะถูกกำหนดเป้าหมายสำหรับกระบวนการ staking ที่ ที่มีประสิทธิภาพ token การขยายฐานจะถูกปรับผ่าน กลไกตามตลาดเพื่อบรรลุเป้าหมายนี้ ผู้ตรวจสอบความถูกต้องมีความผูกพันอย่างมากจากการเดิมพันของพวกเขา ออก พันธบัตรของ validators จะคงอยู่เป็นเวลานานหลังจากที่หน้าที่ของ validators สิ้นสุดลง (อาจประมาณ 3 เดือน) ยาวขนาดนี้ ระยะเวลาชำระหนี้พันธบัตรช่วยให้เกิดพฤติกรรมที่ไม่เหมาะสมในอนาคตได้ ลงโทษจนถึงจุดตรวจโซ่เป็นระยะ การประพฤติมิชอบส่งผลให้เกิดการลงโทษ เช่น ลดหย่อน รางวัลหรือในกรณีที่จงใจประนีประนอม ความสมบูรณ์ของเครือข่าย validator สูญเสียบางส่วนหรือทั้งหมด ถือหุ้นกับ validators อื่นๆ ผู้ให้ข้อมูล หรือผู้มีส่วนได้ส่วนเสีย โดยรวม (ผ่านการเผา) ตัวอย่างเช่น validator ผู้พยายามที่จะให้สัตยาบันทั้งสองกิ่งของทางแยก (บางครั้ง ที่เรียกว่าการโจมตี "ระยะสั้น") อาจถูกระบุและ ลงโทษอย่างหลัง. การโจมตีระยะไกลแบบ “ไม่มีเดิมพัน”4 ได้รับการหลบเลี่ยงโดยใช้สลัก “จุดตรวจสอบ” แบบธรรมดา ซึ่งป้องกันการจัดระเบียบห่วงโซ่ที่เป็นอันตรายมากกว่า ความลึกของโซ่โดยเฉพาะ เพื่อให้แน่ใจว่าไคลเอ็นต์การซิงค์ใหม่ ย่อมไม่หลงผิดโซ่ตรวนเป็นธรรมดา “ฮาร์ดฟอร์ค” จะเกิดขึ้น (มากที่สุดในช่วงเวลาเดียวกันของ การชำระหนี้พันธบัตร validators) ที่ฮาร์ดโค้ดบล็อกจุดตรวจสอบล่าสุด hashes ลงในไคลเอนต์ สิ่งนี้เล่นได้ดีกับการวัดการลดรอยเท้าเพิ่มเติมของ "ความยาวโซ่จำกัด" หรือ การรีเซ็ตบล็อกการกำเนิดเป็นระยะ 5.3. Parachains และ Colators พาราเชนแต่ละตัวได้รับ ข้อกำหนดด้านความปลอดภัยที่คล้ายกันกับรีเลย์-เชน: ที่ ส่วนหัวของพาราเชนถูกผนึกไว้ภายในบล็อกรีเลย์-เชน การรับรองว่าไม่มีการปรับโครงสร้างองค์กรใหม่หรือ "การใช้จ่ายซ้ำซ้อน" ภายหลังการยืนยัน นี่เป็นการรับประกันความปลอดภัยที่คล้ายคลึงกับการรับประกันความปลอดภัยที่นำเสนอโดยไซด์เชนของ Bitcoin และการรวมเข้าด้วยกัน อย่างไรก็ตาม Polkadot ยังให้การรับประกันที่แข็งแกร่งว่าการเปลี่ยนสถานะของ parachains นั้นถูกต้อง นี้ เกิดขึ้นผ่านชุดของ validators ที่ถูกสุ่มแบบเข้ารหัสเป็นส่วนย่อย หนึ่งชุดย่อยต่อ parachain ซึ่งเป็นเซ็ตย่อยที่อาจแตกต่างกันไปในแต่ละบล็อก นี้ โดยทั่วไปการตั้งค่าจะบอกเป็นนัยว่าเวลาบล็อกของพาราเชนจะเป็นเช่นนั้น อย่างน้อยก็ตราบเท่าที่รีเลย์-เชน เฉพาะ วิธีการกำหนดการแบ่งพาร์ติชันอยู่นอกขอบเขต 4การโจมตีดังกล่าวเกิดขึ้นเมื่อศัตรูสร้างสายโซ่แห่งประวัติศาสตร์ใหม่ทั้งหมดตั้งแต่ช่วงกำเนิดเป็นต้นไป ผ่านการควบคุมก สัดส่วนการถือหุ้นที่ค่อนข้างไม่มีนัยสำคัญ ณ ที่ตั้ง พวกเขาสามารถค่อยๆ เพิ่มสัดส่วนการถือหุ้นเมื่อเทียบกับส่วนอื่นๆ ทั้งหมด ผู้มีส่วนได้ส่วนเสียเนื่องจากพวกเขาเป็นเพียงผู้มีส่วนร่วมอย่างแข็งขันในประวัติศาสตร์ทางเลือกของพวกเขา เนื่องจากไม่มีข้อจำกัดทางกายภาพที่แท้จริงในการสร้าง ของบล็อก (ต่างจาก PoW ที่ต้องใช้พลังงานการคำนวณค่อนข้างจริง) พวกเขาสามารถสร้างโซ่ที่ยาวกว่าโซ่จริงใน ช่วงเวลาค่อนข้างสั้นและอาจทำให้ยาวนานที่สุดและดีที่สุด โดยเข้ายึดสถานะมาตรฐานของเครือข่ายโพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 7 ของเอกสารนี้แต่น่าจะอิงตามอย่างใดอย่างหนึ่ง กรอบการเปิดเผยการกระทำที่คล้ายกับ RanDAO [19] หรือ ใช้ข้อมูลที่รวมจากบล็อกก่อนหน้าของแต่ละพาราเชน ภายใต้การรักษาความปลอดภัยแบบเข้ารหัส hash เซ็ตย่อยของ validators ดังกล่าวจำเป็นต้องจัดเตรียม ตัวเลือกบล็อก parachain ซึ่งรับประกันว่าถูกต้อง (on ความเจ็บปวดจากการผูกมัด) ความถูกต้องหมุนรอบสอง จุดสำคัญ ประการแรกคือว่ามันใช้ได้จริง—นั่น การเปลี่ยนสถานะทั้งหมดได้รับการดำเนินการอย่างซื่อสัตย์และทั้งหมดนั้น ข้อมูลภายนอกที่อ้างอิง (เช่น ธุรกรรม) สามารถนำมารวมได้ ประการที่สอง ข้อมูลใดๆ ก็ตามที่อยู่ภายนอกตัวมัน ผู้สมัคร เช่น ธุรกรรมภายนอกเหล่านั้น มีความพร้อมใช้งานสูงเพียงพอเพื่อให้ผู้เข้าร่วมสามารถทำได้ ดาวน์โหลดและดำเนินการบล็อกด้วยตนเอง5 ผู้ตรวจสอบความถูกต้องอาจจัดเตรียมเฉพาะบล็อก "null" ที่ไม่มีข้อมูล "ธุรกรรม" ภายนอก แต่อาจเสี่ยงต่อการได้รับรางวัลลดลงหากทำเช่นนั้น พวกเขาทำงานเคียงข้างกัน โปรโตคอลการนินทา Parachain กับผู้เปรียบเทียบ - บุคคล ผู้เปรียบเทียบธุรกรรมเป็นบล็อกและให้หลักฐานที่ไม่โต้ตอบและไม่มีความรู้ว่าบล็อกนั้นถือเป็นลูกที่ถูกต้องของผู้ปกครอง (และทำธุรกรรมใด ๆ ค่าธรรมเนียมสำหรับปัญหาของพวกเขา) เหลือเพียงโปรโตคอล parachain เพื่อระบุโปรโตคอลของตนเอง วิธีการป้องกันสแปม: ไม่มีแนวคิดพื้นฐานของ "การวัดทรัพยากรคอมพิวเตอร์" หรือ "ค่าธรรมเนียมการทำธุรกรรม" กำหนดโดยรีเลย์โซ่ นอกจากนี้ยังไม่มีการบังคับใช้โดยตรงในเรื่องนี้โดยโปรโตคอลรีเลย์ลูกโซ่ (แม้ว่าจะเป็นเช่นนั้นก็ตาม) ไม่น่าเป็นไปได้ที่ผู้มีส่วนได้ส่วนเสียจะเลือกใช้ พาราเชนซึ่งไม่มีกลไกที่เหมาะสม) นี่เป็นการพยักหน้าอย่างชัดเจนถึงความเป็นไปได้ของเครือที่ไม่เหมือน Ethereum เช่น Bitcoin-like chain ซึ่งมีรูปแบบค่าธรรมเนียมที่ง่ายกว่ามากหรือรูปแบบการป้องกันสแปมอื่น ๆ ที่ยังไม่ได้เสนอ Polkadot รีเลย์เชนเองก็อาจมีอยู่เป็น Ethereum-บัญชีที่เหมือนกันและห่วงโซ่สถานะ อาจเป็น EVMอนุพันธ์ เนื่องจากโหนดรีเลย์โซ่จะต้องใช้ ทำการประมวลผลอื่น ๆ ที่สำคัญ ปริมาณธุรกรรม จะลดลงบางส่วนด้วยค่าธรรมเนียมการทำธุรกรรมจำนวนมาก และหากแบบจำลองการวิจัยของเราต้องการ ขีดจำกัดขนาดบล็อก 5.4. การสื่อสารระหว่างกัน องค์ประกอบสุดท้ายที่สำคัญของ Polkadot คือการสื่อสารระหว่างเครือข่าย ตั้งแต่ parachains สามารถมีช่องข้อมูลบางอย่างระหว่างพวกมันได้ เราอนุญาตให้ตัวเองพิจารณา Polkadot ก มัลติเชนที่ปรับขนาดได้ ในกรณีของ Polkadot การสื่อสารจะง่ายดายที่สุดเท่าที่จะเป็นไปได้: ธุรกรรมที่ดำเนินการใน parachain นั้น (ตามตรรกะของ chain นั้น) สามารถทำได้ ส่งผลต่อการส่งธุรกรรมไปยังพาราเชนที่สอง หรืออาจเป็นรีเลย์เชน เช่นเดียวกับการทำธุรกรรมภายนอก ในการผลิต blockchains พวกมันเป็นแบบอะซิงโครนัสอย่างสมบูรณ์ และไม่มีความสามารถที่แท้จริงสำหรับพวกเขาที่จะคืนสิ่งใด ๆ ข้อมูลประเภทต่างๆ กลับไปสู่ต้นกำเนิดของมัน ปลายทาง: ได้รับ ข้อมูลจากก่อนหน้านี้ validators ของบล็อก บัญชีได้รับโพสต์: รายการถูกลบออกจาก ทางเข้า Merkle tree บัญชีส่งโพสต์: รายการวางไว้ใน ทางออก Merkle tree เพื่อจุดหมายปลายทาง พาราเชน ทางออก ที่มา: หุ้น ข้อมูลที่มีบล็อกถัดไป validatorส หลักฐานการโพสต์เก็บไว้ใน Parachain ทางออก Merkle ต้นไม้ วางการอ้างอิงที่กำหนดเส้นทางแล้ว ในพาราเชนปลายทาง ทางเข้า Merkle tree ทางเข้า รูปที่ 3 การแสดงแผนผังพื้นฐาน ส่วนหลักของการกำหนดเส้นทางสำหรับการโพสต์ ธุรกรรม (”โพสต์”) เพื่อให้มั่นใจว่าการใช้งานมีความซับซ้อนน้อยที่สุด ความเสี่ยง และ น้อยที่สุด แจ็กเก็ตตรง ของ อนาคต สถาปัตยกรรมพาราเชน ธุรกรรมระหว่างเชนเหล่านี้คือ แยกไม่ออกจากธุรกรรมมาตรฐานที่ลงนามภายนอกอย่างมีประสิทธิภาพ ธุรกรรมมีส่วนต้นทางที่ให้ความสามารถในการระบุ parachain และ ที่อยู่ซึ่งอาจมีขนาดตามอำเภอใจ แตกต่างจากระบบปัจจุบันทั่วไป เช่น Bitcoin และ Ethereum ธุรกรรมระหว่างเครือข่ายไม่ได้มาพร้อมกับ "การชำระ" ค่าธรรมเนียมใดๆ ที่เกี่ยวข้อง การชำระเงินดังกล่าวจะต้องได้รับการจัดการผ่านตรรกะการเจรจาต่อรองบนพาราเชนต้นทางและปลายทาง มีระบบดังกล่าวที่เสนอมาเพื่อ Ethereum การเปิดตัว Serenity [7] เป็นวิธีง่ายๆ ของการจัดการการชำระเงินทรัพยากรข้ามสายโซ่ดังกล่าว เราถือว่าคนอื่นอาจมาถึงข้างหน้าในเวลาอันควร ธุรกรรม Interchain ได้รับการแก้ไขโดยใช้วิธีง่ายๆ กลไกการเข้าคิวตาม Merkle tree เพื่อให้มั่นใจ ความซื่อสัตย์ เป็นหน้าที่ของผู้ดูแลรีเลย์-โซ่ที่จะต้อง ย้ายธุรกรรมบนคิวเอาท์พุตของพาราเชนหนึ่งอัน เข้าไปในคิวอินพุตของพาราเชนปลายทาง ที่ ธุรกรรมที่ส่งผ่านจะถูกอ้างอิงบนรีเลย์-เชน แต่จะไม่สัมพันธ์กันธุรกรรม ay-chain เอง เพื่อป้องกันไม่ให้พาราเชนส่งสแปมพาราเชนอื่นด้วย ธุรกรรม จำเป็นต้องมีการส่งธุรกรรม ว่าคิวอินพุตของปลายทางไม่ใหญ่เกินไป เวลาสิ้นสุดของบล็อกก่อนหน้า ถ้าอินพุต คิวมีขนาดใหญ่เกินไปหลังจากการประมวลผลแบบบล็อก แล้วจะถือว่า "อิ่มตัว" และจะไม่มีการกำหนดเส้นทางธุรกรรมใด ๆ ภายในบล็อกต่อๆ ไปจนกระทั่งลดกลับไปต่ำกว่า ขีด จำกัด คิวเหล่านี้ได้รับการจัดการบนรีเลย์-เชน อนุญาตให้พาราเชนกำหนดความอิ่มตัวของกันและกัน สถานะ; วิธีนี้จะทำให้ความพยายามในการผ่านรายการธุรกรรมล้มเหลว ไปยังปลายทางที่จนตรอกอาจถูกรายงานพร้อมกัน (แม้ว่าจะไม่มีเส้นทางการส่งคืน แต่หากธุรกรรมรองล้มเหลวด้วยเหตุผลดังกล่าว ก็ไม่สามารถรายงานกลับได้ ไปยังผู้โทรเดิมและวิธีการกู้คืนอื่น ๆ จะต้องเกิดขึ้น) 5.5. Polkadot และ Ethereum เนื่องจาก Ethereum ความสมบูรณ์ของทัวริง เราคาดหวังว่าจะมีโอกาสมากมายสำหรับ Polkadot และ Ethereum ที่จะทำงานร่วมกันได้ อย่างน้อยก็อยู่ภายในขอบเขตความปลอดภัยที่อนุมานได้ง่าย กล่าวโดยย่อคือเราจินตนาการว่าการทำธุรกรรมจาก Polkadot สามารถลงนามโดย validators จากนั้นป้อนเข้า 5งานดังกล่าวอาจถูกแบ่งปันระหว่าง validators หรืออาจกลายเป็นงานที่กำหนดของชุด validators ที่เชื่อมโยงกันอย่างแน่นหนาที่เรียกว่า ผู้ค้ำประกันความพร้อม

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 8 Ethereum โดยที่สามารถตีความและตรากฎหมายได้โดย สัญญาส่งต่อธุรกรรม ในอีกทางหนึ่ง เราคาดการณ์การใช้บันทึก (เหตุการณ์) ที่จัดรูปแบบพิเศษ มาจาก "สัญญาแยกส่วน" เพื่อให้สามารถตรวจสอบได้อย่างรวดเร็วว่าควรส่งต่อข้อความใดข้อความหนึ่ง 5.5.1. Polkadot ถึง Ethereum โดยการเลือกก BFT กลไกฉันทามติที่มี validators เกิดขึ้นจาก กลุ่มผู้มีส่วนได้เสียที่กำหนดผ่านการลงคะแนนเสียงอนุมัติ กลไก เราสามารถได้รับฉันทามติที่ปลอดภัยกับ การเปลี่ยนแปลงไม่บ่อยนักและจำนวนเล็กน้อยของ validators ในระบบที่มีทั้งหมด 144 validators ซึ่งเป็นเวลาบล็อกที่ 4 วินาทีและสิ้นสุด 900 บล็อก (อนุญาตให้เป็นอันตราย พฤติกรรมเช่นการลงคะแนนสองครั้งที่ต้องรายงานการลงโทษ และซ่อมแซมแล้ว) ความถูกต้องของบล็อกก็สมเหตุสมผล ถือว่าพิสูจน์แล้วด้วยลายเซ็นเพียง 97 ลายเซ็น (สองในสามของ 144 บวกหนึ่ง) และช่วงการตรวจสอบยืนยัน 60 นาทีต่อมาซึ่งไม่มีการฝากคำท้าทาย Ethereum สามารถโฮสต์ "สัญญาแบ่ง" ได้ สามารถรักษาผู้ลงนามได้ 144 รายและควบคุมโดย พวกเขา เนื่องจากการกู้คืนลายเซ็นดิจิทัลแบบ Elliptic Curve (ECDSA) ใช้เวลาเพียง 3,000 Gas ภายใต้ EVM และเนื่องจาก เราน่าจะต้องการให้การตรวจสอบเกิดขึ้นใน a เท่านั้น ส่วนใหญ่มากของ validators (แทนที่จะเป็นเอกฉันท์ทั้งหมด) ต้นทุนฐานของ Ethereum ยืนยันว่าเป็นคำสั่ง ได้รับการตรวจสอบอย่างถูกต้องว่ามาจากเครือข่าย Polkadot จะมีก๊าซไม่เกิน 300,000 รายการ หรือเพียง 6% ของ ขีดจำกัดก๊าซบล็อกทั้งหมดที่ 5.5M การเพิ่มจำนวน validators (ตามที่จำเป็นสำหรับการจัดการ) หลายสิบโซ่) ทำให้ต้นทุนนี้เพิ่มขึ้นอย่างหลีกเลี่ยงไม่ได้ เป็นที่คาดกันโดยทั่วไปว่าแบนด์วิดธ์การทำธุรกรรมของ Ethereum จะเพิ่มขึ้นเมื่อเวลาผ่านไปเมื่อเทคโนโลยีเติบโตและ โครงสร้างพื้นฐานดีขึ้น ประกอบกับความจริงที่ว่าไม่ใช่ validators ทั้งหมดต้องมีส่วนร่วม (เช่น เฉพาะระดับสูงสุดเท่านั้น validators ที่เดิมพันไว้อาจถูกเรียกใช้งานดังกล่าว) ขีดจำกัดของกลไกนี้ขยายออกไปพอสมควร สมมติว่ามีการหมุนรายวันของ validators ดังกล่าว (ซึ่งก็คือ ค่อนข้างอนุรักษ์นิยม—รายสัปดาห์หรือรายเดือนอาจยอมรับได้) จากนั้นต้นทุนในการบำรุงรักษาเครือข่าย Ethereum-สะพานส่งต่อนี้จะอยู่ที่ประมาณ 540,000 ค่าน้ำมันต่อวัน หรือ ณ ราคาน้ำมันปัจจุบันอยู่ที่ 45 เหรียญสหรัฐฯ ต่อปี ธุรกรรมพื้นฐานที่ส่งต่อเพียงอย่างเดียวบนสะพานจะมีค่าใช้จ่าย ประมาณ 0.11 ดอลลาร์; การคำนวณสัญญาเพิ่มเติมจะมีค่าใช้จ่าย มากขึ้นแน่นอน โดยการแบ่งแยกและการรวมกลุ่มธุรกรรม ร่วมกันค่าใช้จ่ายในการอนุญาตการบุกรุกสามารถได้อย่างง่ายดาย แบ่งปัน ลดต้นทุนต่อการทำธุรกรรมอย่างมาก หากจำเป็นต้องมีธุรกรรม 20 รายการก่อนที่จะส่งต่อ ค่าใช้จ่ายในการส่งต่อธุรกรรมพื้นฐานจะลดลง ประมาณ 0.01 ดอลลาร์ ทางเลือกหนึ่งที่น่าสนใจและราคาถูกกว่าสำหรับโมเดลสัญญาแบบหลายลายเซ็นนี้คือการใช้ลายเซ็นตามเกณฑ์เพื่อให้บรรลุความหมายการเป็นเจ้าของแบบหลายฝ่าย ในขณะที่แผนลายเซ็นเกณฑ์สำหรับ ECDSA มีราคาแพงในการคำนวณ สำหรับโครงการอื่นๆ เช่นลายเซ็น Schnorr นั้นสมเหตุสมผลมาก Ethereum วางแผนที่จะแนะนำสิ่งดั้งเดิมซึ่งจะทำให้เป็นเช่นนั้น โครงร่างราคาถูกเพื่อใช้ใน hardfork ของ Metropolis ที่กำลังจะมาถึง ถ้าใช้วิธีการดังกล่าวได้ก็จะต้องเสียค่าน้ำมัน สำหรับการส่งต่อธุรกรรม Polkadot ไปยัง Ethereum เครือข่ายจะลดลงอย่างมากจนเหลือใกล้ศูนย์ ค่าใช้จ่ายสูงกว่าต้นทุนพื้นฐานสำหรับการตรวจสอบความถูกต้อง ลงนามและดำเนินการธุรกรรมที่เกี่ยวข้อง ในโมเดลนี้ โหนด validator ของ Polkadot จะมี ที่จะทำอย่างอื่นนอกจากการลงนามข้อความ ในการรับธุรกรรมที่ส่งไปยังเครือข่าย Ethereum จริง ๆ เรา สมมติว่า validators ตัวใดตัวหนึ่งก็จะอาศัยอยู่ด้วย เครือข่าย Ethereum หรือมีแนวโน้มมากกว่านั้นคือค่าหัวเล็กน้อย มอบให้กับนักแสดงคนแรกที่ส่งต่อข้อความต่อไป ไปยังเครือข่าย (สามารถจ่ายค่าหัวเล็กน้อยให้กับ ผู้สร้างธุรกรรม) 5.5.2. Ethereum ถึง Polkadot การรับธุรกรรมให้เป็น ส่งต่อจาก Ethereum ไปยัง Polkadot ใช้แนวคิดง่ายๆ ของบันทึก เมื่อสัญญา Ethereum ต้องการส่งธุรกรรมไปยัง parachain เฉพาะของ Polkadot มันจำเป็นต้องเรียกเข้าสู่ "สัญญาแยกส่วน" พิเศษ สัญญาแบ่งออกจะต้องชำระเงินใด ๆ ที่อาจเป็นไปได้ จำเป็นและออกคำแนะนำในการบันทึกเพื่อให้สามารถพิสูจน์การมีอยู่ได้ผ่านการพิสูจน์ Merkle และการยืนยันว่าส่วนหัวของบล็อกที่เกี่ยวข้องนั้นถูกต้องและ ตามบัญญัติ ในสองเงื่อนไขหลัง ความถูกต้องอาจเป็น ตรงไปตรงมาที่สุดในการพิสูจน์ โดยหลักการแล้วข้อกำหนดเพียงอย่างเดียวคือสำหรับแต่ละโหนด Polkadot ที่ต้องการการพิสูจน์ (เช่น โหนด validator ที่ได้รับการแต่งตั้ง) เพื่อเรียกใช้อินสแตนซ์ที่ซิงโครไนซ์อย่างสมบูรณ์ของโหนด Ethereum มาตรฐาน น่าเสียดายที่นี่เป็นการพึ่งพาที่ค่อนข้างหนัก มากขึ้น วิธีน้ำหนักเบาก็จะใช้การพิสูจน์ง่ายๆว่า ส่วนหัวได้รับการประเมินอย่างถูกต้องโดยการจัดหาเฉพาะ ส่วนหนึ่งของการลองสถานะของ Ethereum จำเป็นต้องดำเนินการอย่างถูกต้อง ธุรกรรมในบล็อกและตรวจสอบว่าบันทึก (มีอยู่ในใบเสร็จรับเงินบล็อก) ถูกต้อง “เหมือน SPV”6 การพิสูจน์อาจต้องใช้ข้อมูลจำนวนมาก สะดวก โดยทั่วไปแล้วพวกเขาจะไม่จำเป็นต้องใช้ที่ ทั้งหมด: ระบบพันธะภายใน Polkadot จะอนุญาตให้มีการเชื่อมโยงได้ บุคคลที่สามในการส่งส่วนหัวที่เสี่ยงต่อการสูญเสีย พันธบัตรควรบุคคลที่สามอื่น ๆ (เช่น "ชาวประมง" ดู 6.2.3) ให้หลักฐานว่าส่วนหัวไม่ถูกต้อง (โดยเฉพาะอย่างยิ่งว่ารากของรัฐหรือรากรับเป็นผู้แอบอ้าง) บนเครือข่าย PoW ที่ยังไม่สิ้นสุด เช่น Ethereum ความเป็นมาตรฐานไม่สามารถพิสูจน์ได้อย่างแน่ชัด เพื่อแก้ไขปัญหานี้ แอปพลิเคชันที่พยายามพึ่งพาชนิดใดก็ตาม ของผลกระทบที่ขึ้นกับลูกโซ่ รอ "การยืนยัน" หลายครั้ง หรือจนกว่าธุรกรรมที่ขึ้นอยู่กับบางรายการ ความลึกเฉพาะภายในห่วงโซ่ เมื่อวันที่ Ethereum สิ่งนี้ ความลึกจะแตกต่างกันไปจาก 1 บล็อกสำหรับธุรกรรมที่มีค่าน้อยที่สุดโดยไม่มีปัญหาเครือข่ายที่ทราบ ไปจนถึง 1200 บล็อกเหมือนเดิม กรณีนี้ในระหว่างการเปิดตัว Frontier ครั้งแรกสำหรับการแลกเปลี่ยน บนเครือข่าย “Homestead” ที่เสถียร รูปนี้อยู่ที่ 120 บล็อกสำหรับการแลกเปลี่ยนส่วนใหญ่ และเราน่าจะรับไป พารามิเตอร์ที่คล้ายกัน ดังนั้น เรา สามารถ ลองจินตนาการดู ของเรา Polkadot-ด้าน Ethereumอินเทอร์เฟซมีฟังก์ชันง่ายๆ: เพื่อให้สามารถ ยอมรับส่วนหัวใหม่จากเครือข่าย Ethereum และตรวจสอบความถูกต้องของ PoW เพื่อให้สามารถยอมรับหลักฐานบางอย่างที่ บันทึกเฉพาะถูกปล่อยออกมาโดยสัญญาฝ่าวงล้อมฝั่ง Ethereum สำหรับส่วนหัวที่มีความลึกเพียงพอ (และส่งต่อ ข้อความที่เกี่ยวข้องภายใน Polkadot) และสุดท้าย เพื่อให้สามารถยอมรับข้อพิสูจน์ที่ได้รับการยอมรับก่อนหน้านี้แต่ ส่วนหัวที่ยังไม่ได้ตรากฎหมายมีรากการรับที่ไม่ถูกต้อง หากต้องการรับข้อมูลส่วนหัว Ethereum จริงๆ (และ การพิสูจน์ SPV หรือการหักล้างความถูกต้อง/ความถูกต้องตามบัญญัติ) เครือข่าย Polkadot สิ่งจูงใจในการส่งต่อ 6SPV อ้างอิงถึงการยืนยันการชำระเงินแบบง่ายใน Bitcoin และอธิบายวิธีการสำหรับลูกค้าในการตรวจสอบธุรกรรมในขณะที่เก็บไว้เท่านั้น สำเนาของส่วนหัวบล็อกทั้งหมดของห่วงโซ่ PoW ที่ยาวที่สุดโพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 9 จำเป็นต้องมีข้อมูล ซึ่งอาจง่ายพอๆ กับการชำระเงิน (ได้รับทุนจากค่าธรรมเนียมที่เรียกเก็บจากฝั่ง Ethereum) ที่ชำระแล้ว ถึงใครก็ตามที่สามารถส่งต่อบล็อกที่เป็นประโยชน์ซึ่งมีส่วนหัวเป็นได้ ถูกต้อง ผู้ตรวจสอบความถูกต้องจะถูกเรียกให้เก็บข้อมูลที่เกี่ยวข้องกับบล็อกสองสามพันบล็อกล่าสุดเพื่อที่จะ สามารถจัดการ forks ได้ด้วยวิธีการบางอย่างของโปรโตคอลหรือผ่านสัญญาที่เก็บรักษาไว้บน โซ่รีเลย์ 5.6. Polkadot และ Bitcoin. Bitcoin การทำงานร่วมกัน นำเสนอความท้าทายที่น่าสนใจสำหรับ Polkadot: สิ่งที่เรียกว่า “หมุดสองทาง” จะเป็นโครงสร้างพื้นฐานที่มีประโยชน์ ให้มีที่ฝั่งทั้งสองเครือข่าย อย่างไรก็ตามเนื่องจาก ข้อจำกัดของ Bitcoin การให้หมุดดังกล่าวอย่างปลอดภัยคือ กิจการที่ไม่สำคัญ การส่งมอบธุรกรรมจาก โดยหลักการแล้ว Bitcoin ถึง Polkadot สามารถทำได้ด้วยกระบวนการที่คล้ายกับกระบวนการนั้นสำหรับ Ethereum; “ที่อยู่แยก” ควบคุมในทางใดทางหนึ่งโดย Polkadot validators ทำได้ รับ tokens ที่ถ่ายโอน (และข้อมูลที่ส่งไปพร้อมกับพวกเขา) สามารถจัดเตรียมหลักฐาน SPV ได้ด้วย oracles ที่เป็นแรงจูงใจ และ พร้อมระยะเวลายืนยันเงินรางวัลที่มอบให้ การระบุบล็อกที่ไม่เป็นที่ยอมรับซึ่งบ่งบอกถึงธุรกรรม ถูก "ใช้จ่ายสองเท่า" tokens ใดๆ ก็ตามที่เป็นเจ้าของใน โดยหลักการแล้ว “ที่อยู่แยก” จะถูกควบคุมโดย validators เดียวกันเหล่านั้นเพื่อการกระจายในภายหลัง อย่างไรก็ตาม ปัญหาคือวิธีที่สามารถควบคุมเงินฝากได้อย่างปลอดภัยจากชุดที่หมุนเวียน validator ไม่เหมือน Ethereum ซึ่งสามารถตัดสินใจได้ตามอำเภอใจ จากการรวมลายเซ็น Bitcoin มีความสำคัญอย่างยิ่ง มีข้อจำกัดมากขึ้น โดยลูกค้าส่วนใหญ่ยอมรับเฉพาะธุรกรรมที่มีลายเซ็นหลายลายเซ็นโดยมีได้สูงสุด 3 ฝ่าย การขยายเป็น 36 หรือหลายพันตามที่ต้องการในท้ายที่สุดนั้นเป็นไปไม่ได้ภายใต้ระเบียบการปัจจุบัน ทางเลือกหนึ่งคือแก้ไขโปรโตคอล Bitcoin เพื่อเปิดใช้งาน ฟังก์ชั่นดังกล่าวแม้จะเรียกว่า "ฮาร์ดฟอร์ก" ใน Bitcoin โลกเป็นเรื่องยากที่จะจัดให้มีการตัดสินจากความพยายามครั้งล่าสุด ความเป็นไปได้อย่างหนึ่งคือการใช้ลายเซ็นเกณฑ์ รูปแบบการเข้ารหัสเพื่อให้สาธารณะสามารถระบุตัวได้เพียงลำพัง กุญแจสำคัญที่จะควบคุมอย่างมีประสิทธิภาพโดย "ส่วน" ที่เป็นความลับหลายอัน บางส่วนหรือทั้งหมดต้องใช้เพื่อสร้างลายเซ็นที่ถูกต้อง ขออภัย รองรับลายเซ็นตามเกณฑ์ ด้วย ECDSA ของ Bitcoin นั้นมีราคาแพงในการคำนวณ สร้างและความซับซ้อนพหุนาม แผนการอื่นๆ เช่น ลายเซ็น Schnorr ให้ต้นทุนที่ต่ำกว่ามาก อย่างไรก็ตาม ไทม์ไลน์ที่อาจนำมาใช้ใน Bitcoin โปรโตคอลไม่แน่นอน เนื่องจากความปลอดภัยขั้นสูงสุดของเงินฝากขึ้นอยู่กับ จำนวน validators ที่ถูกผูกมัด อีกทางเลือกหนึ่งคือ ลดผู้ถือกุญแจแบบหลายลายเซ็นให้เหลือเพียงจำนวนมากเท่านั้น ชุดย่อยที่ถูกผูกมัดของทั้งหมด validators ดังกล่าวถึงเกณฑ์นั้น ลายเซ็นเป็นไปได้ (หรือที่แย่ที่สุดคือ Bitcoin เป็นภาษาท้องถิ่น สามารถลงนามหลายลายเซ็นได้) แน่นอนว่าสิ่งนี้จะช่วยลด จำนวนพันธบัตรทั้งหมดที่สามารถหักในการชดใช้หาก validators ประพฤติผิดกฎหมาย อย่างไรก็ตาม สิ่งนี้ เป็นการเสื่อมสลายอย่างงดงาม เพียงแต่กำหนดขอบเขตบนไว้ จำนวนเงินที่สามารถดำเนินการได้อย่างปลอดภัยระหว่าง สองเครือข่าย (หรือแท้จริงแล้ว % การสูญเสียควรถูกโจมตี) จาก validators สำเร็จ) ด้วยเหตุนี้ เราจึงเชื่อว่าการวาง Bitcoin การทำงานร่วมกันที่ปลอดภัยพอสมควร "parachain เสมือน" ไม่ใช่เรื่องไม่สมจริง ระหว่างทั้งสองเครือข่าย แม้ว่าจะเป็นความพยายามอย่างมากโดยมีไทม์ไลน์ที่ไม่แน่นอนและอาจเป็นไปได้ก็ตาม โดยต้องได้รับความร่วมมือจากผู้มีส่วนได้เสียภายในนั้น เครือข่าย

Designübersicht

Dieser Abschnitt soll einen kurzen Überblick darüber geben System als Ganzes. Eine gründlichere Untersuchung der Das System wird im folgenden Abschnitt beschrieben. 5.1. Konsens. Auf der Relay-Kette wird Polkadot erreicht Konsens auf niedriger Ebene über eine Reihe von einvernehmlich vereinbarten Gültigkeiten blockiert durch einen modernen asynchronen byzantinischen fehlertoleranten (BFT)-Algorithmus. Der Algorithmus wird inspiriert sein durch das einfache Tendermint [11] und das wesentlich mehr beteiligt HoneyBadgerBFT [14]. Letzteres bietet eine Effizienter und fehlertoleranter Konsens über eine willkürliche Entscheidung Defekte Netzwerkinfrastruktur angesichts einer Reihe meist harmloser Behörden oder validators. Für ein Netzwerk im Proof-of-Authority-Stil (PoA) reicht dies aus würde ausreichen, wie auch immer man sich Polkadot vorstellt auch als Netzwerk in einer vollständig offenen und öffentlichen Umgebung einsetzbar Situation ohne besondere Organisation oder Vertrauen Behörde, die für die Aufrechterhaltung erforderlich ist. Daher brauchen wir eine Mittel zur Bestimmung einer Reihe von validators und zur Schaffung von Anreizen sie, um ehrlich zu sein. Hierzu nutzen wir die PoS-basierte Auswahl Kriterien. 5.2. Den Einsatz beweisen. Wir gehen davon aus, dass das Netzwerk wird eine Möglichkeit haben, zu messen, wie viel „Einsatz“ ein bestimmtes Konto hat. Zum leichteren Vergleich mit Vorhandene Systeme nennen wir die Maßeinheit „tokens“. Leider ist der Begriff für a nicht ideal Es gibt eine Reihe von Gründen, nicht zuletzt weil es einfach ein Skalar ist Es gibt keine Vorstellung davon, welchen Wert ein Konto hat Individualität. Wir stellen uns vor, dass validators selten (höchstens) gewählt werden einmal pro Tag, aber vielleicht so selten wie einmal pro Quartal), durch ein Nominated Proof-of-Stake (NPoS)-System. Anreize können durch eine anteilige Zuteilung erfolgenPOLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 6 Relais Kette Validator-Schwarm (jeweils gefärbt durch seine bezeichnete Parachain) Transaktion (eingereicht von externer Akteur) Parachain Brücke Virtuelle Parachain (z. B. Ethereum) Parachain Parachain Warteschlangen und I/O Propagierte Transaktionen Kandidateneinreichung blockieren 2. Ordnung Relaiskette Parachain-Community Konto Eingehende Transaktion Ausgehende Transaktion Interchain-Transaktionen (verwaltet von validators) Collator Propagierter Block Fischer Abbildung 2. Ein zusammenfassendes Schema des Polkadot-Systems. Dies zeigt Collators, die Benutzertransaktionen sammeln und weitergeben sowie Blockkandidaten an Fischer und validators weitergeben. Es auch zeigt, wie ein Konto eine Transaktion, die aus seiner Parachain ausgeführt wird, über die Relay-Chain buchen kann und weiter in eine andere Parachain, wo es als Transaktion auf ein dortiges Konto interpretiert werden kann. Mittel aus einer token Basiserweiterung (bis zu 100 %) pro Jahr, wahrscheinlicher jedoch etwa 10 % zusammen mit etwaige erhobene Transaktionsgebühren. Während eine Ausweitung der Geldbasis typischerweise zu Inflation führt, da alle token Eigentümer Hätte er eine faire Chance auf Teilnahme, müsste kein tokenInhaber eine Wertminderung erleiden Bestände im Laufe der Zeit, vorausgesetzt, sie waren bereit, eine zu übernehmen Rolle im Konsensmechanismus. Ein besonderer Anteil von tokens wären für den staking-Prozess vorgesehen; die Die effektive Basiserweiterung token würde angepasst werden einen marktbasierten Mechanismus, um dieses Ziel zu erreichen. Validatoren sind durch ihre Einsätze stark gebunden; verlassend Die Anleihen der validators bleiben noch lange bestehen, nachdem die Pflichten der validators aufgehört haben (vielleicht etwa drei Monate). So lange Die Liquidationsfrist der Anleihe lässt zukünftiges Fehlverhalten zu bis zur regelmäßigen Kontrolle der Kette bestraft. Fehlverhalten führt zu einer Bestrafung, beispielsweise einer Kürzung Belohnung oder, in Fällen, die vorsätzlich gefährden Die Integrität des Netzwerks wird beeinträchtigt, der validator verliert einige oder alle seiner Integrität Anteil an andere validators, Informanten oder die Stakeholder als Ganzes (durch Brennen). Zum Beispiel ein validator Wer versucht, beide Zweige einer Abzweigung zu ratifizieren (manchmal (bekannt als „Angriff aus kurzer Distanz“) kann identifiziert werden und auf letztere Weise bestraft. Langstreckenangriffe, bei denen nichts auf dem Spiel steht4, werden durch eine einfache „Checkpoint“-Verriegelung umgangen, die eine gefährliche Kettenneuorganisation von mehr als einem verhindert besondere Kettentiefe. Um sicherzustellen, dass Clients neu synchronisiert werden lassen sich nicht auf die falsche Kette täuschen, regelmäßig Es wird zu „Hard Forks“ kommen (höchstens im gleichen Zeitraum). validators‘ Anleiheliquidation), die den jüngsten Checkpoint-Block hashes in Clients fest codiert. Dies passt gut zu einem weiteren den Platzbedarf reduzierenden Maß der „endlichen Kettenlänge“ oder periodisches Zurücksetzen des Genesis-Blocks. 5.3. Parachains und Collators. Jeder Parachain bekommt Ähnliche Sicherheitsvorkehrungen wie bei der Relay-Kette: die Die Header der Parachains sind im Relay-Chain-Block versiegelt Sicherstellen, dass nach der Bestätigung keine Neuorganisation oder „doppelte Ausgaben“ möglich sind. Dies ist eine ähnliche Sicherheitsgarantie wie die Seitenketten und das Mergemining von Bitcoin. Polkadot bietet jedoch auch starke Garantien dafür, dass die Zustandsübergänge der Parachains gültig sind. Dies geschieht dadurch, dass die Menge der validators kryptografisch zufällig in Teilmengen segmentiert wird; eine Teilmenge pro Parachain, wobei die Teilmengen pro Block möglicherweise unterschiedlich sind. Dies Das Setup impliziert im Allgemeinen, dass die Blockzeiten von Parachains dies tun mindestens so lang sein wie die der Relaiskette. Das Spezifische Mittel zur Bestimmung der Partitionierung liegen außerhalb des Geltungsbereichs 4Bei einem solchen Angriff schmiedet der Gegner vom Genesis-Block an eine völlig neue Geschichtskette. Durch die Steuerung a Obwohl sie zu Beginn einen relativ unbedeutenden Anteil am Einsatz haben, sind sie in der Lage, ihren Anteil am Einsatz im Vergleich zu allen anderen schrittweise zu erhöhen Stakeholder, da sie die einzigen aktiven Teilnehmer an ihrer alternativen Geschichte sind. Da es für die Schöpfung keine intrinsische physische Einschränkung gibt von Blöcken (im Gegensatz zu PoW, wo ziemlich viel Rechenenergie aufgewendet werden muss), sind sie in der Lage, eine Kette zu erstellen, die länger ist als die echte Kette in einem relativ kurze Zeitspanne und machen Sie es möglicherweise zum längsten und besten, indem Sie den kanonischen Zustand des Netzwerks übernehmen.POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 7 dieses Dokuments, würde aber wahrscheinlich auf einem von beiden basieren ein Commit-Reveal-Framework ähnlich dem RanDAO [19] oder Verwenden Sie Daten, die aus vorherigen Blöcken jeder Parachain kombiniert wurden unter einem kryptografisch sicheren hash. Solche Teilmengen von validators sind erforderlich, um a bereitzustellen Parachain-Blockkandidat, der garantiert gültig ist (am Schmerz der Anleihebeschlagnahme). Die Gültigkeit dreht sich um zwei wichtige Punkte; erstens, dass es an sich gültig ist – das Alle Zustandsübergänge wurden gewissenhaft ausgeführt und das alles Externe Daten, auf die verwiesen wird (z. B. Transaktionen), sind für die Einbeziehung gültig. Zweitens, dass es sich um alle Daten handelt, die nicht dazugehören B. diese externen Transaktionen, über eine ausreichend hohe Verfügbarkeit verfügen, damit die Teilnehmer dazu in der Lage sind Laden Sie es herunter und führen Sie den Block manuell aus.5 Validatoren stellen möglicherweise nur einen „Null“-Block bereit, der keine externen „Transaktionsdaten“ enthält, laufen jedoch möglicherweise Gefahr, eine geringere Belohnung zu erhalten, wenn sie dies tun. Sie arbeiten Seite an Seite ein Parachain-Klatschprotokoll mit Kollatatoren – Einzelpersonen die Transaktionen in Blöcken zusammenfassen und einen nicht interaktiven, wissensfreien Beweis liefern, dass der Block ein gültiges Kind seines Elternblocks darstellt (und jede Transaktion entgegennimmt). Gebühren für ihre Mühe). Es bleibt den Parachain-Protokollen überlassen, ihre eigenen zu spezifizieren Mittel zur Spam-Prävention: Es gibt keine grundsätzliche Vorstellung von „Rechenressourcenmessung“ oder „Transaktionsgebühr“ durch die Relaiskette auferlegt. Es gibt diesbezüglich auch keine direkte Durchsetzung durch das Relay-Chain-Protokoll (obwohl es Es ist unwahrscheinlich, dass sich die Stakeholder für eine Übernahme entscheiden würden eine Parachain, die keinen anständigen Mechanismus bot). Dies ist eine ausdrückliche Anspielung auf die Möglichkeit unterschiedlicher Ketten Ethereum, z.B. eine Bitcoin-ähnliche Kette, die ein viel einfacheres Gebührenmodell oder ein anderes, noch nicht vorgeschlagenes Spam-Präventionsmodell hat. Die Relay-Chain von Polkadot selbst wird wahrscheinlich als existieren Ethereum-ähnliche Konten und Statuskette, möglicherweise ein EVMDerivat. Da die Relay-Chain-Knoten dies benötigen Führen Sie wesentliche andere Verarbeitungsvorgänge durch, den Transaktionsdurchsatz werden teilweise durch hohe Transaktionsgebühren minimiert und, falls unsere Forschungsmodelle dies erfordern, eine Blockgrößenbeschränkung. 5.4. Interchain-Kommunikation. Der entscheidende letzte Bestandteil von Polkadot ist die Kommunikation zwischen den Ketten. Seitdem Parachains können eine Art Informationskanal zwischen sich haben, wir erlauben uns, Polkadot a zu betrachten skalierbare Multikette. Im Fall von Polkadot ist die Kommunikation so einfach wie möglich: Transaktionen werden in a ausgeführt Parachain sind (gemäß der Logik dieser Kette) dazu in der Lage bewirken die Weiterleitung einer Transaktion an eine zweite Parachain oder möglicherweise die Relaiskette. Wie externe Transaktionen Bei Produktions-blockchains sind sie vollständig asynchron und es gibt keine intrinsische Fähigkeit für sie, etwas zurückzugeben Art von Informationen zurück zu ihrem Ursprung. Ziel: bekommt Daten von früher validators des Blocks. Konto erhält Beitrag: Eintrag entfernt aus Eingang Merkle tree Konto sendet Beitrag: Eintrag platziert in Ausgang Merkle tree für das Ziel Parachain Ausgang Quelle: Aktien Daten mit den nächsten Blöcken validators Postnachweis gespeichert in Parachain-Ausstieg Merkle Baum geroutete Referenz platziert in Zielparachains Eingang Merkle tree Eindringen Abbildung 3. Eine grundlegende schematische Darstellung die Hauptteile des Routings für Gepostete Transaktionen („Posts“). Um eine minimale Implementierungskomplexität zu gewährleisten, minimal Risiko und minimal Zwangsjacke von Zukunft Parachain-Architekturen sind diese Interchain-Transaktionen praktisch nicht von extern signierten Standardtransaktionen zu unterscheiden. Die Transaktion verfügt über ein Ursprungssegment, das die Möglichkeit bietet, eine Parachain zu identifizieren, und eine Adresse, die beliebig groß sein kann. Im Gegensatz zu gängigen aktuellen Systemen wie Bitcoin und Ethereum sind Interchain-Transaktionen mit keinerlei „Zahlung“ von Gebühren verbunden; Jede solche Zahlung muss durch Verhandlungslogik auf den Quell- und Zielparachains verwaltet werden. Ein System wie das vorgeschlagene Die Serenity-Veröffentlichung [7] von Ethereum wäre ein einfaches Mittel Es ist jedoch schwierig, eine solche kettenübergreifende Ressourcenzahlung zu verwalten Wir gehen davon aus, dass zu gegebener Zeit andere in den Vordergrund treten werden. Interchain-Transaktionen werden mit einer einfachen Lösung gelöst Warteschlangenmechanismus basierend auf einem Merkle tree, um sicherzustellen Treue. Es ist die Aufgabe der Relay-Chain-Betreuer, dies zu tun Verschieben Sie Transaktionen in der Ausgabewarteschlange einer Parachain in die Eingabewarteschlange der Zielparachain. Die Übergebene Transaktionen werden in der Relay-Chain referenziert, sind jedoch nicht relAy-Chain-Transaktionen selbst. Um zu verhindern, dass ein Parachain einen anderen Parachain mit Spam überschwemmt Transaktionen, damit eine Transaktion gesendet werden kann, ist dies erforderlich dass die Eingabewarteschlange des Ziels nicht zu groß ist der Zeitpunkt des Endes des vorherigen Blocks. Wenn die Eingabe Ist die Warteschlange nach der Blockverarbeitung zu groß, gilt sie als „gesättigt“ und es können keine Transaktionen dorthin weitergeleitet werden es innerhalb nachfolgender Blöcke, bis es wieder unter das reduziert wird Grenze. Diese Warteschlangen werden in der Relay-Chain verwaltet Parachains können so die Sättigung des anderen bestimmen Status; Auf diese Weise ist der Versuch, eine Transaktion zu buchen, fehlgeschlagen zu einem blockierten Ziel können synchron gemeldet werden. (Da es jedoch keinen Rückkehrpfad gibt, konnte eine sekundäre Transaktion, die aus diesem Grund fehlschlug, nicht zurückgemeldet werden an den ursprünglichen Anrufer und andere Möglichkeiten zur Wiederherstellung müsste stattfinden.) 5.5. Polkadot und Ethereum. Aufgrund der Turing-Vollständigkeit von Ethereum gehen wir davon aus, dass ausreichend Möglichkeiten für die Interoperabilität zwischen Polkadot und Ethereum bestehen voneinander, zumindest innerhalb einiger leicht ableitbarer Sicherheitsgrenzen. Kurz gesagt, wir stellen uns vor, dass Transaktionen von Polkadot kann von validators signiert und dann eingespeist werden 5Eine solche Aufgabe könnte zwischen validators geteilt werden oder zur designierten Aufgabe einer Gruppe stark verbundener validators werden, die als bezeichnet werden Verfügbarkeitsgaranten.

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 8 Ethereum, wo sie interpretiert und umgesetzt werden können ein Transaktionsweiterleitungsvertrag. In die andere Richtung, Wir sehen die Verwendung speziell formatierter Protokolle (Ereignisse) vor. aus einem „Breakout-Vertrag“ stammen, um eine schnelle Überprüfung zu ermöglichen, dass eine bestimmte Nachricht weitergeleitet werden sollte. 5.5.1. Polkadot bis Ethereum. Durch die Wahl eines BFT Konsensmechanismus mit validators, gebildet aus a Gruppe von Stakeholdern, die durch eine Zustimmungsabstimmung bestimmt wird Mechanismus können wir einen sicheren Konsens mit einem erreichen selten wechselnde und bescheidene Anzahl von validators. In einem System mit insgesamt 144 validators beträgt eine Blockzeit von 4 Sekunden und eine Endgültigkeit von 900 Blöcken (unter Berücksichtigung böswilliger Angriffe). Verhaltensweisen wie Doppelstimmen werden zur Anzeige gebracht, bestraft und repariert), kann die Gültigkeit einer Sperre vernünftigerweise sein Als bewiesen gelten bereits 97 Unterschriften (zwei Drittel von 144 plus eine) und eine anschließende 60-minütige Überprüfungsperiode, in der keine Anfechtungen hinterlegt werden. Ethereum ist in der Lage, einen „Einbruchsvertrag“ zu hosten, der Die 144 Unterzeichner können gepflegt und kontrolliert werden sie. Da die Wiederherstellung der digitalen Signatur mit elliptischer Kurve (ECDSA) nur 3.000 Gase unter dem EVM erfordert, und seitdem Wir möchten wahrscheinlich, dass die Validierung nur auf einem erfolgt Supermehrheit von validators (statt völliger Einstimmigkeit), Die Grundkosten von Ethereum bestätigen, dass eine Anweisung vorliegt wurde ordnungsgemäß validiert, da aus dem Polkadot-Netz nicht mehr als 300.000 Gas stammen würden – lediglich 6 % davon die Gesamtblockgasgrenze liegt bei 5,5 M. Erhöhen der Anzahl der validators (wie es für die Bearbeitung erforderlich wäre). Dutzende Ketten) erhöhen diese Kosten jedoch zwangsläufig Es wird allgemein erwartet, dass die Transaktionsbandbreite von Ethereum im Laufe der Zeit wächst, wenn die Technologie ausgereift ist Infrastruktur verbessert sich. Zusammen mit der Tatsache, dass nicht alle validators müssen beteiligt sein (z. B. nur die höchste). Für eine solche Aufgabe können abgesteckte validators herangezogen werden Die Grenzen dieses Mechanismus erstrecken sich einigermaßen gut. Unter der Annahme einer täglichen Rotation solcher validators (was (ziemlich konservativ – wöchentlich oder sogar monatlich können akzeptabel sein), dann die Kosten für die Wartung des Netzwerks diese Ethereum-Weiterleitungsbrücke wäre etwa 540.000 Gas pro Tag oder, bei den aktuellen Gaspreisen, 45 $ pro Jahr. Eine einfache Transaktion, die allein über die Brücke weitergeleitet wird, würde Kosten verursachen etwa 0,11 $; zusätzliche Vertragsberechnung würde kosten mehr natürlich. Durch Pufferung und Bündelung von Transaktionen Zusammengenommen können die Einbruchsgenehmigungskosten leicht betragen geteilt, wodurch die Kosten pro Transaktion erheblich gesenkt werden; wenn vor der Weiterleitung 20 Transaktionen erforderlich wären, dann Die Kosten für die Weiterleitung einer Basistransaktion würden auf sinken etwa 0,01 $. Eine interessante und kostengünstigere Alternative zu diesem Multisignatur-Vertragsmodell wäre die Verwendung von Schwellenwertsignaturen, um die multilaterale Eigentumssemantik zu erreichen. Während Schwellensignaturschemata für ECDSA sind rechenintensiv, diejenigen für andere Schemata wie Schnorr-Signaturen sind sehr vernünftig. Ethereum plant die Einführung von Grundelementen, die dies ermöglichen würden Schemata, die im kommenden Metropolis-Hardfork günstig zu verwenden sind. Wenn ein solches Mittel genutzt werden könnte, würden die Gaskosten sinken zur Weiterleitung einer Polkadot-Transaktion in den Ethereum Netzwerk würde dramatisch auf nahezu Null reduziert werden Gemeinkosten, die über die Grundkosten für die Validierung hinausgehen Unterschrift und Ausführung der zugrunde liegenden Transaktion. In diesem Modell hätten die validator-Knoten von Polkadot dies getan nichts anderes zu tun, als Nachrichten zu signieren. Damit die Transaktionen tatsächlich an das Netzwerk Ethereum weitergeleitet werden, haben wir Gehen Sie davon aus, dass sich auch die validators selbst dort befinden würden das Ethereum-Netzwerk oder, was wahrscheinlicher ist, kleine Kopfgelder dem ersten Akteur angeboten werden, der die Nachricht weiterleitet an das Netzwerk (das Kopfgeld könnte trivialerweise an das Netzwerk gezahlt werden). Urheber der Transaktion). 5.5.2. Ethereum bis Polkadot. Transaktionen durchführen Die Weiterleitung von Ethereum an Polkadot verwendet den einfachen Begriff der Protokolle. Wenn ein Ethereum-Vertrag eine Transaktion an eine bestimmte Parachain von Polkadot senden möchte, Es muss lediglich ein spezieller „Break-out-Vertrag“ abgeschlossen werden. Der Breakout-Vertrag würde jede mögliche Zahlung erfordern erforderlich sein und eine Protokollierungsanweisung erteilen, damit seine Existenz durch einen Merkle-Beweis und eine Behauptung, dass der Header des entsprechenden Blocks gültig ist, nachgewiesen werden kann kanonisch. Von den beiden letztgenannten Bedingungen ist die Gültigkeit möglicherweise die am einfachsten zu beweisen. Im Prinzip ist die einzige Voraussetzungfür jeden Polkadot-Knoten, der den Beweis benötigt (d. h. ernannte validator-Knoten), um eine vollständig synchronisierte Instanz eines Standard-Ethereum-Knotens auszuführen. Leider ist dies selbst eine ziemlich starke Abhängigkeit. Ein mehr Eine leichte Methode bestünde darin, einen einfachen Beweis dafür zu verwenden Der Header wurde korrekt ausgewertet, indem nur der angegeben wurde Ein Teil des Statusversuchs von Ethereum musste ordnungsgemäß ausgeführt werden Überprüfen Sie die Transaktionen im Block und prüfen Sie, ob die Protokolle (im Blockbeleg enthalten) gültig sind. Solche „SPV-ähnlichen“6 Beweise erfordern möglicherweise noch eine erhebliche Menge an Informationen; Praktischerweise werden sie normalerweise nicht benötigt alle: Ein Bindungssystem innerhalb von Polkadot würde Bindungen ermöglichen Dritte dürfen keine Header einreichen, auf die Gefahr hin, ihre Header zu verlieren Sollte ein anderer Dritter (z. B. ein „Fischer“, siehe 6.2.3) den Nachweis erbringen, dass der Header ungültig ist, kann die Bindung erfolgen (insbesondere, dass die Staatswurzel oder die Empfangswurzel Betrüger waren). In einem nicht finalisierenden PoW-Netzwerk wie Ethereum ist das Kanonizität lässt sich nicht schlüssig beweisen. Um dies zu beheben, versuchen Anwendungen, sich auf irgendeine Art zu verlassen Bei einer kettenabhängigen Ursache-Wirkungs-Beziehung warten Sie auf eine Reihe von „Bestätigungen“ oder bis die abhängige Transaktion eine bestimmte Anzahl von „Bestätigungen“ erreicht hat besondere Tiefe innerhalb der Kette. Am Ethereum, dies Die Tiefe variiert von 1 Block für die am wenigsten wertvollen Transaktionen ohne bekannte Netzwerkprobleme bis zu 1200 Blöcken wie bisher Dies war bei der ersten Frontier-Veröffentlichung für Börsen der Fall. Im stabilen „Homestead“-Netzwerk liegt diese Zahl bei 120 Blöcke für die meisten Börsen, und wir würden wahrscheinlich nehmen ein ähnlicher Parameter. Also wir kann Stell dir vor unsere Polkadot-Seite Ethereuminterface hat einige einfache Funktionen: um in der Lage zu sein Akzeptieren Sie einen neuen Header aus dem Netzwerk Ethereum und validieren Sie den PoW, um einen Beweis dafür akzeptieren zu können, dass a Ein bestimmtes Protokoll wurde vom Breakout-Vertrag auf der Ethereum-Seite für einen Header mit ausreichender Tiefe (und Weiterleitung) ausgegeben die entsprechende Nachricht innerhalb von Polkadot) und schließlich Beweise akzeptieren zu können, dass ein zuvor akzeptiertes aber Der noch nicht in Kraft gesetzte Header enthält einen ungültigen Empfangsstamm. Um tatsächlich die Header-Daten Ethereum selbst zu erhalten (und etwaige SPV-Beweise oder Gültigkeits-/Kanonizitätswiderlegungen) in das Netzwerk Polkadot, ein Anreiz zur Weiterleitung 6SPV bezieht sich auf „Simplified Payment Verification“ in Bitcoin und beschreibt eine Methode für Kunden, Transaktionen zu überprüfen und dabei nur Transaktionen zu überprüfen eine Kopie aller Blockheader der längsten PoW-Kette.POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 9 Daten benötigt werden. Dies kann so einfach sein wie eine Zahlung (finanziert aus den auf der Seite Ethereum erhobenen Gebühren) bezahlt an jeden, der einen nützlichen Block weiterleiten kann, dessen Header ist gültig. Um dies zu gewährleisten, müssten Validatoren Informationen zu den letzten paar tausend Blöcken aufbewahren in der Lage sein, Forks zu verwalten, entweder über protokollintrinsische Mittel oder über einen auf dem Server gepflegten Vertrag Relaiskette. 5.6. Polkadot und Bitcoin. Bitcoin Interoperation stellt für Polkadot eine interessante Herausforderung dar: ein sogenanntes „Zwei-Wege-Kopplung“ wäre ein nützliches Stück Infrastruktur auf der Seite beider Netzwerke zu haben. Allerdings aufgrund Die Einschränkungen von Bitcoin gelten für die sichere Bereitstellung eines solchen Stifts ein nicht triviales Unterfangen. Zustellung einer Transaktion von Bitcoin bis Polkadot kann im Prinzip mit einem ähnlichen Verfahren wie für Ethereum erfolgen; eine „Breakout-Adresse“ in irgendeiner Weise durch die Polkadot validators kontrolliert werden könnten Empfangen übertragener tokens (und zusammen mit ihnen gesendeter Daten). SPV-Nachweise könnten durch incentivierte oracles erbracht werden und, zusammen mit einer Bestätigungsfrist, einer Prämie für Identifizieren nicht-kanonischer Blöcke, die die Transaktion implizieren wurde „doppelt ausgegeben“. Alle tokens, die sich dann im Besitz befinden „Breakout-Adresse“ würde dann im Prinzip von denselben validators für eine spätere Verbreitung kontrolliert. Das Problem besteht jedoch darin, wie die Einzahlungen von einem rotierenden validator-Set aus sicher gesteuert werden können. Anders als Ethereum, das in der Lage ist, willkürliche Entscheidungen zu treffen Bei Kombinationen von Signaturen ist Bitcoin im Wesentlichen eingeschränkter, da die meisten Kunden nur Multisignatur-Transaktionen mit maximal drei Parteien akzeptieren. Eine Ausweitung auf 36 oder, wie letztlich gewünscht, sogar auf Tausende, ist nach dem aktuellen Protokoll nicht möglich. Eine Möglichkeit besteht darin, das Protokoll Bitcoin zu ändern, um es zu aktivieren Solche Funktionalitäten gibt es jedoch in sogenannten „Hard Forks“. Bitcoin Welt ist nach jüngsten Versuchen schwer zu arrangieren. Eine Möglichkeit ist die Verwendung von Schwellenwertsignaturen, kryptografische Schemata, um eine eindeutig identifizierbare Öffentlichkeit zu ermöglichen Schlüssel zur effektiven Kontrolle durch mehrere geheime „Teile“, Einige oder alle davon müssen verwendet werden, um eine gültige Signatur zu erstellen. Leider sind Schwellenwertsignaturen kompatibel mit Bitcoins ECDSA sind rechenintensiv erstellen und von polynomialer Komplexität. Andere Schemata wie z Eine Schnorr-Signatur bietet jedoch weitaus geringere Kosten Zeitplan, auf dem sie in die Bitcoin eingeführt werden können Protokoll ist unsicher. Denn die letztendliche Sicherheit der Einlagen liegt bei Eine weitere Möglichkeit besteht darin, eine Reihe gebundener validators zu verwenden Reduzieren Sie die Anzahl der Multi-Signatur-Schlüsselhalter nur stark gebundene Teilmenge der gesamten validators, so dass dieser Schwellenwert vorliegt Signaturen werden machbar (oder schlimmstenfalls Bitcoins native). Mehrfachsignatur ist möglich). Dies reduziert natürlich die Gesamtbetrag der Anleihen, die als Wiedergutmachung abgezogen werden könnten, falls sich die validators illegal verhalten, wie auch immer ist eine elegante Verschlechterung, bei der einfach eine Obergrenze von festgelegt wird die Höhe der Mittel, die sicher zwischen den fließen können zwei Netzwerke (oder tatsächlich, auf die prozentualen Verluste bei einem Angriff). aus den validators erfolgreich). Daher halten wir es für nicht unrealistisch, eine einigermaßen sichere Bitcoin Interoperabilität „virtuelle Parachain“ zu platzieren. zwischen den beiden Netzwerken, obwohl dennoch ein erheblicher Aufwand mit ungewissem Zeitplan und durchaus möglich ist Dies erfordert die Zusammenarbeit der Beteiligten Netzwerk.

โปรโตคอลโดยละเอียด

โปรโตคอลสามารถแบ่งออกเป็นสามอย่างคร่าว ๆ ชิ้นส่วน: กลไกฉันทามติ, ส่วนต่อประสานพาราเชน และการกำหนดเส้นทางธุรกรรมระหว่างลูกโซ่ 6.1. รีเลย์โซ่ การดำเนินงาน ที่ รีเลย์โซ่ จะ น่าจะเป็นห่วงโซ่ที่คล้ายกับ Ethereum ในวงกว้าง เป็นแบบรัฐโดยมีที่อยู่การแมปสถานะไปยังบัญชี ข้อมูล ส่วนใหญ่จะสมดุล และ (เพื่อป้องกันการเล่นซ้ำ) เคาน์เตอร์ธุรกรรม การวางบัญชีที่นี่บรรลุจุดประสงค์เดียว นั่นคือ เพื่อจัดเตรียมการบัญชีที่มีเอกลักษณ์เฉพาะตัว จำนวนเดิมพันในระบบ 7 จะมีความแตกต่างที่น่าสังเกตแม้ว่า: • ไม่สามารถปรับใช้สัญญาผ่านธุรกรรมได้ ต่อไปนี้จากความปรารถนาที่จะหลีกเลี่ยงการทำงานของแอปพลิเคชันบนรีเลย์เชนก็จะไม่เป็นเช่นนั้น สนับสนุนการนำสัญญาไปใช้สาธารณะ • การใช้ทรัพยากรคอมพิวเตอร์ (“แก๊ส”) ไม่ได้ถูกนำมาพิจารณา เนื่องจากมีเพียงฟังก์ชันเดียวที่เปิดให้ใช้งานทั่วไปเท่านั้น จะได้รับการแก้ไข เหตุผลเบื้องหลังการบัญชีก๊าซ ไม่ถืออีกต่อไป ด้วยเหตุนี้จึงจะมีค่าธรรมเนียมเพิ่มเติม ทุกกรณีช่วยให้มีประสิทธิภาพมากขึ้นจากกรณีใด ๆ การเรียกใช้โค้ดแบบไดนามิกที่อาจจำเป็นต้องดำเนินการ และรูปแบบธุรกรรมที่ง่ายกว่า • ฟังก์ชั่นพิเศษได้รับการสนับสนุนสำหรับสัญญาที่ระบุไว้ซึ่งช่วยให้สามารถดำเนินการอัตโนมัติและส่งออกข้อความเครือข่าย ในกรณีที่รีเลย์เชนมี VM และเป็นเช่นนั้น จาก EVM นั้น จะมีการปรับเปลี่ยนหลายอย่างเพื่อให้แน่ใจว่ามีความเรียบง่ายสูงสุด ก็น่าจะได้ มีสัญญาในตัวจำนวนหนึ่ง (คล้ายกับที่ ที่อยู่ 1-4 ใน Ethereum) เพื่ออนุญาตเฉพาะแพลตฟอร์ม หน้าที่ที่จะต้องจัดการรวมถึงสัญญาที่เป็นเอกฉันท์ validator สัญญาและสัญญาพาราเชน หากไม่ใช่ EVM ดังนั้นแบ็กเอนด์ WebAssembly [2] (wasm) จึงเป็นทางเลือกที่เป็นไปได้มากที่สุด ในกรณีนี้โดยรวม โครงสร้างจะคล้ายกัน แต่ก็ไม่จำเป็น สำหรับสัญญาในตัวที่มี Wasm เป็นเป้าหมายที่เป็นไปได้ สำหรับภาษาวัตถุประสงค์ทั่วไปมากกว่าที่ยังไม่บรรลุนิติภาวะ และภาษาที่จำกัดสำหรับ EVM การเบี่ยงเบนที่เป็นไปได้อื่นๆ จากโปรโตคอล Ethereum ปัจจุบันค่อนข้างเป็นไปได้ ตัวอย่างเช่น ความเรียบง่ายของ รูปแบบธุรกรรม-ใบเสร็จรับเงินช่วยให้สามารถดำเนินการแบบขนานของธุรกรรมที่ไม่มีความขัดแย้งภายในบล็อกเดียวกัน ตามที่เสนอสำหรับชุดการเปลี่ยนแปลง Serenity เป็นไปได้แม้ว่าจะไม่น่าเป็นไปได้ก็ตามที่เหมือนความสงบสุข โซ่ "บริสุทธิ์" ถูกปรับใช้เป็นรีเลย์-เชน เพื่อให้สามารถ สัญญาเฉพาะเพื่อจัดการสิ่งต่าง ๆ เช่น staking token สมดุลแทนที่จะทำให้สิ่งนั้นเป็นส่วนพื้นฐานของ โปรโตคอลของลูกโซ่ ปัจจุบันเรารู้สึกว่าไม่น่าจะเป็นเช่นนั้น จะนำเสนอความเรียบง่ายของโปรโตคอลที่ดีเยี่ยมพอสมควร คุ้มค่ากับความซับซ้อนและความไม่แน่นอนเพิ่มเติมที่เกี่ยวข้อง ในการพัฒนามัน 7เพื่อเป็นการแสดงจำนวนเงินที่ผู้ถือกำหนดต้องรับผิดชอบต่อความปลอดภัยโดยรวมของระบบ บัญชีเดิมพันเหล่านี้จะ เข้ารหัสมูลค่าทางเศรษฐกิจบางอย่างอย่างหลีกเลี่ยงไม่ได้ อย่างไรก็ตาม ควรเข้าใจว่าเนื่องจากไม่มีเจตนาที่จะใช้ค่าดังกล่าว ไม่ว่าด้วยวิธีใดก็ตามเพื่อวัตถุประสงค์ในการแลกเปลี่ยนสินค้าและบริการในโลกแห่งความเป็นจริง ควรสังเกตว่า tokens นั้นไม่เหมือนกับ สกุลเงินและด้วยเหตุนี้ รีเลย์เชนจึงยังคงรักษาปรัชญาที่ทำลายล้างเกี่ยวกับการใช้งานโพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 10 มีฟังก์ชันการทำงานเล็กๆ น้อยๆ จำนวนหนึ่งที่จำเป็นสำหรับการจัดการกลไกฉันทามติ ชุด validator กลไกการตรวจสอบ และพาราเชน เหล่านี้ สามารถนำไปใช้ร่วมกันภายใต้โปรโตคอลเสาหิน อย่างไรก็ตาม ด้วยเหตุผลของการเพิ่มความเป็นโมดูลาร์ เราจึงอธิบายสิ่งเหล่านี้ว่าเป็น "สัญญา" ของรีเลย์-เชน สิ่งนี้ควร ให้เข้าใจว่าเป็นวัตถุ (ในความหมายของ การเขียนโปรแกรมเชิงวัตถุ) จัดการโดยกลไกฉันทามติของรีเลย์เชน แต่ไม่จำเป็นว่าจะเป็นเช่นนั้น พวกเขาถูกกำหนดให้เป็นโปรแกรมใน EVM-like opcodes หรือ แม้ว่าพวกเขาจะสามารถระบุที่อยู่ได้เป็นรายบุคคลผ่านทาง ระบบบัญชี 6.2. สัญญาการปักหลัก สัญญานี้จะรักษาชุด validator มันจัดการ: • บัญชีใดในปัจจุบัน validators; • ซึ่งพร้อมที่จะกลายเป็น validators ในระยะสั้น แจ้งให้ทราบล่วงหน้า; • บัญชีใดที่มีการเสนอชื่อเดิมพัน validator; • คุณสมบัติของแต่ละอย่างรวมถึงปริมาณ staking อัตราการจ่ายเงินและที่อยู่ที่ยอมรับได้ และตัวตนระยะสั้น (เซสชัน) อนุญาตให้บัญชีลงทะเบียนความปรารถนาที่จะเป็น ผูกมัด validator (พร้อมกับข้อกำหนด) เพื่อเสนอชื่อตัวตนบางส่วน และสำหรับ validators ผูกมัดที่มีอยู่แล้ว เพื่อลงทะเบียนความปรารถนาที่จะออกจากสถานะนี้ มันยัง รวมถึงเครื่องจักรสำหรับกลไกการตรวจสอบและการกำหนดมาตรฐาน 6.2.1. เดิมพัน-token สภาพคล่อง เป็นที่พึงปรารถนาโดยทั่วไป มี staking tokens ทั้งหมดมากที่สุดเท่าที่จะเป็นไปได้ เดิมพันภายในการดำเนินงานบำรุงรักษาเครือข่ายตั้งแต่นั้นมา สิ่งนี้เชื่อมโยงโดยตรงกับความปลอดภัยของเครือข่ายกับ "มูลค่าหลักทรัพย์ตามราคาตลาด" โดยรวมของ staking token นี้ได้อย่างง่ายดาย ได้รับการจูงใจด้วยการเพิ่มสกุลเงินและแจกจ่ายรายได้ให้กับผู้ที่เข้าร่วมในฐานะ validators อย่างไรก็ตาม การทำเช่นนี้ทำให้เกิดปัญหา: ถ้า token ถูกล็อคอยู่ในสัญญาการปักหลักภายใต้การลงโทษของการลดลง ส่วนสำคัญจะคงอยู่ได้อย่างเพียงพอได้อย่างไร ของเหลวเพื่อให้สามารถค้นพบราคาได้? คำตอบประการหนึ่งสำหรับเรื่องนี้คือการอนุญาตให้ทำสัญญาอนุพันธ์ที่ตรงไปตรงมา โดยรักษาความปลอดภัย tokens ที่เปลี่ยนกันได้บนหุ้นอ้างอิง token นี่เป็นเรื่องยากที่จะจัดการในลักษณะที่ไว้วางใจได้ นอกจากนี้ tokens อนุพันธ์เหล่านี้ไม่สามารถได้รับการปฏิบัติอย่างเท่าเทียมกันด้วยเหตุผลเดียวกันกับที่ว่าพันธบัตรรัฐบาลยูโรโซนที่แตกต่างกันไม่สามารถทดแทนได้: คือโอกาสที่สินทรัพย์อ้างอิงจะล้มเหลวและกลายเป็น ไร้ค่า กับรัฐบาลยูโรโซนอาจมี ค่าเริ่มต้น ด้วย validator-เดิมพัน tokens validator อาจ กระทำการอันมุ่งร้ายและถูกลงโทษ ตามหลักการของเรา เราเลือกวิธีแก้ปัญหาที่ง่ายที่สุด: ไม่ใช่ token ทั้งหมดจะถูกเดิมพัน นี่ก็จะหมายความอย่างนั้น สัดส่วนบางส่วน (อาจ 20%) ของ tokens จะถูกบังคับให้ยังคงเป็นของเหลว แม้ว่าสิ่งนี้จะไม่สมบูรณ์แบบจากมุมมองด้านความปลอดภัย แต่ก็ไม่น่าจะสร้างความแตกต่างขั้นพื้นฐานได้ ความปลอดภัยของเครือข่าย 80% ของการชดใช้ที่เป็นไปได้จากการยึดพันธบัตรจะยังคงสามารถทำได้ เทียบกับ “กรณีที่สมบูรณ์แบบ” 100% staking อัตราส่วนระหว่างเงินเดิมพันและของเหลว tokens สามารถกำหนดเป้าหมายได้อย่างง่ายดายผ่านกลไกการประมูลแบบย้อนกลับ โดยพื้นฐานแล้ว token ผู้ถือสนใจที่จะเป็น validator แต่ละคนจะโพสต์ข้อเสนอในสัญญา staking ที่ระบุ อัตราการจ่ายเงินขั้นต่ำที่พวกเขาจะต้องได้รับ ส่วนหนึ่ง ในตอนต้นของแต่ละเซสชัน (เซสชันจะ เกิดขึ้นเป็นประจำบางทีอาจเกิดขึ้นครั้งละครั้ง) validator ช่องจะถูกเติมตามแต่ละช่อง validator เดิมพันและอัตราการจ่ายเงิน อัลกอริทึมหนึ่งที่เป็นไปได้ เพราะนี่จะเป็นการเอาผู้ที่มีข้อเสนอต่ำที่สุด เป็นตัวแทนเดิมพันไม่สูงกว่ายอดเดิมพันทั้งหมดที่ตั้งเป้าหมายไว้ หารด้วยจำนวนช่องและไม่ต่ำกว่าขอบล่างของจำนวนนั้น หากไม่สามารถเติมช่องได้ ขอบเขตล่างสามารถลดลงซ้ำๆ ได้ด้วยปัจจัยบางอย่างเพื่อให้เกิดความพึงพอใจ 6.2.2. การเสนอชื่อ เป็นไปได้ที่จะเสนอชื่ออย่างไม่ไว้วางใจ staking tokens ให้กับ validator ที่ใช้งานอยู่ โดยมอบให้พวกเขา ความรับผิดชอบของหน้าที่ validators การเสนอชื่อผลงาน ผ่านระบบอนุมัติ-ลงคะแนนเสียง ผู้ที่จะเป็นผู้เสนอชื่อแต่ละคนสามารถโพสต์คำแนะนำในสัญญา staking ได้ การแสดงตัวตน validator อย่างน้อยหนึ่งรายการภายใต้เจ้าของ ความรับผิดชอบที่พวกเขาพร้อมที่จะมอบความไว้วางใจ ในแต่ละเซสชั่นพันธบัตรของผู้เสนอชื่อจะกระจายออกไป แสดงโดย validator หนึ่งรายการขึ้นไป อัลกอริธึมการกระจายปรับให้เหมาะสมสำหรับชุด validators ของผลรวมที่เทียบเท่ากัน พันธบัตร พันธบัตรของผู้เสนอชื่อจะอยู่ภายใต้ความรับผิดชอบที่มีประสิทธิภาพของ validator aและได้รับดอกเบี้ยหรือประสบ ลดโทษตามสมควร 6.2.3. การยึดพันธบัตร / การเผา พฤติกรรม validator บางอย่างส่งผลให้มีการลดความผูกพันลง ถ้า พันธบัตรจะลดลงต่ำกว่าขั้นต่ำที่อนุญาต เซสชันสิ้นสุดก่อนกำหนดและเซสชันอื่นเริ่มต้นขึ้น รายการพฤติกรรมที่ไม่เหมาะสม validator ที่ได้รับโทษอย่างครบถ้วน รวมถึง: • เป็นส่วนหนึ่งของกลุ่มพาราเชนที่ไม่สามารถให้ได้ ฉันทามติเกี่ยวกับความถูกต้องของบล็อกพาราเชน • กระตือรือร้นในการลงนามเพื่อความถูกต้องของสิ่งที่ไม่ถูกต้อง บล็อกพาราเชน • ไม่สามารถจัดหาเพย์โหลดขาออกได้ก่อนหน้านี้ โหวตว่าใช้ได้; • การไม่ใช้งานในระหว่างกระบวนการฉันทามติ; • ตรวจสอบความถูกต้องของบล็อกรีเลย์-เชนบนส้อมของคู่แข่ง พฤติกรรมที่ไม่เหมาะสมบางกรณีอาจคุกคามความสมบูรณ์ของเครือข่าย (เช่น การเซ็นชื่อบล็อก parachain ที่ไม่ถูกต้อง และการตรวจสอบหลายด้านของทางแยก) และด้วยเหตุนี้จึงส่งผลให้มีการเนรเทศอย่างมีประสิทธิผลโดยการลดพันธะทั้งหมดลง ใน กรณีอื่นๆ ที่ร้ายแรงน้อยกว่า (เช่น การไม่มีการใช้งานตามฉันทามติ กระบวนการ) หรือกรณีที่ไม่สามารถระบุความผิดได้แน่ชัด (เป็นส่วนหนึ่งของกลุ่มที่ขาดประสิทธิภาพ) ส่วนน้อย ของพันธบัตรอาจถูกปรับแทนได้ ในกรณีหลังนี้ ทำงานได้ดีกับการปั่นกลุ่มย่อยเพื่อให้แน่ใจว่าเป็นอันตราย โหนดต้องสูญเสียมากกว่าโหนดใจดีที่เสียหายอย่างมาก ในบางกรณี (เช่น การตรวจสอบ multi-fork และไม่ถูกต้อง การลงนามบล็อกย่อย) validators ไม่สามารถตรวจจับพฤติกรรมที่ไม่เหมาะสมของกันและกันได้อย่างง่ายดายเนื่องจากมีการตรวจสอบอย่างต่อเนื่อง ของแต่ละบล็อกพาราเชนจะเป็นงานที่ยากลำบากเกินไป ที่นี่ มีความจำเป็นต้องขอความช่วยเหลือจากฝ่ายภายนอก กระบวนการตรวจสอบเพื่อตรวจสอบและรายงานพฤติกรรมที่ไม่เหมาะสมดังกล่าว ทุกฝ่ายจะได้รับรางวัลจากการรายงานกิจกรรมดังกล่าว คำว่า “ชาวประมง” มีต้นกำเนิดมาจากสิ่งที่ไม่น่าเป็นไปได้ ของรางวัลดังกล่าว เนื่องจากกรณีเหล่านี้มักมีความร้ายแรงมาก เราจึงคิดว่าสามารถจ่ายรางวัลใดๆ ได้อย่างง่ายดายจากพันธบัตรที่ถูกยึด โดยทั่วไปแล้ว เราชอบที่จะรักษาสมดุลของการเผาไหม้ (เช่น ลดจนเหลืออะไรเลย) ด้วยการจัดสรรใหม่ แทนที่จะเป็น พยายามจัดสรรการขายส่ง สิ่งนี้มีผลกระทบจาก

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 11 การเพิ่มมูลค่าโดยรวมของ token เพื่อชดเชย เครือข่ายโดยทั่วไปในระดับหนึ่งมากกว่าเฉพาะเจาะจง ฝ่ายที่เกี่ยวข้องกับการค้นพบ นี่เป็นเรื่องความปลอดภัยเป็นหลัก กลไก: เงินจำนวนมากที่เกี่ยวข้องอาจนำไปสู่การจูงใจพฤติกรรมที่รุนแรงและเฉียบพลันได้ทั้งหมด มอบให้กับเป้าหมายเดียว โดยทั่วไป สิ่งสำคัญคือรางวัลจะต้องมีจำนวนมากพอที่จะทำให้การตรวจสอบคุ้มค่าสำหรับเครือข่าย แต่ก็ไม่มากจนเกินไปที่จะชดเชยค่าใช้จ่ายในการเผชิญหน้า อาชญากร "ระดับอุตสาหกรรม" ที่มีเงินทุนดีและจัดการอย่างดี การแฮ็กการโจมตี validator ผู้โชคร้ายบางตัวเพื่อบังคับพฤติกรรมที่ไม่เหมาะสม ด้วยวิธีนี้จำนวนเงินที่เรียกร้องโดยทั่วไปควรเป็นจำนวนไม่ มากกว่าความผูกพันโดยตรงของผู้หลงทาง validator เกรงว่าก แรงจูงใจอันชั่วร้ายเกิดจากการประพฤติผิดและรายงานตัวเพื่อรับเงินรางวัล สิ่งนี้สามารถต่อสู้ได้อย่างชัดเจน ผ่านข้อกำหนดพันธะโดยตรงขั้นต่ำสำหรับการเป็น validator หรือโดยนัยโดยการให้ความรู้แก่ผู้เสนอชื่อว่า validators ที่มีพันธบัตรเพียงเล็กน้อยไม่มีแรงจูงใจที่ดี ประพฤติตัวดี 6.3. Parachain Registry Parachain แต่ละอันถูกกำหนดไว้แล้ว รีจิสทรีนี้ มันเป็นโครงสร้างคล้ายฐานข้อมูลที่ค่อนข้างเรียบง่ายและเก็บข้อมูลทั้งแบบคงที่และไดนามิก แต่ละโซ่ ข้อมูลคงที่รวมถึงดัชนีลูกโซ่ (แบบง่าย จำนวนเต็ม) พร้อมด้วยเอกลักษณ์ของโปรโตคอลการตรวจสอบ วิธีการแยกแยะระหว่างชนชั้นต่างๆ ของ parachain เพื่อให้อัลกอริธึมการตรวจสอบความถูกต้องถูกต้อง ดำเนินการโดย validators ส่งต่อผู้สมัครที่ถูกต้อง การพิสูจน์แนวคิดเบื้องต้นจะเน้นไปที่การวาง อัลกอริธึมการตรวจสอบใหม่เข้าสู่ไคลเอนต์โดยต้องมีการฮาร์ดฟอร์กของโปรโตคอลในแต่ละครั้งอย่างมีประสิทธิภาพ มีการเพิ่มคลาสของโซ่เพิ่มเติม ท้ายที่สุดแล้วแม้ว่า อาจเป็นไปได้ที่จะระบุอัลกอริธึมการตรวจสอบความถูกต้อง วิธีการที่เข้มงวดและมีประสิทธิภาพเพียงพอที่ลูกค้าจะเป็น สามารถทำงานร่วมกับพาราเชนใหม่ได้อย่างมีประสิทธิผลโดยไม่ต้องมี ฮาร์ดฟอร์ก แนวทางหนึ่งที่เป็นไปได้คือการระบุ อัลกอริธึมการตรวจสอบความถูกต้องของพาราเชนที่ได้รับการยอมรับอย่างดี ภาษาที่เป็นกลางและคอมไพล์ตามแพลตฟอร์ม เช่น WebAssembly จำเป็นต้องมีการวิจัยเพิ่มเติมเพื่อพิจารณา ไม่ว่าจะเป็นไปได้จริงหรือไม่ แต่ถ้าเป็นเช่นนั้นก็สามารถนำมาซึ่ง ด้วยข้อได้เปรียบอันมหาศาลของการขับไล่ฮาร์ดฟอร์ก เพื่อความดี ข้อมูลแบบไดนามิกรวมถึงลักษณะของระบบการกำหนดเส้นทางธุรกรรมที่ต้องมีข้อตกลงระดับโลกดังกล่าว เป็นคิวทางเข้าของ parachain (อธิบายไว้ในส่วน 6.6) รีจิสทรีสามารถเพิ่ม parachains ได้เท่านั้น ผ่านการลงประชามติเต็มรูปแบบ สิ่งนี้สามารถจัดการได้ ภายในแต่น่าจะวางไว้ภายนอกมากกว่า สัญญาลงประชามติเพื่ออำนวยความสะดวกในการนำกลับมาใช้ใหม่ตาม องค์ประกอบการกำกับดูแลทั่วไปเพิ่มเติม พารามิเตอร์ที่จะ ข้อกำหนดในการลงคะแนนเสียง (เช่น องค์ประชุมที่ต้องการ เสียงข้างมาก จำเป็น) สำหรับการลงทะเบียนโซ่เพิ่มเติมและอื่น ๆ การอัพเกรดระบบที่เป็นทางการน้อยลงจะมีการกำหนดไว้ใน "ต้นแบบ รัฐธรรมนูญ” แต่มีแนวโน้มว่าจะเป็นไปตามประเพณีที่ค่อนข้างเป็นธรรม เส้นทางอย่างน้อยในตอนแรก สูตรที่แม่นยำหมดแล้ว ขอบเขตสำหรับงานปัจจุบัน แต่เช่น มากสุดสองในสามที่จะผ่านด้วยมากกว่าหนึ่งในสามของระบบทั้งหมด การลงคะแนนเสียงในทางบวกอาจเป็นจุดเริ่มต้นที่สมเหตุสมผล การดำเนินการเพิ่มเติม ได้แก่ การระงับและการถอดพาราเชน หวังว่าการระงับจะไม่เกิดขึ้น เกิดขึ้นอย่างไรก็ตามมันถูกออกแบบให้มีการป้องกันน้อยที่สุด มีปัญหาที่รักษาไม่หายในระบบตรวจสอบความถูกต้องของพาราเชน ตัวอย่างที่ชัดเจนที่สุดที่อาจเป็นไปได้ be need คือความแตกต่างที่เป็นเอกฉันท์ที่สำคัญระหว่างการใช้งานที่ทำให้ validators ไม่สามารถตกลงกันได้ ความถูกต้องหรือบล็อก ผู้ตรวจสอบความถูกต้องจะได้รับการสนับสนุนให้ใช้ การใช้งานไคลเอนต์หลายตัวเพื่อที่จะสามารถทำได้ เพื่อทราบปัญหาดังกล่าวก่อนการยึดพันธบัตร เนื่องจากการระงับเป็นมาตรการฉุกเฉิน ก็คงเป็นเช่นนั้น ภายใต้การอุปถัมภ์ของการลงคะแนนแบบไดนามิก validator มากกว่าการลงประชามติ การกลับมาใหม่จะเป็นไปได้ทั้งสองอย่าง จาก validators หรือการลงประชามติ การถอดพาราเชนออกทั้งหมดจะเกิดขึ้นเท่านั้น หลังจากการลงประชามติและด้วยซึ่งจะต้องมีการ ระยะเวลาผ่อนผันที่สำคัญเพื่อให้เกิดการเปลี่ยนแปลงอย่างเป็นระเบียบ ไม่ว่าจะเป็นเครือข่ายแบบสแตนด์อโลนหรือเป็นส่วนหนึ่งของเครือข่ายอื่น ฉันทามติ-ระบบ ระยะเวลาผ่อนผันน่าจะเป็นของ ลำดับของเดือนและมีแนวโน้มที่จะกำหนดตามลำดับในการลงทะเบียน parachain ตามลำดับที่แตกต่างกัน Parachains สามารถเพลิดเพลินกับช่วงเวลาผ่อนผันที่แตกต่างกันตาม ความต้องการของพวกเขา 6.4. บล็อกรีเลย์ซีล การปิดผนึกหมายถึงโดยพื้นฐานแล้ว ถึงกระบวนการกำหนดรูปแบบบัญญัติ; นั่นคือข้อมูลพื้นฐาน แปลงซึ่งแม็ปต้นฉบับให้เป็นสิ่งที่มีเอกลักษณ์และมีความหมายโดยพื้นฐาน ภายใต้ห่วงโซ่ PoW การปิดผนึกเป็นคำพ้องความหมายสำหรับการขุดอย่างมีประสิทธิผล ในกรณีของเรา มันเกี่ยวข้องกับการรวบรวมข้อความที่ลงนามจาก validators เกี่ยวกับความถูกต้อง ความพร้อมใช้งาน และมาตรฐานของ บล็อกรีเลย์โซ่โดยเฉพาะและบล็อกพาราเชนนั้น มันเป็นตัวแทน กลไกของอัลกอริธึมฉันทามติ BFT พื้นฐานอยู่นอกขอบเขตสำหรับงานปัจจุบัน เราจะ แทนที่จะอธิบายโดยใช้คำดั้งเดิมซึ่งถือว่าก การสร้างเครื่องรัฐที่เป็นเอกฉันท์ ในที่สุดเราก็คาดหวัง ได้รับแรงบันดาลใจจากความเห็นพ้องต้องกันของ BFT ที่มีแนวโน้มหลายประการ อัลกอริธึมในแกนกลาง Tangaora [9] (ตัวแปร BFT ของ แพ [16]), เทนเดอร์มิ้นต์ [11] และ HoneyBadgerBFT [14] อัลกอริธึมจะต้องบรรลุข้อตกลงบนหลาย parachains แบบขนาน ดังนั้นจึงแตกต่างจากปกติ blockchain กลไกฉันทามติ เราถือว่าครั้งหนึ่ง ถึงฉันทามติแล้ว เราก็สามารถบันทึกฉันทามติได้ ในข้อพิสูจน์ที่หักล้างไม่ได้ซึ่งสามารถให้ได้โดยบุคคลใดบุคคลหนึ่ง ผู้เข้าร่วมนั้น เราก็ถือเอาพฤติกรรมที่ไม่เหมาะสมนั้นด้วย ภายในโปรโตคอลโดยทั่วไปสามารถลดลงเหลือเพียงเล็กน้อยได้ กลุ่มที่มีผู้เข้าร่วมประพฤติตัวไม่เหมาะสมเพื่อลด ความเสียหายของหลักประกันเมื่อต้องจัดการกับการลงโทษ8 หลักฐานซึ่งอยู่ในรูปแบบของข้อความที่ลงนามของเรา จะถูกวางไว้ในส่วนหัวของบล็อกสายโซ่รีเลย์ไว้ด้วยกัน กับฟิลด์อื่น ๆ บางอย่างไม่น้อยไปกว่ารูท statetrie ของรีเลย์-เชนและทรานแซคชัน-ทรีรูท ที่ การปิดผนึก กระบวนการ ใช้เวลา สถานที่ ภายใต้ ก โสด การสร้างฉันทามติ กลไก ที่อยู่ ทั้งสองอย่าง ที่ บล็อกของรีเลย์โซ่และบล็อกของพาราเชนที่ทำขึ้น ส่วนหนึ่งของเนื้อหาของรีเลย์: parachains จะไม่ถูก "กระทำ" แยกกันโดยกลุ่มย่อยแล้วจึงเปรียบเทียบ ในภายหลัง สิ่งนี้ส่งผลให้เกิดกระบวนการที่ซับซ้อนมากขึ้นสำหรับรีเลย์เชน แต่ช่วยให้เราสามารถบรรลุฉันทามติของระบบทั้งหมดได้ในขั้นตอนเดียว ลดเวลาแฝงและอนุญาต สำหรับข้อกำหนดด้านความพร้อมใช้งานของข้อมูลที่ค่อนข้างซับซ้อน ได้แก่ มีประโยชน์สำหรับกระบวนการกำหนดเส้นทางด้านล่าง 8แผนงานที่เป็นเอกฉันท์ตาม PoS BFT ที่มีอยู่ เช่น Tendermint BFT และ Slasher ดั้งเดิมจะตอบสนองการยืนยันเหล่านี้

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 12 สถานะของเครื่องฉันทามติของผู้เข้าร่วมแต่ละคนอาจ จำลองเป็นตารางอย่างง่าย (2 มิติ) ผู้เข้าร่วมแต่ละคน (validator) มีชุดข้อมูลอยู่ในแบบฟอร์ม ของคำแถลงที่ลงนาม (“โหวต”) จากผู้เข้าร่วมคนอื่นๆ เกี่ยวกับตัวเลือกบล็อกพาราเชนแต่ละตัวรวมถึงตัวเลือกบล็อกรีเลย์ ชุดข้อมูลมีสองชิ้น ของข้อมูล: มีจำหน่าย: ไม่ นี้ validator มี ทางออก ข้อมูลธุรกรรมโพสต์จากบล็อกนี้ดังนั้น พวกเขาสามารถตรวจสอบผู้สมัคร parachain ได้อย่างถูกต้องในบล็อกต่อไปนี้หรือไม่ พวกเขาอาจจะลงคะแนนเสียง 1 (รู้จัก) หรือ 0 (ยังไม่ทราบ) เมื่อพวกเขา โหวต 1 พวกเขามุ่งมั่นที่จะลงคะแนนเสียงในทำนองเดียวกัน ส่วนที่เหลือของกระบวนการนี้ ต่อมาโหวตว่าไม่ได้ ความเคารพ นี่เป็นเหตุสำหรับการลงโทษ ความถูกต้อง: บล็อกพาราเชนถูกต้องและเป็นทั้งหมด ข้อมูลอ้างอิงภายนอก (เช่น ธุรกรรม) ใช้ได้เหรอ? สิ่งนี้เกี่ยวข้องเฉพาะกับ validators ที่ได้รับมอบหมายให้กับ parachain ที่พวกเขากำลังลงคะแนนอยู่ พวกเขาอาจลงคะแนนเสียง 1 (ถูกต้อง), -1 (ไม่ถูกต้อง) หรือ 0 (ยังไม่ทราบ) เมื่อพวกเขาลงคะแนนเสียงไม่เป็นศูนย์พวกเขาก็ มุ่งมั่นที่จะลงคะแนนเสียงด้วยวิธีนี้สำหรับส่วนที่เหลือของ กระบวนการ ต่อมาโหวตไม่เคารพเรื่องนี้ เป็นเหตุให้ลงโทษ validators ทั้งหมดต้องส่งการโหวต สามารถส่งคะแนนเสียงอีกครั้งได้ โดยต้องผ่านเกณฑ์ตามกฎข้างต้น ความก้าวหน้าของ ฉันทามติอาจจำลองเป็นอัลกอริธึมฉันทามติมาตรฐาน BFT หลายอันเหนือแต่ละ parachain ที่เกิดขึ้นแบบขนาน เนื่องจากสิ่งเหล่านี้อาจถูกขัดขวางโดยค่อนข้าง มีผู้ประสงค์ร้ายส่วนน้อยที่กระจุกตัวอยู่ กลุ่มพาราเชนกลุ่มเดียว มีมติโดยรวมอยู่ สร้างแบ็คสต็อปเพื่อจำกัดสถานการณ์ที่เลวร้ายที่สุดจาก การหยุดชะงักของบล็อกพาราเชนที่เป็นโมฆะเพียงหนึ่งบล็อกขึ้นไป (และ รอบการลงโทษผู้รับผิดชอบ) กฎพื้นฐานสำหรับความถูกต้องของแต่ละบล็อก (ที่อนุญาตให้ชุดรวมของ validators โดยรวมมาถึง ฉันทามติว่าจะกลายเป็นผู้สมัคร parachain ที่ไม่เหมือนใคร ที่จะอ้างอิงจากการถ่ายทอดตามรูปแบบบัญญัติ): • ต้องมีคะแนนเสียงอย่างน้อยสองในสามของ validators ในทางบวก และไม่มีการลงคะแนนเสียงในทางลบ; • ต้องมี validators มากกว่าหนึ่งในสามลงคะแนนเชิงบวกต่อความพร้อมใช้งานของข้อมูลคิวขาออก หากมีการลงคะแนนเสียงเชิงบวกอย่างน้อยหนึ่งครั้งและเชิงลบอย่างน้อยหนึ่งรายการ เงื่อนไขพิเศษจะถูกสร้างขึ้น และทั้งชุดของ validators ต้องลงคะแนนเพื่อตัดสิน หากมีผู้ประสงค์ร้ายหรือหากมีเหตุบังเอิญ ส้อม นอกเหนือจากการลงคะแนนเสียงที่ถูกต้องและไม่ถูกต้องแล้ว การลงคะแนนเสียงประเภทที่สาม ได้รับอนุญาตเทียบเท่ากับการลงคะแนนเสียงทั้งสองอย่างหมายความว่า โหนดมีความคิดเห็นที่ขัดแย้งกัน ทั้งนี้อาจมีสาเหตุมาจาก เจ้าของโหนดใช้งานหลายอย่างซึ่งทำ ไม่เห็นด้วย ซึ่งบ่งบอกถึงความคลุมเครือที่เป็นไปได้ในระเบียบการ หลังจากการโหวตทั้งหมดจะนับจากชุด validator ทั้งหมด หาก ความคิดเห็นที่แพ้ก็มีสัดส่วนเล็กน้อยเป็นอย่างน้อย (ถึง เป็นพารามิเตอร์; มากที่สุดครึ่งหนึ่ง อาจจะน้อยกว่าอย่างเห็นได้ชัด) ของคะแนนเสียงของผู้มีความเห็นเป็นผู้ชนะให้ถือว่า เป็นส้อมพาราเชนโดยไม่ได้ตั้งใจ และพาราเชนจะถูกระงับโดยอัตโนมัติจากกระบวนการฉันทามติ มิฉะนั้นเราจะถือว่ามันเป็นการกระทำที่เป็นอันตรายและลงโทษ ชนกลุ่มน้อยที่ลงคะแนนเสียงแสดงความเห็นแย้ง ข้อสรุปคือชุดลายเซ็นที่สาธิต ความเป็นมาตรฐาน บล็อกรีเลย์-โซ่อาจถูกปิดผนึก และกระบวนการปิดผนึกบล็อกต่อไปก็เริ่มขึ้น 6.5. การปรับปรุงสำหรับการซีลบล็อกรีเลย์ ในขณะที่ วิธีการปิดผนึกนี้รับประกันการทำงานของระบบได้ดี แต่ก็ไม่ได้ขยายขนาดออกไปมากนัก เนื่องจากข้อมูลสำคัญของพาราเชนทุกอันจะต้องมีข้อมูลของมัน รับประกันความพร้อมใช้งานมากกว่าหนึ่งในสามของ validators ทั้งหมด ซึ่งหมายความว่าทุกๆ รอยเท้าความรับผิดชอบของ validator เติบโตขึ้นเมื่อมีการเพิ่มโซ่มากขึ้น ในขณะที่ข้อมูลมีอยู่ในเครือข่ายเปิดฉันทามติ โดยพื้นฐานแล้วเป็นปัญหาที่ยังไม่ได้รับการแก้ไข มีวิธีบรรเทาค่าใช้จ่ายที่วางไว้บนโหนด validator ง่ายๆ อย่างหนึ่ง วิธีแก้ปัญหาคือการตระหนักว่าในขณะที่ validators ต้องแบกรับ ความรับผิดชอบต่อความพร้อมของข้อมูล ไม่จำเป็นต้องจัดเก็บ สื่อสาร หรือทำซ้ำข้อมูลด้วยตนเอง ไซโลข้อมูลทุติยภูมิ ซึ่งอาจเกี่ยวข้องกับ (หรือแม้แต่ส่วนใหญ่) เดียวกัน) ผู้เปรียบเทียบที่รวบรวมข้อมูลนี้สามารถจัดการได้ งานรับประกันความพร้อมโดย validators มอบดอกเบี้ย/รายได้ส่วนหนึ่งในการชำระเงิน อย่างไรก็ตาม แม้ว่าสิ่งนี้อาจซื้อความสามารถในการปรับขนาดระดับกลาง แต่ก็ยังไม่ได้ช่วยแก้ปัญหาที่ซ่อนอยู่ ตั้งแต่ การเพิ่มเชนโดยทั่วไปจะต้องใช้ validators เพิ่มเติม การใช้ทรัพยากรเครือข่ายอย่างต่อเนื่อง (โดยเฉพาะในแง่ของแบนด์วิดท์) จะเพิ่มขึ้นตามกำลังสองของ ที่โซ่ซึ่งเป็นทรัพย์สินที่ไม่สามารถป้องกันได้ในระยะยาว ในที่สุดเราก็มีแนวโน้มที่จะทุบตีหัวของเราต่อไป ขัดต่อข้อจำกัดพื้นฐานซึ่งระบุไว้ว่าสำหรับ เครือข่ายฉันทามติที่จะถือว่ามีความปลอดภัย ข้อกำหนดแบนด์วิธที่กำลังดำเนินอยู่นั้นเป็นลำดับทั้งหมด validators คูณข้อมูลอินพุตทั้งหมด ทั้งนี้ก็เนื่องมาจาก การไร้ความสามารถของเครือข่ายที่ไม่น่าเชื่อถือในการกระจายงานการจัดเก็บข้อมูลไปยังโหนดต่างๆ ที่มีอยู่อย่างเหมาะสม นอกเหนือจากงานการประมวลผลที่สามารถแจกจ่ายได้อย่างเห็นได้ชัด 6.5.1. ขอแนะนำความหน่วง วิธีหนึ่งในการทำให้สิ่งนี้อ่อนลง กฎคือการผ่อนคลายแนวคิดเรื่องความฉับไว ด้วยการกำหนดให้มีการลงคะแนนเสียง 33%+1 validators สำหรับความพร้อมใช้งานในท้ายที่สุดเท่านั้น และไม่ใช่ในทันที เราจึงสามารถใช้การเผยแพร่ข้อมูลแบบเอ็กซ์โปเนนเชียลได้ดีขึ้น และช่วยให้การแลกเปลี่ยนข้อมูลถึงจุดสูงสุดได้ ความเท่าเทียมกันที่สมเหตุสมผล (แม้ว่าจะไม่ได้รับการพิสูจน์) อาจจะเป็น: (1) เวลาแฝง = ผู้เข้าร่วม × ลูกโซ่ ภายใต้รุ่นปัจจุบัน ขนาดของระบบจะปรับขนาด ด้วยจำนวนโซ่เพื่อให้แน่ใจว่าการประมวลผลเป็น กระจาย; เนื่องจากแต่ละเชนจะต้องมีอย่างน้อยหนึ่ง validator และเราจะแก้ไขการยืนยันความพร้อมเป็นค่าคงที่ สัดส่วน validators จากนั้นผู้เข้าร่วมก็เติบโตขึ้นเช่นเดียวกัน ด้วยจำนวนโซ่ เราจบลงด้วย: (2) เวลาแฝง = ขนาด 2 หมายความว่าเมื่อระบบเติบโตขึ้น แบนด์วิดท์ที่ต้องการและค่าหน่วงเวลาจนกว่าจะทราบความพร้อมใช้งานทั่วทั้งระบบ เครือข่ายซึ่งอาจมีลักษณะเป็นตัวเลขด้วย ของบล็อกก่อนจุดสิ้นสุด เพิ่มขึ้นตามกำลังสอง นี่คือ ปัจจัยการเติบโตที่สำคัญและอาจกลายเป็นอุปสรรคสำคัญและบังคับให้เราเข้าสู่กระบวนทัศน์ "ไม่ราบเรียบ" เช่นการเขียน “Polkadotes” หลายรายการลงในลำดับชั้น สำหรับการกำหนดเส้นทางโพสต์หลายระดับผ่านแผนผังของรีเลย์เชน

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 13 6.5.2. การมีส่วนร่วมของประชาชน อีกหนึ่งทิศทางที่เป็นไปได้ คือการชักชวนให้ประชาชนมีส่วนร่วมในกระบวนการผ่านก ระบบการร้องเรียนขนาดเล็ก คล้ายกับชาวประมงที่นั่น อาจเป็นบุคคลภายนอกเพื่อทำหน้าที่ตำรวจ validators ที่อ้างสิทธิ์ ความพร้อมใช้งาน หน้าที่ของพวกเขาคือค้นหาผู้ที่ดูเหมือนจะไม่สามารถแสดงให้เห็นถึงความพร้อมดังกล่าวได้ ในการทำเช่นนั้นพวกเขา สามารถยื่นเรื่องร้องเรียนเล็กๆ น้อยๆ ไปยัง validators อื่นๆ ได้ ปตท.หรือ อาจใช้พันธบัตรเดิมพันเพื่อบรรเทาการโจมตีของซีบิล ซึ่งจะทำให้ระบบไร้ประโยชน์อย่างมาก 6.5.3. ผู้รับประกันความพร้อมใช้งาน เส้นทางสุดท้ายก็คงจะเป็น เสนอชื่อชุดที่สองของ validators ที่ถูกผูกมัดเป็น "ความพร้อมใช้งาน ผู้ค้ำประกัน” สิ่งเหล่านี้จะถูกเชื่อมโยงเช่นเดียวกับ validators ปกติ และอาจนำมาจากชุดเดียวกันด้วยซ้ำ (แต่ถ้าเป็นเช่นนั้น พวกเขาจะถูกเลือกเป็นระยะเวลานาน อย่างน้อยต่อเซสชัน) ไม่เหมือนกับ validators ปกติเลย จะไม่สลับระหว่างพาราเชน แต่จะสลับ จัดตั้งกลุ่มเดียวเพื่อยืนยันความพร้อมใช้งานของข้อมูลอินเตอร์เชนที่สำคัญทั้งหมด นี่เป็นข้อได้เปรียบในการผ่อนคลายความเท่าเทียมกันระหว่างผู้เข้าร่วมและเครือข่าย โดยพื้นฐานแล้วโซ่สามารถทำได้ เติบโต (พร้อมกับชุดโซ่เดิม validator) ในขณะที่ ผู้เข้าร่วมและโดยเฉพาะผู้ที่มีส่วนร่วมในพินัยกรรมความพร้อมใช้ของข้อมูล สามารถคงอยู่ในบรรทัดย่อยน้อยที่สุด และค่อนข้างจะคงที่ 6.5.4. การตั้งค่าของผู้รวบรวม สิ่งสำคัญประการหนึ่งของเรื่องนี้ ระบบคือเพื่อให้แน่ใจว่ามีการคัดเลือกที่ดีต่อสุขภาพของ ผู้ทำงานร่วมกันสร้างบล็อกในพาราเชนที่กำหนด ถ้าก ผู้เปรียบเทียบเดี่ยวควบคุม parachain จากนั้นก็มีการโจมตีบ้าง เป็นไปได้มากขึ้นเนื่องจากความน่าจะเป็นของการขาด ความพร้อมใช้งานของข้อมูลภายนอกจะชัดเจนน้อยลง ทางเลือกหนึ่งคือการถ่วงน้ำหนักบล็อกพาราเชนแบบเทียมเข้าไป กลไกการสุ่มหลอกเพื่อสนับสนุนผู้เปรียบเทียบที่หลากหลาย ในกรณีแรกเราจะต้อง ซึ่งเป็นส่วนหนึ่งของกลไกฉันทามติที่ validator เห็นชอบ ตัวเลือกบล็อกพาราเชนระบุว่า "หนักกว่า" ในทำนองเดียวกัน เราต้องจูงใจ validators ให้พยายามทำ แนะนำบล็อกที่มีน้ำหนักมากที่สุดที่พวกเขาหาได้ ซึ่งอาจเป็นได้ ทำโดยการแบ่งส่วนของรางวัลตามสัดส่วนน้ำหนักของผู้สมัคร เพื่อให้ผู้สมรู้ร่วมคิดได้รับความยุติธรรมอย่างสมเหตุสมผล โอกาสที่ผู้สมัครของพวกเขาจะถูกเลือกให้เป็นผู้ชนะ ผู้สมัครที่เป็นเอกฉันท์ เราจะกำหนดน้ำหนักเฉพาะของ a ตัวเลือกบล็อก parachain กำหนดฟังก์ชันสุ่มที่เชื่อมต่อกับแต่ละ collator เช่น การเอา การวัดระยะทาง XOR ระหว่างที่อยู่ของผู้เปรียบเทียบ และหมายเลขสุ่มเทียมที่ปลอดภัยด้วยการเข้ารหัส กำหนดไว้ใกล้กับจุดที่สร้างบล็อก (หรือที่เรียกว่า “ตั๋วที่ชนะ”) สิ่งนี้ให้แต่ละอย่างมีประสิทธิผล ผู้ประสานงาน (หรือโดยเฉพาะอย่างยิ่ง ที่อยู่ของผู้ประสานงานแต่ละคน) โอกาสสุ่มที่บล็อกผู้สมัครของพวกเขาจะ "ชนะ" มากกว่า อื่น ๆ ทั้งหมด เพื่อบรรเทาการโจมตีของ sybil ของผู้รวบรวมรายเดียว "การขุด" ที่อยู่ที่ใกล้กับตั๋วที่ชนะและด้วยเหตุนี้ เป็นรายการโปรดในแต่ละบล็อก เราจะเพิ่มความเฉื่อยให้กับที่อยู่ของผู้เปรียบเทียบ นี่อาจจะง่ายพอ ๆ กับการเรียกร้อง เพื่อให้มีจำนวนเงินพื้นฐานอยู่ในที่อยู่ มากขึ้น แนวทางที่หรูหราคือการชั่งน้ำหนักความใกล้ชิดกับ ตั๋วที่ชนะด้วยจำนวนเงินที่จอดอยู่ที่ ที่อยู่ที่เป็นปัญหา ในขณะที่การสร้างแบบจำลองยังไม่เสร็จสิ้น ค่อนข้างเป็นไปได้ที่กลไกนี้จะช่วยได้มาก ผู้มีส่วนได้ส่วนเสียรายย่อยเพื่อร่วมสมทบทุน 6.5.5. บล็อกน้ำหนักเกิน หากชุด validator ถูกบุกรุก พวกเขาอาจสร้างและเสนอบล็อกซึ่งแม้ว่า ถูกต้อง ใช้เวลาในการดำเนินการมากเกินไป และ ตรวจสอบ นี่เป็นปัญหาเนื่องจากกลุ่ม validator สามารถทำได้ สร้างบล็อกขึ้นมาอย่างสมเหตุสมผลซึ่งใช้เวลานานมากในการ ดำเนินการเว้นแต่ว่าข้อมูลบางอย่างจะทราบอยู่แล้วว่าอนุญาตให้มีทางลัดเช่น การแยกตัวประกอบขนาดใหญ่ สำคัญ หากผู้เปรียบเทียบรายเดียวทราบข้อมูลนั้นแล้ว พวกเขาจะมีข้อได้เปรียบที่ชัดเจนในการได้รับเป็นของตัวเอง ผู้สมัครยอมรับตราบเท่าที่คนอื่นกำลังยุ่งอยู่กับการประมวลผลบล็อกเก่า เราเรียกบล็อกเหล่านี้ว่ามีน้ำหนักเกิน การป้องกัน validators การส่งและตรวจสอบบล็อกเหล่านี้ส่วนใหญ่อยู่ภายใต้การปกปิดเช่นเดียวกับสำหรับ บล็อกที่ไม่ถูกต้อง แม้ว่าจะมีข้อแม้เพิ่มเติม: เนื่องจาก เวลาที่ใช้ในการดำเนินการบล็อก (และสถานะเป็น น้ำหนักเกิน) เป็นเรื่องส่วนตัว ซึ่งเป็นผลลัพธ์สุดท้ายของการลงคะแนนเสียง พฤติกรรมที่ไม่เหมาะสมจะตกเป็น 3 ค่ายหลัก หนึ่ง ความเป็นไปได้ก็คือบล็อกนั้นไม่มีน้ำหนักเกินแน่นอน— ในกรณีนี้มากกว่าสองในสามประกาศว่าทำได้ ดำเนินการบล็อกภายในขีดจำกัด (เช่น 50% ของเวลาทั้งหมดที่อนุญาตระหว่างบล็อก) อีกประการหนึ่งก็คือ บล็อกคือ dน้ำหนักเกินอย่างแน่นอน - นี่จะเป็นถ้ามากกว่านั้น สองในสามประกาศว่าพวกเขาไม่สามารถดำเนินการบล็อกได้ ภายในขอบเขตดังกล่าว ความเป็นไปได้สุดท้ายประการหนึ่งค่อนข้างจะเท่าเทียมกัน การแบ่งความคิดเห็นระหว่าง validators ในกรณีนี้เราก็ได้ เลือกทำโทษตามสมควร เพื่อให้แน่ใจว่า validators สามารถคาดการณ์ได้ว่าจะเกิดขึ้นเมื่อใด เสนอบล็อกที่มีน้ำหนักเกิน อาจสมเหตุสมผลที่จะกำหนดให้พวกเขาเผยแพร่ข้อมูลเกี่ยวกับประสิทธิภาพของตนเองสำหรับแต่ละบล็อก เป็นระยะเวลาพอสมควร สิ่งนี้ควรทำให้พวกเขาสามารถกำหนดโปรไฟล์ความเร็วในการประมวลผลได้ เมื่อเทียบกับคนรอบข้างที่จะตัดสินพวกเขา 6.5.6. ประกันสะสมทรัพย์. ยังคงมีประเด็นหนึ่งสำหรับ validators: ไม่เหมือนกับเครือข่าย PoW เพื่อตรวจสอบผู้ประสานงาน เพื่อความถูกต้อง พวกเขาจะต้องดำเนินการธุรกรรมในนั้นจริงๆ ผู้เปรียบเทียบที่เป็นอันตรายสามารถป้อนบล็อกที่ไม่ถูกต้องหรือมีน้ำหนักเกินให้กับ validators ทำให้เกิดความเศร้าโศก (สิ้นเปลือง ทรัพยากรของพวกเขา) และเรียกร้องค่าเสียโอกาสที่สำคัญที่อาจเกิดขึ้น เพื่อบรรเทาปัญหานี้ เราเสนอกลยุทธ์ง่ายๆ เกี่ยวกับ ส่วนหนึ่งของ validators ประการแรก ผู้สมัครบล็อกพาราเชนถูกส่งไป ถึง validators จะต้องลงนามจากบัญชีลูกโซ่รีเลย์ ด้วยเงินทุน หากไม่เป็นเช่นนั้น validator ควรจะลดลง มันทันที ประการที่สอง ผู้สมัครดังกล่าวควรได้รับลำดับความสำคัญโดยการรวมกัน (เช่น การคูณ) ของ จำนวนเงินในบัญชีถึงขีดจำกัดบางส่วน จำนวนบล็อกก่อนหน้านี้ที่ผู้เปรียบเทียบได้เสนอสำเร็จในอดีต (ไม่ต้องพูดถึงบล็อกใด ๆ ก่อนหน้านี้ การลงโทษ) และปัจจัยความใกล้ชิดต่อการชนะ ตั๋วตามที่กล่าวไว้ก่อนหน้านี้ หมวกควรจะเหมือนกัน เป็นค่าเสียหายเชิงลงโทษที่จ่ายให้กับ validator ในกรณีนี้ ของพวกเขาส่งบล็อกที่ไม่ถูกต้อง เพื่อไม่ให้ผู้เปรียบเทียบส่งผู้สมัครบล็อกที่ไม่ถูกต้องหรือมีน้ำหนักเกินไปที่ validators validator ใดๆ อาจ วางธุรกรรมในบล็อกถัดไป รวมถึงบล็อกที่สิ้นสุดโดยกล่าวหาว่ามีพฤติกรรมที่ไม่เหมาะสมซึ่งส่งผลให้มีการโอนเงินบางส่วนหรือทั้งหมดในผู้ค้ำประกันที่ประพฤติมิชอบ ขอแสดงความเสียใจต่อ validator ที่ได้รับความเดือดร้อน ธุรกรรมประเภทนี้จะดำเนินการล่วงหน้าเพื่อให้แน่ใจว่าผู้ประสานงานไม่สามารถทำได้ นำเงินออกก่อนที่จะมีการลงโทษ จำนวน เงินที่โอนเป็นค่าเสียหายยังเป็นพารามิเตอร์แบบไดนามิก

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 14 ที่จะสร้างแบบจำลอง แต่น่าจะเป็นสัดส่วนของรางวัลบล็อก validator เพื่อสะท้อนระดับความเศร้าโศกที่เกิดขึ้น ถึง ป้องกันไม่ให้ validators ที่เป็นอันตรายยึดเงินของผู้ร่วมสมทบโดยพลการ ผู้เรียกเก็บเงินอาจอุทธรณ์คำตัดสินของ validator โดยมีคณะลูกขุนของ validators ที่ได้รับการสุ่มเลือกเป็นการตอบแทน เพื่อวางเงินมัดจำเล็กน้อย หากพวกเขาพบว่าเข้าข้าง validator เงินฝากนั้นก็จะถูกใช้ไปโดยพวกเขา ถ้าไม่เช่นนั้น เงินฝากจะถูกส่งคืนและ validator ถูกปรับ (เนื่องจาก validator อยู่ในตำแหน่งโค้งมากกว่ามาก ความปรารถนาดี คงจะค่อนข้างหนัก) 6.6. อินเตอร์เชน การทำธุรกรรม การกำหนดเส้นทาง อินเตอร์เชน การกำหนดเส้นทางธุรกรรมเป็นหนึ่งในการบำรุงรักษาที่สำคัญ งานของรีเลย์เชนและ validators นี่คือ ตรรกะที่ควบคุมว่าธุรกรรมที่ผ่านรายการ (มักเรียกสั้น ๆ ว่า "โพสต์") ได้รับจากการเป็นผลลัพธ์ที่ต้องการอย่างไร จาก parachain ต้นทางหนึ่งไปสู่การเป็นอินพุตที่ไม่สามารถต่อรองได้ของ parachain ปลายทางอื่นโดยปราศจากความเชื่อถือ ข้อกำหนด เราเลือกถ้อยคำข้างต้นอย่างระมัดระวัง สะดุดตาเรา ไม่จำเป็นต้องมีการทำธุรกรรมในแหล่งที่มา parachain เพื่ออนุมัติโพสต์นี้อย่างชัดเจน เท่านั้น ข้อจำกัดที่เราวางไว้กับโมเดลของเราก็คือพาราเชน ต้องจัดให้มีบรรจุเป็นส่วนหนึ่งของบล็อกโดยรวม การประมวลผลเอาต์พุต โพสต์ซึ่งเป็นผลลัพธ์ของ การดำเนินการของบล็อก โพสต์เหล่านี้มีโครงสร้างเป็นคิว FIFO หลายรายการ ที่ จำนวนรายการเรียกว่าฐานเส้นทางและอาจเป็น ประมาณ 16 ปี โดยเฉพาะอย่างยิ่งตัวเลขนี้แสดงถึงปริมาณ ของพาราเชนที่เราสามารถรองรับได้โดยไม่ต้องหันไปพึ่ง การกำหนดเส้นทางแบบหลายเฟส เริ่มแรก Polkadot จะสนับสนุนสิ่งนี้ ประเภทของการกำหนดเส้นทางโดยตรง อย่างไรก็ตาม เราจะสรุปเส้นทางที่เป็นไปได้ กระบวนการกำหนดเส้นทางแบบหลายเฟส (“ไฮเปอร์-เราต์ติ้ง”) เป็นวิธีการ ของการขยายขนาดให้เกินชุดพาราเชนเริ่มต้น เรา ถือว่า นั่น ทั้งหมด ผู้เข้าร่วม รู้ ที่ การจัดกลุ่มย่อยสำหรับสองบล็อกถัดไป n, n + 1 โดยสรุปคือ ระบบกำหนดเส้นทางเป็นไปตามขั้นตอนเหล่านี้: • CollatorS: ติดต่อสมาชิกของ V alidators[n][S] • CollatorS: สำหรับแต่ละกลุ่มย่อย: ตรวจสอบที่ มีสมาชิก V alidators[n][s] อย่างน้อย 1 คนติดต่อกัน • ผู้เรียกเก็บเงิน: สำหรับแต่ละกลุ่มย่อย: ถือว่า egress[n −1][s][S] พร้อมใช้งาน (โพสต์ที่เข้ามาทั้งหมด ข้อมูลเป็น 'S' จากบล็อกที่แล้ว) • ผู้เรียกเก็บเงิน: เขียนผู้สมัครบล็อก b สำหรับ S: (b.header, b.ext, b.proof, b.receipt, b.egress) • ผู้เรียกเก็บเงิน: ส่ง หลักฐาน ข้อมูล หลักฐาน[S] = (b.header, b.ext, b.proof, b.receipt) ถึง V alidators[n][S] • CollatorS: ตรวจสอบข้อมูลธุรกรรมภายนอก b.ext มีให้สำหรับผู้ทำงานร่วมกันคนอื่นๆ และ validators • ผู้เรียกเก็บเงิน: สำหรับ แต่ละ กลุ่มย่อย ส: ส่ง ทางออก ข้อมูล ทางออก[n][S][s] = (b.header, b.receipt, b.egress[s]) ถึง ที่ การรับ กลุ่มย่อย สมาชิก ของ ถัดไป บล็อก ตัวแก้ไข V[n + 1][s] • V alidatorV : เชื่อมต่อสมาชิกชุดเดียวกันทั้งหมดล่วงหน้า สำหรับบล็อกถัดไป: ให้ N = Chain[n + 1][V ]; เชื่อมต่อ ทั้งหมด validators v โดยที่ Chain[n + 1][v] = N • V alidatorV : เปรียบเทียบข้อมูลขาเข้าทั้งหมดสำหรับสิ่งนี้ บล็อก: สำหรับ แต่ละ กลุ่มย่อย ส: ดึงข้อมูล egress[n −1][s][Chain[n][V ]] รับจาก validators v อื่นๆ โดยที่ Chain[n][v] = Chain[n][V ] อาจจะผ่านการสุ่มเลือก validators อื่นๆ เพื่อพิสูจน์ความพยายาม • V alidatorV : ยอมรับหลักฐานของผู้สมัครสำหรับสิ่งนี้ บล็อกหลักฐาน [เชน [n] [V ]] ความถูกต้องของการบล็อกการลงคะแนนเสียง • V alidatorV : ยอมรับข้อมูลทางออกของผู้สมัครสำหรับ บล็อกถัดไป: สำหรับแต่ละกลุ่มย่อย ให้ยอมรับ ทางออก[n][s][N] ความพร้อมใช้งานของบล็อกการลงคะแนนเสียง เผยแพร่ซ้ำในหมู่ผู้สนใจ validators v เช่นนั้น เชน[n + 1][v] = เชน[n + 1][V ] • V alidatorV : จนกว่าจะมีมติ โดยที่: egress[n][from][to] คือคิวทางออกปัจจุบัน ข้อมูลสำหรับการโพสต์จาก parachain 'จาก' ถึง parachain 'ถึง' ในหมายเลขบล็อก 'n' CollatorS คือ collator สำหรับ parachain S. V alidators[n][s] คือเซตของ validators สำหรับ parachain s ที่บล็อกหมายเลข n ในทางกลับกัน Chain[n][v] คือ parachain ซึ่ง validator v ถูกกำหนดให้กับบล็อกหมายเลข n block.egress[to] คือทางออก คิวของโพสต์จากบล็อกบล็อกพาราเชนบางบล็อกที่มี ปลายทางคือพาราเชน เนื่องจากผู้เรียกเก็บเงินเก็บค่าธรรมเนียม (ธุรกรรม) ตาม บล็อกของพวกเขากลายเป็นมาตรฐานที่พวกเขาได้รับแรงจูงใจให้ทำ ตรวจสอบให้แน่ใจว่าสำหรับปลายทางบล็อกถัดไปแต่ละกลุ่มย่อย สมาชิกทราบถึงคิวขาออกจากปัจจุบัน บล็อก Validators จะได้รับแรงจูงใจเพียงเพื่อสร้างฉันทามติเกี่ยวกับบล็อก (parachain) เท่านั้น เนื่องจากพวกเขาไม่สนใจเกี่ยวกับเรื่องนี้มากนัก บล็อกของผู้เปรียบเทียบรายใดกลายเป็น Canonical ในที่สุด ใน โดยหลักการแล้ว validator สามารถสร้างความจงรักภักดีกับผู้สมรู้ร่วมคิดและสมรู้ร่วมคิดเพื่อลดโอกาสของผู้สมรู้ร่วมคิดคนอื่น ๆ การบล็อกกลายเป็นที่ยอมรับ อย่างไรก็ตาม นี่ก็เป็นเรื่องที่ยากทั้งคู่ ที่จะจัดให้เนื่องจากการสุ่มเลือกส่วนของ validators สำหรับ parachains และสามารถป้องกันได้ด้วยการลดค่าธรรมเนียมที่ต้องจ่ายสำหรับบล็อก parachain ที่เก็บไว้ กระบวนการฉันทามติ 6.6.1. ความพร้อมใช้งานของข้อมูลภายนอก มั่นใจของพาราเชน ข้อมูลภายนอกที่มีอยู่จริงเป็นปัญหาที่ยืนต้นด้วย ระบบกระจายอำนาจที่มีจุดมุ่งหมายเพื่อกระจายภาระงานไปทั่ว เครือข่าย หัวใจสำคัญของปัญหาคือความพร้อม ปัญหาที่ระบุว่าเนื่องจากเป็นไปไม่ได้ สร้างหลักฐานความพร้อมแบบไม่โต้ตอบหรือทุกประเภท ของการพิสูจน์ความไม่พร้อมใช้งาน เพื่อให้ระบบ BFT ทำงานได้อย่างถูกต้อง ตรวจสอบการเปลี่ยนแปลงใด ๆ ที่มีความถูกต้องขึ้นอยู่กับ ความพร้อมใช้งานของข้อมูลภายนอกบางส่วนจำนวนสูงสุด ของโหนดไบแซนไทน์ที่ยอมรับได้ บวกหนึ่งโหนดของระบบ จะต้องยืนยันถึงข้อมูลที่มีอยู่ เพื่อให้ระบบขยายขนาดอย่างเหมาะสม เช่น Polkadot สิ่งนี้ เชิญชวนให้เกิดปัญหา: ถ้าสัดส่วนคงที่ของ validators จะต้องยืนยันถึงความมีอยู่ของข้อมูลและสมมติ ว่า validators ต้องการจัดเก็บข้อมูลจริงก่อนที่จะยืนยันว่าข้อมูลนั้นพร้อมใช้งาน แล้วเราจะหลีกเลี่ยงได้อย่างไร ปัญหาความต้องการแบนด์วิธ/พื้นที่เก็บข้อมูลที่เพิ่มขึ้นตามขนาดระบบ (และจำนวน validators) คำตอบหนึ่งที่เป็นไปได้คือต้องมีชุดแยกต่างหาก ของ validators (ผู้ค้ำประกันความพร้อมจำหน่าย) ซึ่งมีคำสั่งซื้อเพิ่มขึ้น ใต้เชิงเส้นด้วยขนาด Polkadot โดยรวม นี่คือ อธิบายไว้ใน 6.5.3 เราก็มีเคล็ดลับรองเช่นกัน ในฐานะกลุ่ม ผู้เปรียบเทียบมีแรงจูงใจที่แท้จริงเพื่อให้แน่ใจว่าข้อมูลทั้งหมดนั้นถูกต้อง มีให้สำหรับพาราเชนที่พวกเขาเลือกเนื่องจากไม่มีมัน ไม่สามารถเขียนบล็อกเพิ่มเติมจากที่สามารถทำได้ เก็บค่าธรรมเนียมการทำธุรกรรม ผู้รวบรวมยังจัดตั้งกลุ่มขึ้นมา ซึ่งสมาชิกมีความหลากหลาย (เนื่องจากลักษณะการสุ่มของ parachain validator กลุ่ม) ไม่สำคัญที่จะเข้าและง่าย

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 15 เพื่อพิสูจน์ ผู้เปรียบเทียบล่าสุด (อาจเป็นสองสามพันบล็อกสุดท้าย) จึงได้รับอนุญาตให้ออกข้อท้าทายได้ ความพร้อมใช้งานของข้อมูลภายนอกสำหรับพาราเชนเฉพาะ บล็อกไปที่ validators เพื่อความสัมพันธ์เล็กๆ น้อยๆ ผู้ตรวจสอบจะต้องติดต่อผู้ที่มาจากกลุ่มย่อย validator ที่เห็นได้ชัดว่าละเมิด ซึ่งเป็นผู้ให้การเป็นพยานและรับและส่งคืนข้อมูลไปยังผู้เปรียบเทียบหรือยกระดับ สำคัญโดยการให้การเป็นพยานถึงการขาดความพร้อมใช้งาน (การปฏิเสธโดยตรงที่จะให้ข้อมูลถือเป็นความผิดในการผูกมัด ดังนั้นพฤติกรรมที่ไม่เหมาะสม validator มีแนวโน้มเพียง ยกเลิกการเชื่อมต่อ) และติดต่อ validators เพิ่มเติม เพื่อทำการทดสอบเดียวกัน ในกรณีหลังคือพันธบัตรของผู้ค้ำประกัน จะถูกส่งกลับ เมื่อถึงโควรัมของ validators ที่สามารถสร้างคำรับรองที่ไม่พร้อมใช้งานดังกล่าวได้ครบแล้ว พวกเขาก็จะได้รับการเผยแพร่ กลุ่มย่อยที่ประพฤติตัวไม่เหมาะสมจะถูกลงโทษ และบล็อกจะถูกเปลี่ยนกลับ 6.6.2. การกำหนดเส้นทางโพสต์ ส่วนหัวของ Parachain แต่ละอันประกอบด้วย ทางออก-ไตร-รูท; นี่คือรากของไตรที่มี bins ฐานเส้นทาง แต่ละ bin เป็นรายการที่ต่อกัน ของโพสต์ทางออก อาจมีการเตรียมหลักฐาน Merkle ไว้ทั่ว parachain validators เพื่อพิสูจน์ว่า parachain โดยเฉพาะ block มีคิวทางออกเฉพาะสำหรับ parachain ปลายทางเฉพาะ ที่จุดเริ่มต้นของการประมวลผลบล็อกพาราเชนแต่ละอัน คิวทางออกของ parachain อื่นที่ถูกผูกไว้กับบล็อกดังกล่าวคือ รวมเข้ากับคิวทางเข้าของบล็อกของเรา เราถือว่าแข็งแกร่ง อาจเป็น CSPR9 ซึ่งเป็นคำสั่งย่อยเพื่อให้บรรลุการดำเนินการตามที่กำหนดซึ่งไม่มีการเล่นพรรคเล่นพวกระหว่างกัน การจับคู่บล็อกพาราเชน ผู้รวบรวมคำนวณคิวใหม่ และระบายคิวทางออกตามพาราเชน ตรรกะ เนื้อหาของคิวทางเข้าถูกเขียนอย่างชัดเจน เข้าไปในบล็อกพาราเชน สิ่งนี้มีจุดประสงค์หลักสองประการ: ประการแรก หมายความว่าพาราเชนสามารถซิงโครไนซ์ได้อย่างน่าเชื่อถือโดยแยกออกจากพาราเชนอื่นๆ ประการที่สอง มันทำให้การขนส่งข้อมูลง่ายขึ้นหากทางเข้าทั้งหมด คิวไม่สามารถประมวลผลได้ในบล็อกเดียว validators และผู้ทำงานร่วมกันสามารถประมวลผลบล็อกต่อไปนี้ได้ โดยไม่ต้องสืบค้นข้อมูลคิวเป็นพิเศษ หากคิวทางเข้าของ Parachain อยู่เหนือเกณฑ์ จำนวนเงินเมื่อสิ้นสุดการประมวลผลบล็อก จากนั้นจะมีการทำเครื่องหมายไว้ อิ่มตัวบนรีเลย์เชนและไม่สามารถส่งข้อความเพิ่มเติมได้ จัดส่งไปให้จนกว่าจะเคลียร์ได้ หลักฐานจาก Merkle คือ ใช้เพื่อแสดงให้เห็นถึงความเที่ยงตรงในการปฏิบัติงานของผู้ประสานงานใน หลักฐานของบล็อกพาราเชน 6.6.3. วิจารณ์. ข้อบกพร่องเล็กๆ น้อยๆ ประการหนึ่งที่เกี่ยวข้องกับพื้นฐานนี้ กลไกคือการโจมตีหลังระเบิด นี่คือที่ทั้งหมด parachains ส่งจำนวนโพสต์สูงสุดที่เป็นไปได้ ไปยังพาราเชนโดยเฉพาะ ขณะนี้สิ่งนี้เชื่อมโยงเป้าหมายไว้ เข้าคิวพร้อมกัน ไม่มีความเสียหายเกิดขึ้นซ้ำแล้วซ้ำอีก การโจมตี DoS ธุรกรรมมาตรฐาน ใช้งานได้ปกติพร้อมชุดซิงโครไนซ์อย่างดีและ ผู้เปรียบเทียบที่ไม่เป็นอันตรายและ validators สำหรับ N parachains เรารวม N × M validators และ L collators ต่อพาราเชน สามารถแบ่งเส้นทางข้อมูลทั้งหมดต่อบล็อกเป็น: เครื่องมือตรวจสอบความถูกต้อง: M −1+L+L: M −1 สำหรับอีก validators ในชุดพาราเชน L สำหรับแต่ละคอลเลเตอร์จะมีบล็อกพาราเชนให้เลือก และ L ตัวที่สองสำหรับแต่ละคอลเลเตอร์ ของบล็อกถัดไปที่ต้องการเพย์โหลดทางออกของบล็อกก่อนหน้า (อันหลังนี้เป็นเหมือนกรณีที่เลวร้ายที่สุดมากกว่า การดำเนินการเนื่องจากมีแนวโน้มว่าผู้เรียกเก็บเงินจะแบ่งปันข้อมูลดังกล่าว ข้อมูล) Collator: M +kN: M สำหรับการเชื่อมต่อไปยังแต่ละที่เกี่ยวข้อง บล็อก parachain validator, kN สำหรับการเพาะ payloads ทางออกไปยังชุดย่อยบางส่วนของ parachain แต่ละกลุ่ม validator กลุ่มสำหรับ บล็อกถัดไป (และอาจมีผู้เปรียบเทียบบางคนที่ชื่นชอบ) ดังนั้นเส้นทางข้อมูลต่อโหนดจึงเติบโตเป็นเส้นตรง ด้วยความซับซ้อนโดยรวมของระบบ ขณะนี้เป็น สมเหตุสมผล เนื่องจากระบบขยายเป็น parachains นับร้อยหรือหลายพัน ความล่าช้าในการสื่อสารบางอย่างอาจมีอยู่ ดูดซึมเพื่อแลกกับอัตราการเติบโตของความซับซ้อนที่ลดลง ในกรณีนี้ อาจใช้อัลกอริธึมการกำหนดเส้นทางแบบหลายเฟส เพื่อลดจำนวนเส้นทางทันที โดยเสียค่าใช้จ่ายในการแนะนำบัฟเฟอร์การจัดเก็บข้อมูลและเวลาแฝง 6.6.4. การกำหนดเส้นทางไฮเปอร์คิวบ์ การกำหนดเส้นทางไฮเปอร์คิวบ์เป็นกลไกที่ส่วนใหญ่สามารถสร้างเป็นส่วนขยายของ กลไกการกำหนดเส้นทางพื้นฐานที่อธิบายไว้ข้างต้น โดยพื้นฐานแล้ว แทนที่จะเพิ่มการเชื่อมต่อโหนดด้วยจำนวนพาราเชนและโหนดกลุ่มย่อย เราจะเติบโตด้วยเท่านั้น ลอการิทึมของพาราเชน กระทู้อาจมีการส่งต่อระหว่าง การต่อคิวของพาราเชนหลายตัวระหว่างทางเพื่อส่งมอบขั้นสุดท้าย การกำหนดเส้นทางนั้นถูกกำหนดไว้และเรียบง่าย เราเริ่มต้นด้วย การจำกัดจำนวนถังขยะในคิวเข้า/ออก แทนที่จะเป็นจำนวนพาราเชนทั้งหมด เป็นฐานเส้นทาง (b) . โดยจะกำหนดเป็นตัวเลข ของการเปลี่ยนแปลง parachains โดยที่เลขชี้กำลังการกำหนดเส้นทาง (e) จะถูกยกขึ้นแทน ภายใต้โมเดลนี้ ปริมาณข้อความของเรา เติบโตไปพร้อมกับ O(be) โดยวิถีทางยังคงไม่เปลี่ยนแปลง และเวลาแฝง (หรือจำนวนบล็อกที่จำเป็นสำหรับการจัดส่ง) ด้วย O(อี) โมเดลการกำหนดเส้นทางของเราคือไฮเปอร์คิวบ์ของมิติ e โดยแต่ละด้านของลูกบาศก์มีตำแหน่งที่เป็นไปได้ b แต่ละบล็อก เรากำหนดเส้นทางข้อความตามแกนเดียว เรา สลับแกนในลักษณะวนรอบ จึงรับประกันเวลาการส่งมอบในกรณีที่เลวร้ายที่สุดของบล็อก e เป็นส่วนหนึ่งของการประมวลผลพาราเชนที่ถูกผูกไว้จากต่างประเทศ ข้อความที่พบในคิวขาเข้าจะถูกส่งไปยังถังขยะของคิวขาออกที่เหมาะสมทันที โดยกำหนดให้ หมายเลขบล็อกปัจจุบัน (และมิติการกำหนดเส้นทาง) นี้ กระบวนการจำเป็นต้องมีการถ่ายโอนข้อมูลเพิ่มเติมสำหรับการกระโดดแต่ละครั้ง บนเส้นทางการจัดส่ง อย่างไรก็ตาม นี่เป็นปัญหาในตัวมันเอง ซึ่งอาจบรรเทาลงได้โดยใช้วิธีอื่น ของการจัดส่งเพย์โหลดข้อมูลและรวมถึงการอ้างอิงเท่านั้น แทนที่จะเป็นเพย์โหลดเต็มของโพสต์ในโพสต์ทรี ตัวอย่างของการกำหนดเส้นทางไฮเปอร์คิวบ์สำหรับระบบ ด้วย 4 parachains b = 2 และ e = 2 อาจเป็น: เฟส 0 ในแต่ละข้อความ M: • sub0: ถ้า Mdest ∈{2, 3} ให้ sendTo(2) อย่างอื่นเก็บไว้ • sub1: ถ้า Mdest ∈{2, 3} ให้ sendTo(3) อย่างอื่นเก็บไว้ • sub2: ถ้า Mdest ∈{0, 1} ให้ sendTo(0) อย่างอื่นเก็บไว้ • sub3: ถ้า Mdest ∈{0, 1} ให้ sendTo(1) อย่างอื่นเก็บไว้ ระยะที่ 1 ในแต่ละข้อความ M: • sub0: ถ้า Mdest ∈{1, 3} ให้ sendTo(1) อย่างอื่นเก็บไว้ • sub1: ถ้า Mdest ∈{0, 2} ให้ sendTo(0) อย่างอื่นเก็บไว้ • sub2: ถ้า Mdest ∈{1, 3} ให้ sendTo(3) อย่างอื่นเก็บไว้ • sub3: ถ้า Mdest ∈{0, 2} ให้ sendTo(2) อย่างอื่นเก็บไว้ มิติทั้งสองนี้มองเห็นได้ง่ายเป็นอันดับแรก ดัชนีปลายทางสองบิต สำหรับบล็อกแรกนั้น ใช้บิตลำดับที่สูงกว่าเพียงอย่างเดียว ข้อเสนอบล็อกที่สอง ด้วยบิตลำดับต่ำ เมื่อทั้งสองเกิดขึ้น (โดยพลการ สั่งซื้อ) จากนั้นโพสต์จะถูกส่งไป 9 การสุ่มหลอกที่ปลอดภัยด้วยการเข้ารหัส

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 16 6.6.5. เพิ่ม Serendipity ให้สูงสุด การเปลี่ยนแปลงขั้นพื้นฐานอย่างหนึ่ง ข้อเสนอจะเห็นจำนวนรวมคงที่ของ c2 −c validators ด้วย c−1 validators ในแต่ละกลุ่มย่อย แต่ละบล็อกมากกว่า มีการแบ่งพาร์ติชันใหม่แบบไม่มีโครงสร้างของ validators ในหมู่พาราเชน แทนที่จะเป็นกลุ่มย่อยพาราเชนแต่ละกลุ่ม validator แต่ละรายการจะได้รับการกำหนดให้มีเอกลักษณ์และแตกต่าง กลุ่มย่อย parachain ในบล็อกต่อไปนี้ นี้จะ นำไปสู่ค่าคงที่ระหว่างสองช่วงตึกใดๆ สำหรับค่าใดๆ ก็ตาม Parachain สองคู่ มี validators สองอันอยู่ ได้สลับความรับผิดชอบของ Parachain แม้ว่าสิ่งนี้จะไม่สามารถใช้เพื่อรับประกันความพร้อมใช้งานได้อย่างสมบูรณ์ (validator ตัวเดียวจะดรอป ofine เป็นครั้งคราว แม้ว่า เมตตากรุณา) แต่ก็สามารถเพิ่มประสิทธิภาพกรณีทั่วไปได้ แนวทางนี้ไม่ได้ปราศจากภาวะแทรกซ้อน การเพิ่มพาราเชนก็จำเป็นต้องมีการปรับโครงสร้างองค์กรใหม่ด้วย ของชุด validator นอกจากนี้จำนวนของ validators ซึ่งเชื่อมโยงกับกำลังสองของจำนวน parachains เริ่มจากเล็กๆ น้อยๆ และเติบโตไปไกลในที่สุด เร็วเกินไป จนไม่สามารถป้องกันได้หลังจากใช้พาราเชนไปประมาณ 50 อัน สิ่งเหล่านี้ไม่ใช่ปัญหาพื้นฐาน ในกรณีแรก การจัดระเบียบชุด validator ใหม่เป็นสิ่งที่ต้องมี ทำเป็นประจำอยู่แล้ว เกี่ยวกับขนาดของ validator ตั้งค่า เมื่อเล็กเกินไป อาจกำหนด validator หลายรายการได้ ไปยังพาราเชนเดียวกัน โดยใช้ตัวประกอบจำนวนเต็มกับ รวมทั้งหมด validators กลไกการกำหนดเส้นทางแบบหลายเฟส เช่น Hypercube Routing ที่จะกล่าวถึงใน 6.6.4 บรรเทาความต้องการสำหรับ validators จำนวนมาก เมื่อมีโซ่จำนวนมาก 6.7. การตรวจสอบ Parachain วัตถุประสงค์หลักของ validator คือการเป็นพยานในฐานะนักแสดงที่มีความผูกพันกันเป็นอย่างดีว่าเป็นนักพาราเชน การบล็อกนั้นถูกต้อง รวมถึงแต่ไม่จำกัดเพียงการเปลี่ยนแปลงสถานะ ธุรกรรมภายนอกใดๆ ที่รวมอยู่ด้วย การดำเนินการของ โพสต์ที่รออยู่ในคิวทางเข้าและสถานะสุดท้าย ของคิวขาออก กระบวนการนี้ค่อนข้างง่าย เมื่อ validator ปิดผนึกบล็อกก่อนหน้า พวกเขาจะเป็นอิสระ เพื่อเริ่มทำงานเพื่อจัดหาบล็อกพาราเชนที่เหมาะสม ผู้สมัครรับฉันทามติรอบต่อไป เริ่มแรก validator ค้นหาตัวเลือกบล็อกพาราเชนผ่านตัวเชื่อมโยงพาราเชน (อธิบายต่อไป) หรือหนึ่งรายการ ของ co-validators ของมัน ข้อมูลผู้สมัครบล็อกพาราเชน รวมถึงส่วนหัวของบล็อก ส่วนหัวของบล็อกก่อนหน้า ข้อมูลอินพุตภายนอกใดๆ ที่รวมอยู่ (สำหรับ Ethereum และ Bitcoin ข้อมูลดังกล่าวจะเรียกว่าธุรกรรม อย่างไรก็ตาม โดยหลักการแล้วอาจรวมถึงโครงสร้างข้อมูลที่กำหนดเองเพื่อวัตถุประสงค์ที่กำหนดเอง) ข้อมูลคิวขาออก และข้อมูลภายในเพื่อพิสูจน์ความถูกต้องของการเปลี่ยนแปลงสถานะ (สำหรับ Ethereum นี่จะเป็นโหนด Trie สถานะ/หน่วยเก็บข้อมูลต่างๆ ที่จำเป็นในการดำเนินการแต่ละธุรกรรม) หลักฐานการทดลองแสดงชุดข้อมูลแบบเต็มสำหรับบล็อก Ethereum ล่าสุด สูงสุดไม่กี่ร้อย KiB พร้อมกันหากยังไม่ได้ดำเนินการ validator จะเป็น พยายามดึงข้อมูลที่เกี่ยวข้องกับการเปลี่ยนแปลงของบล็อกก่อนหน้า โดยเริ่มจากบล็อกก่อนหน้า validators และหลังจากนั้นจากการลงนามของ validators ทั้งหมด ความพร้อมใช้งานของข้อมูล เมื่อ validator ได้รับการบล็อกผู้สมัครดังกล่าวแล้ว จากนั้นพวกเขาจะตรวจสอบภายในเครื่อง กระบวนการตรวจสอบความถูกต้องมีอยู่ภายในโมดูล validator ของคลาส parachain ก โมดูลซอฟต์แวร์ที่มีความละเอียดอ่อนที่ต้องเขียน สำหรับการดำเนินการใด ๆ ของ Polkadot (แม้ว่าโดยหลักการแล้ว ไลบรารีที่มี C ABI สามารถเปิดใช้งานไลบรารีเดียวได้ ร่วมกันระหว่างการนำไปปฏิบัติด้วยความเหมาะสม ความปลอดภัยที่ลดลงจากการมีการดำเนินการ "อ้างอิง" เพียงรายการเดียว) กระบวนการนี้ใช้ส่วนหัวของบล็อกก่อนหน้าและยืนยันตัวตนผ่านรีเลย์เชนที่ตกลงกันเมื่อเร็ว ๆ นี้ บล็อกที่ควรบันทึก hash เมื่อตรวจสอบความถูกต้องของส่วนหัวพาเรนต์แล้ว Parachain ที่เฉพาะเจาะจง ฟังก์ชันการตรวจสอบความถูกต้องของคลาสอาจถูกเรียก นี่เป็นฟังก์ชันเดียวที่ยอมรับช่องข้อมูลจำนวนหนึ่ง (ประมาณ ที่ให้ไว้ก่อนหน้านี้) และส่งคืนบูลีนแบบง่าย ประกาศความถูกต้องของบล็อก ฟังก์ชั่นการตรวจสอบความถูกต้องส่วนใหญ่จะตรวจสอบก่อน ฟิลด์ส่วนหัวซึ่งสามารถได้รับโดยตรงจาก บล็อกหลัก (เช่น parent hash, number) กำลังติดตาม สิ่งนี้จะเติมโครงสร้างข้อมูลภายในใด ๆ เช่น จำเป็นในการประมวลผลธุรกรรมและ/หรือโพสต์ สำหรับห่วงโซ่ที่มีลักษณะคล้าย Ethereum จำนวนนี้คือการเติม a ลองใช้ฐานข้อมูลพร้อมโหนดที่จำเป็นสำหรับ การทำธุรกรรมเต็มรูปแบบ โซ่ประเภทอื่นอาจมี หน้าอื่น ๆกลไกการชดใช้ เมื่อเสร็จแล้ว โพสต์ทางเข้าและธุรกรรมภายนอก (หรืออะไรก็ตามที่เป็นตัวแทนข้อมูลภายนอก) จะเป็นเช่นนั้น ตราขึ้นและสมดุลตามข้อกำหนดของโซ่ (ก ค่าเริ่มต้นที่สมเหตุสมผลอาจต้องกำหนดให้มีการโพสต์ทางเข้าทั้งหมด ประมวลผลก่อนที่จะให้บริการธุรกรรมภายนอก อย่างไรก็ตาม สิ่งนี้ควรเป็นไปตามตรรกะของ Parachain ในการตัดสินใจ) ด้วยการตรากฎหมายนี้ จะมีชุดโพสต์ทางออก สร้างขึ้นและจะได้รับการยืนยันว่าสิ่งเหล่านี้ตรงกันจริงๆ ผู้สมัครของผู้สมรู้ร่วมคิด ในที่สุดก็มีประชากรอย่างเหมาะสม ส่วนหัวจะถูกตรวจสอบกับส่วนหัวของผู้สมัคร ด้วยบล็อกผู้สมัครที่ได้รับการตรวจสอบความถูกต้องครบถ้วน validator จากนั้นสามารถลงคะแนนให้ hash ของส่วนหัวและส่งข้อมูลการตรวจสอบที่จำเป็นทั้งหมดไปยัง co-validators ในกลุ่มย่อย 6.7.1. เครื่องสะสมพาราเชน Parachain collators คือผู้ปฏิบัติงานที่ไม่มีพันธะผูกพัน ซึ่งทำหน้าที่ส่วนใหญ่ของนักขุด บนเครือข่าย blockchain ในปัจจุบัน พวกมันมีความเฉพาะเจาะจง ไปยังพาราเชนโดยเฉพาะ เพื่อที่จะดำเนินการพวกเขาจะต้อง รักษาทั้งรีเลย์-เชนและซิงโครไนซ์อย่างเต็มที่ พาราเชน ความหมายที่ชัดเจนของ "การซิงโครไนซ์อย่างเต็มที่" จะขึ้นอยู่กับคลาสของ parachain แม้ว่าจะรวมถึงสถานะปัจจุบันของคิวทางเข้าของ parachain ก็ตาม ในกรณีของ Ethereum อย่างน้อยก็เกี่ยวข้องกับการบำรุงรักษาด้วย ฐานข้อมูล Merkle-tree ของสองสามช่วงตึกสุดท้าย แต่อาจ รวมถึงโครงสร้างข้อมูลอื่นๆ มากมาย รวมถึง Bloom ตัวกรองสำหรับการมีอยู่ของบัญชี ข้อมูลครอบครัว การบันทึก เอาต์พุตและตารางการค้นหาแบบย้อนกลับสำหรับหมายเลขบล็อก นอกจากจะทำให้โซ่ทั้งสองประสานกันแล้ว ต้อง "จับปลา" สำหรับธุรกรรมด้วยการรักษาคิวธุรกรรมและยอมรับธุรกรรมที่ได้รับการตรวจสอบอย่างถูกต้อง จากเครือข่ายสาธารณะ ด้วยคิวและห่วงโซ่มันคือ สามารถสร้างบล็อกผู้สมัครใหม่สำหรับ validators ที่เลือกในแต่ละบล็อก (ซึ่งทราบข้อมูลประจำตัวเนื่องจากรีเลย์เชนซิงโครไนซ์) และส่งบล็อกเหล่านั้นพร้อมกับ ข้อมูลเสริมต่างๆ เช่น หลักฐานความถูกต้อง ผ่านทาง เครือข่ายเพียร์ สำหรับปัญหาดังกล่าว ระบบจะเก็บค่าธรรมเนียมทั้งหมดที่เกี่ยวข้องกับธุรกรรมที่รวมไว้ เศรษฐศาสตร์ต่างๆ หมุนเวียนไปรอบ ๆ นี้ การจัดการ ในตลาดที่มีการแข่งขันสูงนั่นเอง เป็นส่วนเกินของผู้ค้ำประกันก็เป็นไปได้ว่าการทำธุรกรรม จะมีการแชร์ค่าธรรมเนียมกับ parachain validators เพื่อสร้างแรงจูงใจ การรวมบล็อกของผู้ประสานงานโดยเฉพาะ ในทำนองเดียวกัน

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 17 ผู้เรียกเก็บเงินบางรายอาจเพิ่มค่าธรรมเนียมที่จำเป็นด้วยซ้ำ จะต้องชำระเพื่อทำให้บล็อกน่าสนใจยิ่งขึ้น validatorส. ในกรณีนี้ ตลาดธรรมชาติควรก่อตัวขึ้น ด้วยการทำธุรกรรมที่จ่ายค่าธรรมเนียมสูงกว่าการข้ามคิว และรวมเข้าเป็นลูกโซ่ได้เร็วขึ้น 6.8. เครือข่าย. การสร้างเครือข่ายบน blockchains แบบดั้งเดิม เช่น Ethereum และ Bitcoin มีข้อกำหนดที่ค่อนข้างง่าย ธุรกรรมและบล็อกทั้งหมดถูกถ่ายทอดในรูปแบบซุบซิบที่ไม่มีทิศทาง การซิงโครไนซ์มีส่วนเกี่ยวข้องมากกว่าโดยเฉพาะ ด้วย Ethereum แต่ในความเป็นจริงแล้วตรรกะนี้มีอยู่ใน กลยุทธ์เพียร์มากกว่าโปรโตคอลเองซึ่งแก้ไขได้กับข้อความคำขอและคำตอบบางประเภท ในขณะที่ Ethereum มีความคืบหน้าในการนำเสนอโปรโตคอลปัจจุบันด้วยโปรโตคอล devp2p ซึ่งอนุญาตสำหรับหลาย ๆ คน โปรโตคอลย่อยที่จะมัลติเพล็กซ์ผ่านการเชื่อมต่อแบบเพียร์เดียว จึงมีเพียร์โอเวอร์เลย์เดียวกันที่รองรับหลาย ๆ ตัว โปรโตคอล p2p พร้อมกัน ส่วน Ethereum ของ โปรโตคอลยังคงค่อนข้างง่ายและ p2p โปรโตคอลในขณะที่ยังไม่เสร็จสิ้นกับความสำคัญ ฟังก์ชันการทำงานที่ขาดหายไป เช่น การสนับสนุน QoS น่าเศร้าที่ความปรารถนาที่จะสร้างโปรโตคอล “web 3” ที่แพร่หลายมากขึ้นเป็นส่วนใหญ่ ล้มเหลว โดยมีเพียงโครงการเดียวที่ใช้โครงการนี้อย่างชัดเจน ได้รับทุนจากการขายฝูงชน Ethereum ข้อกำหนดสำหรับ Polkadot ค่อนข้างสำคัญกว่า แทนที่จะเป็นเครือข่ายที่เหมือนกันทั้งหมด Polkadot มีผู้เข้าร่วมหลายประเภท โดยแต่ละประเภทมีข้อกำหนดที่แตกต่างกันตามรูปแบบเพื่อนและเครือข่ายที่หลากหลาย “ช่องทาง” ที่ผู้เข้าร่วมมักจะพูดคุยถึง ข้อมูลเฉพาะ นี่หมายถึงการซ้อนทับเครือข่ายที่มีโครงสร้างมากขึ้นอย่างมาก—และโปรโตคอลที่รองรับ— คงจะจำเป็น นอกจากนี้ ความสามารถในการขยายเพื่อรองรับการเพิ่มในอนาคต เช่น "ลูกโซ่" รูปแบบใหม่อาจเกิดขึ้น เองจำเป็นต้องมีโครงสร้างการซ้อนทับแบบใหม่ ขณะที่การอภิปรายเชิงลึกเกี่ยวกับวิธีการสร้างเครือข่าย โปรโตคอลอาจดูอยู่นอกขอบเขตของเอกสารนี้ การวิเคราะห์ข้อกำหนดบางอย่างมีความสมเหตุสมผล เราทำได้ โดยคร่าวๆ แบ่งผู้เข้าร่วมเครือข่ายของเราออกเป็นสองชุด (รีเลย์-เชน, พาราเชน) แต่ละชุดย่อยทั้งสามชุด เราทำได้ ยังระบุด้วยว่าผู้เข้าร่วมพาราเชนแต่ละคนเป็นเพียงเท่านั้น สนใจที่จะพูดคุยระหว่างกันเองแทนที่จะเป็นฝ่ายตรงข้าม ผู้เข้าร่วมใน parachachas อื่น: • ผู้เข้าร่วมรีเลย์เชน: • ผู้ตรวจสอบความถูกต้อง: P แบ่งออกเป็นเซตย่อย P[s] สำหรับแต่ละเซต พาราเชน • ผู้รับประกันความพร้อมใช้งาน: A (ซึ่งอาจแสดงโดยผู้ตรวจสอบความถูกต้องในรูปแบบพื้นฐานของโปรโตคอล) • ไคลเอนต์รีเลย์เชน: M (หมายเหตุ สมาชิกแต่ละคน. ชุดพาราเชนก็มีแนวโน้มที่จะเป็นสมาชิกของ M ด้วย) • ผู้เข้าร่วมพาราเชน: • ตัวประสานพาราเชน: C[0], C[1], . . . • ชาวประมงพาราเชน: F[0], F[1], . . • ไคลเอนต์ Parachain: S[0], S[1], . . . • Parachain light-client: L[0], L[1], . . . โดยทั่วไปเราจะตั้งชื่อคลาสของการสื่อสารโดยเฉพาะ มักจะเกิดขึ้นระหว่างสมาชิกของชุดเหล่านี้: • พี | ก <-> ป | ตอบ: ที่ เต็ม ชุด ของ validators/ผู้ค้ำประกัน ต้อง เป็น เชื่อมต่อกันดี ถึง บรรลุฉันทามติ • P[s] <-> C[s] | P[s]: validator แต่ละคนในฐานะสมาชิกของกลุ่ม parachain ที่กำหนดจะมีแนวโน้มที่จะนินทา กับสมาชิกคนอื่นๆ และผู้ร่วมงานด้วย ของพาราเชนนั้นเพื่อค้นหาและแบ่งปันตัวเลือกบล็อก • A <-> P[s] | ซี | ตอบ: ผู้รับประกันความพร้อมในการให้บริการแต่ละราย จะต้องรวบรวม cross-chain ที่ไวต่อฉันทามติ ข้อมูลจาก validators ที่ได้รับมอบหมาย; ผู้ประสานงาน อาจเพิ่มโอกาสในการได้รับฉันทามติด้วย บล็อกโดยการโฆษณากับผู้รับประกันความพร้อม เมื่อได้รับแล้วข้อมูลจะถูกจ่ายไป ผู้ค้ำประกันรายอื่นเพื่ออำนวยความสะดวกในการตกลงกัน • P[s] <-> A | P[s']: Parachain validators จะ จำเป็นต้องรวบรวมข้อมูลอินพุตเพิ่มเติมจากชุดก่อนหน้าของ validators หรือผู้รับประกันความพร้อมใช้งาน • F[s] <-> P: เมื่อรายงาน ชาวประมงอาจส่ง การเรียกร้องกับผู้เข้าร่วมคนใด ๆ • ม <-> ม | ป | ตอบ: ไคลเอนต์รีเลย์เชนทั่วไปจะจ่ายข้อมูลจาก validators และผู้ค้ำประกัน • ส[s] <-> ส[s] | ป[s] | ตอบ: ไคลเอนต์ Parachain กระจายข้อมูลจาก validator/guarantors • L[s] <-> L[s] | S[s]: ไคลเอนต์ Parachain light เบิกจ่ายข้อมูลจากลูกค้าเต็มจำนวน เพื่อให้มั่นใจว่ากลไกการขนส่งมีประสิทธิภาพ “แฟลต” เครือข่ายซ้อนทับ - เช่น devp2p ของ Ethereum โดยที่แต่ละอัน โหนดไม่ (โดยพลการ) ไม่แยกแยะความเหมาะสมของมัน เพื่อนร่วมงานไม่น่าจะเหมาะสม ขยายออกได้พอสมควร กลไกการคัดเลือกและการค้นพบเพื่อนน่าจะจำเป็น ให้รวมอยู่ในระเบียบการและเชิงรุกด้วย การวางแผนมองล่วงหน้าเพื่อให้แน่ใจว่ามีเพื่อนที่เหมาะสม เป็นคอนเน็ก "โดยบังเอิญ"ในเวลาที่เหมาะสม กลยุทธ์ที่ชัดเจนในการคัดเลือกผู้ร่วมงานจะแตกต่างกันสำหรับผู้เข้าร่วมแต่ละชั้นเรียน: เพื่อการปรับขนาดที่เหมาะสม multi-chain ผู้ทำงานร่วมกันจะต้องดำเนินการอย่างต่อเนื่อง เชื่อมต่อกับ validators ที่ได้รับการเลือกตั้งตามนั้นหรือจะ ต้องการข้อตกลงที่กำลังดำเนินการกับชุดย่อยของ validators เพื่อให้แน่ใจว่าจะไม่ถูกตัดการเชื่อมต่อในช่วงเวลาส่วนใหญ่ที่ไม่มีประโยชน์สำหรับ validator นั้น ผู้รวบรวมจะพยายามรักษาไว้โดยธรรมชาติ หรือการเชื่อมต่อที่เสถียรยิ่งขึ้นไปยังผู้รับประกันความพร้อมใช้งาน กำหนดไว้เพื่อให้แน่ใจว่ามีการเผยแพร่อย่างรวดเร็วของความเห็นพ้องต้องกัน ข้อมูล ผู้รับประกันความพร้อมส่วนใหญ่จะมุ่งเป้าไปที่การรักษา การเชื่อมต่อที่เสถียรระหว่างกันและกับ validators (สำหรับข้อมูลที่เป็นเอกฉันท์และข้อมูล Parachain ที่มีความสำคัญเป็นเอกฉันท์ซึ่ง พวกเขายืนยัน) เช่นเดียวกับผู้เปรียบเทียบบางคน (สำหรับ parachain ข้อมูล) และชาวประมงและลูกค้าบางส่วน (สำหรับการกระจายตัว ข้อมูล) ผู้ตรวจสอบความถูกต้องมักจะมองหา validators อื่นๆ โดยเฉพาะที่อยู่ในกลุ่มย่อยเดียวกันและ ผู้ประสานงานที่สามารถจัดหาตัวเลือกบล็อกพาราเชนให้พวกเขาได้ ชาวประมงตลอดจนรีเลย์โซ่และพาราเชนทั่วไป โดยทั่วไปลูกค้าจะมุ่งหวังที่จะรักษาการเชื่อมต่อที่เปิดไว้กับ validator หรือผู้ค้ำประกัน แต่มีโหนดอื่นๆ ที่คล้ายกันอีกมากมาย แก่ตนเองเป็นอย่างอื่น Parachain light client มีเป้าหมายที่จะเชื่อมต่อกับไคลเอนต์แบบเต็มของ parachain ในทำนองเดียวกัน หากไม่ใช่เพียงไคลเอ็นต์ light-client ของ parachain อื่นๆ 6.8.1. ปัญหาของเพื่อนปั่น. ในข้อเสนอโปรโตคอลพื้นฐาน แต่ละชุดย่อยเหล่านี้เปลี่ยนแปลงแบบสุ่มอย่างต่อเนื่องกับแต่ละบล็อกตามที่ validators มอบหมายให้ตรวจสอบ การเปลี่ยนพาราเชนจะถูกสุ่มเลือก นี้สามารถ เป็นปัญหาที่ควรต้องมีโหนดที่แตกต่างกัน (ไม่ใช่เพียร์) ส่งข้อมูลระหว่างกัน ก็ต้องพึ่งเช่นกัน เครือข่ายเพียร์ที่มีการกระจายอย่างเป็นธรรมและเชื่อมต่ออย่างดี

โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 18 ตรวจสอบให้แน่ใจว่าระยะทางกระโดด (และความล่าช้าที่เลวร้ายที่สุด) จะเพิ่มขึ้นตามลอการิทึมของขนาดเครือข่ายเท่านั้น (โปรโตคอลที่คล้ายกับ Kademlia [13] อาจช่วยได้ที่นี่) หรือต้องทำอย่างใดอย่างหนึ่ง แนะนำเวลาบล็อกที่นานขึ้นเพื่อให้การเจรจาการเชื่อมต่อที่จำเป็นเกิดขึ้นเพื่อรักษาเพียร์เซ็ตไว้ สะท้อนถึงความต้องการการสื่อสารในปัจจุบันของโหนด ทั้งสองวิธีไม่ใช่วิธีแก้ปัญหาที่ดี: ใช้เวลาบล็อกนาน การถูกบังคับบนเครือข่ายอาจทำให้ไร้ประโยชน์ได้ การใช้งานและโซ่โดยเฉพาะ แม้กระทั่งงานที่สมบูรณ์แบบ และเครือข่ายที่เชื่อมต่อจะส่งผลให้เกิดการสิ้นเปลืองอย่างมาก ของแบนด์วิธเมื่อขยายขนาดเนื่องจากมีโหนดที่ไม่สนใจ เพื่อส่งต่อข้อมูลไปอย่างไร้ประโยชน์ให้กับพวกเขา แม้ว่าทั้งสองทิศทางอาจเป็นส่วนหนึ่งของสารละลาย การเพิ่มประสิทธิภาพที่เหมาะสมเพื่อช่วยลดเวลาแฝงให้เหลือน้อยที่สุด คือการจำกัดความผันผวนของ parachain เหล่านี้ validator ชุด หรือกำหนดความเป็นสมาชิกใหม่เฉพาะระหว่างชุดของบล็อก (เช่น ในกลุ่ม 15 ซึ่งใน 4 วินาที เวลาบล็อกจะหมายถึงการเปลี่ยนแปลงการเชื่อมต่อเพียงครั้งเดียวต่อ นาที) หรือหมุนเวียนสมาชิกแบบเพิ่มขึ้น เช่น เปลี่ยนแปลงทีละสมาชิก (เช่น ถ้ามี ได้รับมอบหมาย 15 validators ให้กับแต่ละ parachain ดังนั้นโดยเฉลี่ยแล้วจะใช้เวลาหนึ่งนาทีเต็มระหว่างค่าที่ไม่ซ้ำกันโดยสิ้นเชิง ชุด) โดยการจำกัดจำนวนการเลิกใช้งานเพียร์ และรับรองว่าการเชื่อมต่อเพียร์ที่ได้เปรียบจะทำไปด้วยดี ก้าวหน้าผ่านการคาดเดาได้บางส่วนของพาราเชน เราสามารถช่วยให้แน่ใจว่าแต่ละโหนดจะคงไว้อย่างถาวร การคัดเลือกเพื่อนโดยบังเอิญ 6.8.2. เส้นทางสู่โปรโตคอลเครือข่ายที่มีประสิทธิภาพ คงจะ. ความพยายามในการพัฒนาที่มีประสิทธิผลและสมเหตุสมผลมากที่สุดจะมุ่งเน้นไปที่การใช้โปรโตคอลที่มีอยู่แล้วมากกว่าการเผยแพร่ ของเราเอง มีโปรโตคอลฐานเพียร์ทูเพียร์หลายตัว เราอาจใช้หรือเพิ่มรวมถึง devp2p ของ Ethereum ของตัวเองด้วย [22], libp2p ของ IPFS [1] และ GNUnet ของ GNU [4] การทบทวนระเบียบการเหล่านี้ฉบับสมบูรณ์และความเกี่ยวข้องสำหรับการสร้าง เครือข่ายเพียร์แบบโมดูลาร์ที่รองรับการรับประกันโครงสร้างบางอย่าง การควบคุมเพียร์แบบไดนามิก และโปรโตคอลย่อยที่ขยายได้ อยู่นอกเหนือขอบเขตของเอกสารนี้ แต่จะเป็น ขั้นตอนสำคัญในการใช้งาน Polkadot 7. การปฏิบัติจริงของพิธีสาร 7.1. การชำระเงินธุรกรรมระหว่างกัน ในขณะที่ยิ่งใหญ่ ปริมาณความเป็นอิสระและความเรียบง่ายนั้นได้มาจากการลดความต้องการเฟรมเวิร์กการบัญชีทรัพยากรการคำนวณแบบองค์รวม เช่น ก๊าซของ Ethereum สิ่งนี้ทำให้เกิดคำถามสำคัญ: หากไม่มีก๊าซ แล้วพาราเชนหนึ่งตัวจะเป็นอย่างไร หลีกเลี่ยง parachain อื่นจากการบังคับให้ทำการคำนวณหรือไม่ ในขณะที่เราสามารถพึ่งพาคิวการเข้าหลังธุรกรรมได้ บัฟเฟอร์เพื่อป้องกันไม่ให้ห่วงโซ่หนึ่งส่งสแปมด้วย ข้อมูลธุรกรรม ไม่มีกลไกที่เท่าเทียมกันในโปรโตคอลเพื่อป้องกันสแปมในการประมวลผลธุรกรรม นี่เป็นปัญหาที่เหลืออยู่ในระดับที่สูงขึ้น ตั้งแต่โซ่ตรวน มีอิสระที่จะแนบซีแมนทิกส์ตามอำเภอใจกับขาเข้า ข้อมูลธุรกรรมโพสต์เราสามารถรับประกันได้ว่าการคำนวณ จะต้องชำระก่อนที่จะเริ่ม ในลักษณะเดียวกันกับ โมเดลที่ดำเนินการโดย Ethereum ความสงบ เราสามารถจินตนาการได้ สัญญา "แตกหัก" ภายใน parachain ซึ่งอนุญาตให้ validator รับประกันการชำระเงินเพื่อแลกกับ การจัดหาทรัพยากรการประมวลผลในปริมาณเฉพาะ ทรัพยากรเหล่านี้อาจวัดได้ในรูปของก๊าซ แต่ยังอาจเป็นโมเดลที่แปลกใหม่บางอย่าง เช่น เวลาในการดำเนินการแบบอัตนัยหรือแบบจำลองค่าธรรมเนียมแบบ Bitcoin ที่เหมือนค่าธรรมเนียม ด้วยตัวมันเองสิ่งนี้ไม่มีประโยชน์นักเนื่องจากเราไม่สามารถสรุปได้ว่าผู้เรียกแบบ off-chain นั้นว่างสำหรับพวกเขา กลไกคุณค่าใดก็ตามที่ได้รับการยอมรับจากการบุกรุก สัญญา อย่างไรก็ตาม เราสามารถจินตนาการถึงสัญญา "ฝ่าวงล้อม" รองในห่วงโซ่แหล่งที่มาได้ สัญญาทั้งสองร่วมกันจะสร้างสะพานที่รับรู้ซึ่งกันและกันและ ให้ความเท่าเทียมกันของมูลค่า (การปักหลัก-tokens ใช้ได้กับ แต่ละรายการสามารถนำไปใช้ชำระดุลการชำระเงินได้) การโทรเข้าสายโซ่อื่นจะหมายถึงการมอบฉันทะ ผ่านสะพานแห่งนี้ซึ่งจะให้หนทางในการ การเจรจาการถ่ายโอนมูลค่าระหว่างเครือข่ายเพื่อที่จะ ชำระค่าทรัพยากรการคำนวณที่จำเป็นสำหรับพาราเชนปลายทาง 7.2. เพิ่มเติม โซ่. ในขณะที่ ที่ นอกจากนี้ ของ ก parachain เป็นการดำเนินการที่ค่อนข้างถูก มันไม่ฟรี พาราเชนที่มากขึ้นหมายถึง validators ต่อพาราเชนที่น้อยลง และในที่สุด validators จำนวนมากขึ้นแต่ละอันมี a พันธบัตรเฉลี่ยลดลง ในขณะที่ปัญหาเรื่องการบังคับค่าใช้จ่ายในการโจมตี Parachain น้อยลงก็บรรเทาลงได้ ชาวประมง validator ที่กำลังเติบโต กำหนดกำลังสำคัญ ระดับเวลาแฝงที่สูงขึ้นเนื่องจากกลไกของความเห็นพ้องต้องกันท็อด นอกจากนี้พาราเชนแต่ละอัน นำมาซึ่งความโศกเศร้า validators พร้อมด้วย อัลกอริธึมการตรวจสอบที่หนักเกินไป ด้วยเหตุนี้ จะมี "ราคา" บางส่วนที่ validators และ/หรือชุมชนผู้มีส่วนได้ส่วนเสียจะดึงข้อมูลออกมาเพื่อ เพิ่มพาราเชนใหม่ ตลาดสำหรับโซ่นี้จะ อาจเห็นการเพิ่มอย่างใดอย่างหนึ่ง: • เครือข่ายที่มีแนวโน้มว่าจะมีการจ่ายเงินสุทธิเป็นศูนย์ (ในแง่ของการล็อคหรือการเผา staking tokens) ที่จะสร้างเป็นส่วนหนึ่ง (เช่น เครือเครือข่ายสมาคม Doge-chains, เชนเฉพาะแอป); • เครือข่ายที่ส่งมอบคุณค่าที่แท้จริงให้กับเครือข่าย ผ่านการเพิ่มฟังก์ชันการทำงานเฉพาะที่ยุ่งยาก เพื่อไปยังที่อื่น (เช่น การรักษาความลับ ความสามารถในการขยายภายใน การเชื่อมโยงการบริการ) โดยพื้นฐานแล้วชุมชนของผู้มีส่วนได้ส่วนเสียจะต้อง ได้รับการจูงใจให้เพิ่มเครือข่ายย่อย—ทั้งทางการเงินหรือ ด้วยความปรารถนาที่จะเพิ่มโซ่ที่โดดเด่นให้กับรีเลย์ คาดว่าเครือใหม่ที่เพิ่มเข้ามาจะมีมาก ระยะเวลาแจ้งสั้นสำหรับการถอด ทำให้สามารถโซ่ใหม่ได้ ทดลองได้โดยไม่ต้องเสี่ยงต่อการประนีประนอม การนำเสนอคุณค่าระยะกลางหรือระยะยาว 8. บทสรุป เราได้สรุปแนวทางที่อาจนำไปใช้ในการเขียน โปรโตคอลหลายสายโซ่ที่ต่างกันและปรับขนาดได้พร้อมศักยภาพที่จะเข้ากันได้แบบย้อนหลังกับบางโปรโตคอลที่มีอยู่แล้ว blockchain เครือข่าย ภายใต้ระเบียบการดังกล่าวผู้เข้าร่วม ทำงานเพื่อประโยชน์ส่วนตนที่รู้แจ้งเพื่อสร้างระบบโดยรวมที่สามารถขยายออกไปในลักษณะที่ฟรีเป็นพิเศษและไม่มีค่าใช้จ่ายทั่วไปสำหรับผู้ใช้ที่มีอยู่ มาจากการออกแบบมาตรฐาน blockchain เราได้ให้ โครงร่างคร่าวๆ ของสถาปัตยกรรมที่จะต้องรวมไว้ด้วย ลักษณะของผู้เข้าร่วม สิ่งจูงใจทางเศรษฐกิจ และกระบวนการที่พวกเขาต้องมีส่วนร่วม เรามี ระบุการออกแบบขั้นพื้นฐานและหารือถึงจุดแข็งและ ข้อจำกัด; ดังนั้นเราจึงมีแนวทางเพิ่มเติมซึ่ง อาจบรรเทาข้อจำกัดเหล่านั้นและส่งผลให้ได้รับโซลูชัน blockchain ที่ปรับขนาดได้อย่างเต็มที่โพลคาดอท: วิสัยทัศน์สำหรับกรอบการทำงานแบบหลายห่วงโซ่ที่แตกต่างกัน ร่างที่ 1 19 8.1. เนื้อหาที่ขาดหายไปและคำถามเปิด การฟอร์กเครือข่ายนั้นมีความเป็นไปได้เสมอจากการใช้งานโปรโตคอลที่แตกต่างกัน การฟื้นตัวจากการดังกล่าว ไม่ได้กล่าวถึงเงื่อนไขพิเศษ เนื่องจากเครือข่ายจะต้องมีระยะเวลาสรุปที่ไม่เป็นศูนย์ มันไม่ควรเป็นปัญหาใหญ่ในการกู้คืนจากการฟอร์กของรีเลย์เชน แต่จะต้องมีการผสานรวมอย่างระมัดระวัง โปรโตคอลฉันทามติ การยึดพันธบัตรและการให้รางวัลในทางกลับกันมี ไม่ได้รับการสำรวจอย่างลึกซึ้ง ในปัจจุบันเราถือว่ารางวัล มีให้ภายใต้เกณฑ์ผู้ชนะ - รับทั้งหมด: สิ่งนี้อาจไม่ มอบรูปแบบการสร้างแรงจูงใจที่ดีที่สุดสำหรับชาวประมง กระบวนการเปิดเผยข้อผูกพันในระยะเวลาอันสั้นจะทำให้ชาวประมงจำนวนมาก เพื่อรับรางวัลโดยมีการแจกรางวัลอย่างยุติธรรมมากขึ้น อย่างไรก็ตามกระบวนการนี้อาจนำไปสู่เวลาแฝงเพิ่มเติมใน การค้นพบพฤติกรรมที่ไม่เหมาะสม 8.2. รับทราบ ขอบคุณมากสำหรับทั้งหมด ผู้พิสูจน์อักษรที่ได้ช่วยทำความเข้าใจเรื่องนี้อย่างคลุมเครือ รูปร่างเรียบร้อย โดยเฉพาะ Peter Czaban, Bj¨orn วากเนอร์, เคน แคปเปลอร์, โรเบิร์ต ฮาเบอร์ไมเออร์, วิตาลิก บูเทริน, เรโต้ ทริงเกอร์ และแจ็ค ปีเตอร์สสัน ขอบคุณทุกคน คนที่มีส่วนสนับสนุนความคิดหรือจุดเริ่มต้น ด้วยเหตุนี้ Marek Kotewicz และ Aeron Buchanan จึงสมควรได้รับการกล่าวถึงเป็นพิเศษ และขอบคุณทุกคนสำหรับความช่วยเหลือของพวกเขา ระหว่างทาง ข้อผิดพลาดทั้งหมดเป็นของฉันเอง บางส่วนของงานนี้ รวมถึงการวิจัยเบื้องต้นเกี่ยวกับ อัลกอริธึมฉันทามติได้รับทุนบางส่วนจากอังกฤษ รัฐบาลภายใต้โครงการ Innovate UK

Protokoll im Detail

Das Protokoll kann grob in drei Teile unterteilt werden Teile: der Konsensmechanismus, die Parachain-Schnittstelle und Interchain-Transaktionsrouting. 6.1. Relaiskette Betrieb. Die Relaiskette wird Wahrscheinlich handelt es sich dabei um eine Kette, die Ethereum weitgehend ähnelt ist bundesstaatsbasiert, wobei der Bundesstaat die Adresse dem Konto zuordnet Informationen, hauptsächlich Salden und (um Wiederholungen zu verhindern) a Transaktionszähler. Das Platzieren von Konten erfüllt hier einen Zweck: die Bereitstellung von Konten für diejenigen, die Identität besitzen Wie hoch ist der Anteil am System?7 Es wird jedoch bemerkenswerte Unterschiede geben: • Verträge können nicht über Transaktionen bereitgestellt werden. Aufgrund des Wunsches, Anwendungsfunktionalität auf der Relay-Kette zu vermeiden, wird dies nicht der Fall sein Unterstützung der öffentlichen Bereitstellung von Verträgen. • Die Nutzung von Rechenressourcen („Gas“) wird nicht berücksichtigt. da die einzigen Funktionen für die öffentliche Nutzung verfügbar sind behoben werden, das Grundprinzip der Gasabrechnung hält nicht mehr. Daher wird eine Pauschalgebühr erhoben in allen Fällen, sodass in jedem Fall mehr Leistung erzielt werden kann dynamische Codeausführung, die möglicherweise durchgeführt werden muss und ein einfacheres Transaktionsformat. • Für aufgelistete Verträge werden spezielle Funktionen unterstützt, die eine automatische Ausführung und Netzwerknachrichtenausgaben ermöglichen. Für den Fall, dass die Relay-Kette eine VM hat und es sein sollte Basierend auf EVM würde es eine Reihe von Modifikationen aufweisen, um maximale Einfachheit zu gewährleisten. Es wäre wahrscheinlich verfügen über eine Reihe integrierter Verträge (ähnlich denen bei Adressen 1-4 in Ethereum), um eine plattformspezifische Anpassung zu ermöglichen zu verwaltende Aufgaben einschließlich eines Konsensvertrags, a validator-Vertrag und ein Parachain-Vertrag. Wenn nicht EVM, dann ist ein WebAssembly-Backend [2] (wasm) die wahrscheinlichste Alternative. in diesem Fall das Gesamtbild Die Struktur wäre ähnlich, aber es wäre nicht nötig für die integrierten Verträge, wobei Wasm ein realisierbares Ziel ist eher für Allzwecksprachen als für unreife Sprachen und begrenzte Sprachen für EVM. Andere wahrscheinliche Abweichungen vom aktuellen Ethereum-Protokoll sind durchaus möglich, beispielsweise eine Vereinfachung des Transaktionsempfangsformat, das die parallele Ausführung nicht widersprüchlicher Transaktionen innerhalb desselben Blocks ermöglicht, wie für die Serenity-Änderungsreihe vorgeschlagen. Es ist möglich, wenn auch unwahrscheinlich, dass es Serenity-ähnlich ist Als Relay-Chain kann eine „reine“ Kette eingesetzt werden, die Folgendes ermöglicht: Besonderer Vertrag zur Verwaltung von Dingen wie staking token gleicht aus, anstatt dies zu einem grundlegenden Bestandteil zu machen das Protokoll der Kette. Dies halten wir derzeit für unwahrscheinlich wird eine ausreichend große Protokollvereinfachung bieten Die damit verbundene zusätzliche Komplexität und Unsicherheit lohnt sich bei der Entwicklung. 7Diese Stake-Konten sind ein Mittel zur Darstellung des Betrags, den ein bestimmter Inhaber für die Gesamtsicherheit des Systems verantwortlich macht unweigerlich einen wirtschaftlichen Wert verschlüsseln. Es sollte jedoch klar sein, dass keine Absicht besteht, solche Werte zu verwenden In irgendeiner Weise zum Zweck des Austauschs gegen reale Waren und Dienstleistungen sollte dementsprechend beachtet werden, dass die tokens nicht mit ihnen verglichen werden können Währung und als solche behält die Relay-Chain ihre nihilistische Philosophie in Bezug auf Anwendungen bei.POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 10 Für die Verwaltung des Konsensmechanismus, des validator-Sets, des Validierungsmechanismus und der Parachains sind eine Reihe kleinerer Funktionalitäten erforderlich. Diese könnten gemeinsam unter einem monolithischen Protokoll implementiert werden. Aus Gründen der Modularität bezeichnen wir diese jedoch als „Verträge“ der Relay-Chain. Das sollte so verstanden werden, dass sie Objekte sind (im Sinne von objektorientierte Programmierung), die vom Konsensmechanismus der Relaychain verwaltet wird, aber nicht unbedingt Sie werden als Programme in EVM-ähnlichen Opcodes definiert, noch sogar, dass sie durch das einzeln ansprechbar sind Kontosystem. 6.2. Absteckvertrag. Dieser Vertrag verwaltet den Satz validator. Es verwaltet: • Welche Konten sind derzeit validators; • die kurzfristig zu validators werden können bemerken; • auf welche Konten die Stake-Nominierung erfolgt ist ein validator; • Eigenschaften jedes einzelnen, einschließlich staking Volumen, akzeptable Auszahlungsraten und Adressen sowie kurzfristige (Sitzungs-)Identitäten. Es ermöglicht einem Konto, den Wunsch zu registrieren, ein zu werden gebundener validator (zusammen mit seinen Anforderungen), um sich für eine Identität zu nominieren und für bereits bestehende gebundene validators, ihren Wunsch zu registrieren, diesen Status zu verlassen. Es auch umfasst die Maschinerie selbst für den Validierungs- und Kanonisierungsmechanismus. 6.2.1. Stake-token Liquidität. Im Allgemeinen ist dies wünschenswert so viel wie möglich von den gesamten staking tokens haben seitdem an den Netzwerkwartungsarbeiten beteiligt Dies verknüpft die Netzwerksicherheit direkt mit der gesamten „Marktkapitalisierung“ des staking token. Dies kann problemlos erfolgen Anreize geschaffen werden, indem die Währung aufgebläht wird und der Erlös an diejenigen ausgeschüttet wird, die als validators teilnehmen. Allerdings stellt dies ein Problem dar: Wenn der token im Einsatzvertrag unter Strafe der Kürzung festgeschrieben ist, wie kann dann ein wesentlicher Anteil ausreichend bleiben? liquide sein, um eine Preisfindung zu ermöglichen? Eine Antwort hierauf besteht darin, einen einfachen Derivatkontrakt zu ermöglichen, der fungible tokens auf einem zugrunde liegenden, abgesteckten token sichert. Dies lässt sich nur schwer vertrauensfrei regeln. Darüber hinaus können diese derivativen tokens nicht gleich behandelt werden, und zwar aus demselben Grund, aus dem die Staatsanleihen verschiedener Eurozonen-Staatsanleihen nicht fungibel sind: dort besteht die Möglichkeit, dass der zugrunde liegende Vermögenswert versagt und wird wertlos. Bei den Regierungen der Eurozone könnte es eine geben Standard. Mit validator-abgesteckten tokens können die validator böswillig handeln und bestraft werden. Im Einklang mit unseren Grundsätzen entscheiden wir uns für die einfachste Lösung: Es werden nicht alle tokens abgesteckt. Das würde das bedeuten Ein gewisser Anteil (vielleicht 20 %) der tokens wird zwangsweise liquide bleiben. Obwohl dies aus sicherheitstechnischer Sicht unvollkommen ist, ist es unwahrscheinlich, dass es einen grundlegenden Unterschied macht die Sicherheit des Netzwerks; 80 % der durch Anleihebeschlagnahmungen möglichen Wiedergutmachung könnten noch geleistet werden im Vergleich zum „perfekten Fall“ von 100 % staking. Das Verhältnis zwischen eingesetzten und liquiden tokens kann relativ einfach durch einen umgekehrten Auktionsmechanismus gesteuert werden. Im Wesentlichen sind token-Inhaber daran interessiert, ein validator zu werden. würde jeweils ein Angebot für den staking-Vertrag veröffentlichen, in dem es heißt: die Mindestauszahlungsrate, die sie in Anspruch nehmen müssten Teil. Zu Beginn jeder Sitzung (Sitzungen würden passieren regelmäßig, vielleicht sogar einmal pro Stunde validator Slots würden je nach Interessenten besetzt Einsatz und Auszahlungsrate von validator. Ein möglicher Algorithmus denn das würde bedeuten, diejenigen mit den niedrigsten Angeboten anzunehmen einen Einsatz darstellen, der nicht höher ist als der angestrebte Gesamteinsatz dividiert durch die Anzahl der Slots und nicht weniger als die Untergrenze der Hälfte dieses Betrags. Wenn die Plätze nicht besetzt werden können, Die Untergrenze könnte wiederholt um einen Faktor verringert werden, um die Anforderungen zu erfüllen. 6.2.2. Nominierung. Es ist möglich, ohne Vertrauen zu nominieren diejenigen staking tokens zu einem aktiven validator und geben ihnen die Verantwortung für die Aufgaben von validators. Nominierung von Werken durch ein Zustimmungs-Abstimmungssystem. Jeder potenzielle Nominierende kann eine Anweisung zum staking-Vertrag veröffentlichen Ausdruck einer oder mehrerer validator Identitäten unter deren Verantwortung, die sie bereit sind, ihrer Bindung anzuvertrauen. In jeder Sitzung werden die Anleihen der Nominierenden verteilt dargestellt durch einen oder mehrere validators. Der Streuungsalgorithmus optimiert für einen Satz von validators gleicher Gesamtzahl Anleihen. Die Anleihen der Nominierenden unterliegen der tatsächlichen Verantwortung des validator aund Interesse gewinnen oder leiden Strafminderung entsprechend. 6.2.3. Beschlagnahmung/Verbrennung von Anleihen. Bestimmtes validator Verhalten führt zu einer Strafminderung ihrer Bindung. Wenn Die Anleihe wird unter das zulässige Minimum reduziert Die Sitzung wird vorzeitig beendet und eine neue gestartet. Eine nicht erschöpfende Liste strafbarer validator Fehlverhaltens umfasst: • Teil einer Parachain-Gruppe sein, die nicht in der Lage ist, etwas bereitzustellen Konsens über die Gültigkeit eines Parachain-Blocks; • aktiv für die Gültigkeit eines Invaliden unterschreiben Parachain-Block; • Unfähigkeit, Ausgangsnutzlasten bereitzustellen als verfügbar abgestimmt; • Inaktivität während des Konsensprozesses; • Validierung von Relay-Chain-Blöcken auf konkurrierenden Forks. Einige Fälle von Fehlverhalten gefährden die Integrität des Netzwerks (z. B. das Signieren ungültiger Parachain-Blöcke und die Validierung mehrerer Seiten eines Forks) und führen daher zu einem effektiven Exil durch die vollständige Reduzierung der Bindung. In andere, weniger schwerwiegende Fälle (z. B. Inaktivität im Konsens). Prozess) oder Fälle, in denen die Schuld nicht genau zugeordnet werden kann (Teil einer ineffektiven Gruppe), ein kleiner Teil Stattdessen kann eine Geldstrafe verhängt werden. Im letzteren Fall dies Funktioniert gut mit der Abwanderung von Untergruppen, um sicherzustellen, dass bösartige Knoten erleiden wesentlich mehr Verlust als die kollateralgeschädigten wohlwollenden Knoten. In einigen Fällen (z. B. Multi-Fork-Validierung und ungültig Unterblocksignierung) validators können das Fehlverhalten der anderen aufgrund der ständigen Überprüfung nicht einfach selbst erkennen eines jeden Parachain-Blocks wäre eine zu mühsame Aufgabe. Hier Es ist notwendig, die Unterstützung externer Parteien zu gewinnen den Validierungsprozess, um ein solches Fehlverhalten zu überprüfen und zu melden. Für die Meldung solcher Aktivitäten erhalten die Parteien eine Belohnung; Ihr Begriff „Fischer“ beruht auf der Unwahrscheinlichkeit einer solchen Belohnung. Da es sich in diesen Fällen typischerweise um sehr schwerwiegende Fälle handelt, gehen wir davon aus, dass etwaige Belohnungen problemlos aus der beschlagnahmten Kaution bezahlt werden können. Generell bevorzugen wir eine ausgeglichene Verbrennung (d. h. Reduktion auf nichts) mit Neuzuweisung, statt Versuch einer umfassenden Umverteilung. Dies hat die Wirkung

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 11 Erhöhen des Gesamtwerts von token, Kompensieren der Netzwerk im Allgemeinen bis zu einem gewissen Grad und nicht im Spezifischen an der Entdeckung beteiligte Partei. Dies dient vor allem der Sicherheit Mechanismus: Die großen Mengen, um die es geht, könnten zu extremen und akuten Verhaltensanreizen führen, wenn sie alle wären einem einzelnen Ziel verliehen. Im Allgemeinen ist es wichtig, dass die Belohnung groß genug ist, damit sich die Verifizierung für das Netzwerk lohnt, aber nicht so groß, dass sie die Kosten für die Bereitstellung eines Netzwerks ausgleicht gut finanzierter, gut orchestrierter Krimineller auf „industrieller Ebene“. Hackerangriff auf einen unglücklichen validator, um Fehlverhalten zu erzwingen. Auf diese Weise sollte der geforderte Betrag in der Regel Nein betragen größer als die direkte Bindung des fehlerhaften validator, damit a Es entsteht ein perverser Anreiz, sich schlecht zu benehmen und sich für das Kopfgeld zu melden. Dem kann entweder explizit entgegengewirkt werden durch eine Mindestanforderung an eine direkte Bindung, um ein zu sein validator oder implizit durch die Aufklärung der Nominatoren darüber, dass validators mit geringen hinterlegten Anleihen keinen großen Anreiz haben sich gut benehmen. 6.3. Parachain-Registrierung. Jede Parachain ist in definiert dieses Register. Es handelt sich um ein relativ einfaches datenbankähnliches Konstrukt, das sowohl statische als auch dynamische Informationen enthält jede Kette. Zu den statischen Informationen gehört der Kettenindex (ein einfacher ganze Zahl), zusammen mit der Validierungsprotokollidentität, a Mittel zur Unterscheidung zwischen den verschiedenen Klassen von Parachain, damit der richtige Validierungsalgorithmus gefunden werden kann wird von validators durchgeführt und hat die Aufgabe, einen gültigen Kandidaten vorzuschlagen. Ein erster Proof-of-Concept würde sich auf die Platzierung konzentrieren Die neuen Validierungsalgorithmen werden in die Clients selbst integriert, sodass jedes Mal ein Hard Fork des Protokolls erforderlich ist Zusätzliche Kettenklassen wurden hinzugefügt. Letztlich aber Möglicherweise kann der Validierungsalgorithmus in angegeben werden eine Art und Weise, die sowohl streng als auch effizient genug ist, dass Kunden es sind in der Lage, effektiv mit neuen Parachains zu arbeiten, ohne eine Hard-Fork. Ein möglicher Weg hierzu wäre die Spezifizierung der Parachain-Validierungsalgorithmus in einem etablierten, nativ kompilierte, plattformneutrale Sprache wie WebAssembly. Um dies festzustellen, sind zusätzliche Untersuchungen erforderlich Ob dies wirklich machbar ist, aber wenn ja, könnte es etwas bringen Damit verbunden ist der enorme Vorteil, Hard-Forks zu verbannen für immer. Dynamische Informationen umfassen Aspekte des Transaktionsroutingsystems, die eine globale Vereinbarung haben müssen, z als Eingangswarteschlange der Parachain (beschrieben in Abschnitt 6.6). Der Registry können nur Parachains hinzugefügt werden durch vollständige Abstimmung über das Referendum; das ließe sich bewerkstelligen intern, würde aber eher in einem externen platziert werden Referendumsvertrag, um die Weiterverwendung zu erleichtern allgemeinere Governance-Komponenten. Die Parameter zu Abstimmungsanforderungen (z. B. erforderliches Quorum, Mehrheit). erforderlich) zur Registrierung zusätzlicher Ketten und anderer, Weniger formelle Systemaktualisierungen werden in einem „Master“ dargelegt Verfassung“, werden aber wahrscheinlich einer ziemlich traditionellen Verfassung folgen Weg, zumindest zunächst. Die genaue Formulierung liegt uns nicht vor Spielraum für die vorliegende Arbeit, aber z.B. eine Zwei-Drittel-Supermehrheit mit mehr als einem Drittel des Gesamtsystems Eine positive Beteiligungsabstimmung kann ein sinnvoller Ausgangspunkt sein. Zu den weiteren Vorgängen gehört das Aufhängen und Entfernen von Fallschirmen. Eine Aussetzung würde es hoffentlich nie geben passieren, aber es soll zumindest als Schutz dienen Es gibt ein hartnäckiges Problem im Validierungssystem einer Parachain. Der offensichtlichste Fall, wo es sein könnte Erforderlich ist ein konsenskritischer Unterschied zwischen Implementierungen, der dazu führt, dass validators nicht in der Lage sind, sich darauf zu einigen Gültigkeit oder Sperren. Der Einsatz von Validatoren wird empfohlen mehrere Client-Implementierungen, damit sie in der Lage sind um ein solches Problem vor der Einziehung der Anleihe zu erkennen. Da es sich bei der Aussetzung um eine Notfallmaßnahme handelt, wäre dies der Fall unter der Schirmherrschaft des dynamischen validator-Votings statt als ein Referendum. Eine Wiedereinsetzung wäre bei beiden möglich aus den validators oder einem Referendum. Die vollständige Entfernung von Parachains wäre nur möglich nach einem Referendum und mit dem erforderlich wäre a erhebliche Schonfrist, um einen ordnungsgemäßen Übergang zu ermöglichen entweder eine eigenständige Kette oder um Teil einer anderen zu werden Konsenssystem. Die Schonfrist würde wahrscheinlich betragen Dies geschieht in der Reihenfolge von Monaten und wird wahrscheinlich pro Kette im Parachain-Register aufgeführt, damit dies anders ist Parachains können unterschiedliche Schonfristen genießen ihr Bedürfnis. 6.4. Relaisblöcke versiegeln. Unter Versiegelung versteht man im Wesentlichen zum Prozess der Kanonisierung; das heißt, Grunddaten welche umwandelnbildet das Original in etwas grundlegend Einzigartiges und Bedeutsames ab. Unter einer PoW-Kette, Versiegelung ist gewissermaßen ein Synonym für Bergbau. In unserem Fall, Dabei handelt es sich um die Sammlung signierter Aussagen von validators über die Gültigkeit, Verfügbarkeit und Kanonizität von a bestimmter Relay-Chain-Block und die Parachain blockiert diesen es repräsentiert. Die Mechanik des zugrunde liegenden Konsensalgorithmus BFT liegt außerhalb des Rahmens dieser Arbeit. Das werden wir Beschreiben Sie es stattdessen mit einem Grundelement, das a annimmt konsensschaffende Staatsmaschine. Letztlich erwarten wir sich von einer Reihe vielversprechender BFT Konsens inspirieren zu lassen Algorithmen im Kern; Tangaora [9] (eine BFT Variante von Raft [16]), Tendermint [11] und HoneyBadgerBFT [14]. Der Algorithmus muss eine Einigung über mehrere Parachains parallel erzielen und unterscheidet sich somit vom Üblichen blockchain Konsensmechanismen. Wir gehen davon einmal aus Sobald ein Konsens erreicht ist, können wir den Konsens aufzeichnen in einem unwiderlegbaren Beweis, der von jedem erbracht werden kann die Teilnehmer dazu. Auch wir gehen von Fehlverhalten aus innerhalb des Protokolls kann generell auf ein kleines Maß reduziert werden Gruppe mit Teilnehmern, die sich schlecht benehmen, sollte minimiert werden der Kollateralschaden bei der Strafzumessung.8 Der Beweis, der die Form unserer signierten Aussagen annimmt, wird zusammen im Header des Relay-Chain-Blocks platziert mit bestimmten anderen Feldern, nicht zuletzt dem Statetrie-Root und dem Transaction-Trie-Root der Relay-Kette. Die Versiegelung Prozess dauert Ort unter a Single konsensgenerierend Mechanismus Adressierung beides die Der Block der Relay-Chain und die Blöcke der Parachains, die machen Teil des Inhalts des Relays: Parachains werden von ihren Untergruppen nicht separat „festgeschrieben“ und dann zusammengestellt später. Dies führt zu einem komplexeren Prozess für die Relaychain, ermöglicht es uns aber, den Konsens des gesamten Systems in einer einzigen Phase zu vervollständigen, wodurch die Latenz minimiert und ermöglicht wird für recht komplexe Datenverfügbarkeitsanforderungen hilfreich für den Routing-Prozess unten. 8Bestehende PoS-basierte BFT-Konsensschemata wie Tendermint BFT und der ursprüngliche Slasher erfüllen diese Behauptungen.

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 12 Der Zustand der Konsensmaschine jedes Teilnehmers kann sein als einfache (zweidimensionale) Tabelle modelliert werden. Jeder Teilnehmer (validator) verfügt über eine Reihe von Informationen im Formular von unterzeichneten Erklärungen („Stimmen“) anderer Teilnehmer zu jedem Parachain-Block-Kandidaten sowie zum Relaychain-Block-Kandidaten. Der Informationssatz besteht aus zwei Teilen der Daten: Verfügbarkeit: tut dies validator habe Ausgang Transaktions-Post-Informationen aus diesem Block also Sind sie in der Lage, Parachain-Kandidaten im folgenden Block ordnungsgemäß zu validieren? Sie dürfen abstimmen entweder 1 (bekannt) oder 0 (noch nicht bekannt). Sobald sie Stimme 1, sie sind entschlossen, in ähnlicher Weise dafür zu stimmen der Rest dieses Prozesses. Spätere Abstimmungen, bei denen dies nicht der Fall ist Respekt, das ist ein Strafgrund. Gültigkeit: Ist der Parachain-Block gültig und ist alles? extern referenzierte Daten (z.B. Transaktionen) verfügbar? Dies ist nur für validators relevant, die der Parachain zugeordnet sind, über die sie abstimmen. Sie können entweder mit 1 (gültig), -1 (ungültig) oder 0 stimmen (noch nicht bekannt). Sobald sie ungleich Null stimmen, sind sie sind entschlossen, für den Rest auf diese Weise abzustimmen der Prozess. Spätere Abstimmungen, die dies nicht respektieren sind Strafgründe. Alle validators müssen Stimmen abgeben; Abstimmungen können unter Einhaltung der oben genannten Regeln erneut eingereicht werden. Der Fortschritt von Der Konsens kann als mehrere Standardkonsensalgorithmen über jede Parachain modelliert werden, die parallel stattfinden. Da diese möglicherweise durch eine relativ vereitelt werden Eine kleine Minderheit böswilliger Akteure konzentriert sich darauf Es besteht allgemeiner Konsens darüber, dass es sich um eine einzelne Parachain-Gruppe handelt Richten Sie eine Rücksicherung ein, um das Worst-Case-Szenario einzudämmen Deadlock zu lediglich einem oder mehreren ungültigen Parachain-Blöcken (und eine Runde der Bestrafung der Verantwortlichen). Die Grundregeln für die Gültigkeit der einzelnen Blöcke (Damit kann die Gesamtmenge der validators als Ganzes erreicht werden Konsens darüber, dass es der einzigartige Parachain-Kandidat wird vom kanonischen Relay referenziert werden): • Es müssen mindestens zwei Drittel der validators positiv und keines davon negativ stimmen; • Es muss mehr als ein Drittel der validators geben, die positiv über die Verfügbarkeit von Informationen zur Ausgangswarteschlange stimmen. Gibt es mindestens ein positives und mindestens ein negatives Votum zur Gültigkeit, entsteht eine Ausnahmebedingung und die gesamte Gruppe von validators muss abstimmen, um zu entscheiden wenn es böswillige Parteien gibt oder wenn ein Unfall vorliegt Gabel. Neben gültigen und ungültigen Stimmen gibt es noch eine dritte Art von Stimmen sind erlaubt, gleichbedeutend damit, für beide zu stimmen, was bedeutet, dass Der Knoten hat widersprüchliche Meinungen. Dies könnte daran liegen Der Eigentümer des Knotens führt mehrere Implementierungen aus, die dies tun nicht einverstanden, was auf eine mögliche Unklarheit im Protokoll hinweist. Nachdem alle Stimmen aus dem gesamten validator-Satz gezählt wurden, wenn die unterlegene Meinung hat zumindest einen kleinen Anteil (zu parametrisiert sein; höchstens die Hälfte, vielleicht deutlich weniger) der Stimmen der siegreichen Meinung, dann wird davon ausgegangen Wenn es sich um eine versehentliche Parachain-Gabel handelt, wird die Parachain automatisch vom Konsensprozess ausgeschlossen. Andernfalls gehen wir davon aus, dass es sich um eine böswillige Handlung handelt und ahnden diese Minderheit, die für die abweichende Meinung stimmte. Den Abschluss bildet eine Reihe demonstrierender Unterschriften Kanonizität. Anschließend kann der Relaiskettenblock versiegelt werden und der Prozess der Versiegelung des nächsten Blocks begann. 6.5. Verbesserungen beim Versiegeln von Relaisblöcken. Während Diese Dichtungsmethode bietet starke Garantien für den Systembetrieb, sie lässt sich jedoch nicht besonders gut skalieren da die Schlüsselinformationen jeder Parachain ihre eigenen haben müssen Verfügbarkeit garantiert von über einem Drittel aller validators. Dies bedeutet, dass der Verantwortungs-Fußabdruck jedes validator wächst, wenn weitere Ketten hinzugefügt werden. Während Datenverfügbarkeit innerhalb offener Konsensnetzwerke Da es sich im Wesentlichen um ein ungelöstes Problem handelt, gibt es Möglichkeiten, den Overhead für validator-Knoten zu verringern. Eine einfache Die Lösung besteht darin, zu erkennen, dass validators zwar schultern müssen Obwohl sie die Verantwortung für die Datenverfügbarkeit tragen, müssen sie die Daten nicht selbst speichern, kommunizieren oder replizieren. Sekundäre Datensilos, möglicherweise im Zusammenhang mit (oder sogar im selben Zusammenhang). (gleiche) Erfasser, die diese Daten zusammenstellen, dürfen die verwalten Die Aufgabe besteht darin, die Verfügbarkeit zu gewährleisten, wobei die validators einen Teil ihrer Zinsen/Einnahmen als Zahlung leisten. Obwohl dies zwar eine gewisse mittlere Skalierbarkeit erkaufen könnte, löst es das zugrunde liegende Problem jedoch nicht. seitdem Das Hinzufügen weiterer Ketten erfordert im Allgemeinen zusätzliche validators, der laufende Netzwerkressourcenverbrauch (insbesondere in Bezug auf die Bandbreite) wächst mit dem Quadrat von dieKetten, eine auf Dauer unhaltbare Eigenschaft. Letztendlich werden wir uns wahrscheinlich weiterhin den Kopf zerbrechen gegen die grundlegende Einschränkung, die das besagt Ein Konsensnetzwerk gilt als verfügbar und sicher Der laufende Bandbreitenbedarf liegt in der Größenordnung von insgesamt validators mal die gesamten Eingabeinformationen. Das liegt daran die Unfähigkeit eines nicht vertrauenswürdigen Netzwerks, die Aufgabe der Datenspeicherung ordnungsgemäß auf viele Knoten zu verteilen, die sitzen abgesehen von der eminent verteilbaren Aufgabe der Verarbeitung. 6.5.1. Einführung in die Latenz. Eine Möglichkeit, dies abzumildern Die Regel besteht darin, den Begriff der Unmittelbarkeit zu lockern. Indem wir verlangen, dass 33 %+1 validators nur irgendwann und nicht sofort für die Verfügbarkeit stimmen, können wir die exponentielle Datenausbreitung besser nutzen und dazu beitragen, Spitzen beim Datenaustausch auszugleichen. Eine vernünftige Gleichheit (wenn auch unbewiesen) kann sein: (1) Latenz = Teilnehmer × Ketten Unter dem aktuellen Modell skaliert die Größe des Systems mit der Anzahl der Ketten, um sicherzustellen, dass die Verarbeitung erfolgt verteilt; da jede Kette mindestens einen validator benötigt und wir den Verfügbarkeitsnachweis auf eine Konstante festlegen Anteil von validators, dann wächst die Zahl der Teilnehmer ebenfalls mit der Anzahl der Ketten. Am Ende haben wir: (2) Latenz = Größe2 Das heißt, wenn das System wächst, sind die erforderliche Bandbreite und die Latenz bis zur Verfügbarkeit überall bekannt Netzwerk, das auch als Nummer bezeichnet werden könnte der Blöcke vor der Endgültigkeit, wächst mit seinem Quadrat. Das ist Es ist ein erheblicher Wachstumsfaktor und könnte sich als erhebliches Hindernis erweisen und uns in „nicht flache“ Paradigmen zwingen wie zum Beispiel das Zusammenstellen mehrerer „Polkadotes“ in einer Hierarchie für die mehrstufige Weiterleitung von Posts durch einen Baum von Relaychains.

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 13 6.5.2. Öffentlichkeitsbeteiligung. Eine weitere mögliche Richtung ist die Einbeziehung der Öffentlichkeit in den Prozess durch a Mikro-Beschwerdesystem. Ähnlich wie die Fischer dort könnten externe Parteien sein, die die validators überwachen, die Ansprüche geltend machen Verfügbarkeit. Ihre Aufgabe besteht darin, jemanden zu finden, der offenbar nicht in der Lage ist, eine solche Verfügbarkeit nachzuweisen. Dabei tun sie kann eine Mikrobeschwerde bei anderen validators einreichen. PoW oder Eine abgesteckte Anleihe kann verwendet werden, um den Sybil-Angriff abzuschwächen was das System weitgehend unbrauchbar machen würde. 6.5.3. Verfügbarkeitsgarantien. Ein letzter Weg wäre Nominieren Sie einen zweiten Satz gebundener validators als „Verfügbarkeit“. Bürgen“. Diese werden wie die normalen validators verklebt und können sogar aus demselben Set stammen (In diesem Fall würden sie jedoch über einen langfristigen Zeitraum ausgewählt, zumindest pro Sitzung). Im Gegensatz zu normalen validators sind sie würde nicht zwischen Parachains wechseln, sondern eher Bilden Sie eine einzige Gruppe, um die Verfügbarkeit aller wichtigen Interchain-Daten zu bestätigen. Dies hat den Vorteil, dass die Äquivalenz zwischen Teilnehmern und Ketten gelockert wird. Im Wesentlichen können Ketten wachsen (zusammen mit der ursprünglichen Kette validator gesetzt), wohingegen Die Teilnehmer, und insbesondere diejenigen, die am Test zur Datenverfügbarkeit teilnehmen, können zumindest sublinear bleiben und möglicherweise konstant. 6.5.4. Collator-Einstellungen. Ein wichtiger Aspekt dabei Das System besteht darin, sicherzustellen, dass es eine gesunde Auswahl gibt Collatoren, die die Blöcke in einer beliebigen Parachain erstellen. Wenn ein Ein einzelner Collator dominierte eine Parachain und dann einige Angriffe machbarer werden, da die Wahrscheinlichkeit des Mangels an Die Verfügbarkeit externer Daten wäre weniger offensichtlich. Eine Möglichkeit besteht darin, Parachain-Blöcke künstlich zu beschweren ein pseudozufälliger Mechanismus, um eine große Vielfalt an Collatoren zu begünstigen. Im ersten Fall würden wir verlangen als Teil des Konsensmechanismus, den validators bevorzugen Parachain-Block-Kandidaten gelten als „schwerer“. Ebenso müssen wir validators dazu anregen, es zu versuchen Schlagen Sie den schwersten Block vor, den sie finden können – das könnte sein Dies geschieht, indem ein Teil ihrer Belohnung proportional zum Gewicht ihres Kandidaten gemacht wird. Um sicherzustellen, dass den Zusammenstellern eine angemessene Fairness geboten wird Chance, dass ihr Kandidat als Sieger ausgewählt wird Kandidaten im Konsens, wir machen das spezifische Gewicht von a Parachain-Blockkandidaten bestimmen anhand einer Zufallsfunktion, die mit jedem Collator verbunden ist. Zum Beispiel nehmen das XOR-Abstandsmaß zwischen der Adresse des Sortierers und eine kryptografisch sichere Pseudozufallszahl nahe dem Punkt des zu erstellenden Blocks bestimmt (ein fiktives „Gewinnticket“). Dies gibt effektiv jedem Zusammensteller (oder genauer gesagt die Adresse jedes Zusammenstellers) a zufällige Chance, dass ihr Kandidatenblock „siegt“. alle anderen. Um den Sybil-Angriff eines einzelnen Collators abzuschwächen, der eine Adresse in der Nähe des Gewinnscheins „schürft“ und sich somit befindet Wenn wir jeden Block zu einem Favoriten machen, fügen wir der Adresse eines Collators etwas Trägheit hinzu. Das kann so einfach sein, wie sie zu verlangen um einen Grundbetrag an Mitteln in der Adresse zu haben. Ein mehr Ein eleganter Ansatz wäre es, die Nähe zum zu gewichten Gewinnschein mit dem auf dem geparkten Geldbetrag Adresse in Frage. Während die Modellierung noch aussteht, Es ist durchaus möglich, dass dieser Mechanismus sogar sehr viel ermöglicht kleine Stakeholder, die als Zusammensteller mitwirken können. 6.5.5. Übergewichtige Blockaden. Wenn ein validator-Set kompromittiert ist, können sie einen Block erstellen und vorschlagen, der jedoch funktioniert gültig, die Ausführung nimmt übermäßig viel Zeit in Anspruch und validieren. Dies ist ein Problem, da eine validator-Gruppe dies könnte vernünftigerweise einen Block bilden, dessen Herstellung sehr lange dauert ausführen, es sei denn, eine bestimmte Information ist bereits bekannt und ermöglicht eine Abkürzung, z. B. Faktorisierung eines großen Primzahl. Wenn ein einzelner Zusammensteller diese Informationen wüsste, dann Sie hätten einen klaren Vorteil, wenn sie ihre eigenen bekämen Kandidaten nahmen an, solange die anderen mit der Bearbeitung des alten Blocks beschäftigt waren. Wir nennen diese Blöcke Übergewicht. Der Schutz vor der Übermittlung und Validierung dieser Blöcke durch validators erfolgt größtenteils unter dem gleichen Deckmantel wie für ungültige Blöcke, jedoch mit einer zusätzlichen Einschränkung: Da die Zeit, die zum Ausführen eines Blocks benötigt wird (und damit sein Status als). Übergewicht) ist subjektiv, das Endergebnis einer Abstimmung Fehlverhalten lässt sich im Wesentlichen in drei Lager einteilen. Eins Es besteht die Möglichkeit, dass der Block definitiv nicht übergewichtig ist. in diesem Fall erklären mehr als zwei Drittel, dass sie es könnten Führen Sie den Block innerhalb einer bestimmten Grenze aus (z. B. 50 % der zwischen den Blöcken zulässigen Gesamtzeit). Ein weiterer Grund ist, dass die Block ist ddefinitiv übergewichtig – das wäre, wenn mehr als Zwei Drittel erklären, dass sie den Block nicht ausführen konnten innerhalb dieser Grenze. Eine letzte Möglichkeit ist eine ziemlich gleiche Meinungsverschiedenheit zwischen validators. In diesem Fall können wir sich dafür entscheiden, eine angemessene Strafe zu verhängen. Um sicherzustellen, dass validators vorhersagen können, wann dies der Fall sein wird Wenn Sie einen übergewichteten Block vorschlagen, kann es sinnvoll sein, von ihnen zu verlangen, dass sie Informationen über ihre eigene Leistung für jeden Block veröffentlichen. Über einen ausreichenden Zeitraum hinweg Dies sollte es ihnen ermöglichen, ihre Verarbeitungsgeschwindigkeit zu profilieren im Vergleich zu den Kollegen, die sie beurteilen würden. 6.5.6. Collator-Versicherung. Ein Problem bleibt für validators bestehen: Anders als bei PoW-Netzwerken, um die eines Collators zu überprüfen Um die Gültigkeit eines Blocks zu gewährleisten, müssen sie die darin enthaltenen Transaktionen tatsächlich ausführen. Böswillige Sortierer können ungültige oder übergewichtige Blöcke an validators weiterleiten, was ihnen Kummer (Verschwendung) bereitet ihre Ressourcen) und möglicherweise erhebliche Opportunitätskosten verursachen. Um dies zu mildern, schlagen wir eine einfache Strategie vor Teil von validators. Zunächst werden Kandidaten für den Parachain-Block gesendet bis validators müssen von einem Relay-Chain-Konto signiert werden mit Mitteln; Ist dies nicht der Fall, sollte validator gelöscht werden es sofort. Zweitens sollten solche Kandidaten durch eine Kombination (z. B. Multiplikation) von priorisiert werden der Betrag des Guthabens auf dem Konto bis zu einer gewissen Obergrenze, die Anzahl der vorherigen Blöcke, die der Collator in der Vergangenheit erfolgreich vorgeschlagen hat (ganz zu schweigen von den vorherigen). Strafen) und der Nähefaktor zum Gewinner Ticket wie zuvor besprochen. Die Kappe sollte gleich sein als Strafschadenersatz, der in diesem Fall an validator gezahlt wurde von ihnen sendet einen ungültigen Block. Um Sortierer davon abzuhalten, ungültige oder übergewichtige Blockkandidaten an validators zu senden, kann jeder validator dies tun Platzieren Sie im nächsten Block eine Transaktion, einschließlich des beleidigenden Blocks, in dem ein Fehlverhalten behauptet wird, mit der Folge, dass einige oder alle Gelder in den sich schlecht benehmenden Zusammensteller übertragen werden Konto an den Geschädigten validator. Diese Art von Transaktion geht allen anderen voraus, um sicherzustellen, dass der Collator dies nicht kann Entfernen Sie die Gelder vor der Bestrafung. Die Menge an Die Höhe der als Schadensersatz überwiesenen Gelder ist noch ein dynamischer Parameter

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 14 muss modelliert werden, wird aber wahrscheinlich ein Teil der Blockbelohnung validator sein, um das Ausmaß der verursachten Trauer widerzuspiegeln. Zu Um zu verhindern, dass böswillige validators die Gelder der Sammler willkürlich beschlagnahmen, kann der Sammler im Gegenzug bei einer Jury aus zufällig ausgewählten validators gegen die Entscheidung des validator Berufung einlegen für die Hinterlegung einer kleinen Anzahlung. Wenn sie zugunsten des validator entscheiden, wird die Kaution von ihnen verbraucht. Wenn nicht, wird die Die Kaution wird zurückerstattet und der validator wird mit einer Geldstrafe belegt (da der validator ist in einer viel gewölbteren Position, der feine Wille wahrscheinlich ziemlich heftig sein). 6.6. Interchain Transaktion Routenführung. Interchain Das Transaktionsrouting ist eine der wesentlichen Wartungsarbeiten Aufgaben der Relay-Chain und ihrer validators. Das ist das Logik, die regelt, wie eine gebuchte Transaktion (oft mit einfach „Buchung“ abgekürzt) zu einer gewünschten Ausgabe wird von einer Quell-Parachain zu einem nicht verhandelbaren Input einer anderen Ziel-Parachain ohne jegliches Vertrauen Anforderungen. Wir wählen die obige Formulierung sorgfältig aus; vor allem wir Es ist nicht erforderlich, dass in der Quelle eine Transaktion stattgefunden hat Parachain hat diesen Beitrag ausdrücklich genehmigt. Der Einzige Die Einschränkungen, die wir unserem Modell auferlegen, sind Parachains bereitgestellt werden müssen, verpackt als Teil ihres Gesamtblocks Verarbeitungsausgabe, die Beiträge, die das Ergebnis der sind Blockausführung. Diese Posts sind als mehrere FIFO-Warteschlangen strukturiert; die Die Anzahl der Listen wird als Routing-Basis bezeichnet und kann sein etwa 16. Bemerkenswert ist, dass diese Zahl die Menge darstellt von Parachains, die wir unterstützen können, ohne darauf zurückgreifen zu müssen Mehrphasen-Routing. Zunächst wird Polkadot dies unterstützen Art der direkten Weiterleitung, wir werden jedoch eine Möglichkeit skizzieren Mehrphasen-Routing-Verfahren („Hyper-Routing“) als Mittel der Skalierung weit über den anfänglichen Satz von Parachains hinaus. Wir annehmen das alle Teilnehmer wissen die Untergruppierungen für die nächsten beiden Blöcke n, n + 1. Zusammenfassend lässt sich sagen, dass die Das Routing-System folgt diesen Schritten: • CollatorS: Kontaktieren Sie Mitglieder von V alidators[n][S] • CollatorS: FÜR JEDE Untergruppe: Stellen Sie sicher, dass at Mindestens 1 Mitglied von Validators[n][s] in Kontakt • Sortierer: FÜR JEDE Untergruppe s: annehmen egress[n −1][s][S] ist verfügbar (alle eingehenden Beiträge). Daten an „S“ vom letzten Block) • Sortierer: Verfassen Sie den Blockkandidaten b für S: (b.header, b.ext, b.proof, b.receipt, b.egress) • Sortierer: Senden Beweis Informationen Beweis[S] = (b.header, b.ext, b.proof, b.receipt) zu Validatoren[n][S] • CollatorS: Sicherstellung externer Transaktionsdaten b.ext wird anderen Sortierern und validators zur Verfügung gestellt • Sortierer: FÜR JEDER Untergruppe s: Senden Ausgang Informationen Ausgang[n][S][s] = (b.header, b.receipt, b.egress[s]) zu die Empfangen Untergruppen Mitglieder von als nächstes blockieren Validatoren[n + 1][s] • ValidatorV: Alle Mitglieder derselben Gruppe vorab verbinden für den nächsten Block: sei N = Chain[n + 1][V ]; verbinden alle validators v so dass Chain[n + 1][v] = N • ValidatorV: Sammeln Sie dazu alle eingehenden Daten Block: FÜR JEDER Untergruppe s: Abrufen egress[n −1][s][Chain[n][V ]], erhalte von anderen validators v, so dass Chain[n][v] = Chain[n][V ]. Möglicherweise werden zufällig ausgewählte andere validators zum Nachweis des Versuchs herangezogen. • ValidatorV: Akzeptieren Sie hierfür Kandidatennachweise Blockbeweis[Kette[n][V ]]. Gültigkeit des Abstimmungsblocks • ValidatorV: Akzeptieren Sie die Ausgangsdaten des Kandidaten für nächster Block: Akzeptieren Sie für jede Untergruppe Ausgang[n][s][N]. Verfügbarkeit von Vote-Block-Ausgangsdaten; unter interessierten validators erneut veröffentlichen v so dass Kette[n + 1][v] = Kette[n + 1][V ]. • V alidatorV: BIS ZUM KONSENS Wobei: egress[n][from][to] die aktuelle Ausgangswarteschlange ist Informationen für Beiträge, die von Parachain „von“ zu „gehen“. Parachain „to“ in Blocknummer „n“. CollatorS ist ein Collator für Parachain S. V alidators[n][s] ist die Menge von validators für Parachain s bei Blocknummer n. Umgekehrt, Chain[n][v] ist die Parachain, der validator v im Block Nummer n zugewiesen ist. block.egress[to] ist der Ausgang Warteschlange mit Beiträgen von einem Parachain-Blockblock, dessen Ziel Parachain ist. Da Collators (Transaktions-)Gebühren auf der Grundlage von erheben Ihre Blöcke werden kanonisch, zu denen sie einen Anreiz haben Stellen Sie sicher, dass für jedes nächste Blockziel die Untergruppe Mitglieder werden ab sofort über die Ausgangswarteschlange informiert blockieren. Validatoren werden nur dazu angeregt, einen Konsens über einen (Parachain-)Block zu erzielen, und kümmern sich daher wenig darum welcher Collator-Block letztendlich kanonisch wird. In Prinzipiell könnte ein validator eine Allianz mit einem Sammler eingehen und sich verschwören, um die Chancen anderer Sammler zu verringern. Blöcke werden kanonisch, aber das ist beides schwierig aufgrund der Zufallsauswahl zu arrangierenFunktion von validators für Parachains und könnten mit einer Reduzierung der Gebühren für Parachain-Blöcke, die sich halten, abgewehrt werden der Konsensprozess. 6.6.1. Externe Datenverfügbarkeit. Sicherstellung eines Fallschirms Die Frage, ob externe Daten tatsächlich verfügbar sind, ist ein Dauerproblem dezentrale Systeme, die darauf abzielen, die Arbeitslast zu verteilen das Netzwerk. Im Kern geht es um die Verfügbarkeit Problem, das besagt, dass dies nicht möglich ist Erstellen Sie einen nicht interaktiven Verfügbarkeitsnachweis noch irgendeiner Art des Nachweises der Nichtverfügbarkeit, damit ein BFT-System ordnungsgemäß funktioniert Validieren Sie jeden Übergang, dessen Richtigkeit davon abhängt Verfügbarkeit einiger externer Daten, die maximale Anzahl von akzeptablen byzantinischen Knoten plus einem des Systems muss bescheinigen, dass die Daten verfügbar sind. Damit ein System wie Polkadot ordnungsgemäß skaliert werden kann, ist Folgendes erforderlich Lädt ein Problem ein: wenn ein konstanter Anteil von validators muss die Verfügbarkeit der Daten bescheinigen und davon ausgehen dass validators die Daten tatsächlich speichern wollen, bevor sie behaupten, dass sie verfügbar sind, wie können wir das dann vermeiden? Problem, dass der Bandbreiten-/Speicherbedarf mit der Systemgröße (und damit der Anzahl der validators) zunimmt? Eine mögliche Antwort wäre ein separates Set von validators (Verfügbarkeitsgaranten), deren Bestellung wächst sublinear mit der Größe von Polkadot als Ganzes. Das ist beschrieben in 6.5.3. Wir haben auch einen sekundären Trick. Als Gruppe haben die Zusammensteller einen intrinsischen Anreiz, dafür zu sorgen, dass alle Daten vorhanden sind verfügbar für ihre gewählte Parachain, da sie ohne diese sind nicht in der Lage, weitere Blöcke zu erstellen, aus denen sie können Transaktionsgebühren erheben. Auch die Zusammensteller bilden eine Gruppe, deren Mitgliederzahl unterschiedlich ist (aufgrund der Zufälligkeit). Parachain validator Gruppen) nicht trivial und einfach einzugeben

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 15 zu beweisen. Aktuelle Collatoren (vielleicht der letzten paar tausend Blöcke) dürfen daher Herausforderungen an stellen die Verfügbarkeit externer Daten für eine bestimmte Parachain Block an validators für eine kleine Kaution. Validatoren müssen diejenigen aus der offensichtlich beleidigenden validator-Untergruppe kontaktieren, die ausgesagt haben, und entweder die Daten beschaffen und an den Ermittler zurücksenden oder die Sache eskalieren Sachverhalt durch Aussage über die mangelnde Verfügbarkeit (die direkte Weigerung, die Daten bereitzustellen, gilt als Straftat zur Beschlagnahmung von Anleihen, daher wird der sich schlecht benehmende validator wahrscheinlich gerechtfertigt sein). Trennen Sie die Verbindung) und kontaktieren Sie weitere validators um den gleichen Test durchzuführen. Im letzteren Fall die Bürgschaft des Gläubigers wird zurückgegeben. Sobald ein Quorum von validators erreicht ist, die solche Nichtverfügbarkeitszeugnisse abgeben können, werden sie freigelassen Eine sich schlecht benehmende Untergruppe wird bestraft und die Sperre aufgehoben. 6.6.2. Weiterleitung von Beiträgen. Jeder Parachain-Header enthält eine Egress-Trie-Root; Dies ist die Wurzel eines Versuchs, der das enthält Routing-basierte Bins, wobei jede Bin eine verkettete Liste ist von Egress-Posts. Merkle-Beweise können quer vorgelegt werden Parachain validators, um zu beweisen, dass es sich um eine bestimmte Parachain handelt Der Block hatte eine bestimmte Ausgangswarteschlange für eine bestimmte Zielparachain. Zu Beginn der Verarbeitung jeweils ein Parachain-Block Die Ausgangswarteschlange einer anderen Parachain ist für diesen Block bestimmt in die Eingangswarteschlange unseres Blocks eingefügt. Wir gehen von starken, wahrscheinlich CSPR9, Unterblockreihenfolge, um eine deterministische Operation zu erreichen, die keine Bevorzugung zwischen irgendwelchen bietet Paarung von Parachain-Blöcken. Collators berechnen die neue Warteschlange und entleeren Sie die Ausgangswarteschlangen entsprechend der Parachain Logik. Der Inhalt der Eingangswarteschlange wird explizit geschrieben in den Parachain-Block. Dies hat zwei Hauptzwecke: Erstens bedeutet dies, dass die Parachain isoliert von den anderen Parachains vertrauenswürdig synchronisiert werden kann. Zweitens, Es vereinfacht die Datenlogistik für den gesamten Eingang Warteschlange kann nicht in einem einzelnen Block verarbeitet werden; validators und Collators können folgende Blöcke verarbeiten ohne die Daten der Warteschlange speziell beschaffen zu müssen. Wenn die Eingangswarteschlange der Parachain über einem Schwellenwert liegt Betrag am Ende der Blockverarbeitung, dann wird er markiert Die Relaiskette ist gesättigt und es dürfen keine weiteren Nachrichten gesendet werden bis zur Freigabe an ihn geliefert werden. Merkle-Beweise sind Wird verwendet, um die Betriebstreue des Zusammentragers zu demonstrieren der Beweis des Parachain-Blocks. 6.6.3. Kritik. Ein kleiner Fehler in Bezug auf dieses Basic Mechanismus ist der Post-Bomben-Anschlag. Hier ist alles Parachains senden die größtmögliche Anzahl an Beiträgen zu einer bestimmten Parachain. Während dies das Ziel fesselt Ingress-Warteschlange auf einmal, es entsteht kein darüber hinausgehender Schaden ein Standard-Transaktions-DoS-Angriff. Normaler Betrieb, mit einer Reihe gut synchronisierter und nicht böswillige Collators und validators, für N Parachains, N × M insgesamt validators und L Collatoren pro Parachain, wir kann die gesamten Datenpfade pro Block aufschlüsseln in: Validator: M −1+L+L: M −1 für die anderen validators im Parachain-Satz L für jeden Collator, der einen Kandidaten-Parachain-Block bereitstellt, und ein zweites L für jeden Collator des nächsten Blocks, der die Ausgangsnutzlasten des vorherigen Blocks erfordert. (Letzteres entspricht eher dem schlimmsten Fall Betrieb, da es wahrscheinlich ist, dass Sortierer diesen gemeinsam nutzen werden Daten.) Collator: M + kN: M für eine Verbindung zu jedem relevanten Parachain-Block validator, kN zum Seeding der Ausgangsnutzlasten an eine Teilmenge jeder Parachain-validator-Gruppe für der nächste Block (und möglicherweise einige bevorzugte Collator(s)). Daher wachsen die Datenpfadwege pro Knoten linear mit der Gesamtkomplexität des Systems. Während dies so ist angemessen, da das System in Hunderte oder Tausende von Parachains skaliert wird, kann es zu einer gewissen Kommunikationslatenz kommen im Austausch für eine geringere Komplexitätswachstumsrate absorbiert werden. In diesem Fall kann ein mehrphasiger Routing-Algorithmus verwendet werden um die Anzahl der momentanen Pfade zu reduzieren auf Kosten der Einführung von Speicherpuffern und Latenz. 6.6.4. Hyper-Cube-Routing. Hyper-Cube-Routing ist ein Mechanismus, der meist als Erweiterung zum erstellt werden kann oben beschriebener grundlegender Routing-Mechanismus. Im Wesentlichen, Anstatt die Knotenkonnektivität mit der Anzahl der Parachains und Untergruppenknoten zu erhöhen, wachsen wir nur mit der Logarithmus von Parachains. Beiträge können zwischen diesen verschoben werden Mehrere Parachain-Warteschlangen auf dem Weg zur endgültigen Lieferung. Das Routing selbst ist deterministisch und einfach. Wir beginnen mit Begrenzung der Anzahl der Bins in den Eingangs-/Ausgangswarteschlangen; anstatt die Gesamtzahl der Parachains zu sein, sie sind dieRouting-Basis (b) . Dies wird als Nummer festgelegt von Parachains ändert sich, wobei stattdessen der Routing-Exponent (e) erhöht wird. Unter diesem Modell ist unser Nachrichtenvolumen wächst mit O(be), wobei die Pfade konstant bleiben und die Latenz (oder Anzahl der für die Zustellung erforderlichen Blöcke) mit O(e). Unser Routing-Modell ist ein Hyperwürfel mit E-Dimensionen. wobei jede Seite des Würfels b mögliche Orte hat. In jedem Block leiten wir Nachrichten entlang einer einzelnen Achse weiter. Wir alternieren die Achsen im Round-Robin-Verfahren und garantieren so die Lieferzeit von e-Blöcken im ungünstigsten Fall. Im Rahmen der Parachain-Verarbeitung fremdgebunden Nachrichten, die in der Eingangswarteschlange gefunden werden, werden sofort an den entsprechenden Bin der Ausgangswarteschlange weitergeleitet aktuelle Blocknummer (und damit Routingdimension). Dies Der Prozess erfordert eine zusätzliche Datenübertragung für jeden Hop Auf dem Lieferweg ist dies jedoch selbst ein Problem Dies kann durch den Einsatz alternativer Mittel gemildert werden der Daten-Nutzdatenlieferung und enthält nur eine Referenz, und nicht die volle Nutzlast des Posts im Post-Trie. Ein Beispiel für ein solches Hyper-Cube-Routing für ein System mit 4 Parachains könnte b = 2 und e = 2 sein: Phase 0, bei jeder Nachricht M: • sub0: wenn Mdest ∈{2, 3} dann sendTo(2) sonst behalten • sub1: wenn Mdest ∈{2, 3} dann sendTo(3) sonst behalten • sub2: wenn Mdest ∈{0, 1} dann sendTo(0) sonst behalten • sub3: wenn Mdest ∈{0, 1} dann sendTo(1) sonst behalten Phase 1, zu jeder Nachricht M: • sub0: wenn Mdest ∈{1, 3} dann sendTo(1) sonst behalten • sub1: wenn Mdest ∈{0, 2} dann sendTo(0) sonst behalten • sub2: wenn Mdest ∈{1, 3} dann sendTo(3) sonst behalten • sub3: wenn Mdest ∈{0, 2} dann sendTo(2) sonst behalten Die beiden Dimensionen sind hier als erste leicht zu erkennen zwei Bits des Zielindex; für den ersten Block die Es wird nur das höherwertige Bit verwendet. Der zweite Block befasst sich mit dem niederwertigen Bit. Sobald beides geschieht (in beliebiger Reihenfolge). Bestellung), dann wird die Post weitergeleitet. 9kryptografisch sicheres Pseudozufälliges

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 16 6.6.5. Maximierung des Zufalls. Eine Änderung des Grundprinzips Der Vorschlag würde eine feste Gesamtzahl von c2 −c validators vorsehen, mit c−1 validators in jeder Untergruppe. Jeder Block, anstatt Es findet eine unstrukturierte Neupartitionierung von validators statt unter Parachains, stattdessen für jede Parachain-Untergruppe, Jeder validator würde einem eindeutigen und anderen Objekt zugeordnet werden Parachain-Untergruppe im folgenden Block. Das würde führen zur Invariante dass zwischen zwei beliebigen Blöcken für jeden Bei zwei Parachain-Paarungen gibt es zwei validators, die haben die Parachain-Verantwortlichkeiten getauscht. Dies kann jedoch nicht dazu genutzt werden, absolute Garantien für die Verfügbarkeit zu erhalten (Ein einzelner validator wird gelegentlich offline gehen, auch wenn wohlwollend), kann es dennoch den Gesamtfall optimieren. Dieser Ansatz ist nicht ohne Komplikationen. Auch die Hinzufügung einer Parachain würde eine Neuorganisation erfordern des validator-Sets. Darüber hinaus ist die Anzahl der validators, die an das Quadrat der Anzahl der Fallschirme gebunden ist, würde zunächst sehr klein anfangen und schließlich weit wachsen zu schnell und wird nach etwa 50 Parachains unhaltbar. Keines davon sind grundsätzliche Probleme. Im ersten Fall Eine Neuorganisation der validator-Sets ist etwas, das sein muss sowieso regelmäßig gemacht. Bezüglich der Größe des validator Wenn dieser Wert zu klein ist, können mehrere validators zugewiesen werden auf dieselbe Parachain anwenden, indem ein ganzzahliger Faktor auf die angewendet wird Gesamtsumme von validators. Ein mehrphasiger Routing-Mechanismus wie das in 6.6.4 besprochene Hypercube-Routing würde dies tun Verringern Sie den Bedarf an einer großen Anzahl von validators wenn es eine große Anzahl von Ketten gibt. 6.7. Parachain-Validierung. Der Hauptzweck eines validator besteht darin, als gut vernetzter Akteur zu bezeugen, dass es sich um einen Parachain handelt Der Block ist gültig, einschließlich, aber nicht beschränkt auf, alle Zustandsübergänge, alle externen Transaktionen einschließlich der Ausführung von alle wartenden Beiträge in der Eingangswarteschlange und den Endzustand der Ausgangswarteschlange. Der Prozess selbst ist ziemlich einfach. Sobald der validator den vorherigen Block versiegelt hat, sind sie frei mit der Arbeit an der Bereitstellung eines möglichen Parachain-Blocks zu beginnen Kandidat für die nächste Konsensrunde. Zunächst findet validator einen Parachain-Blockkandidaten über einen Parachain-Collator (im Folgenden beschrieben) oder einen solchen seiner Co-validators. Die Parachain-Block-Kandidatendaten Enthält den Header des Blocks, den Header des vorherigen Blocks, alle enthaltenen externen Eingabedaten (für Ethereum und Bitcoin werden solche Daten als Transaktionen bezeichnet, sie können jedoch im Prinzip beliebige Datenstrukturen für beliebige Zwecke umfassen), Ausgangswarteschlangendaten und interne Daten zum Nachweis der Zustandsübergangsgültigkeit (für Ethereum Dies wären die verschiedenen Status-/Speicher-Trie-Knoten, die zum Ausführen jeder Transaktion erforderlich sind. Experimentelle Beweise zeigen diesen vollständigen Datensatz für einen aktuellen Ethereum-Block höchstens ein paar Hundert KiB betragen. Gleichzeitig wird, falls noch nicht geschehen, der validator angezeigt Es wird versucht, Informationen zum Übergang des vorherigen Blocks abzurufen, zunächst aus dem Übergang des vorherigen Blocks validators und höher von allen validators, die für die unterzeichnen Verfügbarkeit der Daten. Sobald der validator einen solchen Kandidatenblock erhalten hat, Anschließend validieren sie es vor Ort. Der Validierungsprozess ist im Modul validator der Parachain-Klasse enthalten, a konsenssensitives Softwaremodul, das geschrieben werden muss für jede Implementierung von Polkadot (allerdings im Prinzip Eine Bibliothek mit einem C-ABI könnte dies einer einzelnen Bibliothek ermöglichen zwischen Implementierungen mit den entsprechenden geteilt werden Verringerung der Sicherheit aufgrund der Tatsache, dass es nur eine einzige „Referenz“-Implementierung gibt). Der Prozess nimmt den Header des vorherigen Blocks und überprüft seine Identität über die kürzlich vereinbarte Relay-Kette Block, in dem sein hash aufgezeichnet werden soll. Sobald die Gültigkeit des übergeordneten Headers festgestellt ist, wird die spezifische Parachain Die Validierungsfunktion der Klasse kann aufgerufen werden. Dies ist eine einzelne Funktion, die eine Reihe von Datenfeldern akzeptiert (ungefähr). die zuvor angegebenen) und die Rückgabe eines einfachen Booleschen Werts die Gültigkeit der Sperre verkünden. Die meisten dieser Validierungsfunktionen prüfen zunächst die Header-Felder, aus denen direkt abgeleitet werden kann der übergeordnete Block (z. B. übergeordneter Block hash, Nummer). Nachfolgend Dadurch füllen sie alle internen Datenstrukturen auf notwendig, um Transaktionen und/oder Beiträge zu bearbeiten. Für eine Ethereum-ähnliche Kette läuft dies auf das Auffüllen von a hinaus Versuchen Sie die Datenbank mit den Knoten, die dafür benötigt werden vollständige Ausführung der Transaktionen. Andere Kettentypen können möglicherweise vorhanden sein andere pReparaturmechanismen. Sobald dies erledigt ist, werden die Eingangsbeiträge und externen Transaktionen (oder was auch immer die externen Daten darstellen) angezeigt umgesetzt, ausbalanciert gemäß der Spezifikation der Kette. (A Eine sinnvolle Standardeinstellung könnte sein, dass alle Eingangsbeiträge erforderlich sein müssen verarbeitet werden, bevor externe Transaktionen bedient werden, dies sollte jedoch der Logik der Parachain überlassen bleiben.) Durch diesen Erlass wird es eine Reihe von Egress-Beiträgen geben erstellt und es wird überprüft, ob diese tatsächlich übereinstimmen der Kandidat des Collators. Endlich ist das richtig besiedelt Der Header wird mit dem Header des Kandidaten verglichen. Bei einem vollständig validierten Kandidatenblock ist der validator kann dann für den hash seines Headers stimmen und alle erforderlichen Validierungsinformationen an die Co-validators in seiner Untergruppe senden. 6.7.1. Parachain-Collatoren. Parachain-Collatoren sind ungebundene Betreiber, die einen Großteil der Aufgaben von Minern erfüllen in den heutigen blockchain Netzwerken. Sie sind spezifisch zu einer bestimmten Parachain. Um zu funktionieren, müssen sie Halten Sie sowohl die Relaiskette als auch die vollständige Synchronisierung aufrecht Parachain. Die genaue Bedeutung von „vollständig synchronisiert“ hängt von der Klasse der Parachain ab, umfasst jedoch immer den aktuellen Status der Eingangswarteschlange der Parachain. Im Fall von Ethereum geht es auch darum, zumindest aufrechtzuerhalten eine Merkle-Tree-Datenbank der letzten paar Blöcke, aber vielleicht umfassen auch verschiedene andere Datenstrukturen, einschließlich Bloom Filtert nach Kontoexistenz, Familieninformationen und Protokollierung Ausgänge und Reverse-Lookup-Tabellen für die Blocknummer. Es sorgt nicht nur dafür, dass die beiden Ketten synchronisiert bleiben, sondern sorgt auch dafür, dass die beiden Ketten synchronisiert bleiben Sie müssen auch nach Transaktionen „fischen“, indem Sie eine Transaktionswarteschlange unterhalten und ordnungsgemäß validierte Transaktionen akzeptieren aus dem öffentlichen Netz. Mit der Warteschlange und der Kette ist es so ist in der Lage, neue Kandidatenblöcke für die in jedem Block ausgewählten validators zu erstellen (deren Identität bekannt ist, da die Relaychain synchronisiert ist) und sie zusammen mit dem einzureichen diverse Zusatzinformationen wie z.B. Gültigkeitsnachweis, via das Peer-Netzwerk. Für seine Mühe erhebt es alle Gebühren im Zusammenhang mit den darin enthaltenen Transaktionen. Darum kreisen verschiedene Ökonomien Anordnung. In einem hart umkämpften Markt, wo es gibt Liegt ein Überschuss an Collatoren vor, ist es möglich, dass die Transaktion erfolgt Die Gebühren werden mit den Parachain-validators geteilt, um Anreize zu schaffen die Aufnahme eines bestimmten Collator-Blocks. Ähnlich,

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 17 Einige Kollektoren erheben möglicherweise sogar die erforderlichen Gebühren zu zahlen, um den Block attraktiver zu machen validators. In diesem Fall sollte sich ein natürlicher Markt bilden Bei Transaktionen, bei denen höhere Gebühren anfallen, entfällt die Warteschlange und eine schnellere Einbindung in die Kette. 6.8. Vernetzung. Networking auf traditionellen blockchains wie Ethereum und Bitcoin haben eher einfache Anforderungen. Alle Transaktionen und Blöcke werden in einem einfachen, ungerichteten Klatsch übertragen. Insbesondere die Synchronisierung ist aufwändiger mit Ethereum, aber in Wirklichkeit war diese Logik darin enthalten die Peer-Strategie und nicht das Protokoll selbst, das sich um einige Anforderungs- und Antwortnachrichtentypen drehte. Während Ethereum mit dem devp2p-Protokoll Fortschritte bei den aktuellen Protokollangeboten machte, was viele ermöglichte Unterprotokolle, die über eine einzelne Peer-Verbindung gemultiplext werden sollen und daher das gleiche Peer-Overlay haben, unterstützen viele P2P-Protokolle gleichzeitig, der Ethereum-Teil von Das Protokoll blieb immer noch relativ einfach und das P2P Das Protokoll bleibt eine Weile unvollendet und wichtig Es fehlen Funktionen wie QoS-Unterstützung. Leider besteht weitgehend der Wunsch, ein allgegenwärtigeres „Web 3“-Protokoll zu schaffen ist fehlgeschlagen, da die einzigen Projekte, die es explizit nutzen, diese sind finanziert durch den Crowd-Sale Ethereum. Die Anforderungen für Polkadot sind etwas umfangreicher. Anstelle eines völlig einheitlichen Netzwerks, Polkadot verfügt über mehrere Arten von Teilnehmern mit jeweils unterschiedlichen Anforderungen an die Zusammensetzung ihrer Kollegen und über mehrere Netzwerke „Wege“, über deren Teilnehmer sich gerne unterhalten wird bestimmte Daten. Dies bedeutet ein wesentlich strukturierteres Netzwerk-Overlay – und ein Protokoll, das dies unterstützt – wird wahrscheinlich notwendig sein. Darüber hinaus ist die Erweiterbarkeit möglich, um zukünftige Ergänzungen wie neue Arten von „Ketten“ zu ermöglichen erfordern selbst eine neuartige Overlay-Struktur. Während einer ausführlichen Diskussion darüber, wie die Vernetzung Da das Protokoll möglicherweise nicht in den Rahmen dieses Dokuments fällt, ist eine Analyse der Anforderungen sinnvoll. Wir können Teilen Sie unsere Netzwerkteilnehmer grob in zwei Gruppen auf (Relaiskette, Parachains) jeweils aus drei Teilmengen. Wir können Geben Sie auch an, dass jeder der Parachain-Teilnehmer nur ist daran interessiert, sich untereinander zu unterhalten, anstatt Teilnehmer an anderen Parachains: • Relay-Chain-Teilnehmer: • Validatoren: P, jeweils in Teilmengen P[s] aufgeteilt Parachain • Verfügbarkeitsgaranten: A (dies kann durch Validatoren in der Grundform des Protokolls dargestellt werden) • Relay-Chain-Clients: M (beachten Sie die Mitglieder von jedem Parachain-Set wird tendenziell auch Mitglieder von M sein) • Parachain-Teilnehmer: • Parachain-Collatoren: C[0], C[1], . . . • Parachain-Fischer: F[0], F[1], . . . • Parachain-Kunden: S[0], S[1], . . . • Parachain-Light-Clients: L[0], L[1], . . . Im Allgemeinen benennen wir bestimmte Kommunikationsklassen findet tendenziell zwischen Mitgliedern dieser Gruppen statt: • P | A <-> P | A: Die voll eingestellt von validators/Bürgen muss sein gut vernetzt zu Konsens erreichen. • P[s] <-> C[s] | P[s]: Jeder validator als Mitglied einer bestimmten Parachain-Gruppe neigt zum Tratschen mit anderen solchen Mitgliedern sowie den Zusammenstellern dieser Parachain, um Blockkandidaten zu entdecken und zu teilen. • A <-> P[s] | C | A: Jeder Verfügbarkeitsgarant muss konsenssensitiv kettenübergreifend gesammelt werden Daten aus den ihm zugeordneten validators; Collatoren kann auch die Chance auf einen Konsens darüber optimieren blockieren, indem Sie es an Verfügbarkeitsgarantien weitergeben. Sobald sie vorliegen, werden die Daten an ausgezahlt einen anderen solchen Garanten, um den Konsens zu erleichtern. • P[s] <-> A | P[s']: Parachain validators wird Sie müssen zusätzliche Eingabedaten aus dem vorherigen Satz von validators oder den Verfügbarkeitsgaranten sammeln. • F[s] <-> P: Beim Melden dürfen die Fischer Platz nehmen eine Reklamation gegenüber jedem Teilnehmer. • M <-> M | P | A: Allgemeine Relay-Chain-Clients geben Daten von validators und Bürgen aus. • S[s] <-> S[s] | P[s] | A: Parachain-Kunden zahlen Daten von den validator/Garanten aus. • L[s] <-> L[s] | S[s]: Parachain-Light-Clients Daten von den Vollkunden auszahlen. Um einen effizienten Transportmechanismus zu gewährleisten, ist ein „flacher“ Overlay-Netzwerk – wie devp2p von Ethereum – wobei jedes Knoten unterscheidet nicht (nicht willkürlich) die Eignung seiner Knoten Gleichaltrige sind wahrscheinlich nicht geeignet. Eine einigermaßen erweiterbare Es wird wahrscheinlich ein Peer-Auswahl- und Entdeckungsmechanismus erforderlich sein sowohl in das Protokoll aufgenommen als auch aggressiv sein Planen Sie einen Ausblick, um die richtige Art von Kollegen sicherzustellen sind „zufällig“ connezur richtigen Zeit getroffen. Die genaue Strategie der Peer-Zusammensetzung wird für jede Teilnehmerklasse unterschiedlich sein: für eine ordnungsgemäße Skalierung Multi-Chain-Collatoren müssen entweder kontinuierlich sein Wiederverbindung mit den entsprechend gewählten validators oder Testamenten benötigen laufende Vereinbarungen mit einer Teilmenge der validators um sicherzustellen, dass sie während des größten Teils der Zeit, in der sie dafür unbrauchbar sind, nicht getrennt werden validator. Selbstverständlich werden auch Sortierer versuchen, eines aufrechtzuerhalten oder stabilere Verbindungen in den Verfügbarkeitsgaranten soll eine schnelle Verbreitung ihrer konsensorientierten Maßnahmen gewährleisten Daten. Verfügbarkeitsgaranten werden meist darauf abzielen, eine aufrechtzuerhalten stabile Verbindung untereinander und zu validators (für den Konsens und die konsenskritischen Parachain-Daten, zu denen). sie bezeugen) sowie an einige Collatoren (für die Parachain). Daten) und einige Fischer und Vollkunden (zum Zerstreuen). Informationen). Validatoren neigen dazu, nach anderen validators zu suchen, insbesondere nach solchen in derselben Untergruppe und anderen Collatoren, die ihnen Parachain-Blockkandidaten liefern können. Fischer sowie allgemeine Relay-Chain und Parachain Kunden werden im Allgemeinen versuchen, eine Verbindung zu a offen zu halten validator oder Bürge, aber viele andere ähnliche Knoten für sich selbst sonst. Parachain-Light-Clients streben ebenfalls danach, mit einem vollständigen Client der Parachain verbunden zu werden. wenn nicht nur andere Parachain-Light-Clients. 6.8.1. Das Problem der Peer-Churn. Im Basisprotokollvorschlag ändert sich jede dieser Teilmengen ständig zufällig mit jedem Block, der den zur Überprüfung zugewiesenen validators zugewiesen wird Die Parachain-Übergänge werden zufällig ausgewählt. Das kann ein Problem sein, wenn unterschiedliche (Nicht-Peer-)Knoten dies benötigen Daten untereinander weitergeben. Man muss sich entweder darauf verlassen ein fair verteiltes und gut vernetztes Peer-Netzwerk

POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 18 Stellen Sie sicher, dass die Hop-Distanz (und damit die Latenz im schlimmsten Fall) nur mit dem Logarithmus der Netzwerkgröße wächst (ein Kademlia-ähnliches Protokoll [13] kann hier helfen), oder man muss Führen Sie längere Blockzeiten ein, um die notwendige Verbindungsaushandlung zu ermöglichen, um ein Peer-Set aufrechtzuerhalten spiegelt die aktuellen Kommunikationsbedürfnisse des Knotens wider. Keine dieser Lösungen ist großartig: lange Blockzeiten Wird dem Netzwerk aufgezwungen, kann es unbrauchbar werden bestimmte Anwendungen und Ketten. Sogar eine völlig faire und verbundenes Netzwerk wird zu erheblicher Verschwendung führen der Bandbreite, da sie aufgrund uninteressierter Knoten skaliert für sie nutzlose Daten weiterzugeben. Während beide Richtungen Teil der Lösung sein können, Eine sinnvolle Optimierung zur Minimierung der Latenz wäre möglich sein, die Volatilität dieser Parachain zu begrenzen validator Sätze, wobei entweder die Zugehörigkeit nur zwischen Reihen von Blöcken neu zugewiesen wird (z. B. in Gruppen von 15, die bei einer 4-Sekunden-Einheit). Blockzeit würde bedeuten, dass die Verbindungen nur einmal pro Jahr geändert werden Minute) oder durch schrittweise Rotation der Mitgliedschaft, z.B. Änderung durch jeweils ein Mitglied (z. B. wenn dort Sind jeder Parachain 15 validators zugeordnet, dann wäre es im Durchschnitt eine ganze Minute zwischen völlig eindeutig Sätze). Indem Sie die Abwanderung von Peers begrenzen und sicherstellen, dass vorteilhafte Peer-Verbindungen gut hergestellt werden Fortschritt durch die teilweise Vorhersehbarkeit von Parachain Sets können wir dazu beitragen, dass jeder Knoten dauerhaft einen behält zufällige Auswahl von Kollegen. 6.8.2. Weg zu einem effektiven Netzwerkprotokoll. Wahrscheinlich die Der effektivste und vernünftigste Entwicklungsaufwand wird sich auf die Nutzung eines bereits vorhandenen Protokolls statt auf die fortlaufende Nutzung konzentrieren unser eigenes. Es gibt mehrere Peer-to-Peer-Basisprotokolle Wir können das eigene DevP2P von Ethereum verwenden oder erweitern [22], libp2p von IPFS [1] und GNUnet von GNU [4]. Eine vollständige Überprüfung dieser Protokolle und ihrer Relevanz für den Aufbau eines modulares Peer-Netzwerk, das bestimmte strukturelle Garantien, dynamische Peer-Steuerung und erweiterbare Unterprotokolle unterstützt geht weit über den Rahmen dieses Dokuments hinaus, wird aber eine sein wichtiger Schritt bei der Umsetzung von Polkadot. 7. Praktische Aspekte des Protokolls 7.1. Interchain-Transaktionszahlung. Während ein tolles Durch den Wegfall der Notwendigkeit eines ganzheitlichen Rechnungslegungsrahmens für Rechenressourcen wie dem Gas von Ethereum wird ein Höchstmaß an Freiheit und Einfachheit gewonnen. Dies wirft jedoch eine wichtige Frage auf: Wie funktioniert eine Parachain ohne Gas? verhindern, dass eine andere Fallschirmkette sie zu Berechnungen zwingt? Während wir uns auf die Transaktions-Post-Eingangswarteschlange verlassen können Puffer, um zu verhindern, dass eine Kette eine andere mit Spam überschüttet Transaktionsdaten bietet das Protokoll keinen gleichwertigen Mechanismus, um Spam bei der Transaktionsverarbeitung zu verhindern. Dies ist ein Problem, das der höheren Ebene überlassen bleibt. Da Ketten Es steht Ihnen frei, dem eingehenden Text eine beliebige Semantik hinzuzufügen Transaktionspostdaten können wir diese Berechnung sicherstellen muss vor Beginn bezahlt werden. In ähnlicher Weise wie die Modell, das von Ethereum Serenity vertreten wird, können wir uns vorstellen ein „Break-in“-Vertrag innerhalb einer Parachain, der a validator um eine garantierte Zahlung im Austausch dafür zu erhalten Bereitstellung einer bestimmten Menge an Verarbeitungsressourcen. Diese Ressourcen können in etwas wie Gas gemessen werden, Es könnte sich aber auch um ein völlig neuartiges Modell handeln, beispielsweise um eine subjektive Ausführungszeit oder um ein Bitcoin-ähnliches Pauschalpreismodell. Dies allein ist nicht so nützlich, da wir nicht ohne weiteres davon ausgehen können, dass der Anrufer außerhalb der Kette für ihn verfügbar ist Welcher Wertmechanismus auch immer durch den Einbruch erkannt wird Vertrag. Wir können uns jedoch einen sekundären „Breakout“-Vertrag in der Quellkette vorstellen. Die beiden Verträge würden zusammen eine Brücke bilden, einander anerkennen und Bereitstellung von Wertäquivalenz. (Staking-tokens, verfügbar für jedes einzelne könnte zur Begleichung der Zahlungsbilanz verwendet werden.) Ein Aufruf in eine andere solche Kette würde ein Proxying bedeuten über diese Brücke, die die Mittel dafür bereitstellen würde Aushandeln des Werttransfers zwischen Ketten, um Bezahlen Sie die für die Zielparachain erforderlichen Rechenressourcen. 7.2. Zusätzlich Ketten. Während die Ergänzung von a Parachain ist eine relativ günstige Operation, sie ist nicht kostenlos. Mehr Parachains bedeuten weniger validators pro Parachain und schließlich eine größere Anzahl von validators mit jeweils einem reduzierte durchschnittliche Bindung. Während das Problem geringerer Zwangskosten für den Angriff auf eine Parachain dadurch gemildert wird Fischer, das wachsende validator-Set erzwingt im Wesentlichen a höhere Latenz aufgrund der Mechanik des zugrunde liegenden Konsensesthod. Darüber hinaus jeder Parachain bringt das Potenzial mit sich, validators mit einem zu trauern Überlastender Validierungsalgorithmus. Daher wird es einen „Preis“ geben, der validators ist und/oder die Beteiligungsgemeinschaft wird dafür extrahieren Hinzufügung einer neuen Parachain. Dieser Markt für Ketten wird sehen Sie möglicherweise den Zusatz von entweder: • Ketten, bei denen wahrscheinlich kein Nettobeitrag gezahlt wird (in Bezug auf das Einsperren oder Verbrennen von staking tokens), die in einen Teil einbezogen werden müssen (z. B. Konsortialketten, Doge-Ketten, App-spezifische Ketten); • Ketten, die dem Netzwerk einen intrinsischen Wert liefern durch das Hinzufügen bestimmter Funktionen schwierig woanders hinzukommen (z. B. Vertraulichkeit, interne Skalierbarkeit, Serviceanbindung). Im Wesentlichen muss die Gemeinschaft der Beteiligten dies tun Anreize geschaffen werden, Kinderketten hinzuzufügen – entweder finanziell oder durch den Wunsch, dem Relais funktionsreiche Ketten hinzuzufügen. Es ist vorgesehen, dass neue Ketten hinzugefügt werden Kurze Kündigungsfrist für den Ausbau, sodass neue Ketten eingebaut werden können kompromisslos experimentiert werden kann das mittel- oder langfristige Wertversprechen. 8. Fazit Wir haben eine Richtung skizziert, die man als Autor einschlagen kann skalierbares, heterogenes Multi-Chain-Protokoll mit dem Potenzial, abwärtskompatibel zu bestimmten, bereits vorhandenen Protokollen zu sein blockchain Netzwerke. Unter einem solchen Protokoll, Teilnehmer Arbeiten Sie in aufgeklärtem Eigeninteresse daran, ein Gesamtsystem zu schaffen, das auf außerordentlich kostenlose Weise und ohne die typischen Kosten für bestehende Benutzer erweitert werden kann stammt aus einem Standarddesign blockchain. Wir haben gegeben ein grober Überblick über die Architektur, die erforderlich wäre, einschließlich die Art der Teilnehmer, ihre wirtschaftlichen Anreize und die Prozesse, an denen sie beteiligt sein müssen. Wir haben identifizierte ein grundlegendes Design und diskutierte seine Stärken und Einschränkungen; Dementsprechend haben wir weitere Anweisungen, die kann diese Einschränkungen lockern und den Weg zu einer vollständig skalierbaren blockchain-Lösung ebnen.POLKADOT: VISION FÜR EIN HETEROGENES MULTI-CHAIN-RAHMEN ENTWURF 1 19 8.1. Fehlendes Material und offene Fragen. Bei unterschiedlichen Implementierungen des Protokolls ist eine Netzwerkverzweigung immer möglich. Die Erholung von einem solchen Ausnahmezustand wurde nicht besprochen. Angesichts der Tatsache, dass das Netzwerk zwangsläufig einen Fertigstellungszeitraum ungleich Null haben wird, Die Wiederherstellung nach der Relaychain-Forking sollte kein großes Problem darstellen, erfordert jedoch eine sorgfältige Integration das Konsensprotokoll. Die Beschlagnahmung von Anleihen und umgekehrt die Bereitstellung von Belohnungen hat noch nicht tief erforscht. Derzeit gehen wir von Belohnungen aus werden nach dem Prinzip „Gewinner nimmt alles“ bereitgestellt: Dies ist möglicherweise nicht der Fall Bieten Sie den Fischern das beste Anreizmodell. Ein kurzzeitiger Commit-Reveal-Prozess würde es vielen Fischern ermöglichen den Preis zu beanspruchen und eine gerechtere Verteilung der Belohnungen zu gewährleisten, Allerdings könnte der Prozess zu zusätzlicher Latenz im führen Entdeckung von Fehlverhalten. 8.2. Danksagungen. Vielen Dank an alle Korrektoren, die dabei geholfen haben, dies in den Griff zu bekommen vorzeigbare Form. Insbesondere Peter Czaban, Bjorn Wagner, Ken Kappler, Robert Habermeier, Vitalik Buterin, Reto Trinkler und Jack Petersson. Vielen Dank an alle die Menschen, die Ideen oder Anfänge beigesteuert haben davon verdienen Marek Kotewicz und Aeron Buchanan besondere Erwähnung. Und vielen Dank an alle anderen für ihre Hilfe unterwegs. Alle Fehler sind meine eigenen. Teile dieser Arbeit, einschließlich erster Recherchen zu Konsensalgorithmen wurden teilweise von den Briten finanziert Regierung im Rahmen des Innovate UK-Programms.