วิทยาศาสตร์ยอดนิยม: ปัญหาความพร้อมใช้งานของข้อมูล
คำอธิบายภาพ

-ใช่...จะใช้เวลาหลายวันในการทำธุรกรรมกับค่าธรรมเนียมน้ำมันนั้น-
Ethercat เป็นแอปพลิเคชั่นแบบกระจายตัวแรกที่ประสบความสำเร็จในวงกว้าง แต่มัน (และแอปพลิเคชันอื่นๆ) คว้าทรัพยากรทั้งหมดของเครือข่าย Ethereum ซึ่งทำให้ mempool ของ chain เติบโตในอัตราที่ไม่เคยมีมาก่อน ในชั่วข้ามคืน ผู้คนเริ่มพูดถึง Plasma และช่องสัญญาณของรัฐว่าเป็นวิธีแก้ปัญหาการปรับสเกลของเรา แต่แม้จะมีการอภิปรายและความตื่นเต้น การพัฒนาโซลูชันเหล่านี้ก็ยังประสบปัญหา ทำให้สมาชิกในชุมชนบางคนสงสัยว่าจะเป็นไปได้หรือไม่ แต่ปัจจุบัน เมื่อโซลูชันเหล่านี้ค่อยๆ ปรากฏทางออนไลน์ ผู้คนก็ตระหนักว่าปัญหาที่แท้จริงที่สร้างปัญหาให้กับนักพัฒนามาเป็นเวลานานคือปัญหาความพร้อมใช้งานของข้อมูลที่ชัดเจน
ชื่อเรื่องรอง
ปัญหาความพร้อมใช้งานของข้อมูล
ดังที่ Vitalik ได้อธิบายไว้ก่อนหน้านี้ ต้นตอของปัญหาความพร้อมใช้งานของข้อมูลคือนักขุดที่เป็นอันตรายจะพยายามเผยแพร่บล็อกที่มีส่วนหัวของบล็อก แต่สูญเสียข้อมูลบางส่วนหรือทั้งหมดไปยังเชน การโจมตีนี้อาจส่งผลให้เกิด:
หลอกเครือข่ายให้ยอมรับการบล็อกที่ไม่ถูกต้อง และไม่มีวิธีพิสูจน์ว่าบล็อกนั้นไม่ถูกต้อง
ป้องกันไม่ให้โหนดรับสถานะปัจจุบัน
ป้องกันไม่ให้โหนดสร้างบล็อกหรือโอนเงินเนื่องจากขาดข้อมูลที่สอดคล้องกันในการสร้างการพิสูจน์
แต่ความพร้อมใช้งานของข้อมูลไม่ได้เป็นเพียงการซ่อนข้อมูลบล็อกเท่านั้น โดยทั่วไปแล้ว ตราบใดที่ข้อมูลบางส่วนถูกซ่อนจากการเข้าถึงโดยผู้ดำเนินการบางคน (หรือที่เรียกว่ากลไกการตรวจสอบ) อาจเรียกได้ว่าเป็นปัญหาความพร้อมใช้งานของข้อมูล เท่าที่เราทราบ นี่ไม่ใช่ปัญหาบน mainnet แต่ก็มีราคาแพงมากเช่นกัน ในความเป็นจริง ในช่วง 18 เดือนที่ผ่านมา เราพบว่าจำนวนสถานะที่จัดเก็บไว้ในแต่ละโหนด Ethereum เพิ่มขึ้น 6.5 เท่า (โดยใช้ซอฟต์แวร์ geth ที่เปิดใช้การซิงค์อย่างรวดเร็ว)

