drivers/crypto/atmel-sha204a.c | 6 ++++++ 1 file changed, 6 insertions(+)
According to the review by Bill Cox [1], the Atmel SHA204A random number
generator produces random numbers with very low entropy.
Set the lowest possible entropy for this chip just to be safe.
[1] https://www.metzdowd.com/pipermail/cryptography/2014-December/023858.html
Fixes: da001fb651b00e1d ("crypto: atmel-i2c - add support for SHA204A random number generator")
Signed-off-by: Marek Behún <kabel@kernel.org>
---
drivers/crypto/atmel-sha204a.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/crypto/atmel-sha204a.c b/drivers/crypto/atmel-sha204a.c
index 75bebec2c757..0fcf4a39de27 100644
--- a/drivers/crypto/atmel-sha204a.c
+++ b/drivers/crypto/atmel-sha204a.c
@@ -163,6 +163,12 @@ static int atmel_sha204a_probe(struct i2c_client *client)
i2c_priv->hwrng.name = dev_name(&client->dev);
i2c_priv->hwrng.read = atmel_sha204a_rng_read;
+ /*
+ * According to review by Bill Cox [1], this HWRNG has very low entropy.
+ * [1] https://www.metzdowd.com/pipermail/cryptography/2014-December/023858.html
+ */
+ i2c_priv->hwrng.quality = 1;
+
ret = devm_hwrng_register(&client->dev, &i2c_priv->hwrng);
if (ret)
dev_warn(&client->dev, "failed to register RNG (%d)\n", ret);
--
2.49.0
On Tue, Apr 22, 2025 at 11:57:18AM +0200, Marek Behún wrote:
> According to the review by Bill Cox [1], the Atmel SHA204A random number
> generator produces random numbers with very low entropy.
>
> Set the lowest possible entropy for this chip just to be safe.
>
> [1] https://www.metzdowd.com/pipermail/cryptography/2014-December/023858.html
>
> Fixes: da001fb651b00e1d ("crypto: atmel-i2c - add support for SHA204A random number generator")
> Signed-off-by: Marek Behún <kabel@kernel.org>
> ---
> drivers/crypto/atmel-sha204a.c | 6 ++++++
> 1 file changed, 6 insertions(+)
Patch appiled. Thanks.
--
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
On Tue, Apr 22, 2025 at 11:57 AM Marek Behún <kabel@kernel.org> wrote:
> According to the review by Bill Cox [1], the Atmel SHA204A random number
> generator produces random numbers with very low entropy.
>
> Set the lowest possible entropy for this chip just to be safe.
>
> [1] https://www.metzdowd.com/pipermail/cryptography/2014-December/023858.html
>
> Fixes: da001fb651b00e1d ("crypto: atmel-i2c - add support for SHA204A random number generator")
> Signed-off-by: Marek Behún <kabel@kernel.org>
Ugh
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
I would even tag:
Cc: stable@vger.kernel.org
on this, but it's up to Herbert.
Yours,
Linus Walleij
On Tue, 22 Apr 2025 at 11:57, Marek Behún <kabel@kernel.org> wrote:
>
> According to the review by Bill Cox [1], the Atmel SHA204A random number
> generator produces random numbers with very low entropy.
>
> Set the lowest possible entropy for this chip just to be safe.
>
> [1] https://www.metzdowd.com/pipermail/cryptography/2014-December/023858.html
>
> Fixes: da001fb651b00e1d ("crypto: atmel-i2c - add support for SHA204A random number generator")
> Signed-off-by: Marek Behún <kabel@kernel.org>
> ---
> drivers/crypto/atmel-sha204a.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
Wow, that is terrible
Acked-by: Ard Biesheuvel <ardb@kernel.org>
> diff --git a/drivers/crypto/atmel-sha204a.c b/drivers/crypto/atmel-sha204a.c
> index 75bebec2c757..0fcf4a39de27 100644
> --- a/drivers/crypto/atmel-sha204a.c
> +++ b/drivers/crypto/atmel-sha204a.c
> @@ -163,6 +163,12 @@ static int atmel_sha204a_probe(struct i2c_client *client)
> i2c_priv->hwrng.name = dev_name(&client->dev);
> i2c_priv->hwrng.read = atmel_sha204a_rng_read;
>
> + /*
> + * According to review by Bill Cox [1], this HWRNG has very low entropy.
> + * [1] https://www.metzdowd.com/pipermail/cryptography/2014-December/023858.html
> + */
> + i2c_priv->hwrng.quality = 1;
> +
> ret = devm_hwrng_register(&client->dev, &i2c_priv->hwrng);
> if (ret)
> dev_warn(&client->dev, "failed to register RNG (%d)\n", ret);
> --
> 2.49.0
>
© 2016 - 2026 Red Hat, Inc.