比特币的测试网络
Satoshi Nakamoto创建了主要的比特币区块链,创世区块所在的主链网络,被称为主网。还有其他测试目的的比特币链:
现存的有testnet,segnet和regtest。
Testnet-Bitcoin的测试游乐场
testnet是一个功能齐全的在线P2P网络,包括钱包,测试比特币(testnet币),挖矿以及类似主网的所有其他功能。
实际上和主网只有两个区别:testnet币是没人认可其价值的,挖矿难度比较低,这样可以欢快的使用testnet币。
那些想跟比特币主网进行交互的开发软件,都可以现在testnet上进行测试,这样好处实在太明显了。
testnet3是目前的测试网络版本,因为从创世区块重新开始跑已经出现了三次,这个网络也比较庞大,也有几十个G。
进行testnet全节点挖矿需要准备好硬盘。如果是启动testnet,而不是主网启动,可以使用如下命令:
- bitcoind -testnet
然后可以使用bitcoin-cli命令行工具,但是要切换到testnet模式:
bitcoin-cli -testnet getinfo
bitcoin-cli -testnet getblockchaininfo
testnet3支持主网的所有功能,包括在主网络上尚未激活的Segregated Witness,因此testnet3也可以用于测试隔离见证功能。
Segnet-隔离见证测试网络
这样一个隔离测试网络,用来帮助开发和测试隔离见证(segwit)。该测试区块链称为segnet,可以通过运行Bitcoin Core的特殊版本来连接。
由于将segwit添加到testnet3中,因此后面不再使用segnet来测试segwit功能。
Regtest-本地区块链
Regtest代表回归测试,是一种比特币核心功能,允许用户创建本地区块链以进行测试。
与testnet3不同,regtest区块链旨在作为本地测试的封闭系统运行。所以可以从创世区块开始,启动regtest链,创建一个本地的创世区块。
可以将其他节点添加到网络中,或者使用单个节点运行来测试Bitcoin Core软件。
要在regtest模式下启动Bitcoin Core,可以使用regtest标志:
bitcoind -regtest
bitcoin-cli -regtest getblockchaininfo
bitcoin-cli -regtest generate 500
bitcoin-cli -regtest getbalance
使用测试网络进行开发
可以在开发比特币核心,全节点共识客户端,钱包,交易所等,甚至是智能合约和复杂的脚本等,都可以用测试网络进行开发。
网友评论