This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push: new 87beee8d4d1 CAMEL-21994 - Camel-PQC: Add more Symmetric Algorithms (#17805) 87beee8d4d1 is described below commit 87beee8d4d1623498629c58746249c1dbbec1a44 Author: Andrea Cosentino <anco...@gmail.com> AuthorDate: Fri Apr 18 19:20:15 2025 +0200 CAMEL-21994 - Camel-PQC: Add more Symmetric Algorithms (#17805) Signed-off-by: Andrea Cosentino <anco...@gmail.com> --- .../org/apache/camel/catalog/components/pqc.json | 8 +++--- .../component/pqc/PQCComponentConfigurer.java | 6 +++++ .../camel/component/pqc/PQCEndpointConfigurer.java | 6 +++++ .../camel/component/pqc/PQCEndpointUriFactory.java | 3 ++- .../org/apache/camel/component/pqc/pqc.json | 8 +++--- .../camel/component/pqc/PQCConfiguration.java | 14 ++++++++++ .../apache/camel/component/pqc/PQCProducer.java | 6 +++-- .../component/pqc/PQCSymmetricAlgorithms.java | 6 ++++- ...nerateEncapsulationCryptoRoundTripAESTest.java} | 9 +++---- ...nerateEncapsulationCryptoRoundTripAriaTest.java | 7 ++--- ...rateEncapsulationCryptoRoundTripCAST5Test.java} | 20 +++++++-------- ...rateEncapsulationCryptoRoundTripCAST6Test.java} | 18 ++++++------- ...ncapsulationCryptoRoundTripCHACHA7539Test.java} | 17 +++++++----- ...eEncapsulationCryptoRoundTripCamelliaTest.java} | 20 +++++++-------- ...nerateEncapsulationCryptoRoundTripRC5Test.java} | 15 ++++++----- .../component/dsl/PqcComponentBuilderFactory.java | 18 +++++++++++++ .../endpoint/dsl/PQCEndpointBuilderFactory.java | 30 ++++++++++++++++++++++ 17 files changed, 144 insertions(+), 67 deletions(-) diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pqc.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pqc.json index 141ce7e15b2..26cf7e35e7a 100644 --- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pqc.json +++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/pqc.json @@ -34,8 +34,9 @@ "signatureAlgorithm": { "index": 7, "kind": "property", "displayName": "Signature Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case there is no signer, we specify an algorithm to build the KeyPair o [...] "signer": { "index": 8, "kind": "property", "displayName": "Signer", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.security.Signature", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The Signer to be used" }, "symmetricKeyAlgorithm": { "index": 9, "kind": "property", "displayName": "Symmetric Key Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case we are using KEM operations, we need a Symmetric algorithm [...] - "healthCheckConsumerEnabled": { "index": 10, "kind": "property", "displayName": "Health Check Consumer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all consumer based health checks from this component" }, - "healthCheckProducerEnabled": { "index": 11, "kind": "property", "displayName": "Health Check Producer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all producer based health checks from this component. Notice: Camel has by default disabled all producer based health-checks. You can turn on produce [...] + "symmetricKeyLength": { "index": 10, "kind": "property", "displayName": "Symmetric Key Length", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 128, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The required length of the symmetric key used" }, + "healthCheckConsumerEnabled": { "index": 11, "kind": "property", "displayName": "Health Check Consumer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all consumer based health checks from this component" }, + "healthCheckProducerEnabled": { "index": 12, "kind": "property", "displayName": "Health Check Producer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all producer based health checks from this component. Notice: Camel has by default disabled all producer based health-checks. You can turn on produce [...] }, "headers": { "CamelPQCOperation": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The operation we want to perform", "constantName": "org.apache.camel.component.pqc.PQCConstants#OPERATION" }, @@ -51,6 +52,7 @@ "keyPair": { "index": 5, "kind": "parameter", "displayName": "Key Pair", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.security.KeyPair", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The KeyPair to be used" }, "signatureAlgorithm": { "index": 6, "kind": "parameter", "displayName": "Signature Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case there is no signer, we specify an algorithm to build the KeyPair [...] "signer": { "index": 7, "kind": "parameter", "displayName": "Signer", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.security.Signature", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The Signer to be used" }, - "symmetricKeyAlgorithm": { "index": 8, "kind": "parameter", "displayName": "Symmetric Key Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case we are using KEM operations, we need a Symmetric algorithm [...] + "symmetricKeyAlgorithm": { "index": 8, "kind": "parameter", "displayName": "Symmetric Key Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case we are using KEM operations, we need a Symmetric algorithm [...] + "symmetricKeyLength": { "index": 9, "kind": "parameter", "displayName": "Symmetric Key Length", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 128, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The required length of the symmetric key used" } } } diff --git a/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCComponentConfigurer.java b/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCComponentConfigurer.java index 405f409a321..ecb99708b40 100644 --- a/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCComponentConfigurer.java +++ b/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCComponentConfigurer.java @@ -51,6 +51,8 @@ public class PQCComponentConfigurer extends PropertyConfigurerSupport implements case "signer": getOrCreateConfiguration(target).setSigner(property(camelContext, java.security.Signature.class, value)); return true; case "symmetrickeyalgorithm": case "symmetricKeyAlgorithm": getOrCreateConfiguration(target).setSymmetricKeyAlgorithm(property(camelContext, java.lang.String.class, value)); return true; + case "symmetrickeylength": + case "symmetricKeyLength": getOrCreateConfiguration(target).setSymmetricKeyLength(property(camelContext, int.class, value)); return true; default: return false; } } @@ -84,6 +86,8 @@ public class PQCComponentConfigurer extends PropertyConfigurerSupport implements case "signer": return java.security.Signature.class; case "symmetrickeyalgorithm": case "symmetricKeyAlgorithm": return java.lang.String.class; + case "symmetrickeylength": + case "symmetricKeyLength": return int.class; default: return null; } } @@ -113,6 +117,8 @@ public class PQCComponentConfigurer extends PropertyConfigurerSupport implements case "signer": return getOrCreateConfiguration(target).getSigner(); case "symmetrickeyalgorithm": case "symmetricKeyAlgorithm": return getOrCreateConfiguration(target).getSymmetricKeyAlgorithm(); + case "symmetrickeylength": + case "symmetricKeyLength": return getOrCreateConfiguration(target).getSymmetricKeyLength(); default: return null; } } diff --git a/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointConfigurer.java b/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointConfigurer.java index 3b0b352a379..bed7d3a3aa6 100644 --- a/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointConfigurer.java +++ b/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointConfigurer.java @@ -37,6 +37,8 @@ public class PQCEndpointConfigurer extends PropertyConfigurerSupport implements case "signer": target.getConfiguration().setSigner(property(camelContext, java.security.Signature.class, value)); return true; case "symmetrickeyalgorithm": case "symmetricKeyAlgorithm": target.getConfiguration().setSymmetricKeyAlgorithm(property(camelContext, java.lang.String.class, value)); return true; + case "symmetrickeylength": + case "symmetricKeyLength": target.getConfiguration().setSymmetricKeyLength(property(camelContext, int.class, value)); return true; default: return false; } } @@ -63,6 +65,8 @@ public class PQCEndpointConfigurer extends PropertyConfigurerSupport implements case "signer": return java.security.Signature.class; case "symmetrickeyalgorithm": case "symmetricKeyAlgorithm": return java.lang.String.class; + case "symmetrickeylength": + case "symmetricKeyLength": return int.class; default: return null; } } @@ -85,6 +89,8 @@ public class PQCEndpointConfigurer extends PropertyConfigurerSupport implements case "signer": return target.getConfiguration().getSigner(); case "symmetrickeyalgorithm": case "symmetricKeyAlgorithm": return target.getConfiguration().getSymmetricKeyAlgorithm(); + case "symmetrickeylength": + case "symmetricKeyLength": return target.getConfiguration().getSymmetricKeyLength(); default: return null; } } diff --git a/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointUriFactory.java b/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointUriFactory.java index def55d2d54c..9054e90e7ff 100644 --- a/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointUriFactory.java +++ b/components/camel-pqc/src/generated/java/org/apache/camel/component/pqc/PQCEndpointUriFactory.java @@ -23,7 +23,7 @@ public class PQCEndpointUriFactory extends org.apache.camel.support.component.En private static final Set<String> SECRET_PROPERTY_NAMES; private static final Set<String> MULTI_VALUE_PREFIXES; static { - Set<String> props = new HashSet<>(9); + Set<String> props = new HashSet<>(10); props.add("keyEncapsulationAlgorithm"); props.add("keyGenerator"); props.add("keyPair"); @@ -33,6 +33,7 @@ public class PQCEndpointUriFactory extends org.apache.camel.support.component.En props.add("signatureAlgorithm"); props.add("signer"); props.add("symmetricKeyAlgorithm"); + props.add("symmetricKeyLength"); PROPERTY_NAMES = Collections.unmodifiableSet(props); SECRET_PROPERTY_NAMES = Collections.emptySet(); MULTI_VALUE_PREFIXES = Collections.emptySet(); diff --git a/components/camel-pqc/src/generated/resources/META-INF/org/apache/camel/component/pqc/pqc.json b/components/camel-pqc/src/generated/resources/META-INF/org/apache/camel/component/pqc/pqc.json index 141ce7e15b2..26cf7e35e7a 100644 --- a/components/camel-pqc/src/generated/resources/META-INF/org/apache/camel/component/pqc/pqc.json +++ b/components/camel-pqc/src/generated/resources/META-INF/org/apache/camel/component/pqc/pqc.json @@ -34,8 +34,9 @@ "signatureAlgorithm": { "index": 7, "kind": "property", "displayName": "Signature Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case there is no signer, we specify an algorithm to build the KeyPair o [...] "signer": { "index": 8, "kind": "property", "displayName": "Signer", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.security.Signature", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The Signer to be used" }, "symmetricKeyAlgorithm": { "index": 9, "kind": "property", "displayName": "Symmetric Key Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case we are using KEM operations, we need a Symmetric algorithm [...] - "healthCheckConsumerEnabled": { "index": 10, "kind": "property", "displayName": "Health Check Consumer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all consumer based health checks from this component" }, - "healthCheckProducerEnabled": { "index": 11, "kind": "property", "displayName": "Health Check Producer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all producer based health checks from this component. Notice: Camel has by default disabled all producer based health-checks. You can turn on produce [...] + "symmetricKeyLength": { "index": 10, "kind": "property", "displayName": "Symmetric Key Length", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 128, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The required length of the symmetric key used" }, + "healthCheckConsumerEnabled": { "index": 11, "kind": "property", "displayName": "Health Check Consumer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all consumer based health checks from this component" }, + "healthCheckProducerEnabled": { "index": 12, "kind": "property", "displayName": "Health Check Producer Enabled", "group": "health", "label": "health", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Used for enabling or disabling all producer based health checks from this component. Notice: Camel has by default disabled all producer based health-checks. You can turn on produce [...] }, "headers": { "CamelPQCOperation": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The operation we want to perform", "constantName": "org.apache.camel.component.pqc.PQCConstants#OPERATION" }, @@ -51,6 +52,7 @@ "keyPair": { "index": 5, "kind": "parameter", "displayName": "Key Pair", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.security.KeyPair", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The KeyPair to be used" }, "signatureAlgorithm": { "index": 6, "kind": "parameter", "displayName": "Signature Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case there is no signer, we specify an algorithm to build the KeyPair [...] "signer": { "index": 7, "kind": "parameter", "displayName": "Signer", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "java.security.Signature", "deprecated": false, "deprecationNote": "", "autowired": true, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The Signer to be used" }, - "symmetricKeyAlgorithm": { "index": 8, "kind": "parameter", "displayName": "Symmetric Key Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case we are using KEM operations, we need a Symmetric algorithm [...] + "symmetricKeyAlgorithm": { "index": 8, "kind": "parameter", "displayName": "Symmetric Key Algorithm", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "In case we are using KEM operations, we need a Symmetric algorithm [...] + "symmetricKeyLength": { "index": 9, "kind": "parameter", "displayName": "Symmetric Key Length", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": 128, "configurationClass": "org.apache.camel.component.pqc.PQCConfiguration", "configurationField": "configuration", "description": "The required length of the symmetric key used" } } } diff --git a/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCConfiguration.java b/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCConfiguration.java index b0f0fa92983..20e3e8982e3 100644 --- a/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCConfiguration.java +++ b/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCConfiguration.java @@ -54,6 +54,9 @@ public class PQCConfiguration implements Cloneable { @UriParam @Metadata(label = "advanced") private String symmetricKeyAlgorithm; + @UriParam + @Metadata(label = "advanced", defaultValue = "128") + private int symmetricKeyLength = 128; public PQCOperations getOperation() { return operation; @@ -132,6 +135,17 @@ public class PQCConfiguration implements Cloneable { this.symmetricKeyAlgorithm = symmetricKeyAlgorithm; } + public int getSymmetricKeyLength() { + return symmetricKeyLength; + } + + /** + * The required length of the symmetric key used + */ + public void setSymmetricKeyLength(int symmetricKeyLength) { + this.symmetricKeyLength = symmetricKeyLength; + } + // ************************************************* // // ************************************************* diff --git a/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCProducer.java b/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCProducer.java index 2f3692d6af7..1ab4a966660 100644 --- a/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCProducer.java +++ b/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCProducer.java @@ -143,7 +143,8 @@ public class PQCProducer extends DefaultProducer { keyGenerator.init( new KEMGenerateSpec( getEndpoint().getConfiguration().getKeyPair().getPublic(), - getEndpoint().getConfiguration().getSymmetricKeyAlgorithm(), 128), + getEndpoint().getConfiguration().getSymmetricKeyAlgorithm(), + getEndpoint().getConfiguration().getSymmetricKeyLength()), new SecureRandom()); // SecretKeyWithEncapsulation is the class to use as the secret key, it has additional // methods on it for recovering the encapsulation as well. @@ -165,7 +166,8 @@ public class PQCProducer extends DefaultProducer { keyGenerator.init( new KEMExtractSpec( getEndpoint().getConfiguration().getKeyPair().getPrivate(), payload.getEncapsulation(), - PQCSymmetricAlgorithms.valueOf(getConfiguration().getSymmetricKeyAlgorithm()).getAlgorithm(), 128), + PQCSymmetricAlgorithms.valueOf(getConfiguration().getSymmetricKeyAlgorithm()).getAlgorithm(), + getEndpoint().getConfiguration().getSymmetricKeyLength()), new SecureRandom()); // initialise for extracting the shared secret from the encapsulation. diff --git a/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCSymmetricAlgorithms.java b/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCSymmetricAlgorithms.java index 2e384d48581..60c8d9ec692 100644 --- a/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCSymmetricAlgorithms.java +++ b/components/camel-pqc/src/main/java/org/apache/camel/component/pqc/PQCSymmetricAlgorithms.java @@ -21,7 +21,11 @@ public enum PQCSymmetricAlgorithms { // Standardized and implemented AES("AES"), RC5("RC5"), - ARIA("ARIA"); + ARIA("ARIA"), + CAMELLIA("CAMELLIA"), + CAST5("CAST5"), + CAST6("CAST6"), + CHACHA7539("CHACHA7539"); private final String algorithm; diff --git a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripTest.java b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAESTest.java similarity index 93% rename from components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripTest.java rename to components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAESTest.java index b9f1cdb6add..4974bb8aff4 100644 --- a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripTest.java +++ b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAESTest.java @@ -20,10 +20,7 @@ import java.security.*; import javax.crypto.KeyGenerator; -import org.apache.camel.BindToRegistry; -import org.apache.camel.EndpointInject; -import org.apache.camel.Produce; -import org.apache.camel.ProducerTemplate; +import org.apache.camel.*; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.converter.crypto.CryptoDataFormat; @@ -37,7 +34,7 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.*; -public class PQCMLKEMGenerateEncapsulationCryptoRoundTripTest extends CamelTestSupport { +public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAESTest extends CamelTestSupport { @EndpointInject("mock:encapsulate") protected MockEndpoint resultEncapsulate; @@ -51,7 +48,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripTest extends CamelTestS @EndpointInject("mock:unencrypted") protected MockEndpoint resultDecrypted; - public PQCMLKEMGenerateEncapsulationCryptoRoundTripTest() throws NoSuchAlgorithmException { + public PQCMLKEMGenerateEncapsulationCryptoRoundTripAESTest() throws NoSuchAlgorithmException { } @Override diff --git a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java index 77de14af67d..52770b87f4c 100644 --- a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java +++ b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java @@ -20,10 +20,7 @@ import java.security.*; import javax.crypto.KeyGenerator; -import org.apache.camel.BindToRegistry; -import org.apache.camel.EndpointInject; -import org.apache.camel.Produce; -import org.apache.camel.ProducerTemplate; +import org.apache.camel.*; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.converter.crypto.CryptoDataFormat; @@ -57,7 +54,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT @Override protected RouteBuilder createRouteBuilder() { - CryptoDataFormat cryptoFormat = new CryptoDataFormat("AES", null); + CryptoDataFormat cryptoFormat = new CryptoDataFormat("ARIA", null); return new RouteBuilder() { @Override public void configure() { diff --git a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST5Test.java similarity index 86% copy from components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java copy to components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST5Test.java index 77de14af67d..91831b56668 100644 --- a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java +++ b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST5Test.java @@ -20,10 +20,7 @@ import java.security.*; import javax.crypto.KeyGenerator; -import org.apache.camel.BindToRegistry; -import org.apache.camel.EndpointInject; -import org.apache.camel.Produce; -import org.apache.camel.ProducerTemplate; +import org.apache.camel.*; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.converter.crypto.CryptoDataFormat; @@ -38,7 +35,7 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; -public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelTestSupport { +public class PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST5Test extends CamelTestSupport { @EndpointInject("mock:encapsulate") protected MockEndpoint resultEncapsulate; @@ -52,19 +49,20 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT @EndpointInject("mock:unencrypted") protected MockEndpoint resultDecrypted; - public PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest() throws NoSuchAlgorithmException { + public PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST5Test() throws NoSuchAlgorithmException { } @Override protected RouteBuilder createRouteBuilder() { - CryptoDataFormat cryptoFormat = new CryptoDataFormat("AES", null); + CryptoDataFormat cryptoFormat = new CryptoDataFormat("CAST5", null); return new RouteBuilder() { @Override public void configure() { - from("direct:encapsulate").to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") + from("direct:encapsulate") + .to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=CAST5") .to("mock:encapsulate") - .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") - .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=ARIA") + .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=CAST5") + .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=CAST5") .setHeader(CryptoDataFormat.KEY, body()) .setBody(constant("Hello")) .marshal(cryptoFormat) @@ -92,7 +90,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT templateEncapsulate.sendBody("Hello"); resultEncapsulate.assertIsSatisfied(); assertNotNull(resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class)); - assertEquals(PQCSymmetricAlgorithms.ARIA.getAlgorithm(), + assertEquals(PQCSymmetricAlgorithms.CAST5.getAlgorithm(), resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class).getAlgorithm()); assertNotNull(resultEncrypted.getExchanges().get(0).getMessage().getBody()); assertEquals("Hello", resultDecrypted.getExchanges().get(0).getMessage().getBody(String.class)); diff --git a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST6Test.java similarity index 87% copy from components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java copy to components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST6Test.java index 77de14af67d..24f14f46c41 100644 --- a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java +++ b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST6Test.java @@ -20,10 +20,7 @@ import java.security.*; import javax.crypto.KeyGenerator; -import org.apache.camel.BindToRegistry; -import org.apache.camel.EndpointInject; -import org.apache.camel.Produce; -import org.apache.camel.ProducerTemplate; +import org.apache.camel.*; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.converter.crypto.CryptoDataFormat; @@ -38,7 +35,7 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; -public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelTestSupport { +public class PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST6Test extends CamelTestSupport { @EndpointInject("mock:encapsulate") protected MockEndpoint resultEncapsulate; @@ -52,7 +49,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT @EndpointInject("mock:unencrypted") protected MockEndpoint resultDecrypted; - public PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest() throws NoSuchAlgorithmException { + public PQCMLKEMGenerateEncapsulationCryptoRoundTripCAST6Test() throws NoSuchAlgorithmException { } @Override @@ -61,10 +58,11 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT return new RouteBuilder() { @Override public void configure() { - from("direct:encapsulate").to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") + from("direct:encapsulate") + .to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=CAST6") .to("mock:encapsulate") - .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") - .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=ARIA") + .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=CAST6") + .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=CAST6") .setHeader(CryptoDataFormat.KEY, body()) .setBody(constant("Hello")) .marshal(cryptoFormat) @@ -92,7 +90,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT templateEncapsulate.sendBody("Hello"); resultEncapsulate.assertIsSatisfied(); assertNotNull(resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class)); - assertEquals(PQCSymmetricAlgorithms.ARIA.getAlgorithm(), + assertEquals(PQCSymmetricAlgorithms.CAST6.getAlgorithm(), resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class).getAlgorithm()); assertNotNull(resultEncrypted.getExchanges().get(0).getMessage().getBody()); assertEquals("Hello", resultDecrypted.getExchanges().get(0).getMessage().getBody(String.class)); diff --git a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCHACHA7539Test.java similarity index 84% copy from components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java copy to components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCHACHA7539Test.java index 77de14af67d..025ef1f6e67 100644 --- a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java +++ b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCHACHA7539Test.java @@ -38,7 +38,7 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; -public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelTestSupport { +public class PQCMLKEMGenerateEncapsulationCryptoRoundTripCHACHA7539Test extends CamelTestSupport { @EndpointInject("mock:encapsulate") protected MockEndpoint resultEncapsulate; @@ -52,19 +52,22 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT @EndpointInject("mock:unencrypted") protected MockEndpoint resultDecrypted; - public PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest() throws NoSuchAlgorithmException { + public PQCMLKEMGenerateEncapsulationCryptoRoundTripCHACHA7539Test() throws NoSuchAlgorithmException { } @Override protected RouteBuilder createRouteBuilder() { - CryptoDataFormat cryptoFormat = new CryptoDataFormat("AES", null); + CryptoDataFormat cryptoFormat = new CryptoDataFormat("CHACHA7539", null); + byte[] initializationVector = new byte[] { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b }; + cryptoFormat.setInitializationVector(initializationVector); return new RouteBuilder() { @Override public void configure() { - from("direct:encapsulate").to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") + from("direct:encapsulate") + .to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=CHACHA7539&symmetricKeyLength=256") .to("mock:encapsulate") - .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") - .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=ARIA") + .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=CHACHA7539&symmetricKeyLength=256") + .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=CHACHA7539&symmetricKeyLength=256") .setHeader(CryptoDataFormat.KEY, body()) .setBody(constant("Hello")) .marshal(cryptoFormat) @@ -92,7 +95,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT templateEncapsulate.sendBody("Hello"); resultEncapsulate.assertIsSatisfied(); assertNotNull(resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class)); - assertEquals(PQCSymmetricAlgorithms.ARIA.getAlgorithm(), + assertEquals(PQCSymmetricAlgorithms.CHACHA7539.getAlgorithm(), resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class).getAlgorithm()); assertNotNull(resultEncrypted.getExchanges().get(0).getMessage().getBody()); assertEquals("Hello", resultDecrypted.getExchanges().get(0).getMessage().getBody(String.class)); diff --git a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCamelliaTest.java similarity index 86% copy from components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java copy to components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCamelliaTest.java index 77de14af67d..c4a9ed5ce26 100644 --- a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java +++ b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripCamelliaTest.java @@ -20,10 +20,7 @@ import java.security.*; import javax.crypto.KeyGenerator; -import org.apache.camel.BindToRegistry; -import org.apache.camel.EndpointInject; -import org.apache.camel.Produce; -import org.apache.camel.ProducerTemplate; +import org.apache.camel.*; import org.apache.camel.builder.RouteBuilder; import org.apache.camel.component.mock.MockEndpoint; import org.apache.camel.converter.crypto.CryptoDataFormat; @@ -38,7 +35,7 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; -public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelTestSupport { +public class PQCMLKEMGenerateEncapsulationCryptoRoundTripCamelliaTest extends CamelTestSupport { @EndpointInject("mock:encapsulate") protected MockEndpoint resultEncapsulate; @@ -52,19 +49,20 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT @EndpointInject("mock:unencrypted") protected MockEndpoint resultDecrypted; - public PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest() throws NoSuchAlgorithmException { + public PQCMLKEMGenerateEncapsulationCryptoRoundTripCamelliaTest() throws NoSuchAlgorithmException { } @Override protected RouteBuilder createRouteBuilder() { - CryptoDataFormat cryptoFormat = new CryptoDataFormat("AES", null); + CryptoDataFormat cryptoFormat = new CryptoDataFormat("CAMELLIA", null); return new RouteBuilder() { @Override public void configure() { - from("direct:encapsulate").to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") + from("direct:encapsulate") + .to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=CAMELLIA") .to("mock:encapsulate") - .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") - .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=ARIA") + .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=CAMELLIA") + .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=CAMELLIA") .setHeader(CryptoDataFormat.KEY, body()) .setBody(constant("Hello")) .marshal(cryptoFormat) @@ -92,7 +90,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT templateEncapsulate.sendBody("Hello"); resultEncapsulate.assertIsSatisfied(); assertNotNull(resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class)); - assertEquals(PQCSymmetricAlgorithms.ARIA.getAlgorithm(), + assertEquals(PQCSymmetricAlgorithms.CAMELLIA.getAlgorithm(), resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class).getAlgorithm()); assertNotNull(resultEncrypted.getExchanges().get(0).getMessage().getBody()); assertEquals("Hello", resultDecrypted.getExchanges().get(0).getMessage().getBody(String.class)); diff --git a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripRC5Test.java similarity index 89% copy from components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java copy to components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripRC5Test.java index 77de14af67d..7b3e4960ed5 100644 --- a/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest.java +++ b/components/camel-pqc/src/test/java/org/apache/camel/component/pqc/PQCMLKEMGenerateEncapsulationCryptoRoundTripRC5Test.java @@ -38,7 +38,7 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNotNull; -public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelTestSupport { +public class PQCMLKEMGenerateEncapsulationCryptoRoundTripRC5Test extends CamelTestSupport { @EndpointInject("mock:encapsulate") protected MockEndpoint resultEncapsulate; @@ -52,19 +52,20 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT @EndpointInject("mock:unencrypted") protected MockEndpoint resultDecrypted; - public PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest() throws NoSuchAlgorithmException { + public PQCMLKEMGenerateEncapsulationCryptoRoundTripRC5Test() throws NoSuchAlgorithmException { } @Override protected RouteBuilder createRouteBuilder() { - CryptoDataFormat cryptoFormat = new CryptoDataFormat("AES", null); + CryptoDataFormat cryptoFormat = new CryptoDataFormat("RC5", null); return new RouteBuilder() { @Override public void configure() { - from("direct:encapsulate").to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") + from("direct:encapsulate") + .to("pqc:keyenc?operation=generateSecretKeyEncapsulation&symmetricKeyAlgorithm=RC5") .to("mock:encapsulate") - .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=ARIA") - .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=ARIA") + .to("pqc:keyenc?operation=extractSecretKeyEncapsulation&symmetricKeyAlgorithm=RC5") + .to("pqc:keyenc?operation=extractSecretKeyFromEncapsulation&symmetricKeyAlgorithm=RC5") .setHeader(CryptoDataFormat.KEY, body()) .setBody(constant("Hello")) .marshal(cryptoFormat) @@ -92,7 +93,7 @@ public class PQCMLKEMGenerateEncapsulationCryptoRoundTripAriaTest extends CamelT templateEncapsulate.sendBody("Hello"); resultEncapsulate.assertIsSatisfied(); assertNotNull(resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class)); - assertEquals(PQCSymmetricAlgorithms.ARIA.getAlgorithm(), + assertEquals(PQCSymmetricAlgorithms.RC5.getAlgorithm(), resultEncapsulate.getExchanges().get(0).getMessage().getBody(SecretKeyWithEncapsulation.class).getAlgorithm()); assertNotNull(resultEncrypted.getExchanges().get(0).getMessage().getBody()); assertEquals("Hello", resultDecrypted.getExchanges().get(0).getMessage().getBody(String.class)); diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/PqcComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/PqcComponentBuilderFactory.java index e0c6a1d5bbf..89868dcffee 100644 --- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/PqcComponentBuilderFactory.java +++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/PqcComponentBuilderFactory.java @@ -226,6 +226,23 @@ public interface PqcComponentBuilderFactory { } + /** + * The required length of the symmetric key used. + * + * The option is a: <code>int</code> type. + * + * Default: 128 + * Group: advanced + * + * @param symmetricKeyLength the value to set + * @return the dsl builder + */ + default PqcComponentBuilder symmetricKeyLength(int symmetricKeyLength) { + doSetProperty("symmetricKeyLength", symmetricKeyLength); + return this; + } + + /** * Used for enabling or disabling all consumer based health checks from * this component. @@ -293,6 +310,7 @@ public interface PqcComponentBuilderFactory { case "signatureAlgorithm": getOrCreateConfiguration((PQCComponent) component).setSignatureAlgorithm((java.lang.String) value); return true; case "signer": getOrCreateConfiguration((PQCComponent) component).setSigner((java.security.Signature) value); return true; case "symmetricKeyAlgorithm": getOrCreateConfiguration((PQCComponent) component).setSymmetricKeyAlgorithm((java.lang.String) value); return true; + case "symmetricKeyLength": getOrCreateConfiguration((PQCComponent) component).setSymmetricKeyLength((int) value); return true; case "healthCheckConsumerEnabled": ((PQCComponent) component).setHealthCheckConsumerEnabled((boolean) value); return true; case "healthCheckProducerEnabled": ((PQCComponent) component).setHealthCheckProducerEnabled((boolean) value); return true; default: return false; diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PQCEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PQCEndpointBuilderFactory.java index 52375322438..0b81fe20e54 100644 --- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PQCEndpointBuilderFactory.java +++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/PQCEndpointBuilderFactory.java @@ -266,6 +266,36 @@ public interface PQCEndpointBuilderFactory { doSetProperty("symmetricKeyAlgorithm", symmetricKeyAlgorithm); return this; } + /** + * The required length of the symmetric key used. + * + * The option is a: <code>int</code> type. + * + * Default: 128 + * Group: advanced + * + * @param symmetricKeyLength the value to set + * @return the dsl builder + */ + default AdvancedPQCEndpointBuilder symmetricKeyLength(int symmetricKeyLength) { + doSetProperty("symmetricKeyLength", symmetricKeyLength); + return this; + } + /** + * The required length of the symmetric key used. + * + * The option will be converted to a <code>int</code> type. + * + * Default: 128 + * Group: advanced + * + * @param symmetricKeyLength the value to set + * @return the dsl builder + */ + default AdvancedPQCEndpointBuilder symmetricKeyLength(String symmetricKeyLength) { + doSetProperty("symmetricKeyLength", symmetricKeyLength); + return this; + } } public interface PQCBuilders {