Hi Tom and Gary,
On latest cryptodev tree, I'm seeing the following self-test failure after I
built a kernel with the AMD CCP driver and crypto self-tests enabled, and booted
it on system with a Ryzen processor ("Threadripper 1950X"):
[ 4.378985] alg: aead: gcm-aes-ccp encryption test failed (wrong result) on test vector 2, cfg="two even aligned splits"
i.e., in some cases the AES-GCM implementation produces the wrong ciphertext
and/or authentication tag.
Is this is a known issue? When will it be fixed?
The potentially relevant bits of my Kconfig are:
CONFIG_CRYPTO_AES=y
CONFIG_CRYPTO_GCM=y
CONFIG_CRYPTO_DEV_CCP=y
CONFIG_CRYPTO_DEV_CCP_DD=y
CONFIG_CRYPTO_DEV_SP_CCP=y
CONFIG_CRYPTO_DEV_CCP_CRYPTO=y
CONFIG_CRYPTO_DEV_SP_PSP=y
# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_CRYPTO_MANAGER_EXTRA_TESTS=y
- Eric
On 7/2/19 11:06 AM, Eric Biggers wrote:
> Hi Tom and Gary,
>
> On latest cryptodev tree, I'm seeing the following self-test failure after I
> built a kernel with the AMD CCP driver and crypto self-tests enabled, and booted
> it on system with a Ryzen processor ("Threadripper 1950X"):
>
> [ 4.378985] alg: aead: gcm-aes-ccp encryption test failed (wrong result) on test vector 2, cfg="two even aligned splits"
>
> i.e., in some cases the AES-GCM implementation produces the wrong ciphertext
> and/or authentication tag.
>
> Is this is a known issue? When will it be fixed?
>
> The potentially relevant bits of my Kconfig are:
>
> CONFIG_CRYPTO_AES=y
> CONFIG_CRYPTO_GCM=y
> CONFIG_CRYPTO_DEV_CCP=y
> CONFIG_CRYPTO_DEV_CCP_DD=y
> CONFIG_CRYPTO_DEV_SP_CCP=y
> CONFIG_CRYPTO_DEV_CCP_CRYPTO=y
> CONFIG_CRYPTO_DEV_SP_PSP=y
> # CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
> CONFIG_DEBUG_KERNEL=y
> CONFIG_CRYPTO_MANAGER_EXTRA_TESTS=y
>
> - Eric
>
Yes, this is a known problem. We have no estimate on a fix at this time.
I need to light a fire under someone now.
grh