kevacoin/src
Gregory Maxwell e440ac7ef3 Introduce assumevalid setting to skip presumed valid scripts.
This disentangles the script validation skipping from checkpoints.

A new option is introduced "assumevalid" which specifies a block whos
 ancestors we assume all have valid scriptsigs and so we do not check
 them when they are also burried under the best header by two weeks
 worth of work.

Unlike checkpoints this has no influence on consensus unless you set
 it to a block with an invalid history.  Because of this it can be
 easily be updated without risk of influencing the network consensus.

This results in a massive IBD speedup.

This approach was independently recommended by Peter Todd and Luke-Jr
 since POW based signature skipping (see PR#9180) does not have the
 verifiable properties of a specific hash and may create bad incentives.

The downside is that, like checkpoints, the defaults bitrot and older
 releases will sync slower.  On the plus side users can provide their
 own value here, and if they set it to something crazy all that will
 happen is more time will be spend validating signatures.

Checkblocks and checklevel are also moved to the hidden debug options:
 Especially now that checkblocks has a low default there is little need
 to change these settings, and users frequently misunderstand them as
 influencing security or IBD speed.  By hiding them we offset the
 space added by this new option.
2017-01-13 15:42:24 +00:00
..
bench Merge #9353: Add data() method to CDataStream (and use it) 2017-01-09 08:47:47 -08:00
compat Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
config
consensus Introduce assumevalid setting to skip presumed valid scripts. 2017-01-13 15:42:24 +00:00
crypto Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
leveldb Merge in LevelDB 1.19 changes 2016-12-01 16:14:45 -08:00
obj
obj-test
policy Fix edge case with stale fee estimates 2017-01-04 12:10:18 -05:00
primitives Merge #9283: A few more CTransactionRef optimizations 2017-01-04 12:23:10 +01:00
qt Merge #9472: Disentangle progress estimation from checkpoints and update it 2017-01-12 12:13:14 +01:00
rpc Merge #9472: Disentangle progress estimation from checkpoints and update it 2017-01-12 12:13:14 +01:00
script Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
secp256k1 Update libsecp256k1 to master 2016-12-12 11:08:47 -08:00
support Merge #9387: [Refactor] RAII of libevent stuff using unique ptrs with deleters 2017-01-05 11:11:17 +01:00
test Merge #8883: Add all standard TXO types to bitcoin-tx 2017-01-12 12:24:35 +01:00
univalue
wallet Merge #9222: Add 'subtractFeeFromAmount' option to 'fundrawtransaction'. 2017-01-12 12:49:10 +01:00
zmq Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
.clang-format
addrdb.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
addrdb.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
addrman.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
addrman.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
amount.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
amount.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
arith_uint256.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
arith_uint256.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
base58.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
base58.h
bitcoin-cli-res.rc
bitcoin-cli.cpp rpc: Named argument support for bitcoin-cli 2017-01-10 12:04:54 +01:00
bitcoin-tx-res.rc
bitcoin-tx.cpp Merge #8883: Add all standard TXO types to bitcoin-tx 2017-01-12 12:24:35 +01:00
bitcoind-res.rc
bitcoind.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
blockencodings.cpp Make FillBlock consume txn_available to avoid shared_ptr copies 2016-12-21 18:18:28 -08:00
blockencodings.h Make FillBlock consume txn_available to avoid shared_ptr copies 2016-12-21 18:18:28 -08:00
bloom.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
bloom.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
chain.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
chain.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
chainparams.cpp Introduce assumevalid setting to skip presumed valid scripts. 2017-01-13 15:42:24 +00:00
chainparams.h Shorten variable names and switch to tx/s 2017-01-11 08:21:37 -08:00
chainparamsbase.cpp
chainparamsbase.h
chainparamsseeds.h
checkpoints.cpp [MOVEONLY] Move progress estimation out of checkpoints 2017-01-04 13:18:49 -08:00
checkpoints.h [MOVEONLY] Move progress estimation out of checkpoints 2017-01-04 13:18:49 -08:00
checkqueue.h
clientversion.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
clientversion.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
coins.cpp Check FRESH validity in CCoinsViewCache::BatchWrite 2017-01-04 14:56:17 -05:00
coins.h Merge #9107: Safer modify new coins 2017-01-04 11:56:17 -08:00
compat.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
compressor.cpp
compressor.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
core_io.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
core_memusage.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
core_read.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
core_write.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
cuckoocache.h Add CuckooCache implementation and replace the sigcache map_type with it 2016-12-14 16:02:05 -05:00
dbwrapper.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
dbwrapper.h Merge #9353: Add data() method to CDataStream (and use it) 2017-01-09 08:47:47 -08:00
hash.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
hash.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
httprpc.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
httprpc.h
httpserver.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
httpserver.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
indirectmap.h
init.cpp Introduce assumevalid setting to skip presumed valid scripts. 2017-01-13 15:42:24 +00:00
init.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
key.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
key.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
keystore.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
keystore.h
limitedmap.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
Makefile.am Merge #9387: [Refactor] RAII of libevent stuff using unique ptrs with deleters 2017-01-05 11:11:17 +01:00
Makefile.bench.include bench: Add support for measuring CPU cycles 2016-11-22 12:20:57 +01:00
Makefile.leveldb.include
Makefile.qt.include Merge #9513: build: fix qt distdir builds (retry) 2017-01-11 13:45:28 +01:00
Makefile.qttest.include Uses built-in byte swap if available (Apple) and if bswap_XX is undefined. 2016-12-17 12:27:00 +09:00
Makefile.test.include Merge #9525: test: Include tx data in EXTRA_DIST 2017-01-12 13:41:32 +01:00
memusage.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
merkleblock.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
merkleblock.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
miner.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
miner.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
net_processing.cpp Merge #9261: Add unstored orphans with rejected parents to recentRejects 2017-01-12 12:34:44 +01:00
net_processing.h Merge #9289: net: drop boost::thread_group 2017-01-04 12:21:53 +01:00
net.cpp Remove stray semicolon (Fix empty body warning) 2017-01-07 09:49:14 -08:00
net.h Break addnode out from the outbound connection limits. 2017-01-05 19:02:09 +00:00
netaddress.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
netaddress.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
netbase.cpp Merge #9289: net: drop boost::thread_group 2017-01-04 12:21:53 +01:00
netbase.h Merge #9289: net: drop boost::thread_group 2017-01-04 12:21:53 +01:00
netmessagemaker.h net: add CVectorWriter and CNetMsgMaker 2016-11-25 12:09:58 -05:00
noui.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
noui.h
pow.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
pow.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
prevector.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
protocol.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
protocol.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
pubkey.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
pubkey.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
random.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
random.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
rest.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
reverselock.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
scheduler.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
scheduler.h
serialize.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
streams.h Merge #9353: Add data() method to CDataStream (and use it) 2017-01-09 08:47:47 -08:00
sync.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
sync.h Break addnode out from the outbound connection limits. 2017-01-05 19:02:09 +00:00
threadinterrupt.cpp net: add CThreadInterrupt and InterruptibleSleep 2017-01-03 17:53:09 -05:00
threadinterrupt.h net: add CThreadInterrupt and InterruptibleSleep 2017-01-03 17:53:09 -05:00
threadsafety.h Bump copyright headers to 2014 2016-01-05 21:01:39 +01:00
timedata.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
timedata.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
tinyformat.h
torcontrol.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
torcontrol.h
txdb.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
txdb.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
txmempool.cpp Fix use-after-free in CTxMemPool::removeConflicts() 2017-01-10 15:21:21 -05:00
txmempool.h Merge #9138: Improve fee estimation 2017-01-05 14:22:19 -08:00
ui_interface.cpp
ui_interface.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
uint256.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
uint256.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
undo.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
util.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
util.h Merge #9417: Do not evaluate hidden LogPrint arguments 2017-01-05 10:49:00 +01:00
utilmoneystr.cpp
utilmoneystr.h
utilstrencodings.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
utilstrencodings.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
utiltime.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
utiltime.h
validation.cpp Introduce assumevalid setting to skip presumed valid scripts. 2017-01-13 15:42:24 +00:00
validation.h Introduce assumevalid setting to skip presumed valid scripts. 2017-01-13 15:42:24 +00:00
validationinterface.cpp Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
validationinterface.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
version.h Increment MIT Licence copyright header year on files modified in 2016 2016-12-31 11:01:21 -07:00
versionbits.cpp
versionbits.h
warnings.cpp Move GetWarnings() into its own file. 2016-12-03 07:17:34 +00:00
warnings.h Move GetWarnings() into its own file. 2016-12-03 07:17:34 +00:00