diff --git a/may-2018-hardfork.md b/may-2018-hardfork.md new file mode 100644 index 0000000..e3791f3 --- /dev/null +++ b/may-2018-hardfork.md @@ -0,0 +1,33 @@ +# May 2018 Hardfork Specification + +Version Draft 0.2, 2018-02-01 + +## Summary + +When the median time past[1] of the most recent 11 blocks (MTP-11) is greater than or equal to UNIX timestamp 1526400000 Bitcoin Cash will execute a hardfork according to this specification. Starting from the next block these consensus rules changes will take effect: + +* Blocksize increase to 32 MB +* Re-enabling of several opcodes + +The following are not consensus changes, but are recommended changes for Bitcoin Cash implementations: + +* Automatic replay protection for future hardforks +* Increase OP_RETURN relay size to 223 total bytes + +## Blocksize increase + +The blocksize hard capacity limit will be increased to 32MB (32000000 bytes). + +## OpCodes + +Several opcodes will be re-enabled per [may-2018-opcodes](may-2018-opcodes.md) + +## Automatic Replay Protection + +When the median time past[1] of the most recent 11 blocks (MTP-11) is greater than or equal to UNIX timestamp 1542300000 Bitcoin Cash full nodes implementing the May 2018 consensus rules SHOULD enforce the following change: + + * Update `forkid`[1] to be equal a non-zero unique constant chosen by each implementation. It is explicit that this specification intentionally omits a value, as it should be different for each implementation. + +This particular consensus rule MUST NOT be implemented by Bitcoin Cash wallet software. + +[1] The `forkId` is defined as per the [replay protected sighash](replay-protected-sighash.md) specification. \ No newline at end of file