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

Full hybrid support #40

Merged
merged 4 commits into from
Nov 11, 2021
Merged

Full hybrid support #40

merged 4 commits into from
Nov 11, 2021

Conversation

baentsch
Copy link
Member

@baentsch baentsch commented Nov 9, 2021

Fixes #3 :

  • Updates data structures and logic for hybrid keys to also support signatures
  • Implements hybrid signatures
  • Adds tests for hybrid signatures

Fixes #6 :
Fixes #7 :

  • Adds interoperability tests with oqs-openssl111 for X509 structures (keys, certs) for all supported key types

@bhess: Please note the changes as to how classic key/sig lengths get stored in the privkey and pubkey structures and how the comp_* keys are being used: There are some slight semantics changes aimed at re-using and retaining (most of) the hybrid KEM logic you added while also marshalling data for encoding (and consequent decoding).

@dstebila For now this code maintains & tests full interoperability with oqs-openssl. Once this code gets merged, my concern raised here is dropped and we could begin implementing open-quantum-safe/openssl#333 (and/or #39)

hybrid sig keygen added

adding classic sig length

complete hybrid sig support
@baentsch baentsch requested a review from bhess November 9, 2021 08:54
Copy link
Member

@bhess bhess left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I added a few comments and suggestions.

oqsprov/oqs_decode_der2key.c Outdated Show resolved Hide resolved
oqsprov/oqs_encode_key2any.c Show resolved Hide resolved
oqsprov/oqs_encode_key2any.c Outdated Show resolved Hide resolved
oqsprov/oqs_kmgmt.c Show resolved Hide resolved
oqsprov/oqs_kmgmt.c Show resolved Hide resolved
oqsprov/oqs_sig.c Show resolved Hide resolved
@baentsch baentsch requested a review from bhess November 10, 2021 11:11
tmp/p256_dilithium2_CA.crt Outdated Show resolved Hide resolved
@baentsch baentsch merged commit 84c687e into main Nov 11, 2021
@baentsch baentsch deleted the mb-hybridsigs branch November 11, 2021 08:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Implement interoperable X509 read/write Implement interoperable key gen & storage Add hybrid support
2 participants