[openssl-commits] [openssl] master update

Andy Polyakov appro at openssl.org
Mon Sep 11 20:18:52 UTC 2017


The branch master has been updated
       via  cfb5bc69cf2e5d627dbb4f5c3abf3e49d65419d6 (commit)
       via  c1ea7477926402ffe8ab21f7d9fa993c6148799f (commit)
       via  b290bac18278832a11790d2cf5df085ffd3cdb69 (commit)
       via  f9f3e175336bd5d6ae109c103b1646efd6b85c6e (commit)
      from  f70c22eb23763c6dce050293cc1b9a0a234d72b2 (commit)


- Log -----------------------------------------------------------------
commit cfb5bc69cf2e5d627dbb4f5c3abf3e49d65419d6
Author: Andy Polyakov <appro at openssl.org>
Date:   Sun Sep 10 21:43:48 2017 +0200

    rsa/rsa_pmeth.c: recognize SHA3 as supported RSA digest.
    
    Reviewed-by: Richard Levitte <levitte at openssl.org>

commit c1ea7477926402ffe8ab21f7d9fa993c6148799f
Author: Andy Polyakov <appro at openssl.org>
Date:   Sun Sep 10 21:42:43 2017 +0200

    evp/m_sha3.c: wire SHA3 to rsaEncryption.
    
    Reviewed-by: Richard Levitte <levitte at openssl.org>

commit b290bac18278832a11790d2cf5df085ffd3cdb69
Author: Andy Polyakov <appro at openssl.org>
Date:   Sun Sep 10 21:41:14 2017 +0200

    objects/obj_xref.txt: cross-reference SHA3 and rsaEncryption.
    
    Reviewed-by: Richard Levitte <levitte at openssl.org>

commit f9f3e175336bd5d6ae109c103b1646efd6b85c6e
Author: Andy Polyakov <appro at openssl.org>
Date:   Sun Sep 10 21:38:32 2017 +0200

    objects/objects.txt: fix RSA-SHA3-284 typo.
    
    Reviewed-by: Richard Levitte <levitte at openssl.org>

-----------------------------------------------------------------------

Summary of changes:
 crypto/evp/m_sha3.c         | 4 ++--
 crypto/objects/obj_dat.h    | 8 ++++----
 crypto/objects/obj_mac.num  | 2 +-
 crypto/objects/obj_xref.h   | 8 ++++++++
 crypto/objects/obj_xref.txt | 4 ++++
 crypto/objects/objects.txt  | 2 +-
 crypto/rsa/rsa_pmeth.c      | 4 ++++
 include/openssl/obj_mac.h   | 8 ++++----
 8 files changed, 28 insertions(+), 12 deletions(-)

