Bij een klant had ik een Domino agent gemaakt met behulp van Java om gegevens uit te wisselen tussen Domino en AccountView via https.
Om dit goed te laten werken was Domino voorzien van de laatste JVM patches.
Afgelopen week had de beheerder echter de server waarmee de agent verbinding maakte voorzien van een nieuw wildcard SSL certificaat met een hogere versleuteling.
Hierna gaf de Java agent op de Domino server de volgende fout: javax.net.ssl.SSLException: java.lang.RuntimeException: Could not generate DH keypair.
Policy bestanden
Na wat zoeken op internet vond ik een artikel op de site van IBM waarbij gemeld werd dat de standaard JVM in Notes en Domino een restrictie hebben.
Op de site van IBM kunnen tevens twee policy bestanden, local_policy.jar en US_export_policy.jar worden gedownload waar die restricties niet op zitten.
Helaas bleek deze oplossing niet te werken bij de klant.
Bouncy Castle
De aanwezige software engineer had hiervoor echter wel een oplossing die ook voor Domino bleek te werken:
Op de site https://www.bouncycastle.org/ hebben we het bestand bcprov-ext-jdk15on-153.jar gedownload. (De Bouncy Castle Crypto package is een Java-implementatie van cryptografische algoritmes)
Vervolgens heb ik dit bestand in de map c:\IBM\Domino\JVM\lib\ext geplaatst.
In de map c:\IBM\Domino\JVM\lib\security het bestand java.security aangepast:
security.provider.1=com.ibm.jsse2.IBMJSSEProvider2 veranderd in security.provider.10=com.ibm.jsse2.IBMJSSEProvider2.
Vervolgens de regel security.provider.1=org.bouncycastle.jce.provider.BouncyCastleProvider toegevoegd en het bestand opgeslagen.
Na het herstarten van de Domino server werkte de agent weer.
Fijn Harry (G), bedankt…