Skip to content

cartoonitunes/split-on-deploy-payable-verification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

SplitOnDeploy (Payable) Contract Verification

Bytecode verification proof for the SplitOnDeploy contract (payable variant) deployed from Vitalik Buterin's testing address.

  • Contract address: 0x15ba299cd634698f86c348793935df129bf4ae27
  • Deployed: Block 3,450,894 (March 31, 2017)
  • Compiler: solc 0.4.9–0.4.11 (no optimizer)
  • Verification: Near-exact bytecode match (constructor + runtime logic identical; only swarm metadata hash differs)

Source

SplitOnDeploy.sol produces a constructor and runtime matching the on-chain bytecode in all functional bytes. The swarm hash embedded in the trailing CBOR metadata differs because it encodes a hash of the original source file content, which may have had different whitespace or filename.

solc --bin SplitOnDeploy.sol

The constructor sends msg.value / 2 to each of:

  • 0x1Db3439a222C519ab44bb1144fC28167b4Fa6eE6 (Vitalik's deployer address)
  • 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045 (Vitalik's main address)

The deployed runtime is a 51-byte stub that includes the solc 0.4.7+ swarm hash suffix (a165627a7a7230...0029).

Relationship to Earlier SplitOnDeploy Instances

The earlier 12-byte instances (0xa2af18e8 / 0xe0a62fa7, Sep–Oct 2016) used the same constructor logic but were compiled with solc 0.4.4 (which predates swarm hash metadata), resulting in a much smaller 12-byte always-revert runtime. See split-on-deploy-verification.

About

Bytecode verification for payable SplitOnDeploy at 0x15ba299c (Vitalik deployer, solc 0.4.9-0.4.11)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors