Bitcoin Core 27.0

Bitcoin Core installation binaries can be downloaded from bitcoincore.org and the source-code is available from the Bitcoin Core source repository.

27.0 リリースノート

Bitcoin Core バージョン 27.0 は以下から入手可能です:

https://bitcoincore.org/bin/bitcoin-core-27.0/

このリリースには、新しい機能、さまざまなバグ修正およびパフォーマンス改善、更新された翻訳が含まれています。

バグの報告にはGitHubのIssue Trackerを使用してください:

https://github.com/bitcoin/bitcoin/issues

セキュリティやアップデートの通知を受け取りたい場合は、以下に登録してください:

https://bitcoincore.org/en/list/announcements/join/

アップブレード方法

旧バージョンを起動している場合はシャットダウンしてください。 完全にシャットダウンするのを待ってから(数分かかる場合があります)、 Windowsの場合はインストーラーを実行、Macの場合は/Applications/Bitcoin-Qtを上書き、 Linuxの場合はbitcoind/bitcoin-qtを上書きしてください。

EOLに達したBitcoin Coreのバージョンから直接アップグレードすることは可能ですが、 データディレクトリを移行する必要がある場合は時間がかかる可能性があります。 Bitcoin Coreの旧ウォレットバージョンが一般的にサポートされます。

互換性

Bitcoin CoreはLinuxカーネル3.17以降やmacOS 11.0以降、Windows 7以降を使用している オペレーティングシステムでサポートされ、広範囲にテストされています。 Bitcoin Coreは他のほとんどのUNIXライクなシステムでも動作するはずですが、 それらの環境では頻繁にテストされていません。 サポートされていないシステムでBitcoin Coreを使用することは推奨されません。

注目すべき変更

