Hindi na ipinapalagay ng signing sa Bitcoin Core 26.2 na sane ang isang TapMiniscript (#29853), naglalabas ng error ang getnetworkhashps sa mga invalid na parameter (#28554), at may ipinapatupad nang maximum ang setmocktime (#29869). Nabubuo na rin ito gamit ang miniupnpc 2.2.8.
Hanggang 32 MiB ang natatanggap na mensahe bago ang Bitcoin Core 0.10.1, kaya mapipilit ng umaatake ang ganoon kalaking RAM sa bawat koneksyon at posibleng mapabagsak ang node. Ang user ng Bitcointalk na si Evil-Knievel ang nag-ulat; ibinaba ng #5843 ang limitasyon sa 2 MiB, na itinaas kalaunan sa 4 MB para sa Segwit. Ipinagpaliban ang disclosure na inanunsyo para sa 2015, at noong 2024 lumabas ang mga detalye.
Dahil sa IPv6, naging mura ang pagpapalaki sa walang limitasyong ban list ng Bitcoin Core, at sa bawat GETADDR message ay kailangang suyurin ang listahang iyon para sa bawat ibinalik na address, na umaabot sa 2500. High ang rating; parehong inayos ng #19219, na lumabas sa 0.20.1 at 0.21.0, ang memory crash at ang pagsaid sa CPU.
Dalawang bug sa paghawak ng version message, isang signed-integer overflow at isang logic error sa abs64, ang nagpahintulot sa umaatake na pilipitin ang adjusted time ng biktima hanggang tanggihan nito ang mga bagong block dahil masyadong malayo raw sa hinaharap ang petsa. Kailangang kabilang ang umaatake sa unang 200 peer na kumonekta. Medium ang rating at inayos ito sa Bitcoin Core 0.21.0.
Puwedeng mag-crash ang Bitcoin-Qt kapag binuksan ang pekeng BIP72 payment link: maaaring tumuro ang r parameter nito sa napakalaking file, at susubukan ng app na maglaan ng memory para rito habang tahimik na nagda-download sa background. Nawala ang Medium-severity na bug nang tanggalin ng #17165 ang BIP70 support, na lumabas sa 0.20.0.
Napapatigil nang ilang oras ang isang node ng mga sadyang binuong orphan transaction, invalid pero magastos i-validate, dahil bawat bagong tanggap na transaksyon ay nagpapasimula ng quadratic na paghahanap sa orphan cache. Pinuputol ng #15644 ni Pieter Wuille ang gawaing iyon para makapagproseso ng bagong mensahe sa sandaling may tumugma. Nakarating sa users ang High-severity na ayos sa Bitcoin Core 0.18.0.
Dahil sa isang malformed na GETDATA message, naiiwang umiikot sa 100% CPU ang net_processing thread sa mga bersyon ng Bitcoin Core bago ang 0.20.0, at nadaragdagan ng 1.5 MB ang memory sa bawat umaatakeng peer. Patuloy pa ring napaglilingkuran ang ibang peer, kaya Low ang rating. Si John Newbery ang nakatuklas ng bug at nag-ayos nito sa #18808.
Nakalusot sa checkpoint logic ang mga header na direktang nakapatong sa genesis block, na difficulty 1 lang ang kailangan, mula Bitcoin Core 0.12.0 hanggang 0.15.0; kaya napapalaki ng spammer ang mapBlockIndex nang walang limitasyon at posibleng maubusan ng memory at bumagsak ang node. Iniulat ni Cory Fields ang Medium-severity na bug noong 2017, at isinara ito ng #11028.
Sa iisang INV na may lamang 50,000 block items, napipilitan ang isang node na magpila ng 50,000 getheaders responses na halos tig-1 kB, at kapag ayaw basahin ng peer ang mga ito, nananatiling puno ang 50 MB na send buffer. Isang GETHEADERS na lang kada INV ang ipinapadala sa #18962 ni John Newbery, na iniharap bilang pagtitipid sa bandwidth at lumabas sa 0.20.0.
Sa pagpigil ng GETDATA replies at pag-spam ng mga pekeng anunsyo para maalis ang isang transaksyon sa g_already_asked_for map na may 50,000 entry, nauulit-ulit ng umaatake ang pag-anunsyo nito at napipigilan ang biktima na hingin ito sa iba. Isiniwalat ni John Newbery ang bug, Medium ang rating; inayos ito ng #19988 ni Pieter Wuille sa Bitcoin Core 0.21.0.
May ikalawang buffer overflow sa miniupnpc na natuklasan ni Wladimir J. Van Der Laan: nagli-leak ito ng data at puwedeng ikabit sa CVE-2015-6031 para sa remote code execution, na ipinakita niya laban sa miniupnpc 1.6-precise ng Ubuntu. Hindi direktang nailipat ang exploit niya sa Bitcoin Core, at nasa bersyong 0.12 ang ayos noong Pebrero 2016.
Puro bug fix ang laman ng Bitcoin Core 27.1: gumagana na ang fee bump ng GUI para sa unsigned na transaksyon, hindi na tumatanggap ng port ang proxy IP field nito, at natutukoy na ng GetAddedNodeInfo() ang addnode CJDNS peers (#30085). Nagbago rin ang paghawak sa TapMiniscript habang nagsa-sign (#29853).
Naka-on na bilang default ang BIP324 v2 transport sa Bitcoin Core 27.0, at hinahanap ng bagong algorithm na CoinGrinder ang pinakamagaang set ng inputs sa feerates na 30 sat/vB pataas. Inalis sa consensus code ang network-adjusted time at system time na ang kapalit, kaya mas mahalaga sa operators ang tamang orasan. Deprecated na ang libbitcoinconsensus at planong tanggalin sa v28.
Hindi na nagpoproseso ng mutated blocks ang mga node sa Bitcoin Core 25.2 (#29412). Inayos din ang segfault sa getrawtransaction (#29003), ang use-after-free sa WalletBatch::EraseRecords (#29176) at ang pag-crash ng GUI kapag pinili ang "Mask values".
Parehong ECIES-X25519 at ElGamal encryption na ang gamit ng I2P sessions sa Bitcoin Core 26.1 (#29200), at nagtatala na ang node ng progreso habang nilo-load ang mempool. Kabilang sa mga ayos ang pagtanggi sa mutated blocks (#29412) at ang wallet na lumalaktaw sa BnB coin selection kapag naka-on ang SFFO (#28994).
Unang lumabas sa Bitcoin Core 26.0 ang experimental na BIP324 v2 transport, naka-off bilang default at binubuhay ng -v2transport. Nilo-load ng bagong loadtxoutset RPC ang assumeutxo snapshots, kaya magagamit na ang node sa loob ng ilang minuto habang tinatapos sa background ang pag-validate ng orihinal na chainstate, at ipinapadala naman ng submitpackage ang raw transactions sa mempool bilang package.
Hindi na nagbibigay ng lipas na fee estimates ang Bitcoin Core 24.2 (#27622), at naitama ang paghawak ng RPC sa mga invalid na bech32 address (#27727). Build system at CI ang sakop ng karamihan sa ibang pagbabago, kabilang ang ayos sa pagbuo ng macOS Qt package gamit ang Xcode 15 linker (#28543).
Dumating sa Bitcoin Core 25.1 ang sabayang pag-download ng compact blocks (#27626). Kasama sa ibang ayos ang REST crash sa /deploymentinfo (#27853), ang pagsasara ng server matapos madiskonekta ang remote client (#28551) at ang wallet migration, na tumatanggi na sa mga invalid na script (#28125).
Bumibilis ang rescan ng descriptor wallets sa Bitcoin Core 25.0 kapag may BIP158 compact block filters sa pamamagitan ng -blockfilterindex=1, at may bagong scanblocks RPC na naghahanap sa mga filter na iyon. Tinatanggap na ng relay policy ang mga transaksyong mula 65 non-witness bytes pataas. Sa -blocksonly, bumaba mula 300MB tungong 5MB ang maximum na memory ng mempool.
Tatlong pagbabago sa P2P ang sentro ng Bitcoin Core 23.2: wala nang pagkasira ng peers.dat (#26909), wala nang maagang pagbura sa download state ng ibang peer (#27608) at mas mabilis na inv-to-send queues (#27610). Build at CI na ang natitira, gaya ng pag-compile ng bdb gamit ang clang-16 sa aarch64.