usesha3::{Digest, Sha3_256};usestd::fmt::Write as_;pub(crate)fnsha3_256(bytes:&[u8])-> String{encode(&Sha3_256::digest(bytes))}pub(crate)fnsha3_256_parts(parts:&[&[u8]])-> String{letmut hasher =Sha3_256::new();for part in parts {
hasher.update(part);
hasher.update([0]);}encode(&hasher.finalize())}fnencode(hash:&[u8])-> String{letmut out =String::from("sha3-256:");for byte in hash {let_=write!(out,"{byte:02x}");}
out
}