ระบบฉันทามติแบบหลายชั้นสามารถให้ความยืดหยุ่นของเครือข่ายถึง 51 เปอร์เซ็นต์การโจมตีถึง 90 เปอร์เซ็นต์หรือไม่?

HodlX Guest Post  ส่งโพสต์ของคุณ

เมื่อเร็ว ๆ นี้เราได้เห็นเครือข่ายบล็อกเชนที่ตกเป็นเหยื่อมากขึ้นถึง 51 เปอร์เซ็นต์ โจมตี. การโจมตีนี้เป็นไปได้เนื่องจากขีด จำกัด อาจค่อนข้างต่ำซึ่งมีจำนวนมากกว่า 50 เปอร์เซ็นต์ของแฮชเรตเล็กน้อย เมื่อผู้โจมตีเข้ายึดเครือข่ายมีหลายวิธีที่สามารถใช้ในทางที่ผิด ตัวอย่างเช่นผู้โจมตีสามารถใช้จ่ายสองเท่า อย่างไรก็ตามสิ่งสำคัญกว่าคือแม้ว่าเครือข่ายจะถูกควบคุมโดยผู้ใช้ที่เป็นอันตราย แต่การทำงานของเครือข่ายก็ไม่สามารถถือได้ว่าเป็นเรื่องปกติ โดยพื้นฐานแล้วการโจมตีดังกล่าวทำให้ blockchain ใช้งานไม่ได้.

สิ่งนี้อธิบายได้ว่าเหตุใดการพัฒนาฉันทามติใหม่ที่มีความยืดหยุ่นสูงถึงการโจมตี 51 เปอร์เซ็นต์จึงเป็นงานที่ทันท่วงที ในบทความล่าสุดของเขา, คู่มือการยอมรับความผิดพลาด 99%, Vitalik Buterin เสนอวิธีเพิ่มขีด จำกัด ของการโจมตี 51 เปอร์เซ็นต์จาก 51 เปอร์เซ็นต์ของเดิมพันหรือแฮชเรทเป็น 99 เปอร์เซ็นต์ กุญแจสำคัญคือการแนะนำตัวตรวจสอบความถูกต้องเพิ่มเติมที่เรียกว่าผู้สังเกตการณ์ซึ่งไม่ได้มีส่วนร่วมในการสร้างบล็อก ผู้สังเกตการณ์ดำเนินการหลังการตรวจสอบความถูกต้องของบล็อกเชนและสามารถแจ้งเตือนเครือข่ายหากพบบล็อกที่ถูกบุกรุก สำหรับการตรวจสอบหลังการตรวจสอบ Vitalik แนะนำว่า 512 โหนดจะถูกสุ่มเลือกทุกๆ 4,096 วินาทีโดยอัลกอริธึมขึ้นอยู่กับเวลาแฝง.

แม้ว่าวิธีนี้จะช่วยปรับปรุงการป้องกันเครือข่ายได้อย่างแน่นอน แต่ก็มีข้อผิดพลาดมากมาย จุดอ่อนที่สำคัญที่สุดคือการพึ่งพาเวลาที่จำเป็นสำหรับฉันทามติการพึ่งพาทรูพุตของเครือข่ายและการซิงโครไนซ์เวลาระหว่างผู้สังเกตการณ์.

ที่นี่ช่วงเวลาต่ำสุดของ D คือค่าเชิงประจักษ์ซึ่งผู้สังเกตการณ์สามารถแลกเปลี่ยนข้อมูลได้อย่างถูกต้อง การคำนวณ D คำนึงถึงการเชื่อมต่ออินเทอร์เน็ตที่ไม่ดีและพลังการประมวลผลของผู้สังเกตการณ์ การบล็อกจะถือว่าใช้ได้ก็ต่อเมื่อช่วงเวลายืนยันหารด้วย D ไม่น้อยกว่าจำนวนผู้สังเกตการณ์ที่เซ็นชื่อบล็อกนี้.

