QuarkChain / go-ethereum

Official Go implementation of the Ethereum protocol
https://geth.ethereum.org
GNU Lesser General Public License v3.0
5 stars 2 forks source link

add hashmoto_mask #116

Closed blockchaindevsh closed 1 year ago

blockchaindevsh commented 1 year ago

Summary:

  1. now both miner address and commit are used in mask/unmask
  2. ethash code is duplicated into consensus/ethash/pora to avoid cyclic dependacy issue.
  3. maskType support is removed otherwise the code will look very messy.
  4. miner address is added to shard header.

TODO:

  1. reuse KP's code to read PhyAddr from contract.
  2. decide the exact schema for CalcChunkHash, which both go and solidity need to obey.
blockchaindevsh commented 1 year ago

Any new tests to cover the code especially in sstorage?

I'll add some tests after we confirm the current interface is ok.