Lines Matching refs:key

63 	struct crypto_rsa_key *key;  in crypto_rsa_import_public_key()  local
67 key = os_zalloc(sizeof(*key)); in crypto_rsa_import_public_key()
68 if (key == NULL) in crypto_rsa_import_public_key()
71 key->n = bignum_init(); in crypto_rsa_import_public_key()
72 key->e = bignum_init(); in crypto_rsa_import_public_key()
73 if (key->n == NULL || key->e == NULL) { in crypto_rsa_import_public_key()
74 crypto_rsa_free(key); in crypto_rsa_import_public_key()
93 pos = crypto_rsa_parse_integer(pos, end, key->n); in crypto_rsa_import_public_key()
94 pos = crypto_rsa_parse_integer(pos, end, key->e); in crypto_rsa_import_public_key()
106 return key; in crypto_rsa_import_public_key()
109 crypto_rsa_free(key); in crypto_rsa_import_public_key()
118 struct crypto_rsa_key *key; in crypto_rsa_import_public_key_parts() local
120 key = os_zalloc(sizeof(*key)); in crypto_rsa_import_public_key_parts()
121 if (key == NULL) in crypto_rsa_import_public_key_parts()
124 key->n = bignum_init(); in crypto_rsa_import_public_key_parts()
125 key->e = bignum_init(); in crypto_rsa_import_public_key_parts()
126 if (key->n == NULL || key->e == NULL || in crypto_rsa_import_public_key_parts()
127 bignum_set_unsigned_bin(key->n, n, n_len) < 0 || in crypto_rsa_import_public_key_parts()
128 bignum_set_unsigned_bin(key->e, e, e_len) < 0) { in crypto_rsa_import_public_key_parts()
129 crypto_rsa_free(key); in crypto_rsa_import_public_key_parts()
133 return key; in crypto_rsa_import_public_key_parts()
146 struct crypto_rsa_key *key; in crypto_rsa_import_private_key() local
151 key = os_zalloc(sizeof(*key)); in crypto_rsa_import_private_key()
152 if (key == NULL) in crypto_rsa_import_private_key()
155 key->private_key = 1; in crypto_rsa_import_private_key()
157 key->n = bignum_init(); in crypto_rsa_import_private_key()
158 key->e = bignum_init(); in crypto_rsa_import_private_key()
159 key->d = bignum_init(); in crypto_rsa_import_private_key()
160 key->p = bignum_init(); in crypto_rsa_import_private_key()
161 key->q = bignum_init(); in crypto_rsa_import_private_key()
162 key->dmp1 = bignum_init(); in crypto_rsa_import_private_key()
163 key->dmq1 = bignum_init(); in crypto_rsa_import_private_key()
164 key->iqmp = bignum_init(); in crypto_rsa_import_private_key()
166 if (key->n == NULL || key->e == NULL || key->d == NULL || in crypto_rsa_import_private_key()
167 key->p == NULL || key->q == NULL || key->dmp1 == NULL || in crypto_rsa_import_private_key()
168 key->dmq1 == NULL || key->iqmp == NULL) { in crypto_rsa_import_private_key()
169 crypto_rsa_free(key); in crypto_rsa_import_private_key()
208 pos = crypto_rsa_parse_integer(pos, end, key->n); in crypto_rsa_import_private_key()
209 pos = crypto_rsa_parse_integer(pos, end, key->e); in crypto_rsa_import_private_key()
210 pos = crypto_rsa_parse_integer(pos, end, key->d); in crypto_rsa_import_private_key()
211 pos = crypto_rsa_parse_integer(pos, end, key->p); in crypto_rsa_import_private_key()
212 pos = crypto_rsa_parse_integer(pos, end, key->q); in crypto_rsa_import_private_key()
213 pos = crypto_rsa_parse_integer(pos, end, key->dmp1); in crypto_rsa_import_private_key()
214 pos = crypto_rsa_parse_integer(pos, end, key->dmq1); in crypto_rsa_import_private_key()
215 pos = crypto_rsa_parse_integer(pos, end, key->iqmp); in crypto_rsa_import_private_key()
227 return key; in crypto_rsa_import_private_key()
230 crypto_rsa_free(key); in crypto_rsa_import_private_key()
240 size_t crypto_rsa_get_modulus_len(struct crypto_rsa_key *key) in crypto_rsa_get_modulus_len() argument
242 return bignum_get_unsigned_bin_len(key->n); in crypto_rsa_get_modulus_len()
257 struct crypto_rsa_key *key, int use_private) in crypto_rsa_exptmod() argument
263 if (use_private && !key->private_key) in crypto_rsa_exptmod()
272 if (bignum_cmp(key->n, tmp) < 0) { in crypto_rsa_exptmod()
297 if (bignum_exptmod(tmp, key->dmp1, key->p, a) < 0) in crypto_rsa_exptmod()
301 if (bignum_exptmod(tmp, key->dmq1, key->q, b) < 0) in crypto_rsa_exptmod()
306 bignum_mulmod(tmp, key->iqmp, key->p, tmp) < 0) in crypto_rsa_exptmod()
310 if (bignum_mul(tmp, key->q, tmp) < 0 || in crypto_rsa_exptmod()
316 if (bignum_exptmod(tmp, key->e, key->n, tmp) < 0) in crypto_rsa_exptmod()
320 modlen = crypto_rsa_get_modulus_len(key); in crypto_rsa_exptmod()
353 void crypto_rsa_free(struct crypto_rsa_key *key) in crypto_rsa_free() argument
355 if (key) { in crypto_rsa_free()
356 bignum_deinit(key->n); in crypto_rsa_free()
357 bignum_deinit(key->e); in crypto_rsa_free()
358 bignum_deinit(key->d); in crypto_rsa_free()
359 bignum_deinit(key->p); in crypto_rsa_free()
360 bignum_deinit(key->q); in crypto_rsa_free()
361 bignum_deinit(key->dmp1); in crypto_rsa_free()
362 bignum_deinit(key->dmq1); in crypto_rsa_free()
363 bignum_deinit(key->iqmp); in crypto_rsa_free()
364 os_free(key); in crypto_rsa_free()