---
schema_version: "1"
id: 789bcaddf3bfa8f86e5b064d3c9a61683230f94d234bca28bfee07bd4d20a11f
title: Cryptography Module Reference 2.0
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/cryptography-module/2.0/cryptography-module-reference.md
canonical_url: https://docs.mulesoft.com/cryptography-module/2.0/cryptography-module-reference
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 5fa9c26bb03c11673a0c56fae3f9082185a07528a1695834a9550e14d65448f7
description: MuleSoft Documentation Site
release: "2.0"
latest: false
---
---
product: Cryptography Module
version: 2.0
---

# Cryptography Module Reference 2.0

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Cryptography Module provides cryptography capabilities to a Mule application.

## Configurations

---

### Jce

JCE configuration for Java keystores and inline keys.

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Name</p></td><td><p>String</p></td><td><p>Name for this configuration. Connectors reference the configuration with this name.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Keystore</p></td><td><div><div><p>String</p></div></div></td><td><p>Path to the keystore file.</p></td><td></td><td></td></tr><tr><td><p>Type</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>JKS</p></li><li><p>JCEKS</p></li><li><p>PKCS12</p></li><li><p>BCFKS</p></li></ul></div></div></td><td><p>Type of the keystore.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Password</p></td><td><div><div><p>String</p></div></div></td><td><p>Password for unlocking the keystore.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Infos</p></td><td><div><div><p>Array of One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>List of keys to be considered, with internal IDs for referencing them.</p></td><td></td><td></td></tr><tr><td><p>Use random IVs</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Use random initial vectors (IVs) for CBC algorithms. In case of decryption, it assumes IV is prepended on the ciphertext.</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Name</p></td><td><div><div><p>String</p></div></div></td><td><p>ID used to reference this configuration.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Expiration Policy</p></td><td><div><div><p><a href="#ExpirationPolicy">Expiration Policy</a></p></div></div></td><td><p>Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.</p></td><td></td><td></td></tr></tbody></table>

## Supported Operations

