Discussion to EIP-3788: Strict enforcement of ChainId

I’ve just mentioned in Transaction replay blanket ban is wrong - needed for keyless contract deployment - #5 by SKYBITDev3 that that is what some of the big multi-blockchain projects tried before but failed. Trying to synchronize nonce is precarious as there are many ways for synchronization to be lost (e.g. transaction failure, unexpected transaction by others e.g. self-transfer by bridge (as had occured here: 🥹 Base Mainnet Deployment; EDIT: As of `xdeployer` `v3.0.0`, `baseMain` Deployments Are Possible 🍻! · Issue #164 · pcaversaccio/xdeployer · GitHub)).

The best way to maintain same addresses across blockchains is by using CREATE2 or CREATE3 factories that have been deployed keylessly. Keyless deployment makes maintaining same addresses more future-proof (as factory deployment can then be done by anyone) but requires replay of a deployment transaction.

1 Like