From 53d54b72cbf418673e0014cf1627c6b86e97962c Mon Sep 17 00:00:00 2001 From: Ardis Lu Date: Tue, 4 Jul 2023 22:19:42 -0700 Subject: [PATCH] Note block explorers interpreting the payload --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 4f7997c..8d7566f 100644 --- a/README.md +++ b/README.md @@ -91,3 +91,7 @@ await ethereum.request({ }); // Smart contract is deployed as 0xbeef7906063D950306868AF5af36955015110f84, as predicted ``` + +Block explorers such as Etherscan may interpret this payload as a call to a Solidity function with the ABI selector `0x00000000`. As of July 2023, Etherscan's database has the `0x00000000` selector mapped to a function called `fulfillBasicOrder_efficient_6GL6yc(tuple parameters)`. + +Since the `CREATE2` factory smart contract was written directly in EVM assembly and not Solidity, the factory has no conception of ABI. To have block explorers display a different function in their UI, you can set the first 4 bytes of the salt to some hardcoded value while using the last 28 bytes to mine the desired address. -- 2.47.3