From 52ee3ed3a11024ab6e11c5705da6c3ba17cf7d98 Mon Sep 17 00:00:00 2001 From: Dmitry Belyavskiy Date: Sun, 4 Oct 2015 12:11:26 +0300 Subject: New cipher and cipher modes standardized in Russia This change introduces short names and NIDs for Russian GOST ciphers according to GOST R 34.13-2015 Reviewed-by: Richard Levitte Reviewed-by: Matt Caswell --- crypto/objects/obj_dat.h | 33 ++++++++++++++++++++++++++++++--- crypto/objects/obj_mac.num | 9 +++++++++ crypto/objects/objects.txt | 11 +++++++++++ 3 files changed, 50 insertions(+), 3 deletions(-) (limited to 'crypto/objects') diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h index 6210784d13..9fd20596ce 100644 --- a/crypto/objects/obj_dat.h +++ b/crypto/objects/obj_dat.h @@ -62,9 +62,9 @@ * [including the GNU Public Licence.] */ -#define NUM_NID 1009 -#define NUM_SN 1002 -#define NUM_LN 1002 +#define NUM_NID 1018 +#define NUM_SN 1011 +#define NUM_LN 1011 #define NUM_OBJ 936 static const unsigned char lvalues[6604]={ @@ -2658,6 +2658,15 @@ static const ASN1_OBJECT nid_objs[NUM_NID]={ &(lvalues[6593]),0}, {"issuerSignTool","Signing Tool of Issuer",NID_issuerSignTool,5, &(lvalues[6598]),0}, +{"gost89-cbc","gost89-cbc",NID_gost89_cbc,0,NULL,0}, +{"gost89-ecb","gost89-ecb",NID_gost89_ecb,0,NULL,0}, +{"gost89-ctr","gost89-ctr",NID_gost89_ctr,0,NULL,0}, +{"grasshopper-ecb","grasshopper-ecb",NID_grasshopper_ecb,0,NULL,0}, +{"grasshopper-ctr","grasshopper-ctr",NID_grasshopper_ctr,0,NULL,0}, +{"grasshopper-ofb","grasshopper-ofb",NID_grasshopper_ofb,0,NULL,0}, +{"grasshopper-cbc","grasshopper-cbc",NID_grasshopper_cbc,0,NULL,0}, +{"grasshopper-cfb","grasshopper-cfb",NID_grasshopper_cfb,0,NULL,0}, +{"grasshopper-mac","grasshopper-mac",NID_grasshopper_mac,0,NULL,0}, }; static const unsigned int sn_objs[NUM_SN]={ @@ -3025,10 +3034,19 @@ static const unsigned int sn_objs[NUM_SN]={ 979, /* "gost2012_256" */ 980, /* "gost2012_512" */ 813, /* "gost89" */ +1009, /* "gost89-cbc" */ 814, /* "gost89-cnt" */ 975, /* "gost89-cnt-12" */ +1011, /* "gost89-ctr" */ +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" */ 797, /* "hmacWithMD5" */ 163, /* "hmacWithSHA1" */ 798, /* "hmacWithSHA224" */ @@ -4053,8 +4071,17 @@ static const unsigned int ln_objs[NUM_LN]={ 601, /* "generic cryptogram" */ 99, /* "givenName" */ 976, /* "gost-mac-12" */ +1009, /* "gost89-cbc" */ 814, /* "gost89-cnt" */ 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" */ 855, /* "hmac" */ 780, /* "hmac-md5" */ 781, /* "hmac-sha1" */ diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num index e813b62f1c..ac8a1a2a63 100644 --- a/crypto/objects/obj_mac.num +++ b/crypto/objects/obj_mac.num @@ -1006,3 +1006,12 @@ OGRN 1005 SNILS 1006 subjectSignTool 1007 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 diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt index 06928c6c6a..9f5f6c4e50 100644 --- a/crypto/objects/objects.txt +++ b/crypto/objects/objects.txt @@ -1171,6 +1171,9 @@ cryptopro 20 : gost94 : GOST R 34.10-94 cryptopro 21 : gost89 : GOST 28147-89 : gost89-cnt : gost89-cnt-12 + : gost89-cbc + : gost89-ecb + : gost89-ctr !Cname id-Gost28147-89-MAC cryptopro 22 : gost-mac : GOST 28147-89 MAC : gost-mac-12 @@ -1280,6 +1283,14 @@ member-body 643 100 3 : SNILS : SNILS 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 + # Definitions for Camellia cipher - CBC MODE 1 2 392 200011 61 1 1 1 2 : CAMELLIA-128-CBC : camellia-128-cbc -- cgit v1.2.3