BouncyCastle Provider - Bibliothek

Die DLE verwendet für die bestmögliche Unterstützung von SSL/TLS Algorithmen die BouncyCastle-Bibliothek (https://www.bouncycastle.org/). Diese Bibliothek erweitert die Funktionen der Standard-Java-Installationen in Bezug auf Verschlüsselungsalgorithmen. Vor allem TLS1.3 und Keys mit 2047 bits werden dadurch auch in Java 8 unterstützt.

Leider kann es dabei zu Inkompatibilitäten kommen. Die DLE aktiviert den Bouncy-Castle-Provider, falls im lib-Verzeichnis vorhanden bzw. überhaupt geladen an erster Stelle. Dies kann über eine Systemproperty, die am DLE-Start an das Java mitgegeben wird, übersteuert werden. Wenn -Ddle.bouncycastle.sequence=X (X muss eine Ganzzahl sein) angegeben wird, so wird die Bouncy-Castle-Bibliothek an dieser Stelle in den Stack eingefügt.

Dies kann zum Beispiel bei einem solchen Fehlerbild nützlich sein:

java.lang.ClassCastException: org.bouncycastle.jcajce.provider.asymmetric.edec.BCXDHPublicKey incompatible with ibm.security.internal.interfaces.XECPublicKey

Diese Property ist ab DLE-Version 2.1.2.025 verfügbar.