เนื่องจากค่า D เป็นค่าต่ำสุดของค่าที่เป็นไปได้ทั้งหมดจึงมีสถานการณ์ที่เป็นไปได้เมื่อในช่วง D จึงมีการยืนยันบล็อกโดยผู้สังเกตการณ์เพียงคนเดียว ดังนั้นเวลาที่ต้องใช้สำหรับฉันทามติจึงขึ้นอยู่กับจำนวนผู้สังเกตการณ์เชิงเส้น สิ่งนี้ทำให้ข้อ จำกัด ที่สำคัญเกี่ยวกับความสามารถในการปรับขนาดและการกระจายอำนาจของเครือข่าย.

ในกรณีของผู้สังเกตการณ์จำนวน จำกัด (Buterin แนะนำให้ใช้ผู้สังเกตการณ์เพียง 512 คน) การตรวจสอบความถูกต้องเป็นเพียงการกระจายอำนาจหลอก การเพิ่มจำนวนผู้สังเกตการณ์อย่างมีนัยสำคัญหรือไม่ จำกัด อาจทำให้เวลา D ที่ต้องการสูงขึ้นอย่างมีนัยสำคัญ ในกรณีนี้การตรวจสอบความถูกต้องจะใช้เวลานานกว่ามากหรือถึงขั้นไร้จุดหมาย.

แบนด์วิดท์ช่องทางการสื่อสารสมัยใหม่ยังคงมี จำกัด ซึ่งเป็นอุปสรรคต่อการตรวจสอบความถูกต้องของบล็อกขนาดใหญ่หลังการตรวจสอบความถูกต้อง สมมติว่าขนาดธุรกรรมคือ 200 ไบต์ซึ่งจริงๆแล้วค่อนข้างเล็กและเป็นไปได้เฉพาะในธุรกรรมทางการเงินที่ไม่มีสัญญาอัจฉริยะและมีธุรกรรม 50,000 รายการในบล็อก (บล็อกเชนสมัยใหม่กำลังพยายามเข้าถึงระดับนั้นอย่างแข็งขัน) ขนาดบล็อกคือ 10Mb การส่งข้อมูลจำนวนนี้ภายในหนึ่งวินาทีต้องใช้ช่องสัญญาณ 100Mbps ช่องสัญญาณ Trunk สามารถรับประกันระดับปริมาณงานนี้ได้อย่างแน่นอน แต่การเชื่อมต่อในระดับภูมิภาคจะช้ากว่ามาก สิ่งนี้จะทำให้การตรวจสอบความถูกต้องเป็นไปไม่ได้เนื่องจากข้อกำหนดในการรับลายเซ็นภายในระยะเวลาที่กำหนดหรือหลอกกระจายอำนาจโดยเลือกเฉพาะผู้สังเกตการณ์ที่มีช่องสัญญาณที่ดีที่สุดเท่านั้น.

จุดอ่อนอีกประการหนึ่งคือการซิงโครไนซ์เวลาที่จำเป็นระหว่างผู้สังเกตการณ์ซึ่งจะเพิ่มช่องโหว่ของเครือข่ายต่อการโจมตีที่อาจเกิดขึ้นเนื่องจากไม่มีเครือข่ายบล็อกเชนใดใช้โปรโตคอลการซิงค์เวลาที่ปลอดภัย (เช่น SNTP) การทำงานกับ NTP ที่ไม่มีการรักษาความปลอดภัยจะสร้างโอกาสมากมายสำหรับการไม่ซิงโครไนซ์พูลของผู้สังเกตการณ์ซึ่งสามารถทำลายการตรวจสอบความถูกต้องได้ในภายหลัง.

ในความพยายามที่จะขจัดปัญหาที่อธิบายไว้ข้างต้นและเพิ่มความยืดหยุ่นของเครือข่ายจากการโจมตี 51 เปอร์เซ็นต์ไปจนถึง 90 เปอร์เซ็นต์วิธีการที่ใช้บทบาทเพิ่มเติมอาจเป็นทางออกสำหรับฉันทามติของเครือข่าย อีกทางเลือกหนึ่งสำหรับวิธีการแก้ปัญหาที่อธิบายโดย Vitalik Buterin ในกรณีนี้เครือข่ายจะต้องใช้ห้าบทบาทที่กำหนดแบบไดนามิกให้กับโหนด.

