diff options
8 files changed, 1480 insertions, 0 deletions
diff --git a/BlockchainTests/bcStateTests/suicideStorageCheck.json b/BlockchainTests/bcStateTests/suicideStorageCheck.json new file mode 100644 index 000000000..c2566ddbe --- /dev/null +++ b/BlockchainTests/bcStateTests/suicideStorageCheck.json @@ -0,0 +1,256 @@ +{ + "suicideStorageCheck_Byzantium" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via transaction create.", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckFiller.json", + "sourceHash" : "6fef4170b80758cd4373d699455cd44c69e630dbb591881f638c6cb789587bea" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x01ec11", + "hash" : "0x5eb6a5c2f1140c15ad21b149ba77a302d3a6d9e1fecbaea9bb11869f10b5d060", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xd8750fa2906a4ecb9483bf1de4329c02bd943df408e5a8842dec2b8701049dcb", + "receiptTrie" : "0xe3ac97387ce2247618b09a4ed4d844b758a0211008791b96ace316a527a29c1a", + "stateRoot" : "0x334d8d12b70ab372703f37bf6c9fed76c7c61ba1f131517123d5d440776d825a", + "timestamp" : "0x5b840a38", + "transactionsTrie" : "0xe405ee625e0e3816b412c75b5ecf86553e01f707acbd8435795feb93ec5bf401", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902bbf901faa0d8750fa2906a4ecb9483bf1de4329c02bd943df408e5a8842dec2b8701049dcba01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0334d8d12b70ab372703f37bf6c9fed76c7c61ba1f131517123d5d440776d825aa0e405ee625e0e3816b412c75b5ecf86553e01f707acbd8435795feb93ec5bf401a0e3ac97387ce2247618b09a4ed4d844b758a0211008791b96ace316a527a29c1ab90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd88301ec11845b840a3880a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8bbf860800183061a8094ec0e71ad0a90ffe1909d27dac207f7680abba42d80801ca0737494b1f14192e3426047b8a26402379695309ddd33412b45e85e2a12308338a0546928572bfdbf26609a6311ec547f03eb3cdb6c95c3cd8196ca11b53950d376f857010183061a8080808b60015460035560026002551ca052152c9fb8d40c82eed3024162fd6a11e0c58d4e748ce78c2d20c5d2992883e3a03c97b5951f88adfc908b497baf434902ffaba39cd1e617a0992d9b0243971186c0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0x737494b1f14192e3426047b8a26402379695309ddd33412b45e85e2a12308338", + "s" : "0x546928572bfdbf26609a6311ec547f03eb3cdb6c95c3cd8196ca11b53950d376", + "to" : "0xec0e71ad0a90ffe1909d27dac207f7680abba42d", + "v" : "0x1c", + "value" : "0x00" + }, + { + "data" : "0x6001546003556002600255", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0x52152c9fb8d40c82eed3024162fd6a11e0c58d4e748ce78c2d20c5d2992883e3", + "s" : "0x3c97b5951f88adfc908b497baf434902ffaba39cd1e617a0992d9b0243971186", + "to" : "", + "v" : "0x1c", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0xd8750fa2906a4ecb9483bf1de4329c02bd943df408e5a8842dec2b8701049dcb", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x9b2015e7ccf9d59f6d72707eef92cb4a9aa9a46a2c42a21a57f7367c8f81918b", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a09b2015e7ccf9d59f6d72707eef92cb4a9aa9a46a2c42a21a57f7367c8f81918ba056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0x5eb6a5c2f1140c15ad21b149ba77a302d3a6d9e1fecbaea9bb11869f10b5d060", + "network" : "Byzantium", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x29a2241af62dec11", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x025409f7ef", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + }, + "0xec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x01", + "storage" : { + "0x02" : "0x02" + } + } + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + }, + "suicideStorageCheck_Constantinople" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via transaction create.", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckFiller.json", + "sourceHash" : "6fef4170b80758cd4373d699455cd44c69e630dbb591881f638c6cb789587bea" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x01ec11", + "hash" : "0x0b050583de03f15f73ce1e9e13d27b1fb1fd59330256d912affde51f8597b8f4", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xd8750fa2906a4ecb9483bf1de4329c02bd943df408e5a8842dec2b8701049dcb", + "receiptTrie" : "0xe3ac97387ce2247618b09a4ed4d844b758a0211008791b96ace316a527a29c1a", + "stateRoot" : "0x334d8d12b70ab372703f37bf6c9fed76c7c61ba1f131517123d5d440776d825a", + "timestamp" : "0x5b840a39", + "transactionsTrie" : "0xe405ee625e0e3816b412c75b5ecf86553e01f707acbd8435795feb93ec5bf401", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902bbf901faa0d8750fa2906a4ecb9483bf1de4329c02bd943df408e5a8842dec2b8701049dcba01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0334d8d12b70ab372703f37bf6c9fed76c7c61ba1f131517123d5d440776d825aa0e405ee625e0e3816b412c75b5ecf86553e01f707acbd8435795feb93ec5bf401a0e3ac97387ce2247618b09a4ed4d844b758a0211008791b96ace316a527a29c1ab90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd88301ec11845b840a3980a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8bbf860800183061a8094ec0e71ad0a90ffe1909d27dac207f7680abba42d80801ca0737494b1f14192e3426047b8a26402379695309ddd33412b45e85e2a12308338a0546928572bfdbf26609a6311ec547f03eb3cdb6c95c3cd8196ca11b53950d376f857010183061a8080808b60015460035560026002551ca052152c9fb8d40c82eed3024162fd6a11e0c58d4e748ce78c2d20c5d2992883e3a03c97b5951f88adfc908b497baf434902ffaba39cd1e617a0992d9b0243971186c0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0x737494b1f14192e3426047b8a26402379695309ddd33412b45e85e2a12308338", + "s" : "0x546928572bfdbf26609a6311ec547f03eb3cdb6c95c3cd8196ca11b53950d376", + "to" : "0xec0e71ad0a90ffe1909d27dac207f7680abba42d", + "v" : "0x1c", + "value" : "0x00" + }, + { + "data" : "0x6001546003556002600255", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0x52152c9fb8d40c82eed3024162fd6a11e0c58d4e748ce78c2d20c5d2992883e3", + "s" : "0x3c97b5951f88adfc908b497baf434902ffaba39cd1e617a0992d9b0243971186", + "to" : "", + "v" : "0x1c", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0xd8750fa2906a4ecb9483bf1de4329c02bd943df408e5a8842dec2b8701049dcb", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x9b2015e7ccf9d59f6d72707eef92cb4a9aa9a46a2c42a21a57f7367c8f81918b", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a09b2015e7ccf9d59f6d72707eef92cb4a9aa9a46a2c42a21a57f7367c8f81918ba056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0x0b050583de03f15f73ce1e9e13d27b1fb1fd59330256d912affde51f8597b8f4", + "network" : "Constantinople", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x29a2241af62dec11", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x025409f7ef", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + }, + "0xec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x01", + "storage" : { + "0x02" : "0x02" + } + } + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + } +}
\ No newline at end of file diff --git a/BlockchainTests/bcStateTests/suicideStorageCheckVCreate.json b/BlockchainTests/bcStateTests/suicideStorageCheckVCreate.json new file mode 100644 index 000000000..8c20b814e --- /dev/null +++ b/BlockchainTests/bcStateTests/suicideStorageCheckVCreate.json @@ -0,0 +1,270 @@ +{ + "suicideStorageCheckVCreate_Byzantium" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via old create.", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreateFiller.json", + "sourceHash" : "ebdafedb30c8fc291092c9456e7211fb958b8dbb451e1df6f075083d88cc710c" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x026b92", + "hash" : "0xcfa289041982c81fefcf3cfa1b88df1cf3c4ef5ee5625e62886d2d1c4368f5ce", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0x6ab35d50404398cdc4965d5b99d0236b062cbe4250eb17def8c7b9ba33fa050f", + "receiptTrie" : "0x574cfdc7b84469486ca9aa2f3e2d257e8e76417587f9171a542b2552cb899030", + "stateRoot" : "0x59a5058bba186e7e70ea0da8c67f364a2a48e017024962c81c95ec8de195df0b", + "timestamp" : "0x5b840a2c", + "transactionsTrie" : "0x538c994f30fc9a09bda091cf204fec8bb6f896df3ca7324d8984ce1cb6fdc512", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902c6f901faa06ab35d50404398cdc4965d5b99d0236b062cbe4250eb17def8c7b9ba33fa050fa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a059a5058bba186e7e70ea0da8c67f364a2a48e017024962c81c95ec8de195df0ba0538c994f30fc9a09bda091cf204fec8bb6f896df3ca7324d8984ce1cb6fdc512a0574cfdc7b84469486ca9aa2f3e2d257e8e76417587f9171a542b2552cb899030b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd883026b92845b840a2c80a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8c6f860800183061a8094e3476106159f87477ad639e3ddcbb6b240efe45980801ba06ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769a03d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18f862010183061a808080966a6001546003556002600255600052600b60156000f01ba0a9e3564cf06590eb5d62c83f6e02a2fe83b98296f99e5b39319c40cf9d80fe37a028b2ef627145dff6022fb88e1fde74e165ab6aada8edfaf911b366e037f2d424c0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0x6ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769", + "s" : "0x3d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18", + "to" : "0xe3476106159f87477ad639e3ddcbb6b240efe459", + "v" : "0x1b", + "value" : "0x00" + }, + { + "data" : "0x6a6001546003556002600255600052600b60156000f0", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0xa9e3564cf06590eb5d62c83f6e02a2fe83b98296f99e5b39319c40cf9d80fe37", + "s" : "0x28b2ef627145dff6022fb88e1fde74e165ab6aada8edfaf911b366e037f2d424", + "to" : "", + "v" : "0x1b", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0x6ab35d50404398cdc4965d5b99d0236b062cbe4250eb17def8c7b9ba33fa050f", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x83a945c67434d812fff09aed3c55d53e3950d0cd12803abd95edcc190d951375", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a083a945c67434d812fff09aed3c55d53e3950d0cd12803abd95edcc190d951375a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0xcfa289041982c81fefcf3cfa1b88df1cf3c4ef5ee5625e62886d2d1c4368f5ce", + "network" : "Byzantium", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x29a2241af62e6b92", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x025409786e", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x01", + "storage" : { + "0x02" : "0x02" + } + }, + "0xec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + } + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + }, + "suicideStorageCheckVCreate_Constantinople" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via old create.", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreateFiller.json", + "sourceHash" : "ebdafedb30c8fc291092c9456e7211fb958b8dbb451e1df6f075083d88cc710c" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x026b92", + "hash" : "0x846219dab8bb7599aafd3cec59475764fccc3875a6de9f1b898f05fc6f76413c", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0x6ab35d50404398cdc4965d5b99d0236b062cbe4250eb17def8c7b9ba33fa050f", + "receiptTrie" : "0x574cfdc7b84469486ca9aa2f3e2d257e8e76417587f9171a542b2552cb899030", + "stateRoot" : "0x59a5058bba186e7e70ea0da8c67f364a2a48e017024962c81c95ec8de195df0b", + "timestamp" : "0x5b840a2d", + "transactionsTrie" : "0x538c994f30fc9a09bda091cf204fec8bb6f896df3ca7324d8984ce1cb6fdc512", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902c6f901faa06ab35d50404398cdc4965d5b99d0236b062cbe4250eb17def8c7b9ba33fa050fa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a059a5058bba186e7e70ea0da8c67f364a2a48e017024962c81c95ec8de195df0ba0538c994f30fc9a09bda091cf204fec8bb6f896df3ca7324d8984ce1cb6fdc512a0574cfdc7b84469486ca9aa2f3e2d257e8e76417587f9171a542b2552cb899030b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd883026b92845b840a2d80a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8c6f860800183061a8094e3476106159f87477ad639e3ddcbb6b240efe45980801ba06ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769a03d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18f862010183061a808080966a6001546003556002600255600052600b60156000f01ba0a9e3564cf06590eb5d62c83f6e02a2fe83b98296f99e5b39319c40cf9d80fe37a028b2ef627145dff6022fb88e1fde74e165ab6aada8edfaf911b366e037f2d424c0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0x6ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769", + "s" : "0x3d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18", + "to" : "0xe3476106159f87477ad639e3ddcbb6b240efe459", + "v" : "0x1b", + "value" : "0x00" + }, + { + "data" : "0x6a6001546003556002600255600052600b60156000f0", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0xa9e3564cf06590eb5d62c83f6e02a2fe83b98296f99e5b39319c40cf9d80fe37", + "s" : "0x28b2ef627145dff6022fb88e1fde74e165ab6aada8edfaf911b366e037f2d424", + "to" : "", + "v" : "0x1b", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0x6ab35d50404398cdc4965d5b99d0236b062cbe4250eb17def8c7b9ba33fa050f", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x83a945c67434d812fff09aed3c55d53e3950d0cd12803abd95edcc190d951375", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a083a945c67434d812fff09aed3c55d53e3950d0cd12803abd95edcc190d951375a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0x846219dab8bb7599aafd3cec59475764fccc3875a6de9f1b898f05fc6f76413c", + "network" : "Constantinople", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x29a2241af62e6b92", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x025409786e", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x01", + "storage" : { + "0x02" : "0x02" + } + }, + "0xec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + } + }, + "pre" : { + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + } +}
\ No newline at end of file diff --git a/BlockchainTests/bcStateTests/suicideStorageCheckVCreate2.json b/BlockchainTests/bcStateTests/suicideStorageCheckVCreate2.json new file mode 100644 index 000000000..78e7c5d45 --- /dev/null +++ b/BlockchainTests/bcStateTests/suicideStorageCheckVCreate2.json @@ -0,0 +1,255 @@ +{ + "suicideStorageCheckVCreate2_Byzantium" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via old create2", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreate2Filler.json", + "sourceHash" : "7713fc5fd4ef446bc98f681cc4cacad3ef306365d1189ab15f8817e3b2757ebc" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x06d221", + "hash" : "0x6b6d18115edf797d8d39732fc59004656320a663a38ee79a06411c44f3cfa036", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xd11d484e754458fdc47bb171f4af049a30804c6a95eb31906b47c8fbf62589a4", + "receiptTrie" : "0x5c76c28fbfd74b7601db1b63589e7bf12840d83d0d0ca54a873654b131d0640b", + "stateRoot" : "0xd05914e07e6aafab35a4bea91ec7b337745d9d8b8a482fdfd0bdf4b136e7891e", + "timestamp" : "0x5b840a28", + "transactionsTrie" : "0xe9bb3dd6a96eb52c0ae1467c98ae8b798822a9c6de7380b5b84bf0f02fa81858", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902c8f901faa0d11d484e754458fdc47bb171f4af049a30804c6a95eb31906b47c8fbf62589a4a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0d05914e07e6aafab35a4bea91ec7b337745d9d8b8a482fdfd0bdf4b136e7891ea0e9bb3dd6a96eb52c0ae1467c98ae8b798822a9c6de7380b5b84bf0f02fa81858a05c76c28fbfd74b7601db1b63589e7bf12840d83d0d0ca54a873654b131d0640bb90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd88306d221845b840a2880a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8c8f860800183061a809403855fc81ba27fb87117ab961e6bef17f7e8425080801ba0c72b7ef409567591b7a1a23e6e3e7d1f26f9fb92a5b3ae48148cd3a5a71a48eca031e806a13be8afc352f8eef62f73c952a5db94f800e985719d88fed91d26b3dff864010183061a808080986a60015460035560026002556000526000600b60156000f51ba087a55dfcc758fc7c9697c9f74dbf741910c816d6162ce85a25cfdad20d14d63da04c55cf5ad08530628ecea0e317bb855bafa2a23ed0fdc4a7d1a20c1b77bab40ac0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0xc72b7ef409567591b7a1a23e6e3e7d1f26f9fb92a5b3ae48148cd3a5a71a48ec", + "s" : "0x31e806a13be8afc352f8eef62f73c952a5db94f800e985719d88fed91d26b3df", + "to" : "0x03855fc81ba27fb87117ab961e6bef17f7e84250", + "v" : "0x1b", + "value" : "0x00" + }, + { + "data" : "0x6a60015460035560026002556000526000600b60156000f5", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0x87a55dfcc758fc7c9697c9f74dbf741910c816d6162ce85a25cfdad20d14d63d", + "s" : "0x4c55cf5ad08530628ecea0e317bb855bafa2a23ed0fdc4a7d1a20c1b77bab40a", + "to" : "", + "v" : "0x1b", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0xd11d484e754458fdc47bb171f4af049a30804c6a95eb31906b47c8fbf62589a4", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0xc53d6a6190680f094db29a75caa5ce3e71acec27420624357d7a125fbbbb0c20", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0c53d6a6190680f094db29a75caa5ce3e71acec27420624357d7a125fbbbb0c20a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0x6b6d18115edf797d8d39732fc59004656320a663a38ee79a06411c44f3cfa036", + "network" : "Byzantium", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x29a2241af632d221", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540511df", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + } + }, + "pre" : { + "0x03855fc81ba27fb87117ab961e6bef17f7e84250" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + }, + "suicideStorageCheckVCreate2_Constantinople" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via old create2", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreate2Filler.json", + "sourceHash" : "7713fc5fd4ef446bc98f681cc4cacad3ef306365d1189ab15f8817e3b2757ebc" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x026bdd", + "hash" : "0x5d2716f016275501148995cb06da55fe5942932050278c3a2caca96a54c8ffbc", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xd11d484e754458fdc47bb171f4af049a30804c6a95eb31906b47c8fbf62589a4", + "receiptTrie" : "0x8ba58d0709f21ee5135419471c879da87d200e7efba2dfcd95754fb37e3deda7", + "stateRoot" : "0xbb2e1cf1c5cd789774b44f069fe696f62f502a09bf99c372f16a72615322e7d9", + "timestamp" : "0x5b840a28", + "transactionsTrie" : "0xe9bb3dd6a96eb52c0ae1467c98ae8b798822a9c6de7380b5b84bf0f02fa81858", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902c8f901faa0d11d484e754458fdc47bb171f4af049a30804c6a95eb31906b47c8fbf62589a4a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0bb2e1cf1c5cd789774b44f069fe696f62f502a09bf99c372f16a72615322e7d9a0e9bb3dd6a96eb52c0ae1467c98ae8b798822a9c6de7380b5b84bf0f02fa81858a08ba58d0709f21ee5135419471c879da87d200e7efba2dfcd95754fb37e3deda7b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd883026bdd845b840a2880a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8c8f860800183061a809403855fc81ba27fb87117ab961e6bef17f7e8425080801ba0c72b7ef409567591b7a1a23e6e3e7d1f26f9fb92a5b3ae48148cd3a5a71a48eca031e806a13be8afc352f8eef62f73c952a5db94f800e985719d88fed91d26b3dff864010183061a808080986a60015460035560026002556000526000600b60156000f51ba087a55dfcc758fc7c9697c9f74dbf741910c816d6162ce85a25cfdad20d14d63da04c55cf5ad08530628ecea0e317bb855bafa2a23ed0fdc4a7d1a20c1b77bab40ac0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0xc72b7ef409567591b7a1a23e6e3e7d1f26f9fb92a5b3ae48148cd3a5a71a48ec", + "s" : "0x31e806a13be8afc352f8eef62f73c952a5db94f800e985719d88fed91d26b3df", + "to" : "0x03855fc81ba27fb87117ab961e6bef17f7e84250", + "v" : "0x1b", + "value" : "0x00" + }, + { + "data" : "0x6a60015460035560026002556000526000600b60156000f5", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0x87a55dfcc758fc7c9697c9f74dbf741910c816d6162ce85a25cfdad20d14d63d", + "s" : "0x4c55cf5ad08530628ecea0e317bb855bafa2a23ed0fdc4a7d1a20c1b77bab40a", + "to" : "", + "v" : "0x1b", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0xd11d484e754458fdc47bb171f4af049a30804c6a95eb31906b47c8fbf62589a4", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0xc53d6a6190680f094db29a75caa5ce3e71acec27420624357d7a125fbbbb0c20", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0c53d6a6190680f094db29a75caa5ce3e71acec27420624357d7a125fbbbb0c20a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0x5d2716f016275501148995cb06da55fe5942932050278c3a2caca96a54c8ffbc", + "network" : "Constantinople", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x03855fc81ba27fb87117ab961e6bef17f7e84250" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x01", + "storage" : { + "0x02" : "0x02" + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x29a2241af62e6bdd", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x0254097823", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + }, + "0xec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "0x00", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + } + }, + "pre" : { + "0x03855fc81ba27fb87117ab961e6bef17f7e84250" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + } +}
\ No newline at end of file diff --git a/BlockchainTests/bcStateTests/suicideThenCheckBalance.json b/BlockchainTests/bcStateTests/suicideThenCheckBalance.json new file mode 100644 index 000000000..32e6bf41c --- /dev/null +++ b/BlockchainTests/bcStateTests/suicideThenCheckBalance.json @@ -0,0 +1,284 @@ +{ + "suicideThenCheckBalance_Constantinople" : { + "_info" : { + "comment" : "[2:22:42] Vitalik Buterin: another one is: (i) self-destruct contract C, (ii) in the next transaction, send 1 wei to C, (iii) verify that C's balance is 1 wei. [2:23:01] Vitalik Buterin: the reason this is important now is that with EIP98, clients will be switching to not 'committing' their caches to the trie at the end of every tx. [2:23:18] Vitalik Buterin: and this means that selfdestruct has to be handled more carefully than before. [2:23:49] Vitalik Buterin: pyethereum screwed it up and it had to get fixed, though pyethereum's bug had to do with pre-spurious dragon 'existence' so it may not be relevant now.", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideThenCheckBalanceFiller.json", + "sourceHash" : "28cfa7559250e7b3021d5879d78ad8c18746fcbbd187e76b3348fca46ba0459b" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x01d806", + "hash" : "0xf3463e5a62c4bc195768804770ee488f1e8cf14187bd8450ec8c7e04d45a2024", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xdd5444acad93007dd583c16f113153e84b2937e5bbe9cbc91e9ed9257cb7bc4f", + "receiptTrie" : "0x16c3d591538693bee5dadbe696a7ab3071a76b32acbf8b20594a149f309cc3c8", + "stateRoot" : "0xcbeccbd132e9558a310031e9ac54236931e1b161f8c8661da862cf725f00c001", + "timestamp" : "0x5b843623", + "transactionsTrie" : "0x7af29f674f9538b253f2bb499951adc03426d1ea468da7e00f3487702dcda1ec", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902c4f901faa0dd5444acad93007dd583c16f113153e84b2937e5bbe9cbc91e9ed9257cb7bc4fa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a0cbeccbd132e9558a310031e9ac54236931e1b161f8c8661da862cf725f00c001a07af29f674f9538b253f2bb499951adc03426d1ea468da7e00f3487702dcda1eca016c3d591538693bee5dadbe696a7ab3071a76b32acbf8b20594a149f309cc3c8b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd88301d806845b84362380a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8c4f860800183061a8094e3476106159f87477ad639e3ddcbb6b240efe45980801ba06ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769a03d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18f860010183061a8094a3476106159f87477ad639e3ddcbb6b240efe45980801ca06b0037dab52c023d4705c500605aad0f0978a5242a9b8c69725da59360c77278a04504a5706bcea8684a9b03117b883e064d9d61bb2571e08583697a743815e5a7c0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0x6ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769", + "s" : "0x3d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18", + "to" : "0xe3476106159f87477ad639e3ddcbb6b240efe459", + "v" : "0x1b", + "value" : "0x00" + }, + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0x6b0037dab52c023d4705c500605aad0f0978a5242a9b8c69725da59360c77278", + "s" : "0x4504a5706bcea8684a9b03117b883e064d9d61bb2571e08583697a743815e5a7", + "to" : "0xa3476106159f87477ad639e3ddcbb6b240efe459", + "v" : "0x1c", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0xdd5444acad93007dd583c16f113153e84b2937e5bbe9cbc91e9ed9257cb7bc4f", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x5cb6e49334985c0e218ea39019473195ff7146809c306b0dcbe3c851a7f02c65", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a05cb6e49334985c0e218ea39019473195ff7146809c306b0dcbe3c851a7f02c65a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0xf3463e5a62c4bc195768804770ee488f1e8cf14187bd8450ec8c7e04d45a2024", + "network" : "Constantinople", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x29a2241af62dd806", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e7", + "code" : "0x6000600060006000600173e3476106159f87477ad639e3ddcbb6b240efe4596101f4f15073e3476106159f87477ad639e3ddcbb6b240efe45931600155", + "nonce" : "0x00", + "storage" : { + "0x01" : "0x01" + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540a0bfa", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + } + }, + "pre" : { + "0xa3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e8", + "code" : "0x6000600060006000600173e3476106159f87477ad639e3ddcbb6b240efe4596101f4f15073e3476106159f87477ad639e3ddcbb6b240efe45931600155", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + }, + "suicideThenCheckBalance_Homestead" : { + "_info" : { + "comment" : "[2:22:42] Vitalik Buterin: another one is: (i) self-destruct contract C, (ii) in the next transaction, send 1 wei to C, (iii) verify that C's balance is 1 wei. [2:23:01] Vitalik Buterin: the reason this is important now is that with EIP98, clients will be switching to not 'committing' their caches to the trie at the end of every tx. [2:23:18] Vitalik Buterin: and this means that selfdestruct has to be handled more carefully than before. [2:23:49] Vitalik Buterin: pyethereum screwed it up and it had to get fixed, though pyethereum's bug had to do with pre-spurious dragon 'existence' so it may not be relevant now.", + "filledwith" : "testeth 1.5.0.dev2+commit.c4d901f1.dirty", + "lllcversion" : "Version: 0.4.25-develop.2018.8.9+commit.63d071d6.mod.Linux.g++", + "source" : "src/BlockchainTestsFiller/bcStateTests/suicideThenCheckBalanceFiller.json", + "sourceHash" : "28cfa7559250e7b3021d5879d78ad8c18746fcbbd187e76b3348fca46ba0459b" + }, + "blocks" : [ + { + "blockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x016c6e", + "hash" : "0xaf212079a761ed7737fa264748d7c95aacaab13b73be7737212feffc5da6d514", + "mixHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "nonce" : "0x0000000000000000", + "number" : "0x01", + "parentHash" : "0xdd5444acad93007dd583c16f113153e84b2937e5bbe9cbc91e9ed9257cb7bc4f", + "receiptTrie" : "0xe974c080ed7991a2f1908c880c9892ba50f91698dbfd063ddf2116ec51a05cd3", + "stateRoot" : "0x3838def69f4319ccf444b219f08cefcafcdfc331981bc459a9731080609a0a41", + "timestamp" : "0x5b843623", + "transactionsTrie" : "0x7af29f674f9538b253f2bb499951adc03426d1ea468da7e00f3487702dcda1ec", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "rlp" : "0xf902c4f901faa0dd5444acad93007dd583c16f113153e84b2937e5bbe9cbc91e9ed9257cb7bc4fa01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a03838def69f4319ccf444b219f08cefcafcdfc331981bc459a9731080609a0a41a07af29f674f9538b253f2bb499951adc03426d1ea468da7e00f3487702dcda1eca0e974c080ed7991a2f1908c880c9892ba50f91698dbfd063ddf2116ec51a05cd3b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000001832fefd883016c6e845b84362380a00000000000000000000000000000000000000000000000000000000000000000880000000000000000f8c4f860800183061a8094e3476106159f87477ad639e3ddcbb6b240efe45980801ba06ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769a03d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18f860010183061a8094a3476106159f87477ad639e3ddcbb6b240efe45980801ca06b0037dab52c023d4705c500605aad0f0978a5242a9b8c69725da59360c77278a04504a5706bcea8684a9b03117b883e064d9d61bb2571e08583697a743815e5a7c0", + "transactions" : [ + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x00", + "r" : "0x6ec80a292680500270c0c41910099f740582ed4c969ae73130afb627a0904769", + "s" : "0x3d240fbac3547335d89c90c047a0064640dec7e4be36d70531900ec504842a18", + "to" : "0xe3476106159f87477ad639e3ddcbb6b240efe459", + "v" : "0x1b", + "value" : "0x00" + }, + { + "data" : "0x", + "gasLimit" : "0x061a80", + "gasPrice" : "0x01", + "nonce" : "0x01", + "r" : "0x6b0037dab52c023d4705c500605aad0f0978a5242a9b8c69725da59360c77278", + "s" : "0x4504a5706bcea8684a9b03117b883e064d9d61bb2571e08583697a743815e5a7", + "to" : "0xa3476106159f87477ad639e3ddcbb6b240efe459", + "v" : "0x1c", + "value" : "0x00" + } + ], + "uncleHeaders" : [ + ] + } + ], + "genesisBlockHeader" : { + "bloom" : "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "0x2fefd8", + "gasUsed" : "0x00", + "hash" : "0xdd5444acad93007dd583c16f113153e84b2937e5bbe9cbc91e9ed9257cb7bc4f", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0x00", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0x5cb6e49334985c0e218ea39019473195ff7146809c306b0dcbe3c851a7f02c65", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "genesisRLP" : "0xf901fcf901f7a00000000000000000000000000000000000000000000000000000000000000000a01dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347948888f1f195afa192cfee860698584c030f4c9db1a05cb6e49334985c0e218ea39019473195ff7146809c306b0dcbe3c851a7f02c65a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421b90100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008302000080832fefd8808454c98c8142a056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421880102030405060708c0c0", + "lastblockhash" : "0xaf212079a761ed7737fa264748d7c95aacaab13b73be7737212feffc5da6d514", + "network" : "Homestead", + "postState" : { + "0x0000000000000000000000000000000000000001" : { + "balance" : "0x03e8", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0x8888f1f195afa192cfee860698584c030f4c9db1" : { + "balance" : "0x4563918244f56c6e", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e7", + "code" : "0x6000600060006000600173e3476106159f87477ad639e3ddcbb6b240efe4596101f4f15073e3476106159f87477ad639e3ddcbb6b240efe45931600155", + "nonce" : "0x00", + "storage" : { + "0x01" : "0x01" + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540a7792", + "code" : "", + "nonce" : "0x02", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x01", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + } + }, + "pre" : { + "0xa3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e8", + "code" : "0x6000600060006000600173e3476106159f87477ad639e3ddcbb6b240efe4596101f4f15073e3476106159f87477ad639e3ddcbb6b240efe45931600155", + "nonce" : "0x00", + "storage" : { + } + }, + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "0x02540be400", + "code" : "", + "nonce" : "0x00", + "storage" : { + } + }, + "0xe3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "0x03e8", + "code" : "0x60036001556001ff", + "nonce" : "0x00", + "storage" : { + } + } + }, + "sealEngine" : "NoProof" + } +}
\ No newline at end of file diff --git a/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckFiller.json b/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckFiller.json new file mode 100644 index 000000000..42d86878b --- /dev/null +++ b/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckFiller.json @@ -0,0 +1,101 @@ +{ + "suicideStorageCheck" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via transaction create." + }, + "genesisBlockHeader" : { + "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "3141592", + "gasUsed" : "0", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "sealEngine" : "NoProof", + "expect" : [ + { + "network" : ["Byzantium"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "ec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "nonce" : "1", + "storage" : { + "0x02" : "2" + } + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + }, + { + "network" : [">=Constantinople"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "ec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "nonce" : "1", + "storage" : { + "0x02" : "2" + } + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + } + ], + "pre" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "10000000000", + "nonce" : "0", + "code" : "", + "storage": {} + }, + "ec0e71ad0a90ffe1909d27dac207f7680abba42d" : { + "balance" : "1000", + "nonce" : "0", + "code" : "{ (SSTORE 1 3) (SELFDESTRUCT 1) }", + "storage": {} + } + }, + "blocks" : [ + { + "transactions" : [ + { + "data" : "", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "ec0e71ad0a90ffe1909d27dac207f7680abba42d", + "value" : "0" + }, + { + "data" : "{ (SSTORE 3 (SLOAD 1)) (SSTORE 2 2) }", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "1", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "", + "value" : "0" + } + ], + "uncleHeaders" : [ + ] + } + ] + } +} diff --git a/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreate2Filler.json b/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreate2Filler.json new file mode 100644 index 000000000..f55f386b5 --- /dev/null +++ b/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreate2Filler.json @@ -0,0 +1,99 @@ +{ + "suicideStorageCheckVCreate2" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via old create2" + }, + "genesisBlockHeader" : { + "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "3141592", + "gasUsed" : "0", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "sealEngine" : "NoProof", + "expect" : [ + { + "network" : ["Byzantium"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "03855fc81ba27fb87117ab961e6bef17f7e84250" : { + "shouldnotexist" : "1" + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + }, + { + "network" : [">=Constantinople"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "03855fc81ba27fb87117ab961e6bef17f7e84250" : { + "nonce" : "1", + "storage" : { + "0x02" : "2" + } + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + } + ], + "pre" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "10000000000", + "nonce" : "0", + "code" : "", + "storage": {} + }, + "03855fc81ba27fb87117ab961e6bef17f7e84250" : { + "balance" : "1000", + "nonce" : "0", + "code" : "{ (SSTORE 1 3) (SELFDESTRUCT 1) }", + "storage": {} + } + }, + "blocks" : [ + { + "transactions" : [ + { + "data" : "", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "03855fc81ba27fb87117ab961e6bef17f7e84250", + "value" : "0" + }, + { + "//data" : "{ (SSTORE 3 (SLOAD 1)) (SSTORE 2 2) }", + "data" : "{ (MSTORE 0 0x6001546003556002600255) (CREATE2 0 21 11 0) }", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "1", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "", + "value" : "0" + } + ], + "uncleHeaders" : [ + ] + } + ] + } +} diff --git a/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreateFiller.json b/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreateFiller.json new file mode 100644 index 000000000..9bbed7f59 --- /dev/null +++ b/src/BlockchainTestsFiller/bcStateTests/suicideStorageCheckVCreateFiller.json @@ -0,0 +1,102 @@ +{ + "suicideStorageCheckVCreate" : { + "_info" : { + "comment" : "[2:21:10] Vitalik Buterin: (i) set storage key 1 of contract C to 3. (ii) self-destruct contract C. (iii) in the next transaction create contract C, and read its storage key. I - via old create." + }, + "genesisBlockHeader" : { + "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "3141592", + "gasUsed" : "0", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "sealEngine" : "NoProof", + "expect" : [ + { + "network" : ["Byzantium"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "e3476106159f87477ad639e3ddcbb6b240efe459" : { + "nonce" : "1", + "storage" : { + "0x02" : "2" + } + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + }, + { + "network" : [">=Constantinople"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "e3476106159f87477ad639e3ddcbb6b240efe459" : { + "nonce" : "1", + "storage" : { + "0x02" : "2" + } + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + } + ], + "pre" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "10000000000", + "nonce" : "0", + "code" : "", + "storage": {} + }, + "e3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "1000", + "nonce" : "0", + "code" : "{ (SSTORE 1 3) (SELFDESTRUCT 1) }", + "storage": {} + } + }, + "blocks" : [ + { + "transactions" : [ + { + "data" : "", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "e3476106159f87477ad639e3ddcbb6b240efe459", + "value" : "0" + }, + { + "//data" : "{ (SSTORE 3 (SLOAD 1)) (SSTORE 2 2) }", + "data" : "{ (MSTORE 0 0x6001546003556002600255) (CREATE 0 21 11) }", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "1", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "", + "value" : "0" + } + ], + "uncleHeaders" : [ + ] + } + ] + } +} diff --git a/src/BlockchainTestsFiller/bcStateTests/suicideThenCheckBalanceFiller.json b/src/BlockchainTestsFiller/bcStateTests/suicideThenCheckBalanceFiller.json new file mode 100644 index 000000000..9889c52b3 --- /dev/null +++ b/src/BlockchainTestsFiller/bcStateTests/suicideThenCheckBalanceFiller.json @@ -0,0 +1,113 @@ +{ + "suicideThenCheckBalance" : { + "_info" : { + "comment" : "[2:22:42] Vitalik Buterin: another one is: (i) self-destruct contract C, (ii) in the next transaction, send 1 wei to C, (iii) verify that C's balance is 1 wei. [2:23:01] Vitalik Buterin: the reason this is important now is that with EIP98, clients will be switching to not 'committing' their caches to the trie at the end of every tx. [2:23:18] Vitalik Buterin: and this means that selfdestruct has to be handled more carefully than before. [2:23:49] Vitalik Buterin: pyethereum screwed it up and it had to get fixed, though pyethereum's bug had to do with pre-spurious dragon 'existence' so it may not be relevant now." + }, + "genesisBlockHeader" : { + "bloom" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "coinbase" : "0x8888f1f195afa192cfee860698584c030f4c9db1", + "difficulty" : "0x020000", + "extraData" : "0x42", + "gasLimit" : "3141592", + "gasUsed" : "0", + "mixHash" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "nonce" : "0x0102030405060708", + "number" : "0", + "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000", + "receiptTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "stateRoot" : "0xf99eb1626cfa6db435c0836235942d7ccaa935f1ae247d3f1c21e495685f903a", + "timestamp" : "0x54c98c81", + "transactionsTrie" : "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncleHash" : "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347" + }, + "sealEngine" : "NoProof", + "expect" : [ + { + "network" : ["Homestead"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "e3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "1", + "code" : "" + }, + "a3476106159f87477ad639e3ddcbb6b240efe459" : { + "storage" : { + "0x01" : "1" + } + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + }, + { + "network" : [">=Constantinople"], + "result" : { + "0000000000000000000000000000000000000001" : { + "balance" : "1000" + }, + "e3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "1", + "code" : "" + }, + "a3476106159f87477ad639e3ddcbb6b240efe459" : { + "storage" : { + "0x01" : "1" + } + }, + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "nonce" : "2" + } + } + } + ], + "pre" : { + "a94f5374fce5edbc8e2a8697c15331677e6ebf0b" : { + "balance" : "10000000000", + "nonce" : "0", + "code" : "", + "storage": {} + }, + "a3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "1000", + "nonce" : "0", + "code" : "{ (CALL 500 0xe3476106159f87477ad639e3ddcbb6b240efe459 1 0 0 0 0) (SSTORE 1 (BALANCE 0xe3476106159f87477ad639e3ddcbb6b240efe459)) }", + "storage": {} + }, + "e3476106159f87477ad639e3ddcbb6b240efe459" : { + "balance" : "1000", + "nonce" : "0", + "code" : "{ (SSTORE 1 3) (SELFDESTRUCT 1) }", + "storage": {} + } + }, + "blocks" : [ + { + "transactions" : [ + { + "data" : "", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "0", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "e3476106159f87477ad639e3ddcbb6b240efe459", + "value" : "0" + }, + { + "data" : "", + "gasLimit" : "400000", + "gasPrice" : "1", + "nonce" : "1", + "secretKey" : "45a915e4d060149eb4365960e6a7a45f334393093061116b197e3240065ff2d8", + "to" : "a3476106159f87477ad639e3ddcbb6b240efe459", + "value" : "0" + } + ], + "uncleHeaders" : [ + ] + } + ] + } +} |