pub struct Sha256 {}
Expand description

Sha256 implementation of the Hasher trait.

Examples

 let tree = MerkleTree::<Sha256>::new();
 let other_tree: MerkleTree<Sha256> = MerkleTree::new();

let proof_bytes: Vec<u8> = vec![
    46, 125, 44, 3, 169, 80, 122, 226, 101, 236, 245, 181, 53, 104, 133, 165, 51, 147, 162,
    2, 157, 36, 19, 148, 153, 114, 101, 161, 162, 90, 239, 198, 37, 47, 16, 200, 54, 16,
    235, 202, 26, 5, 156, 11, 174, 130, 85, 235, 162, 249, 91, 228, 209, 215, 188, 250,
    137, 215, 36, 138, 130, 217, 241, 17, 229, 160, 31, 238, 20, 224, 237, 92, 72, 113, 79,
    34, 24, 15, 37, 173, 131, 101, 181, 63, 151, 121, 247, 157, 196, 163, 215, 233, 57, 99,
    249, 74,
];

let proof_result = MerkleProof::<Sha256>::from_bytes(&proof_bytes);

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

This type is used as a hash type in the library. It is recommended to use fixed size u8 array as a hash type. For example, for sha256 the type would be [u8; 32], representing 32 bytes, which is the size of the sha256 digest. Also, fixed sized arrays of u8 by default satisfy all trait bounds required by this type. Read more

This associated function takes a slice of bytes and returns a hash of it. Used by concat_and_hash function to build a tree from concatenated hashes Read more

Used by MerkleTree and PartialTree when calculating the root. The provided default implementation propagates the left node if it doesn’t have a sibling. The left node should always be present. The right node is optional. Read more

Returns the byte size of Self::Hash. Default implementation returns mem::size_of::<Self::Hash>(). Usually doesn’t need to be overridden. Used internally by MerkleProof to parse hashes from a serialized proof. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.