RFR: 8326609: AES implementation with updates specified in FIPS 197

Shawn M Emery duke at openjdk.org
Tue Oct 7 21:53:10 UTC 2025


This is a draft PR for early review with the following intent:

i) This work is to replace the existing AES cipher under the Cryptix license with an Oracle version. 

ii) The lookup tables are employed for performance, but also for operating in constant time.

iii) Several blocks statements are flattened for optimization purposes.

Note: I have not seen the original Cryptix code, so please don't refer to the deltas, but rather provide references based on the new AESCrypt.java code itself.

Updates in this delta:
Phase 2: Optimization - SW
Phase 3: Optimization - HW
Fix round key ordering for inverse
Cleanup comments and style
Remove extraneous code
Create constant-time execution - including inverse multiplication Remove sensitive information - including temporary round key attributes

-------------

Commit messages:
 - Clear inverse mix column transform data from the heap
 - Fix code style remnants
 - Fix indentation - wrapping
 - Code cleanup - round 2
 - Merge with master branch
 - Code cleanup
 - Update copyright year
 - Optimizations for -Xint and -Xcomp modes with Mergestore technique
 - Remove unused variables
 - Reduce the number of object created - for performance
 - ... and 8 more: https://git.openjdk.org/jdk/compare/8c3ca024...5dc19778

Changes: https://git.openjdk.org/jdk/pull/26912/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26912&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8326609
  Stats: 1725 lines in 2 files changed: 409 ins; 340 del; 976 mod
  Patch: https://git.openjdk.org/jdk/pull/26912.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26912/head:pull/26912

PR: https://git.openjdk.org/jdk/pull/26912


More information about the security-dev mailing list