ख़ास तौर पर गढ़े गए नॉन-स्टैंडर्ड ट्रांजैक्शन Bitcoin Core नोड को हर बार कुछ सेकंड उलझाए रख सकते थे और भेजने वाले का कनेक्शन भी नहीं कटता था, यानी हमलावर ब्लॉक के प्रसार में देरी करा सकता था। कम गंभीरता वाली CVE-2025-46598 की रिपोर्ट Antoine Poinsot ने की थी; v30.0 में सबसे ख़राब स्थिति का वैलिडेशन समय घटाकर इसका असर कम किया गया।
1GB से बड़े ब्लॉक 32-बिट Bitcoin Core नोड में साइज़ जाँच को ओवरफ़्लो कर डिस्क पर लिखते समय उसे क्रैश कर सकते थे, पर सिर्फ़ compact block के रूप में और सिर्फ़ ऐसे शिकार पर जो 3GB से ऊपर -maxmempool चला रहा हो और जिसमें 1GB ट्रांजैक्शन भरे हों। CVE-2025-46597 Pieter Wuille ने खोजी, गंभीरता कम है; 32-बिट सिस्टम पर -maxmempool की सीमा बाँधकर 29.1 और 30.0 में इसे बंद किया गया।
न्यूनतम फ़ीरेट के डिफ़ॉल्ट Bitcoin Core 28.3 में घट गए: -blockmintxfee अब 1 सातोशी प्रति kvB, -minrelaytxfee और -incrementalrelayfee 100 सातोशी प्रति kvB। वॉलेट के फ़ीरेट जस के तस हैं, और जब तक नए डिफ़ॉल्ट नेटवर्क में नहीं फैलते, सस्ते ट्रांजैक्शन शायद आगे न पहुँचें। व्हाइटलिस्ट अनुमतियाँ अब onion इनबाउंड कनेक्शन पर लागू नहीं होतीं (#33395)।
FillBlock को Bitcoin Core 29.2 में दो P2P सुधार मिले: witness म्यूटेशन की जाँच (#32646) और कॉल से पहले खाली हेडर की जाँच (#33296)। रीऑर्ग के दौरान TRUC जाँच अब लागू नहीं होती (#33504), और getblock व getblockheader टिप का टारगेट लौटाना बंद कर चुके हैं (#33446)।
OP_RETURN की सीमा Bitcoin Core 30.0 में व्यावहारिक रूप से ख़त्म हो गई: -datacarriersize का डिफ़ॉल्ट 1,00,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 ऐप बंडल को नोटराइज़ और सभी macOS व Windows बाइनरी को कोडसाइन करता है (#31407), और depends में NetBSD पर libevent (#31500) तथा cmake के तहत freetype (#32693) के कंपाइल सुधार आए हैं।
Bitcoin Core के 31 योगदानकर्ताओं ने एक पत्र पर दस्तख़त कर कहा है कि जिन ट्रांजैक्शन की आर्थिक माँग बनी हुई है और जो भरोसेमंद ढंग से ब्लॉक तक पहुँचते हैं, उन्हें रिले करने से नोड सॉफ़्टवेयर को मना नहीं करना चाहिए, क्योंकि यूज़र और माइनर ऐसे फ़िल्टर से बचकर रास्ता निकाल लेते हैं। उनका ज़ोर है कि यह ग़ैर-वित्तीय डेटा के इस्तेमाल का समर्थन नहीं है और कौन सा सॉफ़्टवेयर व नीति चलानी है, यह यूज़र ही तय करते हैं।
बरसों तक लगातार addr स्पैम से Bitcoin Core के एड्रेस मैनेजर का 32-बिट आइडेंटिफ़ायर ओवरफ़्लो होकर नोड को क्रैश कर सकता था; यह उसी हमले का बचा हुआ हिस्सा था जिसे v22.0 की रेट-लिमिटिंग ने पहले कुंद किया था। वर्ज़न 29.0 का 64-बिट आइडेंटिफ़ायर कम गंभीरता वाली CVE-2024-52919 को बंद करता है। इसे Eugene Siegel ने खोजा और बदलाव Martin Zumsande ने किया।
UPnP का समर्थन Bitcoin Core 29.0 से विदा हो गया; -natpmp अब libnatpmp के बजाय बिल्ट-इन PCP और NAT-PMP पर चलता है। ephemeral dust नई पॉलिसी के रूप में आई है, ब्लॉक वज़न के दोहरे आरक्षण का सुधार -blockreservedweight जोड़ता है, और नोड orphan की घोषणा करने वाले हर पीयर से उसके गायब पैरेंट माँगते हैं। 26.x और पुराने वर्ज़न Maintenance End पर पहुँच गए।
-port सेट होने पर Bitcoin Core 28.1 डिफ़ॉल्ट onion लिसनिंग पोर्ट को मेननेट पर 8334 पर टिकाए रखने के बजाय उसी पोर्ट में एक जोड़कर निकालता है, ताकि कई लोकल नोड स्टार्टअप की टक्कर के बिना फिर साथ चल सकें। torrc की हाथ से लिखी HiddenServicePort पंक्तियाँ बदलनी पड़ सकती हैं। DecodeExtKey में सीक्रेट डेटा भी अब साफ़ होता है (#31166)।
ब्लॉक की घोषणा कर अटक जाने वाला पीयर Bitcoin Core नोड को कहीं और कोशिश करने से पहले 10 मिनट तक रोके रख सकता था, और हमलावर यह चाल दोहरा सकते थे। मध्यम गंभीरता वाली CVE-2024-52922 की रिपोर्ट और सुधार, दोनों Greg Sanders के हैं; v25.1 और v26.0 इसका असर घटाते हैं, क्योंकि वे ब्लॉक को 3 तक हाई-बैंडविड्थ compact block पीयर से एक साथ माँग सकते हैं।
सेल्फ़-कनेक्ट पहचान की रेस कंडीशन Bitcoin Core के वर्ज़न 27.2 में बंद हुई (#30394), और ग़लत ढंग से complete=true लौटाने वाले FillPSBT कॉल भी सुधारे गए (#30357)। लोड ब्लॉक थ्रेड और शेड्यूलर अब दूसरे क्रम में बंद होते हैं (#30435), और कोड miniupnpc 2.2.8 व GCC 15 के साथ बिल्ड होता है।
v25.0 से पहले के Bitcoin Core में एक पीयर के म्यूटेट किए गए ब्लॉक उसी ब्लॉक की घोषणा करने वाले दूसरे पीयर की डाउनलोड स्थिति मिटा सकते थे, और नोड वह compact block भूल जाता जिसे वह जोड़ ही रहा था। समस्या पर Suhas Daftuar की नज़र पड़ी, और #27608 हर पीयर को उसकी अपनी स्थिति तक सीमित करता है। CVE-2024-52921 की गंभीरता मध्यम है।
v25.0 से पहले का Bitcoin Core चला रहे नोड एक ही ब्लॉक के लिए दोबारा भेजे गए blocktxn संदेश से दूर बैठे क्रैश कराए जा सकते थे, क्योंकि इससे यह असर्शन टूट जाता था कि FillBlock सिर्फ़ एक बार चलता है। short-id टक्कर की ज़रूरत नहीं थी: ब्लॉक के मर्कल रूट से बाहर के ट्रांजैक्शन जोड़ने से भी वही रास्ता खुलता था। उच्च गंभीरता वाली इस खामी, CVE-2024-35202, को Niklas Gögge ने खोजा और ठीक किया।
मई 2023 की शुरुआत में नेटवर्क पर अचानक बढ़ी गतिविधि ने, जिसे स्पाई नोड ने और बिगाड़ा, ब्लॉक और ट्रांजैक्शन का प्रसार धीमा कर दिया, क्योंकि फूले हुए inv-to-send सेट को छाँटने में P2P थ्रेड का लगभग सारा समय जा रहा था। मध्यम गंभीरता की यह समस्या Bitcoin Core v25.0 में #27610 से ठीक हुई, जो मेमपूल से जा चुके ट्रांजैक्शन जल्दी हटाता है और सेट बढ़ने पर उन्हें तेज़ी से खाली करता है।
Testnet4 (BIP94) Bitcoin Core 28.0 के साथ आ गया है, और उसके साथ 1 पैरेंट-1 चाइल्ड जोड़ों के लिए सीमित पैकेज रिले, BIP 431 के तहत स्टैंडर्ड TRUC ट्रांजैक्शन तथा नया Pay To Anchor आउटपुट टाइप। -mempoolfullrbf का डिफ़ॉल्ट अब 1 है, और 27.0 में डिप्रिकेट हुआ libbitcoinconsensus हटा दिया गया है।
कम डिफ़िकल्टी वाले हेडर की चेन v24.0.1 से पहले के Bitcoin Core नोड को दूर से क्रैश कर सकती थी, और एक ही गढ़ी हुई चेन नेटवर्क के किसी भी नोड के ख़िलाफ़ दोबारा इस्तेमाल हो सकती थी। #25717 के सुधार में नोड स्टोर करने से पहले जाँचता है कि चेन में पर्याप्त वर्क है या नहीं, जिससे ज्ञात हमलों के ख़िलाफ़ चेकपॉइंट पर निर्भरता भी ख़त्म हुई। गंभीरता: उच्च।
addr संदेशों की बौछार Bitcoin Core नोड को क्रैश कर सकती थी: addrman में 2^32 इंसर्शन से 32-बिट ID काउंटर ओवरफ़्लो होकर असर्शन तोड़ देता था। Eugene Siegel ने 2021 में इस उच्च गंभीरता वाले बग की रिपोर्ट की, और v22.0 में Pieter Wuille का सुधार है।
लोकल नेटवर्क पर UPnP डिवाइस बनकर हमलावर Bitcoin Core नोड को फूले हुए M-SEARCH जवाब भेजता रह सकता था, जब तक उसकी मेमोरी ख़त्म न हो जाए। ख़तरा सिर्फ़ -miniupnp के साथ शुरू किए गए नोड को था, क्योंकि यह लाइब्रेरी डिफ़ॉल्ट रूप से बंद रहती है। कम गंभीरता वाला यह बग v22.0 में ठीक हुआ।