- [Jce Decrypt](#JceDecrypt)

- [Jce Encrypt](#JceEncrypt)

- [Jce Sign](#JceSign)

- [Jce Validate](#JceValidate)

- [Pgp Decrypt](#PgpDecrypt)

- [Pgp Encrypt](#PgpEncrypt)

- [Pgp Encrypt And Sign](#PgpEncryptAndSign)

- [Pgp Encrypt Binary](#PgpEncryptBinary)

- [Pgp Sign](#PgpSign)

- [Pgp Sign Binary](#PgpSignBinary)

- [Pgp Validate](#PgpValidate)

- [Xml Decrypt](#XmlDecrypt)

- [Xml Encrypt](#XmlEncrypt)

- [Xml Sign](#XmlSign)

- [Xml Validate](#XmlValidate)

- [Calculate Checksum](#CalculateChecksum)

- [Validate Checksum](#ValidateChecksum)

---

### Pgp

Keystore configuration for GPG. Contains a list of keys with internal names to use in the
operations.

#### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Name</p></td><td><p>String</p></td><td><p>Name for this configuration. Connectors reference the configuration with this name.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Public Keyring</p></td><td><div><div><p>String</p></div></div></td><td><p>Public key ring file.</p></td><td></td><td></td></tr><tr><td><p>Private Keyring</p></td><td><div><div><p>String</p></div></div></td><td><p>Private key ring file.</p></td><td></td><td></td></tr><tr><td><p>Pgp Key Infos</p></td><td><div><div><p>Array of One of:</p></div><div><ul><li><p><a href="#PgpAsymmetricKeyInfo">Pgp Asymmetric Key Info</a></p></li></ul></div></div></td><td><p>List of keys to be considered, with internal IDs for referencing them.</p></td><td></td><td></td></tr><tr><td><p>Name</p></td><td><div><div><p>String</p></div></div></td><td><p>ID used to reference this configuration.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Expiration Policy</p></td><td><div><div><p><a href="#ExpirationPolicy">Expiration Policy</a></p></div></div></td><td><p>Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.</p></td><td></td><td></td></tr></tbody></table>

## Operations

## Jce Decrypt

`<crypto:jce-decrypt>`

Decrypt a stream using JCE, with a key.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to decrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Cipher</p></td><td><div><div><p>String</p></div></div></td><td><p>A raw cipher string in the form "algorithm/mode/padding" according to the Java crypto documentation, for example <code>AES/CBC/PKCS5Padding</code>. Note that GCM mode is currently not supported, and not all algorithm/mode/padding combinations are valid.</p></td><td></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>AES</p></li><li><p>AESWrap</p></li><li><p>ARCFOUR</p></li><li><p>Blowfish</p></li><li><p>DES</p></li><li><p>DESede</p></li><li><p>RC2</p></li><li><p>DESedeWrap</p></li><li><p>RSA</p></li></ul></div></div></td><td><p>Algorithm from a list of valid definitions, this is preferred.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:DECRYPTION

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

## Jce Encrypt

`<crypto:jce-encrypt>`

Encrypt a stream using JCE, with a key.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to encrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Cipher</p></td><td><div><div><p>String</p></div></div></td><td><p>A raw cipher string in the form "algorithm/mode/padding" according to the Java crypto documentation, for example <code>AES/CBC/PKCS5Padding</code>. Note that GCM mode is currently not supported, and not all algorithm/mode/padding combinations are valid.</p></td><td></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>AES</p></li><li><p>AESWrap</p></li><li><p>ARCFOUR</p></li><li><p>Blowfish</p></li><li><p>DES</p></li><li><p>DESede</p></li><li><p>RC2</p></li><li><p>DESedeWrap</p></li><li><p>RSA</p></li></ul></div></div></td><td><p>Algorithm from a list of valid definitions, this is preferred.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

## Jce Sign

`<crypto:jce-sign>`

Sign a stream using JCE, with a key.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to sign</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>MD2withRSA</p></li><li><p>MD5withRSA</p></li><li><p>SHA1withRSA</p></li><li><p>SHA224withRSA</p></li><li><p>SHA256withRSA</p></li><li><p>SHA384withRSA</p></li><li><p>SHA512withRSA</p></li><li><p>NONEwithDSA</p></li><li><p>SHA1withDSA</p></li><li><p>SHA224withDSA</p></li><li><p>SHA256withDSA</p></li><li><p>HmacMD5</p></li><li><p>HmacSHA1</p></li><li><p>HmacSHA224</p></li><li><p>HmacSHA256</p></li><li><p>HmacSHA384</p></li><li><p>HmacSHA512</p></li></ul></div></div></td><td><p>the algorithm used for signing</p></td><td><p>HmacSHA256</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>String</p></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

- CRYPTO:SIGNATURE

## Jce Validate

`<crypto:jce-validate>`

Validate a stream against a signature, using a key.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Value</p></td><td><div><div><p>Any</p></div></div></td><td><p>the message to authenticate</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Expected</p></td><td><div><div><p>String</p></div></div></td><td><p>the signature to validate</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>MD2withRSA</p></li><li><p>MD5withRSA</p></li><li><p>SHA1withRSA</p></li><li><p>SHA224withRSA</p></li><li><p>SHA256withRSA</p></li><li><p>SHA384withRSA</p></li><li><p>SHA512withRSA</p></li><li><p>NONEwithDSA</p></li><li><p>SHA1withDSA</p></li><li><p>SHA224withDSA</p></li><li><p>SHA256withDSA</p></li><li><p>HmacMD5</p></li><li><p>HmacSHA1</p></li><li><p>HmacSHA224</p></li><li><p>HmacSHA256</p></li><li><p>HmacSHA384</p></li><li><p>HmacSHA512</p></li></ul></div></div></td><td><p>the algorithm used for signing</p></td><td><p>HmacSHA256</p></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:VALIDATION

## Xml Decrypt

`<crypto:xml-decrypt>`

Decrypt the XML document.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the document to decrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Element Path</p></td><td><div><div><p>String</p></div></div></td><td></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:DECRYPTION

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

## Xml Encrypt

`<crypto:xml-encrypt>`

Encrypt the XML document.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the document to encrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>AES_CBC</p></li><li><p>AES_GCM</p></li><li><p>TRIPLEDES</p></li></ul></div></div></td><td><p>the algorithm for encryption</p></td><td><p>AES_CBC</p></td><td></td></tr><tr><td><p>Element Path</p></td><td><div><div><p>String</p></div></div></td><td><p>the path to the element to encrypt, if empty the whole document is considered</p></td><td></td><td></td></tr><tr><td><p>Encrypt Content</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>encrypt the XML element or its content, if false the whole XML element is encrypted.</p></td><td><p>true</p></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Encryption Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>RSA15</p></li><li><p>RSA_OAEP</p></li><li><p>RSA_OAEP_11</p></li></ul></div></div></td><td></td><td><p>RSA_OAEP</p></td><td></td></tr><tr><td><p>Canonicalization algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>EXCLUSIVE</p></li><li><p>EXCLUSIVE_WITH_COMMENTS</p></li><li><p>INCLUSIVE</p></li><li><p>INCLUSE_WITH_COMMENTS</p></li></ul></div></div></td><td></td><td><p>EXCLUSIVE</p></td><td></td></tr><tr><td><p>Digest Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>RIPEMD160</p></li><li><p>SHA1</p></li><li><p>SHA256</p></li><li><p>SHA512</p></li></ul></div></div></td><td></td><td><p>SHA512</p></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

## Xml Sign

`<crypto:xml-sign>`

Sign an XML document.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the XML document to sign</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Digest Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>RIPEMD160</p></li><li><p>SHA1</p></li><li><p>SHA256</p></li><li><p>SHA512</p></li></ul></div></div></td><td><p>the hashing algorithm for signing</p></td><td><p>SHA256</p></td><td></td></tr><tr><td><p>Canonicalization Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>EXCLUSIVE</p></li><li><p>EXCLUSIVE_WITH_COMMENTS</p></li><li><p>INCLUSIVE</p></li><li><p>INCLUSE_WITH_COMMENTS</p></li></ul></div></div></td><td><p>the canonicalization method for whitespace and namespace unification</p></td><td><p>EXCLUSIVE</p></td><td></td></tr><tr><td><p>Type</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>DETACHED</p></li><li><p>ENVELOPED</p></li><li><p>ENVELOPING</p></li></ul></div></div></td><td><p>the type of signature to create</p></td><td><p>ENVELOPED</p></td><td></td></tr><tr><td><p>Element Path</p></td><td><div><div><p>String</p></div></div></td><td><p>for internally detached signatures, an unambiguous XPath expression resolving to the element to sign</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

- CRYPTO:SIGNATURE

## Xml Validate

`<crypto:xml-validate>`

Validate an XML signed document.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the document to verify (includes the signature)</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Element Path</p></td><td><div><div><p>String</p></div></div></td><td><p>for internally detached signatures, an unambiguous XPath expression resolving to the signed element</p></td><td></td><td></td></tr><tr><td><p>Use Inline Certificate If Present</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>Use inline defined certificate if found</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Jce Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#JceAsymmetricKeyInfo">Jce Asymmetric Key Info</a></p></li><li><p><a href="#JceSymmetricKeyInfo">Jce Symmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### For Configurations

- [Jce](#Jce)

### Throws

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:VALIDATION

## Pgp Decrypt

`<crypto:pgp-decrypt>`

Decrypt a stream using PGP, giving the original data as a result. The decryption is done with the
private key, so the secret passphrase must be provided.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to decrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>File Name</p></td><td><div><div><p>String</p></div></div></td><td><p>the internal file name to decrypt, if not present the first will be used</p></td><td></td><td></td></tr><tr><td><p>Validate If Signature Found</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>If the message being decrypted contains a signature, choose whether or not to validate the decrypted message against it</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Pgp](#Pgp)

### Throws

- CRYPTO:DECRYPTION

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PASSPHRASE

## Pgp Encrypt

`<crypto:pgp-encrypt>`

Encrypt a stream using PGP, giving an ASCII-armored stream output as a result. The encryption is
done with the public key of the recipient, so the secret passphrase is not required.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to encrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>IDEA</p></li><li><p>TRIPLE_DES</p></li><li><p>CAST5</p></li><li><p>BLOWFISH</p></li><li><p>SAFER</p></li><li><p>DES</p></li><li><p>AES_128</p></li><li><p>AES_192</p></li><li><p>AES_256</p></li><li><p>TWOFISH</p></li><li><p>CAMELLIA_128</p></li><li><p>CAMELLIA_192</p></li><li><p>CAMELLIA_256</p></li></ul></div></div></td><td><p>the symmetric algorithm to use for encryption</p></td><td><p>AES_256</p></td><td></td></tr><tr><td><p>File Name</p></td><td><div><div><p>String</p></div></div></td><td><p>the internal file name to use in the resulting PGP header</p></td><td><p>stream</p></td><td></td></tr><tr><td><p>Disable MDC</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>If set, MDC (modification detection code) will not be used during encryption</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Pgp Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#PgpAsymmetricKeyInfo">Pgp Asymmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Pgp](#Pgp)

### Throws

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

## Pgp Encrypt And Sign

`<crypto:pgp-encrypt-and-sign>`

Encrypt a stream using PGP, giving an ASCII-armored stream output as a result. The encryption is
done with the public key of the recipient, so the secret passphrase is not required.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to encrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>IDEA</p></li><li><p>TRIPLE_DES</p></li><li><p>CAST5</p></li><li><p>BLOWFISH</p></li><li><p>SAFER</p></li><li><p>DES</p></li><li><p>AES_128</p></li><li><p>AES_192</p></li><li><p>AES_256</p></li><li><p>TWOFISH</p></li><li><p>CAMELLIA_128</p></li><li><p>CAMELLIA_192</p></li><li><p>CAMELLIA_256</p></li></ul></div></div></td><td><p>the symmetric algorithm to use for encryption</p></td><td><p>AES_256</p></td><td></td></tr><tr><td><p>File Name</p></td><td><div><div><p>String</p></div></div></td><td><p>the internal file name to use in the resulting PGP header</p></td><td><p>stream</p></td><td></td></tr><tr><td><p>Encryption Key Selection</p></td><td><div><div><p><a href="#PgpKeySelection">Pgp Key Selection</a></p></div></div></td><td><p>the key used to encrypt the message.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Sign Key Selection</p></td><td><div><div><p><a href="#PgpKeySelection">Pgp Key Selection</a></p></div></div></td><td><p>the key used to sign the message.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Disable MDC</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>If set, MDC (modification detection code) will not be used during encryption</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Pgp](#Pgp)

### Throws

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

## Pgp Encrypt Binary

`<crypto:pgp-encrypt-binary>`

Encrypt a stream using PGP, giving a binary output as a result. The encryption is done with the
public key of the recipient, so the secret passphrase is not required.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to encrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>IDEA</p></li><li><p>TRIPLE_DES</p></li><li><p>CAST5</p></li><li><p>BLOWFISH</p></li><li><p>SAFER</p></li><li><p>DES</p></li><li><p>AES_128</p></li><li><p>AES_192</p></li><li><p>AES_256</p></li><li><p>TWOFISH</p></li><li><p>CAMELLIA_128</p></li><li><p>CAMELLIA_192</p></li><li><p>CAMELLIA_256</p></li></ul></div></div></td><td><p>the symmetric algorithm to use for encryption</p></td><td><p>AES_256</p></td><td></td></tr><tr><td><p>File Name</p></td><td><div><div><p>String</p></div></div></td><td><p>the internal file name to use in the resulting PGP header</p></td><td><p>stream</p></td><td></td></tr><tr><td><p>Disable MDC</p></td><td><div><div><p>Boolean</p></div></div></td><td><p>If set, MDC (modification detection code) will not be used during encryption</p></td><td><p>false</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Pgp Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#PgpAsymmetricKeyInfo">Pgp Asymmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Pgp](#Pgp)

### Throws

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

## Pgp Sign

`<crypto:pgp-sign>`

Create a detached (standalone) PGP signature of the stream. The signing is done with the private key
of the sender, so the secret passphrase must be provided.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to sign</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>MD5</p></li><li><p>RIPEMD160</p></li><li><p>TIGER_192</p></li><li><p>HAVAL_5_160</p></li><li><p>DOUBLE_SHA</p></li><li><p>SHA1</p></li><li><p>SHA224</p></li><li><p>SHA256</p></li><li><p>SHA384</p></li><li><p>SHA512</p></li></ul></div></div></td><td><p>the digest (or hashing) algorithm</p></td><td><p>SHA256</p></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Pgp Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#PgpAsymmetricKeyInfo">Pgp Asymmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Pgp](#Pgp)

### Throws

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

- CRYPTO:SIGNATURE

## Pgp Sign Binary

`<crypto:pgp-sign-binary>`

Create a detached (standalone) PGP signature of the stream. The signing is done with the private key
of the sender, so the secret passphrase must be provided.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to sign</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>MD5</p></li><li><p>RIPEMD160</p></li><li><p>TIGER_192</p></li><li><p>HAVAL_5_160</p></li><li><p>DOUBLE_SHA</p></li><li><p>SHA1</p></li><li><p>SHA224</p></li><li><p>SHA256</p></li><li><p>SHA384</p></li><li><p>SHA512</p></li></ul></div></div></td><td><p>the digest (or hashing) algorithm</p></td><td><p>SHA256</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Key Id</p></td><td><div><div><p>String</p></div></div></td><td><p>The key ID, as defined in the JCE configuration.</p></td><td></td><td></td></tr><tr><td><p>Pgp Key Info</p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#PgpAsymmetricKeyInfo">Pgp Asymmetric Key Info</a></p></li></ul></div></div></td><td><p>An inline key definition.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### For Configurations

- [Pgp](#Pgp)

### Throws

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

- CRYPTO:SIGNATURE

## Pgp Validate

`<crypto:pgp-validate>`

Validate a PGP signature against a stream, to authenticate it. The validation is done with the
public key of the sender, so the secret passphrase is not required.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Configuration</p></td><td><p>String</p></td><td><p>Name of the configuration to use.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Value</p></td><td><div><div><p>Any</p></div></div></td><td><p>the message to authenticate</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Expected</p></td><td><div><div><p>Any</p></div></div></td><td><p>the signature</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Config Ref</p></td><td><div><div><p>ConfigurationProvider</p></div></div></td><td><p>Name of the configuration to use to execute this component.</p></td><td></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### For Configurations

- [Pgp](#Pgp)

### Throws

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:VALIDATION

## Calculate Checksum

`<crypto:calculate-checksum>`

Calculate the checksum of the stream.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>CRC32</p></li><li><p>MD2</p></li><li><p>MD5</p></li><li><p>SHA_1</p></li><li><p>SHA_256</p></li><li><p>SHA_512</p></li></ul></div></div></td><td><p>the checksum algorithm</p></td><td><p>SHA_512</p></td><td></td></tr><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content for calculating the checksum</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>String</p></td></tr></tbody></table>

### Throws

- CRYPTO:CHECKSUM

## Jce Decrypt Pbe

`<crypto:jce-decrypt-pbe>`

Decrypt a stream using JCE, with a password.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to decrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>String</p></div></div></td><td><p>the algorithm for generating a key from the password</p></td><td><p>PBKDF2withHmacSHA512<em>AES256</em>CBC__PKCS5Padding (FIPS)</p></td><td></td></tr><tr><td><p>Password</p></td><td><div><div><p>String</p></div></div></td><td><p>the password for decryption</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Password Salt</p></td><td><div><div><p>String</p></div></div></td><td><p>the password salt used to sign. Recommended minimum: 16 bytes of random data to ensure uniqueness and prevent rainbow table attacks. The salt is encoded in UTF-8 and cannot be modified after creation.</p></td><td></td><td></td></tr><tr><td><p>Iteration Count</p></td><td><div><div><p>Number</p></div></div></td><td><p>the iteration count used to sign. Recommended minimum: 100,000 iterations to slow down brute-force attacks in modern hardware.</p></td><td><p>0</p></td><td></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### Throws

- CRYPTO:DECRYPTION

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

## Jce Encrypt Pbe

`<crypto:jce-encrypt-pbe>`

Encrypt a stream using JCE, with a password.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to encrypt</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>String</p></div></div></td><td><p>the algorithm for generating a key from the password</p></td><td><p>PBKDF2withHmacSHA512<em>AES256</em>CBC__PKCS5Padding</p></td><td></td></tr><tr><td><p>Password</p></td><td><div><div><p>String</p></div></div></td><td><p>the password for encryption</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Password Salt</p></td><td><div><div><p>String</p></div></div></td><td><p>the password salt used to sign. Recommended minimum: 16 bytes of random data to ensure uniqueness and prevent rainbow table attacks. The salt is encoded in UTF-8 and cannot be modified after creation.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Iteration Count</p></td><td><div><div><p>Number</p></div></div></td><td><p>the iteration count used to sign. Recommended minimum: 100,000 iterations to slow down brute-force attacks in modern hardware.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Output Encoding</p></td><td><div><div><p>String</p></div></div></td><td><p>The encoding of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### Throws

- CRYPTO:ENCRYPTION

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

## Jce Sign Pbe

`<crypto:jce-sign-pbe>`

Sign a stream using JCE, with a key.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to sign</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>String</p></div></div></td><td><p>the algorithm used for signing</p></td><td><p>PBKDF2withHmacSHA512</p></td><td></td></tr><tr><td><p>Password</p></td><td><div><div><p>String</p></div></div></td><td><p>the password used to sign</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Password Salt</p></td><td><div><div><p>String</p></div></div></td><td><p>the password salt used to sign. Recommended minimum: 16 bytes of random data to ensure uniqueness and prevent rainbow table attacks. The salt is encoded in UTF-8 and cannot be modified after creation.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Iteration Count</p></td><td><div><div><p>Number</p></div></div></td><td><p>the iteration count used to sign. Recommended minimum: 100,000 iterations to slow down brute-force attacks in modern hardware.</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Output Mime Type</p></td><td><div><div><p>String</p></div></div></td><td><p>The mime type of the payload that this operation outputs.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>String</p></td></tr></tbody></table>

### Throws

- CRYPTO:KEY

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:PASSPHRASE

- CRYPTO:SIGNATURE

## Jce Validate Pbe

`<crypto:jce-validate-pbe>`

Validate a stream against a signature, using a key.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Value</p></td><td><div><div><p>Any</p></div></div></td><td><p>the message to authenticate</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Expected</p></td><td><div><div><p>String</p></div></div></td><td><p>the signature to validate</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Algorithm</p></td><td><div><div><p>String</p></div></div></td><td><p>the algorithm used for signing</p></td><td><p>PBKDF2withHmacSHA512</p></td><td></td></tr><tr><td><p>Password</p></td><td><div><div><p>String</p></div></div></td><td><p>the password used to sign</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Password Salt</p></td><td><div><div><p>String</p></div></div></td><td><p>the password salt used to sign. Recommended minimum: 16 bytes of random data to ensure uniqueness and prevent rainbow table attacks. The salt is encoded in UTF-8 and cannot be modified after creation.</p></td><td></td><td></td></tr><tr><td><p>Iteration Count</p></td><td><div><div><p>Number</p></div></div></td><td><p>the iteration count used to sign. Recommended minimum: 100,000 iterations to slow down brute-force attacks in modern hardware.</p></td><td><p>0</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Throws

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:VALIDATION

## Pgp Binary To Armored

`<crypto:pgp-binary-to-armored>`

Converts an encrypted PGP message or a PGP signature to an ASCII armored representation, suitable
for plain text channels.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Content</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content to convert</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Streaming Strategy</p></td><td><div><div><ul><li><p><a href="#RepeatableInMemoryStream">Repeatable In Memory Stream</a></p></li><li><p><a href="#RepeatableFileStoreStream">Repeatable File Store Stream</a></p></li><li><p>non-repeatable-stream</p></li></ul></div></div></td><td><p>Configures how Mule processes streams. Repeatable streams are the default behavior.</p></td><td></td><td></td></tr><tr><td><p>Target Variable</p></td><td><div><div><p>String</p></div></div></td><td><p>Name of the variable that storesoperation’s output will be placed</p></td><td></td><td></td></tr><tr><td><p>Target Value</p></td><td><div><div><p>String</p></div></div></td><td><p>An expression to evaluate against the operation’s output and store the expression outcome in the target variable</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Output

<table><colgroup><col> <col></colgroup><tbody><tr><td><p>Type</p></td><td><p>Any</p></td></tr></tbody></table>

### Throws

- CRYPTO:PARAMETERS

## Validate Checksum

`<crypto:validate-checksum>`

Validate the checksum of the stream against an expected checksum.

### Parameters

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Name</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p>Algorithm</p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>CRC32</p></li><li><p>MD2</p></li><li><p>MD5</p></li><li><p>SHA_1</p></li><li><p>SHA_256</p></li><li><p>SHA_512</p></li></ul></div></div></td><td><p>the checksum algorithm</p></td><td><p>SHA_512</p></td><td></td></tr><tr><td><p>Value</p></td><td><div><div><p>Any</p></div></div></td><td><p>the content for calculating the checksum</p></td><td><p>#[payload]</p></td><td></td></tr><tr><td><p>Expected</p></td><td><div><div><p>String</p></div></div></td><td><p>the expected checksum as an hexadecimal string</p></td><td></td><td><p>x</p></td></tr><tr><td><p>Error Mappings</p></td><td><div><div><p>Array of <a href="#ErrorMapping">Error Mapping</a></p></div></div></td><td><p>Set of error mappings</p></td><td></td><td></td></tr></tbody></table>

### Throws

- CRYPTO:MISSING\_KEY

- CRYPTO:PARAMETERS

- CRYPTO:VALIDATION

## Types

### Expiration Policy

Configures an expiration policy strategy.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Max Idle Time</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Time Unit</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>NANOSECONDS</p></li><li><p>MICROSECONDS</p></li><li><p>MILLISECONDS</p></li><li><p>SECONDS</p></li><li><p>MINUTES</p></li><li><p>HOURS</p></li><li><p>DAYS</p></li></ul></div></div></td><td><div><div><p>Time unit for the <strong>Max Idle Time</strong> field.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Repeatable In Memory Stream

Configures the in-memory streaming strategy by which the request fails if the data exceeds the MAX
buffer size. Always run performance tests to find the optimal buffer size for your specific use
case.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Initial Buffer Size</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by <strong>Buffer Size Increment</strong>, with an upper limit of <strong>Max In Memory Size value</strong>.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Buffer Size Increment</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Max Buffer Size</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a <code>STREAM_MAXIMUM_SIZE_EXCEEDED</code> error. A value of less than or equal to <code>0</code> means no limit.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Buffer Unit</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><div><div><p>Unit for the <strong>Initial Buffer Size</strong>, <strong>Buffer Size Increment</strong>, and <strong>Buffer Unit</strong> fields.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Repeatable File Store Stream

Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream
content in memory. If the stream content is larger than the configured buffer size, Mule backs up
the buffer’s content to disk and then clears the memory.

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>In Memory Size</strong></p></td><td><div><div><p>Number</p></div></div></td><td><div><div><p>Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance:</p></div><div><ul><li><p>Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk. This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory.</p></li><li><p>Configure a smaller buffer size to decrease memory load at the expense of response time.</p></li></ul></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Buffer Unit</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>BYTE</p></li><li><p>KB</p></li><li><p>MB</p></li><li><p>GB</p></li></ul></div></div></td><td><div><div><p>Unit for the <strong>In Memory Size</strong> field.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Error Mapping

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Source</strong></p></td><td><div><div><p>Enumeration, one of:</p></div><div><ul><li><p>ANY</p></li><li><p>REDELIVERY_EXHAUSTED</p></li><li><p>TRANSFORMATION</p></li><li><p>EXPRESSION</p></li><li><p>SECURITY</p></li><li><p>CLIENT_SECURITY</p></li><li><p>SERVER_SECURITY</p></li><li><p>ROUTING</p></li><li><p>CONNECTIVITY</p></li><li><p>RETRY_EXHAUSTED</p></li><li><p>TIMEOUT</p></li></ul></div></div></td><td><div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Target</strong></p></td><td><div><div><p>String</p></div></div></td><td><div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr></tbody></table>

### Pgp Key Selection

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Key Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The key ID, as defined in the JCE configuration.</p></div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Pgp Key Info</strong></p></td><td><div><div><p>One of:</p></div><div><ul><li><p><a href="#PgpAsymmetricKeyInfo">Pgp Asymmetric Key Info</a></p></li></ul></div></div></td><td><div><div><p>An inline key definition.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Pgp Asymmetric Key Info

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Key Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Internal key ID for referencing from operations.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr><tr><td><p><strong>Key Pair Identifier</strong></p></td><td><div><div><p><a href="#PgpAsymmetricKeyIdentifier">Pgp Asymmetric Key Identifier</a></p></div></div></td><td><div><div><p>A way to identify the key inside the keystore.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr><tr><td><p><strong>Passphrase</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>The password for unlocking the secret part of the key.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Pgp Asymmetric Key Identifier

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Fingerprint</strong></p></td><td><div><div><p>String</p></div></div></td><td><div></div></td><td><div></div></td><td><div></div></td></tr><tr><td><p><strong>Principal</strong></p></td><td><div><div><p>String</p></div></div></td><td><div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Jce Asymmetric Key Info

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Key Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Internal key ID for referencing from operations.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr><tr><td><p><strong>Alias</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Alias of the key in the keystore.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr><tr><td><p><strong>Password</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Password used to unlock the private part of the key.</p></div></div></td><td><div></div></td><td><div></div></td></tr></tbody></table>

### Jce Symmetric Key Info

<table><colgroup><col> <col> <col> <col> <col></colgroup><thead><tr><th>Field</th><th>Type</th><th>Description</th><th>Default Value</th><th>Required</th></tr></thead><tbody><tr><td><p><strong>Key Id</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Internal key ID for referencing from operations.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr><tr><td><p><strong>Alias</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Alias of the key in the keystore.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr><tr><td><p><strong>Password</strong></p></td><td><div><div><p>String</p></div></div></td><td><div><div><p>Password used to unlock the key.</p></div></div></td><td><div></div></td><td><div><div><p>x</p></div></div></td></tr></tbody></table>
