go-ethereum/eth/tracers
Piotr Dyraga 2890f060b7
core/vm, crypto/blake2b: add BLAKE2b compression func at 0x09
The precompile at 0x09 wraps the BLAKE2b F compression function:
https://tools.ietf.org/html/rfc7693#section-3.2

The precompile requires 6 inputs tightly encoded, taking exactly 213
bytes, as explained below.

- `rounds` - the number of rounds - 32-bit unsigned big-endian word
- `h` - the state vector - 8 unsigned 64-bit little-endian words
- `m` - the message block vector - 16 unsigned 64-bit little-endian words
- `t_0, t_1` - offset counters - 2 unsigned 64-bit little-endian words
- `f` - the final block indicator flag - 8-bit word

[4 bytes for rounds][64 bytes for h][128 bytes for m][8 bytes for t_0]
[8 bytes for t_1][1 byte for f]

The boolean `f` parameter is considered as `true` if set to `1`.
The boolean `f` parameter is considered as `false` if set to `0`.
All other values yield an invalid encoding of `f` error.

The precompile should compute the F function as specified in the RFC
(https://tools.ietf.org/html/rfc7693#section-3.2) and return the updated
state vector `h` with unchanged encoding (little-endian).

See EIP-152 for details.
2019-08-21 13:09:15 +03:00
..
internal/tracers cmd, crypto, eth, internals: fix Typos (#19868) 2019-07-22 10:34:33 +03:00
testdata core/vm: 64 bit memory and gas calculations (#19210) 2019-03-12 11:40:05 +02:00
tracer_test.go core/vm, eth/tracers: use pointer receiver for GetRefund (#18018) 2018-11-08 13:07:15 +01:00
tracer.go core/vm, crypto/blake2b: add BLAKE2b compression func at 0x09 2019-08-21 13:09:15 +03:00
tracers_test.go all: clean up and proerly abstract database access 2019-03-06 13:35:03 +02:00
tracers.go cmd, core, eth/tracers: support fancier js tracing (#15516) 2017-12-21 13:56:11 +02:00