Могу ли я получить установленный сертификат в моей системе через Java - PullRequest
4 голосов
/ 24 июля 2010

Могу ли я получить установленные сертификаты в моей системе через Java

что-то вроде этого Например.Certificate [] certificate = someClass.getsystemCertificates ();

Есть ли какие-нибудь API для этого доступны ????

Ответы [ 2 ]

3 голосов
/ 24 июля 2010

Вы можете использовать команду keytool, чтобы получить список сертификатов в вашем файле cacerts, который представляет собой набор утвержденных сертификатов, который поставляется с Java. Пароль по умолчанию для этого хранилища ключей - «changeit».

keytool -list -keystore $JAVA_HOME/jre/lib/security/cacerts -storepass changeit

1 голос
/ 25 июля 2010

Это зависит от системы.Windows имеет централизованное хранилище сертификатов, в то время как другие платформы этого не делают (по крайней мере, нет единой).Таким образом, запрос системных сертификатов зависит от платформы.И как бы то ни было, было бы разумно искать JNI для API для конкретной платформы, чтобы делать то, что вам нужно.

Полагаю, для Windows уже должен быть какой-то класс (скорее всего, работающий через JNI), но я его никогда не видел.Я бы тоже заинтересовался таким решением (для конкретных целей, где JNI нельзя использовать).

...