Bitcoin Core 23.0
Bitcoin Core installation binaries can be downloaded from bitcoincore.org and the source-code is available from the Bitcoin Core source repository.
23.0 リリースノート
Bitcoin Core バージョン 23.0 は以下から入手可能です:
https://bitcoincore.org/bin/bitcoin-core-23.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カーネルやmacOS 10.15以降、Windows 7以降を使用している オペレーティングシステムでサポートされ、広範囲にテストされています。 Bitcoin Coreは他のほとんどのUNIXライクなシステムでも動作するはずですが、 それらの環境では頻繁にテストされていません。 サポートされていないシステムでBitcoin Coreを使用するのはお勧めできません。
注目すべき変更
P2Pとネットワークの変更
-
bitcoindノードは、デフォルトでインバウンドピアにアドレスをゴシップしなくなりました。 ADDR、ADDRV2、またはGETADDRメッセージを送信した後で、アドレスゴシップの対象になります。(#21528)
-
このリリース以前は、Bitcoin Coreは8333番ポートをリッスンするピアにのみ接続しようとする強い優先順位を持っていました。 その結果、Bitcoin Coreのピアが非標準ポートでリッスンしているBitcoinノードに接続しない可能性がありました。 この優先順位は削除されました。(#23542)
-
CJDNSネットワークに対する完全なサポートが追加されました。 新しい
-cjdnsreachable
オプションとdoc/cjdns.mdを参照ください。(#23077)
手数料見積もりの変更
- 手数料の見積もりで、置換(RBF)トランザクションの手数料率を考慮するようになりました。(#22539)
rescan起動パラメーターの削除
-rescan
起動パラメーターは削除されました。
破損により再スキャンを必要するウォレットは、起動時に再スキャンされます。
それ以外の場合は、rescanblockchain
RPCを使って再スキャンをトリガーしてください。(#23123)
トレースポイントとユーザースペース、Statically Defined Tracingのサポート
Linux向けのBitcoin Coreのリリースバイナリに、 プロセス内部イベントのインターフェースとして機能する実験的なトレースポイントが含まれるようになりました。 これらは、レビューやデバッグ、モニタリングなどに使用することができます。 トレースポイントAPIは準安定版です。APIがテストされている間、 プロセスの内部はリリース間で変更され、トレースポイントの変更が必要になる可能性があります。 既存のトレースポイントに関する情報は、doc/tracing.mdにあり、 使用例はcontrib/tracing/にあります。
更新されたRPC
-
validateaddress
RPCは、無効なアドレスに対してアドレス内の無効な文字の位置(分かっている場合)のインデックスを含むerror_locations
配列を返すようになりました。 たとえば、最大2つのBech32エラーの場所を特定しようとし、成功した場合、その場所を返します。 成功とその正しさは、置換エラーが2つ以下の場合にのみ保証されます。 デコードに失敗した場合、error
フィールド内に返されるエラーメッセージについて、より具体的なエラーも返すようになりました。(#16807) -
-deprecatedrpc=addresses
設定オプションは削除されました。 RPCのgettxout
、getrawtransaction
、decoderawtransaction
、decodescript
、gettransaction verbose=true
と、RESTエンドポイント/rest/tx
、/rest/getutxos
、/rest/block
は、 22.0で非推奨になったaddresses
とreqSigs
フィールドを返さなくなりました。(#22650) getblock
RPCコマンドは、トランザクションインプットのprevout
の情報を含むverboseレベル3をサポートするようになりました。 既存の/rest/block/
RESTエンドポイントもこの情報を含むように変更されました。 すべてのvin
フィールドは、使用されたアウトプットについて記述するprevout
サブフィールドを追加で含みます。prevout
は、以下のキーを含みます:generated
- 使用されたコインがコインベースの場合、trueheight
value
scriptPubKey
-
getmempoolentry
、getrawmempool(verbose=true)
、getmempoolancestors(verbose=true)
およびgetmempooldescendants(verbose=true)
RPCが返すトップレベルの手数料フィールドfee
、modifiedfee
、ancestorfees
、descendantfees
は、非推奨で次のメジャーバージョンで削除予定です (このバージョンで必要な場合は-deprecated=fees
を使用してください)。 同じ手数料フィールドは、結果のfees
オブジェクトでアクセスすることができます。 警告: 非推奨のancestorfees
フィールドとdescendantfees
フィールドはsats単位ですが、fees
オブジェクト内のすべてのフィールドはBTC単位です。(#22689) createmultisig
とaddmultisigaddress
の両方にwarnings
フィールドが追加され、 非圧縮公開鍵を使用する際に、非レガシーアドレスタイプが要求された場合に警告を表示するようになりました。(#23113)
ウォレット関連のRPCの変更は、以下のウォレットセクションで確認できます。
新しいRPC
- ソフトフォークの状態に関する情報は、
getblockchaininfo
RPCから新しいgetdeploymentinfo
RPCに移動され、 チェーンの先頭だけでなく、任意のブロックにおけるソフトフォークの状態を照会できるようになりました。 現在、-deprecatedrpc=softforks
の設定を使用すれば、 ソフトフォークの状態をgetblockchaininfo
に含めるようにすることは可能ですが、これは将来のリリースで削除される予定です。 いずれの場合でも、status
フィールドは次のブロックではなく現在のブロックの状態を反映するようになったことに注意してください。(#23508)
ファイル
- 起動時に、
banlist.dat
内の(setban
RPCにより)禁止されたホストとネットワークのリストは無視され、banlist.json
のみが考慮されます。Bitcoin Coreバージョン22.xは、banlist.dat
を読み込み、banlist.json
に書き込むことができる唯一のバージョンです。banlist.json
が既に存在する場合、バージョン22.xは、banlist.dat
をjsonに変換しようとはしません。 アップグレード後、パースされたエントリーをダブルチェックするのにlistbanned
を使用することができます。(#22570)
更新された設定
-
以前のリリースでは、(値を指定しない)コマンドラインオプション
-persistmempool
は、 誤ってmempoolの永続化が無効化されていました。-persistmempool
は、他のbooleanオプションと同様に-persistmempool=1
を意味するものとして扱われるようになりました。-persistmempool=0
、-persistmempool=1
および-nopersistmempool
を渡している場合は影響はありません。(#23061) -
-maxuploadtarget
は、人が読めるバイト単位[k|K|m|M|g|G|t|T]を許容するようになりました。 例:-maxuploadtarget=500g
。空白や+-、分数は許可されません。サフィックスが指定されていない場合、 デフォルトはM
になります。(#23249) -
-proxy=
が-noonion
と共に与えられた場合、与えられたプロキシはTorネットワークに到達するためのプロキシとして設定されます。 そのため、たとえばaddnode
RPCを使ってTorネットワークに手動で接続することはできなくなります。 古い挙動を模倣するためには、-proxy=
と-onlynet=
を併用し、onion
以外の関連するネットワークをすべてリストアップしてください。(#22834)
ツールとユーティリティ
-
縦方向のスペースも削減したユーザーフレンドリーなフォーマットでデータを返すよう
-getinfo
を更新しました。(#21832) -
Tor V2アドレスのサポートがBitcoin Core 22.0から削除されたため、 CLI
-addrinfo
は、ノードが知るonion
アドレスの数を、torv2
とtorv3
の別々のフィールドではなく、単一のフィールドで返すようになりました。(#22544)
ウォレット
-
ディスクリプターウォレットがデフォルトのウォレットタイプになりました。 新しく作成されたウォレットは、
createwallet
でdescriptors=false
を設定するか、 GUIでDescriptor wallet
のチェックボックスをオフにしない限り、ディスクリプターを使用します。importmulti
やdumpprivkey
などのウォレットRPCコマンドは、ディスクリプターウォレットでは使用できないため、 ウォレット作成時にdescriptors=false
を指定することなく、クライアントコードがこれらのコマンドに依存している場合は、 コードを更新する必要があります。 -
新しく作成されたディスクリプターウォレットには、自動的に生成された
tr()
ディスクリプターが含まれ、 単一鍵のTaprootの受信アドレスを作成できるようになります。 -
upgradewallet
は、非HDウォレットからHDウォレットへアップグレードする場合に、 keypoolを自動的にフラッシュし、新しく生成されたHD鍵をすぐに使用するようになりました。(#23093) -
新しいRPCの
newkeypool
が追加され、keypoolをフラッシュ(完全にクリアして再充填)するようになりました。(#23093) -
listunspent
は、mempoolに残っているトランザクションアウトプットのancestorcount
、ancestorsize
およびancestorfees
を含むようになりました。(#12677) -
lockunspent
は、オプションで3つめのパラメーターpersistent
を取るようになり、 ウォレットデータベースにロックが永続的に書き込まれるようになりました。 これにより、ノードが再起動またはクラッシュした後でも、UTXOをロックしたままにすることができます。(#23065) -
receivedby
RPCがコインベーストランザクションを含むようになりました。 これまでは、次のウォレットRPCはコインベーストランザクションを除外していました:getreceivedbyaddress
、getreceivedbylabel
、listreceivedbyaddress
、listreceivedbylabel
。 このリリースでは、この動作を変更し、コインベースアウトプットから受け取ったコインを考慮した結果を返します。 以前の動作は、-deprecatedrpc=exclude_coinbase
という設定で復元できますが、 将来のリリースで削除されるでしょう。(#14707) -
同じ
receivedby
系のRPCの新しいオプションinclude_immature_coinbase
(デフォルトはfalse
)は、 未熟なコインベーストランザクションを考慮するかどうかを決定します。 未熟なコインベーストランザクションというのは、承認回数が100回未満のコインベーストランザクションで、 使用できないものです。(#14707)
GUIの変更
-
GUIでロックされたUTXOは、ウォレットデータベースに永続的に保存されるようになり、 ノードのシャットダウンやクラッシュでも失われなくなりました。 (#23065)
-
Bech32チェックボックスは、Taprootが有効なウォレット用の新しいBech32m (BIP-350)標準を含む、 すべてのアドレスタイプ用のドロップダウンに置き換えられました。
低レベルの変更
RPC
getblockchaininfo
は、チェーンの先頭の時間を提供する新しいtime
フィールドを返すようになりました。(#22407)
テスト
regtest
ネットワークで、いくつかのソフトフォークのアクティベーションの高さが1に設定されています。 この高さは実行時の設定-testactivationheight=name@height
で変更できます。(#22818)
クレジット
このリリースに直接貢献されたみなさん、ありがとうございます:
- 0xb10c
- 0xree
- Aaron Clauson
- Adrian-Stefan Mares
- agroce
- aitorjs
- Alex Groce
- amadeuszpawlik
- Amiti Uttarwar
- Andrew Chow
- Andrew Poelstra
- Andrew Toth
- anouar kappitou
- Anthony Towns
- Antoine Poinsot
- Arnab Sen
- Ben Woosley
- benthecarman
- Bitcoin Hodler
- BitcoinTsunami
- brianddk
- Bruno Garcia
- CallMeMisterOwl
- Calvin Kim
- Carl Dong
- Cory Fields
- Cuong V. Nguyen
- Darius Parvin
- Dhruv Mehta
- Dimitri Deijs
- Dimitris Apostolou
- Dmitry Goncharov
- Douglas Chimento
- eugene
- Fabian Jahr
- fanquake
- Florian Baumgartl
- fyquah
- Gleb Naumenko
- glozow
- Gregory Sanders
- Heebs
- Hennadii Stepanov
- hg333
- HiLivin
- Igor Cota
- Jadi
- James O’Beirne
- Jameson Lopp
- Jarol Rodriguez
- Jeremy Rand
- Jeremy Rubin
- Joan Karadimov
- John Newbery
- Jon Atack
- João Barbosa
- josibake
- junderw
- Karl-Johan Alm
- katesalazar
- Kennan Mell
- Kiminuo
- Kittywhiskers Van Gogh
- Klement Tan
- Kristaps Kaupe
- Kuro
- Larry Ruane
- lsilva01
- lucash-dev
- Luke Dashjr
- MarcoFalke
- Martin Leitner-Ankerl
- Martin Zumsande
- Matt Corallo
- Matt Whitlock
- MeshCollider
- Michael Dietz
- Murch
- naiza
- Nathan Garabedian
- Nelson Galdeman
- NikhilBartwal
- Niklas Gögge
- node01
- nthumann
- Pasta
- Patrick Kamin
- Pavel Safronov
- Pavol Rusnak
- Perlover
- Pieter Wuille
- practicalswift
- pradumnasaraf
- pranabp-bit
- Prateek Sancheti
- Prayank
- Rafael Sadowski
- rajarshimaitra
- randymcmillan
- ritickgoenka
- Rob Fielding
- Rojar Smith
- Russell Yanofsky
- S3RK
- Saibato
- Samuel Dobson
- sanket1729
- seaona
- Sebastian Falbesoner
- sh15h4nk
- Shashwat
- Shorya
- ShubhamPalriwala
- Shubhankar Gambhir
- Sjors Provoost
- sogoagain
- sstone
- stratospher
- Suriyaa Rocky Sundararuban
- Taeik Lim
- TheCharlatan
- Tim Ruffing
- Tobin Harding
- Troy Giorshev
- Tyler Chambers
- Vasil Dimov
- W. J. van der Laan
- w0xlt
- willcl-ark
- William Casarin
- zealsham
- Zero-1729
Transifexでの翻訳を手伝ってくださったみなさんもありがとうございます。