Verifying the source code at 0x5770345100a27b15f5b40bec86a701f888e8c601

The deployed version of BTC Relay is from commit 6fa4098747b9c030ed7a64b304dbcfa35100afe0

In order to verify the source code please follow the these steps:


Compile code to the evm (bytecode)

serpent compile > compiled.evm


compare the evm against the data used in the contract creation transaction

Here's how to use Geth console to obtain the evm. The receipt is used to guarantee that the tx hash provided is the one that created the BTC Relay contract (see contractAddress property of the receipt).

> tx='0x8e135b828db84bce864d4789cde112eacc04d3d21b5fa569f12f79d8d3ded3c6'
> eth.getTransactionReceipt(tx)
  blockHash: "0x6739c150e39dbcc5c4c4b078a33061db444ef72ca4b671960fbec8ad49f4f99c",
  blockNumber: 484230,
  contractAddress: "0x5770345100a27b15f5b40bec86a701f888e8c601",
  cumulativeGasUsed: 2776382,
  gasUsed: 2776382,
  logs: [],
  transactionHash: "0x8e135b828db84bce864d4789cde112eacc04d3d21b5fa569f12f79d8d3ded3c6",
  transactionIndex: 0
> objTx = eth.getTransaction(tx)
> objTx.input

Compare objTx.input with the contents of compiled.evm and you will see that they match identically (except for 0x at the front of objTx.input)

The version of the Serpent compiler used is commit f0b4128f91d173fb3f6de48a6993e7db75446924