radix_common/crypto/
blake2b.rs1use crate::crypto::*;
2use blake2::digest::{consts::U32, Digest};
3use blake2::Blake2b;
4
5pub type Blake2b256 = Blake2b<U32>;
6
7pub fn blake2b_256_hash<T: AsRef<[u8]>>(data: T) -> Hash {
8 Hash(Blake2b256::digest(data).into())
9}
10
11#[cfg(test)]
12mod tests {
13 use super::*;
14 use sbor::rust::str::FromStr;
15
16 #[test]
17 fn test_blake2b_hash() {
18 let data = "Hello Radix";
19 let hash = blake2b_256_hash(data);
20 assert_eq!(
21 hash,
22 Hash::from_str("48f1bd08444b5e713db9e14caac2faae71836786ac94d645b00679728202a935")
23 .unwrap()
24 );
25 }
26}