Lines Matching refs:pk
11 #include "mbedtls/pk.h"
404 int mbedtls_pk_get_psa_attributes(const mbedtls_pk_context *pk,
408 mbedtls_pk_type_t pk_type = mbedtls_pk_get_type(pk);
445 mbedtls_rsa_context *rsa = mbedtls_pk_rsa(*pk);
453 psa_set_key_bits(attributes, mbedtls_pk_get_bitlen(pk));
468 psa_ecc_family_t family = pk->ec_family;
469 size_t bits = pk->ec_bits;
471 if (pk->priv_id != MBEDTLS_SVC_KEY_ID_INIT) {
475 const mbedtls_ecp_keypair *ec = mbedtls_pk_ec_ro(*pk);
527 status = psa_get_key_attributes(pk->priv_id, &old_attributes);
622 * Because the key was intended for use in the pk module, and may
623 * have had a policy chosen solely for what pk needs rather than
645 static int import_pair_into_psa(const mbedtls_pk_context *pk,
649 switch (mbedtls_pk_get_type(pk)) {
660 int ret = mbedtls_rsa_write_key(mbedtls_pk_rsa(*pk),
686 psa_ecc_family_t from_family = pk->ec_family;
688 const mbedtls_ecp_keypair *ec = mbedtls_pk_ec_ro(*pk);
698 if (mbedtls_svc_key_id_is_null(pk->priv_id)) {
702 return copy_into_psa(pk->priv_id, attributes, key_id);
731 return copy_into_psa(pk->priv_id, attributes, key_id);
739 static int import_public_into_psa(const mbedtls_pk_context *pk,
753 switch (mbedtls_pk_get_type(pk)) {
762 int ret = mbedtls_rsa_write_pubkey(mbedtls_pk_rsa(*pk),
783 if (psa_type != PSA_KEY_TYPE_ECC_PUBLIC_KEY(pk->ec_family)) {
786 key_data = (unsigned char *) pk->pub_raw;
787 key_length = pk->pub_raw_len;
789 const mbedtls_ecp_keypair *ec = mbedtls_pk_ec_ro(*pk);
813 psa_get_key_attributes(pk->priv_id, &old_attributes);
822 status = psa_export_public_key(pk->priv_id,
842 int mbedtls_pk_import_into_psa(const mbedtls_pk_context *pk,
851 if (mbedtls_pk_get_type(pk) == MBEDTLS_PK_RSA_ALT) {
858 return import_public_into_psa(pk, attributes, key_id);
860 return import_pair_into_psa(pk, attributes, key_id);
865 mbedtls_pk_context *pk,
878 if (pk == NULL) {
908 ret = mbedtls_pk_setup(pk, mbedtls_pk_info_from_type(MBEDTLS_PK_RSA));
914 ret = mbedtls_rsa_parse_key(mbedtls_pk_rsa(*pk), exp_key, exp_key_len);
916 ret = mbedtls_rsa_parse_pubkey(mbedtls_pk_rsa(*pk), exp_key, exp_key_len);
928 ret = mbedtls_rsa_set_padding(mbedtls_pk_rsa(*pk), MBEDTLS_RSA_PKCS_V21, md_type);
931 ret = mbedtls_rsa_set_padding(mbedtls_pk_rsa(*pk), MBEDTLS_RSA_PKCS_V15, md_type);
943 ret = mbedtls_pk_setup(pk, mbedtls_pk_info_from_type(MBEDTLS_PK_ECKEY));
949 ret = mbedtls_pk_ecc_set_group(pk, grp_id);
955 ret = mbedtls_pk_ecc_set_key(pk, exp_key, exp_key_len);
959 ret = mbedtls_pk_ecc_set_pubkey_from_prv(pk, exp_key, exp_key_len,
963 ret = mbedtls_pk_ecc_set_pubkey(pk, exp_key, exp_key_len);
982 mbedtls_pk_context *pk)
984 return copy_from_psa(key_id, pk, 0);
988 mbedtls_pk_context *pk)
990 return copy_from_psa(key_id, pk, 1);