Crypto (JCE)

JVM since1.1.0 Native since1.2.0

Sign and verify exchanges using the Signature Service of the Java Cryptographic Extension (JCE).

What’s inside

Please refer to the above links for usage and configuration details.

Maven coordinates

Or add the coordinates to your existing project:

<dependency>
    <groupId>org.apache.camel.quarkus</groupId>
    <artifactId>camel-quarkus-crypto</artifactId>
</dependency>

Check the User guide for more information about writing Camel Quarkus applications.

Usage

Security Provider

This extension requires a BouncyCastle security provider to be registered and also utilizes the quarkus security extension.

If no BouncyCastle provider is registered via the quarkus.security.security-providers configuration property, then a default BC provider is registered automatically.

FIPS

When running the crypto extension on a FIPS enabled system, a FIPS-compliant Java Security Provider (such as BCFIPS) has to be used.

In the case of BCFIPS, add dependencies bc-fips and quarkus-security to your application.

<dependency>
    <groupId>org.bouncycastle</groupId>
    <artifactId>bc-fips</artifactId>
</dependency>
<dependency>
    <groupId>io.quarkus</groupId>
    <artifactId>quarkus-security</artifactId>
</dependency>

Then register the BCFIPS security provider by adding the following configuration to application.properties.

quarkus.security.security-providers=BCFIPS

Alternatively, you can add a different FIPS compliant provider and register it via the quarkus.security.security-providers configuration property.

Refer to the Quarkus Security guide for more information.

SSL in native mode

This extension auto-enables SSL support in native mode. Hence you do not need to add quarkus.ssl.native=true to your application.properties yourself. See also Quarkus SSL guide.