FreeRTOS: PKCS11
PKCS11 Cryptoki Library
Return to main page ↑
Related Pages
Here is a list of all related documentation pages:
[detail level 12]
 ConstantsDefined constants of the PKCS #11 library.

Libraries may #define constants in their headers with special meanings. This page describes the meanings and uses of any constants defined by the PKCS #11 library. Related constants are shown in a single section on this page.
 ConfigurationConfiguration settings of the PKCS #11 library.
Configuration settings are C pre-processor constants. They can be set with a #define in the iot_config.h or by using a compiler option such as -D in gcc. If a configuration setting is not defined, the library will use a "sensible" default value (unless otherwise noted). Because they are compile-time constants, a library must be rebuilt if a configuration setting is changed
 PKCS #11 WrapperFunctions of the PKCS #11 Wrapper library.

The PKCS #11 Wrapper library consists of the following functions
 xInitializePKCS11Initializes a PKCS #11 session.
 xGetSlotListGet a list of available PKCS #11 slots.
 xInitializePkcs11TokenInitializes a PKCS #11 module and token.
 xInitializePkcs11SessionInitializes the PKCS #11 module and opens a session.
 xFindObjectWithLabelAndClassSearches for an object with a matching label and class provided.
 vAppendSHA256AlgorithmIdentifierSequenceAppends digest algorithm sequence to SHA-256 hash for RSA signatures.
 PKCS #11 mbedTLSFunctions of the PKCS #11 mbedTLS implementation library.

The PKCS #11 mbedTLS implementation library consists of the following functions
 C_InitializeInitializes Cryptoki.
 C_FinalizeClean up miscellaneous Cryptoki-associated resources.
 C_GetFunctionListObtains entry points of Cryptoki library functions.
 C_GetSlotListObtains a list of slots in the system.
 C_GetTokenInfoObtains information about a particular token.
 C_GetMechanismInfoObtains information about a particular mechanism.
 C_InitTokenInitializes a token. This function is not implemented for this port.
 C_OpenSessionOpens a connection between an application and a particular token or sets up an application callback for token insertion.
 C_CloseSessionCloses a session.
 C_LoginLogs into a token. This function is not implemented for this port.
 C_CreateObjectCreates an object.
 C_DestroyObjectDestroys an object.
 C_GetAttributeValueObtains an attribute value of an object.
 C_FindObjectsInitInitializes an object search operation.
 C_FindObjectsInitializes an object search operation.
 C_FindObjectsFinalFinishes an object search operation.
 C_DigestInitInitializes a message-digesting operation.
 C_DigestUpdateContinues a multiple-part digesting operation.
 C_DigestFinalFinishes a multiple-part digesting operation.
 C_SignInitInitializes a signature operation.
 C_SignSigns single-part data.
 C_VerifyInitInitializes a verification operation.
 C_VerifyVerifies a signature on single-part data.
 C_GenerateKeyPairGenerates a public-key/private-key pair.
 C_GenerateRandomGenerates random data.
 PKCS #11 PALFunctions of the PKCS #11 PAL Layer library.

The PKCS #11 PAL Layer library consists of the following functions
 PKCS11_PAL_SaveObjectSaves an object in non-volatile storage.
 PKCS11_PAL_DestroyObjectDelete an object from NVM.
 PKCS11_PAL_FindObjectTranslates a PKCS #11 label into an object handle.
 PKCS11_PAL_GetObjectValueGets the value of an object in storage, by handle.
 PKCS11_PAL_GetObjectValueCleanupCleanup after PKCS11_GetObjectValue().
 PKCS #11 Utilities
 PKI_pkcs11SignatureTombedTLSSignatureConverts and ECDSA P-256 signature from the format provided by PKCS #11 to an ASN.1 formatted signature.
 PKI_mbedTLSSignatureToPkcs11SignatureConverts an ECDSA P-256 signature from the format provided by mbedTLS to the format expected by PKCS #11.