1187 Commits

Author SHA1 Message Date
Karolin Varner
7e8e502bca chore: Split constants from protocol.rs into own file 2025-06-24 14:01:31 +02:00
Karolin Varner
d81649c1d1 chore: Restructure imports in protocol.rs 2025-06-24 14:01:31 +02:00
Karolin Varner
da642186f2 chore: Move timing related thing out of protocol.rs 2025-06-24 14:01:31 +02:00
Karolin Varner
ad6d053015 fix: Missing imports (CI Failure on Main) (#663) 2025-06-24 12:35:43 +02:00
Karolin Varner
240a1f923d fix: Cargo test job from QC should not run on mac 2025-06-24 12:07:33 +02:00
Karolin Varner
a538dee0c3 fix: Broken QC workflow file
Rust toolchain issues; need to set the nightly toolchain correctly
2025-06-24 11:59:07 +02:00
Karolin Varner
08ea045325 fix: Prettier 2025-06-24 11:45:31 +02:00
Karolin Varner
6b61823255 fix: Missing imports 2025-06-24 11:25:05 +02:00
Karolin Varner
96ac01ff2e Add Benchmarks for Protocol and Primitives (#648) 2025-06-24 11:16:50 +02:00
Jan Winkelmann (keks)
811c1746c1 format Cargo.toml 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
91707cc430 Address feedback 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
73df0ceca7 Address feedback 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
9cc7a58ee7 Set adequate permissions to push benchmarks 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
5106ffd549 strictly format attr macros 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
7fc6fd2f52 format readme 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
77b50b70b1 address feedback 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
cf061bd0f5 workflows: use arch-specific dev shell 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
196d459a2b fix flake.nix: no more fenix 2025-06-23 16:39:22 +02:00
Jan Winkelmann (keks)
5097d9fce1 Add benchmarking for cryptographic primitives and protocol performance
This commit introduces two kinds of benchmarks:

1. Cryptographic Primitives. Measures the performance of all available
   implementations of cryptographic algorithms using traditional
   benchmarking. Uses criterion.
2. Protocol Runs. Measures the time each step in the protocol takes.
   Measured using a tracing-based approach.

The benchmarks are run on CI and an interactive visual overview is
written to the gh-pages branch. If a benchmark takes more than twice the
time than the reference commit (for PR: the main branch), the action
fails.
2025-06-23 16:39:22 +02:00
Karolin Varner
cdf6e8369f Fix Supply Chain CI (Version incompatibility issue) (#661) 2025-06-18 22:33:10 +02:00
Karolin Varner
d5eb996423 fix: CI failures due to older rustc version 2025-06-18 20:58:36 +02:00
Karolin Varner
6c49f38e29 Revert "Make the CI restart once cargo-vet exemptions for dependabot have been pushed (#658)"
This reverts commit e021b9f11d, reversing
changes made to d98815fa7f.
2025-06-18 19:42:30 +02:00
Karolin Varner
e021b9f11d Make the CI restart once cargo-vet exemptions for dependabot have been pushed (#658) 2025-06-17 13:38:18 +02:00
David Niehues
49f384c380 fix(CI+dependabot): adapt the supply-chain workflow for cargo-vet to work with dependabot, i.e. regenerating exemptions for dependabot and restart the CI afterwards 2025-06-12 12:07:51 +02:00
David Niehues
7e590dd30e fix(CI+dependabot): add instructions on how to set up a repository to work with the supply-chain+dependabot accomodations 2025-06-12 12:07:51 +02:00
Karolin Varner
d98815fa7f Revert "fix: make CI workflows run after pushing excemptions for carg… (#654) 2025-05-30 13:23:00 +02:00
Karolin Varner
dd105a4491 Revert "fix: make CI workflows run after pushing excemptions for cargo-vet (#652)"
This reverts commit bbd7e7bb72, reversing
changes made to db9d0b642b.
2025-05-30 13:15:37 +02:00
Karolin Varner
64ff326e14 feat(sha3+paper): add information on how SHAKE256 is used in rosenpass to the whitepaper (#653) 2025-05-23 13:32:05 +02:00
David Niehues
37e71a4051 feat(sha3+paper): add information on how SHAKE256 is used in rosenpass to the whitepaper 2025-05-22 15:11:13 +02:00
David Niehues
e90bc1b636 feat(sha+paper): Add reference for SHAKE256 to biblography 2025-05-22 15:10:53 +02:00
Karolin Varner
bbd7e7bb72 fix: make CI workflows run after pushing excemptions for cargo-vet (#652) 2025-05-19 11:27:14 +02:00
David Niehues
3d724f04d4 fix: make CI workflows run after pushing excemptions for cargo-vet
This commits changes the CI for dependabot PRs such that initially, only the exemptions for cargo vet are regenerated and pushed to the PR.
Only after that, all other workflows are triggered. This ensures that the CI result for dependabot PRs is properly presented on github.
2025-05-15 16:14:12 +02:00
Karolin Varner
db9d0b642b Dev/wucke13 nix maintenance (#640) 2025-05-09 18:32:44 +02:00
wucke13
50501f37fd chore: update versions in gen-ci script
There still is ambiguity between the script's output and the current CI
pipelines, usage not recommend.

Signed-off-by: wucke13 <wucke13+github@gmail.com>
2025-05-09 18:22:10 +02:00
wucke13
39f99fbfea feat: add cargo vet
It was missing from the fullEnv nativeBuildInputs. Also, reorder the
cargo subcommands in that list alphabetically.

Signed-off-by: wucke13 <wucke13+github@gmail.com>
2025-05-09 18:22:10 +02:00
wucke13
3ea1a824cc feat: add rosenpass MSRV check
This check requires a specific toolchain version, and to get that, we
introduce oxalica's rust-overlay.

Signed-off-by: wucke13 <wucke13+github@gmail.com>
2025-05-09 18:22:10 +02:00
wucke13
d496490916 fix: set crate MSRVs to a precise version
Before this change, the patch release was left open. This patch
pinpoints it exactly, down to the patch release.

Signed-off-by: wucke13 <wucke13+github@gmail.com>
2025-05-09 18:22:10 +02:00
wucke13
740489544d fix: remove fenix flake input
By now it is possible to use cargo-llvm-cov with the nixpkgs built-in
llvm tools, thus no need for a nightly rust with the llvm-tools-preview.
Therefore, fenix as a dependency is removed.

Signed-off-by: wucke13 <wucke13+github@gmail.com>
2025-05-09 18:22:10 +02:00
wucke13
22b980a61f chore: format everything
This implicates a change from nixpkgs-fmt to nixfmt. Nixfmt will become
the new standard on nix formatting, sanctioned by the nixpkgs. To verify
that these changes are purely in whitespace, but not semantic:

git diff --ignore-all-space -w HEAD^!

That will only show newline changes, make the diffing somewhat easier.

Signed-off-by: wucke13 <wucke13+github@gmail.com>
2025-05-09 18:22:07 +02:00
wucke13
a45812b2cd feat: add treefmt.nix setup
Add a treefmt setup for a single-entry point format-everything system.
To use it, simply run `nix fmt`. This will in term run nixfmt, prettier
and rustfmt.

Signed-off-by: wucke13 <wucke13+github@gmail.com>
2025-05-09 18:21:17 +02:00
Karolin Varner
1025de2c64 chore: Ignore rust advisory RUSTSEC-2023-0089 (#651) 2025-05-09 18:20:19 +02:00
Karolin Varner
b8e9519e26 chore: Ignore rust advisory RUSTSEC-2023-0089
error[unmaintained]: atomic-polyfill is unmaintained
   ┌─ /github/workspace/Cargo.lock:15:1
   │
15 │ atomic-polyfill 1.0.3 registry+https://github.com/rust-lang/crates.io-index
   │ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ unmaintained advisory detected
   │
   ├ ID: RUSTSEC-2023-0089
   ├ Advisory: https://rustsec.org/advisories/RUSTSEC-2023-0089
   ├ The author has archived the GitHub repository and mentions deprecation in
     project's
     [README](48e55c1666/README.md).

     ## Possible alternatives

      * [portable-atomic](https://crates.io/crates/portable-atomic)
   ├ Announcement: 48e55c1666
   ├ Solution: No safe upgrade is available!
   ├ atomic-polyfill v1.0.3
     └── heapless v0.7.17
         ├── aead v0.5.2
         │   └── chacha20poly1305 v0.10.1
         │       └── rosenpass-ciphers v0.1.0
         │           ├── rosenpass v0.3.0-dev
         │           │   ├── rosenpass-fuzzing v0.0.1
         │           │   └── rp v0.2.1
         │           ├── rosenpass-fuzzing v0.0.1 (*)
         │           └── rp v0.2.1 (*)
         └── postcard v1.1.1
             └── rosenpass-wireguard-broker v0.1.0
                 ├── rosenpass v0.3.0-dev (*)
                 └── rp v0.2.1 (*)
2025-05-09 18:15:55 +02:00
Karolin Varner
c3def9744f fix(ci+supply-chain+dependabot): Checkout correct branch in the supply chain checks for cargo-vet (#645) 2025-04-23 10:26:57 +02:00
David Niehues
e3d3584adb fix(ci+supply-chain+dependabot): Checkout correct branch in the supply chain checks for cargo-vet 2025-04-22 13:18:26 +02:00
Karolin Varner
a1982e0245 ci(cargo-vet): merge regeneration of exemptions for cargo-vet for dependabot into main cargo-vet job (#643) 2025-04-14 16:06:09 +02:00
David Niehues
4896cd6130 ci(cargo-vet): merge regeneration of exemptions for cargo-vet for dependabot into main cargo-vet job 2025-04-14 12:19:08 +02:00
Karolin Varner
9aab9d2d2a enable github workflow for creating crev-exemptions for dependabots to push changes to PR (#642) 2025-04-14 11:33:49 +02:00
David Niehues
108ca440fe enable github workflow for creating crev-exemptions for dependabots to push to the repository 2025-04-14 11:30:36 +02:00
Karolin Varner
03e408b7c2 ci(cargo-crev): Fix regeneration of cargo-crev-exemptions (#641) 2025-04-14 11:05:44 +02:00
David Niehues
67f387a190 ci(cargo-crev): Fix regeneration of cargo-crev-exemptions 2025-04-14 09:35:35 +02:00