tokenpocket钱包教程|bitcoin core下载

作者: tokenpocket钱包教程
2024-03-15 05:25:42

下载 - 比特币

下载 - 比特币

Bitcoin.org 是一个社区支持的社区,我们十分感谢任何捐助。这些捐助会用于改进网站。

捐助

Bitcoin.org 需要你的帮助!

×

捐助Bitcoin.org

使用下方二维码或地址

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

$5.00

(... BTC)

$25.00

(... BTC)

$50.00

(... BTC)

介绍

个人

商家

开发者

入门指南

工作原理

White paper

资源

资源

兑换

社区

词汇表

活动

比特币核心

创新

参与

支持比特币

购买比特币

开发

常见问题

简体中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Language: zh_CN

下载Bitcoin Core

最新版本: 25.0

下载Bitcoin Core

Bitcoin Core 25.0

(This software is presently not available for download in the UK, and download links will not work if you are located within the UK.)

检查您的带宽和空间

Bitcoin Core 首次同步需要花费很长时间和下载很多数据。您应该确保有足够的带宽以及存储整个块链大小的磁盘空间(超过20GB)。如果你有一个良好的互联网连接,你可以保持您的电脑运行 Bitcoin Core 并且开放 8333 端口以帮助加强网络。 阅读完整的节点指南了解细节。

Bitcoin Core客户端是一个由社区驱动的自由软件项目,基于MIT协议授权发布。

验证发布的签名

下载种子

源代码

显示版本历史

或选择你的操作系统

Windows

exe

-

zip

macOS (x86_64)

dmg

-

tar.gz

macOS (arm64)

dmg

-

tar.gz

Linux (tgz)

64 bit

ARM Linux

64 bit

-

32 bit

RISC-V Linux

64 bit

PPC64 Linux

64 bit

-

64 bit LE

Linux (Snap Store)

支持Bitcoin.org:

捐助

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

介绍:

个人

商家

开发者

入门指南

工作原理

注意事项

White paper

资源:

资源

兑换

社区

词汇表

活动

比特币核心

参与:

支持比特币

开发

其他:

法律

Privacy Policy

新闻媒体

关于bitcoin.org

Blog

© Bitcoin Project 2009-2024 基于MIT协议授权发布

Bitcoin Core pages on Bitcoin.org are

maintained separately from the rest of the site.

Network Status

简体中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

zh_CN

比特币核心钱包(Bitcoin Core)的使用入门指南-手把手教你 - 知乎

比特币核心钱包(Bitcoin Core)的使用入门指南-手把手教你 - 知乎切换模式写文章登录/注册比特币核心钱包(Bitcoin Core)的使用入门指南-手把手教你联合信todaybibi比特币核心钱包(Bitcoin Core)的使用入门指南比特币官方钱包客户端的原名是Bitcoin-qt,现在更名为bitcoin core比特币核心钱包, 这是比特币核心钱包客户端最新版本0.13.2安装及入门教程。这个钱包是最完整的、最安全的钱包、最早的比特币客户端,但是,他的 区块链数据文件(blockchain)体积庞大,启动较慢,仅适合高端的比特币用户使用。1.首先,到比特币官方网站下载钱包,注意选择32位或者64位。 下载 - 比特币2.点击下载回来的.exe文件安装钱包,然后启动钱包,设置数据存储位置,数据存储目前(截止2017-01-5)需要25GB 以上的空间。安装完毕就可以数据同步了。3.加速下载区块链的数据文件bootstrap.dat 新安装的比特币核心客户端需要同步数据是一个漫长的过程,一般的使用者想要快速使用的话推荐使用multibit等轻客户端。首先,比特币项目官方每隔一段时间会把数据文件打包成bootstrap.dat 文件,在比特币的项目主页下载数据文件的种子文件。Armory 也需要下载完整的区块链数据,Armory 也会把文件进行打包,而且更新更快,推荐使用Armory 的torrent 来下载。放心,下载回来的bootstrap 文件都是一致的,而且客户端会进一步验证。torrent文件(扩展名为.torrent)就是指BT下载的种子Armory 打包的bootstrap.dat.torrent:https://s3.amazonaws.com/bitcoinarmory-media/bootstrap.dat.torrentBitcoin 官方打包的bootstrap.dat.torrent:Browse Files at SourceForge.net通过μTorrent软件或者迅雷打开种子文件开始下载即可。这个方法下载区块链的数据也有一个好处,就是减轻了比特币的P2P网络的流量负担。最后把数据文件放到比特币客户端的默认数据文件夹(AppData/Roaming/Bitcoin)即可开始导入。4.加密钱包数据同步完成后,钱包才能正常工作。这时,请立即设置密码并备份钱包。一个好的密码,应该包括16位以上(最好20位以上)的大小写字母、数字及特殊符号,且不要使用生日、名字、证件号码等易被猜测的密码。警告:遗忘密码等于丢失所有比特币。点击文件 →点击备份钱包点击设置→点击加密钱包 开始设置5.进行交易在“发送”选项卡,可以把你的比特币发送给其他比特币用户。请注意:交易一经确认,无法逆转!请仔细确认交易信息。系统可能根据情况征收交易费,请选择支付。(一般情况是0.0001BTC,万分之一个币,约20元钱)。在“接收”选项卡,我们可以获取自己的钱包地址。直接点击“请求付款”,将生成一个新的地址。你可以将这个地址给别人,让他们向你发送比特币。点击“请求付款”按钮,即可显示接收地址和二维码了。bitcoin:1DEYBa6ncXNsqzo4z51xT9QCJ8UdQ7bA4K (二维码自动识别)==============================================================================================【todaybibi】愿景:成为每个人了解和自由拥有资产互联网【todaybibi】原则:以客户为中心,让技术为人创未来>>>>>---------文章彩蛋------------文章彩蛋------------文章彩蛋--------<<<<<>>>>>---------文章彩蛋------------文章彩蛋------------文章彩蛋--------<<<<<温馨提示:不要忘记的高级搜索比特币冷热钱包开发,加密交易所开发,代币开发,新币发币二次孵化,新币上交易所 等等还有大量免费区块链开发资料,视频,直播都是免费的,客服微信:panda55855本文由【todaybibi】网站【todaybibi】专业区块链流量导航站,汇集了区块链的技术服务。运营推广团队整编而成,不代表本站观点,如需了解更多区块链加密货币交易所的新闻、文章、工具和网络营销技巧、案例、学习各种网站优化知识请进入:官网http://todaybibi.com并且可以与区块链客服进行一对一问答。需要技术开发推广请联系QQ: 1542890887查看更多文章如下:(1)Ledger/Trezor/Ownbit/Parity软硬件冷钱包APP开发的原理与安全性差异(2)联合信:数字货币交易所源码开发前火币、币安、OKEX等产品系统架构设计指南和规划(3)联合信:区块链比特币钱包冷热钱包系统技术开发指南和实战(4)联合信:加密货币冷钱包/热钱包开发原理和实现思路(5)联合信:如何BitcoinCore/比特派/imToken/AToken币信/币包等钱包APP冷钱包制作教程和原理(6)联合信:区块链加密货币钱包APP源代码开发中的功能设计和人机界面规划Axure历时20个月,网站流量最高峰达到10万UV。作者在此复盘总结从0到10万流量的成长过程。案列也许不能复制,但经验和思路有一定的借鉴价值,供大家参考。高能预警!此文长度感人,没有耐心的请及时止损。万人人论坛:www.todaybibi.com社群资源分类:[1]币圈社群:100个微信群,2万+人的好友,让你轻松进入币圈社群,获得资源.[2]海外币圈社群: 200个whatsapp、Facebook,telegram群,5万+人的好友,让你轻松进入海外区块链社群,立即获得海外互联网APP,网站,Game,公司,品牌,海外业务推广资源[3]海内外互联网社群:500个微信群,8万+人的好友,让你轻松进入互联网社群,立即获得海内外流量,广告,电商,互联网APP,网站,Game,公司,品牌,业务推广资源。成立了中国的币圈大联盟的雏形。>>>>>---------文章彩蛋------------文章彩蛋------------文章彩蛋------------文章彩蛋------------文章彩蛋------------文章彩蛋--------<<<<<发布于 2021-06-08 21:13比特币 (Bitcoin)区块链(Blockchain)数字货币钱包​赞同 38​​10 条评论​分享​喜欢​收藏​申请

Bitcoin Core :: Download - Bitcoin

Bitcoin Core :: Download - Bitcoin

About

Download

blog

releases

Development

contribute

contributing code

meetings

Lifecycle

RPC Docs

26.0.0

25.0.0

24.0.0

23.0.0

22.0.0

0.21.0

0.20.0

0.19.0

0.18.0

0.17.0

0.16.3

0.16.2

0.16.1

0.16.0

Contact

Contact Us

Announcements

Twitter impersonation

English

Español

日本語

 

Download - Bitcoin

Latest version: 26.0

Download Bitcoin Core

Or choose your operating system

Windows

exe -

zip

macOS (x86_64)

zip -

tar.gz

macOS (arm64)

zip -

tar.gz

Linux (tgz)

ARM Linux

64 bit -

32 bit

RISC-V Linux

64 bit

PPC64 Linux

64 bit

-

64 bit LE

Snap Store Linux

SHA256 binary hashes

SHA256 hash signatures

Download torrent

Source code

Show version history

Refresh expired keys using:gpg --keyserver hkps://keys.openpgp.org --refresh-keys

Check your bandwidth and space

Bitcoin Core requires a one-time download of about 500GB of data plus a further 5-10GB per month. By default, you will need to store all of that data, but if you enable pruning, you can store as little as 6GB total without sacrificing any security.

For more information about setting up Bitcoin Core, please read the full node guide.

Verify your download

Download verification is optional but highly recommended. Performing the verification steps here ensures that you have not downloaded an unexpected or tampered version of Bitcoin, which may result in loss of funds.

Click one of the lines below to view verification instructions for that platform.

Windows verification instructions

Click the link in the list above to download the release for your platform and wait for the file to finish downloading.

Download the list of cryptographic checksums: SHA256SUMS

Download the signatures attesting to validity of the checksums: SHA256SUMS.asc

Open a terminal (command line prompt) and Change Directory (cd) to the folder you use for downloads. For example:

cd %UserProfile%\Downloads

Run the following command to generate a checksum of the release file you downloaded. Replace 'bitcoin-26.0-win64-setup.exe' with the name of the file you actually downloaded.

certUtil -hashfile bitcoin-26.0-win64-setup.exe SHA256

Ensure that the checksum produced by the command above matches one of the checksums listed in the checksums file you downloaded earlier. We recommend that you check every character of the two checksums to ensure they match. You can see the checksums you downloaded by running the following command:

type SHA256SUMS

If you haven't previously installed GNU Privacy Guard (GPG) on your system, install it now

or see other installation

options.

Bitcoin releases are signed by a number of individuals, each with a unique public key. In order to recognize the validity of signatures, you must use GPG to load these public keys locally. You can find many developer keys listed in the bitcoin-core/guix.sigs repository, which you can then load into your GPG key database.

For example, you could load the key builder-keys/fanquake.gpg by downloading the file as fanquake.gpg and using this command:

C:\Program Files (x86)\GnuPG\bin\gpg.exe --import fanquake.gpg

The output of the command above should say that one key was imported, updated, has new signatures, or remained unchanged.

It is recommended that you choose a few individuals from this list who you find trustworthy and import their keys as above. You will later use their keys to check the signature attesting to the validity of the checksums you use to check the binaries. You can import all keys at once by cloning the repo and importing the directory:

Verify that the checksums file is PGP signed by a sufficient amount of keys you trust and have imported into your keychain:

C:\Program Files (x86)\GnuPG\bin\gpg.exe --verify SHA256SUMS.asc

The command above will output a series of signature checks for each of the public keys that signed the checksums. Each valid signature will show the following text:

A line that starts with: gpg: Good signature

A complete line saying: Primary key fingerprint:

E777 299F C265 DD04 7930  70EB 944D 35F9 AC3D B76A

The output from the verify command may contain warnings that a public key is not available. As long as you have all the public keys of signers you trust, this warning can be disregarded. There may be additional warnings that a "key is not certified with a trusted signature." This means that to fully verify your download, you need to confirm that the signing key's fingerprint (e.g.

