Commit Graph

11 Commits

Author SHA1 Message Date
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
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
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
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
691161d419 Consensus: Create consensus/consensus.h with some constants 2015-04-20 21:27:51 +02:00