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