(mozilla-projects-nss-reference-fc-encryptinit)= # FC_EncryptInit ## [Name](#name) :::{container} FC_EncryptInit - initialize an encryption operation. ::: ## [Syntax](#syntax) :::{container} ```{code} CK_RV FC_EncryptInit( CK_SESSION_HANDLE hSession, CK_MECHANISM_PTR pMechanism, CK_OBJECT_HANDLE hKey ); ``` ::: ## [Parameters](#parameters) :::{container} `hSession` : [in] handle to the session. `pMechanism` : [in] pointer to the mechanism to be used for subsequent encryption. `hKey` : [in] handle of the encryption key. ::: ## [Description](#description) :::{container} `FC_EncryptInit` initializes an encryption operation with the mechanism and key to be used. A user must log into the token (to assume the NSS User role) before calling `FC_EncryptInit`. ::: ## [Return value](#return_value) :::{container} `CKR_OK` : Slot information was successfully copied. `CKR_SLOT_ID_INVALID` : The specified slot number is out of the defined range of values. ::: ## [Examples](#examples) ## [See also](#see_also) :::{container} - [NSC_EncryptInit](/en-US/NSC_EncryptInit) :::