Lines Matching refs:key
37 int key_new(cert_key_t *key) in key_new() argument
40 key->key = EVP_PKEY_new(); in key_new()
41 if (key->key == NULL) { in key_new()
49 static int key_create_rsa(cert_key_t *key, int key_bits) in key_create_rsa() argument
57 key->key = rsa; in key_create_rsa()
85 if (!EVP_PKEY_assign_RSA(key->key, rsa)) { in key_create_rsa()
103 static int key_create_ecdsa(cert_key_t *key, int key_bits, const char *curve) in key_create_ecdsa() argument
111 key->key = ec; in key_create_ecdsa()
115 static int key_create_ecdsa_nist(cert_key_t *key, int key_bits) in key_create_ecdsa_nist() argument
118 return key_create_ecdsa(key, key_bits, "secp384r1"); in key_create_ecdsa_nist()
121 return key_create_ecdsa(key, key_bits, "prime256v1"); in key_create_ecdsa_nist()
125 static int key_create_ecdsa_brainpool_r(cert_key_t *key, int key_bits) in key_create_ecdsa_brainpool_r() argument
127 return key_create_ecdsa(key, key_bits, "brainpoolP256r1"); in key_create_ecdsa_brainpool_r()
130 static int key_create_ecdsa_brainpool_t(cert_key_t *key, int key_bits) in key_create_ecdsa_brainpool_t() argument
132 return key_create_ecdsa(key, key_bits, "brainpoolP256t1"); in key_create_ecdsa_brainpool_t()
135 static int key_create_ecdsa(cert_key_t *key, int key_bits, const int curve_id) in key_create_ecdsa() argument
150 if (!EVP_PKEY_assign_EC_KEY(key->key, ec)) { in key_create_ecdsa()
162 static int key_create_ecdsa_nist(cert_key_t *key, int key_bits) in key_create_ecdsa_nist() argument
165 return key_create_ecdsa(key, key_bits, NID_secp384r1); in key_create_ecdsa_nist()
168 return key_create_ecdsa(key, key_bits, NID_X9_62_prime256v1); in key_create_ecdsa_nist()
173 static int key_create_ecdsa_brainpool_r(cert_key_t *key, int key_bits) in key_create_ecdsa_brainpool_r() argument
175 return key_create_ecdsa(key, key_bits, NID_brainpoolP256r1); in key_create_ecdsa_brainpool_r()
178 static int key_create_ecdsa_brainpool_t(cert_key_t *key, int key_bits) in key_create_ecdsa_brainpool_t() argument
180 return key_create_ecdsa(key, key_bits, NID_brainpoolP256t1); in key_create_ecdsa_brainpool_t()
186 typedef int (*key_create_fn_t)(cert_key_t *key, int key_bits);
198 int key_create(cert_key_t *key, int type, int key_bits) in key_create() argument
206 return key_create_fn[type](key, key_bits); in key_create()
254 unsigned int key_load(cert_key_t *key) in key_load() argument
256 if (key->fn == NULL) { in key_load()
261 if (strncmp(key->fn, "pkcs11:", 7) == 0) { in key_load()
263 key->key = key_load_pkcs11(key->fn); in key_load()
266 FILE *fp = fopen(key->fn, "r"); in key_load()
268 WARN("Cannot open file %s\n", key->fn); in key_load()
272 key->key = PEM_read_PrivateKey(fp, NULL, NULL, NULL); in key_load()
276 if (key->key == NULL) { in key_load()
277 ERROR("Cannot load key from %s\n", key->fn); in key_load()
284 int key_store(cert_key_t *key) in key_store() argument
288 if (key->fn) { in key_store()
289 if (!strncmp(key->fn, "pkcs11:", 7)) { in key_store()
293 fp = fopen(key->fn, "w"); in key_store()
295 PEM_write_PrivateKey(fp, key->key, in key_store()
300 ERROR("Cannot create file %s\n", key->fn); in key_store()
312 cert_key_t *key; in key_init() local
338 key = &keys[i]; in key_init()
339 if (key->opt != NULL) { in key_init()
340 cmd_opt.long_opt.name = key->opt; in key_init()
344 cmd_opt.help_msg = key->help_msg; in key_init()
354 cert_key_t *key; in key_get_by_opt() local
360 key = &keys[i]; in key_get_by_opt()
361 if (0 == strcmp(key->opt, opt)) { in key_get_by_opt()
362 return key; in key_get_by_opt()
374 EVP_PKEY_free(keys[i].key); in key_cleanup()