سؤال

أحتاج إلى كتابة برنامج بسيط للعمل الذي يقوم بما يلي:

  1. اقرأ ملف التكوين
  2. اتصل بمجموعة من الخوادم
  3. إنشاء مقبس SSL
  4. اسحب المعلومات تشكل شهادة X509 الخاصة بالخادم وتاريخ انتهاء صلاحيتها واسم المضيف في الوقت الحالي
  5. أرسل تقريرًا بالبريد الإلكتروني عند القيام به

العناصران 3 و 4 هي الأشياء التي كنت قد حظيت بحظ سيء للبحث/Google ولا أعرف Java جيدًا ، على الإطلاق منذ 1.2 حوالي عام 2001

هل كانت مفيدة؟

المحلول 2

لقد وجدت رمزًا يخبرني بما أحتاج إلى معرفته عن Java في http://www.exampledepot.com/egs/javax.net.ssl/getcert.html

ها هو:

try {

    // Create the client socket
    int port = 443;
    String hostname = "hostname";
    SSLSocketFactory factory = HttpsURLConnection.getDefaultSSLSocketFactory();
    SSLSocket socket = (SSLSocket)factory.createSocket(hostname, port);

    // Connect to the server
    socket.startHandshake();

    // Retrieve the server's certificate chain
    java.security.cert.Certificate[] serverCerts =
        socket.getSession().getPeerCertificates();

    // Close the socket
    socket.close();
} catch (SSLPeerUnverifiedException e) {
} catch (IOException e) {
} catch (java.security.cert.CertificateEncodingException e) {   
}

نصائح أخرى

تم العثور على مطوّلة ولكن طوال دليل Enners of Java Cryptographic Extension في موقع Oracles أيضًا: http://docs.oracle.com/javase/6/docs/technotes/guides/security/jsse/jsserefguide.html

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top