Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test/Benchmark Crypto Primitives Tracking Issue #112

Open
6 tasks
Tracked by #140
bhgomes opened this issue Jun 21, 2022 · 2 comments · May be fixed by #208
Open
6 tasks
Tracked by #140

Test/Benchmark Crypto Primitives Tracking Issue #112

bhgomes opened this issue Jun 21, 2022 · 2 comments · May be fixed by #208
Assignees
Labels
A-performance Area: Performance-related Issues and PRs A-testing Area: Testing-related Issues and PRs C-tracking-issue Category: A tracking issue for a set of related issues P-medium Priority: Medium

Comments

@bhgomes
Copy link
Contributor

bhgomes commented Jun 21, 2022

For each cryptographic primitive abstraction, we should have a testing and benchmarking framework for all of its implementations.

For example, consider the signature scheme APIs where we have a signature generation function and a signature verification function. Both of those functions should have a generic native performance benchmark framework and a constraint measuring framework, along with a randomized testing suite that confirms that all valid signatures are verifiable (and all invalid ones are not).

Requirements

For the cryptographic primitive abstraction we want the following (as library code that can be called by concrete implementations):

  1. Correctness Test
  2. Native Performance Benchmark
  3. Circuit Constraint Measurement

For the concrete implementations, we want to have actual code that runs those frameworks executable by the following:

  1. Test: cargo test --release
  2. Benchmark: cargo bench + wasm-pack test
  3. Constraint Measurement: cargo run --release --bin measure

Primitives

  • Signature
  • Encryption
  • Permutation
  • Accumulator
  • Key-Agreement Scheme
  • Password Hashing
@bhgomes
Copy link
Contributor Author

bhgomes commented Jun 21, 2022

Related to #95.

@bhgomes bhgomes pinned this issue Jun 21, 2022
@bhgomes bhgomes added this to the v0.6.1 milestone Jun 21, 2022
@bhgomes bhgomes unpinned this issue Jun 21, 2022
@bhgomes bhgomes added A-performance Area: Performance-related Issues and PRs A-testing Area: Testing-related Issues and PRs C-tracking-issue Category: A tracking issue for a set of related issues P-medium Priority: Medium labels Jul 6, 2022
@bhgomes bhgomes assigned missac213 and unassigned tsunrise and BoyuanFeng Jul 11, 2022
@bhgomes bhgomes modified the milestones: v0.6.1, v0.6.2 Jul 14, 2022
@bhgomes bhgomes assigned SupremoUGH and unassigned missac213 Jul 20, 2022
@bhgomes
Copy link
Contributor Author

bhgomes commented Jul 21, 2022

@SupremoUGH SupremoUGH linked a pull request Aug 19, 2022 that will close this issue
19 tasks
@bhgomes bhgomes removed this from the v0.6.1 milestone Feb 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-performance Area: Performance-related Issues and PRs A-testing Area: Testing-related Issues and PRs C-tracking-issue Category: A tracking issue for a set of related issues P-medium Priority: Medium
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants