Могу ли я подписать сертификат X509 полностью в Python?
Почти наверняка, но я не думаю, что существуют существующие чистые реализации Python. Самое близкое, что я мог найти, это oscrypto
, но наличие подписи сертификата X509 зависит от наличия модуля ctypes
.
Автор также написал модуль под названием certbuilder
, который утверждает, что является «библиотекой Python для генерации и подписания сертификатов X.509», но зависит от модуля oscrypto
.
Однако, вопрос звучит как ...
Могу ли я подписать сертификат X509 на Google App Engine Python Standard окружающей среды?
В этом случае oscrypto
модуль, вероятно, не поможет, так как, согласно документации, среда не позволяет использование в ctypes
модуля.
У вас есть доступ к PyCrypto
модулю, и хотя есть a Python example чтения сертификата X509, используя его, и C++ example верификации сертификата X509, привязок Python, кажется, не имеют полную поддержку кодирования и декодирования ASN.1. Возможно, вы сможете комбинировать PyCrypto
с asn1crypto
от того же автора, что и oscrypto
для полной поддержки ASN.1.
Если ни одно из этих решений не имеют никакой пользы, то либо GAE Python Flexible Environment или GAE Custom Runtime должен позволить вам установить PyOpenSSL
пакет, но вы должны обратиться в службу поддержки технологий, чтобы узнать.
https://www.dlitz.net/software/pycrypto/api/current/Crypto.Signature.PKCS1_v1_5-module.html может быть то, что вы ищете? ... im not sure, если это то же самое, что и x509 ... но похоже, что спецификации реализации являются общедоступными, поэтому вы можете реализовать их ... но это будет болезненно. –
Это помогает вам каким-либо образом? http://stackoverflow.com/questions/23103878/sign-csr-from-client-using-ca-root-certificate-in-python –
Python поддерживает среду Go lang, и вы можете создать модуль, который использует https: // golang .org/pkg/crypto/x509/- и называть его через REST API. –