> For the complete documentation index, see [llms.txt](https://appmaster.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://appmaster.gitbook.io/docs/modules/module/security-and-data-validation/cryptography.md).

# Crypto

The "Crypto" module allows performing cryptographic operations: encryption and decryption of data, generation of private and public keys, generation and verification of an electronic digital signature.&#x20;

Additional settings are not required.

![](https://3563768697-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MapxHzVskQ_27pNUTT4%2F-Mk2dYtoFRgMPenlxEG-%2F-Mk2do1rSxq4aILq9KQi%2Fimage.png?alt=media\&token=2713bfee-9609-4893-bc24-dbd811b3f0eb)

## Business processes

### AES encryption and decryption: CBC and ECB modes

* Crypto: Encrypt AES-CBC
* Crypto: Decrypt AES-CBC
* Crypto: Encrypt AES- ECB
* Crypto: Decrypt AES- ECB

### **RSA** encryption and decryption

* Crypto: Encrypt RSA
* Crypto: Decrypt RSA

### Electronic signature and signature verification

* Crypto: RSA Sign (MD5)
* Crypto: RSA Sign (SHA1)
* Crypto: RSA Sign (SHA256)
* Crypto: RSA Sign (SHA512)
* Crypto: RSA Verify Signature (MD5)
* Crypto: RSA Verify Signature (SHA1)
* Crypto: RSA Verify Signature (SHA256)
* Crypto: RSA Verify Signature (SHA512)

### Generate RSA private and public keys

* Crypto: Generate RSA key

{% content-ref url="/pages/-Mk2d88WQqfn-XAcw2Xe" %}
[Group Crypto](/docs/business-logic/block/group-crypto.md)
{% endcontent-ref %}

{% hint style="success" %}
**Hardware Acceleration**

In most cryptographic business processes we have cryptographic hardware acceleration built-in so you can get all benefits if you running your application on supported hardware (AES-NI)
{% endhint %}

{% hint style="warning" %}
**Computing Resource Limits**

Due to computing resource limitations for applications with free and low-end subscriptions, there is a chance that computing-hungry operations like Generate RSA Key with 4096+ key length will lead to a timeout or very long time waiting. The same limitations may occur with low-level hardware if you are self-hosting your server applications.
{% endhint %}
