2016-11-13 97 views
0

我使用PyOpenSSL verify_certificate()來驗證證書鏈。我的代碼似乎工作。但我想知道函數是否也檢查證書鏈上的簽名。讓我們假設我們有鏈ca_cert - > i_ca_cert - > s_cert。因此ca_cert簽署了i_ca_cert和i_ca_cert簽署了s_cert。 verify_certificate()檢查簽署者(RSA)密鑰是否用於簽署證書以及簽名是否正確(對於鏈中的每個證書)?PyOpenSSL verify_certificate()做簽名驗證

+0

相關... OpenSSL 1.0.2及更早版本*不執行主機名匹配。 OpenSSL 1.1.0 *會執行主機名匹配。另請參閱[SSL/TLS客戶端|在OpenSSL wiki上驗證](https://wiki.openssl.org/index.php/SSL/TLS_Client#Verification)。 – jww

回答

0

但我不知道是否該功能還檢查沿證書鏈

當然它的簽名。否則,鏈式驗證的目的是什麼?從OpenSSL文檔(linux上的man 1ssl verify):

最後的操作是檢查證書鏈的有效性。根據當前系統時間和證書中的notBefore和notAfter日期檢查有效期。 此時還檢查證書籤名。