Допустим нам прислали поставщик ключей следующие файлы:
-rwxr-xr-x@ 1 aieremenko staff 2616 Aug 12 13:29 portal.gala-coral-prod.ptec.ca.pem
-rwxr-xr-x@ 1 aieremenko staff 1684 Aug 12 13:29 portal.prod.crt.pem
-rwxr-xr-x@ 1 aieremenko staff 1704 Aug 12 13:29 portal.prod.key.pem
У нас есть
javax.net.ssl.keyStore=keystore.jks
javax.net.ssl.trustStore=truststore.jts
Сначала для импорта в кистор мы должны обьединить ключ и сертификат в один p12 кистор. Делаем:
openssl pkcs12 -inkey portal.prod.key.pem -in portal.prod.crt.pem -export -out portal.prod.crt.p12
Вводим пароль от поставщика ключей и впринципе создаемся такой же для нового кистора и есть, теперь добавить из этого кистора в джавовский:
keytool -importkeystore -destkeystore keystore.jks -srckeystore portal.prod.crt.p12 -srcstoretype PKCS12 -srcalias 1 -destalias 'MY_ALIAS' -destkeypass PASSWD_TO_JKS
Вводим пароль к кистору p12 и к джевеемовскому - есть кистор добавлен к нам.
Теперь добавляем сертификат к трастору:
keytool -importcert -file portal.prd.ca.pem -alias MY_ALIAS -trustcacerts -keystore truststore.jts
подтверждаем, что мы доверяем этому сертификату.
Теперь, как отличить по принту(даже короткому) в хранилище ключей лежит то, что представляет нас, или то, чему доверяем мы.
Ключ кому можем доверять мы выглядит так:
$ keytool -list -keystore truststore.jts
MY_ALIAS, Feb 28, 2018, trustedCertEntry,
Certificate fingerprint (SHA1): 76:3B:FA:D5:ED:40:6E:DB:B5:49:B8:56:91:08:3D:3C:5C:E1:47:3D
По чем доверяют нам:
$ keytool -list -keystore keystore.jks
MY_ALIAS, Feb 28, 2018, PrivateKeyEntry,
Certificate fingerprint (SHA1): 8B:B5:5B:55:62:3E:F1:EB:19:0C:DD:49:D1:71:50:71:B9:9C:E6:61