簡體   English   中英

Python / Twisted程序在Windows下驗證SSL證書的正確方法是什么?

[英]What's the right way for a Python/Twisted program to validate an SSL certificate under Windows?

有沒有辦法讓Python / Twisted程序干凈地利用Internet Explorer用於驗證與HTTPS服務器的SSL連接的根證書列表? 提供給使用Python驗證SSL證書的答案非常有用,但示例代碼通過讀取Unix特定目錄/etc/ssl/certs/*.pem來獲取根證書,並且我不清楚Windows的等效內容是什么。

Windows等效項是“從Linux機器上復制/etc/ssl/certs/*.pem”。 Mac和Windows具有不同的本機API,用於獲取各自的證書存儲,Twisted不直接支持。 它們本身不使用OpenSSL證書,並且它們當然不會像“PEM文件目錄”那樣直接布局。 如果您可以將您的信任根導出為PEM,那么您可以通過PyOpenSSL方式詢問Twisted(嗯,實際上, OpenSSL )以此方式進行驗證。

我對這種超級便攜的方式感興趣,但我從未嘗試過。 以下是一些入門鏈接: SecureTransport參考Microsoft Cryptography Functions

在SecureTransport參考,文檔指出SSLGetTrustedRoots已被棄用,但沒有提及替代SSLCopyTrustedRoots這是不。 這可能是你想在Mac上開始的API(通過PyObjC)。 在Windows上,我真的不確定,除了那堆函數中的某個地方可能有一個你想要的東西,也許你可以用ctypes調用它:)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM