From ad16671d49208ea8dcc79613e14fe6148daf959b Mon Sep 17 00:00:00 2001 From: Dmitry Belyavskiy Date: Mon, 30 Mar 2020 14:29:10 +0300 Subject: [PATCH] GOST cipher names adjustment The erroneously introduced names grasshopper-* replaced with kuznyechik-* according to official algorithm name translation. Too long symbolic names replaced with human-enterable ones. Also the mechanism of deprecating names in objects.txt is implemented Reviewed-by: Richard Levitte Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/11440) --- Configurations/unix-Makefile.tmpl | 1 + crypto/objects/obj_compat.h | 46 +++++++++++++ crypto/objects/obj_dat.h | 96 +++++++++++++-------------- crypto/objects/obj_mac.num | 24 +++---- crypto/objects/objects.txt | 24 +++---- fuzz/oids.txt | 12 ++-- include/openssl/obj_mac.h | 106 +++++++++++++++++++++--------- 7 files changed, 201 insertions(+), 108 deletions(-) create mode 100644 crypto/objects/obj_compat.h diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl index a35ce10caf..12f0269828 100644 --- a/Configurations/unix-Makefile.tmpl +++ b/Configurations/unix-Makefile.tmpl @@ -983,6 +983,7 @@ generate_crypto_objects: crypto/objects/obj_mac.num \ crypto/objects/obj_xref.txt \ > crypto/objects/obj_xref.h ) + ( cd $(SRCDIR); cat crypto/objects/obj_compat.h >> include/openssl/obj_mac.h ) generate_crypto_conf: ( cd $(SRCDIR); $(PERL) crypto/conf/keysets.pl \ diff --git a/crypto/objects/obj_compat.h b/crypto/objects/obj_compat.h new file mode 100644 index 0000000000..68d1d73307 --- /dev/null +++ b/crypto/objects/obj_compat.h @@ -0,0 +1,46 @@ + +#ifndef OPENSSL_NO_DEPRECATED_3_0 + +#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm SN_magma_ctr_acpkm +#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm NID_magma_ctr_acpkm +#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm OBJ_magma_ctr_acpkm + +#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac SN_magma_ctr_acpkm_omac +#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac NID_magma_ctr_acpkm_omac +#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac OBJ_magma_ctr_acpkm_omac + +#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm SN_kuznyechik_ctr_acpkm +#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm NID_kuznyechik_ctr_acpkm +#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm OBJ_kuznyechik_ctr_acpkm + +#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac SN_kuznyechik_ctr_acpkm_omac +#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac NID_kuznyechik_ctr_acpkm_omac +#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac OBJ_kuznyechik_ctr_acpkm_omac + +#define SN_id_tc26_wrap_gostr3412_2015_magma_kexp15 SN_magma_kexp15 +#define NID_id_tc26_wrap_gostr3412_2015_magma_kexp15 NID_magma_kexp15 +#define OBJ_id_tc26_wrap_gostr3412_2015_magma_kexp15 OBJ_magma_kexp15 + +#define SN_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 SN_kuznyechik_kexp15 +#define NID_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 NID_kuznyechik_kexp15 +#define OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 OBJ_kuznyechik_kexp15 + +#define SN_grasshopper_ecb SN_kuznyechik_ecb +#define NID_grasshopper_ecb NID_kuznyechik_ecb + +#define SN_grasshopper_ctr SN_kuznyechik_ctr +#define NID_grasshopper_ctr NID_kuznyechik_ctr + +#define SN_grasshopper_ofb SN_kuznyechik_ofb +#define NID_grasshopper_ofb NID_kuznyechik_ofb + +#define SN_grasshopper_cbc SN_kuznyechik_cbc +#define NID_grasshopper_cbc NID_kuznyechik_cbc + +#define SN_grasshopper_cfb SN_kuznyechik_cfb +#define NID_grasshopper_cfb NID_kuznyechik_cfb + +#define SN_grasshopper_mac SN_kuznyechik_mac +#define NID_grasshopper_mac NID_kuznyechik_mac + +#endif diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h index 77b4418cd4..6fa22174c0 100644 --- a/crypto/objects/obj_dat.h +++ b/crypto/objects/obj_dat.h @@ -1061,16 +1061,16 @@ static const unsigned char so[7845] = { 0x2B,0x6F,0x02,0x8C,0x53, /* [ 7612] OBJ_ieee_siswg */ 0x2A,0x81,0x1C,0xCF,0x55,0x01,0x82,0x2D, /* [ 7617] OBJ_sm2 */ 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x01, /* [ 7625] OBJ_id_tc26_cipher_gostr3412_2015_magma */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x01,0x01, /* [ 7633] OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x01,0x02, /* [ 7642] OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x01,0x01, /* [ 7633] OBJ_magma_ctr_acpkm */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x01,0x02, /* [ 7642] OBJ_magma_ctr_acpkm_omac */ 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x02, /* [ 7651] OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x02,0x01, /* [ 7659] OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x02,0x02, /* [ 7668] OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x02,0x01, /* [ 7659] OBJ_kuznyechik_ctr_acpkm */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x05,0x02,0x02, /* [ 7668] OBJ_kuznyechik_ctr_acpkm_omac */ 0x2A,0x85,0x03,0x07,0x01,0x01,0x07, /* [ 7677] OBJ_id_tc26_wrap */ 0x2A,0x85,0x03,0x07,0x01,0x01,0x07,0x01, /* [ 7684] OBJ_id_tc26_wrap_gostr3412_2015_magma */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x07,0x01,0x01, /* [ 7692] OBJ_id_tc26_wrap_gostr3412_2015_magma_kexp15 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x07,0x01,0x01, /* [ 7692] OBJ_magma_kexp15 */ 0x2A,0x85,0x03,0x07,0x01,0x01,0x07,0x02, /* [ 7701] OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik */ - 0x2A,0x85,0x03,0x07,0x01,0x01,0x07,0x02,0x01, /* [ 7709] OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 */ + 0x2A,0x85,0x03,0x07,0x01,0x01,0x07,0x02,0x01, /* [ 7709] OBJ_kuznyechik_kexp15 */ 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x01,0x02, /* [ 7718] OBJ_id_tc26_gost_3410_2012_256_paramSetB */ 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x01,0x03, /* [ 7727] OBJ_id_tc26_gost_3410_2012_256_paramSetC */ 0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x01,0x04, /* [ 7736] OBJ_id_tc26_gost_3410_2012_256_paramSetD */ @@ -2102,12 +2102,12 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"gost89-cbc", "gost89-cbc", NID_gost89_cbc}, {"gost89-ecb", "gost89-ecb", NID_gost89_ecb}, {"gost89-ctr", "gost89-ctr", NID_gost89_ctr}, - {"grasshopper-ecb", "grasshopper-ecb", NID_grasshopper_ecb}, - {"grasshopper-ctr", "grasshopper-ctr", NID_grasshopper_ctr}, - {"grasshopper-ofb", "grasshopper-ofb", NID_grasshopper_ofb}, - {"grasshopper-cbc", "grasshopper-cbc", NID_grasshopper_cbc}, - {"grasshopper-cfb", "grasshopper-cfb", NID_grasshopper_cfb}, - {"grasshopper-mac", "grasshopper-mac", NID_grasshopper_mac}, + {"kuznyechik-ecb", "kuznyechik-ecb", NID_kuznyechik_ecb}, + {"kuznyechik-ctr", "kuznyechik-ctr", NID_kuznyechik_ctr}, + {"kuznyechik-ofb", "kuznyechik-ofb", NID_kuznyechik_ofb}, + {"kuznyechik-cbc", "kuznyechik-cbc", NID_kuznyechik_cbc}, + {"kuznyechik-cfb", "kuznyechik-cfb", NID_kuznyechik_cfb}, + {"kuznyechik-mac", "kuznyechik-mac", NID_kuznyechik_mac}, {"ChaCha20-Poly1305", "chacha20-poly1305", NID_chacha20_poly1305}, {"ChaCha20", "chacha20", NID_chacha20}, {"tlsfeature", "TLS Feature", NID_tlsfeature, 8, &so[6619]}, @@ -2264,16 +2264,16 @@ static const ASN1_OBJECT nid_objs[NUM_NID] = { {"ieee-siswg", "IEEE Security in Storage Working Group", NID_ieee_siswg, 5, &so[7612]}, {"SM2", "sm2", NID_sm2, 8, &so[7617]}, {"id-tc26-cipher-gostr3412-2015-magma", "id-tc26-cipher-gostr3412-2015-magma", NID_id_tc26_cipher_gostr3412_2015_magma, 8, &so[7625]}, - {"id-tc26-cipher-gostr3412-2015-magma-ctracpkm", "id-tc26-cipher-gostr3412-2015-magma-ctracpkm", NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm, 9, &so[7633]}, - {"id-tc26-cipher-gostr3412-2015-magma-ctracpkm-omac", "id-tc26-cipher-gostr3412-2015-magma-ctracpkm-omac", NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac, 9, &so[7642]}, + {"magma-ctr-acpkm", "magma-ctr-acpkm", NID_magma_ctr_acpkm, 9, &so[7633]}, + {"magma-ctr-acpkm-omac", "magma-ctr-acpkm-omac", NID_magma_ctr_acpkm_omac, 9, &so[7642]}, {"id-tc26-cipher-gostr3412-2015-kuznyechik", "id-tc26-cipher-gostr3412-2015-kuznyechik", NID_id_tc26_cipher_gostr3412_2015_kuznyechik, 8, &so[7651]}, - {"id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm", "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm", NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm, 9, &so[7659]}, - {"id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm-omac", "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm-omac", NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac, 9, &so[7668]}, + {"kuznyechik-ctr-acpkm", "kuznyechik-ctr-acpkm", NID_kuznyechik_ctr_acpkm, 9, &so[7659]}, + {"kuznyechik-ctr-acpkm-omac", "kuznyechik-ctr-acpkm-omac", NID_kuznyechik_ctr_acpkm_omac, 9, &so[7668]}, {"id-tc26-wrap", "id-tc26-wrap", NID_id_tc26_wrap, 7, &so[7677]}, {"id-tc26-wrap-gostr3412-2015-magma", "id-tc26-wrap-gostr3412-2015-magma", NID_id_tc26_wrap_gostr3412_2015_magma, 8, &so[7684]}, - {"id-tc26-wrap-gostr3412-2015-magma-kexp15", "id-tc26-wrap-gostr3412-2015-magma-kexp15", NID_id_tc26_wrap_gostr3412_2015_magma_kexp15, 9, &so[7692]}, + {"magma-kexp15", "magma-kexp15", NID_magma_kexp15, 9, &so[7692]}, {"id-tc26-wrap-gostr3412-2015-kuznyechik", "id-tc26-wrap-gostr3412-2015-kuznyechik", NID_id_tc26_wrap_gostr3412_2015_kuznyechik, 8, &so[7701]}, - {"id-tc26-wrap-gostr3412-2015-kuznyechik-kexp15", "id-tc26-wrap-gostr3412-2015-kuznyechik-kexp15", NID_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15, 9, &so[7709]}, + {"kuznyechik-kexp15", "kuznyechik-kexp15", NID_kuznyechik_kexp15, 9, &so[7709]}, {"id-tc26-gost-3410-2012-256-paramSetB", "GOST R 34.10-2012 (256 bit) ParamSet B", NID_id_tc26_gost_3410_2012_256_paramSetB, 9, &so[7718]}, {"id-tc26-gost-3410-2012-256-paramSetC", "GOST R 34.10-2012 (256 bit) ParamSet C", NID_id_tc26_gost_3410_2012_256_paramSetC, 9, &so[7727]}, {"id-tc26-gost-3410-2012-256-paramSetD", "GOST R 34.10-2012 (256 bit) ParamSet D", NID_id_tc26_gost_3410_2012_256_paramSetD, 9, &so[7736]}, @@ -2794,12 +2794,6 @@ static const unsigned int sn_objs[NUM_SN] = { 1010, /* "gost89-ecb" */ 812, /* "gost94" */ 850, /* "gost94cc" */ - 1015, /* "grasshopper-cbc" */ - 1016, /* "grasshopper-cfb" */ - 1013, /* "grasshopper-ctr" */ - 1012, /* "grasshopper-ecb" */ - 1017, /* "grasshopper-mac" */ - 1014, /* "grasshopper-ofb" */ 1156, /* "hmacWithDstu34311" */ 797, /* "hmacWithMD5" */ 163, /* "hmacWithSHA1" */ @@ -3090,11 +3084,7 @@ static const unsigned int sn_objs[NUM_SN] = { 990, /* "id-tc26-cipher" */ 1001, /* "id-tc26-cipher-constants" */ 1176, /* "id-tc26-cipher-gostr3412-2015-kuznyechik" */ - 1177, /* "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm" */ - 1178, /* "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm-omac" */ 1173, /* "id-tc26-cipher-gostr3412-2015-magma" */ - 1174, /* "id-tc26-cipher-gostr3412-2015-magma-ctracpkm" */ - 1175, /* "id-tc26-cipher-gostr3412-2015-magma-ctracpkm-omac" */ 994, /* "id-tc26-constants" */ 981, /* "id-tc26-digest" */ 1000, /* "id-tc26-digest-constants" */ @@ -3120,9 +3110,7 @@ static const unsigned int sn_objs[NUM_SN] = { 986, /* "id-tc26-signwithdigest-gost3410-2012-512" */ 1179, /* "id-tc26-wrap" */ 1182, /* "id-tc26-wrap-gostr3412-2015-kuznyechik" */ - 1183, /* "id-tc26-wrap-gostr3412-2015-kuznyechik-kexp15" */ 1180, /* "id-tc26-wrap-gostr3412-2015-magma" */ - 1181, /* "id-tc26-wrap-gostr3412-2015-magma-kexp15" */ 676, /* "identified-organization" */ 1170, /* "ieee" */ 1171, /* "ieee-siswg" */ @@ -3145,6 +3133,15 @@ static const unsigned int sn_objs[NUM_SN] = { 956, /* "jurisdictionST" */ 150, /* "keyBag" */ 83, /* "keyUsage" */ + 1015, /* "kuznyechik-cbc" */ + 1016, /* "kuznyechik-cfb" */ + 1013, /* "kuznyechik-ctr" */ + 1177, /* "kuznyechik-ctr-acpkm" */ + 1178, /* "kuznyechik-ctr-acpkm-omac" */ + 1012, /* "kuznyechik-ecb" */ + 1183, /* "kuznyechik-kexp15" */ + 1017, /* "kuznyechik-mac" */ + 1014, /* "kuznyechik-ofb" */ 477, /* "lastModifiedBy" */ 476, /* "lastModifiedTime" */ 157, /* "localKeyID" */ @@ -3152,7 +3149,10 @@ static const unsigned int sn_objs[NUM_SN] = { 1190, /* "magma-cbc" */ 1191, /* "magma-cfb" */ 1188, /* "magma-ctr" */ + 1174, /* "magma-ctr-acpkm" */ + 1175, /* "magma-ctr-acpkm-omac" */ 1187, /* "magma-ecb" */ + 1181, /* "magma-kexp15" */ 1192, /* "magma-mac" */ 1189, /* "magma-ofb" */ 460, /* "mail" */ @@ -4034,12 +4034,6 @@ static const unsigned int ln_objs[NUM_LN] = { 975, /* "gost89-cnt-12" */ 1011, /* "gost89-ctr" */ 1010, /* "gost89-ecb" */ - 1015, /* "grasshopper-cbc" */ - 1016, /* "grasshopper-cfb" */ - 1013, /* "grasshopper-ctr" */ - 1012, /* "grasshopper-ecb" */ - 1017, /* "grasshopper-mac" */ - 1014, /* "grasshopper-ofb" */ 1036, /* "hkdf" */ 855, /* "hmac" */ 780, /* "hmac-md5" */ @@ -4287,11 +4281,7 @@ static const unsigned int ln_objs[NUM_LN] = { 990, /* "id-tc26-cipher" */ 1001, /* "id-tc26-cipher-constants" */ 1176, /* "id-tc26-cipher-gostr3412-2015-kuznyechik" */ - 1177, /* "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm" */ - 1178, /* "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm-omac" */ 1173, /* "id-tc26-cipher-gostr3412-2015-magma" */ - 1174, /* "id-tc26-cipher-gostr3412-2015-magma-ctracpkm" */ - 1175, /* "id-tc26-cipher-gostr3412-2015-magma-ctracpkm-omac" */ 994, /* "id-tc26-constants" */ 981, /* "id-tc26-digest" */ 1000, /* "id-tc26-digest-constants" */ @@ -4304,9 +4294,7 @@ static const unsigned int ln_objs[NUM_LN] = { 984, /* "id-tc26-signwithdigest" */ 1179, /* "id-tc26-wrap" */ 1182, /* "id-tc26-wrap-gostr3412-2015-kuznyechik" */ - 1183, /* "id-tc26-wrap-gostr3412-2015-kuznyechik-kexp15" */ 1180, /* "id-tc26-wrap-gostr3412-2015-magma" */ - 1181, /* "id-tc26-wrap-gostr3412-2015-magma-kexp15" */ 34, /* "idea-cbc" */ 35, /* "idea-cfb" */ 36, /* "idea-ecb" */ @@ -4331,6 +4319,15 @@ static const unsigned int ln_objs[NUM_LN] = { 773, /* "kisa" */ 1196, /* "kmac128" */ 1197, /* "kmac256" */ + 1015, /* "kuznyechik-cbc" */ + 1016, /* "kuznyechik-cfb" */ + 1013, /* "kuznyechik-ctr" */ + 1177, /* "kuznyechik-ctr-acpkm" */ + 1178, /* "kuznyechik-ctr-acpkm-omac" */ + 1012, /* "kuznyechik-ecb" */ + 1183, /* "kuznyechik-kexp15" */ + 1017, /* "kuznyechik-mac" */ + 1014, /* "kuznyechik-ofb" */ 1063, /* "kx-any" */ 1039, /* "kx-dhe" */ 1041, /* "kx-dhe-psk" */ @@ -4349,7 +4346,10 @@ static const unsigned int ln_objs[NUM_LN] = { 1190, /* "magma-cbc" */ 1191, /* "magma-cfb" */ 1188, /* "magma-ctr" */ + 1174, /* "magma-ctr-acpkm" */ + 1175, /* "magma-ctr-acpkm-omac" */ 1187, /* "magma-ecb" */ + 1181, /* "magma-kexp15" */ 1192, /* "magma-mac" */ 1189, /* "magma-ofb" */ 493, /* "mailPreferenceOption" */ @@ -5444,12 +5444,12 @@ static const unsigned int obj_objs[NUM_OBJ] = { 1120, /* OBJ_aria_128_ccm 1 2 410 200046 1 1 37 */ 1121, /* OBJ_aria_192_ccm 1 2 410 200046 1 1 38 */ 1122, /* OBJ_aria_256_ccm 1 2 410 200046 1 1 39 */ - 1174, /* OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm 1 2 643 7 1 1 5 1 1 */ - 1175, /* OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac 1 2 643 7 1 1 5 1 2 */ - 1177, /* OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm 1 2 643 7 1 1 5 2 1 */ - 1178, /* OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac 1 2 643 7 1 1 5 2 2 */ - 1181, /* OBJ_id_tc26_wrap_gostr3412_2015_magma_kexp15 1 2 643 7 1 1 7 1 1 */ - 1183, /* OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 1 2 643 7 1 1 7 2 1 */ + 1174, /* OBJ_magma_ctr_acpkm 1 2 643 7 1 1 5 1 1 */ + 1175, /* OBJ_magma_ctr_acpkm_omac 1 2 643 7 1 1 5 1 2 */ + 1177, /* OBJ_kuznyechik_ctr_acpkm 1 2 643 7 1 1 5 2 1 */ + 1178, /* OBJ_kuznyechik_ctr_acpkm_omac 1 2 643 7 1 1 5 2 2 */ + 1181, /* OBJ_magma_kexp15 1 2 643 7 1 1 7 1 1 */ + 1183, /* OBJ_kuznyechik_kexp15 1 2 643 7 1 1 7 2 1 */ 1148, /* OBJ_id_tc26_gost_3410_2012_256_paramSetA 1 2 643 7 1 2 1 1 1 */ 1184, /* OBJ_id_tc26_gost_3410_2012_256_paramSetB 1 2 643 7 1 2 1 1 2 */ 1185, /* OBJ_id_tc26_gost_3410_2012_256_paramSetC 1 2 643 7 1 2 1 1 3 */ diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num index 15aa1e9772..aaf77099b3 100644 --- a/crypto/objects/obj_mac.num +++ b/crypto/objects/obj_mac.num @@ -1009,12 +1009,12 @@ issuerSignTool 1008 gost89_cbc 1009 gost89_ecb 1010 gost89_ctr 1011 -grasshopper_ecb 1012 -grasshopper_ctr 1013 -grasshopper_ofb 1014 -grasshopper_cbc 1015 -grasshopper_cfb 1016 -grasshopper_mac 1017 +kuznyechik_ecb 1012 +kuznyechik_ctr 1013 +kuznyechik_ofb 1014 +kuznyechik_cbc 1015 +kuznyechik_cfb 1016 +kuznyechik_mac 1017 chacha20_poly1305 1018 chacha20 1019 tlsfeature 1020 @@ -1171,16 +1171,16 @@ ieee 1170 ieee_siswg 1171 sm2 1172 id_tc26_cipher_gostr3412_2015_magma 1173 -id_tc26_cipher_gostr3412_2015_magma_ctracpkm 1174 -id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac 1175 +magma_ctr_acpkm 1174 +magma_ctr_acpkm_omac 1175 id_tc26_cipher_gostr3412_2015_kuznyechik 1176 -id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm 1177 -id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac 1178 +kuznyechik_ctr_acpkm 1177 +kuznyechik_ctr_acpkm_omac 1178 id_tc26_wrap 1179 id_tc26_wrap_gostr3412_2015_magma 1180 -id_tc26_wrap_gostr3412_2015_magma_kexp15 1181 +magma_kexp15 1181 id_tc26_wrap_gostr3412_2015_kuznyechik 1182 -id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 1183 +kuznyechik_kexp15 1183 id_tc26_gost_3410_2012_256_paramSetB 1184 id_tc26_gost_3410_2012_256_paramSetC 1185 id_tc26_gost_3410_2012_256_paramSetD 1186 diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt index 9819c539b7..a9ccf7eded 100644 --- a/crypto/objects/objects.txt +++ b/crypto/objects/objects.txt @@ -1359,11 +1359,11 @@ id-tc26-mac 2 : id-tc26-hmac-gost-3411-2012-512 : HMAC GOST 34.11-2012 512 bit id-tc26-algorithms 5 : id-tc26-cipher id-tc26-cipher 1 : id-tc26-cipher-gostr3412-2015-magma -id-tc26-cipher-gostr3412-2015-magma 1 : id-tc26-cipher-gostr3412-2015-magma-ctracpkm -id-tc26-cipher-gostr3412-2015-magma 2 : id-tc26-cipher-gostr3412-2015-magma-ctracpkm-omac +id-tc26-cipher-gostr3412-2015-magma 1 : magma-ctr-acpkm +id-tc26-cipher-gostr3412-2015-magma 2 : magma-ctr-acpkm-omac id-tc26-cipher 2 : id-tc26-cipher-gostr3412-2015-kuznyechik -id-tc26-cipher-gostr3412-2015-kuznyechik 1 : id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm -id-tc26-cipher-gostr3412-2015-kuznyechik 2 : id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm-omac +id-tc26-cipher-gostr3412-2015-kuznyechik 1 : kuznyechik-ctr-acpkm +id-tc26-cipher-gostr3412-2015-kuznyechik 2 : kuznyechik-ctr-acpkm-omac id-tc26-algorithms 6 : id-tc26-agreement id-tc26-agreement 1 : id-tc26-agreement-gost-3410-2012-256 @@ -1371,9 +1371,9 @@ id-tc26-agreement 2 : id-tc26-agreement-gost-3410-2012-512 id-tc26-algorithms 7 : id-tc26-wrap id-tc26-wrap 1 : id-tc26-wrap-gostr3412-2015-magma -id-tc26-wrap-gostr3412-2015-magma 1 : id-tc26-wrap-gostr3412-2015-magma-kexp15 +id-tc26-wrap-gostr3412-2015-magma 1 : magma-kexp15 id-tc26-wrap 2 : id-tc26-wrap-gostr3412-2015-kuznyechik -id-tc26-wrap-gostr3412-2015-kuznyechik 1 : id-tc26-wrap-gostr3412-2015-kuznyechik-kexp15 +id-tc26-wrap-gostr3412-2015-kuznyechik 1 : kuznyechik-kexp15 id-tc26 2 : id-tc26-constants @@ -1401,12 +1401,12 @@ member-body 643 100 111 : subjectSignTool : Signing Tool of Subject member-body 643 100 112 : issuerSignTool : Signing Tool of Issuer #GOST R34.13-2015 Grasshopper "Kuznechik" - : grasshopper-ecb - : grasshopper-ctr - : grasshopper-ofb - : grasshopper-cbc - : grasshopper-cfb - : grasshopper-mac + : kuznyechik-ecb + : kuznyechik-ctr + : kuznyechik-ofb + : kuznyechik-cbc + : kuznyechik-cfb + : kuznyechik-mac #GOST R34.13-2015 Magma : magma-ecb diff --git a/fuzz/oids.txt b/fuzz/oids.txt index cfc3392677..ddd50880ce 100644 --- a/fuzz/oids.txt +++ b/fuzz/oids.txt @@ -1048,16 +1048,16 @@ OBJ_ieee="\x2B\x6F" OBJ_ieee_siswg="\x2B\x6F\x02\x8C\x53" OBJ_sm2="\x2A\x81\x1C\xCF\x55\x01\x82\x2D" OBJ_id_tc26_cipher_gostr3412_2015_magma="\x2A\x85\x03\x07\x01\x01\x05\x01" -OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm="\x2A\x85\x03\x07\x01\x01\x05\x01\x01" -OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac="\x2A\x85\x03\x07\x01\x01\x05\x01\x02" +OBJ_magma_ctr_acpkm="\x2A\x85\x03\x07\x01\x01\x05\x01\x01" +OBJ_magma_ctr_acpkm_omac="\x2A\x85\x03\x07\x01\x01\x05\x01\x02" OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik="\x2A\x85\x03\x07\x01\x01\x05\x02" -OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm="\x2A\x85\x03\x07\x01\x01\x05\x02\x01" -OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac="\x2A\x85\x03\x07\x01\x01\x05\x02\x02" +OBJ_kuznyechik_ctr_acpkm="\x2A\x85\x03\x07\x01\x01\x05\x02\x01" +OBJ_kuznyechik_ctr_acpkm_omac="\x2A\x85\x03\x07\x01\x01\x05\x02\x02" OBJ_id_tc26_wrap="\x2A\x85\x03\x07\x01\x01\x07" OBJ_id_tc26_wrap_gostr3412_2015_magma="\x2A\x85\x03\x07\x01\x01\x07\x01" -OBJ_id_tc26_wrap_gostr3412_2015_magma_kexp15="\x2A\x85\x03\x07\x01\x01\x07\x01\x01" +OBJ_magma_kexp15="\x2A\x85\x03\x07\x01\x01\x07\x01\x01" OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik="\x2A\x85\x03\x07\x01\x01\x07\x02" -OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15="\x2A\x85\x03\x07\x01\x01\x07\x02\x01" +OBJ_kuznyechik_kexp15="\x2A\x85\x03\x07\x01\x01\x07\x02\x01" OBJ_id_tc26_gost_3410_2012_256_paramSetB="\x2A\x85\x03\x07\x01\x02\x01\x01\x02" OBJ_id_tc26_gost_3410_2012_256_paramSetC="\x2A\x85\x03\x07\x01\x02\x01\x01\x03" OBJ_id_tc26_gost_3410_2012_256_paramSetD="\x2A\x85\x03\x07\x01\x02\x01\x01\x04" diff --git a/include/openssl/obj_mac.h b/include/openssl/obj_mac.h index 0e564ac6d2..0f6741b590 100644 --- a/include/openssl/obj_mac.h +++ b/include/openssl/obj_mac.h @@ -4280,25 +4280,25 @@ #define NID_id_tc26_cipher_gostr3412_2015_magma 1173 #define OBJ_id_tc26_cipher_gostr3412_2015_magma OBJ_id_tc26_cipher,1L -#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm "id-tc26-cipher-gostr3412-2015-magma-ctracpkm" -#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm 1174 -#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm OBJ_id_tc26_cipher_gostr3412_2015_magma,1L +#define SN_magma_ctr_acpkm "magma-ctr-acpkm" +#define NID_magma_ctr_acpkm 1174 +#define OBJ_magma_ctr_acpkm OBJ_id_tc26_cipher_gostr3412_2015_magma,1L -#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac "id-tc26-cipher-gostr3412-2015-magma-ctracpkm-omac" -#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac 1175 -#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac OBJ_id_tc26_cipher_gostr3412_2015_magma,2L +#define SN_magma_ctr_acpkm_omac "magma-ctr-acpkm-omac" +#define NID_magma_ctr_acpkm_omac 1175 +#define OBJ_magma_ctr_acpkm_omac OBJ_id_tc26_cipher_gostr3412_2015_magma,2L #define SN_id_tc26_cipher_gostr3412_2015_kuznyechik "id-tc26-cipher-gostr3412-2015-kuznyechik" #define NID_id_tc26_cipher_gostr3412_2015_kuznyechik 1176 #define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik OBJ_id_tc26_cipher,2L -#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm" -#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm 1177 -#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik,1L +#define SN_kuznyechik_ctr_acpkm "kuznyechik-ctr-acpkm" +#define NID_kuznyechik_ctr_acpkm 1177 +#define OBJ_kuznyechik_ctr_acpkm OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik,1L -#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac "id-tc26-cipher-gostr3412-2015-kuznyechik-ctracpkm-omac" -#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac 1178 -#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik,2L +#define SN_kuznyechik_ctr_acpkm_omac "kuznyechik-ctr-acpkm-omac" +#define NID_kuznyechik_ctr_acpkm_omac 1178 +#define OBJ_kuznyechik_ctr_acpkm_omac OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik,2L #define SN_id_tc26_agreement "id-tc26-agreement" #define NID_id_tc26_agreement 991 @@ -4320,17 +4320,17 @@ #define NID_id_tc26_wrap_gostr3412_2015_magma 1180 #define OBJ_id_tc26_wrap_gostr3412_2015_magma OBJ_id_tc26_wrap,1L -#define SN_id_tc26_wrap_gostr3412_2015_magma_kexp15 "id-tc26-wrap-gostr3412-2015-magma-kexp15" -#define NID_id_tc26_wrap_gostr3412_2015_magma_kexp15 1181 -#define OBJ_id_tc26_wrap_gostr3412_2015_magma_kexp15 OBJ_id_tc26_wrap_gostr3412_2015_magma,1L +#define SN_magma_kexp15 "magma-kexp15" +#define NID_magma_kexp15 1181 +#define OBJ_magma_kexp15 OBJ_id_tc26_wrap_gostr3412_2015_magma,1L #define SN_id_tc26_wrap_gostr3412_2015_kuznyechik "id-tc26-wrap-gostr3412-2015-kuznyechik" #define NID_id_tc26_wrap_gostr3412_2015_kuznyechik 1182 #define OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik OBJ_id_tc26_wrap,2L -#define SN_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 "id-tc26-wrap-gostr3412-2015-kuznyechik-kexp15" -#define NID_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 1183 -#define OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik,1L +#define SN_kuznyechik_kexp15 "kuznyechik-kexp15" +#define NID_kuznyechik_kexp15 1183 +#define OBJ_kuznyechik_kexp15 OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik,1L #define SN_id_tc26_constants "id-tc26-constants" #define NID_id_tc26_constants 994 @@ -4430,23 +4430,23 @@ #define NID_issuerSignTool 1008 #define OBJ_issuerSignTool OBJ_member_body,643L,100L,112L -#define SN_grasshopper_ecb "grasshopper-ecb" -#define NID_grasshopper_ecb 1012 +#define SN_kuznyechik_ecb "kuznyechik-ecb" +#define NID_kuznyechik_ecb 1012 -#define SN_grasshopper_ctr "grasshopper-ctr" -#define NID_grasshopper_ctr 1013 +#define SN_kuznyechik_ctr "kuznyechik-ctr" +#define NID_kuznyechik_ctr 1013 -#define SN_grasshopper_ofb "grasshopper-ofb" -#define NID_grasshopper_ofb 1014 +#define SN_kuznyechik_ofb "kuznyechik-ofb" +#define NID_kuznyechik_ofb 1014 -#define SN_grasshopper_cbc "grasshopper-cbc" -#define NID_grasshopper_cbc 1015 +#define SN_kuznyechik_cbc "kuznyechik-cbc" +#define NID_kuznyechik_cbc 1015 -#define SN_grasshopper_cfb "grasshopper-cfb" -#define NID_grasshopper_cfb 1016 +#define SN_kuznyechik_cfb "kuznyechik-cfb" +#define NID_kuznyechik_cfb 1016 -#define SN_grasshopper_mac "grasshopper-mac" -#define NID_grasshopper_mac 1017 +#define SN_kuznyechik_mac "kuznyechik-mac" +#define NID_kuznyechik_mac 1017 #define SN_magma_ecb "magma-ecb" #define NID_magma_ecb 1187 @@ -5292,3 +5292,49 @@ #define SN_aes_256_siv "AES-256-SIV" #define LN_aes_256_siv "aes-256-siv" #define NID_aes_256_siv 1200 + +#ifndef OPENSSL_NO_DEPRECATED_3_0 + +#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm SN_magma_ctr_acpkm +#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm NID_magma_ctr_acpkm +#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm OBJ_magma_ctr_acpkm + +#define SN_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac SN_magma_ctr_acpkm_omac +#define NID_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac NID_magma_ctr_acpkm_omac +#define OBJ_id_tc26_cipher_gostr3412_2015_magma_ctracpkm_omac OBJ_magma_ctr_acpkm_omac + +#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm SN_kuznyechik_ctr_acpkm +#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm NID_kuznyechik_ctr_acpkm +#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm OBJ_kuznyechik_ctr_acpkm + +#define SN_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac SN_kuznyechik_ctr_acpkm_omac +#define NID_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac NID_kuznyechik_ctr_acpkm_omac +#define OBJ_id_tc26_cipher_gostr3412_2015_kuznyechik_ctracpkm_omac OBJ_kuznyechik_ctr_acpkm_omac + +#define SN_id_tc26_wrap_gostr3412_2015_magma_kexp15 SN_magma_kexp15 +#define NID_id_tc26_wrap_gostr3412_2015_magma_kexp15 NID_magma_kexp15 +#define OBJ_id_tc26_wrap_gostr3412_2015_magma_kexp15 OBJ_magma_kexp15 + +#define SN_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 SN_kuznyechik_kexp15 +#define NID_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 NID_kuznyechik_kexp15 +#define OBJ_id_tc26_wrap_gostr3412_2015_kuznyechik_kexp15 OBJ_kuznyechik_kexp15 + +#define SN_grasshopper_ecb SN_kuznyechik_ecb +#define NID_grasshopper_ecb NID_kuznyechik_ecb + +#define SN_grasshopper_ctr SN_kuznyechik_ctr +#define NID_grasshopper_ctr NID_kuznyechik_ctr + +#define SN_grasshopper_ofb SN_kuznyechik_ofb +#define NID_grasshopper_ofb NID_kuznyechik_ofb + +#define SN_grasshopper_cbc SN_kuznyechik_cbc +#define NID_grasshopper_cbc NID_kuznyechik_cbc + +#define SN_grasshopper_cfb SN_kuznyechik_cfb +#define NID_grasshopper_cfb NID_kuznyechik_cfb + +#define SN_grasshopper_mac SN_kuznyechik_mac +#define NID_grasshopper_mac NID_kuznyechik_mac + +#endif -- 2.25.1