aurora-is-near / aurora-engine

⚙️ Aurora Engine implements an Ethereum Virtual Machine (EVM) on the NEAR Protocol.
https://doc.aurora.dev/develop/compat/evm
325 stars 78 forks source link

Feat: core hashchain logic #816

Closed birchmd closed 1 year ago

birchmd commented 1 year ago

Description

This PR continues the effort of merging #705 in multiple pieces.

This PR introduces the core hashchain logic as a library crate. The reasons to factor the code in this way are:

  1. Allows this PR to be safely merged because it has no impact on existing engine code
  2. The same core logic will be reusable between components that will perform the hashchain computation in the future, namely: Aurora Engine smart contract, standalone engine, Borealis Refiner.

In the next PR I'll pull in the changes from #705 which actually introduce the hashchain calculation into the Aurora Engine smart contract and standalone engine.

Performance / NEAR gas cost considerations

N/A

Testing

New hashchain tests