crypto: testmgr - fix version number of RSA tests
authorlei he <helei.sig11@bytedance.com>
Fri, 24 Jun 2022 10:06:25 +0000 (18:06 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 30 Jun 2022 07:56:58 +0000 (15:56 +0800)
According to PKCS#1 standard, the 'otherPrimeInfos' field contains
the information for the additional primes r_3, ..., r_u, in order.
It shall be omitted if the version is 0 and shall contain at least
one instance of OtherPrimeInfo if the version is 1, see:
https://www.rfc-editor.org/rfc/rfc3447#page-44

Replace the version number '1' with 0, otherwise, some drivers may
not pass the run-time tests.

Signed-off-by: lei he <helei.sig11@bytedance.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/testmgr.h

index 4f3955ea40bf637a469d3acfb234678428695089..8e2dce86dd4838f7cc05a169bac497e7a938b676 100644 (file)
@@ -186,7 +186,7 @@ static const struct akcipher_testvec rsa_tv_template[] = {
 #ifndef CONFIG_CRYPTO_FIPS
        .key =
        "\x30\x81\x9A" /* sequence of 154 bytes */
-       "\x02\x01\x01" /* version - integer of 1 byte */
+       "\x02\x01\x00" /* version - integer of 1 byte */
        "\x02\x41" /* modulus - integer of 65 bytes */
        "\x00\xAA\x36\xAB\xCE\x88\xAC\xFD\xFF\x55\x52\x3C\x7F\xC4\x52\x3F"
        "\x90\xEF\xA0\x0D\xF3\x77\x4A\x25\x9F\x2E\x62\xB4\xC5\xD9\x9C\xB5"
@@ -216,7 +216,7 @@ static const struct akcipher_testvec rsa_tv_template[] = {
        }, {
        .key =
        "\x30\x82\x01\x1D" /* sequence of 285 bytes */
-       "\x02\x01\x01" /* version - integer of 1 byte */
+       "\x02\x01\x00" /* version - integer of 1 byte */
        "\x02\x81\x81" /* modulus - integer of 129 bytes */
        "\x00\xBB\xF8\x2F\x09\x06\x82\xCE\x9C\x23\x38\xAC\x2B\x9D\xA8\x71"
        "\xF7\x36\x8D\x07\xEE\xD4\x10\x43\xA4\x40\xD6\xB6\xF0\x74\x54\xF5"
@@ -260,7 +260,7 @@ static const struct akcipher_testvec rsa_tv_template[] = {
 #endif
        .key =
        "\x30\x82\x02\x20" /* sequence of 544 bytes */
-       "\x02\x01\x01" /* version - integer of 1 byte */
+       "\x02\x01\x00" /* version - integer of 1 byte */
        "\x02\x82\x01\x01\x00" /* modulus - integer of 256 bytes */
        "\xDB\x10\x1A\xC2\xA3\xF1\xDC\xFF\x13\x6B\xED\x44\xDF\xF0\x02\x6D"
        "\x13\xC7\x88\xDA\x70\x6B\x54\xF1\xE8\x27\xDC\xC3\x0F\x99\x6A\xFA"