[openssl] master update
beldmit at gmail.com
beldmit at gmail.com
Mon Oct 5 09:15:26 UTC 2020
The branch master has been updated
via 856198aac784fc78b4588d2b409cec9f4ecf812d (commit)
from 6514dee7264d30be1ab9ab07f9798071184e7b7a (commit)
- Log -----------------------------------------------------------------
commit 856198aac784fc78b4588d2b409cec9f4ecf812d
Author: Dmitry Belyavskiy <beldmit at gmail.com>
Date: Fri Feb 22 18:36:00 2019 +0300
Some OIDs used in Russian X.509 certificates.
OBJ_OGRNIP denotes a specific legal status of the certificate owner.
OBJ_classSignTool* denotes a level of certification of the software
created the certificate.
http://www.garant.ru/products/ipo/prime/doc/70033464/ is the relevant
link (in Russian).
Reviewed-by: Paul Dale <paul.dale at oracle.com>
(Merged from https://github.com/openssl/openssl/pull/8309)
-----------------------------------------------------------------------
Summary of changes:
crypto/objects/obj_dat.h | 50 +++++++++++++++++++++++++++---
crypto/objects/obj_mac.num | 8 +++++
crypto/objects/objects.txt | 8 +++++
fuzz/oids.txt | 8 +++++
include/openssl/obj_mac.h | 40 ++++++++++++++++++++++++
test/recipes/25-test_rusext_data/grfc.msb | 4 +--
test/recipes/25-test_rusext_data/grfc.utf8 | 4 +--
7 files changed, 113 insertions(+), 9 deletions(-)
diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h
index 0abd2a8d72..440fd1d6af 100644
--- a/crypto/objects/obj_dat.h
+++ b/crypto/objects/obj_dat.h
@@ -10,7 +10,7 @@
*/
/* Serialized OID's */
-static const unsigned char so[7901] = {
+static const unsigned char so[7947] = {
0x2A,0x86,0x48,0x86,0xF7,0x0D, /* [ 0] OBJ_rsadsi */
0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01, /* [ 6] OBJ_pkcs */
0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x02, /* [ 13] OBJ_md2 */
@@ -1093,9 +1093,17 @@ static const unsigned char so[7901] = {
0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x11, /* [ 7876] OBJ_id_it_caCerts */
0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x12, /* [ 7884] OBJ_id_it_rootCaKeyUpdate */
0x2B,0x06,0x01,0x05,0x05,0x07,0x04,0x13, /* [ 7892] OBJ_id_it_certReqTemplate */
+ 0x2A,0x85,0x03,0x64,0x05, /* [ 7900] OBJ_OGRNIP */
+ 0x2A,0x85,0x03,0x64,0x71, /* [ 7905] OBJ_classSignTool */
+ 0x2A,0x85,0x03,0x64,0x71,0x01, /* [ 7910] OBJ_classSignToolKC1 */
+ 0x2A,0x85,0x03,0x64,0x71,0x02, /* [ 7916] OBJ_classSignToolKC2 */
+ 0x2A,0x85,0x03,0x64,0x71,0x03, /* [ 7922] OBJ_classSignToolKC3 */
+ 0x2A,0x85,0x03,0x64,0x71,0x04, /* [ 7928] OBJ_classSignToolKB1 */
+ 0x2A,0x85,0x03,0x64,0x71,0x05, /* [ 7934] OBJ_classSignToolKB2 */
+ 0x2A,0x85,0x03,0x64,0x71,0x06, /* [ 7940] OBJ_classSignToolKA1 */
};
-#define NUM_NID 1226
+#define NUM_NID 1234
static const ASN1_OBJECT nid_objs[NUM_NID] = {
{"UNDEF", "undefined", NID_undef},
{"rsadsi", "RSA Data Security, Inc.", NID_rsadsi, 6, &so[0]},
@@ -2323,9 +2331,17 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = {
{"id-it-caCerts", "id-it-caCerts", NID_id_it_caCerts, 8, &so[7876]},
{"id-it-rootCaKeyUpdate", "id-it-rootCaKeyUpdate", NID_id_it_rootCaKeyUpdate, 8, &so[7884]},
{"id-it-certReqTemplate", "id-it-certReqTemplate", NID_id_it_certReqTemplate, 8, &so[7892]},
+ {"OGRNIP", "OGRNIP", NID_OGRNIP, 5, &so[7900]},
+ {"classSignTool", "Class of Signing Tool", NID_classSignTool, 5, &so[7905]},
+ {"classSignToolKC1", "Class of Signing Tool KC1", NID_classSignToolKC1, 6, &so[7910]},
+ {"classSignToolKC2", "Class of Signing Tool KC2", NID_classSignToolKC2, 6, &so[7916]},
+ {"classSignToolKC3", "Class of Signing Tool KC3", NID_classSignToolKC3, 6, &so[7922]},
+ {"classSignToolKB1", "Class of Signing Tool KB1", NID_classSignToolKB1, 6, &so[7928]},
+ {"classSignToolKB2", "Class of Signing Tool KB2", NID_classSignToolKB2, 6, &so[7934]},
+ {"classSignToolKA1", "Class of Signing Tool KA1", NID_classSignToolKA1, 6, &so[7940]},
};
-#define NUM_SN 1217
+#define NUM_SN 1225
static const unsigned int sn_objs[NUM_SN] = {
364, /* "AD_DVCS" */
419, /* "AES-128-CBC" */
@@ -2526,6 +2542,7 @@ static const unsigned int sn_objs[NUM_SN] = {
178, /* "OCSP" */
180, /* "OCSPSigning" */
1005, /* "OGRN" */
+ 1226, /* "OGRNIP" */
379, /* "ORG" */
18, /* "OU" */
749, /* "Oakley-EC2N-3" */
@@ -2704,6 +2721,13 @@ static const unsigned int sn_objs[NUM_SN] = {
883, /* "certificateRevocationList" */
54, /* "challengePassword" */
407, /* "characteristic-two-field" */
+ 1227, /* "classSignTool" */
+ 1233, /* "classSignToolKA1" */
+ 1231, /* "classSignToolKB1" */
+ 1232, /* "classSignToolKB2" */
+ 1228, /* "classSignToolKC1" */
+ 1229, /* "classSignToolKC2" */
+ 1230, /* "classSignToolKC3" */
395, /* "clearance" */
130, /* "clientAuth" */
1222, /* "cmKGA" */
@@ -3546,7 +3570,7 @@ static const unsigned int sn_objs[NUM_SN] = {
1093, /* "x509ExtAdmission" */
};
-#define NUM_LN 1217
+#define NUM_LN 1225
static const unsigned int ln_objs[NUM_LN] = {
363, /* "AD Time Stamping" */
405, /* "ANSI X9.62" */
@@ -3568,6 +3592,13 @@ static const unsigned int ln_objs[NUM_LN] = {
951, /* "CT Precertificate SCTs" */
953, /* "CT Precertificate Signer" */
1222, /* "Certificate Management Key Generation Authority" */
+ 1227, /* "Class of Signing Tool" */
+ 1233, /* "Class of Signing Tool KA1" */
+ 1231, /* "Class of Signing Tool KB1" */
+ 1232, /* "Class of Signing Tool KB2" */
+ 1228, /* "Class of Signing Tool KC1" */
+ 1229, /* "Class of Signing Tool KC2" */
+ 1230, /* "Class of Signing Tool KC3" */
131, /* "Code Signing" */
1024, /* "Ctrl/Provision WAP Termination" */
1023, /* "Ctrl/provision WAP Access" */
@@ -3688,6 +3719,7 @@ static const unsigned int ln_objs[NUM_LN] = {
371, /* "OCSP Service Locator" */
180, /* "OCSP Signing" */
1005, /* "OGRN" */
+ 1226, /* "OGRNIP" */
161, /* "PBES2" */
69, /* "PBKDF2" */
162, /* "PBMAC1" */
@@ -4767,7 +4799,7 @@ static const unsigned int ln_objs[NUM_LN] = {
125, /* "zlib compression" */
};
-#define NUM_OBJ 1088
+#define NUM_OBJ 1096
static const unsigned int obj_objs[NUM_OBJ] = {
0, /* OBJ_undef 0 */
181, /* OBJ_iso 1 */
@@ -5021,8 +5053,10 @@ static const unsigned int obj_objs[NUM_OBJ] = {
974, /* OBJ_id_tc26 1 2 643 7 1 */
1005, /* OBJ_OGRN 1 2 643 100 1 */
1006, /* OBJ_SNILS 1 2 643 100 3 */
+ 1226, /* OBJ_OGRNIP 1 2 643 100 5 */
1007, /* OBJ_subjectSignTool 1 2 643 100 111 */
1008, /* OBJ_issuerSignTool 1 2 643 100 112 */
+ 1227, /* OBJ_classSignTool 1 2 643 100 113 */
184, /* OBJ_X9_57 1 2 840 10040 */
405, /* OBJ_ansi_X9_62 1 2 840 10045 */
389, /* OBJ_Enterprises 1 3 6 1 4 1 */
@@ -5111,6 +5145,12 @@ static const unsigned int obj_objs[NUM_OBJ] = {
818, /* OBJ_id_GostR3410_94DH 1 2 643 2 2 99 */
977, /* OBJ_id_tc26_algorithms 1 2 643 7 1 1 */
994, /* OBJ_id_tc26_constants 1 2 643 7 1 2 */
+ 1228, /* OBJ_classSignToolKC1 1 2 643 100 113 1 */
+ 1229, /* OBJ_classSignToolKC2 1 2 643 100 113 2 */
+ 1230, /* OBJ_classSignToolKC3 1 2 643 100 113 3 */
+ 1231, /* OBJ_classSignToolKB1 1 2 643 100 113 4 */
+ 1232, /* OBJ_classSignToolKB2 1 2 643 100 113 5 */
+ 1233, /* OBJ_classSignToolKA1 1 2 643 100 113 6 */
1, /* OBJ_rsadsi 1 2 840 113549 */
185, /* OBJ_X9cm 1 2 840 10040 4 */
1031, /* OBJ_id_pkinit 1 3 6 1 5 2 3 */
diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num
index fb40663977..7d1d70ea28 100644
--- a/crypto/objects/obj_mac.num
+++ b/crypto/objects/obj_mac.num
@@ -1223,3 +1223,11 @@ cmKGA 1222
id_it_caCerts 1223
id_it_rootCaKeyUpdate 1224
id_it_certReqTemplate 1225
+OGRNIP 1226
+classSignTool 1227
+classSignToolKC1 1228
+classSignToolKC2 1229
+classSignToolKC3 1230
+classSignToolKB1 1231
+classSignToolKB2 1232
+classSignToolKA1 1233
diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt
index 4aa6fc5854..8aef90d952 100644
--- a/crypto/objects/objects.txt
+++ b/crypto/objects/objects.txt
@@ -1406,8 +1406,16 @@ id-tc26-gost-28147-constants 1 : id-tc26-gost-28147-param-Z : GOST 28147-89 TC26
member-body 643 3 131 1 1 : INN : INN
member-body 643 100 1 : OGRN : OGRN
member-body 643 100 3 : SNILS : SNILS
+member-body 643 100 5 : OGRNIP : OGRNIP
member-body 643 100 111 : subjectSignTool : Signing Tool of Subject
member-body 643 100 112 : issuerSignTool : Signing Tool of Issuer
+member-body 643 100 113 : classSignTool : Class of Signing Tool
+member-body 643 100 113 1 : classSignToolKC1 : Class of Signing Tool KC1
+member-body 643 100 113 2 : classSignToolKC2 : Class of Signing Tool KC2
+member-body 643 100 113 3 : classSignToolKC3 : Class of Signing Tool KC3
+member-body 643 100 113 4 : classSignToolKB1 : Class of Signing Tool KB1
+member-body 643 100 113 5 : classSignToolKB2 : Class of Signing Tool KB2
+member-body 643 100 113 6 : classSignToolKA1 : Class of Signing Tool KA1
#GOST R34.13-2015 Grasshopper "Kuznechik"
: kuznyechik-ecb
diff --git a/fuzz/oids.txt b/fuzz/oids.txt
index 2b4cb110ce..efbcaa416c 100644
--- a/fuzz/oids.txt
+++ b/fuzz/oids.txt
@@ -1080,3 +1080,11 @@ OBJ_cmKGA="\x2B\x06\x01\x05\x05\x07\x03\x20"
OBJ_id_it_caCerts="\x2B\x06\x01\x05\x05\x07\x04\x11"
OBJ_id_it_rootCaKeyUpdate="\x2B\x06\x01\x05\x05\x07\x04\x12"
OBJ_id_it_certReqTemplate="\x2B\x06\x01\x05\x05\x07\x04\x13"
+OBJ_OGRNIP="\x2A\x85\x03\x64\x05"
+OBJ_classSignTool="\x2A\x85\x03\x64\x71"
+OBJ_classSignToolKC1="\x2A\x85\x03\x64\x71\x01"
+OBJ_classSignToolKC2="\x2A\x85\x03\x64\x71\x02"
+OBJ_classSignToolKC3="\x2A\x85\x03\x64\x71\x03"
+OBJ_classSignToolKB1="\x2A\x85\x03\x64\x71\x04"
+OBJ_classSignToolKB2="\x2A\x85\x03\x64\x71\x05"
+OBJ_classSignToolKA1="\x2A\x85\x03\x64\x71\x06"
diff --git a/include/openssl/obj_mac.h b/include/openssl/obj_mac.h
index 18fd0ec451..5af0024989 100644
--- a/include/openssl/obj_mac.h
+++ b/include/openssl/obj_mac.h
@@ -4452,6 +4452,11 @@
#define NID_SNILS 1006
#define OBJ_SNILS OBJ_member_body,643L,100L,3L
+#define SN_OGRNIP "OGRNIP"
+#define LN_OGRNIP "OGRNIP"
+#define NID_OGRNIP 1226
+#define OBJ_OGRNIP OBJ_member_body,643L,100L,5L
+
#define SN_subjectSignTool "subjectSignTool"
#define LN_subjectSignTool "Signing Tool of Subject"
#define NID_subjectSignTool 1007
@@ -4462,6 +4467,41 @@
#define NID_issuerSignTool 1008
#define OBJ_issuerSignTool OBJ_member_body,643L,100L,112L
+#define SN_classSignTool "classSignTool"
+#define LN_classSignTool "Class of Signing Tool"
+#define NID_classSignTool 1227
+#define OBJ_classSignTool OBJ_member_body,643L,100L,113L
+
+#define SN_classSignToolKC1 "classSignToolKC1"
+#define LN_classSignToolKC1 "Class of Signing Tool KC1"
+#define NID_classSignToolKC1 1228
+#define OBJ_classSignToolKC1 OBJ_member_body,643L,100L,113L,1L
+
+#define SN_classSignToolKC2 "classSignToolKC2"
+#define LN_classSignToolKC2 "Class of Signing Tool KC2"
+#define NID_classSignToolKC2 1229
+#define OBJ_classSignToolKC2 OBJ_member_body,643L,100L,113L,2L
+
+#define SN_classSignToolKC3 "classSignToolKC3"
+#define LN_classSignToolKC3 "Class of Signing Tool KC3"
+#define NID_classSignToolKC3 1230
+#define OBJ_classSignToolKC3 OBJ_member_body,643L,100L,113L,3L
+
+#define SN_classSignToolKB1 "classSignToolKB1"
+#define LN_classSignToolKB1 "Class of Signing Tool KB1"
+#define NID_classSignToolKB1 1231
+#define OBJ_classSignToolKB1 OBJ_member_body,643L,100L,113L,4L
+
+#define SN_classSignToolKB2 "classSignToolKB2"
+#define LN_classSignToolKB2 "Class of Signing Tool KB2"
+#define NID_classSignToolKB2 1232
+#define OBJ_classSignToolKB2 OBJ_member_body,643L,100L,113L,5L
+
+#define SN_classSignToolKA1 "classSignToolKA1"
+#define LN_classSignToolKA1 "Class of Signing Tool KA1"
+#define NID_classSignToolKA1 1233
+#define OBJ_classSignToolKA1 OBJ_member_body,643L,100L,113L,6L
+
#define SN_kuznyechik_ecb "kuznyechik-ecb"
#define NID_kuznyechik_ecb 1012
diff --git a/test/recipes/25-test_rusext_data/grfc.msb b/test/recipes/25-test_rusext_data/grfc.msb
index 68ebff6274..5184e4ff7a 100644
--- a/test/recipes/25-test_rusext_data/grfc.msb
+++ b/test/recipes/25-test_rusext_data/grfc.msb
@@ -26,8 +26,8 @@ Certificate:
1.3.6.1.4.1.311.21.1:
...
X509v3 Certificate Policies:
- Policy: 1.2.643.100.113.1
- Policy: 1.2.643.100.113.2
+ Policy: Class of Signing Tool KC1
+ Policy: Class of Signing Tool KC2
Policy: X509v3 Any Policy
Signature Algorithm: GOST R 34.11-94 with GOST R 34.10-2001
Signature Value:
diff --git a/test/recipes/25-test_rusext_data/grfc.utf8 b/test/recipes/25-test_rusext_data/grfc.utf8
index ebca5d6b59..a709dcf67c 100644
--- a/test/recipes/25-test_rusext_data/grfc.utf8
+++ b/test/recipes/25-test_rusext_data/grfc.utf8
@@ -26,8 +26,8 @@ Certificate:
1.3.6.1.4.1.311.21.1:
...
X509v3 Certificate Policies:
- Policy: 1.2.643.100.113.1
- Policy: 1.2.643.100.113.2
+ Policy: Class of Signing Tool KC1
+ Policy: Class of Signing Tool KC2
Policy: X509v3 Any Policy
Signature Algorithm: GOST R 34.11-94 with GOST R 34.10-2001
Signature Value:
More information about the openssl-commits
mailing list