
Spent some time digging into Cosmos IBC Eureka's SP1 Tendermint light client on Ethereum. Was curious whether newer SP1 versions could still work with the existing deployed verifier without requiring a contract upgrade. Found some interesting things. Pulled all 4 official production ELFs and reproduced their exact program verification keys using SP1 v6.1 and v6.9. Then generated a real Cosmos Hub Tendermint update witness and executed the original production ELF using both versions. Both executions passed and produced identical 768-byte public outputs, same execution gas and same SHA-256 hash. The more interesting part: SP1 v6.1, v6.9 and v6.10 all still report circuit version v6.1.0. Compared the actual Groth16 verification-key binaries from v6.1 and v6.10. They're byte-for-byte identical. Their SHA-256 also matches the verifier hash already deployed on Ethereum: 0x4388a21c687fdd5f218d7e3d13190cac4c5355818d3605fd5fb811df468ee696 So at least at the program identity, execution and Groth16 verification-key level, compatibility is holding up across these versions. Still haven't generated a genuine proof using the newer prover or tested it against the live Ethereum verifier. That's the next part. Interesting to see how much of the proving stack can change while the verification interface stays the same.