เห็นได้ชัดว่าสิ่งนี้ไม่ยั่งยืนสำหรับเว็บที่มีการกระจายอำนาจอย่างแท้จริง เนื่องจากขนาดของบล็อกเชนเติบโตอย่างต่อเนื่อง จำนวนคอมพิวเตอร์ที่สามารถเข้าร่วมในเครือข่ายและทำหน้าที่เป็นโหนดจะลดลงอย่างต่อเนื่อง แล้วเราจะจัดการกับสถานการณ์นี้อย่างไร?
ตัวอย่างตัวอย่าง
สมมติว่าคุณไปเล่นโป๊กเกอร์ที่คาสิโน ในตอนแรก คุณไปที่เคาน์เตอร์เพื่อแลกเงินดอลลาร์เป็นชิปโป๊กเกอร์ จากนั้น คุณเริ่มนั่งที่โต๊ะและเล่นโป๊กเกอร์เป็นเวลาหลายชั่วโมง (ซึ่งเรียกว่าธุรกรรมนอกเครือข่าย) บางครั้งคุณก็ได้เงิน บางครั้งคุณก็เสียเงิน หลังจากชนะมือใหญ่ คุณบอกเจ้าบ้านว่าคุณต้องการถอนชิปของคุณ
แต่หลังจากที่คุณตื่นขึ้น มีคนให้นมคุณที่ด้านหลังศีรษะของคุณ - คุณตื่นขึ้นมาพร้อมกับความทรงจำที่พร่ามัวและจำรายละเอียดของมือโป๊กเกอร์ไม่ได้ (นั่นคือ "ไม่มีข้อมูล") เมื่อคุณไม่ได้อยู่ที่นั่น โต๊ะโป๊กเกอร์จะตัดสินใจแสร้งทำเป็นว่ามือสุดท้ายไม่ได้เกิดขึ้น และเล่นต่อไปในช่วงเวลาที่นำไปสู่มือนั้น เช่น โกงเงินที่คุณควรจะชนะ
ชื่อเรื่องรอง
ในทางปฏิบัติ
ใน Plasma ผู้เข้าร่วมแต่ละคนต้องเก็บประวัติการทำธุรกรรมที่สมบูรณ์และข้อมูลพยานให้เพียงพอเพื่อพิสูจน์ว่าสินทรัพย์เข้ารหัสของตนได้รับการแลกเปลี่ยนในแต่ละบล็อกของ Plasma หรือไม่ สิ่งนี้ทำให้ผู้เข้าร่วมแต่ละคนเป็นโหนดในระบบพลาสมา แต่เก็บข้อมูลธุรกรรมของตัวเองเท่านั้น ข้อกำหนดนี้เกิดขึ้นเนื่องจากบน Plasma ทุกคนสามารถสมรู้ร่วมคิดกับผู้ดำเนินการเครือข่ายและส่งธุรกรรมที่ไม่ถูกต้องเพื่อขโมยทรัพย์สินของผู้อื่นได้ วิธีเดียวที่ผู้เข้าร่วมจะป้องกันไม่ให้สิ่งนี้เกิดขึ้นคือต้องแน่ใจว่าพวกเขามีประวัติการทำธุรกรรมที่สมบูรณ์และถูกต้องของสินทรัพย์ทั้งหมด
ช่องทางของรัฐมีข้อกำหนดด้านข้อมูลที่ต่ำกว่า เนื่องจากผู้เข้าร่วมทุกคนยอมรับสถานะปัจจุบันเท่านั้น ไม่เห็นด้วยกับการอัปเดตสถานะ (เช่น การทำธุรกรรม) ด้วยวิธีนี้ สัญญาสามารถชำระผ่านธุรกรรมเดียวเท่านั้นโดยไม่ต้องคำนวณประวัติการทำธุรกรรมใหม่ นอกจากนี้ เนื่องจากแต่ละสถานะมี nonce ที่เพิ่มขึ้นโดยอัตโนมัติ และสัญญาอัจฉริยะไม่ถือว่าเป็นสถานะที่ถูกต้องเว้นแต่จะลงนามโดยทั้งสองฝ่าย ผู้เข้าร่วมจึงจำเป็นต้องจัดเก็บสถานะล่าสุดเท่านั้น
สารละลาย
สารละลาย
ตอนนี้ ทีมงานที่เกี่ยวข้องกำลังทำทุกอย่างที่ทำได้เพื่อลดพื้นที่ที่ใช้โดยข้อมูลที่ลูกค้าต้องดูแลหรือส่งไปยัง mainnet ผ่านสิ่งต่างๆ เช่น ZK-SNARKS หรือ RSA accumulators ซึ่งเป็นการปรับปรุงครั้งใหญ่ แต่พวกเขาทำได้ แก้ไขปัญหาความพร้อมใช้งานของข้อมูลไม่ได้ อันที่จริง เราไม่สามารถแก้ปัญหานี้กับไคลเอนต์รายเดียวได้ เพราะนั่นจะทำให้ไคลเอ็นต์นั้นต้องออนไลน์ 100% ตลอดเวลาและจะไม่สูญเสียข้อมูลที่จัดเก็บไว้ในนั้น (ฟังดูเหมือนบล็อกเชนมากใช่ไหม ?) .
อย่างไรก็ตาม เนื่องจากไม่มีฮาร์ดแวร์ที่สามารถทำเช่นนั้นได้ จึงเชื่อกันอย่างกว้างขวางว่าวิธีแก้ปัญหาความพร้อมใช้งานของข้อมูลคือเครือข่ายหอสังเกตการณ์ที่ได้รับการจูงใจ (เช่น PISA) หรือโครงสร้างที่คล้ายกัน เครือข่ายสิ่งจูงใจเหล่านี้เป็นกลุ่มของหอสังเกตการณ์ที่สำรองข้อมูลสำหรับผู้ใช้ที่ชำระเงินและท้าทายธุรกรรมที่น่าสงสัยในนามของผู้ใช้เมื่อพวกเขาไม่สามารถโต้แย้งได้ (เช่น ออฟไลน์) หากพวกเขาล้มเหลวในการประกวดการท้าทายภายในระยะเวลาหนึ่ง พวกเขาจะสูญเสียเงินเดิมพัน และเงินเดิมพันเหล่านั้นจะมอบให้กับหอสังเกตการณ์ใหม่ในเครือข่ายที่เข้าร่วมในการท้าทาย (สมมติว่ามีการส่งการท้าทายจริง ๆ ) โปรโตคอลบั๊ก/สำรองนี้มีหลายเลเยอร์ ดังนั้นผู้ใช้จึงมั่นใจได้ว่าจะไม่ถูกหลอกหากออฟไลน์หรือทำธุรกรรม/ประวัติสถานะหาย
ชื่อเรื่องรอง
โซลูชั่นของ SKALE
ไซด์เชนแบบยืดหยุ่นของ SKALE ช่วยแก้ปัญหาความพร้อมใช้งานของข้อมูลผ่านกระบวนการเสนอบล็อก หลังจากที่ตัวตรวจสอบความถูกต้องสร้างข้อเสนอการบล็อก ก็จะสื่อสารกับตัวตรวจสอบความถูกต้องอื่นๆ โดยใช้โปรโตคอลความพร้อมใช้งานของข้อมูลที่อธิบายไว้ด้านล่าง โปรโตคอลทำให้แน่ใจว่าข้อเสนอบล็อกถูกส่งไปยังผู้ตรวจสอบความถูกต้องส่วนใหญ่ (>⅔)
โปรโตคอลห้าขั้นตอนอธิบายไว้ดังนี้:
เครื่องมือตรวจสอบความถูกต้อง A ซึ่งเป็นผู้ส่งบล็อก ส่งข้อเสนอบล็อกและแฮชของธุรกรรมทั้งหมดที่ประกอบกันเป็นข้อเสนอ P ไปยังบริษัทอื่นทั้งหมด
หลังจากได้รับ P และค่าแฮชที่เกี่ยวข้องแล้ว แต่ละโหนดที่เกี่ยวข้องจะจับคู่ค่าแฮชกับการโอนย้ายในคิวธุรกรรมในเครื่องที่จะบรรจุเพื่อสร้าง P ใหม่ สำหรับการถ่ายโอนที่ไม่พบในคิว โหนดจะส่งคำขอค้นหาไปยังตัวตรวจสอบความถูกต้อง A ที่ส่งการถ่ายโอน จากนั้นตัวตรวจสอบความถูกต้องของการส่ง A จะส่งเนื้อหาของธุรกรรมเหล่านี้ไปยังตัวตรวจสอบความถูกต้องของการรับ ซึ่งอนุญาตให้เพียร์สร้างข้อเสนอบล็อกใหม่และเพิ่มไปยังฐานข้อมูลการจัดเก็บข้อเสนอ PD
หลังจากนั้นโหนดจะส่งใบเสร็จรับเงินพร้อมลายเซ็นธรณีประตู
หลังจากรวบรวมลายเซ็นของโหนดเสียงข้างมาก (มากกว่าสองในสาม) จากโหนด (รวมถึง A เองด้วย) A จะสร้างลายเซ็นเสียงข้างมากสัมบูรณ์ S ลายเซ็นนี้จะทำหน้าที่เป็นหลักฐานว่าผู้ตรวจสอบส่วนใหญ่เป็นเจ้าของ P
A จะเผยแพร่ลายเซ็น S ส่วนใหญ่นี้ไปยังผู้ตรวจสอบอื่น ๆ ทั้งหมด
หมายเหตุ: เครื่องมือตรวจสอบแต่ละรายการเป็นเจ้าของส่วนคีย์ส่วนตัว BLS PKS[I] สถานะเริ่มต้นของส่วนคีย์ดำเนินการโดยใช้อัลกอริทึมการสร้างคีย์แบบกระจายของเฟลด์แมน (DKG) ซึ่งทำงานเมื่อมีการสร้างแถบด้านข้างแบบยืดหยุ่นและเมื่อใดก็ตามที่ตัวตรวจสอบความถูกต้องถูกสลับแบบสุ่ม ตรวจสอบบทความของเราเกี่ยวกับ BLS และ DKG เพื่อเรียนรู้เพิ่มเติม!
สรุป
สรุป
สรุปแล้ว หากคุณสงสัยว่านักพัฒนาที่ทำงานเกี่ยวกับโซลูชันในระดับการดำเนินการนั้นทำอะไรได้บ้างในช่วง 18 เดือนที่ผ่านมา มีแนวโน้มว่าเวลาส่วนใหญ่ของพวกเขาหมดไปในการแก้ปัญหานี้ในตอนแรก แม้ว่ายังไม่มีวิธีแก้ปัญหาที่สมบูรณ์แบบสำหรับปัญหาการปรับขนาดทั้งหมด แต่ก็มีงานใหม่และน่าตื่นเต้นมากมายเกิดขึ้น และเรามีความมั่นใจอย่างมากเกี่ยวกับสิ่งที่เราสามารถทำได้ในอนาคต!


