|
javax.net.ssl.SSLKeyException: RSA premaster secret error |
|
|
|
|
Written by Charles
|
|
Saturday, 10 October 2009 13:56 |
|
If you've ever been confronted with the horror below, you can try to fix it by ensuring the security classes normally contained in the path given by the default System property java.ext.dirs are present. As far as I know, the ones being complained about below are in jre/lib/ext/sunpkcs11.jar. The exception occurred for me through unsetting java.ext.dirs.
14:15:26.081 [main] DEBUG HBOS - Attempting to hit page https://www.halifax-online.co.uk/_mem_bin/formslogin.asp... 14:15:27.464 [main] ERROR HBOS - javax.net.ssl.SSLKeyException: RSA premaster secret error at sun.security.ssl.RSAClientKeyExchange.<init>(RSAClientKeyExchange.java:116) [na:1.6.0_0] at sun.security.ssl.ClientHandshaker.serverHelloDone(ClientHandshaker.java:593) [na:1.6.0_0] at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216) [na:1.6.0_0] at sun.security.ssl.Handshaker.processLoop(Handshaker.java:533) [na:1.6.0_0] at sun.security.ssl.Handshaker.process_record(Handshaker.java:471) [na:1.6.0_0] at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:904) [na:1.6.0_0] at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1116) [na:1.6.0_0] at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:643) [na:1.6.0_0] at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:78) [na:1.6.0_0] at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82) [na:1.6.0_0] at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140) [na:1.6.0_0] at org.apache.commons.httpclient.HttpConnection.flushRequestOutputStream(HttpConnection.java:827) [commons-httpclient-3.0.1.jar:3.0.1] at org.apache.commons.httpclient.HttpMethodBase.writeRequest(HttpMethodBase.java:1975) [commons-httpclient-3.0.1.jar:3.0.1] at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:993) [commons-httpclient-3.0.1.jar:3.0.1] at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397) [commons-httpclient-3.0.1.jar:3.0.1] at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170) [commons-httpclient-3.0.1.jar:3.0.1] at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396) [commons-httpclient-3.0.1.jar:3.0.1] at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:324) [commons-httpclient-3.0.1.jar:3.0.1] at HBOS.getAndDiscard(HBOS.java:84) [tmp/:na] at HBOS.main(HBOS.java:42) [tmp/:na] Caused by: java.security.NoSuchAlgorithmException: SunTlsRsaPremasterSecret KeyGenerator not available at javax.crypto.KeyGenerator.<init>(KeyGenerator.java:141) [na:1.6.0_0] at javax.crypto.KeyGenerator.getInstance(KeyGenerator.java:191) [na:1.6.0_0] at sun.security.ssl.JsseJce.getKeyGenerator(JsseJce.java:240) [na:1.6.0_0] at sun.security.ssl.RSAClientKeyExchange.<init>(RSAClientKeyExchange.java:108) [na:1.6.0_0] ... 19 common frames omitted
|
|
Last Updated ( Saturday, 10 October 2009 14:17 )
|