Changing these 2 lines gets what you want. Note that it's quick and dirty and will break non-testnet, so don't use this for anything but testnet:
diff --git a/src/main.cpp b/src/main.cpp
index a9311e2..b3496a1 100644
@@ -780,7 +780,7 @@ int64 static GetBlockValue(int nHeight, int64 nFees)
static const int64 ...
There is a ban mechanism which is handled in net.cpp.
Any node which misbehave by more than -banscore (defaults to 100) is banned for -bantime (defaults to 60×60×24 seconds = 1 day).
However, nodes with a local ip address are exempted, and for those a warning is shown in the logs after each misbehavior.
Also bans are not persistent, they are lifted when ...
You can use the invalidateblock RPC commands to create blockchain forks.
invalidateblock hash tells a node to consider hash invalid, so just generate a bunch of blocks, invalidate one somewhere down the chain on one of the regtest nodes, and have that node generate a bunch more to create a fork.
See qa/rpc-tests/mempool_resurrect_test.py in the Bitcoin ...
The keypool is a collection of unused addresses in your wallet. The keypool parameter tells the client how many unused addresses to keep in its pool.
Almost every time you send a Bitcoin payment, some change is generated and sent to a previously unused address. If you have a keypool, then each time a new address is needed one of the keypool addresses is ...
I managed to test forks by creating 3 reg test nodes. One node is used to interface with my software, and two other nodes are used to hold competing blockchains. The regtest mode starts each node with no connections to begin with, so they are completely isolated. I can use "sendrawtransaction" and "setgenerate" on these isolated nodes to create competing ...
There are a number of more complex alternatives under discussion which involve more elastic limits (instead of the hard limit which currently exists), automatically adjusted limits based on some metric in the blockchain, or some combination of both.
More complex alternatives mean more complex code and more potential for bugs. They certainly could and should ...
I'd suggest starting here: https://bitcoincore.org/en/2015/12/23/capacity-increases-faq/. There's also a SegWit adoption page on the site somewhere.
Finally, this article has some details on recent testing: http://www.coindesk.com/bitcoin-scaling-segregated-witness-expected-launch/
Testnet code has been modified to lessen the impact of fluctuations of hashing power mining against testnet:
If you wish to test against your own testnet, or think you might interfere with others needlessly, then Testnet-In-A-Box is for you.
Now this doesn't mean you shouldn't use Testnet -- especially if you ...
Blockchain.info service will not accept testnet coins so you can only test with regular coins.
As you can see in their site the minimum transfer amount allowed by their system is 0.0005 BTC so that's the minimum and no fee is required for that amount.
As you will be on the sender and receiving ends you can send any amount, if everything go as it should ...
Checkout the updated Testnet in a box. You will need bitcoind already installed in your system.
The "Testnet in a box" linked above is just like the world-wide bitcoin network except the only members are the 2 running on your computer. There should be no difference except that it's easier to generate coins.
I think the closest thing is the bitcoin mining hardware comparison:
Miners have different performance with different hardware architectures, so which miner is fastest for you depends on which hardware you have (AMD GCN/VLIW4/VLIW5, NVIDIA, different FPGAs).
It might be an idea to start a wiki page for ...
Yes and no. Don't use 8332 for your custom client's communication port, that is the default rpcport.
You can run an arbitrary number of bitcoind instances on your machine, as long as they are given different -port= and -rpcport= arguments, and they can all communicate with each other (using -addnode=127.0.0.1:...port... or -connect=127.0.0.1:...port... ).
You could take a look at Jeremy Rubin's TinyCoin:
It is, exactly as the name suggests, a very small cryptocurrency written in python which is designed purely for learning purposes. Might be what you're after :)
This is the output for all platforms at the moment, not just MacOS. To paraphrase from sipa on IRC:
The first summary is bitcoin's own summary: because of some hackery to run unit tests in parallel, it currently shows no tests (even though they are executed).
The second and third summary are the output from make check for the built-in dependencies, ...
testnet-in-a-box is a simple way to set up your own testnet network, separate from the main one. That lets you mine your own blocks easily because the difficulty will stay low. Then you can play around with double-spending your own coins to yourself without inconveniencing others, and without needing large amounts of hash power.
first install the software(bitcoin-qt) by following the steps:
sudo apt-add-repository ppa:bitcoin/bitcoin
sudo apt-get update
sudo apt-get install bitcoin-qt
click on the Receive button in the screenshot to get the address
go to link http://tpfaucet.appspot.com/ and give the address to get testnet bitcoins.
As Nate Eldredge suggest, you could use the Bitcoin Testnet. This is a separate Bitcoin fork that exists especially for testing purposes.
You can easily get some testnet coins from testnet faucets.
Besides that, do you know that it is possible to create a transaction with multiple inputs and multiple outputs? So instead of creating many transactions, you ...
It might contain security vulnerabilities (which could potentially expose your private key), but that's extremely unlikely. Something more plausible (but still unlikely) is corrupting your wallet.dat, so be sure to back it up before upgrading.
As a normal user, the test build ought to be safe for most purposes. The main risk, I guess, is for people ...
You likely have many small (in value) coins in your wallet, so when constructing a payment, many of them need to be assembled to construct a transaction - resulting in a large (in bytes) transaction.
The reference implementation (v0.8.6) will enforce a fee of 0.0001 BTC per kilobyte if it doesn't satisfy the "free transaction policy". Future versions of ...
You are probably trying to pay with BTC collected from very small payments (known as dust). This dust is commonly collected from advertisement sites. Though they know sending small payments will break your wallet this way, they just don't care as long as you keep clicking ads!
Since transaction size depends greatly on how many payments you're drawing money ...
Summarized from Bitcoin Core's Segregated Witness announcement:
The original version of SegWit was implemented in April through June 2015 for the Elements Project. It has facilitated every transaction on the Elements-based sidechains since then.
The new softfork-variant of SegWit moved to the multi-user testing stage in December 2015 by activating on the ...
As far as I know, there is no way to download arbitrary blocks (although I suspect it's not too hard to do if you implement your own client).
If you just want blocks for testing, you won't have much trouble finding bootstrap.dats that contain a few hundred thousand blocks. Alternatively, you could just run bitcoin core for half an hour or so and get a few ...
If you know what hashes of the blocks you want, you can use the P2P protocol to connect to a node and request those specific blocks. However, you cannot just do that with block heights as the block's height is not a unique identifier for the block. There are many libraries available that can speak the P2P protocol. The python-bitcoinlib can be used to send ...
You can sign a message using the signmessage command. Note that this only works if you are using legacy addresses (Bitcoin Core currently defaults to p2sh-segwit addresses which cannot be used to sign a message). You an get a legacy address using:
bitcoin-cli getnewaddres "" legacy
If the wallet is locked, you won't be able to sign a message.
I would separate out the unit tests and the integration tests.
If the function needs to go out to the internet or wait for the blockchain, I make them integration tests which I can run less frequently like every five minutes. The functions that are fast I like to run every 10 seconds.
Linking the errors to sensible time stamped logs like pm2 and key-...
These are seed nodes, not nodes that are connected to for a connection. A seed node means that it is a node that will be connected to in order to get addresses of other nodes to connect to. That connection will not be maintained; rather it is temporary.
If you want to connect nodes to each other, you should not be modifying the seed nodes at all. Rather you ...
So entropy seeds mnemonic (bip39?), then mnemonic | password hashes to Seed; Seed then acts as the master key for the bip32 xprv? (correct me if I'm wrong!?)
That sounds about right. Most of the process is well detailed in BIP-39.
An SHA-256 is taken of the entropy, and the first entropy_len_in_bits / 32 bits of this hash are appended to the end of the ...