Mask
Doppler Doppler 135 56137 45 32697 40 48939 38356 189 27464

A Six-Year-Old Solc Riddle

Can we verify a piece of Ethereum antiquity by messing with the compiler?

Last October we got a request like no other, to verify the oldest NFT ever deployed on Ethereum. It was compiled using Solidity 0.1.5. That's more than 6 years old! By reverse-engineering the bytecode, and understanding the nondeterminism of the compiler (which is complex, but has to do with the memory allocator compiled into asm.js) we were able to reproduce the NFT's bytecode from source. The result allowed us to verify the contract on Etherscan and make our client happy.

Read more