E777 299F..

.) listed in the second line above matches what you had expected for the signers public key.

MacOS verification instructions

Click the link in the list above to download the release for your platform and wait for the file to finish downloading.

Download the list of cryptographic checksums: SHA256SUMS

Download the signatures attesting to validity of the checksums: SHA256SUMS.asc

Open a terminal (command line prompt) and Change Directory (cd) to the folder you use for downloads. For example:

cd Downloads/

Verify that the checksum of the release file is listed in the checksums file using the following command:

shasum -a 256 --check SHA256SUMS

In the output produced by the above command, you can safely ignore any warnings and failures, but you must ensure the output lists "OK" after the name of the release file you downloaded. For example: bitcoin-26.0-x86_64-apple-darwin.zip: OK

If you haven't previously installed GNU Privacy Guard (GPG) on your system, install it now

or see other installation

options.

Bitcoin releases are signed by a number of individuals, each with a unique public key. In order to recognize the validity of signatures, you must use GPG to load these public keys locally. You can find many developer keys listed in the bitcoin-core/guix.sigs repository, which you can then load into your GPG key database.

For example, you could load the key builder-keys/fanquake.gpg by downloading the file as fanquake.gpg and using this command:

gpg --import fanquake.gpg

The output of the command above should say that one key was imported, updated, has new signatures, or remained unchanged.

It is recommended that you choose a few individuals from this list who you find trustworthy and import their keys as above. You will later use their keys to check the signature attesting to the validity of the checksums you use to check the binaries. You can import all keys at once by cloning the repo and importing the directory:

git clone https://github.com/bitcoin-core/guix.sigsgpg --import guix.sigs/builder-keys/*

Verify that the checksums file is PGP signed by a sufficient amount of keys you trust and have imported into your keychain:

gpg --verify SHA256SUMS.asc

The command above will output a series of signature checks for each of the public keys that signed the checksums. Each valid signature will show the following text:

A line that starts with: gpg: Good signature

A complete line saying: Primary key fingerprint:

E777 299F C265 DD04 7930  70EB 944D 35F9 AC3D B76A

The output from the verify command may contain warnings that a public key is not available. As long as you have all the public keys of signers you trust, this warning can be disregarded. There may be additional warnings that a "key is not certified with a trusted signature." This means that to fully verify your download, you need to confirm that the signing key's fingerprint (e.g.

E777 299F..

.) listed in the second line above matches what you had expected for the signers public key.

See the GNU handbook section on key management for more details.

Linux verification instructions

Click the link in the list above to download the release for your platform and wait for the file to finish downloading.

Download the list of cryptographic checksums: SHA256SUMS

Download the signatures attesting to validity of the checksums: SHA256SUMS.asc

Open a terminal (command line prompt) and Change Directory (cd) to the folder you use for downloads. For example:

cd Downloads/

Verify that the checksum of the release file is listed in the checksums file using the following command:

sha256sum --ignore-missing --check SHA256SUMS

In the output produced by the above command, you can safely ignore any warnings and failures, but you must ensure the output lists "OK" after the name of the release file you downloaded. For example: bitcoin-26.0-x86_64-linux-gnu.tar.gz: OK

Bitcoin releases are signed by a number of individuals, each with a unique public key. In order to recognize the validity of signatures, you must use GPG to load these public keys locally. You can find many developer keys listed in the bitcoin-core/guix.sigs repository, which you can then load into your GPG key database.

For example, you could load the key builder-keys/fanquake.gpg by downloading the file as fanquake.gpg and using this command:

gpg --import fanquake.gpg

The output of the command above should say that one key was imported, updated, has new signatures, or remained unchanged.

It is recommended that you choose a few individuals from this list who you find trustworthy and import their keys as above. You will later use their keys to check the signature attesting to the validity of the checksums you use to check the binaries. You can import all keys at once by cloning the repo and importing the directory:

git clone https://github.com/bitcoin-core/guix.sigsgpg --import guix.sigs/builder-keys/*

Verify that the checksums file is PGP signed by a sufficient amount of keys you trust and have imported into your keychain:

gpg --verify SHA256SUMS.asc

The command above will output a series of signature checks for each of the public keys that signed the checksums. Each valid signature will show the following text:

A line that starts with: gpg: Good signature

A complete line saying: Primary key fingerprint:

E777 299F C265 DD04 7930  70EB 944D 35F9 AC3D B76A

The output from the verify command may contain warnings that a public key is not available. As long as you have all the public keys of signers you trust, this warning can be disregarded. There may be additional warnings that a "key is not certified with a trusted signature." This means that to fully verify your download, you need to confirm that the signing key's fingerprint (e.g.

E777 299F..

.) listed in the second line above matches what you had expected for the signers public key.

See the GNU handbook section on key management for more details.

Snap package verification instructions

While the Snap packages use the deterministically generated executables, the Snap tool itself does not provide a streamlined way to reveal the contents of a Snap package. Thus, the Bitcoin Core project does not have the information necessary to help you verify the Bitcoin Core Snap packages.

Additional verification with reproducible builds

Experienced users who don't mind performing additional steps can take advantage of Bitcoin Core's reproducible builds and the signed checksums generated by contributors who perform those builds.

Reproducible builds allow anyone with a copy of Bitcoin Core's MIT-licensed source code to build identical binaries to those distributed on this website (meaning the binaries will have the same cryptographic checksums as those provided by this website).

Verified reproduction is the result of multiple Bitcoin Core contributors each independently reproducing identical binaries as described above. These contributors cryptographically sign and publish the checksums of the binaries they generate.

The preceding verification instructions will verify that several contributors you trust all signed the same checksums distributed in the release checksums file. Additionally, reproducing a binary for yourself will provide you with the highest level of assurance currently available. For more information, visit the project's repository of

trusted build process signatures.

Bitcoin Core is a community-driven free software project, released under the open source MIT license.

Twitter

Legal | Privacy Policy | RSS

© 2024 Bitcoin Core

Bitcoin Core - 桌面 - Windows - 选择钱包 - 比特币

Bitcoin Core - 桌面 - Windows - 选择钱包 - 比特币

Bitcoin.org 是一个社区支持的社区,我们十分感谢任何捐助。这些捐助会用于改进网站。

捐助

Bitcoin.org 需要你的帮助!

×

捐助Bitcoin.org

使用下方二维码或地址

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

$5.00

(... BTC)

$25.00

(... BTC)

$50.00

(... BTC)

介绍

个人

商家

开发者

入门指南

工作原理

White paper

资源

资源

兑换

社区

词汇表

活动

比特币核心

创新

参与

支持比特币

购买比特币

开发

常见问题

简体中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Language: zh_CN

Bitcoin Core

比特币核心是一个实现了全节点的比特币客户端,它组成了整个比特币网络的支架。比特币核心拥有极高的安全性、隐私性、稳定性。但是它有较少的特性且会占用很多的磁盘和内存空间。

Features:

Bech32

×

Bech32:

Bech32 is a special address format made possible by SegWit (see the feature description for SegWit for more info). This address format is also known as 'bc1 addresses'. Some bitcoin wallets and services do not yet support sending or receiving to Bech32 addresses.

Full Node

×

Full Node:

Some wallets fully validate transactions and blocks. Almost all full nodes help the network by accepting transactions and blocks from other full nodes, validating those transactions and blocks, and then relaying them to further full nodes.

Legacy Addresses

×

Legacy Addresses:

Most wallets have the ability to send and receive with legacy bitcoin addresses. Legacy addresses start with 1 or 3 (as opposed to starting with bc1). Without legacy address support, you may not be able to receive bitcoin from older wallets or exchanges.

SegWit

×

SegWit:

Some wallets support SegWit, which uses block chain space more efficiently. This helps reduce fees paid by helping the Bitcoin network scale and sets the foundation for second layer solutions such as the Lightning Network.

Good

Acceptable

Caution

Not applicable

资金掌控权

这个钱包让你拥有对你的比特币的全面掌控权。这意味着没有第三方可以冻结或是弄丢你的资金。但你仍需注意保障安全和备份你的钱包。

全面验证

这种钱包是一个完整节点,它在比特币网络上验证并轮询交易。这意味着当验证支付的时候,不需要信任第三方。完整的节点提供了最高级别的安全性并且是保护网络不可缺少的元素。然而,它们需要更多的硬盘空间(350GB)、更大的带宽和一个更长的初始化同步时间。

完全透明度

这个钱包是开放源代码,它是被确定性地建立的。这意味着世界上所有的开发人员都可以审查这个编码并确保最后的软件没有隐藏任何秘密。

脆弱的环境

这个钱包可以加载到电脑上。电脑容易受恶意软件攻击。你可以通过使用一个安全性高的密码口令、把你的大部分资金转移到冷储存来保证电脑安全。开通双因素认证也可以让盗取你的比特币变得难上加难。

改进的隐私性

防止对你的支付的窥探

这个钱包使得通过滚动地址的方式来窥探你的余额和支付历史的举动变得难上加难。你还是应该在每次要求支付的时候都使用一个新的比特币地址。

防止信息泄露

当接受或发出一个支付时,这个钱包不会在网上给其他节点披露信息。

Tor 可用于

这个钱包让你建立并把Tor当成一个代理来使用。这样可以防止攻击者或防止互联网服务供应商把你的支付和你的 IP 地址联系在一起。

完全的手续费控制

这种钱包给与您完全控制手续费的功能。意思就是这种钱包允许资金使用RBF或CPFP发送之后进行手续费变更。这种钱包根据当前网络条件提供手续费建议,这样在实时的方式中确认你的交易,不会导致您透支交易。

windows

mac

linux

安装

源代码

安装

源代码

安装

源代码

Similar Wallets

Sort by:

Control

Control

Validation

Transparency

Environment

Privacy

Fees

Similar wallets

Control

Validation

Transparency

Environment

Privacy

Fees

Armory

Good

Good

Acceptable

Caution

Good

Good

Armory

Good

Good

Acceptable

Caution

Good

Good

Armory

Good

Good

Acceptable

Caution

Good

Good

BitBox02

Good

Not applicable

Good

Good

Not applicable

Not applicable

Bitcoin Core

Good

Good

Good

Caution

Good

Good

Bitcoin Core

Good

Good

Good

Caution

Good

Good

Bitcoin Core

Good

Good

Good

Caution

Good

Good

Bitcoin Knots

Good

Good

Good

Caution

Good

Good

Bitcoin Knots

Good

Good

Good

Caution

Good

Good

Bitcoin Knots

Good

Good

Good

Caution

Good

Good

Bitcoin Wallet

Good

Acceptable

Good

Acceptable

Acceptable

Good

Bither

Good

Acceptable

Acceptable

Acceptable

Acceptable

Caution

Bither

Good

Acceptable

Acceptable

Acceptable

Acceptable

Caution

Bither

Good

Acceptable

Acceptable

Caution

Acceptable

Caution

Bither

Good

Acceptable

Acceptable

Caution

Acceptable

Caution

Bither

Good

Acceptable

Acceptable

Caution

Acceptable

Caution

BitPay

Good

Caution

Acceptable

Acceptable

Acceptable

Acceptable

BitPay

Good

Caution

Acceptable

Acceptable

Acceptable

Acceptable

BitPay

Good

Caution

Acceptable

Caution

Acceptable

Acceptable

BitPay

Good

Caution

Acceptable

Caution

Acceptable

Acceptable

BitPay

Good

Caution

Acceptable

Caution

Acceptable

Acceptable

Coldcard

Good

Not applicable

Good

Good

Not applicable

Not applicable

Edge

Acceptable

Acceptable

Acceptable

Acceptable

Acceptable

Acceptable

Edge

Acceptable

Acceptable

Acceptable

Acceptable

Acceptable

Acceptable

Electrum

Good

Acceptable

Good

Acceptable

Acceptable

Good

Electrum

Good

Acceptable

Acceptable

Acceptable

Acceptable

Good

Electrum

Good

Acceptable

Good

Acceptable

Acceptable

Good

Electrum

Good

Acceptable

Good

Acceptable

Acceptable

Good

Green

Good

Caution

Acceptable

Acceptable

Acceptable

Good

Green

Good

Caution

Acceptable

Acceptable

Acceptable

Good

Green

Good

Caution

Acceptable

Acceptable

Acceptable

Good

Green

Good

Caution

Acceptable

Acceptable

Acceptable

Good

Green

Good

Caution

Acceptable

Acceptable

Acceptable

Good

Jade

Good

Not applicable

Good

Good

Not applicable

Not applicable

KeepKey

Good

Not applicable

Good

Good

Not applicable

Not applicable

Ledger Nano S

Good

Not applicable

Acceptable

Good

Not applicable

Not applicable

Mycelium

Good

Caution

Good

Acceptable

Acceptable

Acceptable

Passport

Good

Not applicable

Good

Good

Not applicable

Not applicable

Sparrow

Good

Acceptable

Acceptable

Caution

Good

Good

Sparrow

Good

Acceptable

Acceptable

Caution

Good

Good

Sparrow

Good

Acceptable

Acceptable

Caution

Good

Good

Specter

Good

Good

Acceptable

Caution

Good

Good

Specter

Good

Good

Acceptable

Caution

Good

Good

Specter

Good

Good

Acceptable

Caution

Good

Good

Trezor Model T

Good

Not applicable

Good

Good

Not applicable

Not applicable

Trezor One

Good

Not applicable

Good

Good

Not applicable

Not applicable

Unstoppable

Good

Acceptable

Acceptable

Acceptable

Acceptable

Acceptable

Unstoppable

Good

Acceptable

Good

Acceptable

Acceptable

Acceptable

Wasabi

Good

Caution

Good

Caution

Good

Acceptable

Wasabi

Good

Caution

Good

Caution

Good

Acceptable

Wasabi

Good

Caution

Good

Caution

Good

Acceptable

Good

Acceptable

Caution

Not applicable

支持Bitcoin.org:

捐助

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

介绍:

个人

商家

开发者

入门指南

工作原理

注意事项

White paper

资源:

资源

兑换

社区

词汇表

活动

比特币核心

参与:

支持比特币

开发

其他:

法律

Privacy Policy

新闻媒体

关于bitcoin.org

Blog

© Bitcoin Project 2009-2024 基于MIT协议授权发布

Network Status

简体中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

zh_CN

Download - Bitcoin

Download - Bitcoin

Bitcoin.org is a community funded project, donations are appreciated and used to improve the website.

Make a donation

Bitcoin.org needs your support!

×

Donate to Bitcoin.org

Use this QR code or address below

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

$5.00

(... BTC)

$25.00

(... BTC)

$50.00

(... BTC)

Features

Overview

Validation

Privacy

Requirements

User Interface

Network Support

Get Help

Contribute

Bug reports

Code

Documentation

Translations

Tech Support

News

Download

English

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Language: en

Bitcoin

>

Core

> Download

Download Bitcoin Core

Latest version: 25.0

Download Bitcoin Core

Bitcoin Core 25.0

(This software is presently not available for download in the UK, and download links will not work if you are located within the UK.)

Check your bandwidth and space

Bitcoin Core initial synchronization will take time and download a lot of data. You should make sure that you have enough bandwidth and storage for the block chain size (7GB). If you have a good Internet connection, you can help strengthen the network by keeping your PC running with Bitcoin Core and port 8333 open. Read the full node guide for details.

Bitcoin Core is a community-driven free software project, released under the MIT license.

Verify release signatures

Download torrent

Source code

Show version history

Or choose your operating system

Windows

exe

-

zip

macOS (x86_64)

dmg

-

tar.gz

macOS (arm64)

dmg

-

tar.gz

Linux (tgz)

64 bit

ARM Linux

64 bit

-

32 bit

RISC-V Linux

64 bit

PPC64 Linux

64 bit

-

64 bit LE

Linux (Snap Store)

Support Bitcoin.org:

Donate

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

Introduction:

Individuals

Businesses

Developers

Getting started

How it works

You need to know

White paper

Resources:

Resources

Exchanges

Community

Vocabulary

Events

Bitcoin Core

Participate:

Support Bitcoin

Buy Bitcoin

Running a full node

Development

Other:

Avoid Scams

Legal

Privacy Policy

Press

About bitcoin.org

Blog

© Bitcoin Project 2009-2024 Released under the MIT license

Bitcoin Core pages on Bitcoin.org are

maintained separately from the rest of the site.

Network Status

English

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

en

Bitcoin Core :: Bitcoin Core 0.12.0

Bitcoin Core :: Bitcoin Core 0.12.0

关于我们

博客

软件发行

开发

貢獻

贡献码

会议

支持的比特币改进协议 BIPs

生命周期

RPC Docs

26.0.0

25.0.0

24.0.0

23.0.0

22.0.0

0.21.0

0.20.0

0.19.0

0.18.0

0.17.0

0.16.3

0.16.2

0.16.1

0.16.0

联系

联系我们

声明

简体中文

English

 

Bitcoin Core 0.12.0

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

Bitcoin Core 0.12.0 版本现已发行:

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

这是一个添加了新功能和一些其他改进的主要版本更新。

请使用github的事件跟踪来反馈bug:

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

升级及降级

如何升级

如果你正在运行一个旧版本,先停止程序。等待程序完全停止后(较旧的版本可能需要几分钟),然后运行安装程序(Windows系统),或直接覆盖 /Applications/Bitcoin-Qt (Mac系统)或 bitcoind/bitcoin-qt(Linux系统)。

降级警告

###降级至低于0.10.0的版本

因为0.10.0和后续版本使用了块头部优先同步,同时并行下载块(见下文), 块文件和数据库将不再与低于0.10版本的比特币核心程序及其他软件兼容。

块文件在磁盘上的储存是乱序的(但是遵循他们真正被接受的顺序),这使得它不与一些工具或其他程序兼容。早期的版本在重建索引时也因此无法使用。

新的块索引数据库将只保存块的头,而块的内容将不被储存在磁盘上,早期版本并不支持这种方式。

如果您希望能够顺利的降级,请先将您的整个数据目录进行备份。若您没有备份,之后您的节点将要重新开始同步(或者从bootstrap.dat重新引导)。完全同步的0.10版本的节点中的数据可能可以在更早的版本中使用,但这是不被支持的行为,并且可能在旧版本试图重建索引时导致崩溃。

这并不影响钱包向前或向后的兼容。

降级至低于0.12.0的版本

因为0.12.0及之后的版本会在每一次新的同步和重建索引的时候混淆区块链状态,因此区块链状态将不再与低于0.12版本的比特币核心程序和其他软件兼容。

如果您希望从已经重建过索引的0.12.0或更新的版本降级,你需要在你第一次打开0.11或更低的版本的时候再次重建索引。

主要变更

使用libsecp256k1库进行签名验证

比特币交易中的ECDSA签名将使用libsecp256k1(https://github.com/bitcoin/secp256k1)库替代OpenSSL库。

根据平台不同,这意味着对原始签名验证速度的重大提升。特别是在x86_64平台,验证速度将会提高5倍。这意味着在实践中初始索引重建和新区块验证的时间将至少会比之前减少一半。

Libsecp256k1库经过了非常广泛的测试和验证。

这种变化的一个副作用是libconsensus不再基于OpenSSL。

减少上传流量

主要的对外流量是为其他节点在初始化区块下载时提供历史区块数据。

而现在可以通过’-maxuploadtarget’参数来减少上传的总流量。这并不是一个死板的限制,而是一个将出站流量减到最小的阈值。当流量接近阈值时,将会停止上传历史块(超过一周的块)以控制流量。

此外,任何一个SPV节点在请求一个过滤的块时,将被切断链接。

这个选项是默认关闭的(-maxuploadtarget=0),用户可以每天在MiB中设置。

推荐最低设置为每天144*MAX_BLOCK_SIZE(目前是144mb).

白名单中的节点将不会被断开,虽然他们的流量将用来计算结果。

您可以在/doc/reduce-traffic.md中找到有关保持流量在较低水平的更详细的文档。

直接头部声明

在兼容的节点中,[BIP300]将被作为直接头部声明(https://github.com/bitcoin/bips/blob/master/bip-0130.mediawiki)。这意味着块可以通过公布他们的头而不是公布它的哈希值来进行广播。在重组中,所有新的头部将全部被发送而不仅仅是提示。这样通常可以避免重复下载已经存在的块。

通过这个变化,修枝节点(pruning nodes)现在可以广播新的块到兼容的节点中。

内存池限制

之前的比特币核心版本中,内存池的大小将因为节点比对实际交易费和最小交易费而被限制。因为内存池没有受到限制,攻击者可以发送大量的、只支付比默认费用稍高的交易来导致内存较低的节点崩溃。而之前的比特币核心只是通过提高最低交易费用来暂时解决这个问题。

0.12.0版本的比特币核心有一个严格控制大小的内存池。其默认大小是300MB,可以通过配置’-maxmempool’这个参数来控制。无论什么时候,当一个交易将导致内存池超出限制时,交付最低交易费(作为一个包)的那笔交易(包括内存池中的子节点)将被抛弃,而该该节点的交易费将会增加一个默认的费用。这个默认的初始最低费用为1000萨图西/kB。

0.12版的比特币核心还引入了新的默认策略来限制可存入内存池中的未确认交易链的长度及大小(通常未确认的链的长度为25个交易,最大101KB)。这些限制可以通过命令行来修改;请参照拓展帮助(‘–help-help-debug’)来获得更多信息。

对Replace-by-fee交易的可选择

现在可以在0.12版本比特币核心节点的交易内存池里替换交易。比特币核心将仅仅在他们设置nSequence小于0xffffffff - 1时,准许交易替换。而且,一个替换交易可能只在支付足够费用时才会被接受,这在[BIP 125](https://github.com/bitcoin/bips/blob/master/bip-0125.mediawiki)中描述过

交易替代可以用一个新的命令行选项被禁用:-mempoolreplacement=0。BIP125下的被标记为可替换的交易仍可在这个配置的内存池中被接受,但替换将被拒绝。此选项适用于想保持先前版本的选择行为的矿工。

-mempoolreplacement选项对想避免收到未经证实的opt-in交易的钱包用户来说是不被推荐的,因为这个选项不会防止在BIP 125下可被替换的交易被接受(只有后续替换,也就是其他在此网络上的实现BIP 125的节点可能转播或挖矿)。

钱包用户希望检测到一个交易是否需要在BIP 125下替换,那么应该使用更新后的RPC指令:gettransaction和listtransactions。现在,如果一个交易时可替换的,那么会有一个额外的字段在输出中将指示出来(”bip125-replaceable”)。

注意,钱包在Bitcoin Core 0.12中还不支持创建在BIP 125下可被替换的交易。

RPC:Random-cookie RPC身份验证

当没有指定-rpcpassword,后台程序会使用一个特别的’cookie’文件来进行身份验证。这个文件在后台程序启动时生成随机内容,并在退出时删除。它的内容被作为身份验证令牌。读取这个文件的权限控制着谁可以通过RPC接入。默认情况下,它被储存在数据目录,但它的位置可以用参数-rpccookiefile覆盖。

这和Tor’s CookieAuthentication相似:详见https://www.torproject.org/docs/tor-manual.html.en

这允许运行bitcoind而无需任何手动配置。

转播:现在在OP_RETURN输出中允许任意数量的数据推送。

先前OP_RETURN输出仅在只有一个推送数据时被广播和挖取。这个限制已取消以允许OP_RETURN之后任意推送数据和常数操作码(OP_1到OP_16)的组合。OP_RETURN输出大小的限制现在适用于整个序列化的scriptPubKey脚本,默认为83字节。(先前的80字节默认值加上头部之前的3字节)

转播和挖矿:交易优先级

比特币核心有一个基于币值和时间的启发式“优先级”系统。

这项计算是用来广播不支付最低手续费的交易,可以用作另一种为已挖出的区块排序交易的方式。

比特币核心将会根据-limitfreerelay=(默认r=15 kB/min)和’-blockprioritysize='来广播费用足够的交易。

在比特币核心0.12版本中,当更高的最小手续费生效时,内存池大小将被限制。,即使根据启发式优先级排名,交易不符合这个更高的有效最低手续费时,将不会被广播或挖取。

对交易基于优先级的挖矿现在也默认禁用了。要重新启用,只需简单地在为这些交易储备区块字节大小的地方设置-blockprioritysize=

旧的默认值是50k,所以保留大约相同的规则,您可以设置-blockprioritysize=50000。

此外,由于计算的简化,避免重复计算已确认输入的交易,含有未确认输入的交易的优先级将比之前版本更低。

外部矿工规则可以通过设置prioritisetransaction RPC调用来排名已经在的内存池中的交易来像之前一样工作。

注意,如果矿工的对于交易的优先选择被禁止,那优先权就会被忽略,只有费用的本身才是真正有效的。

这项内部的自动化的优先级的处理正被考虑在比特币核心0.13版本中完全剔除,现在还未决定到底要不要恢复对链上未确认的交易进行更准确的优先级计算。

社区对于这项话题的讨论被特别的要求以确定项目的优先级。

自动使用Tor隐藏服务

从Tor的0.2.7.1版本开始,能够通过Tor的control socket API,自动地创建和销毁“短暂的”隐藏服务。

比特币核心已经升级来应用该项技术。

这意味着如果Tor正在运行(并且正常授权可用),比特币核心可以自动创建一个隐藏服务用于监听,而无需手动配置。

如果能成功地打开接入控制,比特币核心还将自动使用Tor以连接至其他的洋葱网络节点。

这将直接影响到可用的洋葱节点的数量以及它们的用法。

如果比特币核心正在监听并且Tor的连接可用,这个新功能可以默认开启。它可在-listenonion、 -torcontrol和-torpassword 设置中进行配置。要显示详细的调试信息,可通过-debug=tor。

通过ZMQ通知

比特币客户端现在可以(可选)异步地通过一个ZMQ为基础的PUB接入,通知客户新的交易和区块。

这个特性需要安装ZMQ C API library 4.x并通过指令栏或配置文件进行配置使用。

操作的具体信息请参照docs/zmq.md 。

钱包:交易费

对于钱包如何计算交易费已做出很多改进。

通过设置-paytxfee= (或是在运行时通过RPC调用 settxfee ),用户可以决定支付一笔预先计算好的费率,n=0代表让比特币核心使用浮动费率。默认状况下,比特币核心会使用浮动汇率。

基于历史交易数据,现在的浮动汇率大概是需要进入到第m块的费用,这个可通过-txconfirmtarget= (默认: 2)进行配置。

有时候,给出恰好的估计很难,或者给出估计本身就很难。因此,可以利用-fallbackfee=设置后退值(默认值为0.0002 BTC/kB)。

比特币核心总是利用参数-maxtxfee=将封顶费用设置在x(默认值:0.10)BTC。

并且,比特币核心不会创建小于当前最小交易费的交易。

最后,用户可以通过参数-mintxfee=为所有的交易设置最小交易费,默认值是1000satoshis/kB。

钱包:拒绝的确认和冲突检测

钱包现在将提交一个负数来确认在多深的区块链中检测到冲突。例如,一个交易A有5个确认并且与钱包交易B有着相同的输入,B将报告有-5个确认数。如果另一个钱包交易C使用B的输出,它也将报告有-5个确认数。

您也许需要’-rescan’以在区块链的历史交易中检测冲突。

与早期版本不同,未确认但没有冲突的交易永远不会得到一个负的确认。然而这些交易是不可花费的,除非它们来自我们自己(找零)并且被本地的内存池所接受。RPC调用’listtransactions’中新增的字段”trusted”的输出将标明一个未确认的交易是否会被认为是可交易的。

钱包:Merkle分支移除

在之前,所有的钱包交易都储存了一个Merkle分支来证明其自身存在于区块中。但这仅用于检测一个不需要的验证。从0.12版本开始,它们将不再被储存。当加载一个0.12版钱包到旧的版本,它将自动重新扫描以避免失败的检测。

钱包:剪枝

在0.12版本中,钱包的功能在删减模式中依然可以使用。

这可以将磁盘使用量从现在60GM减少到2GB。

但是,重新扫描及部分RPC如’importwallet’、’importaddress’、 ‘importprivkey’是被禁用的。

开启区块删减可以通过在命令行或’bitcoin.conf’ 文件内的prune=来设置。其中的’N’为用来分配初始块和撤销数据的MiB的数量。

值为0会禁用删减,0之上的最小值为550。

您的钱包对高值或低值的安全性是一致的。

高值仅仅是为了确保您的节点不会因为区块链的确认时间超过两天而被关闭——这在实际情况中几乎不会发生。

在未来的版本中,高值可以帮助整个网络成为一个整体。也就是说,被贮存的区块会被提供给其他节点。

关于更多的剪枝资料,你可以查看[release notes of v0.11.0]https://github.com/bitcoin/bitcoin/blob/v0.11.0/doc/release-notes.md#block-file-pruning).

‘NODE_BLOOM’服务位

‘NODE_BLOOM’服务位的支持,见BIP111描述(https://github.com/bitcoin/bips/blob/master/bip-0111.mediawiki), 已经被添加进P2P协议代码中。

BIP111明确定义了一个服务点允许用户做广告,支持bloom过滤器(就像被SPV客户端使用的那样)。尽管缺乏新的连接bloom滤波器服务位,它还冲击允许识别旧节点的协议版本。

在这个版本中,它只对于发送的’>=70011版本协议的节点执行。下一个主要版本,将计划将这一限制删除。对于70011之后版本的节点,将建议其更新SPV客户端已检查NODE_BLOOM`的节点服务位。

可选句法分析行为

命令行选项现在将严格按照其被指定的顺序解析。之前的情况是选项-X -noX,不那么直观的,在X设置后,-X将优先于-noX。现在已不再是这种情况,像其他软件,最后一个选项会被保留。

PRC:低级API变化

货币金额可以作为字符串提供。这意味着,例如参数sendtoaddress可以使用“0.0001”代替0.0001。这对于一个坚持使用有损浮点数类型的JSON库来说可能是一个优势,因为有损浮点类型对货币金额是不安全的。

*对每个提供有效哈希类型定义的签名,每个scriptSig的’asm’属性现在包含了解码签名哈希值类型。

OP_NOP2已经通过[BIP 65]被更名为OP_CHECKLOCKTIMEVERIFY(https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki)

这个改变将影响下列包含scriptSig签名涉及的项目:

RPC getrawtransaction

RPC decoderawtransaction

RPC decodescript

REST /rest/tx/ (JSON格式)

REST /rest/block/ (JSON格式当包含加长的交易细节)

bitcoin-tx -json

例: scriptSig.asm 交易属性输入之前显示的一个组合代表:

304502207fa7a6d1e0ee81132a269ad84e68d695483745cde8b541e3bf630749894e342a022100c1f7ab20e13e22fb95281a870f3dcf38d782e53023ee313d741ad0cfbc0c509001 400000 OP_NOP2

现在显示为:

304502207fa7a6d1e0ee81132a269ad84e68d695483745cde8b541e3bf630749894e342a022100c1f7ab20e13e22fb95281a870f3dcf38d782e53023ee313d741ad0cfbc0c5090[ALL] 400000 OP_CHECKLOCKTIMEVERIFY

注意RPC调用 decodescript的输出不会改变,因为这是用来专门配置scriptPubKe脚本而不是scriptSig脚本。

RPC: 放弃SSL支持

在之前RPC的SSL支持选项rpcssl已经从客户端和服务端除去。这样做是准备完全移除依赖OpenSSL的守护进程。

尝试用rpcssl会导致错误:

Error: SSL mode for RPC (-rpcssl) is no longer supported.

如果你是为数不多的依赖于这个功能的用户,通过使用stunnel命令可以灵活的进行迁移。这是一个可以在SSL里任意连接TCP的实用程序。例:Ubuntu可以使用以下命令安装:

sudo apt-get install stunnel4

然后,在28332端口将一个SSL连接至RPC服务器的本地18332端口:

stunnel -d 28332 -r 127.0.0.1:18332 -p stunnel.pem -P ''

它可以在inetd模式下设置为全局的。

另一个方式重新实现SSL为安装httpd反向代理。这个解决方法允许使用不同身份验证、负载均衡,即时压缩和缓存。一个apache2的示例配置看起来是:

Listen 443

NameVirtualHost *:443

SSLEngine On

SSLCertificateFile /etc/apache2/ssl/server.crt

SSLCertificateKeyFile /etc/apache2/ssl/server.key

ProxyPass http://127.0.0.1:8332/

ProxyPassReverse http://127.0.0.1:8332/

# optional enable digest auth

# AuthType Digest

# ...

# optional bypass bitcoind rpc basic auth

# RequestHeader set Authorization "Basic "

# get the from the shell with: base64 <<< bitcoinrpc:

# Or, balance the load:

# ProxyPass / balancer://balancer_cluster_name

挖矿代码的变更

挖矿的代码在0.12中被优化,其性能及内存占用得到了明显的改善。作为这次变更的一部分,一些关键的算法将在接收交易的过程中缓存入内存池,挖矿的代码现在依赖于内存池的一致性以构造成新的块。然而,所有的块都仍然需要在构造之后验证其正确性。

其他P2P的变更

现在被禁止的节点将被记录在磁盘上而不是内存中。重启bitcoind将不再会清除在黑名单中的节点;一个新的RPC调用(‘clearbanned’)将替代重启,以手动清除该名单。新的RPC调用可以用 ‘setban’ 来手动禁止或解禁一个节点。

0.12.0 变更日志

详尽的版本说明。这份说明仅包括影响行为的变化,并不包括代码、重构和字符串的更新。为了更加方便的定位变更的代码及附带的讨论,pull和request、git上的代码合并与提交都将被提及。

RPC和REST

Changelog

#6121 466f0ea Convert entire source tree from json_spirit to UniValue (Jonas Schnelli)

#6234 d38cd47 fix rpcmining/getblocktemplate univalue transition logic error (Jonas Schnelli)

#6239 643114f Don’t go through double in AmountFromValue and ValueFromAmount (Wladimir J. van der Laan)

#6266 ebab5d3 Fix univalue handling of \u0000 characters. (Daniel Kraft)

#6276 f3d4dbb Fix getbalance * 0 (Tom Harding)

#6257 5ebe7db Add paytxfee and errors JSON fields where appropriate (Stephen)

#6271 754aae5 New RPC command disconnectnode (Alex van der Peet)

#6158 0abfa8a Add setban/listbanned RPC commands (Jonas Schnelli)

#6307 7ecdcd9 rpcban fixes (Jonas Schnelli)

#6290 5753988 rpc: make gettxoutsettinfo run lock-free (Wladimir J. van der Laan)

#6262 247b914 Return all available information via RPC call “validateaddress” (dexX7)

#6339 c3f0490 UniValue: don’t escape solidus, keep espacing of reverse solidus (Jonas Schnelli)

#6353 6bcb0a2 Show softfork status in getblockchaininfo (Wladimir J. van der Laan)

#6247 726e286 Add getblockheader RPC call (Peter Todd)

#6362 d6db115 Fix null id in RPC response during startup (Forrest Voight)

#5486 943b322 [REST] JSON support for /rest/headers (Jonas Schnelli)

#6379 c52e8b3 rpc: Accept scientific notation for monetary amounts in JSON (Wladimir J. van der Laan)

#6388 fd5dfda rpc: Implement random-cookie based authentication (Wladimir J. van der Laan)

#6457 3c923e8 Include pruned state in chaininfo.json (Simon Males)

#6456 bfd807f rpc: Avoid unnecessary parsing roundtrip in number formatting, fix locale issue (Wladimir J. van der Laan)

#6380 240b30e rpc: Accept strings in AmountFromValue (Wladimir J. van der Laan)

#6346 6bb2805 Add OP_RETURN support in createrawtransaction RPC call, add tests. (paveljanik)

#6013 6feeec1 [REST] Add memory pool API (paveljanik)

#6576 da9beb2 Stop parsing JSON after first finished construct. (Daniel Kraft)

#5677 9aa9099 libevent-based http server (Wladimir J. van der Laan)

#6633 bbc2b39 Report minimum ping time in getpeerinfo (Matt Corallo)

#6648 cd381d7 Simplify logic of REST request suffix parsing. (Daniel Kraft)

#6695 5e21388 libevent http fixes (Wladimir J. van der Laan)

#5264 48efbdb show scriptSig signature hash types in transaction decodes. fixes #3166 (mruddy)

#6719 1a9f19a Make HTTP server shutdown more graceful (Wladimir J. van der Laan)

#6859 0fbfc51 http: Restrict maximum size of http + headers (Wladimir J. van der Laan)

#5936 bf7c195 [RPC] Add optional locktime to createrawtransaction (Tom Harding)

#6877 26f5b34 rpc: Add maxmempool and effective min fee to getmempoolinfo (Wladimir J. van der Laan)

#6970 92701b3 Fix crash in validateaddress with -disablewallet (Wladimir J. van der Laan)

#5574 755b4ba Expose GUI labels in RPC as comments (Luke-Jr)

#6990 dbd2c13 http: speed up shutdown (Wladimir J. van der Laan)

#7013 36baa9f Remove LOCK(cs_main) from decodescript (Peter Todd)

#6999 972bf9c add (max)uploadtarget infos to getnettotals RPC help (Jonas Schnelli)

#7011 31de241 Add mediantime to getblockchaininfo (Peter Todd)

#7065 f91e29f http: add Boost 1.49 compatibility (Wladimir J. van der Laan)

#7087 be281d8 [Net]Add -enforcenodebloom option (Patrick Strateman)

#7044 438ee59 RPC: Added additional config option for multiple RPC users. (Gregory Sanders)

#7072 c143c49 [RPC] Add transaction size to JSON output (Nikita Zhavoronkov)

#7022 9afbd96 Change default block priority size to 0 (Alex Morcos)

#7141 c0c08c7 rpc: Don’t translate warning messages (Wladimir J. van der Laan)

#7312 fd4bd50 Add RPC call abandontransaction (Alex Morcos)

#7222 e25b158 RPC: indicate which transactions are replaceable (Suhas Daftuar)

#7472 b2f2b85 rpc: Add WWW-Authenticate header to 401 response (Wladimir J. van der Laan)

#7469 9cb31e6 net.h fix spelling: misbeha{b,v}ing (Matt)

配置及命令行选项

#6164 8d05ec7 Allow user to use -debug=1 to enable all debugging (lpescher)

#5288 4452205 Added -whiteconnections= option (Josh Lehan)

#6284 10ac38e Fix argument parsing oddity with -noX (Wladimir J. van der Laan)

#6489 c9c017a Give a better error message if system clock is bad (Casey Rodarmor)

#6462 c384800 implement uacomment config parameter which can add comments to user agent as per BIP-0014 (Pavol Rusnak)

#6647 a3babc8 Sanitize uacomment (MarcoFalke)

#6742 3b2d37c Changed logging to make -logtimestamps to work also for -printtoconsole (arnuschky)

#6846 2cd020d alias -h for -help (Daniel Cousens)

#6622 7939164 Introduce -maxuploadtarget (Jonas Schnelli)

#6881 2b62551 Debug: Add option for microsecond precision in debug.log (Suhas Daftuar)

#6776 e06c14f Support -checkmempool=N, which runs checks once every N transactions (Pieter Wuille)

#6896 d482c0a Make -checkmempool=1 not fail through int32 overflow (Pieter Wuille)

#6993 b632145 Add -blocksonly option (Patrick Strateman)

#7323 a344880 0.12: Backport -bytespersigop option (Luke-Jr)

#7386 da83ecd Add option -permitrbf to set transaction replacement policy (Wladimir J. van der Laan)

#7290 b16b5bc Add missing options help (MarcoFalke)

#7440 c76bfff Rename permitrbf to mempoolreplacement and provide minimal string-list forward compatibility (Luke-Jr)

区块和交易的处理

#6203 f00b623 Remove P2SH coinbase flag, no longer interesting (Luke-Jr)

#6222 9c93ee5 Explicitly set tx.nVersion for the genesis block and mining tests (Mark Friedenbach)

#5985 3a1d3e8 Fix removing of orphan transactions (Alex Morcos)

#6221 dd8fe82 Prune: Support noncontiguous block files (Adam Weiss)

#6124 41076aa Mempool only CHECKLOCKTIMEVERIFY (BIP65) verification, unparameterized version (Peter Todd)

#6329 d0a10c1 acceptnonstdtxn option to skip (most) “non-standard transaction” checks, for testnet/regtest only (Luke-Jr)

#6410 7cdefb9 Implement accurate memory accounting for mempool (Pieter Wuille)

#6444 24ce77d Exempt unspendable transaction outputs from dust checks (dexX7)

#5913 a0625b8 Add absurdly high fee message to validation state (Shaul Kfir)

#6177 2f746c6 Prevent block.nTime from decreasing (Mark Friedenbach)

#6377 e545371 Handle no chain tip available in InvalidChainFound() (Ross Nicoll)

#6551 39ddaeb Handle leveldb::DestroyDB() errors on wipe failure (Adam Weiss)

#6654 b0ce450 Mempool package tracking (Suhas Daftuar)

#6715 82d2aef Fix mempool packages (Suhas Daftuar)

#6680 4f44530 use CBlockIndex instead of uint256 for UpdatedBlockTip signal (Jonas Schnelli)

#6650 4fac576 Obfuscate chainstate (James O’Beirne)

#6777 9caaf6e Unobfuscate chainstate data in CCoinsViewDB::GetStats (James O’Beirne)

#6722 3b20e23 Limit mempool by throwing away the cheapest txn and setting min relay fee to it (Matt Corallo)

#6889 38369dd fix locking issue with new mempool limiting (Jonas Schnelli)

#6464 8f3b3cd Always clean up manual transaction prioritization (Casey Rodarmor)

#6865 d0badb9 Fix chainstate serialized_size computation (Pieter Wuille)

#6566 ff057f4 BIP-113: Mempool-only median time-past as endpoint for lock-time calculations (Mark Friedenbach)

#6934 3038eb6 Restores mempool only BIP113 enforcement (Gregory Maxwell)

#6965 de7d459 Benchmark sanity checks and fork checks in ConnectBlock (Matt Corallo)

#6918 eb6172a Make sigcache faster, more efficient, larger (Pieter Wuille)

#6771 38ed190 Policy: Lower default limits for tx chains (Alex Morcos)

#6932 73fa5e6 ModifyNewCoins saves database lookups (Alex Morcos)

#5967 05d5918 Alter assumptions in CCoinsViewCache::BatchWrite (Alex Morcos)

#6871 0e93586 nSequence-based Full-RBF opt-in (Peter Todd)

#7008 eb77416 Lower bound priority (Alex Morcos)

#6915 2ef5ffa [Mempool] Improve removal of invalid transactions after reorgs (Suhas Daftuar)

#6898 4077ad2 Rewrite CreateNewBlock (Alex Morcos)

#6872 bdda4d5 Remove UTXO cache entries when the tx they were added for is removed/does not enter mempool (Matt Corallo)

#7062 12c469b [Mempool] Fix mempool limiting and replace-by-fee for PrioritiseTransaction (Suhas Daftuar)

#7276 76de36f Report non-mandatory script failures correctly (Pieter Wuille)

#7217 e08b7cb Mark blocks with too many sigops as failed (Suhas Daftuar)

#7387 f4b2ce8 Get rid of inaccurate ScriptSigArgsExpected (Pieter Wuille)

P2P协议及网络编码

#6172 88a7ead Ignore getheaders requests when not synced (Suhas Daftuar)

#5875 9d60602 Be stricter in processing unrequested blocks (Suhas Daftuar)

#6256 8ccc07c Use best header chain timestamps to detect partitioning (Gavin Andresen)

#6283 a903ad7 make CAddrMan::size() return the correct type of size_t (Diapolo)

#6272 40400d5 Improve proxy initialization (continues #4871) (Wladimir J. van der Laan, Diapolo)

#6310 66e5465 banlist.dat: store banlist on disk (Jonas Schnelli)

#6412 1a2de32 Test whether created sockets are select()able (Pieter Wuille)

#6498 219b916 Keep track of recently rejected transactions with a rolling bloom filter (cont’d) (Peter Todd)

#6556 70ec975 Fix masking of irrelevant bits in address groups. (Alex Morcos)

#6530 ea19c2b Improve addrman Select() performance when buckets are nearly empty (Pieter Wuille)

#6583 af9305a add support for miniupnpc api version 14 (Pavel Vasin)

#6374 69dc5b5 Connection slot exhaustion DoS mitigation (Patrick Strateman)

#6636 536207f net: correctly initialize nMinPingUsecTime (Wladimir J. van der Laan)

#6579 0c27795 Add NODE_BLOOM service bit and bump protocol version (Matt Corallo)

#6148 999c8be Relay blocks when pruning (Suhas Daftuar)

#6588 cf9bb11 In (strCommand == “tx”), return if AlreadyHave() (Tom Harding)

#6974 2f71b07 Always allow getheaders from whitelisted peers (Wladimir J. van der Laan)

#6639 bd629d7 net: Automatically create hidden service, listen on Tor (Wladimir J. van der Laan)

#6984 9ffc687 don’t enforce maxuploadtarget’s disconnect for whitelisted peers (Jonas Schnelli)

#7046 c322652 Net: Improve blocks only mode. (Patrick Strateman)

#7090 d6454f6 Connect to Tor hidden services by default (when listening on Tor) (Peter Todd)

#7106 c894fbb Fix and improve relay from whitelisted peers (Pieter Wuille)

#7129 5d5ef3a Direct headers announcement (rebase of #6494) (Pieter Wuille)

#7079 1b5118b Prevent peer flooding inv request queue (redux) (redux) (Gregory Maxwell)

#7166 6ba25d2 Disconnect on mempool requests from peers when over the upload limit. (Gregory Maxwell)

#7133 f31955d Replace setInventoryKnown with a rolling bloom filter (rebase of #7100) (Pieter Wuille)

#7174 82aff88 Don’t do mempool lookups for “mempool” command without a filter (Matt Corallo)

#7179 44fef99 net: Fix sent reject messages for blocks and transactions (Wladimir J. van der Laan)

#7181 8fc174a net: Add and document network messages in protocol.h (Wladimir J. van der Laan)

#7125 10b88be Replace global trickle node with random delays (Pieter Wuille)

#7415 cb83beb net: Hardcoded seeds update January 2016 (Wladimir J. van der Laan)

#7438 e2d9a58 Do not absolutely protect local peers; decide group ties based on time (Gregory Maxwell)

#7439 86755bc Add whitelistforcerelay to control forced relaying. [#7099 redux] (Gregory Maxwell)

#7482 e16f5b4 Ensure headers count is correct (Suhas Daftuar)

确认

#5927 8d9f0a6 Reduce checkpoints’ effect on consensus. (Pieter Wuille)

#6299 24f2489 Bugfix: Don’t check the genesis block header before accepting it (Jorge Timón)

#6361 d7ada03 Use real number of cores for default -par, ignore virtual cores (Wladimir J. van der Laan)

#6519 87f37e2 Make logging for validation optional (Wladimir J. van der Laan)

#6351 2a1090d CHECKLOCKTIMEVERIFY (BIP65) IsSuperMajority() soft-fork (Peter Todd)

#6931 54e8bfe Skip BIP 30 verification where not necessary (Alex Morcos)

#6954 e54ebbf Switch to libsecp256k1-based ECDSA validation (Pieter Wuille)

#6508 61457c2 Switch to a constant-space Merkle root/branch algorithm. (Pieter Wuille)

#6914 327291a Add pre-allocated vector type and use it for CScript (Pieter Wuille)

#7500 889e5b3 Correctly report high-S violations (Pieter Wuille)

系统构建

#6210 0e4f2a0 build: disable optional use of gmp in internal secp256k1 build (Wladimir J. van der Laan)

#6214 87406aa [OSX] revert renaming of Bitcoin-Qt.app and use CFBundleDisplayName (partial revert of #6116) (Jonas Schnelli)

#6218 9d67b10 build/gitian misc updates (Cory Fields)

#6269 d4565b6 gitian: Use the new bitcoin-detached-sigs git repo for OSX signatures (Cory Fields)

#6418 d4a910c Add autogen.sh to source tarball. (randy-waterhouse)

#6373 1ae3196 depends: non-qt bumps for 0.12 (Cory Fields)

#6434 059b352 Preserve user-passed CXXFLAGS with –enable-debug (Gavin Andresen)

#6501 fee6554 Misc build fixes (Cory Fields)

#6600 ef4945f Include bitcoin-tx binary on Debian/Ubuntu (Zak Wilcox)

#6619 4862708 depends: bump miniupnpc and ccache (Michael Ford)

#6801 ae69a75 [depends] Latest config.guess and config.sub (Michael Ford)

#6938 193f7b5 build: If both Qt4 and Qt5 are installed, use Qt5 (Wladimir J. van der Laan)

#7092 348b281 build: Set osx permissions in the dmg to make Gatekeeper happy (Cory Fields)

#6980 eccd671 [Depends] Bump Boost, miniupnpc, ccache & zeromq (Michael Ford)

#7424 aa26ee0 Add security/export checks to gitian and fix current failures (Cory Fields)

钱包

#6183 87550ee Fix off-by-one error w/ nLockTime in the wallet (Peter Todd)

#6057 ac5476e re-enable wallet in autoprune (Jonas Schnelli)

#6356 9e6c33b Delay initial pruning until after wallet init (Adam Weiss)

#6088 91389e5 fundrawtransaction (Matt Corallo)

#6415 ddd8d80 Implement watchonly support in fundrawtransaction (Matt Corallo)

#6567 0f0f323 Fix crash when mining with empty keypool. (Daniel Kraft)

#6688 4939eab Fix locking in GetTransaction. (Alex Morcos)

#6645 4dbd43e Enable wallet key imports without rescan in pruned mode. (Gregory Maxwell)

#6550 5b77244 Do not store Merkle branches in the wallet. (Pieter Wuille)

#5924 12a7712 Clean up change computation in CreateTransaction. (Daniel Kraft)

#6906 48b5b84 Reject invalid pubkeys when reading ckey items from the wallet. (Gregory Maxwell)

#7010 e0a5ef8 Fix fundrawtransaction handling of includeWatching (Peter Todd)

#6851 616d61b Optimisation: Store transaction list order in memory rather than compute it every need (Luke-Jr)

#6134 e92377f Improve usage of fee estimation code (Alex Morcos)

#7103 a775182 [wallet, rpc tests] Fix settxfee, paytxfee (MarcoFalke)

#7105 30c2d8c Keep track of explicit wallet conflicts instead of using mempool (Pieter Wuille)

#7096 9490bd7 [Wallet] Improve minimum absolute fee GUI options (Jonas Schnelli)

#6216 83f06ca Take the training wheels off anti-fee-sniping (Peter Todd)

#4906 96e8d12 Issue#1643: Coinselection prunes extraneous inputs from ApproximateBestSubset (Murch)

#7200 06c6a58 Checks for null data transaction before issuing error to debug.log (Andy Craze)

#7296 a36d79b Add sane fallback for fee estimation (Alex Morcos)

#7293 ff9b610 Add regression test for vValue sort order (MarcoFalke)

#7306 4707797 Make sure conflicted wallet tx’s update balances (Alex Morcos)

#7381 621bbd8 [walletdb] Fix syntax error in key parser (MarcoFalke)

#7491 00ec73e wallet: Ignore MarkConflict if block hash is not known (Wladimir J. van der Laan)

#7502 1329963 Update the wallet best block marker before pruning (Pieter Wuille)

图形用户界面(GUI)

#6217 c57e12a disconnect peers from peers tab via context menu (Diapolo)

#6209 ab0ec67 extend rpc console peers tab (Diapolo)

#6484 1369d69 use CHashWriter also in SignVerifyMessageDialog (Pavel Vasin)

#6487 9848d42 Introduce PlatformStyle (Wladimir J. van der Laan)

#6505 100c9d3 cleanup icons (MarcoFalke)

#4587 0c465f5 allow users to set -onion via GUI (Diapolo)

#6529 c0f66ce show client user agent in debug window (Diapolo)

#6594 878ea69 Disallow duplicate windows. (Casey Rodarmor)

#5665 6f55cdd add verifySize() function to PaymentServer (Diapolo)

#6317 ca5e2a1 minor optimisations in peertablemodel (Diapolo)

#6315 e59d2a8 allow banning and unbanning over UI->peers table (Jonas Schnelli)

#6653 e04b2fa Pop debug window in foreground when opened twice (MarcoFalke)

#6864 c702521 Use monospace font (MarcoFalke)

#6887 3694b74 Update coin control and smartfee labels (MarcoFalke)

#7000 814697c add shortcurts for debug-/console-window (Jonas Schnelli)

#6951 03403d8 Use maxTxFee instead of 10000000 (MarcoFalke)

#7051 a190777 ui: Add “Copy raw transaction data” to transaction list context menu (Wladimir J. van der Laan)

#6979 776848a simple mempool info in debug window (Jonas Schnelli)

#7006 26af1ac add startup option to reset Qt settings (Jonas Schnelli)

#6780 2a94cd6 Call init’s parameter interaction before we create the UI options model (Jonas Schnelli)

#7112 96b8025 reduce cs_main locks during tip update, more fluently update UI (Jonas Schnelli)

#7206 f43c2f9 Add “NODE_BLOOM” to guiutil so that peers don’t get UNKNOWN[4] (Matt Corallo)

#7282 5cadf3e fix coincontrol update issue when deleting a send coins entry (Jonas Schnelli)

#7319 1320300 Intro: Display required space (MarcoFalke)

#7318 9265e89 quickfix for RPC timer interface problem (Jonas Schnelli)

#7327 b16b5bc [Wallet] Transaction View: LastMonth calculation fixed (crowning-)

#7364 7726c48 [qt] Windows: Make rpcconsole monospace font larger (MarcoFalke)

#7384 294f432 [qt] Peertable: Increase SUBVERSION_COLUMN_WIDTH (MarcoFalke)

测试与 QA

#6305 9005c91 build: comparison tool swap (Cory Fields)

#6318 e307e13 build: comparison tool NPE fix (Cory Fields)

#6337 0564c5b Testing infrastructure: mocktime fixes (Gavin Andresen)

#6350 60abba1 add unit tests for the decodescript rpc (mruddy)

#5881 3203a08 Fix and improve txn_doublespend.py test (Tom Harding)

#6390 6a73d66 tests: Fix bitcoin-tx signing test case (Wladimir J. van der Laan)

#6368 7fc25c2 CLTV: Add more tests to improve coverage (Esteban Ordano)

#6414 5121c68 Fix intermittent test failure, reduce test time (Tom Harding)

#6417 44fa82d [QA] fix possible reorg issue in (fund)rawtransaction(s).py RPC test (Jonas Schnelli)

#6398 3d9362d rpc: Remove chain-specific RequireRPCPassword (Wladimir J. van der Laan)

#6428 bb59e78 tests: Remove old sh-based test framework (Wladimir J. van der Laan)

#5515 d946e9a RFC: Assert on probable deadlocks if the second lock isnt try_lock (Matt Corallo)

#6287 d2464df Clang lock debug (Cory Fields)

#6465 410fd74 Don’t share objects between TestInstances (Casey Rodarmor)

#6534 6c1c7fd Fix test locking issues and un-revert the probable-deadlines assertions commit (Cory Fields)

#6509 bb4faee Fix race condition on test node shutdown (Casey Rodarmor)

#6523 561f8af Add p2p-fullblocktest.py (Casey Rodarmor)

#6590 981fd92 Fix stale socket rebinding and re-enable python tests for Windows (Cory Fields)

#6730 cb4d6d0 build: Remove dependency of bitcoin-cli on secp256k1 (Wladimir J. van der Laan)

#6616 5ab5dca Regression Tests: Migrated rpc-tests.sh to all Python rpc-tests.py (Peter Tschipper)

#6720 d479311 Creates unittests for addrman, makes addrman more testable. (Ethan Heilman)

#6853 c834f56 Added fPowNoRetargeting field to Consensus::Params (Eric Lombrozo)

#6827 87e5539 [rpc-tests] Check return code (MarcoFalke)

#6848 f2c869a Add DERSIG transaction test cases (Ross Nicoll)

#6813 5242bb3 Support gathering code coverage data for RPC tests with lcov (dexX7)

#6888 c8322ff Clear strMiscWarning before running PartitionAlert (Eric Lombrozo)

#6894 2675276 [Tests] Fix BIP65 p2p test (Suhas Daftuar)

#6863 725539e [Test Suite] Fix test for null tx input (Daniel Kraft)

#6926 a6d0d62 tests: Initialize networking on windows (Wladimir J. van der Laan)

#6822 9fa54a1 [tests] Be more strict checking dust (MarcoFalke)

#6804 5fcc14e [tests] Add basic coverage reporting for RPC tests (James O’Beirne)

#7045 72dccfc Bugfix: Use unique autostart filenames on Linux for testnet/regtest (Luke-Jr)

#7095 d8368a0 Replace scriptnum_test’s normative ScriptNum implementation (Wladimir J. van der Laan)

#7063 6abf6eb [Tests] Add prioritisetransaction RPC test (Suhas Daftuar)

#7137 16f4a6e Tests: Explicitly set chain limits in replace-by-fee test (Suhas Daftuar)

#7216 9572e49 Removed offline testnet DNSSeed ‘alexykot.me’. (tnull)

#7209 f3ad812 test: don’t override BITCOIND and BITCOINCLI if they’re set (Wladimir J. van der Laan)

#7226 301f16a Tests: Add more tests to p2p-fullblocktest (Suhas Daftuar)

#7153 9ef7c54 [Tests] Add mempool_limit.py test (Jonas Schnelli)

#7170 453c567 tests: Disable Tor interaction (Wladimir J. van der Laan)

#7229 1ed938b [qa] wallet: Check if maintenance changes the balance (MarcoFalke)

#7308 d513405 [Tests] Eliminate intermittent failures in sendheaders.py (Suhas Daftuar)

#7468 947c4ff [rpc-tests] Change solve() to use rehash (Brad Andrews)

其他

#6213 e54ff2f [init] add -blockversion help and extend -upnp help (Diapolo)

#5975 1fea667 Consensus: Decouple ContextualCheckBlockHeader from checkpoints (Jorge Timón)

#6061 eba2f06 Separate Consensus::CheckTxInputs and GetSpendHeight in CheckInputs (Jorge Timón)

#5994 786ed11 detach wallet from miner (Jonas Schnelli)

#6387 11576a5 [bitcoin-cli] improve error output (Jonas Schnelli)

#6401 6db53b4 Add BITCOIND_SIGTERM_TIMEOUT to OpenRC init scripts (Florian Schmaus)

#6430 b01981e doc: add documentation for shared library libbitcoinconsensus (Braydon Fuller)

#6372 dcc495e Update Linearize tool to support Windows paths; fix variable scope; update README and example configuration (Paul Georgiou)

#6453 8fe5cce Separate core memory usage computation in core_memusage.h (Pieter Wuille)

#6149 633fe10 Buffer log messages and explicitly open logs (Adam Weiss)

#6488 7cbed7f Avoid leaking file descriptors in RegisterLoad (Casey Rodarmor)

#6497 a2bf40d Make sure LogPrintf strings are line-terminated (Wladimir J. van der Laan)

#6504 b6fee6b Rationalize currency unit to “BTC” (Ross Nicoll)

#6507 9bb4dd8 Removed contrib/bitrpc (Casey Rodarmor)

#6527 41d650f Use unique name for AlertNotify tempfile (Casey Rodarmor)

#6561 e08a7d9 limitedmap fixes and tests (Casey Rodarmor)

#6565 a6f2aff Make sure we re-acquire lock if a task throws (Casey Rodarmor)

#6599 f4d88c4 Make sure LogPrint strings are line-terminated (Ross Nicoll)

#6630 195942d Replace boost::reverse_lock with our own (Casey Rodarmor)

#6103 13b8282 Add ZeroMQ notifications (João Barbosa)

#6692 d5d1d2e devtools: don’t push if signing fails in github-merge (Wladimir J. van der Laan)

#6728 2b0567b timedata: Prevent warning overkill (Wladimir J. van der Laan)

#6713 f6ce59c SanitizeString: Allow hypen char (MarcoFalke)

#5987 4899a04 Bugfix: Fix testnet-in-a-box use case (Luke-Jr)

#6733 b7d78fd Simple benchmarking framework (Gavin Andresen)

#6854 a092970 devtools: Add security-check.py (Wladimir J. van der Laan)

#6790 fa1d252 devtools: add clang-format.py (MarcoFalke)

#7114 f3d0fdd util: Don’t set strMiscWarning on every exception (Wladimir J. van der Laan)

#7078 93e0514 uint256::GetCheapHash bigendian compatibility (arowser)

#7094 34e02e0 Assert now > 0 in GetTime GetTimeMillis GetTimeMicros (Patrick Strateman)

鸣谢

非常感谢以下人员对该发布版本做出的直接贡献:

accraze

Adam Weiss

Alex Morcos

Alex van der Peet

AlSzacrel

Altoidnerd

Andriy Voskoboinyk

antonio-fr

Arne Brutschy

Ashley Holman

Bob McElrath

Braydon Fuller

BtcDrak

Casey Rodarmor

centaur1

Chris Kleeschulte

Christian Decker

Cory Fields

daniel

Daniel Cousens

Daniel Kraft

David Hill

dexX7

Diego Viola

Elias Rohrer

Eric Lombrozo

Erik Mossberg

Esteban Ordano

EthanHeilman

Florian Schmaus

Forrest Voight

Gavin Andresen

Gregory Maxwell

Gregory Sanders / instagibbs

Ian T

Irving Ruan

Jacob Welsh

James O’Beirne

Jeff Garzik

Johnathan Corgan

Jonas Schnelli

Jonathan Cross

João Barbosa

Jorge Timón

Josh Lehan

J Ross Nicoll

kazcw

Kevin Cooper

lpescher

Luke Dashjr

MarcoFalke

Mark Friedenbach

Matt

Matt Bogosian

Matt Corallo

Matt Quinn

Micha

Michael

Michael Ford / fanquake

Midnight Magic

Mitchell Cash

mrbandrews

mruddy

Nick

Patrick Strateman

Paul Georgiou

Paul Rabahy

Pavel Janík / paveljanik

Pavel Vasin

Pavol Rusnak

Peter Josling

Peter Todd

Philip Kaufmann

Pieter Wuille

ptschip

randy-waterhouse

rion

Ross Nicoll

Ryan Havar

Shaul Kfir

Simon Males

Stephen

Suhas Daftuar

tailsjoin

Thomas Kerin

Tom Harding

tulip

unsystemizer

Veres Lajos

Wladimir J. van der Laan

xor-freenet

Zak Wilcox

zathras-crypto

同时也向所有在Transifex上协助进行翻译的人员致以真诚的感谢。义务翻译.

Twitter

Legal | Privacy Policy | RSS

© 2024 Bitcoin Core

Bitcoin Core :: Releases

Bitcoin Core :: Releases

关于我们

博客

软件发行

开发

貢獻

贡献码

会议

支持的比特币改进协议 BIPs

生命周期

RPC Docs

26.0.0

25.0.0

24.0.0

23.0.0

22.0.0

0.21.0

0.20.0

0.19.0

0.18.0

0.17.0

0.16.3

0.16.2

0.16.1

0.16.0

联系

联系我们

声明

简体中文

English

Español

日本語

繁體中文

 

Releases

Bitcoin Core 26.0

Bitcoin Core 25.1

Bitcoin Core 25.0

Bitcoin Core 24.2

Bitcoin Core 24.1

Bitcoin Core 24.0.1

Bitcoin Core 23.2

Bitcoin Core 23.1

Bitcoin Core 23.0

Bitcoin Core 22.1

Bitcoin Core 22.0

Bitcoin Core 0.21.2

Bitcoin Core 0.21.1

Bitcoin Core 0.21.0

Bitcoin Core 0.20.2

Bitcoin Core 0.20.1

Bitcoin Core 0.20.0

Bitcoin Core 0.19.1

Bitcoin Core 0.19.0.1

Bitcoin Core 0.18.1

Bitcoin Core 0.18.0

Bitcoin Core 0.17.1

Bitcoin Core 0.17.0.1

Bitcoin Core 0.17.0

Bitcoin Core 0.16.3

Bitcoin Core 0.16.2

Bitcoin Core 0.16.1

Bitcoin Core 0.16.0

Bitcoin Core 0.15.2

Bitcoin Core 0.15.1

Bitcoin Core 0.15.0.1

Bitcoin Core 0.15.0

Bitcoin Core 0.14.3

Bitcoin Core 0.14.2

Bitcoin Core 0.14.1

Bitcoin Core 0.14.0

Bitcoin Core 0.13.2

Bitcoin Core 0.13.1

Bitcoin Core 0.13.0

Bitcoin Core 0.12.1

Bitcoin Core 0.12.0

Bitcoin Core 0.11.2

Bitcoin Core 0.11.1

Bitcoin Core 0.11.0

Twitter

Legal | Privacy Policy | RSS

© 2024 Bitcoin Core

Bitcoin Core :: Home

Bitcoin Core :: Home

关于我们

博客

软件发行

开发

貢獻

贡献码

会议

支持的比特币改进协议 BIPs

生命周期

RPC Docs

26.0.0

25.0.0

24.0.0

23.0.0

22.0.0

0.21.0

0.20.0

0.19.0

0.18.0

0.17.0

0.16.3

0.16.2

0.16.1

0.16.0

联系

联系我们

声明

简体中文

English

Español

日本語

繁體中文

 

Recent Posts

Bitcoin Core 26.0 released

Bitcoin Core 26.0 is now available.

Published on December 06, 2023

Bitcoin Core 24.2 released

Bitcoin Core 24.2 is now available.

Published on October 26, 2023

Bitcoin Core 25.1 released

Bitcoin Core 25.1 is now available.

Published on October 19, 2023

Bitcoin Core 25.0 released

Bitcoin Core 25.0 is now available.

Published on May 26, 2023

Bitcoin Core 24.1 released

Bitcoin Core 24.1 is now available.

Published on May 18, 2023

Twitter

Legal | Privacy Policy | RSS

© 2024 Bitcoin Core

Bitcoin Core :: Bitcoin Core 0.21.1

Bitcoin Core :: Bitcoin Core 0.21.1

About

Download

blog

releases

Development

contribute

contributing code

meetings

Lifecycle

RPC Docs

26.0.0

25.0.0

24.0.0

23.0.0

22.0.0

0.21.0

0.20.0

0.19.0

0.18.0

0.17.0

0.16.3

0.16.2

0.16.1

0.16.0

Contact

Contact Us

Announcements

Twitter impersonation

English

日本語

 

Bitcoin Core 0.21.1

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

0.21.1 Release Notes

Bitcoin Core version 0.21.1 is now available from:

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

This minor release includes various bug fixes and performance

improvements, as well as updated translations.

Please report bugs using the issue tracker at GitHub:

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

To receive security and update notifications, please subscribe to:

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

How to Upgrade

If you are running an older version, shut it down. Wait until it has completely

shut down (which might take a few minutes in some cases), then run the

installer (on Windows) or just copy over /Applications/Bitcoin-Qt (on Mac)

or bitcoind/bitcoin-qt (on Linux).

Upgrading directly from a version of Bitcoin Core that has reached its EOL is

possible, but it might take some time if the data directory needs to be migrated. Old

wallet versions of Bitcoin Core are generally supported.

Compatibility

Bitcoin Core is supported and extensively tested on operating systems

using the Linux kernel, macOS 10.12+, and Windows 7 and newer. Bitcoin

Core should also work on most other Unix-like systems but is not as

frequently tested on them. It is not recommended to use Bitcoin Core on

unsupported systems.

From Bitcoin Core 0.20.0 onwards, macOS versions earlier than 10.12 are no

longer supported. Additionally, Bitcoin Core does not yet change appearance

when macOS “dark mode” is activated.

Notable changes

Taproot Soft Fork

Included in this release are the mainnet and testnet activation

parameters for the taproot soft fork (BIP341) which also adds support

for schnorr signatures (BIP340) and tapscript (BIP342).

If activated, these improvements will allow users of single-signature

scripts, multisignature scripts, and complex contracts to all use

identical-appearing commitments that enhance their privacy and the

fungibility of all bitcoins. Spenders will enjoy lower fees and the

ability to resolve many multisig scripts and complex contracts with the

same efficiency, low fees, and large anonymity set as single-sig users.

Taproot and schnorr also include efficiency improvements for full nodes

such as the ability to batch signature verification. Together, the

improvements lay the groundwork for future potential

upgrades that may improve efficiency, privacy, and fungibility further.

Activation for taproot is being managed using a variation of BIP9

versionbits called Speedy Trial (described in BIP341). Taproot’s

versionbit is bit 2, and nodes will begin tracking which blocks signal

support for taproot at the beginning of the first retarget period after

taproot’s start date of 24 April 2021. If 90% of blocks within a

2,016-block retarget period (about two weeks) signal support for taproot

prior to the first retarget period beginning after the time of 11 August

2021, the soft fork will be locked in, and taproot will then be active

as of block 709632 (expected in early or mid November).

Should taproot not be locked in via Speedy Trial activation, it is

expected that a follow-up activation mechanism will be deployed, with

changes to address the reasons the Speedy Trial method failed.

This release includes the ability to pay taproot addresses, although

payments to such addresses are not secure until taproot activates.

It also includes the ability to relay and mine taproot transactions

after activation. Beyond those two basic capabilities, this release

does not include any code that allows anyone to directly use taproot.

The addition of taproot-related features to Bitcoin Core’s wallet is

expected in later releases once taproot activation is assured.

All users, businesses, and miners are encouraged to upgrade to this

release (or a subsequent compatible release) unless they object to

activation of taproot. If taproot is locked in, then upgrading before

block 709632 is highly recommended to help enforce taproot’s new rules

and to avoid the unlikely case of seeing falsely confirmed transactions.

Miners who want to activate Taproot should preferably use this release

to control their signaling. The getblocktemplate RPC results will

automatically be updated to signal once the appropriate start has been

reached and continue signaling until the timeout occurs or taproot

activates. Alternatively, miners may manually start signaling on bit 2

at any time; if taproot activates, they will need to ensure they update

their nodes before block 709632 or non-upgraded nodes could cause them to mine on

an invalid chain. See the versionbits

FAQ for

details.

For more information about taproot, please see the following resources:

Technical specifications

BIP340 Schnorr signatures for secp256k1

BIP341 Taproot: SegWit version 1 spending rules

BIP342 Validation of Taproot scripts

Popular articles;

Taproot Is Coming: What It Is, and How It Will Benefit Bitcoin

What do Schnorr Signatures Mean for Bitcoin?

The Schnorr Signature & Taproot Softfork Proposal

Development history overview

Taproot

Schnorr signatures

Tapscript

Soft fork activation

Other

Questions and answers related to taproot

Taproot review

Updated RPCs

Due to BIP 350

being implemented, behavior for all RPCs that accept addresses is changed when

a native witness version 1 (or higher) is passed. These now require a Bech32m

encoding instead of a Bech32 one, and Bech32m encoding will be used for such

addresses in RPC output as well. No version 1 addresses should be created

for mainnet until consensus rules are adopted that give them meaning

(e.g. through BIP 341).

Once that happens, Bech32m is expected to be used for them, so this shouldn’t

affect any production systems, but may be observed on other networks where such

addresses already have meaning (like signet).

0.21.1 change log

Consensus

#21377 Speedy trial support for versionbits (ajtowns)

#21686 Speedy trial activation parameters for Taproot (achow101)

P2P protocol and network code

#20852 allow CSubNet of non-IP networks (vasild)

#21043 Avoid UBSan warning in ProcessMessage(…) (practicalswift)

Wallet

#21166 Introduce DeferredSignatureChecker and have SignatureExtractorClass subclass it (achow101)

#21083 Avoid requesting fee rates multiple times during coin selection (achow101)

RPC and other APIs

#21201 Disallow sendtoaddress and sendmany when private keys disabled (achow101)

Build system

#21486 link against -lsocket if required for *ifaddrs (fanquake)

#20983 Fix MSVC build after gui#176 (hebasto)

Tests and QA

#21380 Add fuzzing harness for versionbits (ajtowns)

#20812 fuzz: Bump FuzzedDataProvider.h (MarcoFalke)

#20740 fuzz: Update FuzzedDataProvider.h from upstream (LLVM) (practicalswift)

#21446 Update vcpkg checkout commit (sipsorcery)

#21397 fuzz: Bump FuzzedDataProvider.h (MarcoFalke)

#21081 Fix the unreachable code at feature_taproot (brunoerg)

#20562 Test that a fully signed tx given to signrawtx is unchanged (achow101)

#21571 Make sure non-IP peers get discouraged and disconnected (vasild, MarcoFalke)

#21489 fuzz: cleanups for versionbits fuzzer (ajtowns)

Miscellaneous

#20861 BIP 350: Implement Bech32m and use it for v1+ segwit addresses (sipa)

Documentation

#21384 add signet to bitcoin.conf documentation (jonatack)

#21342 Remove outdated comment (hebasto)

Credits

Thanks to everyone who directly contributed to this release:

Aaron Clauson

Andrew Chow

Anthony Towns

Bruno Garcia

Fabian Jahr

fanquake

Hennadii Stepanov

Jon Atack

Luke Dashjr

MarcoFalke

Pieter Wuille

practicalswift

randymcmillan

Sjors Provoost

Vasil Dimov

W. J. van der Laan

As well as to everyone that helped with translations on

Transifex.

Twitter

Legal | Privacy Policy | RSS

© 2024 Bitcoin Core

Bitcoin Core 25.0

Bitcoin Core 25.0

Bitcoin.org is a community funded project, donations are appreciated and used to improve the website.

Make a donation

Bitcoin.org needs your support!

×

Donate to Bitcoin.org

Use this QR code or address below

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

$5.00

(... BTC)

$25.00

(... BTC)

$50.00

(... BTC)

Features

Overview

Validation

Privacy

Requirements

User Interface

Network Support

Get Help

Contribute

Bug reports

Code

Documentation

Translations

Tech Support

News

Download

English

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Language: en

Bitcoin

>

Core

>

News

> 25.0

Bitcoin Core 25.0

25.0 Release Notes

Bitcoin Core version 25.0 is now available from:

https://bitcoin.org/bin/bitcoin-core-25.0/

This release includes new features, various bug fixes and performance

improvements, as well as updated translations.

Please report bugs using the issue tracker at GitHub:

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

To receive security and update notifications, please subscribe to:

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

How to Upgrade

If you are running an older version, shut it down. Wait until it has completely

shut down (which might take a few minutes in some cases), then run the

installer (on Windows) or just copy over /Applications/Bitcoin-Qt (on macOS)

or bitcoind/bitcoin-qt (on Linux).

Upgrading directly from a version of Bitcoin Core that has reached its EOL is

possible, but it might take some time if the data directory needs to be migrated. Old

wallet versions of Bitcoin Core are generally supported.

Compatibility

Bitcoin Core is supported and extensively tested on operating systems

using the Linux kernel, macOS 10.15+, and Windows 7 and newer. Bitcoin

Core should also work on most other Unix-like systems but is not as

frequently tested on them. It is not recommended to use Bitcoin Core on

unsupported systems.

Notable changes

P2P and network changes

Transactions of non-witness size 65 bytes and above are now allowed by mempool

and relay policy. This is to better reflect the actual afforded protections

against CVE-2017-12842 and open up additional use-cases of smaller transaction sizes. (#26265)

New RPCs

The scanblocks RPC returns the relevant blockhashes from a set of descriptors by

scanning all blockfilters in the given range. It can be used in combination with

the getblockheader and rescanblockchain RPCs to achieve fast wallet rescans. Note

that this functionality can only be used if a compact block filter index

(-blockfilterindex=1) has been constructed by the node. (#23549)

Updated RPCs

All JSON-RPC methods accept a new named

parameter called args that can

contain positional parameter values. This is a convenience to allow some

parameter values to be passed by name without having to name every value. The

python test framework and bitcoin-cli tool both take advantage of this, so

for example:

bitcoin-cli -named createwallet wallet_name=mywallet load_on_startup=1

Can now be shortened to:

bitcoin-cli -named createwallet mywallet load_on_startup=1

The verifychain RPC will now return false if the checks didn’t fail,

but couldn’t be completed at the desired depth and level. This could be due

to missing data while pruning, due to an insufficient dbcache or due to

the node being shutdown before the call could finish. (#25574)

sendrawtransaction has a new, optional argument, maxburnamount with a default value of 0.

Any transaction containing an unspendable output with a value greater than maxburnamount will

not be submitted. At present, the outputs deemed unspendable are those with scripts that begin

with an OP_RETURN code (known as ‘datacarriers’), scripts that exceed the maximum script size,

and scripts that contain invalid opcodes.

The testmempoolaccept RPC now returns 2 additional results within the “fees” result:

“effective-feerate” is the feerate including fees and sizes of transactions validated together if

package validation was used, and also includes any modified fees from prioritisetransaction. The

“effective-includes” result lists the wtxids of transactions whose modified fees and sizes were used

in the effective-feerate (#26646).

decodescript may now infer a Miniscript descriptor under P2WSH context if it is not lacking

information. (#27037)

finalizepsbt is now able to finalize a transaction with inputs spending Miniscript-compatible

P2WSH scripts. (#24149)

Changes to wallet related RPCs can be found in the Wallet section below.

Build System

The --enable-upnp-default and --enable-natpmp-default options

have been removed. If you want to use port mapping, you can

configure it using a .conf file, or by passing the relevant

options at runtime. (#26896)

Updated settings

If the -checkblocks or -checklevel options are explicitly provided by the

user, but the verification checks cannot be completed due to an insufficient

dbcache, Bitcoin Core will now return an error at startup. (#25574)

Ports specified in -port and -rpcport options are now validated at startup.

Values that previously worked and were considered valid can now result in errors. (#22087)

Setting -blocksonly will now reduce the maximum mempool memory

to 5MB (users may still use -maxmempool to override). Previously,

the default 300MB would be used, leading to unexpected memory usage

for users running with -blocksonly expecting it to eliminate

mempool memory usage.

As unused mempool memory is shared with dbcache, this also reduces

the dbcache size for users running with -blocksonly, potentially

impacting performance.

Setting -maxconnections=0 will now disable -dnsseed

and -listen (users may still set them to override).

Changes to GUI or wallet related settings can be found in the GUI or Wallet section below.

New settings

The shutdownnotify option is used to specify a command to execute synchronously

before Bitcoin Core has begun its shutdown sequence. (#23395)

Wallet

The minconf option, which allows a user to specify the minimum number

of confirmations a UTXO being spent has, and the maxconf option,

which allows specifying the maximum number of confirmations, have been

added to the following RPCs in #25375:

fundrawtransaction

send

walletcreatefundedpsbt

sendall

Added a new next_index field in the response in listdescriptors to

have the same format as importdescriptors (#26194)

RPC listunspent now has a new argument include_immature_coinbase

to include coinbase UTXOs that don’t meet the minimum spendability

depth requirement (which before were silently skipped). (#25730)

Rescans for descriptor wallets are now significantly faster if compact

block filters (BIP158) are available. Since those are not constructed

by default, the configuration option “-blockfilterindex=1” has to be

provided to take advantage of the optimization. This improves the

performance of the RPC calls rescanblockchain, importdescriptors

and restorewallet. (#25957)

RPC unloadwallet now fails if a rescan is in progress. (#26618)

Wallet passphrases may now contain null characters.

Prior to this change, only characters up to the first

null character were recognized and accepted. (#27068)

Address Purposes strings are now restricted to the currently known values of “send”,

“receive”, and “refund”. Wallets that have unrecognized purpose strings will have

loading warnings, and the listlabels RPC will raise an error if an unrecognized purpose

is requested. (#27217)

In the createwallet, loadwallet, unloadwallet, and restorewallet RPCs, the

“warning” string field is deprecated in favor of a “warnings” field that

returns a JSON array of strings to better handle multiple warning messages and

for consistency with other wallet RPCs. The “warning” field will be fully

removed from these RPCs in v26. It can be temporarily re-enabled during the

deprecation period by launching bitcoind with the configuration option

-deprecatedrpc=walletwarningfield. (#27279)

Descriptor wallets can now spend coins sent to P2WSH Miniscript descriptors. (#24149)

GUI changes

The “Mask values” is a persistent option now. (gui#701)

The “Mask values” option affects the “Transaction” view now, in addition to the

“Overview” one. (gui#708)

REST

A new /rest/deploymentinfo endpoint has been added for fetching various

state info regarding deployments of consensus changes. (#25412)

Binary verification

The binary verification script has been updated. In previous releases it

would verify that the binaries had been signed with a single “release key”.

In this release and moving forward it will verify that the binaries are

signed by a threshold of trusted keys. For more details and

examples, see:

https://github.com/bitcoin/bitcoin/blob/master/contrib/verify-binaries/README.md

(#27358)

Low-level changes

RPC

The JSON-RPC server now rejects requests where a parameter is specified multiple

times with the same name, instead of silently overwriting earlier parameter values

with later ones. (#26628)

RPC listsinceblock now accepts an optional label argument

to fetch incoming transactions having the specified label. (#25934)

Previously setban, addpeeraddress, walletcreatefundedpsbt, methods

allowed non-boolean and non-null values to be passed as boolean parameters.

Any string, number, array, or object value that was passed would be treated

as false. After this change, passing any value except true, false, or

null now triggers a JSON value is not of expected type error. (#26213)

Credits

Thanks to everyone who directly contributed to this release:

0xb10c

721217.xyz

@RandyMcMillan

amadeuszpawlik

Amiti Uttarwar

Andrew Chow

Andrew Toth

Anthony Towns

Antoine Poinsot

Aurèle Oulès

Ben Woosley

Bitcoin Hodler

brunoerg

Bushstar

Carl Dong

Chris Geihsler

Cory Fields

David Gumberg

dergoegge

Dhruv Mehta

Dimitris Tsapakidis

dougEfish

Douglas Chimento

ekzyis

Elichai Turkel

Ethan Heilman

Fabian Jahr

FractalEncrypt

furszy

Gleb Naumenko

glozow

Greg Sanders

Hennadii Stepanov

hernanmarino

ishaanam

ismaelsadeeq

James O’Beirne

[email protected]

Jeff Ruane

Jeffrey Czyz

Jeremy Rubin

Jesse Barton

João Barbosa

JoaoAJMatos

John Moffett

Jon Atack

Jonas Schnelli

jonatack

Joshua Kelly

josibake

Juan Pablo Civile

kdmukai

klementtan

Kolby ML

kouloumos

Kristaps Kaupe

laanwj

Larry Ruane

Leonardo Araujo

Leonardo Lazzaro

Luke Dashjr

MacroFake

MarcoFalke

Martin Leitner-Ankerl

Martin Zumsande

Matt Whitlock

Matthew Zipkin

Michael Ford

Miles Liu

mruddy

Murray Nesbitt

muxator

omahs

pablomartin4btc

Pasta

Pieter Wuille

Pttn

Randall Naar

Riahiamirreza

roconnor-blockstream

Russell O’Connor

Ryan Ofsky

S3RK

Sebastian Falbesoner

Seibart Nedor

sinetek

Sjors Provoost

Skuli Dulfari

SomberNight

Stacie Waleyko

stickies-v

stratospher

Suhas Daftuar

Suriyaa Sundararuban

TheCharlatan

Vasil Dimov

Vasil Stoyanov

virtu

w0xlt

willcl-ark

yancy

Yusuf Sahin HAMZA

As well as to everyone that helped with translations on

Transifex.

Go back to the version history

Support Bitcoin.org:

Donate

3E8ociqZa9mZUSwGdSmAEMAoAxBK3FNDcd

Introduction:

Individuals

Businesses

Developers

Getting started

How it works

You need to know

White paper

Resources:

Resources

Exchanges

Community

Vocabulary

Events

Bitcoin Core

Participate:

Support Bitcoin

Buy Bitcoin

Running a full node

Development

Other:

Avoid Scams

Legal

Privacy Policy

Press

About bitcoin.org

Blog

© Bitcoin Project 2009-2024 Released under the MIT license

Bitcoin Core pages on Bitcoin.org are

maintained separately from the rest of the site.

Network Status

English

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

Bahasa Indonesia

Català

Dansk

Deutsch

English

Español

Français

Italiano

Magyar

Nederlands

Polski

Português Brasil

Română

Slovenščina

Srpski

Svenska

Türkçe

Ελληνικά

български

Русский

Українська

Հայերեն

العربية

فارسی

עברית

हिन्दी

한국어

ខ្មែរ

日本語

简体中文

繁體中文

en