Weblogic 8.1 SSL Client Communication Problem - Weblogic

This is a discussion on Weblogic 8.1 SSL Client Communication Problem - Weblogic ; I've written the simple java program which used to communicate to the weblogic 8.1 server, there are no problem for me to communicate to the weblogic 8.1 server via the non-ssl communication (e.g. t3://localhost:7001), but when I try to communicate ...

+ Reply to Thread
Results 1 to 6 of 6

Thread: Weblogic 8.1 SSL Client Communication Problem

  1. Weblogic 8.1 SSL Client Communication Problem

    I've written the simple java program which used to communicate to the weblogic 8.1 server, there are no problem for me to communicate to the weblogic 8.1 server via the non-ssl communication (e.g. t3://localhost:7001), but when I try to communicate to the weblogic 8.1 via the SSL (Either One-Way, or Two-Way), I'm always getting following problem:

    ************************************************** *********
    <2004/10/28 上午10時19分18秒 EST> <000000>

    <2004/10/28 上午10時19分18秒 EST> <000000>

    <2004/10/28 上午10時19分18秒 EST> <000000>

    <2004/10/28 上午10時19分18秒 EST> <000000>

    <2004/10/28 上午10時19分18秒 EST> <000000>

    <2004/10/28 上午10時19分18秒 EST> <000000> <10038190 readRecord()>

    <2004/10/28 上午10時19分18秒 EST> <000000> <10038190 SSL3/TLS MAC>

    <2004/10/28 上午10時19分18秒 EST> <000000> <10038190 received HANDSHAKE>

    <2004/10/28 上午10時19分18秒 EST> <000000>

    <2004/10/28 上午10時19分19秒 EST> <000000>

    <2004/10/28 上午10時19分19秒 EST> <000000>

    <2004/10/28 上午10時19分19秒 EST> <000000>

    <2004/10/28 上午10時19分19秒 EST> <000000>
    java.lang.IllegalStateException: Cipher not initialized

    at javax.crypto.Cipher.update(DashoA6275)

    at com.certicom.tls.provider.Cipher.update(Unknown Source)

    at com.certicom.tls.record.WriteHandler.compressEncry ptSend(Unknown Source)

    at com.certicom.tls.record.WriteHandler.compressEncry ptSend(Unknown Source)

    at com.certicom.tls.record.MessageFragmentor.write(Un known Source)

    at com.certicom.tls.record.WriteHandler.write(Unknown Source)

    at com.certicom.tls.record.handshake.HandshakeHandler .write(Unknown Source)

    at com.certicom.tls.record.handshake.ClientStateRecei vedCertificate.handle(Unknown Source)

    at com.certicom.tls.record.handshake.HandshakeHandler .handleHandshakeMessage(Unknown Source)

    at com.certicom.tls.record.handshake.HandshakeHandler .handleHandshakeMessages(Unknown Source)

    at com.certicom.tls.record.ReadHandler.interpretConte nt(Unknown Source)

    at com.certicom.tls.record.ReadHandler.readRecord(Unk nown Source)

    at com.certicom.tls.record.ReadHandler.readUntilHands hakeComplete(Unknown Source)

    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.c ompleteHandshake(Unknown Source)

    at com.certicom.tls.record.WriteHandler.write(Unknown Source)

    at java.io.BufferedOutputStream.flushBuffer(BufferedO utputStream.java:66)

    at java.io.BufferedOutputStream.flush(BufferedOutputS tream.java:124)

    at java.io.DataOutputStream.flush(DataOutputStream.ja va:101)

    at weblogic.rjvm.t3.T3JVMConnection.connect(T3JVMConn ection.java:453)

    at weblogic.rjvm.t3.T3SJVMConnection.createConnection (T3SJVMConnection.java:78)

    at weblogic.rjvm.ConnectionManager.createConnection(C onnectionManager.java:1769)

    at weblogic.rjvm.ConnectionManager.findOrCreateConnec tion(ConnectionManager.java:1293)

    at weblogic.rjvm.ConnectionManager.bootstrap(Connecti onManager.java:430)

    at weblogic.rjvm.ConnectionManager.bootstrap(Connecti onManager.java:312)

    at weblogic.rjvm.RJVMManager.findOrCreateRemoteIntern al(RJVMManager.java:223)

    at weblogic.rjvm.RJVMManager.findOrCreate(RJVMManager .java:181)

    at weblogic.rjvm.RJVMFinder.findOrCreateRemoteServer( RJVMFinder.java:222)

    at weblogic.rjvm.RJVMFinder.findOrCreate(RJVMFinder.j ava:188)

    at weblogic.rjvm.ServerURL.findOrCreateRJVM(ServerURL .java:125)

    at weblogic.jndi.WLInitialContextFactoryDelegate.getI nitialContext(WLInitialContextFactoryDelegate.java :296)

    at weblogic.jndi.Environment.getContext(Environment.j ava:166)

    at weblogic.jndi.Environment.getInitialContext(Enviro nment.java:145)

    at com.proxima.centauri.connection.impl.weblogic.webl ogicConnectionTest.connectToWeblogic(weblogicConne ctionTest.java:66)

    at com.proxima.centauri.connection.impl.weblogic.webl ogicConnectionTest.main(weblogicConnectionTest.jav a:199)

    >


    <2004/10/28 上午10時19分19秒 EST> <000000>
    java.lang.Throwable: Stack trace

    at weblogic.security.utils.SSLSetup.debug(SSLSetup.ja va:265)

    at com.certicom.tls.record.alert.Alert.(Unknown Source)

    at com.certicom.tls.record.handshake.HandshakeHandler .fireAlert(Unknown Source)

    at com.certicom.tls.record.handshake.HandshakeHandler .handleHandshakeMessage(Unknown Source)

    at com.certicom.tls.record.handshake.HandshakeHandler .handleHandshakeMessages(Unknown Source)

    at com.certicom.tls.record.ReadHandler.interpretConte nt(Unknown Source)

    at com.certicom.tls.record.ReadHandler.readRecord(Unk nown Source)

    at com.certicom.tls.record.ReadHandler.readUntilHands hakeComplete(Unknown Source)

    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.c ompleteHandshake(Unknown Source)

    at com.certicom.tls.record.WriteHandler.write(Unknown Source)

    at java.io.BufferedOutputStream.flushBuffer(BufferedO utputStream.java:66)

    at java.io.BufferedOutputStream.flush(BufferedOutputS tream.java:124)

    at java.io.DataOutputStream.flush(DataOutputStream.ja va:101)

    at weblogic.rjvm.t3.T3JVMConnection.connect(T3JVMConn ection.java:453)

    at weblogic.rjvm.t3.T3SJVMConnection.createConnection (T3SJVMConnection.java:78)

    at weblogic.rjvm.ConnectionManager.createConnection(C onnectionManager.java:1769)

    at weblogic.rjvm.ConnectionManager.findOrCreateConnec tion(ConnectionManager.java:1293)

    at weblogic.rjvm.ConnectionManager.bootstrap(Connecti onManager.java:430)

    at weblogic.rjvm.ConnectionManager.bootstrap(Connecti onManager.java:312)

    at weblogic.rjvm.RJVMManager.findOrCreateRemoteIntern al(RJVMManager.java:223)

    at weblogic.rjvm.RJVMManager.findOrCreate(RJVMManager .java:181)

    at weblogic.rjvm.RJVMFinder.findOrCreateRemoteServer( RJVMFinder.java:222)

    at weblogic.rjvm.RJVMFinder.findOrCreate(RJVMFinder.j ava:188)

    at weblogic.rjvm.ServerURL.findOrCreateRJVM(ServerURL .java:125)

    at weblogic.jndi.WLInitialContextFactoryDelegate.getI nitialContext(WLInitialContextFactoryDelegate.java :296)

    at weblogic.jndi.Environment.getContext(Environment.j ava:166)

    at weblogic.jndi.Environment.getInitialContext(Enviro nment.java:145)

    at com.proxima.centauri.connection.impl.weblogic.webl ogicConnectionTest.connectToWeblogic(weblogicConne ctionTest.java:66)

    at com.proxima.centauri.connection.impl.weblogic.webl ogicConnectionTest.main(weblogicConnectionTest.jav a:199)

    >


    <2004/10/28 上午10時19分19秒 EST> <000000>
    ************************************************** *********

    I was running the client with the same JRE as the Weblogic 8.1 server, But If I run this client program with the 1.4.1 JRE, then there will be no problem for communicate to the Weblogic 8.1 server. But I really need to use the JRE 1.4.2_05 for the client program to communicate to the Weblogic 8.1 server.

    Is there are anyone which come across the same problem, and have a solution for this?

  2. Re: Weblogic 8.1 SSL Client Communication Problem

    Does this work with the demo keys?
    Try commenting out com.sun.crypto.provider.SunJCE from java.security file. See if this helps.

    Pavel.

  3. Re: Weblogic 8.1 SSL Client Communication Problem

    Thanks for your suggestion! But I've already try with the demo keys, and certificates provided by the weblogic, It does not work for me at all, except the web browser.

    By the way, I also tried to comment out 'com.sun.crypto.provider.SunJCE' from the java.security file. But it does not help too.

    The following shows the result after the 'SunJCE' have be comment out from the java.security file:

    JDK Protocol Handlers and Security Providers:
    java.protocol.handler.pkgs - weblogic.net
    provider[0] - SUN - SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; JKS keystore; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores)
    provider[1] - Certicom_SSL - Certicom SSL Provider: For X509 Implementation, X.509 - X509Certificate
    provider[2] - SunRsaSign - SUN's provider for RSA signatures
    provider[3] - SunJGSS - Sun (Kerberos v5)

    Trying a new HTTP connection using WLS client classes -
    http://adams.proxima-tech.com.au:7001/console
    200 -- OK
    weblogic.net.http.HttpURLConnection$1
    Trying a new HTTPS connection using WLS client classes -
    https://adams.proxima-tech.com.au:7002/console
    <2004年11月1日 上午10時21分01秒 EST> <000000>
    <2004年11月1日 上午10時21分01秒 EST> <000000>
    <2004年11月1日 上午10時21分01秒 EST> <000000>
    <2004年11月1日 上午10時21分01秒 EST> <000000>
    <2004年11月1日 上午10時21分01秒 EST> <000000>
    <2004年11月1日 上午10時21分01秒 EST> <000000>
    <2004年11月1日 上午10時21分01秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < provider[0] - SUN>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < SUN (DSA key/parameter generation; DSA signing; SHA-1, MD5 digests; SecureRandom; X.509 certificates; JKS keystore; PKIX CertPathValidator; PKIX CertPathBuilder; LDAP, Collection CertStores)>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < provider[1] - Certicom_SSL>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < Certicom SSL Provider: For X509 Implementation, X.509 - X509Certificate>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < provider[2] - SunRsaSign>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < SUN's provider for RSA signatures>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < provider[3] - SunJGSS>
    <2004年11月1日 上午10時21分02秒 EST> <000000> < Sun (Kerberos v5)>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分02秒 EST> <000000>
    <2004年11月1日 上午10時21分03秒 EST> <000000>
    <2004年11月1日 上午10時21分03秒 EST> <000000>
    <2004年11月1日 上午10時21分03秒 EST> <000000>
    Not enough cryptography available to enable a cipher suite!
    java.lang.IllegalStateException: Not enough cryptography available to enable a cipher suite!
    at com.certicom.tls.interfaceimpl.TLSSystem.resetCiph erSuiteSupport(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSSystem.setCertif icateSupport(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSSystem.(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSSystem.(Unknown Source)
    at com.certicom.net.ssl.SSLContext.(Unknown Source)
    at com.certicom.net.ssl.CerticomContextWrapper.(Unknown Source)
    at sun.reflect.NativeConstructorAccessorImpl.newInsta nce0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInsta nce(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newI nstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Construc tor.java:274)
    at java.lang.Class.newInstance0(Class.java:308)
    at java.lang.Class.newInstance(Class.java:261)
    at weblogic.security.utils.SSLContextWrapper.getInsta nce(SSLContextWrapper.java:25)
    at weblogic.security.utils.SSLSetup.getSSLContext(SSL Setup.java:537)
    at weblogic.security.SSL.SSLSocketFactory.(SSLSocketFactory.java:71)
    at weblogic.security.SSL.SSLSocketFactory.getJSSE(SSL SocketFactory.java:101)
    at weblogic.net.http.HttpClient.New(HttpClient.java:2 09)
    at weblogic.net.http.HttpsURLConnection.getHttpClient (HttpsURLConnection.java:246)
    at weblogic.net.http.HttpsURLConnection.connect(Https URLConnection.java:217)
    at com.proxima.centauri.connection.impl.weblogic.SSLC lient.tryConnection(SSLClient.java:76)
    at com.proxima.centauri.connection.impl.weblogic.SSLC lient.wlsURLConnect(SSLClient.java:213)
    at com.proxima.centauri.connection.impl.weblogic.SSLC lient.main(SSLClient.java:34)
    ----

  4. Re: Weblogic 8.1 SSL Client Communication Problem

    From the log it appears you have Certicom provider installed. WLS is using Certicom SSLPlus for SSL so if you have Certicom classes in the classpath, they might conflict with the classes that come with WebLogic.
    Try running only with the JDK default providers, and make sure you are not replacing WebLogic classes with classes in the JRE extension folder. See what providers you have installed on 141.
    I've tried running an SSL test on 142_05 with the demo certs, and did not see any problems.

    Pavel.

  5. Re: Weblogic 8.1 SSL Client Communication Problem

    Hello.

    I've run into the same sort of issue. My configuration might be a bit different. I am trying to establish an SSL over IIOP connection between a jboss and weblogic server. Jboss is trying to establish an SSL connection as a client to the weblogic server using the java.naming.provider.url iiops://localhost:7002 and java.naming.factory.initial=weblogic.jndi.WLInitia lContextFactory.

    Here are the SSL logs and the top of the traceback from the jboss side:

    16:57:16,543 INFO [STDOUT] <000000>
    16:57:16,778 INFO [STDOUT] <000000>
    16:57:16,793 INFO [STDOUT] <000000>
    16:57:17,246 INFO [STDOUT] <000000>
    16:57:17,262 INFO [STDOUT] <000000>
    16:57:17,309 INFO [STDOUT] <000000>
    16:57:17,309 INFO [STDOUT] <000000>
    16:57:17,309 INFO [STDOUT] <000000>
    16:57:17,309 INFO [STDOUT] <000000>
    16:57:17,309 INFO [STDOUT] <000000>
    16:57:17,324 INFO [STDOUT] <000000>
    16:57:17,340 INFO [STDOUT] <000000>
    16:57:17,887 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000> <58130 readRecord()>
    16:57:17,902 INFO [STDOUT] <000000> <58130 SSL3/TLS MAC>
    16:57:17,902 INFO [STDOUT] <000000> <58130 received HANDSHAKE>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,902 INFO [STDOUT] <000000> <58130 readRecord()>
    16:57:17,902 INFO [STDOUT] <000000> <58130 SSL3/TLS MAC>
    16:57:17,902 INFO [STDOUT] <000000> <58130 received HANDSHAKE>
    16:57:17,902 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:17,918 INFO [STDOUT] <000000>
    16:57:18,106 INFO [STDOUT] <000000>
    16:57:18,106 INFO [STDOUT] <000000>
    16:57:18,106 INFO [STDOUT] <000000>
    16:57:18,106 INFO [STDOUT] <000000>
    16:57:18,106 INFO [STDOUT] <000000>
    16:57:18,106 INFO [STDOUT] <000000>
    16:57:18,199 INFO [STDOUT] <000000>
    16:57:18,199 INFO [STDOUT] <000000>
    16:57:18,199 INFO [STDOUT] <000000>
    16:57:18,199 INFO [STDOUT] <000000>
    16:57:18,199 INFO [STDOUT] <000000>
    16:57:18,231 INFO [STDOUT] <000000>
    16:57:18,231 INFO [STDOUT] <000000> < cert[0] = [
    [
    Version: V1
    Subject: CN=nakina-132, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState, C=US
    Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4

    Key: SunJSSE RSA public key:
    public exponent:
    010001
    modulus:
    d7dd280a 98b30710 a2450c60 49e593cb 3cf05a38 007535eb 5e8eb724 c61b1eaf
    f3b5439f 8d2300f0 6566dff8 37bb43ac 33386bef 34c58b79 78c9c166 fcdd7d91
    101804c6 041f9ab9 7d77d29c 99313838 ff60a452 7d9ec903 702a4328 dd8ffe6f
    fcb35479 b8eff7ae d3d32f74 abef1867 7b09c8cd 73b1a323 9d9d3415 372d0455
    Validity: [From: Mon Nov 01 15:40:56 EST 2004,
    To: Sat Nov 02 15:40:56 EST 2019]
    Issuer: CN=CertGenCAB, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState, C=US
    SerialNumber: [ -26aad692 817b0133 e4f3c299 934ebc4a]

    ]
    Algorithm: [MD5withRSA]
    Signature:
    0000: 02 2F 56 A7 14 0D AE EB BC BA 1B 02 B4 58 E6 16 ./V..........X..
    0010: 06 12 35 47 5D FD 61 6C B2 6C 14 43 35 9C 3F 64 ..5G].al.l.C5.?d
    0020: 47 83 18 0A CB DF 35 14 2B AF A2 66 28 3D 4E 42 G.....5.+..f(=NB
    0030: 30 8C A5 A5 34 AA 86 6B C8 3E 32 8B 5C 64 4E 3F 0...4..k.>2.\dN?

    ]>
    16:57:18,231 INFO [STDOUT] <000000> < cert[1] = [
    [
    Version: V3
    Subject: CN=CertGenCAB, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState, C=US
    Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4

    Key: SunJSSE RSA public key:
    public exponent:
    010001
    modulus:
    afa4814a 734e0209 9c2f2b92 d8d442c6 14cb75fd 2493fc39 9a248743 e6d8a1f7
    6ce2b8f4 2348fc49 8216cd6f d86cb6b0 e7d654fd 873d8eee 4c423562 58b7b25b
    Validity: [From: Thu Oct 24 11:54:45 EDT 2002,
    To: Tue Oct 25 11:54:45 EDT 2022]
    Issuer: CN=CertGenCAB, OU=FOR TESTING ONLY, O=MyOrganization, L=MyTown, ST=MyState, C=US
    SerialNumber: [ 234b5559 d1fa0f3f f5c82bdf ed032a87]

    Certificate Extensions: 2
    [1]: ObjectId: 2.5.29.15 Criticality=true
    KeyUsage [
    Key_CertSign
    ]

    [2]: ObjectId: 2.5.29.19 Criticality=true
    BasicConstraints:[
    CA:true
    PathLen:1
    ]

    ]
    Algorithm: [MD5withRSA]
    Signature:
    0000: 42 38 2B 10 F5 05 AF 1A F0 22 92 30 41 3A 3A D3 B8+......".0A::.
    0010: 16 A6 41 34 96 09 B2 FE 7E 99 56 7D D2 95 70 9B ..A4......V...p.
    0020: 31 03 8A 1C 3C 75 B2 37 B9 B3 18 CF 9B 1A 5E 42 1... 0030: 92 CB 7A DC 4A F2 4A F6 76 49 90 7B DB F3 C8 59 ..z.J.J.vI.....Y

    ]>
    16:57:18,231 INFO [STDOUT] <000000>
    16:57:18,231 INFO [STDOUT] <000000>
    16:57:18,231 INFO [STDOUT] <000000>
    16:57:18,231 INFO [STDOUT] <000000>
    16:57:18,231 INFO [STDOUT] <000000>
    16:57:18,231 INFO [STDOUT] <000000> <58130 readRecord()>
    16:57:18,231 INFO [STDOUT] <000000> <58130 SSL3/TLS MAC>
    16:57:18,231 INFO [STDOUT] <000000> <58130 received HANDSHAKE>
    16:57:18,231 INFO [STDOUT] <000000>
    16:57:18,262 INFO [STDOUT] <000000>
    16:57:18,262 INFO [STDOUT] <000000>
    16:57:18,262 INFO [STDOUT] <000000>
    16:57:18,262 INFO [STDOUT] <000000> java.lang.IllegalStateException: Cipher not initialized
    at javax.crypto.Cipher.update(DashoA6275)
    at com.certicom.tls.provider.Cipher.update(Unknown Source)
    at com.certicom.tls.record.WriteHandler.compressEncry ptSend(Unknown Source)
    at com.certicom.tls.record.WriteHandler.compressEncry ptSend(Unknown Source)
    at com.certicom.tls.record.MessageFragmentor.write(Un known Source)
    at com.certicom.tls.record.WriteHandler.write(Unknown Source)
    at com.certicom.tls.record.handshake.HandshakeHandler .write(Unknown Source)
    at com.certicom.tls.record.handshake.ClientStateRecei vedCertificate.handle(Unknown Source)
    at com.certicom.tls.record.handshake.HandshakeHandler .handleHandshakeMessage(Unknown Source)
    at com.certicom.tls.record.handshake.HandshakeHandler .handleHandshakeMessages(Unknown Source)
    at com.certicom.tls.record.ReadHandler.interpretConte nt(Unknown Source)
    at com.certicom.tls.record.ReadHandler.readRecord(Unk nown Source)
    at com.certicom.tls.record.ReadHandler.readUntilHands hakeComplete(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.c ompleteHandshake(Unknown Source)
    at com.certicom.net.ssl.CerticomContextWrapper.forceH andshakeOnAcceptedSocket(Unknown Source)
    at weblogic.iiop.MuxableSocketIIOPS.register(MuxableS ocketIIOPS.java:106)
    at weblogic.iiop.MuxableSocketIIOPS.createConnection( MuxableSocketIIOPS.java:88)
    at weblogic.iiop.EndPointManager.createEndPoint(EndPo intManager.java:381)
    at weblogic.iiop.EndPointManager.findOrCreateEndPoint (EndPointManager.java:234)
    at weblogic.iiop.EndPointManager.findOrCreateEndPoint (EndPointManager.java:251)
    at weblogic.iiop.IORManager.locateNameService(IORMana ger.java:161)

    On the weblogic side everything seems okay until the problem on the client side:

    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000> <15477362 readRecord()>
    #### <> <> <000000> <15477362 SSL Version 2 with no padding>
    #### <> <> <000000> <15477362 SSL3/TLS MAC>
    #### <> <> <000000> <15477362 received SSL_20_RECORD>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000>
    #### <> <> <000000> java.lang.Throwable: Stack trace
    at weblogic.security.utils.SSLSetup.debug(SSLSetup.ja va:265)
    at com.certicom.tls.record.alert.Alert.(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.c loseWriteHandler(Unknown Source)
    at com.certicom.tls.interfaceimpl.TLSConnectionImpl.c lose(Unknown Source)
    at javax.net.ssl.impl.SSLSocketImpl.close(Unknown Source)
    at weblogic.t3.srvr.ListenThread.rejectCatastrophe(Li stenThread.java:443)
    at weblogic.t3.srvr.SSLListenThread$1.execute(SSLList enThread.java:531)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThrea d.java:219)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.ja va:178)

    Thanks for any help you can provide.

  6. Re: Weblogic 8.1 SSL Client Communication Problem

    SSL implementation used by WebLogic trys to pick a JCE Cipher first, and when it cannot find one it defaults to a RSA Cipher that is shipped with WebLogic. Not all providers are garanteed to work with it, and it already ignores those that are known to fail, but it looks like the JCE Cipher it picked in your case failed to initialize with the parameters that SSL impl normaly passes. The workaround in this case is to remove failing provider from the list in java.security file.

    Pavel.

+ Reply to Thread