Я хочу сделать небольшую программу, которая поступает в качестве входных данных (1) Сертификат X509 (2) соответствующий ЦС, который подписал этот сертификат. Он должен проверить этот сертификат, если он не поврежден или нет, путем проверки подписи. Для этого я считаю, что сначала мне нужно извлечь две вещи: (1) Значение подписи (2) остальных полей сертификата. Следующий код работает нормально для получения открытого ключа , но для меня требуется значение подписи.Получить значение подписи из сертификата X509
URL httpslink = new URL("https://mail.yahoo.com");
HttpsURLConnection con = (HttpsURLConnection) httpslink.openConnection();
con.connect();
Certificate ct[] = con.getServerCertificates();
X509Certificate c = ((X509Certificate) ct[0]);
System.out.println(c.getPublicKey().toString());
Я пробовал много способов получить значение подписи, но мне не удалось. Можете ли вы, ребята, дать мне хотя бы удар, чтобы сделать это. THANK YOU
Вы пробовали метод getSignature? http://docs.oracle.com/javase/7/docs/api/java/security/cert/X509Certificate.html#getSignature() – Jumbogram
Да, я ... он не показывает мне значение подписи! Он показывает мне это странное значение => [B @ 5fa34e31 – user3317181
Это результат вызова toString() в массиве byte []. Содержимое по-прежнему является подписью. – EJP