Cardano ประสบเหตุ การขัดข้องทางเทคนิค รุนแรงที่สุดนับตั้งแต่เปิดตัวในปี 2017 เมื่อธุรกรรมที่มีรูปแบบไม่ถูกต้องทำให้เกิดการแยกเชนยาว 14 ชั่วโมงในวันที่ 21 พฤศจิกายน แบ่งบล็อกเชนมูลค่า 14,000 ล้านดอลลาร์ออกเป็นฟอร์กที่แข่งขันกัน และจุดชนวนการถกเถียงอย่างหนักว่ากรณีนี้เป็นการโจมตีโดยเจตนาหรือเป็นเพียงการทดสอบที่ผิดพลาดรุนแรงเกินคาด
เหตุการณ์นี้ ซึ่งนักพัฒนาตั้งชื่อเล่นว่า “Poison Piggy” เปิดเผยบั๊กเก่าที่ซ่อนอยู่มา 3 ปีในซอฟต์แวร์โหนดของ Cardano ซึ่งสร้างมุมมองของบล็อกเชนที่ไม่เข้ากันสองชุดขึ้นมา
ขณะที่ผู้ก่อตั้ง Charles Hoskinson ยืนยันว่าการแยกเชนครั้งนี้เป็น “การโจมตีที่มีการวางแผนล่วงหน้า” ต้องให้ FBI เข้ามาเกี่ยวข้อง นักพัฒนารายหนึ่งที่ใช้ชื่อว่า “Homer J” กลับออกมาแสดงตัวรับผิดชอบ โดยบอกว่านี่เป็น “การกระทำที่สะเพร่า” ระหว่างท้าทายตัวเองเพื่อจำลองความผิดปกติที่เคยเกิดบนเทสต์เน็ต
ฟอร์กเกิดขึ้นได้อย่างไร
ตามรายงานเหตุการณ์ของ Intersect การแยกเชนนี้เกิดจากบั๊กด้านการซีเรียลไลซ์ที่โผล่มาครั้งแรกบน Cardano preview testnet เมื่อวันที่ 20 พฤศจิกายน มีผู้หนึ่งส่ง certificate การมอบหมายสิทธิ์ (delegation) ที่ผิดรูป โดยใช้แฮชที่ยาวเกินไปเข้าไปในระบบ คล้ายกับการมอบหมายไปที่ “RATSRATS” แทนที่จะเป็น “RATS” (พูลสเตกส่วนตัวของ Hoskinson)
โหนดรุ่นเก่าปฏิเสธแฮชไม่ถูกต้องนี้อย่างถูกต้อง ในขณะที่โหนดที่รันโค้ดซึ่งอัปเดตในเดือนพฤศจิกายน 2024 กลับตัดแฮชให้สั้นลงและมองว่ามีผลใช้ได้
ความต่างของเวอร์ชันนี้ทำให้เกิดสิ่งที่นักพัฒนาบล็อกเชน Pi Lanningham อธิบายไว้ ในรายงานหลังเหตุการณ์ฉบับละเอียดว่าเป็นสองเชนที่ไม่สามารถเข้ากันได้: “chicken chain” ที่รันโค้ดตรวจสอบที่เข้มงวดกว่า และ “pig chain” ที่ยอมรับธุรกรรมผิดรูปนั้น เมื่อวันที่ 21 พฤศจิกายนเวลาประมาณ 03:02 น. ตามเวลามาตรฐานตะวันออก (EST) มีการส่ง delegation ผิดรูปที่เกือบเหมือนเดิมเข้าสู่เมนเน็ต ทำให้เครือข่ายแยกตัวออก
อ่านเพิ่มเติม: Cardano's Hoskinson Calls Fiat System 'Ponzi Scheme', Tells 'Paper Hands' to Hold as Markets Lost $1 Trillion Since October
การเสื่อมถอยของบริการและผลกระทบ
การวิเคราะห์ของ Lanningham ระบุว่าความเสียหายมีนัยสำคัญแต่ยังอยู่ในขอบเขตจำกัด ระหว่างช่วงเวลา 14 ชั่วโมงนั้น pig chain ผลิตบล็อกได้ 846 บล็อก ในขณะที่ chicken chain สร้างได้ประมาณ 13,900 บล็อก การบรรจุธุรกรรมผ่านโครงสร้างพื้นฐานหลักชะลอตัวลงอย่างมาก โดยความล่าช้าแตะราว 400 วินาที และเวลาสร้างบล็อกยืดออกไปถึงราว 16 นาทีในช่วงที่เลวร้ายที่สุด
จากธุรกรรมที่สังเกตได้ 14,383 รายการ มี 479 รายการ หรือราว 3.3% ที่ปรากฏเฉพาะบน pig chain ซึ่งต่อมาถูกทิ้ง และไม่เคยเข้าสู่ประวัติศาสตร์เชนหลักสุดท้าย เมื่อมีการส่งธุรกรรมเหล่านี้ซ้ำ ส่วนมากกลายเป็นธุรกรรมไม่ถูกต้อง เนื่องจากช่วงเวลาความมีผลใช้ได้หมดอายุหรืออินพุตขัดแย้งกันเอง บริการ block explorer หลายแห่งประสบปัญหา กับเครือข่ายที่แตกแยก บางรายหยุดทำงานหรือแสดงข้อมูลขัดแย้งกัน
“นี่ถือเป็นการเสื่อมถอยของบริการอย่างรุนแรงสำหรับผู้ใช้ แต่ยังอยู่ในขอบเขตที่คาดได้สำหรับการให้บริการระดับ high-nines” Lanningham เขียน พร้อมย้ำว่าแม้คุณภาพบริการจะได้รับผลกระทบ แต่เงินของผู้ใช้ยังปลอดภัย และเครือข่ายยังคงเดินหน้าสร้างบล็อกได้ตลอดวิกฤต
การโจมตีหรืออุบัติเหตุ?
เหตุการณ์นี้จุดชนวนข้อถกเถียงดุเดือดเรื่องเจตนา Hoskinson มองว่านี่คือการโจมตีแบบเจาะจง โดย “ผู้ดำเนินการพูลสเตกที่ไม่พอใจ” ซึ่งใช้เวลาหลายเดือนมองหาวิธีทำร้ายเครือข่าย “มันเป็นการโจมตีแบบเจาะจง มีการวางแผนล่วงหน้า คงต้องใช้เวลาหลายชั่วโมงในการคิดวิธีทำ… มันเป็นการกระทำที่มุ่งร้าย” Hoskinson กล่าว พร้อมเสริมว่ามีการติดต่อ FBI แล้ว
อย่างไรก็ดี บุคคลที่อยู่เบื้องหลังธุรกรรมนี้ซึ่งโพสต์ในชื่อ “Homer J” บนโซเชียลมีเดีย เล่าเหตุการณ์อีกด้านหนึ่งว่า “ขอโทษครับ/ค่ะ (ผมรู้ว่าคำนี้ไม่เพียงพอเมื่อเทียบกับผลกระทบจากการกระทำของผม) สำหรับชาว Cardano มันเป็นผมเองที่ทำให้เครือข่ายเสี่ยงจากความสะเพร่าของผมเมื่อคืน มันเริ่มจากความท้าทายส่วนตัวแบบ ‘ลองดูสิว่าผมจะจำลองธุรกรรมเสียได้ไหม’ แล้วผมก็โง่พอที่จะ” นำมันขึ้นรันบนเมนเน็ตจริง
จังหวะเวลาของเหตุการณ์ยิ่งทำให้หลายฝ่ายสงสัย เนื่องจากความผิดปกติเดียวกันเพิ่งเกิดบนเทสต์เน็ตก่อนหน้าไม่ถึง 24 ชั่วโมง ชวนให้คิดว่าอาจมีการทดลองช่องโหว่นี้ก่อนนำไปใช้บนเมนเน็ต
การฟื้นตัวของเครือข่ายด้วยฉันทามติ
แม้เหตุการณ์จะรุนแรง แต่การตอบสนองของ Cardano แสดงให้เห็น โครงสร้างธรรมาภิบาลแบบกระจายศูนย์อย่างเป็นรูปธรรม แพตช์โหนดถูกเตรียมไว้แล้วจากเหตุการณ์บนเทสต์เน็ตก่อนหน้า ในช่วงกลางคืน Input Output Global, Cardano Foundation, Emurgo, Intersect, ตลาดซื้อขาย และผู้ดำเนินการพูลสเตกหลายรายประสานงานผ่านการโทรฉุกเฉิน เพื่ออัปเกรดเป็นเวอร์ชันที่แก้ไขแล้ว และให้ปฏิบัติตาม chicken chain ที่เข้มงวดกว่า
ไม่มีการย้อนเชนระดับโปรโตคอลหรือการ “รีสตาร์ต” แบบรวมศูนย์ เมื่อสเตกไหลเข้าสู่โหนดที่อัปเกรดแล้ว การผลิตบล็อกบน pig chain ก็ช้าลง ขณะที่ chicken chain เร็วขึ้น เมื่อฟอร์กที่แข็งแรงกว่าตามทฤษฎีแซงหน้าฟอร์กที่ปนเปื้อน คุณสมบัติ finality เชิงความน่าจะเป็นของ Ouroboros ก็ทำให้โหนดสลับไปยังเชนที่ยาวและหนาแน่นกว่าโดยอัตโนมัติ
“นี่คือหลักฐานเชิงประจักษ์ว่าฉันทามติแบบ Nakamoto ทำงานตามที่ออกแบบไว้ และทำให้เครือข่ายบรรจบสู่ประวัติศาสตร์เชนเดียว” Lanningham ระบุ Hoskinson ไปไกลกว่านั้น โดยเสนอว่าหากเหตุการณ์เดียวกันนี้เกิดขึ้นบนเครือข่ายอื่นอาจ “ถึงขั้นล่ม” แต่การออกแบบของ Cardano เปิดโอกาสให้มีเวลามากพอสำหรับการฟื้นตัวแบบประสานงาน
บทเรียนและการเสริมความแข็งแกร่งในอนาคต
ทั้ง Hoskinson และ Lanningham ยอมรับว่ามีจุดอ่อนร้ายแรงที่ถูกเปิดโปง “ข้อเท็จจริงที่ว่าบั๊กนี้หลุดรอดมาได้ถือเป็นความล้มเหลวของความเข้มงวดด้านการทดสอบของเราเอง” Lanningham กล่าว การพึ่งพา cardano-db-sync อย่างหนักทำให้ระบบนิเวศ “ตาบอดสนิท” เมื่อคอมโพเนนต์ดังกล่าวแครชจากธุรกรรมผิดรูป ผู้ดำเนินการพูลสเตกหลายรายอัปเกรดโหนดโดยไม่ได้วิเคราะห์เหตุผลเรื่องการเลือกฟอร์กด้วยตัวเอง แต่เชื่อคำแนะนำจากหน่วยงานผู้ก่อตั้งเป็นหลัก
แผนงานหลังเหตุการณ์เรียกร้องให้มีการทำ fuzzing และการทดสอบแบบขับเคลื่อนด้วยสเปกที่เข้มข้นขึ้น โปรโตคอล node-to-client ที่สมบูรณ์ยิ่งขึ้น เพื่อให้วอลเล็ตและตลาดซื้อขายสามารถติดตั้งกลไกตัดวงจรตามสุขภาพฉันทามติจริง เพิ่มความหลากหลายในโครงสร้างพื้นฐานการมอนิเตอร์ และการให้ความรู้ผู้ดำเนินการให้เข้าใจพฤติกรรมของ Ouroboros ภายใต้สภาวะตึงเครียดได้ดีขึ้น
ราคา ADA ร่วงลงราว 6% ระหว่างเหตุการณ์นี้ ทำผลงานแย่กว่าการฟื้นตัวของตลาดคริปโตโดยรวม และซื้อขายอยู่แถว ๆ 0.41 ดอลลาร์ การร่วงลงระดับปานกลางเมื่อเทียบกับความรุนแรงของเหตุการณ์บ่งชี้ว่าตลาดมองเหตุการณ์นี้เป็นการทดสอบความทนทานของเครือข่ายมากกว่าความล้มเหลวเชิงโครงสร้าง ซึ่งในท้ายที่สุด Cardano ก็ผ่านไปได้ แม้จะเผยให้เห็นจุดที่ต้องเร่งปรับปรุงอย่างเร่งด่วนก็ตาม
อ่านต่อ: Cardano Whales Accumulate $204 Million in Four Days Despite 30% Price Decline

