Provided by: libtss2-doc_4.0.1-3ubuntu1_all bug

NAME

       Fapi_Encrypt - Fapi_Encrypt

SYNOPSIS

   Functions
       TSS2_RC Fapi_Encrypt (FAPI_CONTEXT *context, char const *keyPath, uint8_t const
           *plainText, size_t plainTextSize, uint8_t **cipherText, size_t *cipherTextSize)
       TSS2_RC Fapi_Encrypt_Async (FAPI_CONTEXT *context, char const *keyPath, uint8_t const
           *plainText, size_t plainTextSize)
       TSS2_RC Fapi_Encrypt_Finish (FAPI_CONTEXT *context, uint8_t **cipherText, size_t
           *cipherTextSize)

Detailed Description

       FAPI functions to invoke Encrypt either as one-call or in an asynchronous manner.

Function Documentation

   TSS2_RC Fapi_Encrypt (FAPI_CONTEXT * context, char const * keyPath, uint8_t const * plainText,
       size_t plainTextSize, uint8_t ** cipherText, size_t * cipherTextSize)
       One-Call function for Fapi_Encrypt

       Encrypt the provided data for the target key using the TPM encryption schemes as specified
       in the crypto profile. This function does not use the TPM; i.e. works in non-TPM mode.

       Parameters
           context The FAPI_CONTEXT
           keyPath THe path to the encryption key
           plainText The plaintext data to encrypt
           plainTextSize The size of the plainText in bytes
           cipherText The encoded cipher text.
           cipherTextSize The size of the encoded cipher text.

       Return values
           TSS2_RC_SUCCESS if the function call was a success.
           TSS2_FAPI_RC_BAD_REFERENCE if context, keyPath, plainText, or cipherText is NULL.
           TSS2_FAPI_RC_BAD_CONTEXT if context corruption is detected.
           TSS2_FAPI_RC_KEY_NOT_FOUND if keyPath does not map to a FAPI key.
           TSS2_FAPI_RC_BAD_KEY if the key at keyPath is unsuitable for encryption.
           TSS2_FAPI_RC_BAD_VALUE if plainTextSize is 0.
           TSS2_FAPI_RC_BAD_SEQUENCE if the context has an asynchronous operation already
           pending.
           TSS2_FAPI_RC_MEMORY if the FAPI cannot allocate enough memory for internal operations
           or return parameters.
           TSS2_FAPI_RC_NO_TPM if FAPI was initialized in no-TPM-mode via its config file.
           TSS2_FAPI_RC_IO_ERROR if an error occurred while accessing the object store.
           TSS2_FAPI_RC_NOT_IMPLEMENTED if the encryption algorithm is not available.
           TSS2_FAPI_RC_TRY_AGAIN if an I/O operation is not finished yet and this function needs
           to be called again.
           TSS2_FAPI_RC_PATH_NOT_FOUND if a FAPI object path was not found during authorization.
           TSS2_FAPI_RC_GENERAL_FAILURE if an internal error occurred.
           TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN if a required authorization callback is not set.
           TSS2_FAPI_RC_AUTHORIZATION_FAILED if the authorization attempt fails.
           TSS2_FAPI_RC_POLICY_UNKNOWN if policy search for a certain policy digest was not
           successful.
           TSS2_ESYS_RC_* possible error codes of ESAPI.
           TSS2_FAPI_RC_NOT_PROVISIONED FAPI was not provisioned.
           TSS2_FAPI_RC_BAD_PATH if the path is used in inappropriate context or contains illegal
           characters.

   TSS2_RC Fapi_Encrypt_Async (FAPI_CONTEXT * context, char const * keyPath, uint8_t const *
       plainText, size_t plainTextSize)
       Asynchronous function for Fapi_Encrypt

       Encrypt the provided data for the target key using the TPM encryption schemes as specified
       in the crypto profile. This function does not use the TPM; i.e. works in non-TPM mode.

       Call Fapi_Encrypt_Finish to finish the execution of this command.

       Parameters
           context The FAPI_CONTEXT
           keyPath The path to the encryption key
           plainText The plainText data to encrypt
           plainTextSize The size of the plainText in bytes

       Return values
           TSS2_RC_SUCCESS if the function call was a success.
           TSS2_FAPI_RC_BAD_REFERENCE if context, keyPath or plainText is NULL.
           TSS2_FAPI_RC_BAD_CONTEXT if context corruption is detected.
           TSS2_FAPI_RC_KEY_NOT_FOUND if keyPath does not map to a FAPI key.
           TSS2_FAPI_RC_BAD_KEY if the key at keyPath is unsuitable for encryption.
           TSS2_FAPI_RC_BAD_VALUE if plainTextSize is 0.
           TSS2_FAPI_RC_BAD_SEQUENCE if the context has an asynchronous operation already
           pending.
           TSS2_FAPI_RC_MEMORY if the FAPI cannot allocate enough memory for internal operations
           or return parameters.
           TSS2_FAPI_RC_NO_TPM if FAPI was initialized in no-TPM-mode via its config file.

   TSS2_RC Fapi_Encrypt_Finish (FAPI_CONTEXT * context, uint8_t ** cipherText, size_t *
       cipherTextSize)
       Asynchronous finish function for Fapi_Encrypt

       This function should be called after a previous Fapi_Encrypt_Async.

       Parameters
           context The FAPI_CONTEXT
           cipherText The encoded ciphertext
           cipherTextSize The size of the encoded cipher text.

       Return values
           TSS2_RC_SUCCESS if the function call was a success.
           TSS2_FAPI_RC_BAD_REFERENCE if context or ciphertext is NULL.
           TSS2_FAPI_RC_BAD_CONTEXT if context corruption is detected.
           TSS2_FAPI_RC_BAD_SEQUENCE if the context has an asynchronous operation already
           pending.
           TSS2_FAPI_RC_IO_ERROR if the data cannot be saved.
           TSS2_FAPI_RC_MEMORY if the FAPI cannot allocate enough memory for internal operations
           or return parameters.
           TSS2_FAPI_RC_TRY_AGAIN if the asynchronous operation is not yet complete. Call this
           function again later.
           TSS2_FAPI_RC_NOT_IMPLEMENTED if the encryption algorithm is not available.
           TSS2_FAPI_RC_BAD_VALUE if an invalid value was passed into the function.
           TSS2_FAPI_RC_PATH_NOT_FOUND if a FAPI object path was not found during authorization.
           TSS2_FAPI_RC_KEY_NOT_FOUND if a key was not found.
           TSS2_FAPI_RC_GENERAL_FAILURE if an internal error occurred.
           TSS2_FAPI_RC_AUTHORIZATION_UNKNOWN if a required authorization callback is not set.
           TSS2_FAPI_RC_AUTHORIZATION_FAILED if the authorization attempt fails.
           TSS2_FAPI_RC_POLICY_UNKNOWN if policy search for a certain policy digest was not
           successful.
           TSS2_ESYS_RC_* possible error codes of ESAPI.
           TSS2_FAPI_RC_NOT_PROVISIONED FAPI was not provisioned.
           TSS2_FAPI_RC_BAD_PATH if the path is used in inappropriate context or contains illegal
           characters.

Author

       Generated automatically by Doxygen for tpm2-tss from the source code.