| /optee_os/core/drivers/crypto/crypto_api/acipher/ |
| H A D | ecc.c | 17 static size_t get_ecc_key_size_bytes(uint32_t curve) in get_ecc_key_size_bytes() argument 19 switch (curve) { in get_ecc_key_size_bytes() 47 static size_t get_ecc_key_size_bits(uint32_t curve) in get_ecc_key_size_bits() argument 49 switch (curve) { in get_ecc_key_size_bits() 55 return get_ecc_key_size_bytes(curve) * 8; in get_ecc_key_size_bits() 72 static bool algo_is_valid(uint32_t curve, uint32_t algo) in algo_is_valid() argument 83 if (curve == algo_curve) { in algo_is_valid() 85 " is valid", algo, curve); in algo_is_valid() 92 if (curve == TEE_ECC_CURVE_SM2) in algo_is_valid() 97 algo, curve); in algo_is_valid() [all …]
|
| /optee_os/core/drivers/crypto/hisilicon/ |
| H A D | hpre_ecc.c | 754 hpre_ecc_dh_params_fill(const struct hpre_ecc_curve *curve, in hpre_ecc_dh_params_fill() argument 767 memcpy(p, curve->p, msg->curve_bytes); in hpre_ecc_dh_params_fill() 768 memcpy(a, curve->a, msg->curve_bytes); in hpre_ecc_dh_params_fill() 774 memcpy(b, curve->b, msg->curve_bytes); in hpre_ecc_dh_params_fill() 780 memcpy(x, curve->x, ecc_dh->x_bytes); in hpre_ecc_dh_params_fill() 781 memcpy(y, curve->y, ecc_dh->y_bytes); in hpre_ecc_dh_params_fill() 827 static TEE_Result hpre_ecc_request_init(const struct hpre_ecc_curve *curve, in hpre_ecc_request_init() argument 836 if (curve->id == TEE_ECC_CURVE_SM2) in hpre_ecc_request_init() 839 msg->curve_bytes = BITS_TO_BYTES(curve->key_bits); in hpre_ecc_request_init() 840 msg->key_bytes = hpre_ecc_get_hw_kbytes(curve->key_bits); in hpre_ecc_request_init() [all …]
|
| H A D | hpre_montgomery.c | 226 hpre_montgomery_params_fill(const struct hpre_mgm_curve *curve, in hpre_montgomery_params_fill() argument 236 memcpy(p, curve->p, msg->curve_bytes); in hpre_montgomery_params_fill() 237 memcpy(a, curve->a, msg->curve_bytes); in hpre_montgomery_params_fill() 241 memcpy(x, curve->x, msg->x_bytes); in hpre_montgomery_params_fill() 273 hpre_montgomery_request_init(const struct hpre_mgm_curve *curve, in hpre_montgomery_request_init() argument 281 msg->curve_bytes = BITS_TO_BYTES(curve->key_bits); in hpre_montgomery_request_init() 283 if (curve->key_bits == X25519_KEY_BITS) { in hpre_montgomery_request_init() 285 } else if (curve->key_bits == X448_KEY_BITS) { in hpre_montgomery_request_init() 296 ret = hpre_montgomery_params_fill(curve, msg, privkey, pubkey); in hpre_montgomery_request_init() 394 const struct hpre_mgm_curve *curve = NULL; in hpre_montgomery_gen_keypair() local [all …]
|
| /optee_os/core/lib/libtomcrypt/src/pk/ecc/ |
| H A D | ecc_set_curve_internal.c | 18 const ltc_ecc_curve *curve; in s_ecc_oid_lookup() local 22 for (curve = ltc_ecc_curves; curve->prime != NULL; curve++) { in s_ecc_oid_lookup() 23 if (s_ecc_cmp_hex_bn(curve->prime, key->dp.prime, bn) != 1) continue; in s_ecc_oid_lookup() 24 if (s_ecc_cmp_hex_bn(curve->order, key->dp.order, bn) != 1) continue; in s_ecc_oid_lookup() 25 if (s_ecc_cmp_hex_bn(curve->A, key->dp.A, bn) != 1) continue; in s_ecc_oid_lookup() 26 if (s_ecc_cmp_hex_bn(curve->B, key->dp.B, bn) != 1) continue; in s_ecc_oid_lookup() 27 if (s_ecc_cmp_hex_bn(curve->Gx, key->dp.base.x, bn) != 1) continue; in s_ecc_oid_lookup() 28 if (s_ecc_cmp_hex_bn(curve->Gy, key->dp.base.y, bn) != 1) continue; in s_ecc_oid_lookup() 29 if (key->dp.cofactor != curve->cofactor) continue; in s_ecc_oid_lookup() 33 if (curve->prime && curve->OID) { in s_ecc_oid_lookup() [all …]
|
| H A D | ecc_import_x509.c | 13 const ltc_ecc_curve *curve; in s_ecc_import_x509_with_oid() local 24 if ((err = ecc_find_curve(OID, &curve)) != CRYPT_OK) { goto error; } in s_ecc_import_x509_with_oid() 25 if ((err = ecc_set_curve(curve, key)) != CRYPT_OK) { goto error; } in s_ecc_import_x509_with_oid()
|
| H A D | ecc_import_openssl.c | 14 const ltc_ecc_curve *curve; in s_ecc_import_private_with_oid() local 33 … if ((err = ecc_find_curve(OID, &curve)) != CRYPT_OK) { goto error; } in s_ecc_import_private_with_oid() 34 … if ((err = ecc_set_curve(curve, key)) != CRYPT_OK) { goto error; } in s_ecc_import_private_with_oid()
|
| H A D | ecc_import_pkcs8.c | 49 const ltc_ecc_curve *curve; in ecc_import_pkcs8() local 102 … if ((err = ecc_find_curve(OID, &curve)) != CRYPT_OK) { goto LBL_DONE; } in ecc_import_pkcs8() 103 … if ((err = ecc_set_curve(curve, key)) != CRYPT_OK) { goto LBL_DONE; } in ecc_import_pkcs8()
|
| /optee_os/core/drivers/crypto/se050/core/ |
| H A D | ecc.c | 74 static uint32_t cipher_tee2se050(uint32_t curve) in cipher_tee2se050() argument 76 switch (curve) { in cipher_tee2se050() 84 EMSG("cipher %#"PRIx32" not enabled", curve); in cipher_tee2se050() 89 static uint32_t curve_tee2se050(uint32_t curve) in curve_tee2se050() argument 91 switch (curve) { in curve_tee2se050() 103 EMSG("curve %#"PRIx32" not enabled", curve); in curve_tee2se050() 108 static uint32_t curve_se0502tee(uint32_t curve) in curve_se0502tee() argument 110 switch (curve) { in curve_se0502tee() 122 EMSG("curve %#"PRIx32" not enabled", curve); in curve_se0502tee() 134 static TEE_Result ecc_get_key_size(uint32_t curve, uint32_t algo, in ecc_get_key_size() argument [all …]
|
| /optee_os/core/drivers/crypto/caam/mp/ |
| H A D | caam_mp.c | 35 uint8_t curve; /* Protocol Data Block curve selection */ member 66 caam_desc_add_word(desc, PROT_MP_CURVE(mp_privdata.curve)); in do_mppriv_gen() 146 PROT_MP_CURVE(mp_privdata.curve) | pdb_sgt_flag); in caam_mp_export_publickey() 277 PROT_MP_CURVE(mp_privdata.curve) | pdb_sgt_flags); in caam_mp_sign() 329 uint8_t curve = 0; in caam_mp_init() local 340 curve = caam_hal_ctrl_get_mpcurve(ctrl_addr); in caam_mp_init() 342 if (curve == UINT8_MAX) { in caam_mp_init() 352 if (!curve) { in caam_mp_init() 358 mp_privdata.curve = PDB_MP_CSEL_P256; in caam_mp_init() 362 mp_privdata.curve = PDB_MP_CSEL_P521; in caam_mp_init() [all …]
|
| /optee_os/core/lib/libtomcrypt/ |
| H A D | ecc.c | 31 static TEE_Result ecc_get_curve_info(uint32_t curve, uint32_t algo, in ecc_get_curve_info() argument 49 switch (curve) { in ecc_get_curve_info() 116 const ltc_ecc_curve *curve = NULL; in ecc_set_curve_from_name() local 119 ltc_res = ecc_find_curve(curve_name, &curve); in ecc_set_curve_from_name() 123 ltc_res = ecc_set_curve(curve, ltc_key); in ecc_set_curve_from_name() 140 res = ecc_get_curve_info(key->curve, 0, &key_size_bytes, &key_size_bits, in _ltc_ecc_generate_keypair() 195 res = ecc_get_curve_info(key->curve, algo, key_size_bytes, NULL, &name); in ecc_populate_ltc_private_key() 226 res = ecc_get_curve_info(key->curve, algo, key_size_bytes, NULL, &name); in ecc_populate_ltc_public_key() 327 if (private_key->curve != public_key->curve) in _ltc_ecc_shared_secret() 430 s->curve = TEE_ECC_CURVE_SM2; in crypto_asym_alloc_ecc_keypair() [all …]
|
| /optee_os/lib/libmbedtls/core/ |
| H A D | ecc.c | 47 static TEE_Result ecc_get_keysize(uint32_t curve, uint32_t algo, in ecc_get_keysize() argument 50 switch (curve) { in ecc_get_keysize() 87 static mbedtls_ecp_group_id curve_to_group_id(uint32_t curve) in curve_to_group_id() argument 89 switch (curve) { in curve_to_group_id() 119 res = ecc_get_keysize(key->curve, 0, &key_size_bytes, &key_size_bits); in ecc_generate_keypair() 129 gid = curve_to_group_id(key->curve); in ecc_generate_keypair() 191 gid = curve_to_group_id(key->curve); in ecc_sign() 200 res = ecc_get_keysize(key->curve, algo, &key_size_bytes, in ecc_sign() 269 gid = curve_to_group_id(key->curve); in ecc_verify() 280 res = ecc_get_keysize(key->curve, algo, in ecc_verify() [all …]
|
| /optee_os/core/drivers/crypto/versal/ |
| H A D | ecc.c | 84 static TEE_Result ecc_get_key_size(uint32_t curve, size_t *bytes, size_t *bits) in ecc_get_key_size() argument 86 switch (curve) { in ecc_get_key_size() 110 static void crypto_bignum_bn2bin_eswap(uint32_t curve, in crypto_bignum_bn2bin_eswap() argument 118 if (ecc_get_key_size(curve, &bytes, &bits)) in crypto_bignum_bn2bin_eswap() 164 ret = ecc_get_key_size(key->curve, &bytes, &bits); in verify() 178 crypto_bignum_bn2bin_eswap(key->curve, key->x, x.buf); in verify() 179 crypto_bignum_bn2bin_eswap(key->curve, key->y, in verify() 182 arg.data[0] = key->curve; in verify() 205 cmd->curve = key->curve; in verify() 243 ret = ecc_get_key_size(key->curve, &bytes, &bits); in sign() [all …]
|
| /optee_os/ta/pkcs11/src/ |
| H A D | processing_ec.c | 302 const struct supported_ecc_curve *curve = ec_curve_param + idx; in get_curve() local 304 if (size == curve->oid_size && in get_curve() 305 !TEE_MemCompare(attr, curve->oid_der, curve->oid_size)) in get_curve() 306 return curve; in get_curve() 308 if (size == curve->name_size && in get_curve() 309 !TEE_MemCompare(attr, curve->name_der, curve->name_size)) in get_curve() 310 return curve; in get_curve() 318 const struct supported_ecc_curve *curve = get_curve(ec_params, size); in ec_params2tee_keysize() local 320 if (!curve) in ec_params2tee_keysize() 323 return curve->key_size; in ec_params2tee_keysize() [all …]
|
| /optee_os/core/drivers/crypto/caam/acipher/ |
| H A D | caam_ecc.c | 258 enum caam_ecc_curve curve = CAAM_ECC_UNKNOWN; in do_gen_keypair() local 272 curve = get_caam_curve(key->curve); in do_gen_keypair() 273 if (curve == CAAM_ECC_UNKNOWN) in do_gen_keypair() 307 caam_desc_add_word(desc, PDB_PKGEN_PD1 | PDB_ECC_ECDSEL(curve)); in do_gen_keypair() 440 enum caam_ecc_curve curve = CAAM_ECC_UNKNOWN; in do_sign() local 456 curve = get_caam_curve(inkey->curve); in do_sign() 457 if (curve == CAAM_ECC_UNKNOWN) in do_sign() 535 caam_desc_add_word(desc, PDB_PKSIGN_PD1 | PDB_ECC_ECDSEL(curve) | in do_sign() 623 enum caam_ecc_curve curve = CAAM_ECC_UNKNOWN; in do_verify() local 642 curve = get_caam_curve(inkey->curve); in do_verify() [all …]
|
| /optee_os/lib/libmbedtls/mbedtls/library/ |
| H A D | pk_internal.h | 94 psa_ecc_family_t curve; in mbedtls_pk_get_ec_group_id() local 100 curve = PSA_KEY_TYPE_ECC_GET_FAMILY(opaque_key_type); in mbedtls_pk_get_ec_group_id() 101 id = mbedtls_ecc_group_from_psa(curve, psa_get_key_bits(&opaque_attrs)); in mbedtls_pk_get_ec_group_id()
|
| H A D | pk_wrap.c | 539 psa_ecc_family_t curve, size_t curve_bits, in ecdsa_verify_psa() argument 553 if (curve == 0) { in ecdsa_verify_psa() 557 psa_set_key_type(&attributes, PSA_KEY_TYPE_ECC_PUBLIC_KEY(curve)); in ecdsa_verify_psa() 611 psa_ecc_family_t curve; in ecdsa_opaque_verify_wrap() local 619 curve = PSA_KEY_TYPE_ECC_GET_FAMILY(psa_get_key_type(&key_attr)); in ecdsa_opaque_verify_wrap() 628 return ecdsa_verify_psa(key, key_len, curve, curve_bits, in ecdsa_opaque_verify_wrap() 639 psa_ecc_family_t curve = pk->ec_family; in ecdsa_verify_wrap() local 642 return ecdsa_verify_psa(pk->pub_raw, pk->pub_raw_len, curve, curve_bits, in ecdsa_verify_wrap() 657 psa_ecc_family_t curve = mbedtls_ecc_group_to_psa(ctx->grp.id, &curve_bits); in ecdsa_verify_wrap() local 666 return ecdsa_verify_psa(key, key_len, curve, curve_bits, in ecdsa_verify_wrap() [all …]
|
| H A D | psa_crypto_ecp.c | 324 psa_ecc_family_t curve = PSA_KEY_TYPE_ECC_GET_FAMILY( in mbedtls_psa_ecp_generate_key() local 327 mbedtls_ecc_group_from_psa(curve, attributes->bits); in mbedtls_psa_ecp_generate_key() 544 psa_ecc_family_t curve = mbedtls_ecc_group_to_psa(ecp->grp.id, &bits); in mbedtls_psa_key_agreement_ecdh() local 548 PSA_KEY_TYPE_ECC_PUBLIC_KEY(curve), in mbedtls_psa_key_agreement_ecdh()
|
| H A D | pk_ecc.c | 108 psa_ecc_family_t curve = mbedtls_ecc_group_to_psa(eck->grp.id, &curve_bits); in mbedtls_pk_ecc_set_pubkey_from_prv() 113 psa_set_key_type(&key_attr, PSA_KEY_TYPE_ECC_KEY_PAIR(curve)); in mbedtls_pk_ecc_set_pubkey_from_prv()
|
| /optee_os/core/drivers/crypto/stm32/ |
| H A D | ecc.c | 43 static TEE_Result curve_to_pka_cid(uint32_t curve, in curve_to_pka_cid() argument 46 switch (curve) { in curve_to_pka_cid() 63 EMSG("curve %#"PRIx32" not enabled", curve); in curve_to_pka_cid() 82 res = curve_to_pka_cid(key->curve, &cid); in stm32_gen_keypair() 161 if (curve_to_pka_cid(key->curve, &cid) || in sign() 236 if (curve_to_pka_cid(key->curve, &cid) || in verify() 400 if (private_key->curve != public_key->curve || in shared_secret() 401 curve_to_pka_cid(public_key->curve, &cid)) in shared_secret()
|
| /optee_os/core/drivers/crypto/versal/include/ |
| H A D | ipi.h | 28 uint32_t curve; member 36 uint32_t curve; member
|
| /optee_os/core/pta/veraison_attestation/ |
| H A D | sign.c | 125 key->curve = TEE_ECC_CURVE_NIST_P256; in generate_key() 144 pubkey->curve = TEE_ECC_CURVE_NIST_P256; in generate_key()
|
| /optee_os/core/drivers/crypto/se050/adaptors/apis/ |
| H A D | apdu.c | 586 k_object->curve_id = keypub->curve; in set_ecc_public() 589 keypub->curve, in set_ecc_public() 611 k_object->curve_id = keypair->pub.curve; in set_ecc_private() 614 keypair->pub.curve, in set_ecc_private() 641 k_object->curve_id = keypair->pub.curve; in set_ecc_pair() 644 keypair->pub.curve, in set_ecc_pair()
|
| /optee_os/core/include/crypto/ |
| H A D | crypto.h | 159 uint32_t curve; /* Curve type */ member 167 uint32_t curve; /* Curve type */ member 179 uint32_t curve; member 184 uint32_t curve; member
|
| /optee_os/core/drivers/crypto/se050/adaptors/include/ |
| H A D | se050_apdu_apis.h | 62 uint32_t curve; member
|
| /optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ |
| H A D | ecjpake.h | 114 mbedtls_ecp_group_id curve,
|