go-ethereum/core
Péter Garamvölgyi 304af60f50
feat: change bytecode hash function from Keccak to Poseidon (#149)
* feat: change bytecode hash function from Keccak to Poseidon

* fix TestStateProcessorErrors

* rename files

* copy iden3's poseidon package to local

* update poseidon hash

* apply new hash in codehash

* extend hash method, use actual code size as cap

* prune keccak(nil) for empty code

* update empty code hash references to Poseidon

* add TestPoseidonCodeHash

* use keccak for empty code hash

* go mod tidy

* goimports

* use Poseidon code hash in state and sync tests

* run goimports

* run goimports

* remove unnecessary reallocation from CodeHash

* goimports

* move codehash API to separate module

* add missing package

* fix review comments

* improve comments

Co-authored-by: Ho Vei <noelwei@gmail.com>
2022-09-08 06:16:17 +08:00
..
asm Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
bloombits Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
forkid Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
rawdb Add goimports lint (#54) 2022-03-24 16:53:59 +08:00
state feat: change bytecode hash function from Keccak to Poseidon (#149) 2022-09-08 06:16:17 +08:00
types feat: change bytecode hash function from Keccak to Poseidon (#149) 2022-09-08 06:16:17 +08:00
vm feat: change bytecode hash function from Keccak to Poseidon (#149) 2022-09-08 06:16:17 +08:00
.gitignore Renamed chain => core 2014-12-04 10:28:02 +01:00
bench_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
block_validator.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
block_validator_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
blockchain.go zktrie part3: include zktrie witness in block trace; add demo for generating witness data for mpt circuit (#123) 2022-07-16 07:00:07 +08:00
blockchain_insert.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
blockchain_reader.go feat: add more data into the execution trace (#20) 2022-02-21 10:15:57 +08:00
blockchain_repair_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
blockchain_sethead_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
blockchain_snapshot_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
blockchain_test.go feat: change bytecode hash function from Keccak to Poseidon (#149) 2022-09-08 06:16:17 +08:00
blocks.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
bloom_indexer.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
chain_indexer.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
chain_indexer_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
chain_makers.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
chain_makers_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
dao_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
error.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
events.go Extract execution trace from EVM execution and provide subscription API (#19) 2022-01-23 20:41:15 +08:00
evm.go feat: add more data into the execution trace (#20) 2022-02-21 10:15:57 +08:00
gaspool.go miner: avoid unnecessary work (#15883) 2018-01-15 12:57:06 +02:00
gen_genesis.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
gen_genesis_account.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
genesis.go zktrie part2: add zktrie; allow switch trie type by config; (#113) 2022-06-27 11:17:02 +08:00
genesis_alloc.go cmd/geth: add support for sepolia testnet (#23730) 2021-11-08 13:06:01 +02:00
genesis_test.go Add goimports lint (#54) 2022-03-24 16:53:59 +08:00
headerchain.go Add goimports lint (#54) 2022-03-24 16:53:59 +08:00
headerchain_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
mkalloc.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
rlp_test.go Add goimports lint (#54) 2022-03-24 16:53:59 +08:00
state_prefetcher.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
state_processor.go Extract execution trace from EVM execution and provide subscription API (#19) 2022-01-23 20:41:15 +08:00
state_processor_test.go feat: change bytecode hash function from Keccak to Poseidon (#149) 2022-09-08 06:16:17 +08:00
state_transition.go feat: change bytecode hash function from Keccak to Poseidon (#149) 2022-09-08 06:16:17 +08:00
tx_cacher.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
tx_journal.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
tx_list.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
tx_list_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
tx_noncer.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
tx_pool.go Upgrade txpool module to increase tps (#43) 2022-03-21 08:52:13 +08:00
tx_pool_test.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00
types.go Update mod file and all imports to use scroll-tech URL (#15) 2021-12-24 10:59:22 +01:00