pub type Md5Checksum = Checksum<Md5>;
Expand description
A checksum using the Md5 algorithm
Aliased Type§
struct Md5Checksum {
digest: Vec<u8>,
_marker: PhantomData<CoreWrapper<Md5Core>>,
}
Fields§
§digest: Vec<u8>
§_marker: PhantomData<CoreWrapper<Md5Core>>
Implementations
Source§impl<D: Digest> Checksum<D>
impl<D: Digest> Checksum<D>
Sourcepub fn calculate_from(input: impl AsRef<[u8]>) -> Self
pub fn calculate_from(input: impl AsRef<[u8]>) -> Self
Calculate a new Checksum for data that may be represented as a list of bytes
§Examples
use alpm_types::{digests::Blake2b512, Checksum};
assert_eq!(
format!("{}", Checksum::<Blake2b512>::calculate_from("foo\n")),
"d202d7951df2c4b711ca44b4bcc9d7b363fa4252127e058c1a910ec05b6cd038d71cc21221c031c0359f993e746b07f5965cf8c5c3746a58337ad9ab65278e77",
);
Trait Implementations
Source§impl<D: Digest> Debug for Checksum<D>
Use Display as Debug impl, since the byte representation and PhantomData field aren’t
relevant for debugging purposes.
impl<D: Digest> Debug for Checksum<D>
Use Display as Debug impl, since the byte representation and PhantomData field aren’t relevant for debugging purposes.
Source§impl<'de, D: Digest> Deserialize<'de> for Checksum<D>
impl<'de, D: Digest> Deserialize<'de> for Checksum<D>
Source§fn deserialize<De>(deserializer: De) -> Result<Self, De::Error>where
De: Deserializer<'de>,
fn deserialize<De>(deserializer: De) -> Result<Self, De::Error>where
De: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<D: Digest> FromStr for Checksum<D>
impl<D: Digest> FromStr for Checksum<D>
Source§fn from_str(s: &str) -> Result<Checksum<D>, Self::Err>
fn from_str(s: &str) -> Result<Checksum<D>, Self::Err>
Create a new Checksum from a hex string and return it in a Result
All whitespaces are removed from the input and it is processed as a lowercase string. An Error is returned, if the input length does not match the output size for the given supported algorithm, or if the provided hex string could not be converted to a list of bytes.
§Examples
use std::str::FromStr;
use alpm_types::{digests::Blake2b512, Checksum};
assert!(Checksum::<Blake2b512>::from_str("d202d7951df2c4b711ca44b4bcc9d7b363fa4252127e058c1a910ec05b6cd038d71cc21221c031c0359f993e746b07f5965cf8c5c3746a58337ad9ab65278e77").is_ok());
assert!(Checksum::<Blake2b512>::from_str("d2 02 d7 95 1d f2 c4 b7 11 ca 44 b4 bc c9 d7 b3 63 fa 42 52 12 7e 05 8c 1a 91 0e c0 5b 6c d0 38 d7 1c c2 12 21 c0 31 c0 35 9f 99 3e 74 6b 07 f5 96 5c f8 c5 c3 74 6a 58 33 7a d9 ab 65 27 8e 77").is_ok());
assert!(Checksum::<Blake2b512>::from_str("d202d7951df2c4b711ca44b4bcc9d7b363fa4252127e058c1a910ec05b6cd038d71cc21221c031c0359f993e746b07f5965cf8c5c3746a58337ad9ab65278e7").is_err());
assert!(Checksum::<Blake2b512>::from_str("d202d7951df2c4b711ca44b4bcc9d7b363fa4252127e058c1a910ec05b6cd038d71cc21221c031c0359f993e746b07f5965cf8c5c3746a58337ad9ab65278e7x").is_err());