-
Bug
-
Resolution: Not an Issue
-
P3
-
8, 9
-
generic
-
generic
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.
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.
- duplicates
-
JDK-8079616 KeyStore PKCS12 does not return stored certificate by alias if alias contains up
-
- Closed
-
- relates to
-
JDK-8079616 KeyStore PKCS12 does not return stored certificate by alias if alias contains up
-
- Closed
-