-
Notifications
You must be signed in to change notification settings - Fork 121
Comparing changes
Open a pull request
base repository: aws/aws-lc
base: main
head repository: aws/aws-lc
compare: fips-2024-09-27
- 13 commits
- 36 files changed
- 8 contributors
Commits on Sep 28, 2024
-
### Description of changes: * Set version to AWS-LC-FIPS v3.0.0 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for 8b7a937 - Browse repository at this point
Copy the full SHA 8b7a937View commit details
Commits on Oct 2, 2024
-
Pin the version of aws-lc-verification to a known working version (#1896
) ### Description of changes: Previously this script always used the head of aws-lc-verification which will have diverged from this branch since the code on the FIPS 2024 branch is a snapshot of AWS-LC. I picked awslabs/aws-lc-verification@b19e155 since it's the most recent commit and known to be working. ### Testing: This will hopefully get the CI to pass. By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for 70ef71f - Browse repository at this point
Copy the full SHA 70ef71fView commit details
Commits on Oct 7, 2024
-
Use aws-lc-verification branch spefically for the 2024 release, updat…
…e submodules with depth 1 (#1904) ### Description of changes: Talked with @pennyannn and they setup a specific branch in the verification repo so now that branch should always work with this 2024 FIPS branch and stay in sync with it. ### Testing: Ran locally and verified it got the right branch and is a little faster. By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for ebe060e - Browse repository at this point
Copy the full SHA ebe060eView commit details -
ML-KEM FIPS 203 destruction of intermediate values (#1907)
FIPS 203 Section 3.3 requires destruction of intermediate values. AWS-LC ML-KEM implementation allocates intermediate values only on stack, so this destruction seems a bit silly, but we do it anyway for compliance.
Configuration menu - View commit details
-
Copy full SHA for d49b1e1 - Browse repository at this point
Copy the full SHA d49b1e1View commit details
Commits on Oct 18, 2024
-
[fips-2024-09-27] Cherry-pick PR 1924, KBKDF kdk length indicator che…
Configuration menu - View commit details
-
Copy full SHA for 343968f - Browse repository at this point
Copy the full SHA 343968fView commit details
Commits on Oct 22, 2024
-
[fips-2024-09-27] Align X509 PARTIAL_CHAIN behavior with 1.1.1 (#1929)
Some consumers noticed that a behavior difference between AWS-LC and OpenSSL when the trust store contains certificates that are issued by other certificates that are also in the trust store. A common example of this would be the trust store containing both the intermediate and the root for the cert chain (`leaf -> intermediate -> root`). The default settings of AWS-LC and OpenSSL require `root` to be self signed for the chain to be verified. Many TLS implementations set the `X509_V_FLAG_PARTIAL_CHAIN` flag however, which allows non self signed certificates to be trusted in the trust store. When `X509_V_FLAG_PARTIAL_CHAIN` is set, OpenSSL 1.1.1 will only verify leaf and intermediate, since intermediate is a trusted certificate. However, AWS-LC will continue building a certificate chain and include root within the chain of trust. This causes a behavioral difference with `X509_STORE_CTX_get0_chain`, where AWS-LC will return all 3 certificates (`leaf -> intermediate -> root`) and OpenSSL 1.1.1 will only return the first two (`leaf -> intermediate `). Our upstream forked a bit before OpenSSL 1.0.2, so we don't have the new behavior. This described behavioral difference was introduced in openssl/openssl@d9b8b89 (along with many others), but the commit introduces too many backwards incompatible changes for us to take as a whole. This subtle difference was due to [OpenSSL 1.1.1 continuously checking for trust while the chain's being established. The search for the next valid cert breaks early as soon as a valid chain has been built. Our current behavior builds the chain with all possible certs first and only breaks the loop if the final cert in the chain is self-signed. We can inherit this part of 1.1.1's new behavior to fix this issue. ### Call-outs: I don't believe this really changes our X509 chain building or verification by much. We're only adding an additional check for trust while the chain is being established and the final chain still needs to go through the same building/verification process that exists in AWS-LC today. ### Testing: Specific test for new behavior in `X509_V_FLAG_PARTIAL_CHAIN` By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license. (cherry picked from commit 9fbfa70) By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for 3d72a6c - Browse repository at this point
Copy the full SHA 3d72a6cView commit details
Commits on Oct 23, 2024
-
Remove retries on PCT failure in EC and RSA key generation. (#1944)
Configuration menu - View commit details
-
Copy full SHA for 993087f - Browse repository at this point
Copy the full SHA 993087fView commit details
Commits on Oct 24, 2024
-
cherry-pick: HKDF, HKDF_expand, and PBKDF Truncated SHA2-512 (#1946) (#…
…1947) ### Description of changes: * ACVP testing for SHA2-512/224 and SHA2-512/256 for PBKDF and KDA: HKDF. * Update service indicator for PBKDF, HKDF, and HKDF_expand (KBKDF feedback mode) to support SHA2-512/224 and SHA2-512/256 as approved algorithms. (cherry picked from commit d93711c) By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for b6490a0 - Browse repository at this point
Copy the full SHA b6490a0View commit details
Commits on Nov 5, 2024
-
ML-KEM keygen Pairwise Consistency Test (#1969)
This change implements the ML-KEM Pairwise Consistency Test (PCT) for key generation as required by FIPS 140-3 Implementation Guidance. This effectively triples the runtime of key generation.
Configuration menu - View commit details
-
Copy full SHA for f3a7ced - Browse repository at this point
Copy the full SHA f3a7cedView commit details
Commits on Nov 6, 2024
-
Cherry-pick of #1968 Per 10.3.A, Ed25519 needs a PCT. Only implement for FIPS build type and make it a simple sign-verify cycle. Abort on failure.
Configuration menu - View commit details
-
Copy full SHA for dc6b2cb - Browse repository at this point
Copy the full SHA dc6b2cbView commit details
Commits on Dec 10, 2024
-
[FIPS] Add AWS-LC-FIPS v3.0 policy docs (#2044)
### Issues: Addresses CryptoAlg-2802 ### Description of changes: Update FIPS.md: * Include v3.0.0 draft security policies. * Add links to v2.0 security policies on NIST website. By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for 8ff5cce - Browse repository at this point
Copy the full SHA 8ff5cceView commit details
Commits on Jan 15, 2025
-
Remove jent_read_entropy_safe usage from AWS-LC (fips-2024-09-27) (#2108
) ### Issues: `P186365975` ### Description of changes: These changes remove any usage of jent_read_entropy_safe function from AWS-LC. This function has an implementation vulnerability described [here](https://github.com/smuellerDD/jitterentropy-library/blob/c62c88645f27716f78e1267a182cff40e96081c2/SECURITY.md#2024-12-30). jent_read_entropy_safe is now unused in our codebase, however, it is still present in the Jitter code. These changes are outside the FIPS boundary and do not impact the FIPS integrity hash. ### Call-outs: Point out areas that need special attention or support during the review process. Discuss architecture or design changes. ### Testing: How is this change tested (unit tests, fuzz tests, etc.)? Are there any testing steps to be verified by the reviewer? By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for 7b62d56 - Browse repository at this point
Copy the full SHA 7b62d56View commit details
Commits on Jan 22, 2025
-
Only need libunwind for testing (#2131)
### Notice This change does not modify the FIPS module boundary. This change only avoids having CMake check for the availability of `Libunwind` when no tests are being built. ### Description of changes: * Libunwind is only needed when building tests. * See same change made for main: #2093 By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.
Configuration menu - View commit details
-
Copy full SHA for 190be06 - Browse repository at this point
Copy the full SHA 190be06View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff main...fips-2024-09-27