arnaucube
arnaucube/miden-cryptoPublic Self-hosted repository
feat: re-export winter-crypto Hasher, Digest & ElementHasher

This commit introduces the re-export of the listed primitives.

They will be used inside Miden to report the security level of the
picked primitive, as well as other functionality.

closes #72
Victor Lopez victor@codx.io
Wed, 22 Feb 2023 11:12:17 +0100
commit

35b255b5eb26db7e4ea842bd266597fc6f72676b

parent

e94b0c70a9297a42300be8908408c5340ee00dec

6 files changed, 15 insertions(+), 5 deletions(-)

jump to
M CHANGELOG.md → CHANGELOG.md

@@ -1,3 +1,7 @@

+## 0.1.4 (2023-02-22) + +- Re-export winter-crypto Hasher, Digest & ElementHasher (#72) + ## 0.1.3 (2023-02-20) - Updated Winterfell dependency to v0.5.1 (#68)
M Cargo.toml → Cargo.toml

@@ -1,7 +1,7 @@

[package] name = "miden-crypto" -version = "0.1.3" -description = "Miden Cryptographic primitives" +version = "0.1.5" +description="Miden Cryptographic primitives" authors = ["miden contributors"] readme = "README.md" license = "MIT"
M src/hash/blake/mod.rs → src/hash/blake/mod.rs

@@ -78,6 +78,7 @@ // BLAKE3 256-BIT OUTPUT

// ================================================================================================ /// 256-bit output blake3 hasher. +#[derive(Debug, Copy, Clone, Eq, PartialEq)] pub struct Blake3_256; impl Hasher for Blake3_256 {

@@ -141,6 +142,7 @@ // BLAKE3 192-BIT OUTPUT

// ================================================================================================ /// 192-bit output blake3 hasher. +#[derive(Debug, Copy, Clone, Eq, PartialEq)] pub struct Blake3_192; impl Hasher for Blake3_192 {

@@ -204,6 +206,7 @@ // BLAKE3 160-BIT OUTPUT

// ================================================================================================ /// 160-bit output blake3 hasher. +#[derive(Debug, Copy, Clone, Eq, PartialEq)] pub struct Blake3_160; impl Hasher for Blake3_160 {
M src/hash/mod.rs → src/hash/mod.rs

@@ -1,5 +1,9 @@

use super::{Felt, FieldElement, StarkField, ONE, ZERO}; -use winter_crypto::{Digest, ElementHasher, Hasher}; pub mod blake; pub mod rpo; + +// RE-EXPORTS +// ================================================================================================ + +pub use winter_crypto::{Digest, ElementHasher, Hasher};
M src/hash/rpo/mod.rs → src/hash/rpo/mod.rs

@@ -88,6 +88,7 @@ /// Thus, if the underlying data consists of valid field elements, it might make more sense

/// to deserialize them into field elements and then hash them using /// [hash_elements()](Rpo256::hash_elements) function rather then hashing the serialized bytes /// using [hash()](Rpo256::hash) function. +#[derive(Debug, Copy, Clone, Eq, PartialEq)] pub struct Rpo256(); impl Hasher for Rpo256 {
M src/lib.rs → src/lib.rs

@@ -11,9 +11,7 @@ // RE-EXPORTS

// ================================================================================================ pub use winter_crypto::{RandomCoin, RandomCoinError}; - pub use winter_math::{fields::f64::BaseElement as Felt, FieldElement, StarkField}; - pub mod utils { pub use winter_utils::{ collections, string, uninit_vector, ByteReader, ByteWriter, Deserializable,