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

Run cryptofuzz against the PSA API #8200

Open
gilles-peskine-arm opened this issue Sep 13, 2023 · 0 comments
Open

Run cryptofuzz against the PSA API #8200

gilles-peskine-arm opened this issue Sep 13, 2023 · 0 comments
Labels
component-crypto Crypto primitives and low-level interfaces enhancement size-l Estimated task size: large (2w+)

Comments

@gilles-peskine-arm
Copy link
Contributor

This is an epic-level task. The overall goal is to integrate the PSA crypto API into cryptofuzz and arrange for OSS-Fuzz to run that.

  1. Familiarization
  2. Add a modifier to the cryptofuzz backend for mbedtls, so that it will either dispatch to the legacy API or to PSA. See guidance from the author of cryptofuzz.
  3. Implement at least one algorithm in cryptofuzz with PSA (hashes are likely the best candidate).
  4. Ensure that the way OSS-Fuzz runs cryptofuzz does pick up the PSA code paths (I'm not sure if there's any change to do there).
  5. Continue adding PSA code paths until the whole API is covered (insofar as it's within the scope of Cryptofuzz).

Guido (author of Cryptofuzz) can help with the Cryptofuzz integration:

once you submit a rough draft I can take it from there.

@gilles-peskine-arm gilles-peskine-arm added enhancement component-crypto Crypto primitives and low-level interfaces size-l Estimated task size: large (2w+) labels Sep 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component-crypto Crypto primitives and low-level interfaces enhancement size-l Estimated task size: large (2w+)
Projects
Status: Mbed TLS 4.0 MUST
Status: Implementation in progress
Development

No branches or pull requests

1 participant