เนื่องจากการตั้งค่านี้การแก้ปัญหา Byzantine Fault Tolerance (BFT) ในการรับเงินเดิมพัน 67 เปอร์เซ็นต์พร้อมกันในหลายชั้นจึงต้องมีการควบคุมมากกว่า 90 เปอร์เซ็นต์ของการเดิมพัน ยิ่งไปกว่านั้นความยืดหยุ่นยังสูงมากจนต้องใช้เงินลงทุนมากกว่า 53 เปอร์เซ็นต์เพื่อให้ธุรกรรมที่เป็นอันตรายปรากฏขึ้น.

แม้ว่าเครือข่ายจะเกิดขึ้นอย่างไม่น่าจะเป็นไปได้โดยมีสัดส่วนการถือหุ้นเพียงคนเดียวถึง 90 เปอร์เซ็นต์ แต่ลูกค้าก็จะเริ่มปฏิเสธการบล็อกย้อนหลังและเลิกไว้วางใจเครือข่ายที่ถูกบุกรุกโดยแบ่งเครือข่ายออกเป็นสองส่วนอย่างมีประสิทธิภาพ เนื่องจากลูกค้าที่ใช้เครือข่ายเป็นส่วนที่มีค่าที่สุดการครอบครอง 90 เปอร์เซ็นต์ของการควบคุมสเตคจะช่วยให้สามารถควบคุมเครือข่ายที่ตายแล้วโดยไม่มีลูกค้าในขณะที่อีก 10 เปอร์เซ็นต์ที่เหลือจะกลายเป็น 100 เปอร์เซ็นต์ของผู้ถือเหรียญในเครือข่ายใหม่.

เครือข่ายใช้การตรวจสอบความถูกต้องของบล็อกแบบอะซิงโครนัสเพื่อกำจัดการพึ่งพาเวลาฉันทามติกับจำนวนผู้ตรวจสอบความถูกต้อง บล็อกถัดไปจะเริ่มสร้างทันทีที่สร้างบล็อกปัจจุบันและเสร็จสิ้นการตรวจสอบขั้นพื้นฐานหลังการตรวจสอบความถูกต้อง การตรวจสอบความถูกต้องทั้งหมดเกิดขึ้นในเลเยอร์ต่างๆควบคู่กันไป (ตามบทบาทของผู้ตรวจสอบฝนตกหนักเพียร์และไคลเอนต์) เมื่อใดก็ตามที่ระบุบล็อกที่เป็นอันตราย blockchain จะย้อนกลับไปยังสถานะสุดท้ายที่ได้รับการยืนยันและสร้างขึ้นใหม่จากธุรกรรมดิบ.

ปัญหาของการเชื่อมต่ออินเทอร์เน็ตที่อาจไม่ดีได้รับการบรรเทาลงโดยใช้เทคโนโลยีคล้าย BitTorrent ข้อมูลจะถูกส่งผ่านเครือข่ายเป็นส่วนย่อยเพื่อให้แน่ใจว่าอัตราแลกเปลี่ยนที่เร็วขึ้นในภูมิภาคที่มีแบนด์วิดท์ต่ำ สิ่งนี้ทำให้สามารถส่งข้อมูลไปยังพื้นที่ที่แยกจากกันเทียมได้.

ความละเอียดสำหรับความท้าทายในการซิงโครไนซ์เวลาเป็นสองเท่า: เวลาภายในของกระบวนการ (เป็นเห็บ) จะถูกใช้ทุกที่ที่เป็นไปได้และการซิงค์เวลาทำได้ผ่านโปรโตคอล SNTP ที่ได้รับการป้องกัน.

สรุปได้ว่าการนำเสนอบทบาทที่แตกต่างกันในฉันทามติตามที่อธิบายไว้ข้างต้นน่าจะเป็นแนวทางที่มีมุมมองมากที่สุดในปัจจุบันและหวังว่าจะปรับปรุงความปลอดภัยในบล็อกเชนได้อย่างมีนัยสำคัญ.

Gleb Nikitin

Gleb Nikitin หัวหน้าฝ่ายเทคโนโลยีและผู้ร่วมก่อตั้งที่ # เมต้าแฮช

About the author