當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Ruby Store類用法及代碼示例

本文簡要介紹ruby語言中 OpenSSL::X509::Store類 的用法。

X509 證書存儲保存用於驗證對等證書的可信 CA 證書。

創建有用的證書存儲的最簡單方法是:

cert_store = OpenSSL::X509::Store.new
cert_store.set_default_paths

這將使用您係統的內置證書。

如果您的係統沒有一組默認證書,您可以在此處獲取 cURL 維護人員從 Mozilla CA 證書存儲中提取的一組證書:curl.haxx.se/docs/caextract.html(您可能希望使用 firefox-db2pem.sh 腳本從本地安裝以避免man-in-the-middle 攻擊。)

從上麵的鏈接下載或生成cacert.pem 後,您可以從 pem 文件創建證書存儲,如下所示:

cert_store = OpenSSL::X509::Store.new
cert_store.add_file 'cacert.pem'

證書存儲可以與 SSLSocket 一起使用,如下所示:

ssl_context = OpenSSL::SSL::SSLContext.new
ssl_context.verify_mode = OpenSSL::SSL::VERIFY_PEER
ssl_context.cert_store = cert_store

tcp_socket = TCPSocket.open 'example.com', 443

ssl_socket = OpenSSL::SSL::SSLSocket.new tcp_socket, ssl_context

相關用法


注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Store類。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。