Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8261890

sun.security.ssl.CipherBox.encrypt method is taking time to encrypt the data.

XMLWordPrintable

    • x86_64
    • linux_redhat_6.0

      ADDITIONAL SYSTEM INFORMATION :
      Linux 2.6.18-348.el5
      Java 1.8.0_74_x86_64

      A DESCRIPTION OF THE PROBLEM :
      Once we enabled JDBC over TLS with HANA database, we are seeing performance degradation in terms of time taken. Given below stack takes on an average 94 secs.

      com.sun.crypto.provider.GCTR.doFinal(GCTR.java:117)
      com.sun.crypto.provider.GaloisCounterMode.doLastBlock(GaloisCounterMode.java:343)
      com.sun.crypto.provider.GaloisCounterMode.encryptFinal(GaloisCounterMode.java:419)
      com.sun.crypto.provider.CipherCore.finalNoPadding(CipherCore.java:1025)
      com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:984)
      com.sun.crypto.provider.AESCipher.engineDoFinal(AESCipher.java:479)
      javax.crypto.CipherSpi.bufferCrypt(CipherSpi.java:776)
      javax.crypto.CipherSpi.engineDoFinal(CipherSpi.java:730)
                    javax.crypto.Cipher.doFinal(Cipher.java:2460)
      sun.security.ssl.CipherBox.encrypt(CipherBox.java:396)
      sun.security.ssl.EngineOutputRecord.write(EngineOutputRecord.java:300)
      sun.security.ssl.EngineOutputRecord.write(EngineOutputRecord.java:225)
      sun.security.ssl.EngineWriter.writeRecord(EngineWriter.java:186)
      sun.security.ssl.SSLEngineImpl.writeRecord(SSLEngineImpl.java:1300)
      sun.security.ssl.SSLEngineImpl.writeAppRecord(SSLEngineImpl.java:1271)
      sun.security.ssl.SSLEngineImpl.wrap(SSLEngineImpl.java:1186)
               javax.net.ssl.SSLEngine.wrap(SSLEngine.java:469)
      com.sap.db.jdbc.SecureSession._encodeBytes(SecureSession.java:777)


      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      This issue is not consistent. Its frequency is 250 out of a million.
      There is no specific use case. It occurs when a JDBC query is done on HANA database.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      JDBC over TLS query should have executed within a second.
      ACTUAL -
      JDBC over TLS query execution took more than 94 seconds.

      CUSTOMER SUBMITTED WORKAROUND :
      We do not have any workaround for this. We would appreciate if you can provide.

      FREQUENCY : occasionally


            ascarpino Anthony Scarpino
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: