The testnet is an alternative Bitcoin block chain, to be used for testing. Testnet coins are separate and distinct from actual bitcoins, and are never supposed to have any value. This allows application developers or bitcoin testers to experiment, without having to use real bitcoins or worrying about breaking the main bitcoin chain.
Run bitcoin or bitcoind with the -testnet flag to use the testnet (or put testnet=1 in the bitcoin.conf file).
There have been three generations of testnet. Testnet2 was just the first testnet reset with a different genesis block, because people were starting to trade testnet coins for real money. Testnet3 is the current test network. It was introduced with the 0.7 release, introduced a third genesis block, a new rule to avoid the "difficulty was too high, is now too low, and transactions take too long to verify" problem, and contains blocks with edge-case transactions designed to test implementation compatibility. On the December 21 of 2015 SegNet was deployed, to test the Wuille's Segregated Witness proposal.
- Default Bitcoin network protocol listen port is 18333 (instead of 8333)
- Default RPC connection port is 18332 (instead of 8332)
- Bootstrapping uses different DNS seeds.
- A different value of ADDRESSVERSION field ensures no testnet Bitcoin addresses will work on the production network. (0x6F rather than 0x00)
- The protocol message header bytes are 0x0B110907 (instead of 0xF9BEB4D9)
- Minimum difficulty of 1.0 on testnet is equal to difficulty of 0.5 on mainnet. This means that the mainnet-equivalent of any testnet difficulty is half the testnet difficulty. In addition, if no block has been found in 20 minutes, the difficulty automatically resets back to the minimum for a single block, after which it returns to its previous value.
- A new genesis block
- The IsStandard() check is disabled so that non-standard transactions can be experimented with.
Testnet receives less transactions than the main block chain and is typically much smaller in size. As of January 2018 the size of the data on disk was 14GB, containing data for about 6 years worth of testnet activity. Downloading this data required about 12GB of network activity peaking at 2MB/s rate of transfer.
solo.ckpool has a testnet bitcoin solo mining implementation available, without the need to set up bitcoind locally.
Online testnet wallets to help you test your application.
Once you're done with your test coins, it is a nice gesture to send them back to the faucets, so they become available to other developers.
- TP's TestNet Faucet
- nkuttler's Bitcoin Testnet Faucet, transactions are made through Joinmarket, a CoinJoin implementation
- flyingkiwi's TestNet Faucet
- Mycelium Testnet Wallet for Android with integrated Testnet "faucet" function (Local Trader)
- luis.im Mojocoin Testnet3 Faucet
- BlockCypher Testnet Faucet, also provided as a Testnet faucet API for test automation
- Biteasy.com Testnet Blockexplorer
- Blockchain.info Testnet Explorer
- Bitcoin Testnet on Blockr.io
- Bitcoin Testnet on insight.bitpay.com
- BlockTrail Testnet Explorer, Testnet API and Testnet Faucet
- BlockCypher Testnet Explorer