RFR: 8267125: AES Galois CounterMode (GCM) interleaved implementation using AVX512 + VAES instructions [v4]

Valerie Peng valeriep at openjdk.java.net
Thu Jul 15 22:55:13 UTC 2021


On Wed, 14 Jul 2021 21:02:01 GMT, Smita Kamath <svkamath at openjdk.org> wrote:

>> I would like to submit AES-GCM optimization for x86_64 architectures supporting AVX3+VAES (Evex encoded AES). This optimization interleaves AES and GHASH operations.
>> Performance gain of ~1.5x - 2x for message sizes 8k and above.
>
> Smita Kamath has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Updated AES-GCM intrinsic to match latest Java Code

src/java.base/share/classes/com/sun/crypto/provider/GaloisCounterMode.java line 992:

> 990:          */
> 991:         byte[] overlapDetection(byte[] in, int inOfs, byte[] out, int outOfs) {
> 992:             if (in == out && (!encryption || inOfs < outOfs)) {

So, we will always allocate an output buffer for decryption if in==out? Why just decryption? Update the javadoc for this method with the reason?

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

PR: https://git.openjdk.java.net/jdk/pull/4019



More information about the security-dev mailing list