Prysm ซึ่งเป็น Ethereum consensus client เปิดเผยว่า ผู้ตรวจสอบพลาดผลตอบแทนไปถึง 382 ETH หรือมากกว่า 1 ล้าน USD หลังจากเกิดข้อผิดพลาดในซอฟต์แวร์ ซึ่งส่งผลกระทบต่อเครือข่ายในช่วงหลังการอัปเกรด Fusaka ครั้งล่าสุด
เหตุการณ์นี้ ตามรายละเอียดในรายงานหลังเหตุการณ์ที่มีชื่อว่า “Fusaka Mainnet Prysm incident,” มีสาเหตุมาจากการใช้ทรัพยากรบนระบบมากเกินไป ซึ่งกระทบต่อแทบทุก node ของ Prysm และทำให้เกิดการขาดหายของ block และ attestation
Sponsoredอะไรเป็นสาเหตุให้ Prysm ล่ม
ตามข้อมูลจาก Offchain Labs ซึ่งเป็นผู้พัฒนา Prysm ปัญหานี้เริ่มเกิดขึ้นในวันที่ 4 ธันวาคม เมื่อข้อผิดพลาดในซอฟต์แวร์ที่เคยถูกเพิ่มเข้ามาก่อนหน้านี้ ก่อให้เกิดความล่าช้าในการร้องขอจาก validator
ความล่าช้านี้ส่งผลให้เกิด block และ attestation ที่ขาดหายไปทั่วทั้งเครือข่าย
ทีมงานอธิบายว่า node ของ Prysm beacon ได้รับ attestation จาก node ที่อาจไม่ได้ซิงก์กับเครือข่าย Attestation เหล่านี้อ้างอิง block root จาก epoch ก่อนหน้า
ความผิดปกตินี้นำไปสู่การขาดหายของ epoch ทั้งหมด 41 epoch และมี block ที่ขาดหาย 248 block จากทั้งหมด 1,344 slot ซึ่งคิดเป็นอัตรา slot ที่ขาดหาย 18.5% และทำให้จำนวนผู้เข้าร่วมเครือข่ายลดลงเหลือ 75% ในระหว่างที่เกิดเหตุการณ์
Offchain Labs ระบุว่า bug ที่เป็นต้นเหตุของพฤติกรรมนี้ถูกเพิ่มและนำไปทดสอบใน testnet ประมาณ 1 เดือนก่อนจะเกิดบน mainnet หลังจากอัปเกรด Fusaka
แม้ว่าการแก้ไขชั่วคราวจะช่วยลดผลกระทบเฉพาะหน้าได้ แต่ Prysm ระบุว่าได้เปลี่ยนแปลงตรรกะสำหรับการตรวจสอบ attestation แบบถาวรแล้ว เพื่อป้องกันไม่ให้เหตุการณ์เช่นนี้เกิดขึ้นอีก
Sponsoredความหลากหลายของไคลเอนต์ในเครือข่าย Ethereum
อย่างไรก็ตาม เหตุการณ์ที่เกิดขึ้นได้ก่อให้เกิดการจับตามองประเด็นเรื่องความกระจุกตัวของ client ของ Ethereum และความเสี่ยงจากการพึ่งพาซอฟต์แวร์เพียงเจ้าเดียว
Offchain Labs กล่าวว่าหาก Prysm ครองส่วนแบ่งฐาน validator ของ Ethereum มากกว่านี้ เหตุการณ์นี้อาจส่งผลรุนแรงกว่านี้ โดยบริษัทชี้ให้เห็นถึงความหลากหลายของ client ว่าเป็นปัจจัยสำคัญที่ช่วยป้องกันการล่มของเครือข่ายในวงกว้าง
ถ้า client รายใดครองมากกว่า 1 ใน 3 ของเครือข่าย อาจเกิดการหยุดชั่วคราวของ finality และ block ที่ขาดหายมากขึ้น ส่วน client ที่มีมากกว่าสองในสาม อาจทำให้เกิด finalization ของ chain ที่ไม่ถูกต้องได้
ถึงแม้ว่าจะมีการแก้ไขเฉพาะหน้า แต่เหตุการณ์ครั้งนี้ได้เร่งให้เกิดการเรียกร้องเพิ่มความหลากหลายของ client มากขึ้น
ข้อมูลจาก Miga Labs แสดงว่า Lighthouse ยังคงเป็น Ethereum consensus client ที่มี validator มากที่สุด คิดเป็น 51.39% ขณะที่ Prysm อยู่ที่ 19.06% ตามด้วย Teku 13.71% และ Nimbus 9.25%
ส่วนแบ่งของ Lighthouse อยู่ห่างจากเกณฑ์ที่นักวิจัยบางรายมองว่าเสี่ยงต่อระบบโดยรวมประมาณ 15% พอดี
ดังนั้น นักพัฒนากับผู้มีส่วนร่วมในระบบนิเวศจึงได้กระตุ้นให้ validators พิจารณาสลับไปใช้ไคลเอนต์ทางเลือกอื่นเพื่อช่วยลดความเสี่ยงที่ช่องโหว่จากซอฟต์แวร์ตัวเดียวอาจสร้างผลกระทบต่อการดำเนินงานหลักของบล็อกเชน