บทนำ: ลายเซ็น BLS และเรื่องราวของ ETH2.0
หมายเหตุบรรณาธิการ: บทความนี้มาจากผู้ที่ชื่นชอบ Ethereum (ID: ethfans)หมายเหตุบรรณาธิการ: บทความนี้มาจาก
ผู้ที่ชื่นชอบ Ethereum (ID: ethfans)
ผู้ที่ชื่นชอบ Ethereum (ID: ethfans)
, ผู้แต่ง: Justin Drake, แปลและพิสูจน์อักษร: Min Min & A Jian, พิมพ์ซ้ำโดย Odaily โดยได้รับอนุญาต
เป็นเวลาประมาณ 2.5 ปีแล้วที่ ETH 2.0 นำเทคโนโลยีลายเซ็น BLS มาใช้ นี่คือเหตุการณ์สำคัญบางส่วน
ในเดือนพฤษภาคม 2018 ฉันได้เผยแพร่บทความบน ethresear.ch โดยชี้ให้เห็นว่าลายเซ็น BLS สามารถอนุญาตให้ ETH 2.0 บรรลุกลไกการจำนำขั้นต่ำที่ 32 ETH และ 1024 ชาร์ด ซึ่งสามารถเพิ่มระดับของการกระจายอำนาจและความสามารถในการขยายขนาดได้หลายลำดับความสำคัญ .
ในเดือนตุลาคม 2018 ฉันเขียนถึง Dan Boneh (ที่ปรึกษาการเข้ารหัสของ Ethereum Foundation) ว่า "เรากำลังพิจารณาใช้เส้นโค้ง BLS12-381 ใน ETH 2.0 ตามตัวอย่าง Zcash และ Chia" ซึ่งเขาตอบกลับไปว่า: "(อ้างอิงจาก ความรู้ปัจจุบันของเรา) เส้นโค้ง BLS12-381 เป็นตัวเลือกที่เหมาะสม" เบื้องหลังคือเอกสารฉบับปี 2016 ได้ลดระดับความปลอดภัยของ BN254 จากประมาณ 128 บิตเป็น 110 บิต เนื่องจากโครงสร้างพื้นฐานบล็อกเชนได้รับการออกแบบให้ใช้งานได้นานหลายทศวรรษ เราจึงนำการอนุรักษ์การเข้ารหัสมาใช้ และทีมวิจัย ETH 2.0 ไม่ค่อยพอใจกับสถานะที่เป็นอยู่ของ BN254 (อีกเหตุผลหนึ่งในการใช้ลายเซ็น BLS คือการใช้การจับคู่เส้นโค้งในระบบการผลิตแบบเข้ารหัสนั้นมีความก้าวร้าวโดยเนื้อแท้)
ในเดือนมีนาคมและเมษายน 2019 เราได้ทำการโทรแจ้ง ฉันติดต่อกับโครงการบล็อกเชนหลายโครงการ (Chia, Filecoin, Dfinity, Cosmos, Ledger และอื่นๆ) โดยมีเป้าหมายเพื่อให้โครงการทั้งหมดใช้การเข้ารหัสแบบดั้งเดิมสำหรับการทำงานร่วมกัน การใช้ไลบรารีซ้ำ การตรวจสอบความปลอดภัยที่ใช้ร่วมกัน ฯลฯ โดยเฉพาะอย่างยิ่ง เป้าหมายของเราคือการให้ผู้คนมีส่วนร่วมในงานกำหนดมาตรฐาน IETF BLS งานนี้เริ่มต้นโดยอิสระและยังอยู่ในช่วงเริ่มต้นในขณะนั้น ผู้คนหลายสิบคนมีส่วนร่วมในความพยายามนี้ สร้างกลุ่มโทรเลขและจัดการประชุมทางโทรศัพท์เป็นประจำ
นอกจากนี้ ในเดือนเมษายน 2019 Riad Wahby ได้เสนอการแฮชเส้นโค้งเวลาคงที่สำหรับ BLS12-381 ในบทความนี้ การแฮชตามเวลาคงที่มีประโยชน์มาก มันสามารถลดความซับซ้อนของการคำนวณทางคณิตศาสตร์ของ SNARK ลดความซับซ้อนของการวัดก๊าซของ blockchain opcodes และแก้ปัญหาด้านเวลาและการโจมตี DoS สำหรับแอปพลิเคชันเฉพาะ มันกลายเป็นส่วนหนึ่งของมาตรฐาน IETF โดยธรรมชาติ อันที่จริง งานการปรับสภาพที่เหลือส่วนใหญ่ (เช่น การเลือกตัวสร้างและการจัดลำดับจุด) ดำเนินการโดย Zcash
ในเดือนกันยายน 2019 Carl Beekhuizen เขียน EIPs สามรายการ (2333, 2334, 2335) เพื่อสร้างมาตรฐาน BLS จากแง่มุมอื่นนอกเหนือจากมาตรฐาน IEFT เช่น การสำรองข้อมูลที่ปลอดภัยด้วยควอนตัม กระเป๋าเงิน HD (กระเป๋าเงินที่กำหนดขึ้นตามลำดับชั้น) และไลบรารีคีย์ เป็นต้น
ในเดือนพฤศจิกายน 2019 เรากำลังดำเนินการติดตั้ง BLS12-381 ที่มีประสิทธิภาพดีที่สุด ฉันเริ่มเรียนรู้การเพิ่มประสิทธิภาพ BLS ที่ซับซ้อนมากขึ้นด้วยตัวเอง และได้พบกับ Shigeo Mitsunari (ผู้เขียนเรื่องการติดตั้งใช้งานไลบรารี Herumi ที่เร็วที่สุดในปัจจุบัน) ผ่านการแนะนำโดย Raul จาก Prysm ไม่กี่สัปดาห์ต่อมา Ethereum Foundation ได้ให้สิทธิ์แก่ Shigeo เพื่อติดตามร่างมาตรฐาน IETF เขียนการผูกสำหรับไคลเอนต์ ETH 2.0 และปรับปรุงประสิทธิภาพของไลบรารี Herumi แม้ว่าประสิทธิภาพของห้องสมุด Herumi จะดีที่สุด แต่ห้องสมุดก็มีความซับซ้อนและยากที่จะตรวจสอบอย่างเป็นทางการ
ในเดือนมกราคม 2020 Supranational [ทีมงานของอดีตทหารผ่านศึกของ Intel สามคนที่รับผิดชอบงานฮาร์ดแวร์ทั้งหมดในโครงการ VDF (Verifiable Delay Function) ซึ่งฉันมีการประชุมทางโทรศัพท์ทุกสัปดาห์ด้วย] บอกฉันว่าพวกเขาเชื่อว่าสามารถสร้างไลบรารีที่ไม่เพียงมีประสิทธิภาพดีกว่าเท่านั้น ห้องสมุด Herumi ในการปฏิบัติงาน แต่ยังเป็นมิตรกับการตรวจสอบอย่างเป็นทางการ ด้วยเหตุนี้พวกเขาจึงคัดเลือก Andy Polyakov เป็นพิเศษ Andy Polyakov เป็นวิศวกรที่เชี่ยวชาญด้านการเข้ารหัสที่มีประสิทธิภาพสูงพร้อมประสบการณ์ในการตรวจสอบอย่างเป็นทางการ
ในเดือนเมษายน 2020 Ethereum Foundation และ ProtocolLabs ได้มอบทุนสนับสนุนแก่ Supranational ในการสร้างไลบรารี่ระดับการผลิตและให้การติดตั้งแอสเซมบลีได้รับการตรวจสอบอย่างเป็นทางการโดยทีม Galois ในเดือนมิถุนายน 2020 BLST เวอร์ชันแรกเปิดตัวพร้อมประสิทธิภาพที่น่าทึ่ง ในอีกไม่กี่เดือนข้างหน้า ลูกค้า ETH 2.0 ได้ผสานรวม BLST เมื่อมีการสร้างพันธบัตรและรองรับการผสานรวมที่ได้รับ ไคลเอนต์ ETH 2.0 ได้รับการปรับปรุงอย่างมากในด้านประสิทธิภาพ (ดูที่นี่และที่นี่สำหรับตัวอย่างที่เฉพาะเจาะจง)
ในปี 2020 หนึ่งในปัจจัยที่ซับซ้อนที่เราต้องจัดการคือการแก้ไขร่างมาตรฐาน IEFT การปรับเปลี่ยนเหล่านี้ส่วนใหญ่อยู่นอกเหนือการควบคุมของเรา แม้ว่าการปรับเปลี่ยนเหล่านี้จะเล็กน้อยทางเทคนิค แต่ก็ทำได้ยากเนื่องจากต้องอาศัยการประสานงานระหว่างหลายฝ่าย การเปลี่ยนแปลงเหล่านี้สร้างแรงเสียดทานอย่างมาก บางครั้งต้องใช้เวลาหลายชั่วโมงในการอภิปรายเกี่ยวกับถั่วและโบลต์ (รายละเอียดสร้างความแตกต่าง)


