簡體   English   中英

我可以完全用Python簽署X509證書嗎?

[英]Can I sign an X509 certificate entirely in Python?

我正在使用Google App Engine(GAE)python 2.7運行時。

我需要簽名(並且可能還會生成)X509證書(.csr)

我找到了幾個依賴PyOpenSSL 指南

據我了解,PyOpenSSL是OpenSSL的包裝,在App Engine中不可用。
Pycrypto可用,但沒有明確的預先建立的X509簽名方法。

如何僅使用python簽署X509 .csr?

我可以完全用Python簽署X509證書嗎?

幾乎可以肯定,但我認為現有的純Python實現並不存在。 我能找到的最接近的是oscrypto ,但能夠簽署X509證書取決於是否有ctypes模塊。

作者還編寫了一個名為certbuilder的模塊,該模塊聲稱是一個“用於生成和簽署X.509證書的Python庫”,但它取決於oscrypto模塊。

然而,真正的問題聽起來更像......

我可以在Google App Engine Python標准環境中簽署X509證書嗎?

在這種情況下, oscrypto模塊可能無濟於事,因為根據文檔,環境不允許使用ctypes模塊。

您可以訪問PyCrypto模塊,雖然有一個使用它讀取X509證書的Python示例 ,以及驗證X509證書的C ++示例 ,但Python綁定似乎並不完全支持ASN的編碼和解碼0.1。 你也許可以結合PyCryptoasn1crypto由同一作者的oscrypto全ASN.1支持。

如果這些解決方案都沒有任何用處,那么GAE Python靈活環境GAE自定義運行時應該允許您安裝PyOpenSSL軟件包,但是您必須聯系他們的技術支持團隊才能找到PyOpenSSL

我可能找到了解決方案:

Cryptography.io完全基於python,甚至提供了如何自我簽署證書的教程。

很高興聽到其他答案。

這不是直接的答案,因為我從不使用C和Cython,但也許可以使用一些C庫來完成這項任務。

來自Cython網站

所有這些使得Cython成為包裝外部C庫,將CPython嵌入現有應用程序以及加速Python代碼執行的快速C模塊的理想語言。

似乎不是最簡單但不是最好的解決方案,但誰知道:)

暫無
暫無

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

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