Repository navigation
v0.11.0
This release implements draft-irtf-cfrg-vdaf-04.
Breaking Changes
- The upgrade to draft-irtf-cfrg-vdaf-04 includes many wire breaking changes.
- VDAF clients must now provide a nonce to the sharding algorithm.
- Trait bounds on the
AggregateShareandOutputShareassociated types of theVdaftrait have changed, to allow providing a decoding context parameter when decoding them. - The incomplete Poplar1 implementation has been moved behind the new
experimentalCargo feature. - The "fixed point bounded L2 vector sum" Prio3 instances have been moved behind the new
experimentalCargo feature. - The
FieldElementtrait has been split up to separate generic field functionality from FFT-friendly fields (and fields with a compatible primitive integer type). - Prio3CountVec has been replaced with the more generic Prio3SumVec. To get behavior equivalent to the old Prio3CountVec, construct Prio3SumVec with a bit width of 1, and the same vector length.
What's Changed
- build(deps): bump thiserror from 1.0.34 to 1.0.35 by @dependabot in #314
- build(deps): bump itertools from 0.10.3 to 0.10.4 by @dependabot in #313
- build(deps): bump aes-gcm from 0.9.4 to 0.10.1 by @dependabot in #315
- Fix clippy lint by @divergentdave in #323
- build(deps): bump serde from 1.0.144 to 1.0.145 by @dependabot in #322
- build(deps): bump thiserror from 1.0.35 to 1.0.36 by @dependabot in #321
- build(deps): bump itertools from 0.10.4 to 0.10.5 by @dependabot in #320
- build(deps): bump ctr from 0.9.1 to 0.9.2 by @dependabot in #324
- build(deps): bump thiserror from 1.0.36 to 1.0.37 by @dependabot in #325
- Fix clippy lint by @tgeoghegan in #330
- build(deps): bump serde_json from 1.0.85 to 1.0.86 by @dependabot in #332
- build(deps): bump fixed-macro from 1.1.1 to 1.2.0 by @dependabot in #336
- Switch to dtolnay/rust-toolchain GitHub Action by @tgeoghegan in #345
- Update actions/checkout, add to Dependabot by @divergentdave in #346
- build(deps): bump serde_json from 1.0.86 to 1.0.87 by @dependabot in #337
- build(deps): bump base64 from 0.13.0 to 0.13.1 by @dependabot in #338
- build(deps): bump getrandom from 0.2.7 to 0.2.8 by @dependabot in #340
- build(deps): bump serde from 1.0.145 to 1.0.147 by @dependabot in #339
- AggregateShare: switch to TryFrom<Vec>, Into<Vec>. by @branlwyd in #335
- Configure dependabot for release/0.10 by @tgeoghegan in #348
- build(deps): bump aes from 0.8.1 to 0.8.2 by @dependabot in #349
- build(deps): bump fixed from 1.19.0 to 1.20.0 by @dependabot in #352
- build(deps): bump rayon from 1.5.3 to 1.6.0 by @dependabot in #354
- build(deps): bump serde_json from 1.0.87 to 1.0.88 by @dependabot in #355
- build(deps): bump serde_json from 1.0.88 to 1.0.89 by @dependabot in #360
- build(deps): bump serde from 1.0.147 to 1.0.148 by @dependabot in #361
- build(deps): bump serde from 1.0.148 to 1.0.149 by @dependabot in #366
- Use more explicit types than
()in vdaf impls by @tgeoghegan in #371 - build(deps): bump rayon from 1.6.0 to 1.6.1 by @dependabot in #374
- build(deps): bump base64 from 0.13.1 to 0.20.0 by @dependabot in #373
- build(deps): bump serde from 1.0.149 to 1.0.150 by @dependabot in #372
- Clippy fixes by @divergentdave in #384
- build(deps): bump serde from 1.0.150 to 1.0.151 by @dependabot in #386
- build(deps): bump serde_json from 1.0.89 to 1.0.91 by @dependabot in #387
- build(deps): bump thiserror from 1.0.37 to 1.0.38 by @dependabot in #385
- build(deps): bump fixed from 1.20.0 to 1.21.0 by @dependabot in #399
- Initial cargo vet setup by @divergentdave in #398
- build(deps): bump serde from 1.0.151 to 1.0.152 by @dependabot in #403
- CI: Run supply-chain workflow on release branches by @divergentdave in #407
- Add
experimentalCargo feature by @divergentdave in #404 - Require codec traits on OutputShare/AggregateShare by @divergentdave in #383
- Fix bug in fixedpoint type occuring for certain vector lengths. by @MxmUrw in #409
- build(deps): bump base64 from 0.20.0 to 0.21.0 by @dependabot in #410
- Implement Field255 by @divergentdave in #408
- Bump cargo-vet to 0.3.1 by @bholley in #417
- Audit several smaller crates by @divergentdave in #416
- Speed up fpvec tests by @divergentdave in #415
- Document release branches in README by @tgeoghegan in #421
- Clippy fixes, 1.67 by @divergentdave in #425
- Generalize
CountVecintoSumVecby @cjpatton in #420 - Implement IdpfPoplar by @divergentdave in #414
- prng: Implement conversion of
Prngto new field type by @cjpatton in #429 - vdaf: Simplify trait bound on
Vdaf::PublicShareby @cjpatton in #430 - idpf: Remove "Poplar" from struct names by @cjpatton in #431
- field255: Implement
TryFrom<Field255>foru64by @cjpatton in #432 - poplar1: Stub out the code and revise types by @cjpatton in #433
- Regenerate supply-chain files with cargo-vet 0.3.1 by @divergentdave in #428
- build(deps): bump fixed from 1.21.0 to 1.22.1 by @dependabot in #435
- prng: Reduce internal buffer size by @cjpatton in #439
- Record audit of zipf 7.0.0 by @divergentdave in #444
- poplar1: Partially implement the VDAF by @cjpatton in #434
- poplar1: Add speed tests for sharding and preparation by @cjpatton in #443
- Allow
non_snake_caseat the function level by @tgeoghegan in #445 - Benchmark cleanup by @divergentdave in #446
- build(deps): bump serde_json from 1.0.91 to 1.0.92 by @dependabot in #447
- Reduce variance of Poplar1 benchmark by @divergentdave in #451
- Make IDPF trait bounds more flexible by @divergentdave in #452
- poplar1: Plumb the IDPF level through aggregation parameter by @cjpatton in #453
- build(deps): bump fixed from 1.22.1 to 1.23.0 by @dependabot in #457
- build(deps): bump serde_json from 1.0.92 to 1.0.93 by @dependabot in #458
- build(deps): bump once_cell from 1.17.0 to 1.17.1 by @dependabot in #463
- Add nonce to
Client::shard()by @cjpatton in #455 - Align domain separation with draft by @cjpatton in #456
- Implement PrgSha3 by @divergentdave in #471
- IDPF: Change byte order of packed control bits by @divergentdave in #462
- Poplar1 nonce updates by @divergentdave in #473
- Prio3: Add public share, replacing joint rand hint by @divergentdave in #472
- Cut over VDAFs and tests to PrgSha3 by @divergentdave in #475
- Documentation revisions by @divergentdave in #479
- Final updates for VDAF-04 by @divergentdave in #476
- Bump crate version to 0.11.0 by @divergentdave in #481
- Deprecate PrgAes128 by @divergentdave in #480
- Rename type parameters to SEED_SIZE by @divergentdave in #482
- Update branch table for 0.11 by @divergentdave in #484
New Contributors
Full Changelog: v0.10.0...v0.11.0