Homu
a418756ef4
Auto merge of #2874 - arcalinea:tx_block_expiry, r=arcalinea
...
Transaction expiry height
Implements ZIP 203.
- Only applies after Overwinter blockheight.
Closes #754 .
2018-02-23 18:37:48 -08:00
Simon
2423a40c08
Add field nProtocolVersion to struct NetworkUpgrade.
2018-02-23 14:05:13 -08:00
Jay Graber
9bb37bf0d5
Implement transaction expiry for Overwinter
2018-02-23 00:12:03 -08:00
Homu
49274558c6
Auto merge of #2940 - str4d:nu-activation-mempool-expiry, r=str4d
...
Mempool improvements, branch ID awareness
Whenever the local chain tip is updated, transactions in the mempool which commit to an
unmineable branch ID (for example, just before a network upgrade activates, where the
next block will have a different branch ID) will be removed.
Includes commits cherry-picked from the following upstream PRs:
- bitcoin/bitcoin#6654
- Only the mempool index change.
- bitcoin/bitcoin#6776
- bitcoin/bitcoin#7020
- bitcoin/bitcoin#6915
Part of #2074 .
2018-02-19 19:00:30 -08:00
Jack Grigg
34a64fe0a2
Remove mempool transactions which commit to an unmineable branch ID
2018-02-20 02:57:44 +00:00
Simon
072099d788
Implementation of Overwinter transaction format ZIP 202.
2018-02-16 10:10:15 -08:00
Jack Grigg
cad27eb77f
Update quote from ZIP 200
2018-02-06 23:18:56 +00:00
Jack Grigg
149d69e36b
Add method for fetching the next activation height after a given block height
2018-02-04 22:58:42 +00:00
Jack Grigg
548683767c
Add Overwinter to upgrade list
2018-02-04 22:58:42 +00:00
Jack Grigg
f52da91139
Test network upgrade logic
...
Also demonstrates how to specify a network upgrade.
2018-02-04 22:58:39 +00:00
Jack Grigg
780f526bc9
Network upgrade activation mechanism
2018-02-04 22:57:56 +00:00
syd
dffc025d38
Get rid of consensus.fPowAllowMinDifficultyBlocks.
...
This closes #1380
2017-11-23 12:20:50 -05:00
Philip Kaufmann
db954a65ac
use const references where appropriate
2017-03-03 10:57:05 -08:00
Jack Grigg
80f4cdcf8f
Reject block versions lower than 4
...
Closes #1556
2016-10-22 00:43:26 -05:00
Jack Grigg
7ac924cdb7
Disallow v0 transactions as a consensus rule
...
Closes #1557
2016-10-22 00:40:50 -05:00
Sean Bowe
74f15a73a1
Make 100KB transaction size limit a consensus rule, rather than a standard rule.
2016-10-08 00:00:23 -06:00
Simon
db0f931570
Add founders reward to ChainParams.
...
Fix bug where subsidy slow shift was ignored.
2016-09-30 14:42:47 -07:00
zkbot
fc127fc2db
Auto merge of #1051 - ThisIsNotOfficialCodeItsJustForks:t863-mock-coverage-of-checktransaction, r=ebfull
...
Add mock test coverage of CheckTransaction
Closes #863 .
2016-07-14 18:43:07 +00:00
Sean Bowe
000383c193
Increase block size to 2MB and update performance test.
2016-07-07 16:53:16 -06:00
Sean Bowe
9c45b501ad
Make validatelargetx test more accurate, reduce block size limit to 1MB for now.
2016-07-06 12:07:50 -06:00
zkbot
68b8b95c53
Auto merge of #962 - ebfull:2mb-blocks, r=ebfull
...
Increase block size limit to 2MB.
http://gavinandresen.ninja/a-guided-tour-of-the-2mb-fork
Closes #765 .
2016-06-28 17:46:47 +00:00
Taylor Hornby
948d4e6c10
Split JoinSplit proof verification out of CheckTransaction.
2016-06-23 16:35:31 -06:00
zkbot
658cdb15f7
Auto merge of #1027 - ThisIsNotOfficialCodeItsJustForks:t862-trivial-mock-test-example, r=ebfull
...
Add example mock test of CheckTransaction
Closes #862 .
2016-06-22 14:30:12 +00:00
zkbot
1178df0883
Auto merge of #1004 - str4d:931-difficulty-algorithm, r=ebfull
...
Implement new difficulty algorithm
Closes #931 . Closes #696 .
2016-06-15 23:26:49 +00:00
Taylor Hornby
fc057da455
Add example mock test of CheckTransaction
2016-06-15 17:01:55 -06:00
Jack Grigg
f2c48e15e5
Implement new difficulty algorithm ( #931 )
...
The algorithm is based on DigiShield v3/v4.
2016-06-15 09:48:42 +12:00
Sean Bowe
a180d0a6c6
Rename to fCoinbaseMustBeProtected.
2016-06-14 15:16:34 -06:00
Sean Bowe
c0dde76d8a
Disable coinbase-must-be-protected rule on regtest.
2016-06-13 12:23:55 -06:00
Jack Grigg
068e2f1a09
Fix comment
2016-05-27 11:29:08 +12:00
Sean Bowe
6ef996a3b6
Make sigop limit 20000 just as in Bitcoin, ignoring our change to the blocksize limit.
2016-05-25 16:46:36 -06:00
Sean Bowe
23c6d3aba8
Increase block size limit to 2MB.
2016-05-24 11:23:55 -06:00
Jack Grigg
bcb34c0802
Implement mining slow start with a linear ramp
2016-05-10 23:03:18 +12:00
Sean Bowe
03bff15fe2
Enforce zk-SNARK validity during consensus.
2016-01-19 14:36:09 -07:00
Mark Friedenbach
f720c5fc9f
Enable policy enforcing GetMedianTimePast as the end point of lock-time constraints
...
Transactions are not allowed in the memory pool or selected for inclusion in a block until their lock times exceed chainActive.Tip()->GetMedianTimePast(). However blocks including transactions which are only mature under the old rules are still accepted; this is *not* the soft-fork required to actually rely on the new constraint in production.
2015-10-23 21:33:51 +01:00
Mark Friedenbach
a1d3c6fb9d
Add rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time calculations
...
The lock-time code currently uses CBlock::nTime as the cutoff point for time based locked transactions. This has the unfortunate outcome of creating a perverse incentive for miners to lie about the time of a block in order to collect more fees by including transactions that by wall clock determination have not yet matured. By using CBlockIndex::GetMedianTimePast from the prior block instead, the self-interested miner no longer gains from generating blocks with fraudulent timestamps. Users can compensate for this change by simply adding an hour (3600 seconds) to their time-based lock times.
If enforced, this would be a soft-fork change. This commit only adds the functionality on an unexecuted code path, without changing the behaviour of Bitcoin Core.
2015-10-23 21:33:31 +01:00
Peter Todd
6ec08db338
Move LOCKTIME_THRESHOLD to src/script/script.h
...
Will now be needed by CHECKLOCKTIMEVERIFY code.
Rebased-From: 48e9c57cf06352f890eac4285ae022d8746cf3fd
2015-10-08 17:46:55 +02:00
jtimon
da29ecbcc6
Consensus: MOVEONLY: Move CValidationState from main consensus/validation
2015-05-15 16:05:28 +02:00
jtimon
691161d419
Consensus: Create consensus/consensus.h with some constants
2015-04-20 21:27:51 +02:00
Philip Kaufmann
a21df62069
ensure consistent header comment naming conventions
...
- BITCOIN_FOLDER_SUBFOLDER_FILENAME_H
2015-04-20 13:29:22 +02:00
Cory Fields
fd311996e8
consensus: don't use arith_uint256 in consensus.h
...
Requiring arith_uint256 at such a base level is not good for modularity.
2015-04-10 15:33:37 -04:00
Jorge Timón
bd006110fb
Consensus: Refactor: Introduce Consensus::Params class
2015-03-25 20:39:26 +01:00