Hello,

Karaf: 4.3.3
Java: openjdk version "11.0.12" 2021-07-20

I'm trying to use the BouncyCastleProvider for jasypt PBE (without
installing the provider in the JRE).

Any idea where I am going wrong with this?

I have followed the instructions here:
https://karaf.apache.org/manual/latest/#_security_providers

Downloaded the bouncy castle jar to:

${KARAF_HOME}/lib/ext/bcprov-jdk15on-1.69.jar

Added this to the end of config.properties:

org.apache.karaf.security.providers=org.bouncycastle.jce.provider.BouncyCastleProvider

Edited config.properties (I've also tried org.bouncycastle.*, \):

org.osgi.framework.bootdelegation = \
    com.sun.*, \
    org.bouncycastle*, \

But whenever I start karaf with the blueprint below deployed I always get:

BlueprintContainerImpl           | 57 - org.apache.aries.blueprint.core -
1.10.3 | Unable to start container for blueprint bundle
bouncycastle-bp.xml/0.0.0
org.osgi.service.blueprint.container.ComponentDefinitionException: Error
setting property: PropertyDescriptor <name: providerClassName, getter:
null, setter: [class
org.jasypt.encryption.pbe.config.EnvironmentPBEConfig.setProviderClassName(class
java.lang.String)]

Caused by: org.jasypt.exceptions.EncryptionInitializationException:
java.lang.ClassNotFoundException:
org.bouncycastle.jce.provider.BouncyCastleProvider

Caused by: java.lang.ClassNotFoundException:
org.bouncycastle.jce.provider.BouncyCastleProvider

<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
       xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0
"
       xsi:schemaLocation="
         http://www.osgi.org/xmlns/blueprint/v1.0.0
https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
         http://camel.apache.org/schema/blueprint
http://camel.apache.org/schema/blueprint/camel-blueprint.xsd
         http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0
http://aries.apache.org/schemas/blueprint-cm/blueprint-cm-1.1.0.xsd";>




*<bean id="jasypt_config"
class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">
<property name="providerClassName"
value="org.bouncycastle.jce.provider.BouncyCastleProvider"/>
<property name="passwordEnvName" value="APP_ENCRYPTION_PASSWORD" /></bean>*

<camelContext id="camelContext" xmlns="
http://camel.apache.org/schema/blueprint";>

</camelContext>

</blueprint>

--
TIA.
Barry.

Reply via email to