Edvard Fagerholm
7d80488798
ed25519: avoid split-scalar canonical checks ( #24 )
...
The triple-base verifier splits b into zero-extended 128-bit halves, so b_lo and b_hi are already canonical. Add a crate-private unchecked constructor and use it for that internal AVX2 path.
Benchmark notes:
- Ran this repository's Criterion benchmark program, benches/bench.rs, filtering to Single Verification, pinned to CPU 4 with 1s warmup, 2s measurement, and sample size 10.
- local_verify_zebra estimate was 19.996 us, with 95% CI 19.862..20.077 us.
- master measured 20.051 us, with 95% CI 19.938..20.134 us, so this branch was about 0.27% faster in that run.
2026-06-08 13:02:22 -04:00
Yihau Chen
d5aa796046
ci: add dependabot.yml ( #23 )
2026-06-05 10:23:47 +08:00
Yihau Chen
4413a1284a
ci: check each feature individually ( #18 )
...
* ci: check each feature individually
* fix test all targets
* Update ristretto.rs
* Update lizard_ristretto.rs
---------
Co-authored-by: zz-sol <allaboutshop10@163.com>
2026-05-20 10:23:03 +08:00
zz-sol
154b58b3f4
[ed25519] downgrade rand_core ( #21 )
...
* downgrade rand_core
* Update bench.rs
* remove `try_from_rng`
2026-05-18 21:50:26 -04:00
Sam Kim
ed4a212bcb
[solana-bn254-syscall] Add solana-bn254-syscall crate ( #13 )
...
* add `solana-bn254-syscall` crate
* use `Validate::Yes` for `G1::deserialize_with_mode`
* fix crate name
* inherit dependencies from workspace
* update edition to 2021
* remove unnecessary `is_on_curve` check
* add `#[inline(always)]`
* make `PodG1` and `PodG2` pub(crate)
* remove unnecessary `is_on_curve` check
* remove custom logic for legacy versions
* `convert_endianness` -> `swap_endianness`
* simplify `swap_endianness`
* update function return types to arrays instead of vecs
* copy over docs
* update cargo lock
* copy over unit tests for serialization
* clean up docs for the syscall implementation functions
* Apply suggestions from code review
Co-authored-by: Stanislav Ladyzhenskiy <LStan@users.noreply.github.com>
* Update syscall/bn254-syscall/src/multiplication.rs
Co-authored-by: Stanislav Ladyzhenskiy <LStan@users.noreply.github.com>
* cargo lock
* remove `all-features` and `rustdoc-args`
* Apply suggestions from code review
Co-authored-by: Stanislav Ladyzhenskiy <LStan@users.noreply.github.com>
* Update syscall/bn254-syscall/Cargo.toml
Co-authored-by: Stanislav Ladyzhenskiy <LStan@users.noreply.github.com>
* remove `include = ...`
---------
Co-authored-by: Stanislav Ladyzhenskiy <LStan@users.noreply.github.com>
2026-05-19 08:56:06 +09:00
Yihau Chen
7170a1147d
ci: replace app-id with client-id ( #20 )
2026-05-14 10:25:08 +08:00
zz-sol
1b728159eb
impl zeroize for signing key ( #16 )
2026-05-13 18:11:16 -04:00
Yihau Chen
3a141c3fe3
ci: update release pipeline ( #15 )
2026-05-01 08:56:59 -04:00
Sam Kim
09198923bb
Add workspace.package information and do minor clean-up ( #14 )
...
* remove README.md in the syscall directory
* use workspace dependency in `bls12-381`
* add `workspace.package` information
* use 2021 edition for bls12-381
* inherit workspace.package for `ed25519-pokos`
* cargo fmt
2026-04-26 10:11:05 +09:00
zz-sol
cbee436037
[chore] remove unused features and downgrade to stable deps ( #12 )
...
* remove unnecessary features
* downgrade repos and remove rc/pre release
2026-04-22 20:23:12 -04:00
Sam Kim
77b39b268d
[bls12-381-syscall] Add solana-bls12-381-syscall crate ( #11 )
...
* add `bls12-381-syscall` crate
* add benchmark check in the CI
* cargo fmt
* remove 16 pair bench since the maximum bound is set to 8
2026-04-22 09:33:15 +09:00
zz-sol
1384fe1040
[chore] ci for crate release ( #7 )
...
* refactor and merge curve and ed crates
* fmt
* ci
* fmt again
* ci
* Update bench.rs
* fix ubuntu
* CI for crate release
* Update README.md
2026-04-15 08:44:33 -04:00
zz-sol
0f7379cc05
[feat] ed25519-pokos: Proof of Knowledge of Seed (POKOS) for Ed25519 ( #10 )
...
* init pokos
* fix soundness bug
* update doc
* fix
* simplification
* refactor
* add docs
* clean up
* ci
* Update experimental/ed25519-pokos/readme.md
Co-authored-by: Sam Kim <skim13@cs.stanford.edu>
---------
Co-authored-by: Sam Kim <skim13@cs.stanford.edu>
2026-04-08 10:24:32 -04:00
zz-sol
bccf7e13c0
[feat] impl legacy dalek verification method for ed25519 ( #8 )
...
* Initial commit
* skeleton
* refactor and merge curve and ed crates
* fmt
* ci
* fmt again
* ci
* Update bench.rs
* fix ubuntu
* implement dalek api
* clean up
2026-03-31 07:46:24 -04:00
zz-sol
b801651332
refactor cargo toml to use worksapce ( #9 )
2026-03-30 08:48:31 -04:00
zz-sol
1587b4c24f
refactor and merge curve and ed crates ( #6 )
...
* refactor and merge curve and ed crates
* fmt
* ci
* fmt again
* ci
* Update bench.rs
* fix ubuntu
2026-03-26 08:09:10 -04:00
Sam Kim
8024e4ed31
move all curve25519 related crates into curve25519 directory ( #5 )
2026-03-24 07:42:07 -04:00
zz-sol
e56e48a473
integrate heea ( #4 )
...
* Initial commit
* skeleton
* integrate heea
* ci
* fix nits
* Update signing_key.rs
2026-03-23 08:18:33 -04:00
zz-sol
5e70ebe267
integrate cuda accelerator for curve25519 ( #3 )
...
* integrate cuda
* CI
2026-03-18 15:33:47 -04:00
zz-sol
45af346e81
integrate curve25519 related crates ( #2 )
...
* wip
* fix ci
* fmt
* Update crate descriptions in README.md
2026-03-13 17:49:11 -04:00
zz-sol
7518f90e7a
Skeleton for cryptography repo ( #1 )
...
* Initial commit
* skeleton
2026-03-07 15:52:28 -05:00
Yihau Chen
3249e44d14
Initial commit
2026-03-03 12:06:10 +08:00