# Cryptography

The Cryptography plugin is a collection of Cryptography functions:

### Encryption

**Encrypt**\
To encrypt text or binary data.

**Decrypt**\
To decrypt data encrypted by the Encrypt function.

### Hash, MAC and random numbers

**GenerateHash**\
To compute a Base64-encoded hash for the input data using the specified hashing algorithm.

**GenerateHMAC**\
To generate a MAC (message authentication code) using a cryptographic hash algorithm and a secret cryptographic key.

GenerateRandom\
To generate a specified number of random bytes.

### JSON Web Token (JWT)

**CreateJWT**\
To create a new JSON Web Token (JWT).

**VerifyJWT**\
To verify a JSON Web Token (JWT).

### Elliptic Curve Digital Signature Algorithm (ECDSA)

**CreateECDSAKeys**\
To create a new Elliptic Curve Digital Signature Algorithm (ECDSA) public/private key pair.

**GenerateECDSASignature**\
To sign data using an Elliptic Curve Digital Signature Algorithm (ECDSA) private key.

**VerifyECDSASignature**\
To verify a digital signature against the specified Elliptic Curve Digital Signature Algorithm (ECDSA) public key.

***

## Links

[Cryptography License](/reference/plugins/overview/license.md)


---

# 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://docs.linx.software/reference/plugins/overview.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.
