# 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.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.sysdevmobile.com/kalipso5/developing/form/actions/actions-description/group-code-flow/encrypt-symmetric.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
