RFR: 8255557: Decouple GCM from CipherCore [v4]
Anthony Scarpino
ascarpino at openjdk.java.net
Wed Jun 2 18:06:40 UTC 2021
On Thu, 20 May 2021 23:27:51 GMT, Valerie Peng <valeriep at openjdk.org> wrote:
>> Anthony Scarpino has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Fix perf problem by reorganizing doLastBlock()
>
> src/java.base/share/classes/com/sun/crypto/provider/GaloisCounterMode.java line 1317:
>
>> 1315: * If tagOfs = 0, 'in' contains only the tag
>> 1316: * if tagOfs = blockSize, there is no data in 'in' and all the tag
>> 1317: * is in ibuffer
>
> Is this correct? mergeBlock() returns the number of used bytes from 'in', if no data is in 'in' and all the tag is from 'ibuffer', tagOfs should equal to -tagLenBytes. The next line should be moved up as the tag position gradually shifts from 'in' toward 'ibuffer'. The tagOfs for the next line should be -tagLenBytes < tagOfs < 0?
Yeah, I reworkded it
> src/java.base/share/classes/com/sun/crypto/provider/GaloisCounterMode.java line 1401:
>
>> 1399: ShortBufferException {
>> 1400: GHASH save = null;
>> 1401:
>
> Should do ArrayUtil.nullAndBoundsCheck() on 'in'?
that was done in engineDoFinal
-------------
PR: https://git.openjdk.java.net/jdk/pull/4072
More information about the security-dev
mailing list