> For the complete documentation index, see [llms.txt](https://doc.sysdevmobile.com/kalipso5/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.sysdevmobile.com/kalipso5/developing/form/actions/actions-description/group-code-flow/encrypt-symmetric.md).

# Encrypt Symmetric

Encrypt Symmetric allows to encrypt data with a unique Key. This Key needs to be the same to Encrypt and Decrypt.

Action available for the following operating systems:

![](/files/-MAlQBZuuTnc6hyzKSVQ)

### Parameters

* **Data Type***\<numeric> -* Select a File or Text to be Encrypted.
  * Dynamic
    * 1 - File
    * 2 - Text UTF-16 LE
    * 3 - Text ANSI/Binary
    * 4 - Text UTF-8
* **Source Text***\<String> -* Select a File/Text/Variable or control to be Encrypted.
* **Target***<> -* Select a Variable or Control.
* **Resulting Encoding***\<numeric>*
  * Dynamic
    * 1 - None (Binary)
    * 2 - Base 64
* **Algorithm***\<numeric> -* Select the algorithm to be used:
  * Dynamic
    * 1 - AES CBC PKCS5 Padding
    * 2 - AES EBC PKCS5 Padding
* **Key Type***\<numeric>*
  * Dynamic
    * 1 - 128 bit key
    * 2 - 256 bit key
    * 3 - Generate SHA256 from key
    * 4 - Generate HMAC SHA256 from key
* **Key***\<string> -* Fill with a String, Control or Variable. It is expected the binary key value, without any encoding like Base64 or other.
* **Salt***\<string> -* In cryptography, salt is random data that is used as an additional entry for a unidirectional function that "breaks" data, a password or passphrase. Salts are used to protect passwords in storage. To use fill with a String, Control or Variable. It is expected the binary key value, without any encoding like Base64 or other.
* **Nbr. of Rounds***\<numeric> -* Fill with a Numeric value, Control or Variable.
* **IV Type***<> -* Select a Initialization vector (IV):
  * **Provided** (in this case you have to provide the initialization vector in **IV** parameter).
  * **Generate Random** (in this case Kalipso will generate a random initialization vector and it will return it in **IV target**).
* **IV / IV Target***\<numeric> -* Select a Variable or a Control.
* **Appended Result to IV***<> -* Select Yes or No. If you select Yes, the result of this action will start with the initialization vector, followed by the encrypted value.
