chore: update to winter 0.4.1
Al-Kindi-0 82364884+Al-Kindi-0@users.noreply.github.com
Tue, 25 Oct 2022 14:00:02 +0200
7 files changed,
22 insertions(+),
23 deletions(-)
M
crypto/Cargo.toml
→
crypto/Cargo.toml
@@ -11,8 +11,9 @@ keywords = ["miden", "crypto", "hash", "merkle"]
edition = "2021" [dependencies] -winterfell = { git = "https://github.com/novifinancial/winterfell"} -winter_utils = { version = "0.4", package = "winter-utils" } +winter_utils = { version = "0.4.1", package = "winter-utils" } +winter_math = { version = "0.4.1", package = "winter-math" } +winter_crypto = { version = "0.4.1", package = "winter-crypto" } [dev-dependencies] proptest = "1.0.0"
M
crypto/src/hash/rpo/digest.rs
→
crypto/src/hash/rpo/digest.rs
@@ -1,7 +1,7 @@
use super::DIGEST_SIZE; +use crate::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable}; use crate::{Digest, Felt, StarkField, ZERO}; use core::ops::Deref; -use winterfell::{ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable}; // DIGEST TRAIT IMPLEMENTATIONS // ================================================================================================@@ -22,7 +22,7 @@ pub fn digests_as_elements<'a, I>(digests: I) -> impl Iterator<Item = &'a Felt>
where I: Iterator<Item = &'a Self>, { - digests.map(|d| d.0.iter()).flatten() + digests.flat_map(|d| d.0.iter()) } }@@ -128,9 +128,8 @@ #[cfg(test)]
mod tests { use super::RpoDigest256; - use crate::Felt; + use crate::{Deserializable, Felt, Serializable, SliceReader}; use rand_utils::rand_value; - use winterfell::{Deserializable, Serializable, SliceReader}; #[test] fn digest_serialization() {
M
crypto/src/hash/rpo/mds_freq.rs
→
crypto/src/hash/rpo/mds_freq.rs
@@ -158,14 +158,14 @@ #[cfg(test)]
mod tests { use super::super::Rpo256; use crate::hash::rpo::MDS; + use crate::{Felt, FieldElement}; use proptest::prelude::*; - use winterfell::math::{fields::f64::BaseElement, FieldElement}; const STATE_WIDTH: usize = 12; #[inline(always)] - fn apply_mds_naive(state: &mut [BaseElement; STATE_WIDTH]) { - let mut result = [BaseElement::ZERO; STATE_WIDTH]; + fn apply_mds_naive(state: &mut [Felt; STATE_WIDTH]) { + let mut result = [Felt::ZERO; STATE_WIDTH]; result.iter_mut().zip(MDS).for_each(|(r, mds_row)| { state.iter().zip(mds_row).for_each(|(&s, m)| { *r += m * s;@@ -178,11 +178,11 @@ proptest! {
#[test] fn mds_freq_proptest(a in any::<[u64;STATE_WIDTH]>()) { - let mut v1 = [BaseElement::ZERO;STATE_WIDTH]; + let mut v1 = [Felt::ZERO;STATE_WIDTH]; let mut v2; for i in 0..STATE_WIDTH { - v1[i] = BaseElement::new(a[i]); + v1[i] = Felt::new(a[i]); } v2 = v1.clone();
M
crypto/src/hash/rpo/mod.rs
→
crypto/src/hash/rpo/mod.rs
@@ -153,7 +153,7 @@ fn merge(values: &[Self::Digest; 2]) -> Self::Digest {
// initialize the state by copying the digest elements into the rate portion of the state // (8 total elements), and set the capacity elements to 0. let mut state = [ZERO; STATE_WIDTH]; - let it = Self::Digest::digests_as_elements(values.into_iter()); + let it = Self::Digest::digests_as_elements(values.iter()); for (i, v) in it.enumerate() { state[RATE_RANGE.start + i] = *v; }
M
crypto/src/lib.rs
→
crypto/src/lib.rs
@@ -1,10 +1,12 @@
-pub use winter_utils::{ - ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable, -}; -pub use winterfell::crypto::{Digest, ElementHasher, Hasher as HashFn}; -pub use winterfell::math::{ +pub use winter_crypto::{Digest, ElementHasher, Hasher as HashFn}; +pub use winter_math::{ fields::{f64::BaseElement as Felt, QuadExtension}, - ExtensionOf, FieldElement, StarkField, + log2, ExtensionOf, FieldElement, StarkField, +}; +pub use winter_utils::{ + collections::{BTreeMap, Vec}, + uninit_vector, ByteReader, ByteWriter, Deserializable, DeserializationError, Serializable, + SliceReader, }; pub mod hash;
M
crypto/src/merkle/merkle_path_set.rs
→
crypto/src/merkle/merkle_path_set.rs
@@ -1,6 +1,5 @@
use super::{MerkleError, Word}; -use crate::{hash::merge, ZERO}; -use winter_utils::collections::{BTreeMap, Vec}; +use crate::{hash::merge, BTreeMap, Vec, ZERO}; // MERKLE PATH SET // ================================================================================================
M
crypto/src/merkle/merkle_tree.rs
→
crypto/src/merkle/merkle_tree.rs
@@ -1,11 +1,9 @@
use super::MerkleError; use crate::{ hash::{merge, Digest}, - Felt, FieldElement, Word, + log2, uninit_vector, Felt, FieldElement, Word, }; use core::slice; -use winter_utils::uninit_vector; -use winterfell::math::log2; // MERKLE TREE // ================================================================================================