yevm_misc/lib.rs
1use crate::hex::Hex;
2
3pub mod buf;
4pub mod hex;
5pub mod http;
6
7#[cfg(not(target_arch = "wasm32"))]
8pub fn keccak256(data: &[u8]) -> Hex<32> {
9 Hex::new(keccak_asm::Keccak256::digest(data).into())
10}
11
12#[cfg(target_arch = "wasm32")]
13pub fn keccak256(data: &[u8]) -> Hex<32> {
14 use tiny_keccak::{Hasher, Keccak};
15 let mut h = Keccak::v256();
16 let mut out = [0u8; 32];
17 h.update(data);
18 h.finalize(&mut out);
19 Hex::new(out)
20}