Re: Need help with failling gcm_base(ctr,ghash-generic) selftest

From: Corentin Labbe
Date: Fri Aug 02 2019 - 01:23:00 EST


On Fri, Aug 02, 2019 at 12:24:04AM +0000, Pascal Van Leeuwen wrote:
> > -----Original Message-----
> > From: linux-crypto-owner@xxxxxxxxxxxxxxx <linux-crypto-owner@xxxxxxxxxxxxxxx> On Behalf Of
> > Corentin Labbe
> > Sent: Thursday, August 1, 2019 9:43 PM
> > To: herbert@xxxxxxxxxxxxxxxxxxx; linux-crypto@xxxxxxxxxxxxxxx
> > Cc: linux-kernel@xxxxxxxxxxxxxxx
> > Subject: Need help with failling gcm_base(ctr,ghash-generic) selftest
> >
> > Hello
> >
> > I am writing the Allwinner sun8i-ce driver and when running tcrypt I got
> > [ 30.201739] alg: aead: gcm_base(ctr-aes-sun8i-ce,ghash-generic) decryption failed on test
> > vector 3; expected_error=0, actual_error=-74, cfg=\"random: may_sleep use_digest
> > src_divs=[100.0%@+2614] dst_divs=[5.90%@alignmask+3015, 60.56%@+3996, 17.92%@+865,
> > 15.62%@+10]\"
> > or
> >
> The decryption reports only an -EBADMSG here, which means the decryption itself went
> fine, but the authentication tag mismatched.
>
>
> > [ 148.613537] alg: aead: gcm_base(ctr-aes-sun8i-ce,ghash-generic) encryption test failed
> > (wrong result) on test vector 2, cfg=\"random: may_sleep use_final src_divs=[100.0%@+0]
> > iv_offset=20\"
> >
> Can't say for sure, but considering the decrypt error, this is most likely just a
> mismatch on the appended authentication tag.
>
> > Since ctr-aes-sun8i-ce is passing the ctr(aes) selftest, I dont understand what could be
> > wrong.
> >
> That is possible, as this appears to be a problem with the authentication part,
> not the encryption part. So possibly a problem with the way you setup the
> authentication key (which is actually derived from the encryption key, but I don't
> know if your hardware does this autonomously, mine doesn't) and/or operation?
>

But since my driver is just a skcipher, I dont understand why I should care about any aead part, right ?