]> wagner.pp.ru Git - openssl-gost/engine.git/blob - patches/1.0.2/1.oids.diff
2fd4e46d66e1ed6bbb3a2f74967b6db93908a0a3
[openssl-gost/engine.git] / patches / 1.0.2 / 1.oids.diff
1 diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h
2 index b7e3cf280e..641cd8e9d2 100644
3 --- a/crypto/objects/obj_dat.h
4 +++ b/crypto/objects/obj_dat.h
5 @@ -62,12 +62,12 @@
6   * [including the GNU Public Licence.]
7   */
8  
9 -#define NUM_NID 958
10 -#define NUM_SN 951
11 -#define NUM_LN 951
12 -#define NUM_OBJ 890
13 +#define NUM_NID 1000
14 +#define NUM_SN 993
15 +#define NUM_LN 993
16 +#define NUM_OBJ 921
17  
18 -static const unsigned char lvalues[6255]={
19 +static const unsigned char lvalues[6485]={
20  0x2A,0x86,0x48,0x86,0xF7,0x0D,               /* [  0] OBJ_rsadsi */
21  0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,          /* [  6] OBJ_pkcs */
22  0x2A,0x86,0x48,0x86,0xF7,0x0D,0x02,0x02,     /* [ 13] OBJ_md2 */
23 @@ -952,6 +952,37 @@ static const unsigned char lvalues[6255]={
24  0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x01,/* [6221] OBJ_jurisdictionLocalityName */
25  0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x02,/* [6232] OBJ_jurisdictionStateOrProvinceName */
26  0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x3C,0x02,0x01,0x03,/* [6243] OBJ_jurisdictionCountryName */
27 +0x2A,0x85,0x03,0x07,0x01,                    /* [6254] OBJ_id_tc26 */
28 +0x2A,0x85,0x03,0x07,0x01,0x01,               /* [6259] OBJ_id_tc26_algorithms */
29 +0x2A,0x85,0x03,0x07,0x01,0x01,0x01,          /* [6265] OBJ_id_tc26_sign */
30 +0x2A,0x85,0x03,0x07,0x01,0x01,0x01,0x01,     /* [6272] OBJ_id_GostR3410_2012_256 */
31 +0x2A,0x85,0x03,0x07,0x01,0x01,0x01,0x02,     /* [6280] OBJ_id_GostR3410_2012_512 */
32 +0x2A,0x85,0x03,0x07,0x01,0x01,0x02,          /* [6288] OBJ_id_tc26_digest */
33 +0x2A,0x85,0x03,0x07,0x01,0x01,0x02,0x02,     /* [6295] OBJ_id_GostR3411_2012_256 */
34 +0x2A,0x85,0x03,0x07,0x01,0x01,0x02,0x03,     /* [6303] OBJ_id_GostR3411_2012_512 */
35 +0x2A,0x85,0x03,0x07,0x01,0x01,0x03,          /* [6311] OBJ_id_tc26_signwithdigest */
36 +0x2A,0x85,0x03,0x07,0x01,0x01,0x03,0x02,     /* [6318] OBJ_id_tc26_signwithdigest_gost3410_2012_256 */
37 +0x2A,0x85,0x03,0x07,0x01,0x01,0x03,0x03,     /* [6326] OBJ_id_tc26_signwithdigest_gost3410_2012_512 */
38 +0x2A,0x85,0x03,0x07,0x01,0x01,0x04,          /* [6334] OBJ_id_tc26_mac */
39 +0x2A,0x85,0x03,0x07,0x01,0x01,0x04,0x01,     /* [6341] OBJ_id_tc26_hmac_gost_3411_2012_256 */
40 +0x2A,0x85,0x03,0x07,0x01,0x01,0x04,0x02,     /* [6349] OBJ_id_tc26_hmac_gost_3411_2012_512 */
41 +0x2A,0x85,0x03,0x07,0x01,0x01,0x05,          /* [6357] OBJ_id_tc26_cipher */
42 +0x2A,0x85,0x03,0x07,0x01,0x01,0x06,          /* [6364] OBJ_id_tc26_agreement */
43 +0x2A,0x85,0x03,0x07,0x01,0x01,0x06,0x01,     /* [6371] OBJ_id_tc26_agreement_gost_3410_2012_256 */
44 +0x2A,0x85,0x03,0x07,0x01,0x01,0x06,0x02,     /* [6379] OBJ_id_tc26_agreement_gost_3410_2012_512 */
45 +0x2A,0x85,0x03,0x07,0x01,0x02,               /* [6387] OBJ_id_tc26_constants */
46 +0x2A,0x85,0x03,0x07,0x01,0x02,0x01,          /* [6393] OBJ_id_tc26_sign_constants */
47 +0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,     /* [6400] OBJ_id_tc26_gost_3410_2012_512_constants */
48 +0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x00,/* [6408] OBJ_id_tc26_gost_3410_2012_512_paramSetTest */
49 +0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x01,/* [6417] OBJ_id_tc26_gost_3410_2012_512_paramSetA */
50 +0x2A,0x85,0x03,0x07,0x01,0x02,0x01,0x02,0x02,/* [6426] OBJ_id_tc26_gost_3410_2012_512_paramSetB */
51 +0x2A,0x85,0x03,0x07,0x01,0x02,0x02,          /* [6435] OBJ_id_tc26_digest_constants */
52 +0x2A,0x85,0x03,0x07,0x01,0x02,0x05,          /* [6442] OBJ_id_tc26_cipher_constants */
53 +0x2A,0x85,0x03,0x07,0x01,0x02,0x05,0x01,     /* [6449] OBJ_id_tc26_gost_28147_constants */
54 +0x2A,0x85,0x03,0x07,0x01,0x02,0x05,0x01,0x01,/* [6457] OBJ_id_tc26_gost_28147_param_Z */
55 +0x2A,0x85,0x03,0x03,0x81,0x03,0x01,0x01,     /* [6466] OBJ_INN */
56 +0x2A,0x85,0x03,0x64,0x01,                    /* [6474] OBJ_OGRN */
57 +0x2A,0x85,0x03,0x64,0x03,                    /* [6479] OBJ_SNILS */
58  };
59  
60  static const ASN1_OBJECT nid_objs[NUM_NID]={
61 @@ -2514,6 +2545,81 @@ static const ASN1_OBJECT nid_objs[NUM_NID]={
62         NID_jurisdictionStateOrProvinceName,11,&(lvalues[6232]),0},
63  {"jurisdictionC","jurisdictionCountryName",
64         NID_jurisdictionCountryName,11,&(lvalues[6243]),0},
65 +{"id-tc26","id-tc26",NID_id_tc26,5,&(lvalues[6254]),0},
66 +{"gost89-cnt-12","gost89-cnt-12",NID_gost89_cnt_12,0,NULL,0},
67 +{"gost-mac-12","gost-mac-12",NID_gost_mac_12,0,NULL,0},
68 +{"id-tc26-algorithms","id-tc26-algorithms",NID_id_tc26_algorithms,6,
69 +       &(lvalues[6259]),0},
70 +{"id-tc26-sign","id-tc26-sign",NID_id_tc26_sign,7,&(lvalues[6265]),0},
71 +{"gost2012_256","GOST R 34.10-2012 with 256 bit modulus",
72 +       NID_id_GostR3410_2012_256,8,&(lvalues[6272]),0},
73 +{"gost2012_512","GOST R 34.10-2012 with 512 bit modulus",
74 +       NID_id_GostR3410_2012_512,8,&(lvalues[6280]),0},
75 +{"id-tc26-digest","id-tc26-digest",NID_id_tc26_digest,7,
76 +       &(lvalues[6288]),0},
77 +{"md_gost12_256","GOST R 34.11-2012 with 256 bit hash",
78 +       NID_id_GostR3411_2012_256,8,&(lvalues[6295]),0},
79 +{"md_gost12_512","GOST R 34.11-2012 with 512 bit hash",
80 +       NID_id_GostR3411_2012_512,8,&(lvalues[6303]),0},
81 +{"id-tc26-signwithdigest","id-tc26-signwithdigest",
82 +       NID_id_tc26_signwithdigest,7,&(lvalues[6311]),0},
83 +{"id-tc26-signwithdigest-gost3410-2012-256",
84 +       "GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)",
85 +       NID_id_tc26_signwithdigest_gost3410_2012_256,8,&(lvalues[6318]),0},
86 +{"id-tc26-signwithdigest-gost3410-2012-512",
87 +       "GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)",
88 +       NID_id_tc26_signwithdigest_gost3410_2012_512,8,&(lvalues[6326]),0},
89 +{"id-tc26-mac","id-tc26-mac",NID_id_tc26_mac,7,&(lvalues[6334]),0},
90 +{"id-tc26-hmac-gost-3411-2012-256","HMAC GOST 34.11-2012 256 bit",
91 +       NID_id_tc26_hmac_gost_3411_2012_256,8,&(lvalues[6341]),0},
92 +{"id-tc26-hmac-gost-3411-2012-512","HMAC GOST 34.11-2012 512 bit",
93 +       NID_id_tc26_hmac_gost_3411_2012_512,8,&(lvalues[6349]),0},
94 +{"id-tc26-cipher","id-tc26-cipher",NID_id_tc26_cipher,7,
95 +       &(lvalues[6357]),0},
96 +{"id-tc26-agreement","id-tc26-agreement",NID_id_tc26_agreement,7,
97 +       &(lvalues[6364]),0},
98 +{"id-tc26-agreement-gost-3410-2012-256",
99 +       "id-tc26-agreement-gost-3410-2012-256",
100 +       NID_id_tc26_agreement_gost_3410_2012_256,8,&(lvalues[6371]),0},
101 +{"id-tc26-agreement-gost-3410-2012-512",
102 +       "id-tc26-agreement-gost-3410-2012-512",
103 +       NID_id_tc26_agreement_gost_3410_2012_512,8,&(lvalues[6379]),0},
104 +{"id-tc26-constants","id-tc26-constants",NID_id_tc26_constants,6,
105 +       &(lvalues[6387]),0},
106 +{"id-tc26-sign-constants","id-tc26-sign-constants",
107 +       NID_id_tc26_sign_constants,7,&(lvalues[6393]),0},
108 +{"id-tc26-gost-3410-2012-512-constants",
109 +       "id-tc26-gost-3410-2012-512-constants",
110 +       NID_id_tc26_gost_3410_2012_512_constants,8,&(lvalues[6400]),0},
111 +{"id-tc26-gost-3410-2012-512-paramSetTest",
112 +       "GOST R 34.10-2012 (512 bit) testing parameter set",
113 +       NID_id_tc26_gost_3410_2012_512_paramSetTest,9,&(lvalues[6408]),0},
114 +{"id-tc26-gost-3410-2012-512-paramSetA",
115 +       "GOST R 34.10-2012 (512 bit) ParamSet A",
116 +       NID_id_tc26_gost_3410_2012_512_paramSetA,9,&(lvalues[6417]),0},
117 +{"id-tc26-gost-3410-2012-512-paramSetB",
118 +       "GOST R 34.10-2012 (512 bit) ParamSet B",
119 +       NID_id_tc26_gost_3410_2012_512_paramSetB,9,&(lvalues[6426]),0},
120 +{"id-tc26-digest-constants","id-tc26-digest-constants",
121 +       NID_id_tc26_digest_constants,7,&(lvalues[6435]),0},
122 +{"id-tc26-cipher-constants","id-tc26-cipher-constants",
123 +       NID_id_tc26_cipher_constants,7,&(lvalues[6442]),0},
124 +{"id-tc26-gost-28147-constants","id-tc26-gost-28147-constants",
125 +       NID_id_tc26_gost_28147_constants,8,&(lvalues[6449]),0},
126 +{"id-tc26-gost-28147-param-Z","GOST 28147-89 TC26 parameter set",
127 +       NID_id_tc26_gost_28147_param_Z,9,&(lvalues[6457]),0},
128 +{"INN","INN",NID_INN,8,&(lvalues[6466]),0},
129 +{"OGRN","OGRN",NID_OGRN,5,&(lvalues[6474]),0},
130 +{"SNILS","SNILS",NID_SNILS,5,&(lvalues[6479]),0},
131 +{"gost89-cbc","gost89-cbc",NID_gost89_cbc,0,NULL,0},
132 +{"gost89-ecb","gost89-ecb",NID_gost89_ecb,0,NULL,0},
133 +{"gost89-ctr","gost89-ctr",NID_gost89_ctr,0,NULL,0},
134 +{"grasshopper-ecb","grasshopper-ecb",NID_grasshopper_ecb,0,NULL,0},
135 +{"grasshopper-ctr","grasshopper-ctr",NID_grasshopper_ctr,0,NULL,0},
136 +{"grasshopper-ofb","grasshopper-ofb",NID_grasshopper_ofb,0,NULL,0},
137 +{"grasshopper-cbc","grasshopper-cbc",NID_grasshopper_cbc,0,NULL,0},
138 +{"grasshopper-cfb","grasshopper-cfb",NID_grasshopper_cfb,0,NULL,0},
139 +{"grasshopper-mac","grasshopper-mac",NID_grasshopper_mac,0,NULL,0},
140  };
141  
142  static const unsigned int sn_objs[NUM_SN]={
143 @@ -2614,6 +2720,7 @@ static const unsigned int sn_objs[NUM_SN]={
144  35,    /* "IDEA-CFB" */
145  36,    /* "IDEA-ECB" */
146  46,    /* "IDEA-OFB" */
147 +988,   /* "INN" */
148  181,   /* "ISO" */
149  183,   /* "ISO-US" */
150  645,   /* "ITU-T" */
151 @@ -2635,6 +2742,7 @@ static const unsigned int sn_objs[NUM_SN]={
152  17,    /* "O" */
153  178,   /* "OCSP" */
154  180,   /* "OCSPSigning" */
155 +989,   /* "OGRN" */
156  379,   /* "ORG" */
157  18,    /* "OU" */
158  749,   /* "Oakley-EC2N-3" */
159 @@ -2700,6 +2808,7 @@ static const unsigned int sn_objs[NUM_SN]={
160  188,   /* "SMIME" */
161  167,   /* "SMIME-CAPS" */
162  100,   /* "SN" */
163 +990,   /* "SNILS" */
164  16,    /* "ST" */
165  143,   /* "SXNetID" */
166  458,   /* "UID" */
167 @@ -2858,12 +2967,25 @@ static const unsigned int sn_objs[NUM_SN]={
168  156,   /* "friendlyName" */
169  509,   /* "generationQualifier" */
170  815,   /* "gost-mac" */
171 +960,   /* "gost-mac-12" */
172  811,   /* "gost2001" */
173  851,   /* "gost2001cc" */
174 +963,   /* "gost2012_256" */
175 +964,   /* "gost2012_512" */
176  813,   /* "gost89" */
177 +991,   /* "gost89-cbc" */
178  814,   /* "gost89-cnt" */
179 +959,   /* "gost89-cnt-12" */
180 +993,   /* "gost89-ctr" */
181 +992,   /* "gost89-ecb" */
182  812,   /* "gost94" */
183  850,   /* "gost94cc" */
184 +997,   /* "grasshopper-cbc" */
185 +998,   /* "grasshopper-cfb" */
186 +995,   /* "grasshopper-ctr" */
187 +994,   /* "grasshopper-ecb" */
188 +999,   /* "grasshopper-mac" */
189 +996,   /* "grasshopper-ofb" */
190  797,   /* "hmacWithMD5" */
191  163,   /* "hmacWithSHA1" */
192  798,   /* "hmacWithSHA224" */
193 @@ -3115,6 +3237,30 @@ static const unsigned int sn_objs[NUM_SN]={
194  194,   /* "id-smime-spq" */
195  250,   /* "id-smime-spq-ets-sqt-unotice" */
196  249,   /* "id-smime-spq-ets-sqt-uri" */
197 +958,   /* "id-tc26" */
198 +975,   /* "id-tc26-agreement" */
199 +976,   /* "id-tc26-agreement-gost-3410-2012-256" */
200 +977,   /* "id-tc26-agreement-gost-3410-2012-512" */
201 +961,   /* "id-tc26-algorithms" */
202 +974,   /* "id-tc26-cipher" */
203 +985,   /* "id-tc26-cipher-constants" */
204 +978,   /* "id-tc26-constants" */
205 +965,   /* "id-tc26-digest" */
206 +984,   /* "id-tc26-digest-constants" */
207 +986,   /* "id-tc26-gost-28147-constants" */
208 +987,   /* "id-tc26-gost-28147-param-Z" */
209 +980,   /* "id-tc26-gost-3410-2012-512-constants" */
210 +982,   /* "id-tc26-gost-3410-2012-512-paramSetA" */
211 +983,   /* "id-tc26-gost-3410-2012-512-paramSetB" */
212 +981,   /* "id-tc26-gost-3410-2012-512-paramSetTest" */
213 +972,   /* "id-tc26-hmac-gost-3411-2012-256" */
214 +973,   /* "id-tc26-hmac-gost-3411-2012-512" */
215 +971,   /* "id-tc26-mac" */
216 +962,   /* "id-tc26-sign" */
217 +979,   /* "id-tc26-sign-constants" */
218 +968,   /* "id-tc26-signwithdigest" */
219 +969,   /* "id-tc26-signwithdigest-gost3410-2012-256" */
220 +970,   /* "id-tc26-signwithdigest-gost3410-2012-512" */
221  676,   /* "identified-organization" */
222  461,   /* "info" */
223  748,   /* "inhibitAnyPolicy" */
224 @@ -3140,6 +3286,8 @@ static const unsigned int sn_objs[NUM_SN]={
225  460,   /* "mail" */
226  493,   /* "mailPreferenceOption" */
227  467,   /* "manager" */
228 +966,   /* "md_gost12_256" */
229 +967,   /* "md_gost12_512" */
230  809,   /* "md_gost94" */
231  875,   /* "member" */
232  182,   /* "member-body" */
233 @@ -3497,12 +3645,22 @@ static const unsigned int ln_objs[NUM_LN]={
234  813,   /* "GOST 28147-89" */
235  849,   /* "GOST 28147-89 Cryptocom ParamSet" */
236  815,   /* "GOST 28147-89 MAC" */
237 +987,   /* "GOST 28147-89 TC26 parameter set" */
238  851,   /* "GOST 34.10-2001 Cryptocom" */
239  850,   /* "GOST 34.10-94 Cryptocom" */
240  811,   /* "GOST R 34.10-2001" */
241  817,   /* "GOST R 34.10-2001 DH" */
242 +982,   /* "GOST R 34.10-2012 (512 bit) ParamSet A" */
243 +983,   /* "GOST R 34.10-2012 (512 bit) ParamSet B" */
244 +981,   /* "GOST R 34.10-2012 (512 bit) testing parameter set" */
245 +963,   /* "GOST R 34.10-2012 with 256 bit modulus" */
246 +964,   /* "GOST R 34.10-2012 with 512 bit modulus" */
247 +969,   /* "GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)" */
248 +970,   /* "GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)" */
249  812,   /* "GOST R 34.10-94" */
250  818,   /* "GOST R 34.10-94 DH" */
251 +966,   /* "GOST R 34.11-2012 with 256 bit hash" */
252 +967,   /* "GOST R 34.11-2012 with 512 bit hash" */
253  809,   /* "GOST R 34.11-94" */
254  816,   /* "GOST R 34.11-94 PRF" */
255  807,   /* "GOST R 34.11-94 with GOST R 34.10-2001" */
256 @@ -3510,12 +3668,15 @@ static const unsigned int ln_objs[NUM_LN]={
257  808,   /* "GOST R 34.11-94 with GOST R 34.10-94" */
258  852,   /* "GOST R 34.11-94 with GOST R 34.10-94 Cryptocom" */
259  854,   /* "GOST R 3410-2001 Parameter Set Cryptocom" */
260 +972,   /* "HMAC GOST 34.11-2012 256 bit" */
261 +973,   /* "HMAC GOST 34.11-2012 512 bit" */
262  810,   /* "HMAC GOST 34.11-94" */
263  432,   /* "Hold Instruction Call Issuer" */
264  430,   /* "Hold Instruction Code" */
265  431,   /* "Hold Instruction None" */
266  433,   /* "Hold Instruction Reject" */
267  634,   /* "ICC or token signature" */
268 +988,   /* "INN" */
269  294,   /* "IPSec End System" */
270  295,   /* "IPSec Tunnel" */
271  296,   /* "IPSec User" */
272 @@ -3560,6 +3721,7 @@ static const unsigned int ln_objs[NUM_LN]={
273  366,   /* "OCSP Nonce" */
274  371,   /* "OCSP Service Locator" */
275  180,   /* "OCSP Signing" */
276 +989,   /* "OGRN" */
277  161,   /* "PBES2" */
278  69,    /* "PBKDF2" */
279  162,   /* "PBMAC1" */
280 @@ -3573,6 +3735,7 @@ static const unsigned int ln_objs[NUM_LN]={
281   2,    /* "RSA Data Security, Inc. PKCS" */
282  188,   /* "S/MIME" */
283  167,   /* "S/MIME Capabilities" */
284 +990,   /* "SNILS" */
285  387,   /* "SNMPv2" */
286  512,   /* "Secure Electronic Transactions" */
287  386,   /* "Security" */
288 @@ -3825,7 +3988,18 @@ static const unsigned int ln_objs[NUM_LN]={
289  509,   /* "generationQualifier" */
290  601,   /* "generic cryptogram" */
291  99,    /* "givenName" */
292 +960,   /* "gost-mac-12" */
293 +991,   /* "gost89-cbc" */
294  814,   /* "gost89-cnt" */
295 +959,   /* "gost89-cnt-12" */
296 +993,   /* "gost89-ctr" */
297 +992,   /* "gost89-ecb" */
298 +997,   /* "grasshopper-cbc" */
299 +998,   /* "grasshopper-cfb" */
300 +995,   /* "grasshopper-ctr" */
301 +994,   /* "grasshopper-ecb" */
302 +999,   /* "grasshopper-mac" */
303 +996,   /* "grasshopper-ofb" */
304  855,   /* "hmac" */
305  780,   /* "hmac-md5" */
306  781,   /* "hmac-sha1" */
307 @@ -4053,6 +4227,22 @@ static const unsigned int ln_objs[NUM_LN]={
308  194,   /* "id-smime-spq" */
309  250,   /* "id-smime-spq-ets-sqt-unotice" */
310  249,   /* "id-smime-spq-ets-sqt-uri" */
311 +958,   /* "id-tc26" */
312 +975,   /* "id-tc26-agreement" */
313 +976,   /* "id-tc26-agreement-gost-3410-2012-256" */
314 +977,   /* "id-tc26-agreement-gost-3410-2012-512" */
315 +961,   /* "id-tc26-algorithms" */
316 +974,   /* "id-tc26-cipher" */
317 +985,   /* "id-tc26-cipher-constants" */
318 +978,   /* "id-tc26-constants" */
319 +965,   /* "id-tc26-digest" */
320 +984,   /* "id-tc26-digest-constants" */
321 +986,   /* "id-tc26-gost-28147-constants" */
322 +980,   /* "id-tc26-gost-3410-2012-512-constants" */
323 +971,   /* "id-tc26-mac" */
324 +962,   /* "id-tc26-sign" */
325 +979,   /* "id-tc26-sign-constants" */
326 +968,   /* "id-tc26-signwithdigest" */
327  34,    /* "idea-cbc" */
328  35,    /* "idea-cfb" */
329  36,    /* "idea-ecb" */
330 @@ -4661,6 +4851,9 @@ static const unsigned int obj_objs[NUM_OBJ]={
331  639,   /* OBJ_set_brand_JCB                2 23 42 8 35 */
332  805,   /* OBJ_cryptopro                    1 2 643 2 2 */
333  806,   /* OBJ_cryptocom                    1 2 643 2 9 */
334 +958,   /* OBJ_id_tc26                      1 2 643 7 1 */
335 +989,   /* OBJ_OGRN                         1 2 643 100 1 */
336 +990,   /* OBJ_SNILS                        1 2 643 100 3 */
337  184,   /* OBJ_X9_57                        1 2 840 10040 */
338  405,   /* OBJ_ansi_X9_62                   1 2 840 10045 */
339  389,   /* OBJ_Enterprises                  1 3 6 1 4 1 */
340 @@ -4745,6 +4938,8 @@ static const unsigned int obj_objs[NUM_OBJ]={
341  816,   /* OBJ_id_GostR3411_94_prf          1 2 643 2 2 23 */
342  817,   /* OBJ_id_GostR3410_2001DH          1 2 643 2 2 98 */
343  818,   /* OBJ_id_GostR3410_94DH            1 2 643 2 2 99 */
344 +961,   /* OBJ_id_tc26_algorithms           1 2 643 7 1 1 */
345 +978,   /* OBJ_id_tc26_constants            1 2 643 7 1 2 */
346   1,    /* OBJ_rsadsi                       1 2 840 113549 */
347  185,   /* OBJ_X9cm                         1 2 840 10040 4 */
348  127,   /* OBJ_id_pkix                      1 3 6 1 5 5 7 */
349 @@ -4795,6 +4990,15 @@ static const unsigned int obj_objs[NUM_OBJ]={
350  842,   /* OBJ_id_GostR3410_2001_CryptoPro_C_ParamSet 1 2 643 2 2 35 3 */
351  843,   /* OBJ_id_GostR3410_2001_CryptoPro_XchA_ParamSet 1 2 643 2 2 36 0 */
352  844,   /* OBJ_id_GostR3410_2001_CryptoPro_XchB_ParamSet 1 2 643 2 2 36 1 */
353 +962,   /* OBJ_id_tc26_sign                 1 2 643 7 1 1 1 */
354 +965,   /* OBJ_id_tc26_digest               1 2 643 7 1 1 2 */
355 +968,   /* OBJ_id_tc26_signwithdigest       1 2 643 7 1 1 3 */
356 +971,   /* OBJ_id_tc26_mac                  1 2 643 7 1 1 4 */
357 +974,   /* OBJ_id_tc26_cipher               1 2 643 7 1 1 5 */
358 +975,   /* OBJ_id_tc26_agreement            1 2 643 7 1 1 6 */
359 +979,   /* OBJ_id_tc26_sign_constants       1 2 643 7 1 2 1 */
360 +984,   /* OBJ_id_tc26_digest_constants     1 2 643 7 1 2 2 */
361 +985,   /* OBJ_id_tc26_cipher_constants     1 2 643 7 1 2 5 */
362   2,    /* OBJ_pkcs                         1 2 840 113549 1 */
363  431,   /* OBJ_hold_instruction_none        1 2 840 10040 2 1 */
364  432,   /* OBJ_hold_instruction_call_issuer 1 2 840 10040 2 2 */
365 @@ -4846,6 +5050,19 @@ static const unsigned int obj_objs[NUM_OBJ]={
366  851,   /* OBJ_id_GostR3410_2001_cc         1 2 643 2 9 1 5 4 */
367  849,   /* OBJ_id_Gost28147_89_cc           1 2 643 2 9 1 6 1 */
368  854,   /* OBJ_id_GostR3410_2001_ParamSet_cc 1 2 643 2 9 1 8 1 */
369 +988,   /* OBJ_INN                          1 2 643 3 131 1 1 */
370 +963,   /* OBJ_id_GostR3410_2012_256        1 2 643 7 1 1 1 1 */
371 +964,   /* OBJ_id_GostR3410_2012_512        1 2 643 7 1 1 1 2 */
372 +966,   /* OBJ_id_GostR3411_2012_256        1 2 643 7 1 1 2 2 */
373 +967,   /* OBJ_id_GostR3411_2012_512        1 2 643 7 1 1 2 3 */
374 +969,   /* OBJ_id_tc26_signwithdigest_gost3410_2012_256 1 2 643 7 1 1 3 2 */
375 +970,   /* OBJ_id_tc26_signwithdigest_gost3410_2012_512 1 2 643 7 1 1 3 3 */
376 +972,   /* OBJ_id_tc26_hmac_gost_3411_2012_256 1 2 643 7 1 1 4 1 */
377 +973,   /* OBJ_id_tc26_hmac_gost_3411_2012_512 1 2 643 7 1 1 4 2 */
378 +976,   /* OBJ_id_tc26_agreement_gost_3410_2012_256 1 2 643 7 1 1 6 1 */
379 +977,   /* OBJ_id_tc26_agreement_gost_3410_2012_512 1 2 643 7 1 1 6 2 */
380 +980,   /* OBJ_id_tc26_gost_3410_2012_512_constants 1 2 643 7 1 2 1 2 */
381 +986,   /* OBJ_id_tc26_gost_28147_constants 1 2 643 7 1 2 5 1 */
382  186,   /* OBJ_pkcs1                        1 2 840 113549 1 1 */
383  27,    /* OBJ_pkcs3                        1 2 840 113549 1 3 */
384  187,   /* OBJ_pkcs5                        1 2 840 113549 1 5 */
385 @@ -5013,6 +5230,10 @@ static const unsigned int obj_objs[NUM_OBJ]={
386  439,   /* OBJ_pilotAttributeSyntax         0 9 2342 19200300 100 3 */
387  440,   /* OBJ_pilotObjectClass             0 9 2342 19200300 100 4 */
388  441,   /* OBJ_pilotGroups                  0 9 2342 19200300 100 10 */
389 +981,   /* OBJ_id_tc26_gost_3410_2012_512_paramSetTest 1 2 643 7 1 2 1 2 0 */
390 +982,   /* OBJ_id_tc26_gost_3410_2012_512_paramSetA 1 2 643 7 1 2 1 2 1 */
391 +983,   /* OBJ_id_tc26_gost_3410_2012_512_paramSetB 1 2 643 7 1 2 1 2 2 */
392 +987,   /* OBJ_id_tc26_gost_28147_param_Z   1 2 643 7 1 2 5 1 1 */
393  108,   /* OBJ_cast5_cbc                    1 2 840 113533 7 66 10 */
394  112,   /* OBJ_pbeWithMD5AndCast5_CBC       1 2 840 113533 7 66 12 */
395  782,   /* OBJ_id_PasswordBasedMAC          1 2 840 113533 7 66 13 */
396 diff --git a/crypto/objects/obj_mac.h b/crypto/objects/obj_mac.h
397 index 779c309b86..430e14a244 100644
398 --- a/crypto/objects/obj_mac.h
399 +++ b/crypto/objects/obj_mac.h
400 @@ -3678,6 +3678,10 @@
401  #define NID_cryptocom           806
402  #define OBJ_cryptocom           OBJ_member_body,643L,2L,9L
403  
404 +#define SN_id_tc26              "id-tc26"
405 +#define NID_id_tc26             958
406 +#define OBJ_id_tc26             OBJ_member_body,643L,7L,1L
407 +
408  #define SN_id_GostR3411_94_with_GostR3410_2001          "id-GostR3411-94-with-GostR3410-2001"
409  #define LN_id_GostR3411_94_with_GostR3410_2001          "GOST R 34.11-94 with GOST R 34.10-2001"
410  #define NID_id_GostR3411_94_with_GostR3410_2001         807
411 @@ -3716,11 +3720,26 @@
412  #define SN_gost89_cnt           "gost89-cnt"
413  #define NID_gost89_cnt          814
414  
415 +#define SN_gost89_cnt_12                "gost89-cnt-12"
416 +#define NID_gost89_cnt_12               959
417 +
418 +#define SN_gost89_cbc           "gost89-cbc"
419 +#define NID_gost89_cbc          991
420 +
421 +#define SN_gost89_ecb           "gost89-ecb"
422 +#define NID_gost89_ecb          992
423 +
424 +#define SN_gost89_ctr           "gost89-ctr"
425 +#define NID_gost89_ctr          993
426 +
427  #define SN_id_Gost28147_89_MAC          "gost-mac"
428  #define LN_id_Gost28147_89_MAC          "GOST 28147-89 MAC"
429  #define NID_id_Gost28147_89_MAC         815
430  #define OBJ_id_Gost28147_89_MAC         OBJ_cryptopro,22L
431  
432 +#define SN_gost_mac_12          "gost-mac-12"
433 +#define NID_gost_mac_12         960
434 +
435  #define SN_id_GostR3411_94_prf          "prf-gostr3411-94"
436  #define LN_id_GostR3411_94_prf          "GOST R 34.11-94 PRF"
437  #define NID_id_GostR3411_94_prf         816
438 @@ -3886,6 +3905,159 @@
439  #define NID_id_GostR3410_2001_ParamSet_cc               854
440  #define OBJ_id_GostR3410_2001_ParamSet_cc               OBJ_cryptocom,1L,8L,1L
441  
442 +#define SN_id_tc26_algorithms           "id-tc26-algorithms"
443 +#define NID_id_tc26_algorithms          961
444 +#define OBJ_id_tc26_algorithms          OBJ_id_tc26,1L
445 +
446 +#define SN_id_tc26_sign         "id-tc26-sign"
447 +#define NID_id_tc26_sign                962
448 +#define OBJ_id_tc26_sign                OBJ_id_tc26_algorithms,1L
449 +
450 +#define SN_id_GostR3410_2012_256                "gost2012_256"
451 +#define LN_id_GostR3410_2012_256                "GOST R 34.10-2012 with 256 bit modulus"
452 +#define NID_id_GostR3410_2012_256               963
453 +#define OBJ_id_GostR3410_2012_256               OBJ_id_tc26_sign,1L
454 +
455 +#define SN_id_GostR3410_2012_512                "gost2012_512"
456 +#define LN_id_GostR3410_2012_512                "GOST R 34.10-2012 with 512 bit modulus"
457 +#define NID_id_GostR3410_2012_512               964
458 +#define OBJ_id_GostR3410_2012_512               OBJ_id_tc26_sign,2L
459 +
460 +#define SN_id_tc26_digest               "id-tc26-digest"
461 +#define NID_id_tc26_digest              965
462 +#define OBJ_id_tc26_digest              OBJ_id_tc26_algorithms,2L
463 +
464 +#define SN_id_GostR3411_2012_256                "md_gost12_256"
465 +#define LN_id_GostR3411_2012_256                "GOST R 34.11-2012 with 256 bit hash"
466 +#define NID_id_GostR3411_2012_256               966
467 +#define OBJ_id_GostR3411_2012_256               OBJ_id_tc26_digest,2L
468 +
469 +#define SN_id_GostR3411_2012_512                "md_gost12_512"
470 +#define LN_id_GostR3411_2012_512                "GOST R 34.11-2012 with 512 bit hash"
471 +#define NID_id_GostR3411_2012_512               967
472 +#define OBJ_id_GostR3411_2012_512               OBJ_id_tc26_digest,3L
473 +
474 +#define SN_id_tc26_signwithdigest               "id-tc26-signwithdigest"
475 +#define NID_id_tc26_signwithdigest              968
476 +#define OBJ_id_tc26_signwithdigest              OBJ_id_tc26_algorithms,3L
477 +
478 +#define SN_id_tc26_signwithdigest_gost3410_2012_256             "id-tc26-signwithdigest-gost3410-2012-256"
479 +#define LN_id_tc26_signwithdigest_gost3410_2012_256             "GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)"
480 +#define NID_id_tc26_signwithdigest_gost3410_2012_256            969
481 +#define OBJ_id_tc26_signwithdigest_gost3410_2012_256            OBJ_id_tc26_signwithdigest,2L
482 +
483 +#define SN_id_tc26_signwithdigest_gost3410_2012_512             "id-tc26-signwithdigest-gost3410-2012-512"
484 +#define LN_id_tc26_signwithdigest_gost3410_2012_512             "GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)"
485 +#define NID_id_tc26_signwithdigest_gost3410_2012_512            970
486 +#define OBJ_id_tc26_signwithdigest_gost3410_2012_512            OBJ_id_tc26_signwithdigest,3L
487 +
488 +#define SN_id_tc26_mac          "id-tc26-mac"
489 +#define NID_id_tc26_mac         971
490 +#define OBJ_id_tc26_mac         OBJ_id_tc26_algorithms,4L
491 +
492 +#define SN_id_tc26_hmac_gost_3411_2012_256              "id-tc26-hmac-gost-3411-2012-256"
493 +#define LN_id_tc26_hmac_gost_3411_2012_256              "HMAC GOST 34.11-2012 256 bit"
494 +#define NID_id_tc26_hmac_gost_3411_2012_256             972
495 +#define OBJ_id_tc26_hmac_gost_3411_2012_256             OBJ_id_tc26_mac,1L
496 +
497 +#define SN_id_tc26_hmac_gost_3411_2012_512              "id-tc26-hmac-gost-3411-2012-512"
498 +#define LN_id_tc26_hmac_gost_3411_2012_512              "HMAC GOST 34.11-2012 512 bit"
499 +#define NID_id_tc26_hmac_gost_3411_2012_512             973
500 +#define OBJ_id_tc26_hmac_gost_3411_2012_512             OBJ_id_tc26_mac,2L
501 +
502 +#define SN_id_tc26_cipher               "id-tc26-cipher"
503 +#define NID_id_tc26_cipher              974
504 +#define OBJ_id_tc26_cipher              OBJ_id_tc26_algorithms,5L
505 +
506 +#define SN_id_tc26_agreement            "id-tc26-agreement"
507 +#define NID_id_tc26_agreement           975
508 +#define OBJ_id_tc26_agreement           OBJ_id_tc26_algorithms,6L
509 +
510 +#define SN_id_tc26_agreement_gost_3410_2012_256         "id-tc26-agreement-gost-3410-2012-256"
511 +#define NID_id_tc26_agreement_gost_3410_2012_256                976
512 +#define OBJ_id_tc26_agreement_gost_3410_2012_256                OBJ_id_tc26_agreement,1L
513 +
514 +#define SN_id_tc26_agreement_gost_3410_2012_512         "id-tc26-agreement-gost-3410-2012-512"
515 +#define NID_id_tc26_agreement_gost_3410_2012_512                977
516 +#define OBJ_id_tc26_agreement_gost_3410_2012_512                OBJ_id_tc26_agreement,2L
517 +
518 +#define SN_id_tc26_constants            "id-tc26-constants"
519 +#define NID_id_tc26_constants           978
520 +#define OBJ_id_tc26_constants           OBJ_id_tc26,2L
521 +
522 +#define SN_id_tc26_sign_constants               "id-tc26-sign-constants"
523 +#define NID_id_tc26_sign_constants              979
524 +#define OBJ_id_tc26_sign_constants              OBJ_id_tc26_constants,1L
525 +
526 +#define SN_id_tc26_gost_3410_2012_512_constants         "id-tc26-gost-3410-2012-512-constants"
527 +#define NID_id_tc26_gost_3410_2012_512_constants                980
528 +#define OBJ_id_tc26_gost_3410_2012_512_constants                OBJ_id_tc26_sign_constants,2L
529 +
530 +#define SN_id_tc26_gost_3410_2012_512_paramSetTest              "id-tc26-gost-3410-2012-512-paramSetTest"
531 +#define LN_id_tc26_gost_3410_2012_512_paramSetTest              "GOST R 34.10-2012 (512 bit) testing parameter set"
532 +#define NID_id_tc26_gost_3410_2012_512_paramSetTest             981
533 +#define OBJ_id_tc26_gost_3410_2012_512_paramSetTest             OBJ_id_tc26_gost_3410_2012_512_constants,0L
534 +
535 +#define SN_id_tc26_gost_3410_2012_512_paramSetA         "id-tc26-gost-3410-2012-512-paramSetA"
536 +#define LN_id_tc26_gost_3410_2012_512_paramSetA         "GOST R 34.10-2012 (512 bit) ParamSet A"
537 +#define NID_id_tc26_gost_3410_2012_512_paramSetA                982
538 +#define OBJ_id_tc26_gost_3410_2012_512_paramSetA                OBJ_id_tc26_gost_3410_2012_512_constants,1L
539 +
540 +#define SN_id_tc26_gost_3410_2012_512_paramSetB         "id-tc26-gost-3410-2012-512-paramSetB"
541 +#define LN_id_tc26_gost_3410_2012_512_paramSetB         "GOST R 34.10-2012 (512 bit) ParamSet B"
542 +#define NID_id_tc26_gost_3410_2012_512_paramSetB                983
543 +#define OBJ_id_tc26_gost_3410_2012_512_paramSetB                OBJ_id_tc26_gost_3410_2012_512_constants,2L
544 +
545 +#define SN_id_tc26_digest_constants             "id-tc26-digest-constants"
546 +#define NID_id_tc26_digest_constants            984
547 +#define OBJ_id_tc26_digest_constants            OBJ_id_tc26_constants,2L
548 +
549 +#define SN_id_tc26_cipher_constants             "id-tc26-cipher-constants"
550 +#define NID_id_tc26_cipher_constants            985
551 +#define OBJ_id_tc26_cipher_constants            OBJ_id_tc26_constants,5L
552 +
553 +#define SN_id_tc26_gost_28147_constants         "id-tc26-gost-28147-constants"
554 +#define NID_id_tc26_gost_28147_constants                986
555 +#define OBJ_id_tc26_gost_28147_constants                OBJ_id_tc26_cipher_constants,1L
556 +
557 +#define SN_id_tc26_gost_28147_param_Z           "id-tc26-gost-28147-param-Z"
558 +#define LN_id_tc26_gost_28147_param_Z           "GOST 28147-89 TC26 parameter set"
559 +#define NID_id_tc26_gost_28147_param_Z          987
560 +#define OBJ_id_tc26_gost_28147_param_Z          OBJ_id_tc26_gost_28147_constants,1L
561 +
562 +#define SN_INN          "INN"
563 +#define LN_INN          "INN"
564 +#define NID_INN         988
565 +#define OBJ_INN         OBJ_member_body,643L,3L,131L,1L,1L
566 +
567 +#define SN_OGRN         "OGRN"
568 +#define LN_OGRN         "OGRN"
569 +#define NID_OGRN                989
570 +#define OBJ_OGRN                OBJ_member_body,643L,100L,1L
571 +
572 +#define SN_SNILS                "SNILS"
573 +#define LN_SNILS                "SNILS"
574 +#define NID_SNILS               990
575 +#define OBJ_SNILS               OBJ_member_body,643L,100L,3L
576 +
577 +#define SN_grasshopper_ecb              "grasshopper-ecb"
578 +#define NID_grasshopper_ecb             994
579 +
580 +#define SN_grasshopper_ctr              "grasshopper-ctr"
581 +#define NID_grasshopper_ctr             995
582 +
583 +#define SN_grasshopper_ofb              "grasshopper-ofb"
584 +#define NID_grasshopper_ofb             996
585 +
586 +#define SN_grasshopper_cbc              "grasshopper-cbc"
587 +#define NID_grasshopper_cbc             997
588 +
589 +#define SN_grasshopper_cfb              "grasshopper-cfb"
590 +#define NID_grasshopper_cfb             998
591 +
592 +#define SN_grasshopper_mac              "grasshopper-mac"
593 +#define NID_grasshopper_mac             999
594 +
595  #define SN_camellia_128_cbc             "CAMELLIA-128-CBC"
596  #define LN_camellia_128_cbc             "camellia-128-cbc"
597  #define NID_camellia_128_cbc            751
598 diff --git a/crypto/objects/obj_mac.num b/crypto/objects/obj_mac.num
599 index 8e5ea83363..e5f2eaeb6e 100644
600 --- a/crypto/objects/obj_mac.num
601 +++ b/crypto/objects/obj_mac.num
602 @@ -955,3 +955,45 @@ ct_cert_scts               954
603  jurisdictionLocalityName               955
604  jurisdictionStateOrProvinceName                956
605  jurisdictionCountryName                957
606 +id_tc26                958
607 +gost89_cnt_12          959
608 +gost_mac_12            960
609 +id_tc26_algorithms             961
610 +id_tc26_sign           962
611 +id_GostR3410_2012_256          963
612 +id_GostR3410_2012_512          964
613 +id_tc26_digest         965
614 +id_GostR3411_2012_256          966
615 +id_GostR3411_2012_512          967
616 +id_tc26_signwithdigest         968
617 +id_tc26_signwithdigest_gost3410_2012_256               969
618 +id_tc26_signwithdigest_gost3410_2012_512               970
619 +id_tc26_mac            971
620 +id_tc26_hmac_gost_3411_2012_256                972
621 +id_tc26_hmac_gost_3411_2012_512                973
622 +id_tc26_cipher         974
623 +id_tc26_agreement              975
624 +id_tc26_agreement_gost_3410_2012_256           976
625 +id_tc26_agreement_gost_3410_2012_512           977
626 +id_tc26_constants              978
627 +id_tc26_sign_constants         979
628 +id_tc26_gost_3410_2012_512_constants           980
629 +id_tc26_gost_3410_2012_512_paramSetTest                981
630 +id_tc26_gost_3410_2012_512_paramSetA           982
631 +id_tc26_gost_3410_2012_512_paramSetB           983
632 +id_tc26_digest_constants               984
633 +id_tc26_cipher_constants               985
634 +id_tc26_gost_28147_constants           986
635 +id_tc26_gost_28147_param_Z             987
636 +INN            988
637 +OGRN           989
638 +SNILS          990
639 +gost89_cbc             991
640 +gost89_ecb             992
641 +gost89_ctr             993
642 +grasshopper_ecb                994
643 +grasshopper_ctr                995
644 +grasshopper_ofb                996
645 +grasshopper_cbc                997
646 +grasshopper_cfb                998
647 +grasshopper_mac                999
648 diff --git a/crypto/objects/obj_xref.h b/crypto/objects/obj_xref.h
649 index e453e99f83..c07adee4f2 100644
650 --- a/crypto/objects/obj_xref.h
651 +++ b/crypto/objects/obj_xref.h
652 @@ -56,6 +56,10 @@ static const nid_triple sigoid_srt[] = {
653       NID_dh_cofactor_kdf},
654      {NID_dhSinglePass_cofactorDH_sha512kdf_scheme, NID_sha512,
655       NID_dh_cofactor_kdf},
656 +    {NID_id_tc26_signwithdigest_gost3410_2012_256, NID_id_GostR3411_2012_256,
657 +     NID_id_GostR3410_2012_256},
658 +    {NID_id_tc26_signwithdigest_gost3410_2012_512, NID_id_GostR3411_2012_512,
659 +     NID_id_GostR3410_2012_512},
660  };
661  
662  static const nid_triple *const sigoid_srt_xref[] = {
663 @@ -96,4 +100,6 @@ static const nid_triple *const sigoid_srt_xref[] = {
664      &sigoid_srt[26],
665      &sigoid_srt[27],
666      &sigoid_srt[28],
667 +    &sigoid_srt[40],
668 +    &sigoid_srt[41],
669  };
670 diff --git a/crypto/objects/obj_xref.txt b/crypto/objects/obj_xref.txt
671 index 19c94226b2..981103b36d 100644
672 --- a/crypto/objects/obj_xref.txt
673 +++ b/crypto/objects/obj_xref.txt
674 @@ -44,6 +44,8 @@ id_GostR3411_94_with_GostR3410_2001   id_GostR3411_94 id_GostR3410_2001
675  id_GostR3411_94_with_GostR3410_94      id_GostR3411_94 id_GostR3410_94
676  id_GostR3411_94_with_GostR3410_94_cc   id_GostR3411_94 id_GostR3410_94_cc
677  id_GostR3411_94_with_GostR3410_2001_cc id_GostR3411_94 id_GostR3410_2001_cc
678 +id_tc26_signwithdigest_gost3410_2012_256 id_GostR3411_2012_256 id_GostR3410_2012_256
679 +id_tc26_signwithdigest_gost3410_2012_512 id_GostR3411_2012_512 id_GostR3410_2012_512
680  # ECDH KDFs and their corresponding message digests and schemes
681  dhSinglePass_stdDH_sha1kdf_scheme              sha1    dh_std_kdf
682  dhSinglePass_stdDH_sha224kdf_scheme            sha224  dh_std_kdf
683 diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt
684 index b57aabb226..31286b176a 100644
685 --- a/crypto/objects/objects.txt
686 +++ b/crypto/objects/objects.txt
687 @@ -1156,6 +1156,7 @@ iso 0 10118 3 0 55        : whirlpool
688  
689  member-body 643 2 2    : cryptopro
690  member-body 643 2 9    : cryptocom
691 +member-body 643 7 1    : id-tc26
692  
693  cryptopro 3            : id-GostR3411-94-with-GostR3410-2001 : GOST R 34.11-94 with GOST R 34.10-2001
694  cryptopro 4            : id-GostR3411-94-with-GostR3410-94 : GOST R 34.11-94 with GOST R 34.10-94
695 @@ -1169,8 +1170,13 @@ cryptopro 20             : gost94        : GOST R 34.10-94
696  !Cname id-Gost28147-89
697  cryptopro 21           : gost89                : GOST 28147-89
698                         : gost89-cnt
699 +                       : gost89-cnt-12
700 +                       : gost89-cbc
701 +                       : gost89-ecb
702 +                       : gost89-ctr
703  !Cname id-Gost28147-89-MAC
704  cryptopro 22           : gost-mac      : GOST 28147-89 MAC
705 +                       : gost-mac-12
706  !Cname id-GostR3411-94-prf
707  cryptopro 23           : prf-gostr3411-94      : GOST R 34.11-94 PRF
708  cryptopro 98           : id-GostR3410-2001DH   : GOST R 34.10-2001 DH
709 @@ -1229,6 +1235,60 @@ cryptocom 1 3 4          : id-GostR3411-94-with-GostR3410-2001-cc : GOST R 34.11-94 with
710  
711  cryptocom 1 8 1                : id-GostR3410-2001-ParamSet-cc : GOST R 3410-2001 Parameter Set Cryptocom
712  
713 +# TC26 GOST OIDs
714 +
715 +id-tc26 1              : id-tc26-algorithms
716 +id-tc26-algorithms 1   : id-tc26-sign
717 +!Cname id-GostR3410-2012-256
718 +id-tc26-sign 1         : gost2012_256: GOST R 34.10-2012 with 256 bit modulus
719 +!Cname id-GostR3410-2012-512
720 +id-tc26-sign 2         : gost2012_512: GOST R 34.10-2012 with 512 bit modulus
721 +
722 +id-tc26-algorithms 2   : id-tc26-digest
723 +!Cname id-GostR3411-2012-256
724 +id-tc26-digest 2       : md_gost12_256: GOST R 34.11-2012 with 256 bit hash
725 +!Cname id-GostR3411-2012-512
726 +id-tc26-digest 3       : md_gost12_512: GOST R 34.11-2012 with 512 bit hash
727 +
728 +id-tc26-algorithms 3   : id-tc26-signwithdigest
729 +id-tc26-signwithdigest 2: id-tc26-signwithdigest-gost3410-2012-256: GOST R 34.10-2012 with GOST R 34.11-2012 (256 bit)
730 +id-tc26-signwithdigest 3: id-tc26-signwithdigest-gost3410-2012-512: GOST R 34.10-2012 with GOST R 34.11-2012 (512 bit)
731 +
732 +id-tc26-algorithms 4   : id-tc26-mac
733 +id-tc26-mac 1          : id-tc26-hmac-gost-3411-2012-256 : HMAC GOST 34.11-2012 256 bit
734 +id-tc26-mac 2          : id-tc26-hmac-gost-3411-2012-512 : HMAC GOST 34.11-2012 512 bit
735 +
736 +id-tc26-algorithms 5   : id-tc26-cipher
737 +
738 +id-tc26-algorithms 6   : id-tc26-agreement
739 +id-tc26-agreement 1    : id-tc26-agreement-gost-3410-2012-256
740 +id-tc26-agreement 2    : id-tc26-agreement-gost-3410-2012-512
741 +
742 +id-tc26 2              : id-tc26-constants
743 +
744 +id-tc26-constants 1    : id-tc26-sign-constants
745 +id-tc26-sign-constants 2: id-tc26-gost-3410-2012-512-constants
746 +id-tc26-gost-3410-2012-512-constants 0 : id-tc26-gost-3410-2012-512-paramSetTest: GOST R 34.10-2012 (512 bit) testing parameter set
747 +id-tc26-gost-3410-2012-512-constants 1 : id-tc26-gost-3410-2012-512-paramSetA: GOST R 34.10-2012 (512 bit) ParamSet A
748 +id-tc26-gost-3410-2012-512-constants 2 : id-tc26-gost-3410-2012-512-paramSetB: GOST R 34.10-2012 (512 bit) ParamSet B
749 +
750 +id-tc26-constants 2     : id-tc26-digest-constants
751 +id-tc26-constants 5     : id-tc26-cipher-constants
752 +id-tc26-cipher-constants 1     : id-tc26-gost-28147-constants
753 +id-tc26-gost-28147-constants 1 : id-tc26-gost-28147-param-Z : GOST 28147-89 TC26 parameter set
754 +
755 +member-body 643 3 131 1 1      : INN   : INN
756 +member-body 643 100 1          : OGRN  : OGRN
757 +member-body 643 100 3          : SNILS : SNILS
758 +
759 +#GOST R34.13-2015 Grasshopper "Kuznechik"
760 +                       : grasshopper-ecb
761 +                       : grasshopper-ctr
762 +                       : grasshopper-ofb
763 +                       : grasshopper-cbc
764 +                       : grasshopper-cfb
765 +                       : grasshopper-mac
766 +
767  # Definitions for Camellia cipher - CBC MODE
768  
769  1 2 392 200011 61 1 1 1 2 : CAMELLIA-128-CBC           : camellia-128-cbc