A custom storage engine of Nethermind, benefiting from the alignment of the underlying data structure with the layout of State & Storage trees of Ethereum.
GNU Lesser General Public License v3.0
91
stars
13
forks
source link
Keccak should compute over non-contiuous memory regions #127
Paprika has a copy of Keccak from Nethermind Keccak. Currently, Keccak implementation does not implement HashAlgorithm. The mentioned class provides two methods
HashFinal()
that can be used to construct a hash over a non-continuous memory. It'd be great if Keccak, even without implementing the actual HashAlgorithm allowed for handling the upgradability and consumption of sequences of memory.
Once provided, RLP encoding could benefit from it greatly.
Be minded, that it does not have to use ReadOnlySequence<byte> per se, but might provide some other, streaming API that could for example accept up to N spans by providing a span-like sequence or multiple overloads.
Paprika has a copy of
Keccak
from Nethermind Keccak. Currently, Keccak implementation does not implementHashAlgorithm
. The mentioned class provides two methodsHashAlgorithm
allowed for handling the upgradability and consumption of sequences of memory.Once provided, RLP encoding could benefit from it greatly.
Be minded, that it does not have to use
ReadOnlySequence<byte>
per se, but might provide some other, streaming API that could for example accept up to N spans by providing a span-like sequence or multiple overloads.