d5250cd202
implement hashing for leaves that don't yet exist
...
This commit allows users of the SparseMerkleTree to determine the hash
of a leaf-to-be before it's actually inserted. This functionality is
currently unused, but in further commits will be used to implement
pre-validated Merkle tree insertion.
2024-08-16 18:51:24 -06:00
Bobbin Threadbare
d92fae7f82
chore: update rust version badge
2024-08-06 16:59:31 -07:00
Bobbin Threadbare
dfdd5f722f
chore: fix lints
2024-08-06 16:52:46 -07:00
Bobbin Threadbare
9f63b50510
chore: increment crate version to v0.10.0 and update changelog
2024-08-06 16:42:50 -07:00
Al-Kindi-0
b06cfa3c03
docs: update RPO with a comment on security given domain separation ( #320 )
2024-06-04 22:54:51 -07:00
Al-Kindi-0
8556c8fc43
fix: encoding Falcon secret key basis polynomials ( #319 )
2024-05-28 23:20:28 -07:00
Augusto Hack
78ac70120d
fix: hex_to_bytes
can be used for data besides RpoDigests ( #317 )
2024-05-13 13:13:02 -07:00
Bobbin Threadbare
ccde10af13
chore: update changelog
2024-05-12 03:17:06 +08:00
Al-Kindi-0
f967211b5a
feat: migrate to new Winterfell ( #315 )
2024-05-12 03:09:27 +08:00
Augusto Hack
d58c717956
rpo/rpx: export digest error enum ( #313 )
2024-05-12 03:09:24 +08:00
Augusto Hack
c0743adac9
Rpo256: Add RpoDigest conversions ( #311 )
2024-05-12 03:09:21 +08:00
Bobbin Threadbare
f72add58cd
chore: increment crate version to v0.9.3 and update changelog
2024-04-24 01:02:47 -07:00
Menko
63f97e5621
feat: add rpx random coin ( #307 )
2024-04-24 01:02:47 -07:00
Bobbin Threadbare
43fe7a1072
chore: increment crate version to 0.9.2 and update changelog
2024-04-21 01:14:18 -07:00
Al-Kindi-0
bb42388827
fix: bug in Falcon secret key basis order ( #305 )
2024-04-21 01:14:18 -07:00
Dominik Schmid
2a0ae70645
feature: adding serialization to the SMT ( #304 )
2024-04-21 01:14:18 -07:00
Bobbin Threadbare
da67f8c7e5
chore: increment doc version to v0.9.1
2024-04-02 13:07:02 -07:00
Bobbin Threadbare
9454e1a8ae
chore: increment crate version to v0.9.1
2024-04-02 13:02:38 -07:00
Bobbin Threadbare
4bf087daf8
fix: decrement leaf count in simple SMT when inserting empty value ( #303 )
2024-04-02 13:01:00 -07:00
polydez
b4dc373925
feat: add leaf count to SimpleSmt
( #302 )
2024-04-02 12:07:00 -07:00
Bobbin Threadbare
4885f885a4
chore: update changelog
2024-03-24 08:42:38 -07:00
Bobbin Threadbare
5a2e917dd5
Tracking PR for v0.9.0 release ( #278 )
...
* chore: update crate version to v0.9.0
* chore: remove deprecated re-exports
* chore: remove Box re-export
* feat: implement pure-Rust keygen and signing for RpoFalcon512 (#285 )
* feat: add reproducible builds (#296 )
* fix: address a few issues for migrating Miden VM (#298 )
* feat: add RngCore supertrait for FeltRng (#299 )
---------
Co-authored-by: Al-Kindi-0 <82364884+Al-Kindi-0@users.noreply.github.com>
Co-authored-by: Paul-Henry Kajfasz <42912740+phklive@users.noreply.github.com>
2024-03-24 08:38:08 -07:00
Bobbin Threadbare
2be17b74fb
fix: add re-exports of vec and format macros
2024-03-18 12:35:00 -07:00
Bobbin Threadbare
b35e99c390
chore: increment crate version to v0.8.3 and update changelog
2024-03-18 11:29:06 -07:00
Paul Schoenfelder
4c8a9809ed
fix: re-add unintentionally removed re-exported liballoc macros ( #292 )
2024-03-18 11:27:17 -07:00
Bobbin Threadbare
ce9b45fe77
chore: add badges to readme
2024-03-17 13:32:46 -07:00
Bobbin Threadbare
56d014898d
chore: update copyright year
2024-03-17 13:25:26 -07:00
Bobbin Threadbare
8e81ccdb68
chore: increment version to v0.8.2 and update changelog
2024-03-17 13:23:44 -07:00
Paul Schoenfelder
999a64fca6
chore: handle deprecations in winterfell 0.8.3 release
2024-03-17 16:18:23 -04:00
Bobbin Threadbare
4bc4bea0db
chore: update changelog
2024-02-21 23:59:36 -05:00
Augusto Hack
dbab0e9aa9
fix: clippy warnings ( #280 )
2024-02-21 20:55:02 -08:00
Bobbin Threadbare
24f72c986b
chore: update changelog
2024-02-14 11:52:40 -08:00
Andrey Khmuro
cd4525c7ad
refactor: update repo to be compatible with Winterfell 0.8 ( #275 )
2024-02-14 11:52:40 -08:00
Philippe Laferrière
552d90429b
Remove TieredSmt
( #277 )
2024-02-14 11:52:40 -08:00
Philippe Laferrière
119c7e2b6d
SmtProof
: add accessors (#276 )
...
* add accessors
* fmt
* comments
2024-02-14 11:52:40 -08:00
Philippe Laferrière
45e7e78118
Clone ( #274 )
2024-02-14 11:52:40 -08:00
Philippe Laferrière
a9475b2a2d
reexport ( #273 )
2024-02-14 11:52:40 -08:00
Philippe Laferrière
e55b3ed2ce
Introduce SmtProof
( #270 )
...
* add conversion for `SmtLeaf`
* introduce `SmtProof` scaffolding
* implement `verify_membership()`
* SmtLeaf: knows its index
* `SmtLeaf::index`
* `SmtLeaf::get_value()` returns an Option
* fix `verify_membership()`
* impl `SmtProof::get`
* impl `into_parts()`
* `SmtProof::compute_root`
* use `SmtProof` in `Smt::open`
* `SmtLeaf` constructors
* Vec
* impl `Error` for `SmtLeafError`
* fix std Error
* move Word/Digest conversions to LeafIndex
* `SmtProof::new()` returns an error
* `SparseMerkleTree::path_and_leaf_to_opening`
* `SmtLeaf`: serializable/deserializable
* `SmtProof`: serializable/deserializable
* add tests for SmtLeaf serialization
* move `SmtLeaf` to submodule
* use constructors internally
* fix docs
* Add `Vec`
* add `Vec` to tests
* no_std use statements
* fmt
* `Errors`: make heading
* use `SMT_DEPTH`
* SmtLeaf single case: check leaf index
* Multiple case: check consistency with leaf index
* use `pub(super)` instead of `pub(crate)`
* use `pub(super)`
* `SmtLeaf`: add `num_entries()` accessor
* Fix `SmtLeaf` serialization
* improve leaf serialization tests
2024-02-14 11:52:40 -08:00
Bobbin Threadbare
61a0764a61
fix: peak index calculation in MmrProof
2024-02-14 11:52:40 -08:00
Philippe Laferrière
3d71a9b59b
Smt
: remove inner nodes when removing value (#269 )
2024-02-14 11:52:40 -08:00
Philippe Laferrière
da12fd258a
Add missing methods to Smt
( #268 )
2024-02-14 11:52:40 -08:00
Bobbin Threadbare
5fcf98669d
feat: add PartialMmr::from_parts() constructor
2024-02-14 11:52:40 -08:00
Philippe Laferrière
1cdd3dbbfa
Add methods to Smt
necessary for VM tests ( #264 )
...
* Smt::inner_nodes
* Add conversion Smt -> MerkleStore
* add docstring to `Smt`
* add to docstring
* fmt
* add `leaves()` method to `Smt`
* add `kv_pairs` functions
* rewrite `into_elements()` in terms of `into_kv_pairs()`
* change docstring
2024-02-14 11:52:40 -08:00
Bobbin Threadbare
d59ffe274a
feat: add Debug and Clone derives for Falcon signature
2024-02-14 11:52:40 -08:00
Bobbin Threadbare
727ed8fb3e
docs: minor padding comment update
2024-02-14 11:52:40 -08:00
Al-Kindi-0
0acceaa526
fix: always pad bytes with 10*0 ( #267 )
2024-02-14 11:52:40 -08:00
Michael Birch
3882e0f719
fix(dsa): fix deserialization logic ( #266 )
2024-02-14 11:52:40 -08:00
Augusto F. Hack
70e39e7b39
partialmmr: Method add with support for a single peak and tracking
...
fixes : #258
2024-02-14 11:52:40 -08:00
Philippe Laferrière
5596db7868
Implement Smt
struct (replacement to TieredSmt
) ( #254 )
2024-02-14 11:52:40 -08:00
Bobbin Threadbare
a933ff2fa0
refactor: remove obsolete traits
2024-02-14 11:52:40 -08:00