Kromě už známého pádu umožňovala CVE-2018-17144 ve verzích 0.15.X až 0.16.2 těžaři nafouknout zásobu bitcoinů tím, že v jedné transakci utratil výstup dvakrát. Vývojáři tuto část tajili, aby systémy stihly přejít na 0.16.3 nebo 0.17.0rc4. Předpokládá se, že záplatu má přes polovinu hashrate, pokusy o zneužití nejsou známy a dotčeným uživatelům se důrazně doporučuje aktualizovat.
CVE-2018-17144 shazuje Bitcoin Core 0.14.0 až 0.16.2 na bloku s transakcí, která jeden vstup utrácí dvakrát, a uživatelé mají okamžitě přejít na 0.16.3. Takový blok by mohl vyrobit jen těžař ochotný vzdát se nejméně 12,5 BTC povoleného příjmu.
RPC verifytxoutproof v Bitcoin Core 0.16.2 už nepodlehne drahému útoku na SPV důkazy odhalenému na začátku června, skutečné SPV klienty to ale dál ohrožuje. Samostatná oprava zajišťuje, že abandontransaction zahodí všechny potomky transakce a nezastaví se u jejích dětí.
OP_CODESEPARATOR v legacy podpisových skriptech už Bitcoin Core 0.16.1 nepřeposílá; tato změna politiky usnadňuje budoucí nasazení oprav pomalu validovaných bloků. Těžaři přicházejí o volbu -blockmaxsize ve prospěch -blockmaxweight a dostávají opravu chyby, která je mohla připravit o příjmy, když vyrobili dva bloky rychle po sobě.
Segwit se v Bitcoin Core 0.16.0 stává výchozím v peněžence: nové adresy jsou p2sh-segwit, pokud -addresstype neurčí jinak, a lze generovat i platit na nativní adresy bc1 podle BIP173. Nové peněženky jsou pouze HD a starší verze je odmítnou; obrazovka odesílání v GUI má nově výchozí BIP125 RBF.
Jako pojistka před budoucími forky sítě odpojuje Bitcoin Core 0.15.1 peery, kteří při počáteční synchronizaci nabízejí řetězec pod minimum-chain-work, a také odchozí peery s hlavičkami, o nichž je známo, že jsou neplatné. Vrchol řetězce zaseknutý 30 minut nově spustí další odchozí spojení. Těžaři přicházejí o přímé použití zastaralé volby blockmaxsize, z níž se už jen odvozuje limit váhy.
Pád GUI při startu si vynutil Bitcoin Core 0.15.0.1: některým klientům po přechodu na 0.15.0 vadilo vlastní nastavení poplatku, které rozhraní už nenabízí. Neplatnou hodnotu ošetřuje minimální záplata #11332.
Odhady poplatků v Bitcoin Core 0.15.0 sahají až 1008 bloků dopředu místo 25 a uživatelé GUI mohou přes Replace-By-Fee zvýšit poplatek u nepotvrzené transakce. Databáze chainstate po jednotlivých výstupech zrychluje počáteční stahování bloků o 30–40 %. Převod proběhne automaticky při prvním startu a trvá asi 5 až 30 minut.
Pravidelní přispěvatelé Bitcoin Core nemají s btc1, implementací Segwit2x, nic společného a projekt odmítá tvrzení, že jde o nutnou aktualizaci: označuje ji za sporné porušení pravidel sítě. Segwit, soft fork očekávaný během několika dní, s tímto hard forkem nesouvisí a po většině uživatelů nic nevyžaduje. Prohlášení také varuje, že Segwit2x neplánuje silnou ochranu proti replay útokům.
Kdo zapnul UPnP, měl by bez odkladu nainstalovat Bitcoin Core 0.14.2: chyba se znaménkovostí celého čísla v přibaleném miniupnpc, CVE-2017-8798, umožňuje útočníkům z lokální sítě vyvolat odepření služby nebo případně jiné škody. UPnP je ve výchozím stavu vypnuté, takže uzlů, které ho nikdy nezapnuly, se chyba netýká.
Těžaři bez segwitu budou moci po aktivaci dál používat getblocktemplate, protože Bitcoin Core 0.14.1 ze šablony segwit transakce vyřazuje. Výchozí -dbcache se mění na 450 MiB a limit teď platí i během špiček při vyprazdňování cache. Přejmenované argumenty v createrawtransaction a disconnectnode rozbijí volání s pojmenovanými argumenty z 0.14.0.
Peněženka nového uzlu by mohla posílat a přijímat ještě před koncem synchronizace díky hybridnímu režimu full block SPV z plánu Bitcoin Core: bloky stahuje od nejstaršího klíče peněženky a plná validace běží dál na pozadí. Úniky soukromí přes Bloom filtry odpadají za cenu vyšší spotřeby dat a platby by měly čekat na 6 a více potvrzení.
Výměna ECDSA za Schnorrovy podpisy by zmenšila multisig 50-of-50 na velikost útraty s jedním klíčem a skryla jeho podmínky před pozorovateli. Plán Bitcoin Core jako hlavní překážku uvádí útok cancellation, kdy škodlivý podepisující odečte klíč jiného uživatele. Odpovědí je delinearizace, její důkaz bezpečnosti ale ještě prochází recenzním řízením.
Cachování podpisů v Bitcoin-Qt 0.7.0, Ultraprune s LevelDB v 0.8.0 a synchronizace headers-first v Bitcoin Core 0.10 jsou součástí první části ohlédnutí za zrychleními referenčního softwaru. Samotné paralelní ověřování skriptů přineslo v benchmarcích vývojářů 35 až 100 %.
V testu na Amazon EC2 s výchozím nastavením dokončily nové uzly počáteční stahování bloků na Bitcoin Core 0.14.0 za 6 hodin 24 minut, na 0.13.2 za 1 den 12 hodin 40 minut, tedy 5,7krát rychleji. Zásluhu mají assumed valid bloky a paměť sdílená mezi mempoolem a UTXO cache. Peněženky navíc získávají volitelné navyšování poplatku, ve výchozím stavu vypnuté.
Odesílání z peněženky, které narazí na limit nepotvrzených řetězců, už v Bitcoin Core 0.13.2 nevrací chybu RPC. Hlásí úspěch a vložení do mempoolu se znovu zkusí při opětovném vysílání, bez nutnosti restartu. Odhady poplatků pro cíl 1 blok jsou vypnuté a opraveno je zacházení s neplatnými compact blocky.
Největší náklady v bajtech má zabalení segwitu do P2SH: o 19 % víc u P2WSH/P2SH a o 11 % u P2WPKH/P2SH u transakce o 180 bajtech, jak uvádí přehled Bitcoin Core k tomu, co by BIP141 přinesl. Validace potřebuje asi o pět hashů SHA256 na transakci víc. Mezi rizika patří chyby, větší bloky a nižší poplatky a autoři k aktivaci nezaujímají stanovisko.
Těžaři dostávají v Bitcoin Core 0.13.1 kód pro signalizaci soft forku segwit; signalizace se otevírá od 15. listopadu 2016 na začátku dalšího období přepočtu obtížnosti. K uzamčení je potřeba 95 % bloků v období 2016 bloků, aktivace přijde o období později. Peněženky zůstávají kompatibilní, takže jednat možná musí jen těžaři.
Segwit potřebuje dvě skupiny: těžaře signalizující bit 1 v 95 % bloků během období přepočtu obtížnosti a dost plných uzlů s Bitcoin Core 0.13.1 nebo kompatibilní implementací. Signalizace začíná při prvním přepočtu obtížnosti 15. listopadu 2016 nebo po něm. Samostatné postupy mají těžaři, provozovatelé uzlů, uživatelé peněženek i vývojáři, včetně těch, kdo se rozhodnou neaktualizovat.
Kód segwitu se dostává do Bitcoin Core 0.13.0, na mainnetu ale zůstává neaktivní; používat ho tam půjde až s pozdější verzí, nejspíš 0.13.1. Compact block relay (BIP152) ořezává špičky přenosu a nové peněženky používají HD klíče podle BIP32, takže jedna záloha pokryje všechny budoucí soukromé klíče. Oficiální stahování se navíc rozrůstá o sestavení pro Linux ARM.