[
https://issues.apache.org/jira/browse/CAMEL-25624?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18144038#comment-18144038
]
Claus Ibsen commented on CAMEL-25624:
-------------------------------------
[~acosentino] Camel 4.24.0 is planned to be released next week. Is this ticket
still on track for 4.24.0? If not, we will move it to 4.25.0.
_Claude Code on behalf of davsclaus_
> camel-pqc - do not wire component-created Signature, KeyGenerator and
> KeyAgreement instances into the endpoint configuration
> ----------------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-25624
> URL: https://issues.apache.org/jira/browse/CAMEL-25624
> Project: Camel
> Issue Type: Improvement
> Components: camel-pqc
> Reporter: Andrea Cosentino
> Assignee: Andrea Cosentino
> Priority: Minor
> Fix For: 4.24.0
>
>
> Since CAMEL-24445 and CAMEL-25603, {{PQCProducer}} creates a new
> {{Signature}}, {{KeyGenerator}} or {{KeyAgreement}} for every exchange when
> it creates the instance itself, and runs the operations one at a time on an
> instance it finds in the configuration, because a configured instance may be
> shared.
> {{PQCComponent}} also puts instances into the configuration itself, and the
> producer then treats them as configured:
> * {{configureParameterSpecMaterial()}}, when {{parameterSpec}} is set and no
> key material is configured, sets a new {{Signature}} or {{KeyGenerator}} that
> only that endpoint uses. Its operations now run one at a time although nobody
> configured that instance.
> * {{createEndpoint()}}, {{configureHybridSignatureMaterial()}} and
> {{configureHybridKEMMaterial()}}, when no key material is configured, set the
> static {{PQCDefault*Material}} signers, key generators and key agreements.
> These are shared JVM-wide, so every endpoint that uses the default material
> runs its operations one at a time on them.
> A {{Signature}}, {{KeyGenerator}} or {{KeyAgreement}} holds no key material,
> so the component could set only the key pairs in these places and let the
> producer create its own instances from {{signatureAlgorithm}},
> {{keyEncapsulationAlgorithm}} and the classical algorithm options. Points to
> check:
> * the hybrid default materials create the classical {{KeyAgreement}} and
> {{Signature}} with the {{BC}} provider, while the producer creates them
> without naming a provider;
> * the static {{PQCDefault*Material}} fields stay public for compatibility.
> Raised in the review of the CAMEL-25603 pull request. This is a throughput
> improvement, not a correctness fix, so it is not needed on the maintenance
> branches.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)