Lines Matching defs:key
28 int ossl_ecx_public_from_private(ECX_KEY *key)
30 switch (key->type) {
32 ossl_x25519_public_from_private(key->pubkey, key->privkey);
35 if (!ossl_ed25519_public_from_private(key->libctx, key->pubkey,
36 key->privkey, key->propq)) {
42 ossl_x448_public_from_private(key->pubkey, key->privkey);
45 if (!ossl_ed448_public_from_private(key->libctx, key->pubkey,
46 key->privkey, key->propq)) {
80 * Invalid key length. We will clear what we've received now. We
82 * OPENSSL_secure_clear_free() and assume the correct key length
109 ECX_KEY *ossl_ecx_key_dup(const ECX_KEY *key, int selection)
124 ret->libctx = key->libctx;
125 ret->haspubkey = key->haspubkey;
126 ret->keylen = key->keylen;
127 ret->type = key->type;
130 if (key->propq != NULL) {
131 ret->propq = OPENSSL_strdup(key->propq);
137 memcpy(ret->pubkey, key->pubkey, sizeof(ret->pubkey));
140 && key->privkey != NULL) {
143 memcpy(ret->privkey, key->privkey, ret->keylen);
160 ECX_KEY *key = NULL;
187 key = ossl_ecx_key_new(libctx, KEYNID2TYPE(id), 1, propq);
188 if (key == NULL) {
192 pubkey = key->pubkey;
197 privkey = ossl_ecx_key_allocate_privkey(key);
218 if (!ossl_ecx_public_from_private(key)) {
224 return key;
226 ossl_ecx_key_free(key);
252 * EVP_PKEY_NONE means that ecx_key_op() has to figure out the key type