Open mullakhmetov opened 1 year ago
I am curious, how many derivations of the crypto kitty contract is there? Is there not just one official copy of it? Wouldn't it make more sense to just hardcode that contract instead of running a check each time something runs though the is_crypto_kitty function
353 #319 #349 #195 #194 and maybe more
What's done
is_erc721_contract
@medvedev1088 I've noticed your concern about possible false positives in case of looking at all blocks in
get_function_sighashes
, so I've done some measurements.Data
I walked through blocks in range [1_000_000, 16_000_000] in 100_000 blocks steps, scaned 1000 blocks in each step for contract calls and gathered all unique contract addresses. So I got ~1.3 contracts in total and picked 1k of them randomly.
For control type detection I used bitquery. Questionable, but it was the easiest way for me.
Results
All the differences control vs. blockchain-etl:develop vs. mullakhmetov:fix-contract-type-detection: