معاملات غير قياسية مصممة بعناية كانت قادرة على شغل عقدة Bitcoin Core بضع ثوانٍ لكل منها دون قطع اتصال المرسل، ما يمنح المهاجم وسيلة لتأخير انتشار الكتل. صُنفت CVE-2025-46598 منخفضة الخطورة، وأبلغ عنها Antoine Poinsot، وخُففت في v30.0 بتقليص أسوأ زمن للتحقق.
كتل تتجاوز 1GB قد تتخطى فحص الحجم بفيضان عددي في عقد Bitcoin Core ذات 32 بت فتسقطها عند الكتابة على القرص، لكن ذلك لا يحدث إلا بكتلة مضغوطة وضد ضحية يشغّل -maxmempool فوق 3GB وفيه 1GB من المعاملات. اكتشف Pieter Wuille الثغرة CVE-2025-46597 المصنفة منخفضة الخطورة، وأغلقها تقييد -maxmempool على أنظمة 32 بت في 29.1 و30.0.
تنخفض الحدود الدنيا الافتراضية للرسوم في Bitcoin Core 28.3: يهبط -blockmintxfee إلى 1 ساتوشي لكل kvB، و-minrelaytxfee و-incrementalrelayfee إلى 100 ساتوشي لكل kvB. لا تتغير رسوم المحفظة، وقد لا تنتشر المعاملات الأرخص ما لم تعمّ القيم الافتراضية الجديدة الشبكة. كما لم تعد أذونات القائمة البيضاء تنطبق على الاتصالات الواردة عبر onion (#33395).
إصلاحان لـ P2P في FillBlock ضمن Bitcoin Core 29.2: فحص لتحوير witness (#32646) وفحص للرأس الفارغ قبل الاستدعاء (#33296). ولم تعد فحوص TRUC تُفرض عند إعادة تنظيم السلسلة (#33504)، وتوقف getblock وgetblockheader عن إرجاع target رأس السلسلة (#33446).
تختفي حدود OP_RETURN عمليًا في Bitcoin Core 30.0: القيمة الافتراضية لـ -datacarriersize أصبحت 100,000، ويمكن للمعاملة الواحدة أن تحمل عدة مخرجات بيانات، فيما يعيد -datacarriersize=83 السقف القديم. وتنخفض رسوم الترحيل الافتراضية إلى 0.1 ساتوشي لكل vB، وتُحدّ عمليات التوقيع القديمة بـ 2500 لكل معاملة قياسية، ويغلّف أمر bitcoin الجديد الملفات التنفيذية القائمة.
يخضع التسجيل غير المشروط على القرص في Bitcoin Core 29.1 لسقف 1MiB في الساعة لكل موضع في الشيفرة (#32604)، ولا تتجاوز المعاملات القياسية 2500 عملية توقيع قديمة قابلة للتنفيذ. وتهبط رسوم الترحيل الافتراضية إلى 100 ساتوشي لكل kvB، بينما تقيّد نسخ 32 بت -maxmempool عند 500MB و-dbcache عند 1GiB.
أكثر بقليل من نصف تغييرات Bitcoin Core 28.2 يخص عملية البناء. بات Guix يوثّق حزمة تطبيق macOS لدى Apple ويوقّع كل ملفات macOS وWindows الثنائية (#31407)، وحصل depends على إصلاحات ترجمة لـ libevent على NetBSD (#31500) وfreetype مع cmake (#32693).
وقّع 31 مساهمًا في Bitcoin Core رسالة تقول إن برمجيات العقد لا ينبغي أن ترفض ترحيل معاملات عليها طلب اقتصادي مستمر وتصل إلى الكتل بانتظام، لأن المستخدمين والمُعدِّنين قادرون على الالتفاف حول هذه المرشحات. ويؤكدون أن ذلك ليس تأييدًا لاستخدام السلسلة في بيانات غير مالية، وأن المستخدمين وحدهم يختارون البرمجيات والسياسات التي يشغّلونها.
سنوات من إغراق addr بلا توقف قد تفيض بالمعرّف ذي 32 بت في مدير العناوين لدى Bitcoin Core وتُسقط العقدة، وهذا ما تبقى من هجوم خفّف منه أولًا تحديد المعدل في v22.0. ينتقل الإصدار 29.0 إلى معرّف 64 بت، فيغلق CVE-2024-52919 المصنفة منخفضة الخطورة. اكتشفها Eugene Siegel وأنجز التغيير Martin Zumsande.
أزال Bitcoin Core 29.0 دعم UPnP، وصار -natpmp يعمل بتطبيق مدمج لـ PCP وNAT-PMP بدل libnatpmp. وتدخل ephemeral dust كسياسة جديدة، ويضيف إصلاح الحجز المزدوج لوزن الكتلة الخيار -blockreservedweight، وتطلب العقد الآباء المفقودة من كل نظير أعلن عن معاملة يتيمة. وتبلغ الإصدارات 26.x وما قبلها نهاية الصيانة.
عند ضبط -port، يحسب Bitcoin Core 28.1 منفذ onion الافتراضي للاستماع على أنه ذلك المنفذ زائد واحد بدل تثبيته عند 8334 في الشبكة الرئيسية، فتعود إمكانية تشغيل عدة عقد محلية جنبًا إلى جنب دون تصادم عند الإقلاع. وقد تحتاج أسطر HiddenServicePort اليدوية في torrc إلى تعديل. كما تُمحى البيانات السرية في DecodeExtKey (#31166).
نظير يعلن عن كتلة ثم يماطل كان قادرًا على إبقاء عقدة Bitcoin Core منتظرة حتى 10 دقائق قبل أن تجرب غيره، وبوسع المهاجمين تكرار الحيلة. خُففت CVE-2024-52922، متوسطة الخطورة والتي أبلغ عنها وأصلحها Greg Sanders، في v25.1 وv26.0، وهما يتيحان طلب الكتلة فورًا من 3 نظراء compact block عاليي النطاق كحد أقصى.
يغلق الإصدار 27.2 من Bitcoin Core حالة سباق في كشف الاتصال الذاتي (#30394) ويصحح استدعاءات FillPSBT التي كانت تعيد complete=true خطأً (#30357). وتبدّل ترتيب إيقاف خيط تحميل الكتل والمجدول (#30435)، وأصبحت الشيفرة تُبنى مع miniupnpc 2.2.8 وGCC 15.
كانت الكتل المحوّرة من نظير واحد تمسح حالة التنزيل لدى نظراء آخرين أعلنوا الكتلة نفسها في Bitcoin Core قبل v25.0، فتنسى العقدة كتلة مضغوطة لا تزال تعيد بناءها. لاحظ Suhas Daftuar المشكلة، ويقصر #27608 كل نظير على حالته. وصُنفت CVE-2024-52921 متوسطة الخطورة.
كان يمكن إسقاط العقد العاملة بـ Bitcoin Core قبل v25.0 عن بُعد برسالة blocktxn مكررة لكتلة واحدة، فتنتهك تأكيدًا في الشيفرة يقضي بتشغيل FillBlock مرة واحدة. ولم يكن تصادم short-id ضروريًا: فإدراج معاملات غائبة عن جذر merkle للكتلة يقود إلى المسار نفسه. اكتشف Niklas Gögge الخلل عالي الخطورة CVE-2024-35202 وأصلحه.
موجة نشاط على الشبكة في مطلع مايو 2023، فاقمتها عقد تجسس، أبطأت انتشار الكتل والمعاملات، إذ استنزف فرز مجموعات inv-to-send المتضخمة معظم وقت خيط P2P. عولجت المشكلة، المصنفة متوسطة الخطورة، في Bitcoin Core v25.0 عبر #27610، الذي يحذف أسرع المعاملات الخارجة من mempool ويفرغ المجموعات بوتيرة أعلى كلما كبرت.
Testnet4 (BIP94) يصل مع Bitcoin Core 28.0، ومعه ترحيل حزم محدود لأزواج أب واحد وابن واحد، ومعاملات TRUC قياسية وفق BIP 431، ونوع مخرجات جديد هو Pay To Anchor. وصارت القيمة الافتراضية لـ -mempoolfullrbf هي 1، واختفت libbitcoinconsensus بعد إهمالها في 27.0.
سلاسل من الرؤوس منخفضة الصعوبة كانت قادرة على إسقاط عقد Bitcoin Core عن بُعد قبل v24.0.1، ويمكن إعادة استخدام سلسلة مصممة واحدة ضد أي عقدة في الشبكة. الإصلاح في #25717 يلزم العقدة بالتحقق من أن السلسلة تحمل عملًا كافيًا قبل تخزينها، وأنهى أيضًا الاعتماد على نقاط التفتيش في وجه الهجمات المعروفة. درجة الخطورة: عالية.
إغراق رسائل addr كان يُسقط عقدة Bitcoin Core، إذ تتسبب 2^32 عملية إدراج في addrman بفيضان عدّاد معرّفات 32 بت وانتهاك تأكيد في الشيفرة. أبلغ Eugene Siegel عن الخلل عالي الخطورة عام 2021، ويتضمن v22.0 إصلاح Pieter Wuille.
بانتحال صفة جهاز UPnP على الشبكة المحلية، كان بوسع مهاجم إغراق عقدة Bitcoin Core بردود M-SEARCH منتفخة حتى نفاد ذاكرتها. لم تتعرض سوى العقد المشغّلة مع -miniupnp، فالمكتبة معطلة افتراضيًا في غير ذلك. وأُصلح هذا الخلل منخفض الخطورة في v22.0.