هذا حقًا أحد أكثر اللحظات درامية في التاريخ المبكر للبيتكوين. وقد دخلت القصة في التاريخ باعتبارها "حادث تجاوز القيمة" (Value Overflow Incident)، والذي وقع في 15 أغسطس 2010. وعلى الرغم من أن البيتكوين في ذلك الوقت لم «يمت» تقنيًا، فقد واجه تهديدًا وجوديًا كان من الممكن أن يقضي على الثقة به إلى الأبد.
كيف ظهرت 184 مليار بيتكوين؟
ظهرت المشكلة في الكتلة 74 638. لاحظ أحدهم ثغرة في كود بيتكوين، مرتبطة بطريقة تحقّق النظام من المعاملات.
أنشأ المهاجم معاملة كانت تُرسل 92.2 مليار بيتكوين إلى عنوانين مختلفين (بإجمالي أكثر من 184 مليار BTC).
لماذا سمحت النظام بذلك؟ كان كود بيتكوين قبل تأكيد المعاملة يتحقق مما إذا كانت مجموع القيمة عند المخرَج لا يتجاوز مجموع القيمة عند المُدخل. لكن بسبب أن الأرقام كانت ضخمة للغاية، حدث "تجاوز سعة العدد الصحيح (integer overflow)".
* في البرمجة، عندما تتجاوز القيمة الحد الأقصى الذي يمكن أن يحتويه نوع بيانات معيّن، فإنها «تلتف» وتصبح سالبة أو صغيرة جدًا تساوي صفرًا تقريبًا. وبسبب ذلك، اعتبرت المنظومة أن مجموع المخرجات الضخم قيمة مقبولة وأكدت المعاملة.
كيف تم حل هذا العطل؟
يتطلب حل المشكلة ردًا سريعًا للغاية، وتكوّن من عدة خطوات محورية:
1. الكشف السريع وإنشاء التصحيح:
لاحظ ساتوشي ناكاموتو (مُنشئ بيتكوين) والمطور غافين أندرسن وجود شذوذ تقريبًا فور استخراج الكتلة الخبيثة. خلال بضع ساعات، كتب ساتوشي إصلاحًا للكود وأصدر إصدارًا جديدًا من برنامج بيتكوين — الإصدار 0.3.10.
٢. تغيير قواعد الإجماع
في الإصدار الجديد من الكود تمّت إضافة قاعدة صارمة:
سيقوم النظام تلقائيًا برفض أي معاملة تكون فيها القيمة عند الخرج أكبر من 21 مليون بيتكوين (أقصى انبعاث ممكن). وهذا حال دون تكرار مثل هذه الثغرة في المستقبل.
3. الفورك الصلب و«تراجع» التاريخ (إعادة تنظيم السلسلة).
كي يتم القضاء على 184 مليار بيتكوين مزيفة، كان على الشبكة حرفيًا «نسيان» الكتلة المخترَقة.
* دعا ساتوشي جميع عمال التعدين إلى التحديث فورًا إلى الإصدار 0.3.10.
* تجاهل عمال التعدين المحدثون الكتلة 74 638 (حيث كانت المعاملة الضارة) وبدأوا بناء سلسلة جديدة من الكتل، بدءًا من الكتلة السابقة «النظيفة» 74 637.
في سلسلة الكتل يوجد قانون: تُعتبر السلسلة الأطول هي الصحيحة. لفترة قصيرة وُجدت سلسلتان متوازيتان (واحدة قديمة بها خلل والأخرى مصحّحة). وبما أن معظم عمال التعدين الأوفياء انتقلوا بسرعة إلى الإصدار الجديد، فإن «السلسلة السليمة» تجاوزت السلسلة المخترَقة بسرعة.
استغرق الأمر نحو 53 كتلة (حوالي 9 ساعات) كي تصبح السلسلة الجديدة هي المسيطرة. تم رفض الكتلة المخترَقة (أصبحت ما يُسمّى «كتلة يتيمة»، أي كتلة السِّيرورة-اليتيمة)، واختفت المليارات المزيفة إلى الأبد من السجل الرسمي لسلسلة الكتل في بيتكوين.

---
هذه الحالة (المعروفة باسم CVE-2010-5139) هي الحالة الوحيدة في تاريخ بيتكوين التي خضعت فيها سلسلة الكتل لإعادة تنظيم عميقة جدًا بسبب ثغرة حرجة. بدل أن «تموت» الشبكة، أظهرت قدرتها على التعافي بسرعة بفضل التعاون اللامركزي بين المطورين وعمال التعدين.
