Releases: divviup/libprio-rs
v0.8.4
This release implements VDAF-01, and fixes build failures when building without default features enabled.
What's Changed
- Build with
--no-default-features
in CI by @tgeoghegan in #280 - Fix Clippy lint by @divergentdave in #281
- build(deps): bump serde from 1.0.142 to 1.0.143 by @dependabot in #282
- Run CI using both MSRV and stable Rust toolchains by @tgeoghegan in #285
- Bump crate version to 0.8.4 by @tgeoghegan in #297
Full Changelog: v0.8.3...v0.8.4
v0.9.0
This release implements draft-irtf-cfrg-vdaf-03 and is not backward or forward compatible with other VDAF drafts.
What's Changed
- Build with
--no-default-features
in CI by @tgeoghegan in #280 - Fix Clippy lint by @divergentdave in #281
- build(deps): bump serde from 1.0.142 to 1.0.143 by @dependabot in #282
- Run CI using both MSRV and stable Rust toolchains by @tgeoghegan in #285
- Preparations for VDAF draft 03 breaking changes by @divergentdave in #286
- Add public share to VDAF API by @divergentdave in #287
- Add algorithm IDs and update PRG seed derivation by @divergentdave in #289
- Rewrite joint rand derivation, CMAC instead of XOR by @divergentdave in #290
- Remove intermediate seed step from query randomness by @divergentdave in #291
- Add VDAF draft 03 test vectors, re-enable tests by @divergentdave in #292
- build(deps): bump serde_json from 1.0.83 to 1.0.85 by @dependabot in #293
- build(deps): bump serde from 1.0.143 to 1.0.144 by @dependabot in #294
- Add Valgrind-based cycle count benchmarks by @divergentdave in #295
Full Changelog: v0.8.3...v0.9.0
v0.8.3
What's Changed
- Update lockfile to reflect version bump by @divergentdave in #268
- Remove crypto dependencies: ring, aes-gcm by @simon-friedberger in #267
- build(deps): bump serde from 1.0.139 to 1.0.140 by @dependabot in #271
- Add feature flag to hide PRG. by @simon-friedberger in #272
- build(deps): bump serde from 1.0.140 to 1.0.141 by @dependabot in #273
- build(deps): bump color-eyre from 0.6.1 to 0.6.2 by @dependabot in #269
- Add num_measurements argument to unshard() and decode_result(). by @MxmUrw in #258
- build(deps): bump serde_json from 1.0.82 to 1.0.83 by @dependabot in #276
- build(deps): bump thiserror from 1.0.31 to 1.0.32 by @dependabot in #275
- build(deps): bump serde from 1.0.141 to 1.0.142 by @dependabot in #274
- Add unexported trait
FieldElementExt
by @tgeoghegan in #277 - Release 0.8.3 by @tgeoghegan in #279
New Contributors
- @simon-friedberger made their first contribution in #267
- @MxmUrw made their first contribution in #258
Full Changelog: v0.8.2...v0.8.3
v0.8.2
This release fixes one compiler warning present in v0.8.1 and also bumps the version in Cargo.toml
.
What's Changed
- Fix warning and release 0.8.2 by @tgeoghegan in #266
Full Changelog: v0.8.1...v0.8.2
v0.8.1
The headline change in this release is the Prio2
VDAF, which is backward-compatible with clients and servers from the ENPA system. Additionally, this release contains a few dependency bumps and bug fixes, listed below.
What's Changed
- flp: Fix out-of-bounds error in FFT-based gadget poly computation by @cjpatton in #255
- build(deps): bump serde from 1.0.137 to 1.0.138 by @dependabot in #260
- build(deps): bump serde_json from 1.0.81 to 1.0.82 by @dependabot in #259
- Update various URLs with divviup GH org by @tgeoghegan in #261
- build(deps): bump getrandom from 0.2.6 to 0.2.7 by @dependabot in #253
- Don't unify "real" and dev dependencies by @tgeoghegan in #262
- Port Prio2 to a VDAF by @cjpatton in #240
- Prio2: Implement serialization of the prep state by @cjpatton in #265
- build(deps): bump serde from 1.0.138 to 1.0.139 by @dependabot in #263
- build(deps): bump criterion from 0.3.5 to 0.3.6 by @dependabot in #264
Full Changelog: v0.8.0...v0.8.1
v0.8.0
What's Changed
- Cleanup (currently)-final Clippy complaint. by @branlwyd in #233
- Refactor PrepareTransition<S, M, O> to PrepareTransition<V: Aggregator>. by @branlwyd in #232
- Rename PrepareStep to PrepareState. by @branlwyd in #230
- vdaf: Have prepare_init() output the first-round prep message by @cjpatton in #218
- vdaf: Replace the
PrepareTransition::Fail
variant by @cjpatton in #224 - vdaf: Distinguish prep shares from prep messages by @cjpatton in #225
- prio3: Align prep message with vdaf-01 by @cjpatton in #226
- vdaf: Drop public param and refactor verify param by @cjpatton in #228
- vdaf: Update test vectors to vdaf-01 by @cjpatton in #234
- Clean up API and documentation by @cjpatton in #236
- PR #238, take 2 by @tgeoghegan in #239
- Fix
Continue
variant ofPrepareTransition
by @cjpatton in #242 - Update transitive dependencies with cargo-audit findings by @divergentdave in #244
- Add benchmarks for the
CountVec
type by @cjpatton in #243 - Clippy by @branlwyd in #248
- Update Prio3 constructors to improve generated docs. by @branlwyd in #247
- Fix cargo doc warning for Prio3Aes128CountVecMultithreaded. by @branlwyd in #250
- CI: build benchmarks with all features, yet another clippy fix. by @branlwyd in #249
- Document parameter for decoding PrepareMessage/State. by @branlwyd in #251
- Bump crate version to v0.8.0. by @branlwyd in #246
Full Changelog: v0.7.1...v0.8.0
v0.7.1
What's Changed
- Update CODEOWNERS for recent move to divviup org. by @branlwyd in #201
- build(deps): bump getrandom from 0.2.5 to 0.2.6 by @dependabot in #203
- Implement Encode & Decode for OutputShare. by @branlwyd in #202
- Extend blanket
Parameterized{En,De}code
impls by @tgeoghegan in #204 - clippy: rename Montgomery conversion methods by @divergentdave in #207
- build(deps): bump rayon from 1.5.1 to 1.5.2 by @dependabot in #205
- Fix in docstring of FieldParameters::roots by @divergentdave in #206
- build(deps): bump serde_json from 1.0.79 to 1.0.80 by @dependabot in #212
- build(deps): bump serde from 1.0.136 to 1.0.137 by @dependabot in #213
- build(deps): bump thiserror from 1.0.30 to 1.0.31 by @dependabot in #211
- build(deps): bump serde_json from 1.0.80 to 1.0.81 by @dependabot in #215
- build(deps): bump rayon from 1.5.2 to 1.5.3 by @dependabot in #217
- Compare FieldElement via Montgomery representation by @divergentdave in #219
- Add a test of Prng rejection sampling by @divergentdave in #222
- Update references to IETF/CFRG documents by @cjpatton in #223
- Releases branch GH actions and crate 0.7.1 by @tgeoghegan in #227
Full Changelog: v0.7.0...v0.7.1
v0.7.0
This release is a complete implementation of the prio3-00
VDAF, specified in draft-patton-cfrg-vdaf-01.
What's Changed
- prio3: Store (compressed) input share instead of output share by @cjpatton in #138
- build(deps): bump serde_json from 1.0.69 to 1.0.70 by @dependabot in #140
- Fix reported prio3 input share sizes in benchmarks by @cjpatton in #139
- build(deps): bump serde from 1.0.130 to 1.0.131 by @dependabot in #144
- build(deps): bump serde_json from 1.0.70 to 1.0.73 by @dependabot in #145
- build(deps): bump serde from 1.0.131 to 1.0.132 by @dependabot in #146
- build(deps): bump serde_json from 1.0.73 to 1.0.74 by @dependabot in #148
- build(deps): bump serde from 1.0.132 to 1.0.133 by @dependabot in #149
- prio3: Add a type for a vector of counters by @cjpatton in #137
- vdaf: Rename
hits
topoplar1
by @cjpatton in #150 - build(deps): bump blake3 from 1.2.0 to 1.3.0 by @dependabot in #153
- build(deps): bump color-eyre from 0.5.11 to 0.6.0 by @dependabot in #154
- build(deps): bump getrandom from 0.2.3 to 0.2.4 by @dependabot in #156
- build(deps): bump serde_json from 1.0.74 to 1.0.75 by @dependabot in #155
- build(deps): bump serde_json from 1.0.75 to 1.0.78 by @dependabot in #157
- build(deps): bump structopt from 0.3.25 to 0.3.26 by @dependabot in #158
- build(deps): bump serde from 1.0.133 to 1.0.135 by @dependabot in #159
- vdaf: Add public preprocessing of prepare messages by @cjpatton in #147
- make value inside
Prio3Result[Vec]
public by @tgeoghegan in #160 - prio3: Add serialization for network messages by @cjpatton in #161
- build(deps): bump serde from 1.0.135 to 1.0.136 by @dependabot in #163
- build(deps): bump blake3 from 1.3.0 to 1.3.1 by @dependabot in #164
- Implement generic 128-bit prime field arithmetic. by @armfazh in #165
- build(deps): bump rand from 0.8.4 to 0.8.5 by @dependabot in #167
- build(deps): bump serde_json from 1.0.78 to 1.0.79 by @dependabot in #168
- Introduce
codec
module by @tgeoghegan in #166 - Fix typos in poplar1 module by @divergentdave in #169
- prio3: Add additional tests by @cjpatton in #171
- vdaf: Implement
From<Vec<F>>
forAggregateShare<F>
by @cjpatton in #173 - prio3: Use
Field128
for constructions using Fiat-Shamir by @cjpatton in #175 - Add .github/CODEOWNERS by @tgeoghegan in #178
- Remove helper methods on
vdaf::Aggregator
by @tgeoghegan in #174 - prio3: Expose additional parameters via
Prio3
by @cjpatton in #172 - prio3: Align joint rand seed generation with spec by @cjpatton in #177
- build(deps): bump getrandom from 0.2.4 to 0.2.5 by @dependabot in #179
- build(deps): bump color-eyre from 0.6.0 to 0.6.1 by @dependabot in #180
- vdaf: Align PRG with next VDAF draft by @cjpatton in #181
- Add encoding parameter, allow parameters to be omitted if they are (). by @branlwyd in #183
- delete src/vdaf/suite.rs by @tgeoghegan in #184
- prio3: Add domain separation for field element generation by @cjpatton in #182
- nit: Clean up output of benchmarks by @cjpatton in #186
- Test vectors for
prio3
by @cjpatton in #185 - build(deps): bump cipher from 0.3.0 to 0.4.3 by @dependabot in #190
- cleanup: type alias for getrandom/test vector use by @divergentdave in #187
- prio3: Resolve TODO by @cjpatton in #188
- build(deps): bump cmac from 0.6.0 to 0.7.1 by @dependabot in #189
- prio3: Rework
Prio3PrepareStep
internals (#176) by @cjpatton in #191 - vdaf: Derive serde to traits for
AggregateShare
by @cjpatton in #194 - prio3: More internal refactoring by @cjpatton in #193
- prio3: Update documentation and rename
pcp
module toflp
by @cjpatton in #196 - prio3: Encode prepare step in "waiting" state by @cjpatton in #195
- vdaf: Serialization of verification parameters by @cjpatton in #192
- Documentation cleanup by @divergentdave in #197
- Opaque VDAF message structs by @tgeoghegan in #199
- Remove
rust-toolchain.toml
by @tgeoghegan in #198 - Release crate 0.7.0 by @tgeoghegan in #200
New Contributors
- @armfazh made their first contribution in #165
- @divergentdave made their first contribution in #169
- @branlwyd made their first contribution in #183
Full Changelog: v0.6.1...v0.7.0
v0.6.1
This release is identical to release 0.6.0 except that this time, we remembered to bump the crate version in Cargo.toml
.
v0.6.0
This release contains implementations of the Prio3
and Hits
Verifiable Distributed Aggregation Functions, compatible with draft 00 of the VDAF specification, presented at IETF 112.