OSDN Git Service

crypto: rsa - allow only odd e and restrict value in FIPS mode
authorMahmoud Adam <mngyadam@amazon.com>
Tue, 13 Jun 2023 16:17:31 +0000 (16:17 +0000)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 23 Jun 2023 08:15:36 +0000 (16:15 +0800)
commit6637e11e4ad22ff03183da0dbd36d65c98b81cf7
tree90bdebeb49e1658dfdacc3069fdc36c7fc99d931
parentba51738fa78972fb446b49b6b9ddda4058a272e0
crypto: rsa - allow only odd e and restrict value in FIPS mode

check if rsa public exponent is odd and check its value is between
2^16 < e < 2^256.

FIPS 186-5 DSS (page 35)[1] specify that:
1. The public exponent e shall be selected with the following constraints:
  (a) The public verification exponent e shall be selected prior to
  generating the primes, p and q, and the private signature exponent
  d.
  (b) The exponent e shall be an odd positive integer such that:
   2^16 < e < 2^256.

[1] https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf

Signed-off-by: Mahmoud Adam <mngyadam@amazon.com>
Reviewed-by: Stephan Mueller <smueller@chronox.de>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/rsa.c