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

JavaKeyStore / JKS cannot handle UPPER CASE key aliases

XMLWordPrintable

      FULL PRODUCT VERSION :


      A DESCRIPTION OF THE PROBLEM :
      I created a KeyStore with an alias that contains upper case letters. When I try to read it:

      =============================
      $ keytool -list -keystore uppercase.jks
      Enter keystore password:

      Keystore type: JKS
      Keystore provider: SUN

      Your keystore contains 1 entry

      keytool error: java.lang.Exception: Alias <KEYSTORE> does not exist
      =============================

      To make it work, I need to use the CaseExactJKS:

      =============================
      $ keytool -list -keystore uppercase.jks -storetype CaseExactJKS
      Enter keystore password:

      Keystore type: CASEEXACTJKS
      Keystore provider: SUN

      Your keystore contains 1 entry

      KEYSTORE, 22-Aug-2016, trustedCertEntry,
      Certificate fingerprint (SHA1): 8A:79:69:AF:E3:AE:FF:EA:8B:9F:84:94:4C:D4:D9:59:25:E2:45:39
      =============================

      I assumed that "JKS" was case insensitive. But shouldn't that mean that UPPER CASE is accepted too?
      All the code uses `convertAlias' to put and retrieve aliases from/to `entries'. All but `engineLoad'.
      I suggest you modify `engineLoad' to call `convertAlias' for `entries.put'.

      Here is my keystore (base64 encoded), and its password is "password":

      /u3+7QAAAAIAAAABAAAAAgAIS0VZU1RPUkUAAAFWsZK/aAAFWC41MDkAAAKUMIICkDCCAfmgAwIB
      AgIJAJaqr2zzvMQuMA0GCSqGSIb3DQEBCwUAMGExCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21l
      LVN0YXRlMSEwHwYDVQQKDBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxGjAYBgNVBAMMEUtleVN0
      b3JlIGJ1ZyB0ZXN0MB4XDTE2MDgyMjA5MTgxMloXDTE2MDkyMTA5MTgxMlowYTELMAkGA1UEBhMC
      QVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0
      ZDEaMBgGA1UEAwwRS2V5U3RvcmUgYnVnIHRlc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
      ANjbI8VJCQUO1M7e3WtyD2hjPLYwPlcwOQIx1dVhMact55edtjNoFZLWH67Hzi3G2uyadB22l037
      xmWDGkvfcpgU8xSOvYEyFsljEQVq3lp2PFuf/sZ8Is69IEh3Sdltf79VwvKBohVAlgQY1wJyLmY1
      7g0+YLtBdRW8JULCXq2nAgMBAAGjUDBOMB0GA1UdDgQWBBSLY9iYe7hvFz9D25zrAVx1m/ZgTjAf
      BgNVHSMEGDAWgBSLY9iYe7hvFz9D25zrAVx1m/ZgTjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEB
      CwUAA4GBACeRSx4z4QhpJCeTlv345fQBtH6Mok8vFigDyRdDbOtRRTcEAGp9ix7VeFmosrHwguhR
      GUqE3GKlHFHMbCLZfuaBLvscVeIgtpS3NaVCn+0GWl+OgEl19Ci+XIxU57XE8Ul++Ne/e/kTmiq8
      zADR2LQKuLLXgSasqDbFcQxcNBEsCMResssAauplF/9WoXtrrPFuMKk=



      REPRODUCIBILITY :
      This bug can be reproduced always.

            vinnie Vincent Ryan
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: