Artikel ini membawa anda pengetahuan yang berkaitan tentang java Protokol Status Sijil Dalam Talian OCSP dicadangkan untuk menggantikan pelayan web moden secara amnya menyokong OCSP juga merupakan konfigurasi standard pelayan web moden melihatnya saya harap ia akan membantu semua orang.
Kajian yang disyorkan: "tutorial video java"
Protokol Status Sijil Dalam Talian OCSP telah dicadangkan untuk menggantikan CRL. Pelayan web moden secara amnya menyokong OCSP, dan OCSP juga adalah standard untuk pelayan web moden.
Tetapi stapling OCSP tidak disokong oleh semua pelayan web. Tetapi dalam kerja sebenar, kita mungkin perlu mengetahui sejauh mana tapak web tertentu menyokong OCSP.
Bagaimana untuk menentukan sama ada tapak web menyokong stapling OCSP?
Cara paling mudah ialah pergi ke tapak web pihak ketiga untuk menyemak maklumat sijil tapak web tersebut. Sebagai contoh, kami menyebut entrust.ssllabs.com sebelum ini Dengan memasukkan maklumat tapak web yang sepadan, dalam bahagian
Butiran Protokol, anda boleh mendapatkan maklumat khusus tentang sama ada tapak web menyokong stapling OCSP, seperti yang ditunjukkan di bawah:
openssl s_client -connect www.squarespace.com:443Arahan ini akan mengeluarkan semua kandungan penubuhan sambungan, termasuk maklumat sijil tapak web untuk diakses. Oleh kerana kami hanya memerlukan sijil tapak web, kami perlu menyimpan kandungan antara
dan -----BEGIN CERTIFICATE-----
. -----END CERTIFICATE-----
openssl s_client -connect www.squarespace.com:443 | sed -n '/-----BEGIN/,/-----END/p' > ca.pemDi sini kita menggunakan arahan sed -n untuk memintas data bermula dengan
dan berakhir dengan -----BEGIN
daripada output. -----END
openssl untuk mendapatkan semua rantai sijil: openssl s_client -showcerts
openssl s_client -showcerts -connect www.squarespace.com:443 | sed -n '/-----BEGIN/,/-----END/p' > chain.pemJika anda membuka fail chain.pem, anda boleh mendapati terdapat dua sijil dalam fail, satu atas Satu ialah sijil pelayan itu sendiri, dan yang kedua ialah sijil perantaraan yang digunakan untuk menandatangani sijil pelayan. Dapatkan alamat responder OCSP Jika sijil mengandungi alamat responder OCSP, anda boleh menggunakan arahan berikut untuk mendapatkannya:
openssl x509 -noout -ocsp_uri -in ca.pemKami boleh mendapatkan OCSP tapak web Alamat responden ialah:
. http://ocsp.digicert.com
openssl x509 -text -noout -in ca.pemArahan ini akan mengeluarkan semua maklumat sijil, kita boleh melihat kandungan berikut:
Authority Information Access: OCSP - URI:http://ocsp.digicert.com CA Issuers - URI:http://cacerts.digicert.com/DigiCertTLSRSASHA2562020CA1-1.crtDi mana OCSP-URI ialah alamat responden OCSP. Hantar permintaan OCSPDengan alamat responden OCSP, kami boleh melakukan pengesahan OCSP Dalam arahan ini, kami perlu menggunakan sijil pelayan dan sijil perantaraan. Arahan permintaan khusus adalah seperti berikut:
openssl ocsp -issuer chain.pem -cert ca.pem -text -url http://ocsp.digicert.comKita boleh mendapatkan dua bahagian daripada output Bahagian pertama ialah Data Permintaan OCSP, iaitu data permintaan OCSP:
OCSP Request Data: Version: 1 (0x0) Requestor List: Certificate ID: Hash Algorithm: sha1 Issuer Name Hash: 521EE36C478119A9CB03FAB74E57E1197AF1818B Issuer Key Hash: 09262CA9DCFF639140E75867E2083F74F6EAF165 Serial Number: 120014F1EC2395D56FDCC4DCB700000014F1EC Request Extensions: OCSP Nonce: 04102873CFC7831AB971F3FDFBFCF3953EC5Daripada data permintaan, kita dapat melihat struktur data permintaan OCSP yang terperinci, termasuk kandungan pengeluar dan bukan OCSP. Bahagian kedua ialah data respons Malangnya, kami mendapat data respons ralat permintaan berikut:
OCSP Response Data: OCSP Response Status: successful (0x0) Response Type: Basic OCSP Response Version: 1 (0x0) Responder Id: B76BA2EAA8AA848C79EAB4DA0F98B2C59576B9F4 Produced At: Apr 30 04:36:26 2022 GMT Responses: Certificate ID: Hash Algorithm: sha1 Issuer Name Hash: E4E395A229D3D4C1C31FF0980C0B4EC0098AABD8 Issuer Key Hash: B76BA2EAA8AA848C79EAB4DA0F98B2C59576B9F4 Serial Number: 0F21C13200AE502D52BBE8DFEAB0F807 Cert Status: good This Update: Apr 30 04:21:01 2022 GMT Next Update: May 7 03:36:01 2022 GMTDalam hasil yang dikembalikan di atas, Status Sijil: baik bermakna permintaan OCSP adalah. berjaya. , laman web ini ialah tapak web yang menyokong protokol OCSP. Dua baris selepas ialah masa kemas kini terakhir OCSP dan masa kemas kini seterusnya:
This Update: Apr 30 04:21:01 2022 GMT Next Update: May 7 03:36:01 2022 GMTMenunjukkan bahawa tapak web ini juga menyokong stapling OCSP. Selain itu, apabila meminta url OCSP sesetengah tapak web, anda mungkin mendapat pengecualian berikut:
Error querying OCSP responder 4346349100:error:27FFF072:OCSP routines:CRYPTO_internal:server response error:/AppleInternal/Library/BuildRoots/66382bca-8bca-11ec-aade-6613bcf0e2ee/Library/Caches/com.apple.xbs/Sources/libressl/libressl-2.8/crypto/ocsp/ocsp_ht.c:251:Code=400,Reason=Bad RequestMengapa ini? Ini kerana tapak web ocsp.msocsp.com tidak menyokong permintaan HTTP 1.0 lalai OCSP Dalam permintaan HTTP 1.0, tiada pengepala permintaan Hos secara lalai. Jadi kita perlu menambah pengepala permintaan Hos dan kemudian laksanakannya semula. Kaedah yang lebih mudahKami sebenarnya membahagikan permintaan dan melaksanakannya langkah demi langkah. Kami juga boleh menggunakan openssl untuk melaksanakan tugas dalam satu langkah seperti berikut:
openssl s_client -tlsextdebug -status -connect www.squarespace.com:443
从输出中,我们可以看到下面的数据:
OCSP response: ====================================== OCSP Response Data: OCSP Response Status: successful (0x0) Response Type: Basic OCSP Response Version: 1 (0x0) Responder Id: B76BA2EAA8AA848C79EAB4DA0F98B2C59576B9F4 Produced At: Apr 27 04:36:26 2022 GMT Responses: Certificate ID: Hash Algorithm: sha1 Issuer Name Hash: E4E395A229D3D4C1C31FF0980C0B4EC0098AABD8 Issuer Key Hash: B76BA2EAA8AA848C79EAB4DA0F98B2C59576B9F4 Serial Number: 0F21C13200AE502D52BBE8DFEAB0F807 Cert Status: good This Update: Apr 27 04:21:02 2022 GMT Next Update: May 4 03:36:02 2022 GMT
上面的命令直接输出了OCSP response结果,从结果中我们很清楚的看到该网站是否支持OCSP和OCSP stapling。
推荐学习:《java视频教程》
Atas ialah kandungan terperinci Java menggunakan openssl untuk mengesan sama ada tapak web menyokong ocsp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!