โมเดลฉันทามติเป็นองค์ประกอบหลักของระบบบล็อกเชนแบบกระจาย และแน่นอนว่าเป็นหนึ่งในสิ่งที่สำคัญที่สุดต่อการทำงานของพวกเขา พวกเขาเป็นแกนหลักสำหรับผู้ใช้เพื่อให้สามารถโต้ตอบซึ่งกันและกันในลักษณะที่ไม่น่าเชื่อถือ และการใช้งานที่ถูกต้องในแพลตฟอร์มสกุลเงินดิจิตอลได้สร้างเครือข่ายที่หลากหลายใหม่ที่มีศักยภาพพิเศษ
ในบริบทของระบบแบบกระจาย ความอดทนความผิดไบเซนไทน์ คือความสามารถของเครือข่ายคอมพิวเตอร์แบบกระจายเพื่อทำงานตามที่ต้องการและบรรลุฉันทามติที่เพียงพออย่างถูกต้องแม้ว่าส่วนประกอบที่เป็นอันตราย (โหนด) ของระบบจะล้มเหลวหรือเผยแพร่ข้อมูลที่ไม่ถูกต้องไปยังผู้อื่น
วัตถุประสงค์คือเพื่อป้องกันความล้มเหลวของระบบที่ร้ายแรงโดยบรรเทาผลกระทบที่โหนดประสงค์ร้ายเหล่านี้มีต่อการทำงานที่ถูกต้องของเครือข่าย และความสอดคล้องที่ถูกต้องซึ่งเข้าถึงโดยโหนดที่ซื่อสัตย์ในระบบ
ที่ได้มาจากการ ปัญหาของนายพลไบแซนไทน์ภาวะที่กลืนไม่เข้าคายไม่ออกนี้ได้รับการวิจัยอย่างกว้างขวางและปรับให้เหมาะสมด้วยชุดโซลูชันที่หลากหลายในทางปฏิบัติและกำลังได้รับการพัฒนาอย่างแข็งขัน
ปัญหานายพลไบแซนไทน์ รูปภาพโดย เดบรัจ กอช
Byzantine Fault Tolerance (pBFT) ที่ใช้งานได้จริงเป็นหนึ่งในการเพิ่มประสิทธิภาพเหล่านี้และได้รับการแนะนำโดย Miguel Castro และ Barbara Liskov ในบทความวิชาการในปี 1999 เรื่อง "ความอดทนความผิดไบเซนไทน์ในทางปฏิบัติ"
มีจุดมุ่งหมายเพื่อปรับปรุงกลไกฉันทามติดั้งเดิมของ BFT และได้ดำเนินการและปรับปรุงในการกระจายที่ทันสมัยหลายแห่ง คอมพิวเตอร์ ระบบรวมถึง blockchain ยอดนิยมบางตัว แพลตฟอร์ม.
ภาพรวมของความทนทานต่อความผิดพลาดของไบแซนไทน์ในทางปฏิบัติ
โมเดล pBFT มุ่งเน้นที่การจัดหาการจำลองสถานะเครื่องแบบไบแซนไทน์ที่ใช้งานได้จริง ซึ่งทนต่อความผิดพลาดของไบแซนไทน์ (โหนดที่เป็นอันตราย) ผ่านการสันนิษฐานว่ามีความล้มเหลวของโหนดที่เป็นอิสระและข้อความที่จัดการซึ่งเผยแพร่โดยโหนดเฉพาะที่เป็นอิสระ
อัลกอริธึมนี้ได้รับการออกแบบมาให้ทำงานในระบบอะซิงโครนัสและได้รับการปรับแต่งให้มีประสิทธิภาพสูงพร้อมโอเวอร์เฮดรันไทม์ที่น่าประทับใจและมีเวลาแฝงเพิ่มขึ้นเพียงเล็กน้อยเท่านั้น
- โดยพื้นฐานแล้ว โหนดทั้งหมดในโมเดล pBFT จะได้รับการจัดลำดับโดยโหนดหนึ่งเป็นโหนดหลัก (ลีดเดอร์) และโหนดอื่นๆ เรียกว่าโหนดสำรอง
- โหนดทั้งหมดภายในระบบสื่อสารกันและมีเป้าหมายเพื่อให้โหนดที่ซื่อสัตย์ทั้งหมดบรรลุข้อตกลงเกี่ยวกับสถานะของระบบผ่านเสียงข้างมาก
- โหนดสื่อสารกันอย่างหนัก และไม่เพียงต้องพิสูจน์ว่าข้อความมาจากโหนดเพียร์เฉพาะ แต่ยังต้องตรวจสอบว่าข้อความไม่ได้ถูกแก้ไขในระหว่างการส่ง
Byzantine Fault Tolerance, รูปภาพโดย อัลโตรอส
เพื่อให้โมเดล pBFT ทำงานได้ สมมติฐานคือจำนวนโหนดที่เป็นอันตรายในเครือข่ายไม่สามารถเท่ากับหรือเกิน ⅓ ของโหนดทั้งหมดในระบบพร้อมกันในหน้าต่างที่มีช่องโหว่
ยิ่งมีโหนดในระบบมากเท่าไร ก็ยิ่งไม่น่าเป็นไปได้ทางคณิตศาสตร์สำหรับตัวเลขที่เข้าใกล้ ⅓ ของโหนดโดยรวมที่จะเป็นอันตราย อัลกอริธึมให้ทั้งความมีชีวิตชีวาและความปลอดภัยอย่างมีประสิทธิภาพตราบเท่าที่ (n-1) / ⅓) โดยที่ n หมายถึงโหนดทั้งหมด เป็นอันตรายหรือผิดพลาดในเวลาเดียวกัน
ผลลัพธ์ที่ตามมาคือในที่สุด คำตอบที่ลูกค้าได้รับจากคำขอของพวกเขานั้นถูกต้องเนื่องจาก ความเป็นเส้นตรง.
ฉันทามติ pBFT แต่ละรอบ (เรียกว่ามุมมอง) แบ่งออกเป็น 4 ขั้นตอน โมเดลนี้เป็นไปตามรูปแบบ "ผู้บัญชาการและร้อยโท" มากกว่าปัญหาของนายพลไบแซนไทน์ที่บริสุทธิ์ ซึ่งนายพลทุกคนเท่าเทียมกัน เนื่องจากการมีอยู่ของโหนดผู้นำ ขั้นตอนอยู่ด้านล่าง
- ลูกค้าส่งคำขอไปยังโหนดผู้นำเพื่อเรียกใช้การดำเนินการบริการ
- โหนดผู้นำ multicast การร้องขอไปยังโหนดสำรอง
- โหนดดำเนินการตามคำขอแล้วส่งการตอบกลับไปยังไคลเอนต์
- ลูกค้ากำลังรอ f + 1 (f หมายถึงจำนวนโหนดสูงสุดที่อาจผิดพลาด) ตอบกลับจากโหนดอื่นด้วยผลลัพธ์เดียวกัน ผลลัพธ์นี้เป็นผลจากการดำเนินการ
ข้อกำหนดสำหรับโหนดคือการกำหนดและเริ่มต้นในสถานะเดียวกัน ผลลัพธ์สุดท้ายคือโหนดที่ซื่อสัตย์ทั้งหมดทำข้อตกลงตามลำดับของบันทึก และพวกเขายอมรับหรือปฏิเสธมัน
โหนดผู้นำมีการเปลี่ยนแปลงในรูปแบบประเภทโรบินแบบกลมในทุกมุมมอง และยังสามารถแทนที่ด้วยโปรโตคอลที่เรียกว่าการเปลี่ยนแปลงมุมมอง หากเวลาที่กำหนดผ่านไปโดยไม่มีโหนดผู้นำแบบหลายผู้รับคำขอ
โหนดที่ซื่อสัตย์จำนวนมากยิ่งสามารถตัดสินใจได้ว่าผู้นำมีข้อบกพร่องหรือไม่ และนำโหนดเหล่านี้ออกโดยให้ผู้นำคนต่อไปเข้ามาแทนที่
ข้อดีและข้อกังวลเกี่ยวกับ pBFT Model
โมเดลฉันทามติ pBFT ได้รับการออกแบบสำหรับการใช้งานจริง และมีการกล่าวถึงข้อบกพร่องเฉพาะในเอกสารวิชาการต้นฉบับพร้อมกับการเพิ่มประสิทธิภาพที่สำคัญบางประการเพื่อนำอัลกอริทึมไปใช้ในระบบจริง
ในทางตรงกันข้าม โมเดล pBFT ให้ข้อได้เปรียบที่สำคัญเหนือแบบจำลองฉันทามติอื่นๆ
ประโยชน์ของ pBFT รูปภาพโดย Zilliqa
ข้อดีหลักประการหนึ่งของโมเดล pBFT คือความสามารถในการให้การทำธุรกรรมขั้นสุดท้ายโดยไม่ต้องมีการยืนยันเช่นในโมเดล Proof-of-Work เช่น Bitcoin ที่ใช้
หากโหนดที่เสนอได้รับการยินยอมจากโหนดในระบบ pBFT แสดงว่าบล็อกนั้นถือเป็นที่สิ้นสุด สิ่งนี้เปิดใช้งานโดยข้อเท็จจริงที่ว่าโหนดที่ซื่อสัตย์ทั้งหมดเห็นด้วยกับสถานะของระบบ ณ เวลาที่กำหนดอันเป็นผลมาจากการสื่อสารระหว่างกัน
ข้อได้เปรียบที่สำคัญอีกประการของแบบจำลอง pBFT เมื่อเทียบกับระบบ PoW คือ ลดการใช้พลังงานลงอย่างมาก.
ในรูปแบบ Proof-of-Work เช่น in Bitcoinจำเป็นต้องมี PoW รอบสำหรับทุกบล็อก สิ่งนี้นำไปสู่การใช้ไฟฟ้าของ เครือข่าย 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 ยังคงเล็กลงภายในชาร์ดเฉพาะ ดังนั้นจึงคงไว้ซึ่งลักษณะการรับส่งข้อมูลสูงของกลไกในขณะที่จำกัดขนาดกลุ่มฉันทามติ
Hyperledger
ผ้า Hyperledger เป็นสภาพแวดล้อมการทำงานร่วมกันแบบโอเพนซอร์สสำหรับโครงการและเทคโนโลยีบล็อกเชนที่โฮสต์โดย Linux Foundation และใช้อัลกอริธึม pBFT เวอร์ชันที่ได้รับอนุญาตสำหรับแพลตฟอร์ม
เนื่องจากกลุ่มที่ได้รับอนุญาตใช้กลุ่มฉันทามติขนาดเล็ก และไม่จำเป็นต้องบรรลุการกระจายอำนาจของบล็อกเชนแบบเปิดและสาธารณะ เช่น Ethereum pBFT จึงเป็นโปรโตคอลฉันทามติที่มีประสิทธิภาพสำหรับการทำธุรกรรมที่มีปริมาณงานสูงโดยไม่จำเป็นต้องกังวลเกี่ยวกับการปรับแพลตฟอร์มให้เหมาะสมเพื่อขยายไปยังกลุ่มฉันทามติขนาดใหญ่ .
นอกจากนี้ บล็อกเชนที่ได้รับอนุญาตนั้นเป็นแบบส่วนตัวและโดยการเชิญด้วยตัวตนที่รู้จัก ดังนั้นความไว้วางใจระหว่างฝ่ายต่างๆ จึงมีอยู่แล้ว บรรเทาความต้องการโดยธรรมชาติสำหรับสภาพแวดล้อมที่ไม่น่าเชื่อถือ เนื่องจากถือว่าน้อยกว่า ⅓ ของฝ่ายที่รู้จักจะตั้งใจประนีประนอมระบบ
สรุป
Byzantine Fault Tolerance เป็นแนวคิดที่ได้รับการศึกษาเป็นอย่างดีในระบบแบบกระจายและการผสานรวมผ่านอัลกอริธึม Byzantine Fault Tolerance ที่ใช้งานได้จริงในระบบและแพลตฟอร์มในโลกแห่งความเป็นจริง ไม่ว่าจะผ่านเวอร์ชันที่ปรับให้เหมาะสมหรือรูปแบบไฮบริด ยังคงเป็นองค์ประกอบโครงสร้างพื้นฐานที่สำคัญของสกุลเงินดิจิทัลในปัจจุบัน
ในขณะที่แพลตฟอร์มยังคงพัฒนาและสร้างสรรค์นวัตกรรมในด้านแบบจำลองฉันทามติสำหรับระบบบล็อกเชนสาธารณะขนาดใหญ่ การจัดหากลไก Byzantine Fault Tolerance ขั้นสูงจะมีความสำคัญต่อการรักษาความสมบูรณ์ของระบบต่างๆ และลักษณะที่ไม่น่าเชื่อถือของระบบต่างๆ
ที่มา: https://blockonomi.com/practical-byzantine-fault-tolerance/