You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Current Lachesis implementation in Go uses FNV hash function to calculate EventHash, https://golang.org/pkg/hash/fnv/ ; but Rust has replaced FNV hash as its default hash function by a faster hash function, rust-lang/rust#37229
To make lachesis-rs compatible with go implementation we need to use the very same hash function for event hashes. See https://github.com/servo/rust-fnv for fnv hash implementation in Rust.
The text was updated successfully, but these errors were encountered:
Actually EventHash is calculated as SHA256(serialised event body); and go-lachesis and lachesis-rs have different event body definitions and different serialisation methods, - these ones need to be unified among all implementations of Lachesis, at least for things sent between nodes.
Maxime2
changed the title
FNV hash function for compatibility with go-lachesis
Unifications for compatibility with go-lachesis
Jan 16, 2019
Current Lachesis implementation in Go uses FNV hash function to calculate EventHash, https://golang.org/pkg/hash/fnv/ ; but Rust has replaced FNV hash as its default hash function by a faster hash function, rust-lang/rust#37229
To make lachesis-rs compatible with go implementation we need to use the very same hash function for event hashes. See https://github.com/servo/rust-fnv for fnv hash implementation in Rust.
The text was updated successfully, but these errors were encountered: