ความทนทานต่อความผิดพลาดของไบแซนไทน์ในทางปฏิบัติคืออะไร? คู่มือสำหรับผู้เริ่มต้นฉบับสมบูรณ์

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

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

วัตถุประสงค์คือเพื่อป้องกันความล้มเหลวของระบบที่ร้ายแรงโดยบรรเทาผลกระทบที่โหนดประสงค์ร้ายเหล่านี้มีต่อการทำงานที่ถูกต้องของเครือข่าย และความสอดคล้องที่ถูกต้องซึ่งเข้าถึงโดยโหนดที่ซื่อสัตย์ในระบบ

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

ปัญหาของนายพลไบแซนไทน์

ปัญหานายพลไบแซนไทน์ รูปภาพโดย เดบรัจ กอช

Byzantine Fault Tolerance (pBFT) ที่ใช้งานได้จริงเป็นหนึ่งในการเพิ่มประสิทธิภาพเหล่านี้และได้รับการแนะนำโดย Miguel Castro และ Barbara Liskov ในบทความวิชาการในปี 1999 เรื่อง "ความอดทนความผิดไบเซนไทน์ในทางปฏิบัติ"

มีจุดมุ่งหมายเพื่อปรับปรุงกลไกฉันทามติดั้งเดิมของ BFT และได้ดำเนินการและปรับปรุงในการกระจายที่ทันสมัยหลายแห่ง คอมพิวเตอร์ ระบบรวมถึง blockchain ยอดนิยมบางตัว แพลตฟอร์ม.

ภาพรวมของความทนทานต่อความผิดพลาดของไบแซนไทน์ในทางปฏิบัติ

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

อัลกอริธึมนี้ได้รับการออกแบบมาให้ทำงานในระบบอะซิงโครนัสและได้รับการปรับแต่งให้มีประสิทธิภาพสูงพร้อมโอเวอร์เฮดรันไทม์ที่น่าประทับใจและมีเวลาแฝงเพิ่มขึ้นเพียงเล็กน้อยเท่านั้น

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

ความอดทนความผิดไบเซนไทน์ในทางปฏิบัติ

Byzantine Fault Tolerance, รูปภาพโดย อัลโตรอส

เพื่อให้โมเดล pBFT ทำงานได้ สมมติฐานคือจำนวนโหนดที่เป็นอันตรายในเครือข่ายไม่สามารถเท่ากับหรือเกิน ⅓ ของโหนดทั้งหมดในระบบพร้อมกันในหน้าต่างที่มีช่องโหว่

ยิ่งมีโหนดในระบบมากเท่าไร ก็ยิ่งไม่น่าเป็นไปได้ทางคณิตศาสตร์สำหรับตัวเลขที่เข้าใกล้ ⅓ ของโหนดโดยรวมที่จะเป็นอันตราย อัลกอริธึมให้ทั้งความมีชีวิตชีวาและความปลอดภัยอย่างมีประสิทธิภาพตราบเท่าที่ (n-1) / ⅓) โดยที่ n หมายถึงโหนดทั้งหมด เป็นอันตรายหรือผิดพลาดในเวลาเดียวกัน

ผลลัพธ์ที่ตามมาคือในที่สุด คำตอบที่ลูกค้าได้รับจากคำขอของพวกเขานั้นถูกต้องเนื่องจาก ความเป็นเส้นตรง.

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

  1. ลูกค้าส่งคำขอไปยังโหนดผู้นำเพื่อเรียกใช้การดำเนินการบริการ
  2. โหนดผู้นำ multicast การร้องขอไปยังโหนดสำรอง
  3. โหนดดำเนินการตามคำขอแล้วส่งการตอบกลับไปยังไคลเอนต์
  4. ลูกค้ากำลังรอ f + 1 (f หมายถึงจำนวนโหนดสูงสุดที่อาจผิดพลาด) ตอบกลับจากโหนดอื่นด้วยผลลัพธ์เดียวกัน ผลลัพธ์นี้เป็นผลจากการดำเนินการ

ข้อกำหนดสำหรับโหนดคือการกำหนดและเริ่มต้นในสถานะเดียวกัน ผลลัพธ์สุดท้ายคือโหนดที่ซื่อสัตย์ทั้งหมดทำข้อตกลงตามลำดับของบันทึก และพวกเขายอมรับหรือปฏิเสธมัน

โหนดผู้นำมีการเปลี่ยนแปลงในรูปแบบประเภทโรบินแบบกลมในทุกมุมมอง และยังสามารถแทนที่ด้วยโปรโตคอลที่เรียกว่าการเปลี่ยนแปลงมุมมอง หากเวลาที่กำหนดผ่านไปโดยไม่มีโหนดผู้นำแบบหลายผู้รับคำขอ

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

ข้อดีและข้อกังวลเกี่ยวกับ pBFT Model

โมเดลฉันทามติ pBFT ได้รับการออกแบบสำหรับการใช้งานจริง และมีการกล่าวถึงข้อบกพร่องเฉพาะในเอกสารวิชาการต้นฉบับพร้อมกับการเพิ่มประสิทธิภาพที่สำคัญบางประการเพื่อนำอัลกอริทึมไปใช้ในระบบจริง

ในทางตรงกันข้าม โมเดล pBFT ให้ข้อได้เปรียบที่สำคัญเหนือแบบจำลองฉันทามติอื่นๆ

ประโยชน์ของ pBFT

ประโยชน์ของ pBFT รูปภาพโดย Zilliqa

