<?php wp_title('|', true, 'right'); ?>

ย้อนรอย Bug ในบล็อก 74638: เหตุการณ์สุดตะลึงที่พบ Bitcoin นับแสนล้านเหรียญในบล็อกเดียว

ติดตามสยามบล็อกเชนบนSiam Blockchain

นับตั้งแต่ Bitcoin (BTC) เปิดตัวสู่สาธารณะในปี 2009 สกุลเงินดิจิทัลเหรียญนี้ก็ได้เติบโตขึ้นในทุก ๆ ปี ทั้งในด้านมูลค่าตลาดและกรณีการใช้งาน แต่สิ่งที่ไม่เปลี่ยนแปลงนับตั้งแต่วันแรกจนถึงวันนี้ คงไม่พ้นขีดจำกัดด้านอุปทานสูงสุด ซึ่งถูกกำหนดไว้อย่างเข้มงวดโดยผู้สร้างอย่าง Satoshi Nakamoto

ในซอร์สโค้ด อุปทานสูงสุดของ Bitcoin ได้ถูกจำกัดไว้ที่ 21 ล้านเหรียญ ทว่าในวันหนึ่งของปี 2010 Bitcoin นับแสนล้านเหรียญกลับถูกสร้างขึ้นมาจากอากาศ

เกิดอะไรขึ้นในบล็อก 74638?

เมื่อ 13 ปีที่แล้ว มีใครบางคนใช้ประโยชน์จากข้อผิดพลาด (Bug) ในบล็อก 74638 จนทำให้บล็อกเดียวสามารถสร้าง Bitcoin ได้มากถึง 184,467,440,737.09551616 BTC ซึ่งต่อมาถูกแบ่งเท่า ๆ กัน และส่งไปยังกระเป๋าเงินสองแห่ง กระเป๋าละ 92,233,720,368.54277039 BTC

บล็อกนี้เป็นสาเหตุของ Value Overflow Incident หรือที่เรียกกันว่า “บั๊ก 1.84 แสนล้าน Bitcoin” ซึ่งข้อบกพร่องนี้เกิดขึ้นเนื่องจากรหัสของ Bitcoin ในขณะนั้นไม่ได้รับการออกแบบมาเพื่อป้องกันการล้นของค่าผลลัพธ์ของธุรกรรม (Output Value Overflow) ซึ่งหมายความว่าหากมีใครบางคนสร้างธุรกรรมที่มีผลลัพธ์ที่มีค่ามากเกินไป ระบบก็จะไม่สามารถตรวจสอบได้ และจะอนุมัติธุรกรรมนั้นโดยอัตโนมัติ

การแก้ปัญหาของ Satoshi Nakamoto

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

ภายในเวลา 5 ชั่วโมงหลังจากค้นพบช่องโหว่ Satoshi ได้ทำการ Soft Fork Blockchain ซึ่งจะรีเซ็ต Blockchain กลับไปสู่สถานะก่อนที่ช่องโหว่จะถูกใช้ประโยชน์ ส่งผลให้ธุรกรรมทั้งหมดที่สร้าง Bitcoin ขึ้นมาโดยใช้ช่องโหว่นี้ถูกยกเลิกไป

Soft Fork คือการอัปเดต Blockchain โดยไม่เปลี่ยนแปลงกฎการทำงานของ Blockchain เดิม ซึ่งจะทำให้ Blockchain แยกออกเป็นสองส่วน ส่วนหนึ่งคือ Blockchain เดิม และอีกส่วนหนึ่งคือ Blockchain ใหม่ที่มีกฎการทำงานที่แตกต่างกันเล็กน้อย

จากนั้น Satoshi ได้เผยแพร่ Bitcoin Client เวอร์ชันใหม่ โดยมีการเปลี่ยนแปลงการฟอร์กแบบซอฟต์แวร์ (soft forking change) ในกฎฉันทามติ (consensus rules) เพื่อปฏิเสธธุรกรรมที่ล้นค่าผลลัพธ์ (output value overflow transactions) รวมถึงธุรกรรมใด ๆ ที่จ่าย Bitcoin มากกว่า 21 ล้านเหรียญในผลลัพธ์ด้วยเหตุผลใด ๆ ก็ตาม

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

ที่มา: u.today