One-Step Key Derivation Method with KMAC #4121
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As mentioned in PR #4119, this pull request introduces the One-Step Key Derivation Method (KDM) of SP800-56Cr2 Section 4 using KMAC.
Previously, the One-Step KDM was defined in SP800-56Ar2. However, with the revision SP800-56Ar3, it has been moved to SP800-56Cr2. To reflect this change, I have updated comments and internal interfaces accordingly. The public API and external interfaces, including module names, remain unchanged.
Additionally, this pull request includes a KMAC option for the one-step Key Derivation Function (KDF), which is utilized by the Ounsworth Key Encapsulation Mechanism (KEM) combiner. Also, I added the test vectors I got for the Ounsworth PR. These include tests for the KMAC option and some for SHA-3 instances, which were not yet covered.