chore: digest_bytes

This commit is contained in:
2022-04-13 00:27:32 +08:00
parent 98ef85f9e6
commit 9f7d9773f1

View File

@@ -8,33 +8,31 @@ use sha2::{Digest, Sha256, Sha384, Sha512};
// }
pub fn sha256(input: &str) -> Vec<u8> {
let mut challenge = Sha256::default();
Digest::update(&mut challenge, input.as_bytes());
challenge.finalize().to_vec()
sha256_bytes(input.as_bytes())
}
pub fn sha1_bytes(input: &[u8]) -> Vec<u8> {
let mut challenge = Sha1::default();
challenge.update(input);
challenge.digest().bytes().to_vec()
let mut digest = Sha1::default();
digest.update(input);
digest.digest().bytes().to_vec()
}
pub fn sha256_bytes(input: &[u8]) -> Vec<u8> {
let mut challenge = Sha256::default();
Digest::update(&mut challenge, input);
challenge.finalize().to_vec()
digest_bytes::<Sha256>(input)
}
pub fn sha384_bytes(input: &[u8]) -> Vec<u8> {
let mut challenge = Sha384::default();
Digest::update(&mut challenge, input);
challenge.finalize().to_vec()
digest_bytes::<Sha384>(input)
}
pub fn sha512_bytes(input: &[u8]) -> Vec<u8> {
let mut challenge = Sha512::default();
Digest::update(&mut challenge, input);
challenge.finalize().to_vec()
digest_bytes::<Sha512>(input)
}
pub fn digest_bytes<D>(input: &[u8]) -> Vec<u8> where D: Digest + Default {
let mut digest: D = Default::default();
Digest::update(&mut digest, input);
digest.finalize().to_vec()
}
macro_rules! define_copy_array {