Service Virtualization

 View Only
  • 1.  VSI recording with SSL certificate issue

    Posted Aug 22, 2014 08:58 AM

    Hi all,

     

    i need to record some HTTPS transaction with VSI recorder and therefore I added a keystore for it with the provided password.

     

     

    when i add it into VSI recorder and verify it (with Verify button), i get the next error message, although the customer's security technicians say the password is correct for the keystore:

     

    Unable to load file ..

    Check to see if file is missing or password is incorrect

    Keystore was tampered with, or password was incorrect

    Verification failed

     

     

     

    if i continue, it's obivous that i get the next error message:

     

    java.lang.RuntimeException

        at com.itko.lisa.vse.sio.TCPProxy.<init>(TCPProxy.java:96)

        at com.itko.lisa.vse.stateful.protocol.http.Proxy.startProxy(Proxy.java:63)

        at com.itko.lisa.vse.stateful.protocol.http.HttpProtocolHandler.beginRecordProcess(HttpProtocolHandler.java:756)

        at com.itko.lisa.vse.stateful.protocol.TransportProtocol.startRecording(TransportProtocol.java:384)

        at com.itko.lisa.vse.stateful.recorder.RecordingPanel.startRecording(RecordingPanel.java:268)

        at com.itko.lisa.vse.stateful.recorder.RecordingPanel.activate(RecordingPanel.java:220)

        at com.itko.lisa.gui.WizardPanel.stateChange(WizardPanel.java:587)

        at com.itko.lisa.gui.WizardPanel.nextStep(WizardPanel.java:446)

        at com.itko.lisa.gui.WizardPanel.next(WizardPanel.java:435)

        at com.itko.lisa.gui.WizardPanel$7.actionPerformed(WizardPanel.java:343)

        at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)

        at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)

        at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)

        at javax.swing.DefaultButtonModel.setPressed(Unknown Source)

        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)

        at java.awt.Component.processMouseEvent(Unknown Source)

        at javax.swing.JComponent.processMouseEvent(Unknown Source)

        at java.awt.Component.processEvent(Unknown Source)

        at java.awt.Container.processEvent(Unknown Source)

        at java.awt.Component.dispatchEventImpl(Unknown Source)

        at java.awt.Container.dispatchEventImpl(Unknown Source)

        at java.awt.Component.dispatchEvent(Unknown Source)

        at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)

        at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)

        at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)

        at java.awt.Container.dispatchEventImpl(Unknown Source)

        at java.awt.Window.dispatchEventImpl(Unknown Source)

        at java.awt.Component.dispatchEvent(Unknown Source)

        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)

        at java.awt.EventQueue.access$200(Unknown Source)

        at java.awt.EventQueue$3.run(Unknown Source)

        at java.awt.EventQueue$3.run(Unknown Source)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)

        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)

        at java.awt.EventQueue$4.run(Unknown Source)

        at java.awt.EventQueue$4.run(Unknown Source)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)

        at java.awt.EventQueue.dispatchEvent(Unknown Source)

        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)

        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)

        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

        at java.awt.EventDispatchThread.run(Unknown Source)

    Caused by: java.lang.reflect.InvocationTargetException

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)

        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)

        at java.lang.reflect.Constructor.newInstance(Unknown Source)

        at com.itko.lisa.vse.sio.TCPProxy.createRegularSSLSocketFactory(TCPProxy.java:173)

        at com.itko.lisa.vse.sio.TCPProxy.createSocketFactory(TCPProxy.java:140)

        at com.itko.lisa.vse.sio.TCPProxy.<init>(TCPProxy.java:64)

        ... 45 more

    Caused by: java.io.IOException: stream does not represent a PKCS12 key store

        at org.bouncycastle.jce.provider.JDKPKCS12KeyStore.engineLoad(Unknown Source)

        at java.security.KeyStore.load(Unknown Source)

        at com.itko.lisa.web.tcpproxy.SSLFactoryImpl.getKeyStore(SSLFactoryImpl.java:324)

        at com.itko.lisa.web.tcpproxy.SSLFactoryImpl.<init>(SSLFactoryImpl.java:291)

        ... 52 more

     

     

     

    Do you have some idea what to try and debug or have you ran into similar issue please?

     

    thank you,

    Stefan



  • 2.  RE: VSI recording with SSL certificate issue

    Posted Jul 05, 2019 07:34 AM
    Did you get any solution of this, i am also facing the same issue


  • 3.  RE: VSI recording with SSL certificate issue
    Best Answer

    Broadcom Employee
    Posted Jul 05, 2019 08:52 AM
    Hi Stefan
               Can you try a simple command using java keytool to see if the JKS file is indeed a valid one.

    You may run the following command:

    keytool -list -keystore <keystore file name with path> 

    This would prompt for keystore password and upon entering the valid password you should be able to see the list of certificates. 

    Please try this and let me know the result.

    -Sankar

    ------------------------------
    Sankar Natarajan
    Service Virtualization Product Engineering Team
    Broadcom
    ------------------------------