diff --git a/crypto/evp/m_sha3.c b/crypto/evp/m_sha3.c
index 9691d93..cf902e7 100644
--- a/crypto/evp/m_sha3.c
+++ b/crypto/evp/m_sha3.c
@@ -139,9 +139,9 @@ const EVP_MD *EVP_sha3_##bitlen(void)           \
 {                                               \
     static const EVP_MD sha3_##bitlen##_md = {  \
         NID_sha3_##bitlen,                      \
-        0,                                      \
+        NID_RSA_SHA3_##bitlen,                  \
         bitlen / 8,                             \
-        0,                                      \
+        EVP_MD_FLAG_DIGALGID_ABSENT,            \
         sha3_init,                              \
         sha3_update,                            \
         sha3_final,                             \
diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h
index 4c3c9d5..7f7b57f 100644
--- a/crypto/objects/obj_dat.h
+++ b/crypto/objects/obj_dat.h
@@ -1008,7 +1008,7 @@ static const unsigned char so[7222] = {
     0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0C,  /* [ 7122] OBJ_ecdsa_with_SHA3_512 */
     0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0D,  /* [ 7131] OBJ_RSA_SHA3_224 */
     0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0E,  /* [ 7140] OBJ_RSA_SHA3_256 */
-    0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0F,  /* [ 7149] OBJ_RSA_SHA3_284 */
+    0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x0F,  /* [ 7149] OBJ_RSA_SHA3_384 */
     0x60,0x86,0x48,0x01,0x65,0x03,0x04,0x03,0x10,  /* [ 7158] OBJ_RSA_SHA3_512 */
     0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x25,  /* [ 7167] OBJ_aria_128_ccm */
     0x2A,0x83,0x1A,0x8C,0x9A,0x6E,0x01,0x01,0x26,  /* [ 7176] OBJ_aria_192_ccm */
@@ -2138,7 +2138,7 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = {
     {"id-ecdsa-with-sha3-512", "ecdsa_with_SHA3-512", NID_ecdsa_with_SHA3_512, 9, &so[7122]},
     {"id-rsassa-pkcs1-v1_5-with-sha3-224", "RSA-SHA3-224", NID_RSA_SHA3_224, 9, &so[7131]},
     {"id-rsassa-pkcs1-v1_5-with-sha3-256", "RSA-SHA3-256", NID_RSA_SHA3_256, 9, &so[7140]},
-    {"id-rsassa-pkcs1-v1_5-with-sha3-384", "RSA-SHA3-284", NID_RSA_SHA3_284, 9, &so[7149]},
+    {"id-rsassa-pkcs1-v1_5-with-sha3-384", "RSA-SHA3-384", NID_RSA_SHA3_384, 9, &so[7149]},
     {"id-rsassa-pkcs1-v1_5-with-sha3-512", "RSA-SHA3-512", NID_RSA_SHA3_512, 9, &so[7158]},
     {"ARIA-128-CCM", "aria-128-ccm", NID_aria_128_ccm, 9, &so[7167]},
     {"ARIA-192-CCM", "aria-192-ccm", NID_aria_192_ccm, 9, &so[7176]},
@@ -3393,7 +3393,7 @@ static const unsigned int ln_objs[NUM_LN] = {
        2,    /* "RSA Data Security, Inc. PKCS" */
     1116,    /* "RSA-SHA3-224" */
     1117,    /* "RSA-SHA3-256" */
-    1118,    /* "RSA-SHA3-284" */
+    1118,    /* "RSA-SHA3-384" */
     1119,    /* "RSA-SHA3-512" */
      188,    /* "S/MIME" */
      167,    /* "S/MIME Capabilities" */
@@ -5212,7 +5212,7 @@ static const unsigned int obj_objs[NUM_OBJ] = {
     1115,    /* OBJ_ecdsa_with_SHA3_512          2 16 840 1 101 3 4 3 12 */
     1116,    /* OBJ_RSA_SHA3_224                 2 16 840 1 101 3 4 3 13 */
     1117,    /* OBJ_RSA_SHA3_256                 2 16 840 1 101 3 4 3 14 */
-    1118,    /* OBJ_RSA_SHA3_284                 2 16 840 1 101 3 4 3 15 */
+    1118,    /* OBJ_RSA_SHA3_384                 2 16 840 1 101 3 4 3 15 */
     1119,    /* OBJ_RSA_SHA3_512                 2 16 840 1 101 3 4 3 16 */
       71,    /* OBJ_netscape_cert_type           2 16 840 1 113730 1 1 */
       72,    /* OBJ_netscape_base_url            2 16 840 1 113730 1 2 */
diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num
index b0b3d4d..84208ef 100644
--- a/crypto/objects/obj_mac.num
+++ b/crypto/objects/obj_mac.num
@@ -1115,7 +1115,7 @@ ecdsa_with_SHA3_384		1114
 ecdsa_with_SHA3_512		1115
 RSA_SHA3_224		1116
 RSA_SHA3_256		1117
-RSA_SHA3_284		1118
+RSA_SHA3_384		1118
 RSA_SHA3_512		1119
 aria_128_ccm		1120
 aria_192_ccm		1121
diff --git a/crypto/objects/obj_xref.h b/crypto/objects/obj_xref.h
index 075907b..fe5c006 100644
--- a/crypto/objects/obj_xref.h
+++ b/crypto/objects/obj_xref.h
@@ -74,6 +74,10 @@ static const nid_triple sigoid_srt[] = {
     {NID_id_tc26_signwithdigest_gost3410_2012_512, NID_id_GostR3411_2012_512,
      NID_id_GostR3410_2012_512},
     {NID_ED25519, NID_undef, NID_ED25519},
+    {NID_RSA_SHA3_224, NID_sha3_224, NID_rsaEncryption},
+    {NID_RSA_SHA3_256, NID_sha3_256, NID_rsaEncryption},
+    {NID_RSA_SHA3_384, NID_sha3_384, NID_rsaEncryption},
+    {NID_RSA_SHA3_512, NID_sha3_512, NID_rsaEncryption},
 };
 
 static const nid_triple *const sigoid_srt_xref[] = {
@@ -116,4 +120,8 @@ static const nid_triple *const sigoid_srt_xref[] = {
     &sigoid_srt[28],
     &sigoid_srt[40],
     &sigoid_srt[41],
+    &sigoid_srt[43],
+    &sigoid_srt[44],
+    &sigoid_srt[45],
+    &sigoid_srt[46],
 };
diff --git a/crypto/objects/obj_xref.txt b/crypto/objects/obj_xref.txt
index c36695c..c8dee7b 100644
--- a/crypto/objects/obj_xref.txt
+++ b/crypto/objects/obj_xref.txt
@@ -13,6 +13,10 @@ sha512WithRSAEncryption	sha512	rsaEncryption
 sha224WithRSAEncryption	sha224	rsaEncryption
 mdc2WithRSA		mdc2	rsaEncryption
 ripemd160WithRSA	ripemd160 rsaEncryption
+RSA_SHA3_224		sha3_224 rsaEncryption
+RSA_SHA3_256		sha3_256 rsaEncryption
+RSA_SHA3_384		sha3_384 rsaEncryption
+RSA_SHA3_512		sha3_512 rsaEncryption
 # For PSS the digest algorithm can vary and depends on the included
 # AlgorithmIdentifier. The digest "undef" indicates the public key
 # method should handle this explicitly.
diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt
index 185a7a7..841e9ab 100644
--- a/crypto/objects/objects.txt
+++ b/crypto/objects/objects.txt
@@ -974,7 +974,7 @@ sigAlgs 11	: id-ecdsa-with-sha3-384	: ecdsa_with_SHA3-384
 sigAlgs 12	: id-ecdsa-with-sha3-512	: ecdsa_with_SHA3-512
 sigAlgs 13	: id-rsassa-pkcs1-v1_5-with-sha3-224	: RSA-SHA3-224
 sigAlgs 14	: id-rsassa-pkcs1-v1_5-with-sha3-256	: RSA-SHA3-256
-sigAlgs 15	: id-rsassa-pkcs1-v1_5-with-sha3-384	: RSA-SHA3-284
+sigAlgs 15	: id-rsassa-pkcs1-v1_5-with-sha3-384	: RSA-SHA3-384
 sigAlgs 16	: id-rsassa-pkcs1-v1_5-with-sha3-512	: RSA-SHA3-512
 
 # Hold instruction CRL entry extension
diff --git a/crypto/rsa/rsa_pmeth.c b/crypto/rsa/rsa_pmeth.c
index 886ce27..a23d428 100644
--- a/crypto/rsa/rsa_pmeth.c
+++ b/crypto/rsa/rsa_pmeth.c
@@ -376,6 +376,10 @@ static int check_padding_md(const EVP_MD *md, int padding)
         case NID_md4:
         case NID_mdc2:
         case NID_ripemd160:
+        case NID_sha3_224:
+        case NID_sha3_256:
+        case NID_sha3_384:
+        case NID_sha3_512:
             return 1;
 
         default:
diff --git a/include/openssl/obj_mac.h b/include/openssl/obj_mac.h
index d4f1a5c..d028af9 100644
--- a/include/openssl/obj_mac.h
+++ b/include/openssl/obj_mac.h
@@ -2976,10 +2976,10 @@
 #define NID_RSA_SHA3_256                1117
 #define OBJ_RSA_SHA3_256                OBJ_sigAlgs,14L
 
-#define SN_RSA_SHA3_284         "id-rsassa-pkcs1-v1_5-with-sha3-384"
-#define LN_RSA_SHA3_284         "RSA-SHA3-284"
-#define NID_RSA_SHA3_284                1118
-#define OBJ_RSA_SHA3_284                OBJ_sigAlgs,15L
+#define SN_RSA_SHA3_384         "id-rsassa-pkcs1-v1_5-with-sha3-384"
+#define LN_RSA_SHA3_384         "RSA-SHA3-384"
+#define NID_RSA_SHA3_384                1118
+#define OBJ_RSA_SHA3_384                OBJ_sigAlgs,15L
 
 #define SN_RSA_SHA3_512         "id-rsassa-pkcs1-v1_5-with-sha3-512"
 #define LN_RSA_SHA3_512         "RSA-SHA3-512"


More information about the openssl-commits mailing list