libbitcoinconsensus

  • libbitcoinconsensusは非推奨になり、v28で削除される予定です。 このライブラリは10年近く存在していますが、利用や影響はほとんど知られておらず、 メンテナンスの負担になっていました。

    基本的な機能はバージョン間で変わらないため、ライブラリのユーザーは、 Taprootがこのライブラリの最後のコンセンサスアップデートであることを理解した上で、 最後のリリースを無期限に使用し続けることができます。

    将来的には、libbitcoinkernelがUTXOセットを認識するより便利なAPIを提供し、 トランザクションとブロックを完全に検証できるようになります。(#29189)

mempool.datの互換性

  • -persistmempoolもしくはsavemempool RPCによって作成されたmempool.datファイルは、 新しいフォーマットで書き込まれるようになります。この新しいフォーマットには、 (アンチウイルスなどの)外部プログラムがファイルを解釈し変更する可能性がある問題を軽減するために、 トランザクションの内容のXOR処理が含まれています。

    この新しいフォーマットは、以前のソフトウェアリリースでは読み取れません。ダウングレードを可能にするため、 従来のフォーマットにフォールバックするための一時的な設定-persistmempoolv1が追加されました。(#28207)

P2Pとネットワークの変更

  • BIP324 v2トランスポートがデフォルトで有効になりました。 -v2transport=0で起動することで、v2を無効にすることは可能です。(#29347)

  • 手動接続オプション(-connectおよび-addnode-seednode)は、 デフォルトで-v2transportに従いv2で接続するようになりました。 失敗した場合はv1で再試行します。(#29058)

  • コンセンサスコードからネットワーク調整時間が削除され、(未調整の)システム時間に置き換えられました。 median timeオフセットが大きい(70分以上)場合の警告は維持されます。 これは、正直なアウトバウンドピアを大多数必要とするという暗黙のセキュリティの仮定を削除し、 ネットワークのコンセンサスから外れないように、 ノードオペレーターが自分のシステム時刻が正しいことを保証する(そしてそれを維持する)ことの重要性を高めます。

mempoolポリシーの変更

  • -acceptnonstdtxn=1が設定されている場合に、 オプトインのTRUC(Topologically Restricted Until Confirmation)トランザクションポリシー (別名v3トランザクションポリシー)をテストネットワークで使用できます。 トランザクションのバージョン番号を3に設定することで、 TRUCトランザクションは未承認アウトプットの使用に対する制限の適用を要求します。 この制限により、TRUCトランザクションの受け入れまたは置換のインセンティブ適合性の評価が簡素化されるため、 ノードにとってより収益性の高い置換が保証され、手数料引き上げの信頼性が高まります。 TRUCトランザクションは現在のところ非標準であり、 標準ルールが緩和または無効化された(例:-acceptnonstdtxn=1)テストネットワークのみで使用できます。(#28948)

外部署名

  • Windowsでの外部署名のサポートが無効になりました。基礎となる依存性(Boost Process)が別のライブラリに置き換えられると、 再度有効になります。(#28967)

更新されたRPC

  • addnode RPCは、接続を確立するのに-v2transportオプションに従います(現在デフォルトではオンになっています。上記参照)。 addnodeのv2transport引数を使用してトランスポートタイプを手動で指定することは可能です。(#29239)

ビルドシステム

  • Bitcoin CoreのビルドにC++20対応コンパイラが必要になりました。(#28349)
  • macOS用のリリースは、Hardened Runtimeライブラリを使用するよう構成されています。(#29127)

ウォレット

  • 不必要に大きなインプットのセットを軽減し、 高手数料率におけるトランザクションコストを下げるためにCoinGrinderコイン選択アルゴリズムが導入されました。 CoinGrinderは、最小weightのインプットのセットを検索します。 CoinGrinderが見つける解は、お釣り用のアウトプットを生成します。 CoinGrinderは、高い手数料率(デフォルト:30+ sat/vB、-consolidatefeerate×3に基づく)でのみアクティブになります。(#27877)
  • アウトプットから手数料を差し引く機能が使用されている場合、分枝限定法コイン選択アルゴリズムが無効になります。(#28994)
  • ディスクリプターの誕生時刻が、そのディスクリプターに関係する最初のトランザクションよりも遅いことが検出された場合、 誕生時刻は早い方の時刻にリセットされます。(#28920)

低レベルの変更

プルーニング

  • Initial Block Download中にプルーニングを行う場合、そのようなノードの同期を高速化するために、 フラッシュ毎にさらに多くのブロックがプルーニングされます。(#20827)

Init

  • Bitcoin Coreの後続インスタンスが既存インスタンスで使用中のファイルを削除してしまう問題を防ぐための様々な修正。(#28784, #28946)
  • 空のsettings.jsonファイルの処理が改善されました。(#29144)

クレジット

このリリースに直接貢献されたみなさん、ありがとうございます:

  • 22388o⚡️
  • Aaron Clauson
  • Amiti Uttarwar
  • Andrew Toth
  • Anthony Towns
  • Antoine Poinsot
  • Ava Chow
  • Brandon Odiwuor
  • brunoerg
  • Chris Stewart
  • Cory Fields
  • dergoegge
  • djschnei21
  • Fabian Jahr
  • fanquake
  • furszy
  • Gloria Zhao
  • Greg Sanders
  • Hennadii Stepanov
  • Hernan Marino
  • iamcarlos94
  • ismaelsadeeq
  • Jameson Lopp
  • Jesse Barton
  • John Moffett
  • Jon Atack
  • josibake
  • jrakibi
  • Justin Dhillon
  • Kashif Smith
  • kevkevin
  • Kristaps Kaupe
  • L0la L33tz
  • Luke Dashjr
  • Lőrinc
  • marco
  • MarcoFalke
  • Mark Friedenbach
  • Marnix
  • Martin Leitner-Ankerl
  • Martin Zumsande
  • Max Edwards
  • Murch
  • muxator
  • naiyoma
  • Nikodemas Tuckus
  • ns-xvrn
  • pablomartin4btc
  • Peter Todd
  • Pieter Wuille
  • Richard Myers
  • Roman Zeyde
  • Russell Yanofsky
  • Ryan Ofsky
  • Sebastian Falbesoner
  • Sergi Delgado Segura
  • Sjors Provoost
  • stickies-v
  • stratospher
  • Supachai Kheawjuy
  • TheCharlatan
  • UdjinM6
  • Vasil Dimov
  • w0xlt
  • willcl-ark

Transifexでの翻訳を手伝ってくださったみなさんもありがとうございます。