ข้อดีหลักประการหนึ่งของโมเดล pBFT คือความสามารถในการให้การทำธุรกรรมขั้นสุดท้ายโดยไม่ต้องมีการยืนยันเช่นในโมเดล Proof-of-Work เช่น Bitcoin ที่ใช้

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

ข้อได้เปรียบที่สำคัญอีกประการของแบบจำลอง pBFT เมื่อเทียบกับระบบ PoW คือ ลดการใช้พลังงานลงอย่างมาก.

ในรูปแบบ Proof-of-Work เช่น in Bitcoinจำเป็นต้องมี PoW รอบสำหรับทุกบล็อก สิ่งนี้นำไปสู่การใช้ไฟฟ้าของ เครือข่าย Bitcoin โดยผู้ขุด แข่งขันกับประเทศเล็ก ๆ เป็นประจำทุกปี

Bitcoin คืออะไร คู่มือฉบับสมบูรณ์
Bitcoin คืออะไร? สุดยอดคู่มือสำหรับผู้เริ่มต้น

เนื่องจาก pBFT ไม่ได้มีการคำนวณอย่างเข้มข้น การลดพลังงานไฟฟ้าอย่างมากจึงเป็นสิ่งที่หลีกเลี่ยงไม่ได้ เนื่องจากนักขุดไม่ได้แก้ไขอัลกอริทึมการแฮชแบบเข้มข้นของ PoW ในทุกบล็อก

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

บทความนี้กล่าวถึงการใช้ลายเซ็นดิจิทัลและ MAC (Method Authentication Codes) เป็นรูปแบบสำหรับการตรวจสอบความถูกต้องของข้อความ อย่างไรก็ตาม การใช้ MAC นั้นไม่มีประสิทธิภาพอย่างยิ่งกับจำนวนการสื่อสารที่จำเป็นระหว่างโหนดในกลุ่มฉันทามติขนาดใหญ่ เช่น เครือข่ายสกุลเงินดิจิทัล และกับ MAC การไม่สามารถพิสูจน์ความถูกต้องของข้อความถึงบุคคลที่สามโดยธรรมชาติ

แม้ว่าลายเซ็นดิจิทัลและมัลติซิกจะให้การปรับปรุงที่เหนือกว่า MAC การเอาชนะข้อจำกัดด้านการสื่อสารของโมเดล pBFT ในขณะที่การรักษาความปลอดภัยพร้อมๆ กันเป็นการพัฒนาที่สำคัญที่สุดที่จำเป็นสำหรับระบบที่ต้องการนำไปใช้อย่างมีประสิทธิภาพ

โมเดล pBFT มีความอ่อนไหวต่อ การโจมตีซีบิล ที่ฝ่ายเดียวสามารถสร้างหรือจัดการข้อมูลประจำตัวจำนวนมาก (โหนดในเครือข่าย) ซึ่งจะทำให้เครือข่ายเสียหาย

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

แพลตฟอร์มที่ใช้เวอร์ชันที่เพิ่มประสิทธิภาพของ pBFT วันนี้

วันนี้ มีแพลตฟอร์มบล็อกเชนจำนวนหนึ่งที่ใช้อัลกอริธึม pBFT เวอร์ชันปรับให้เหมาะสมหรือไฮบริดเป็นแบบจำลองฉันทามติหรืออย่างน้อยก็บางส่วน ร่วมกับกลไกฉันทามติอื่น

Zilliqa

Zilliqa ใช้รุ่น pBFT แบบคลาสสิกที่ได้รับการปรับแต่งมาอย่างดีร่วมกับข้อตกลง PoW ในทุก ๆ ~ 100 บล็อก พวกเขาใช้ multisignatures เพื่อลดค่าใช้จ่ายในการสื่อสารของ pBFT แบบคลาสสิก และในสภาพแวดล้อมการทดสอบของพวกเขาเอง พวกเขาได้บรรลุ TPS ไม่กี่พันครั้งโดยหวังว่าจะเพิ่มขนาดให้มากขึ้นเมื่อมีการเพิ่มโหนดมากขึ้น

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

Zilliqa

Hyperledger

ผ้า Hyperledger เป็นสภาพแวดล้อมการทำงานร่วมกันแบบโอเพนซอร์สสำหรับโครงการและเทคโนโลยีบล็อกเชนที่โฮสต์โดย Linux Foundation และใช้อัลกอริธึม pBFT เวอร์ชันที่ได้รับอนุญาตสำหรับแพลตฟอร์ม

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

ผ้า Hyperledger

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

สรุป

Byzantine Fault Tolerance เป็นแนวคิดที่ได้รับการศึกษาเป็นอย่างดีในระบบแบบกระจายและการผสานรวมผ่านอัลกอริธึม Byzantine Fault Tolerance ที่ใช้งานได้จริงในระบบและแพลตฟอร์มในโลกแห่งความเป็นจริง ไม่ว่าจะผ่านเวอร์ชันที่ปรับให้เหมาะสมหรือรูปแบบไฮบริด ยังคงเป็นองค์ประกอบโครงสร้างพื้นฐานที่สำคัญของสกุลเงินดิจิทัลในปัจจุบัน

ในขณะที่แพลตฟอร์มยังคงพัฒนาและสร้างสรรค์นวัตกรรมในด้านแบบจำลองฉันทามติสำหรับระบบบล็อกเชนสาธารณะขนาดใหญ่ การจัดหากลไก Byzantine Fault Tolerance ขั้นสูงจะมีความสำคัญต่อการรักษาความสมบูรณ์ของระบบต่างๆ และลักษณะที่ไม่น่าเชื่อถือของระบบต่างๆ

43,330

ที่มา: https://blockonomi.com/practical-byzantine-fault-tolerance/