Lines Matching refs:gkt
100 GOST_KEY_TRANSPORT *gkt = NULL;
154 gkt = GOST_KEY_TRANSPORT_new();
155 if (!gkt) {
158 if (!ASN1_OCTET_STRING_set(gkt->key_agreement_info->eph_iv, ukm, 8)) {
161 if (!ASN1_OCTET_STRING_set(gkt->key_info->imit, crypted_key + 40, 4)) {
165 (gkt->key_info->encrypted_key, crypted_key + 8, 32)) {
170 (&gkt->key_agreement_info->ephem_key, out ? mykey : pubk)) {
178 ASN1_OBJECT_free(gkt->key_agreement_info->cipher);
179 gkt->key_agreement_info->cipher = OBJ_nid2obj(param->nid);
180 tmp_outlen = i2d_GOST_KEY_TRANSPORT(gkt, out ? &out : NULL);
195 GOST_KEY_TRANSPORT_free(gkt);
203 GOST_KEY_TRANSPORT_free(gkt);
216 GOST_KEY_TRANSPORT *gkt = NULL;
229 gkt = d2i_GOST_KEY_TRANSPORT(NULL, (const unsigned char **)&p, in_len);
230 if (!gkt) {
235 eph_key = X509_PUBKEY_get(gkt->key_agreement_info->ephem_key);
256 param = get_encryption_params(gkt->key_agreement_info->cipher);
262 OPENSSL_assert(gkt->key_agreement_info->eph_iv->length == 8);
263 memcpy(wrappedKey, gkt->key_agreement_info->eph_iv->data, 8);
264 OPENSSL_assert(gkt->key_info->encrypted_key->length == 32);
265 memcpy(wrappedKey + 8, gkt->key_info->encrypted_key->data, 32);
266 OPENSSL_assert(gkt->key_info->imit->length == 4);
267 memcpy(wrappedKey + 40, gkt->key_info->imit->data, 4);
276 GOST_KEY_TRANSPORT_free(gkt);
280 GOST_KEY_TRANSPORT_free(gkt);