Skip to content

Comments

KDF: Add configuration options to disable many of the KDF algorithms.#29576

Closed
slontis wants to merge 1 commit intoopenssl:masterfrom
slontis:configure_kdfs
Closed

KDF: Add configuration options to disable many of the KDF algorithms.#29576
slontis wants to merge 1 commit intoopenssl:masterfrom
slontis:configure_kdfs

Conversation

@slontis
Copy link
Member

@slontis slontis commented Jan 8, 2026

This includes KDF's for ss,x963,hmac-drbg,KB,KRB5,PVK,SNMP,SSH and X942.

Checklist
  • documentation is added or updated
  • tests are added or updated

@slontis slontis requested a review from quarckster as a code owner January 8, 2026 04:54
@slontis slontis added branch: master Applies to master branch approval: review pending This pull request needs review by a committer extended tests Run extended tests in CI labels Jan 8, 2026
@github-actions github-actions bot added the severity: fips change The pull request changes FIPS provider sources label Jan 8, 2026
@t8m t8m added triaged: feature The issue/pr requests/adds a feature tests: present The PR has suitable tests present labels Jan 8, 2026
@t8m
Copy link
Member

t8m commented Jan 8, 2026

Would it be possible to add a commit marked with DROP that will switch the run-checker-daily to be run on PR to see if all the new no- options work?

@slontis
Copy link
Member Author

slontis commented Jan 8, 2026

I tested this by manually configuring each test one at a time and building and testing for each option so it should be good.
Note we also run the CI with 'no-bulk' which will run all of them.
For the SSKDF/X963KDF cases I manually tested the combinations of options also.

@slontis
Copy link
Member Author

slontis commented Jan 13, 2026

@t8m Added the commit to trigger the CI and it somehow picked up a issue and it now passes, I will drop this commit from the PR now that it is tested.

@slontis
Copy link
Member Author

slontis commented Jan 13, 2026

rebased and dropped the temporary run-daily-checker


### enable-lms

Enable Leighton-Micali Signatures (LMS) support.
Copy link
Member

Choose a reason for hiding this comment

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

The text here being deleted is unfortuate - rationalising the enable-{algorithm} stuff makes sense - but then we have no note or comment on lms which should remain.

We probably should have a clear note as to why each thing we have disabled by default is disabled - and that too could go in the enable-{algorithm} area.

But then again is this valuable enough a comment - we don't really explain why. Maybe just some generic text on "use at your own risk" if you choose to enable something we have off by default?

Copy link
Member Author

Choose a reason for hiding this comment

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

There is no 'risk' for LMS as it only does the verify, which is completely safe. If we did sign then that comment would be valid.
Most algorithms have an associated pod file so I am not seeing the point of the description in INSTALL.md.

Copy link
Member Author

Choose a reason for hiding this comment

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

I didnt even realise there was a no-{alg} section until I looked for scrypt, so we had 2 styles going on here..

Copy link
Member

Choose a reason for hiding this comment

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

There is no 'risk' for LMS as it only does the verify, which is completely safe.

You miss the point being made - LMS as an algorithm itself has issues because of the operational requirements for signature implementations. Those operational requirements are what make the algorithm itself much less acceptable for general use for many.

It is not enabled by default - and noting why in a clearer manner would make sense. It appeared to be losing some information on that - but I also think we haven't made it clear in the docs / comments as to why it isn't enabled - and I think for anything we have turned off by default we really should have more documentation for our users to look at before they go turning on non-default options.

t-j-h
t-j-h previously approved these changes Jan 13, 2026
Copy link
Member

@t-j-h t-j-h left a comment

Choose a reason for hiding this comment

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

Approved with or without addressing the comment ...

@slontis
Copy link
Member Author

slontis commented Jan 13, 2026

This PR does not deal with some more common KDF's. I may do other PR's at some point later.
It was motivated by people adding new additional KDF PR's that are probably optional for many users.

@slontis slontis mentioned this pull request Jan 13, 2026
2 tasks
paulidale
paulidale previously approved these changes Jan 14, 2026
@paulidale paulidale added approval: done This pull request has the required number of approvals and removed approval: review pending This pull request needs review by a committer labels Jan 14, 2026
@openssl-machine openssl-machine added approval: ready to merge The 24 hour grace period has passed, ready to merge and removed approval: done This pull request has the required number of approvals labels Jan 15, 2026
@openssl-machine
Copy link
Collaborator

This pull request is ready to merge

@slontis slontis dismissed stale reviews from paulidale and t-j-h via 7625eb1 January 19, 2026 03:13
@slontis
Copy link
Member Author

slontis commented Jan 19, 2026

No need for a re-review, CHANGES.md had a merge conflict.

This includes KDF's for ss,x963,hmac-drbg,KB,KRB5,PVK,SNMP,SSH and X942.
SSKDF/X963KDF Changes: Modify code to handle algorithms being disabled via configuration options.
@slontis
Copy link
Member Author

slontis commented Jan 19, 2026

Collapsed PR down to one commit with no changes.

openssl-machine pushed a commit that referenced this pull request Jan 19, 2026
This includes KDF's for ss,x963,hmac-drbg,KB,KRB5,PVK,SNMP,SSH and X942.
SSKDF/X963KDF Changes: Modify code to handle algorithms being disabled via configuration options.

Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from #29576)
@slontis
Copy link
Member Author

slontis commented Jan 19, 2026

Thanks for reviewing. merged to master.

@slontis slontis closed this Jan 19, 2026
esyr pushed a commit to esyr/openssl that referenced this pull request Jan 19, 2026
This includes KDF's for ss,x963,hmac-drbg,KB,KRB5,PVK,SNMP,SSH and X942.
SSKDF/X963KDF Changes: Modify code to handle algorithms being disabled via configuration options.

Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
(Merged from openssl#29576)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approval: ready to merge The 24 hour grace period has passed, ready to merge branch: master Applies to master branch extended tests Run extended tests in CI severity: fips change The pull request changes FIPS provider sources tests: present The PR has suitable tests present triaged: feature The issue/pr requests/adds a feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants