Mayank Gupta / Mbed OS pelion-example-frdm

Dependencies:   FXAS21002 FXOS8700Q

Embed: (wiki syntax)

« Back to documentation index

kcm_defs.h File Reference

kcm_defs.h File Reference

Keys and configuration manager (KCM) definitions. More...

Go to the source code of this file.

Data Structures

struct  kcm_csr_params_
 This struct contains CSR parameters for future generated CSR. More...

Typedefs

typedef void * kcm_security_desc_s
 Security descriptor - contains different ACLs such as remote ACL, local ACL and audit.
typedef struct kcm_csr_params_ kcm_csr_params_s
 This struct contains CSR parameters for future generated CSR.

Enumerations

enum  kcm_item_type_e {
  KCM_PRIVATE_KEY_ITEM, KCM_PUBLIC_KEY_ITEM, KCM_SYMMETRIC_KEY_ITEM, KCM_CERTIFICATE_ITEM,
  KCM_CONFIG_ITEM, KCM_LAST_ITEM
}
 

KCM item types.

More...
enum  kcm_md_type_e { , KCM_MD_SHA256 = 0x1 }
 

supported message digests

More...
enum  kcm_csr_key_usage_e { , KCM_CSR_KU_DIGITAL_SIGNATURE = 0x1, KCM_CSR_KU_NON_REPUDIATION = 0x2, KCM_CSR_KU_KEY_CERT_SIGN = 0x4, KCM_CSR_KU_KEY_AGREEMENT = 0x8 }
 

X.509 v3 Key Usage Extension bit-mask options.

More...
enum  kcm_csr_ext_key_usage_e { ,
  KCM_CSR_EXT_KU_SERVER_AUTH = (1 << 1), KCM_CSR_EXT_KU_CLIENT_AUTH = (1 << 2), KCM_CSR_EXT_KU_CODE_SIGNING = (1 << 3), KCM_CSR_EXT_KU_EMAIL_PROTECTION = (1 << 4),
  KCM_CSR_EXT_KU_TIME_STAMPING = (1 << 8), KCM_CSR_EXT_KU_OCSP_SIGNING = (1 << 9)
}
 

X.509 v3 Extended Key Usage Extension bit-mask options.

More...
enum  kcm_crypto_key_scheme_e { , KCM_SCHEME_EC_SECP256R1 }
 

Cryptographic scheme types Currently only ECC-256 curve is supported.

More...

Detailed Description

Keys and configuration manager (KCM) definitions.

Definition in file kcm_defs.h.


Typedef Documentation

This struct contains CSR parameters for future generated CSR.

Parameters:
subjectString that contains the subject (distinguished name) of the certificate in predefined format. The format should be as the following example: "C=US,ST=California,L=San Francisco,O=Wikimedia Foundation,Inc.,CN=*.wikipedia.org".
md_typeMessage digest selected from `kcm_md_type_e`.
key_usageKey usage extension bit-mask selected from `kcm_csr_key_usage_e`. If the requested CSR does not contain any key usage extension, it needs to be set to `KCM_CSR_KU_NONE`.
ext_key_usageExtended key usage extensions bit-mask selected from `kcm_csr_ext_key_usage_e`. If the requested CSR does not contain any extended key usage extension, it needs to be set to `KCM_CSR_EXT_KU_NONE`.
typedef void* kcm_security_desc_s

Security descriptor - contains different ACLs such as remote ACL, local ACL and audit.

Currently defined to `void*.` May be changed in the future.

Definition at line 77 of file kcm_defs.h.


Enumeration Type Documentation

Cryptographic scheme types Currently only ECC-256 curve is supported.

More schemes can be added later on.

Enumerator:
KCM_SCHEME_EC_SECP256R1 

KCM ECC cryptographic scheme, 256-bits NIST curve.

Definition at line 84 of file kcm_defs.h.

X.509 v3 Extended Key Usage Extension bit-mask options.

Enumerator:
KCM_CSR_EXT_KU_SERVER_AUTH 

SSL / TLS Web Server Authentication.

KCM_CSR_EXT_KU_CLIENT_AUTH 

SSL / TLS Web Client Authentication.

KCM_CSR_EXT_KU_CODE_SIGNING 

Code signing.

KCM_CSR_EXT_KU_EMAIL_PROTECTION 

E - mail Protection(S / MIME).

KCM_CSR_EXT_KU_TIME_STAMPING 

Trusted Time stamping.

KCM_CSR_EXT_KU_OCSP_SIGNING 

OCSP Signing.

Definition at line 61 of file kcm_defs.h.

X.509 v3 Key Usage Extension bit-mask options.

Enumerator:
KCM_CSR_KU_DIGITAL_SIGNATURE 

Digital signature key usage extension bit.

KCM_CSR_KU_NON_REPUDIATION 

Non repudiation key usage extension bit.

KCM_CSR_KU_KEY_CERT_SIGN 

Certificate signing key usage extension bit.

KCM_CSR_KU_KEY_AGREEMENT 

Key agreement key usage extension bit.

Definition at line 51 of file kcm_defs.h.

KCM item types.

Enumerator:
KCM_PRIVATE_KEY_ITEM 

KCM private key item type. KCM Supports ECC keys with curves defined in palGroupIndex_t(pal_Crypto.h)

KCM_PUBLIC_KEY_ITEM 

KCM public key item type. KCM Supports ECC keys with curves defined in palGroupIndex_t(pal_Crypto.h)

KCM_SYMMETRIC_KEY_ITEM 

KCM symmetric key item type.

KCM_CERTIFICATE_ITEM 

KCM certificate item type. Supported x509 certificates in der format.

KCM_CONFIG_ITEM 

KCM configuration parameter item type.

KCM_LAST_ITEM 

KCM not defined item type.

Definition at line 32 of file kcm_defs.h.

supported message digests

Enumerator:
KCM_MD_SHA256 

KCM SHA256 message digest.

Definition at line 44 of file kcm_defs.h.