faccio a firmare un certificato X509 interamente in Python?
Quasi certamente, ma non penso che esistano implementazioni Python pure esistenti. Il più vicino che ho trovato è oscrypto
, ma la possibilità di firmare un certificato X509 dipende dal fatto che il modulo ctypes
è disponibile.
L'autore ha anche scritto un modulo chiamato certbuilder
, che dichiara di essere una "libreria Python per la generazione e la firma di certificati X.509", ma dipende dal modulo oscrypto
.
Tuttavia, la vera domanda suona più come ...
faccio a firmare un certificato X509 su una Google App Engine Python standard Ambiente?
In questo caso, il modulo oscrypto
probabilmente non aiuterà, poiché, secondo la documentazione, l'ambiente non consente l'utilizzo del modulo ctypes
.
Si ha accesso al modulo PyCrypto
, e anche se c'è a Python example di lettura di un certificato X509 utilizza, e un C++ example di verificare un certificato X509, i binding Python non sembrano avere un supporto completo per la codifica e la decodifica ASN.1. Potrebbe essere possibile combinare PyCrypto
con asn1crypto
dallo stesso autore di oscrypto
per il supporto completo ASN.1.
Se nessuna di queste soluzioni sono di alcuna utilità, e da una GAE Python Flexible Environment o un GAE Custom Runtime dovrebbe lasciare che si installa il pacchetto PyOpenSSL
, ma che avrebbe dovuto contattare il team di supporto tecnico per scoprirlo.
https://www.dlitz.net/software/pycrypto/api/current/Crypto.Signature.PKCS1_v1_5-module.html potrebbe essere quello che stai cercando? ... non sono sicuro se questo è uguale a x509 ... ma sembra che le specifiche di implementazione siano disponibili pubblicamente in modo da poter essere implementato ... ma sarà doloroso –
Questo ti aiuta in qualche modo? http://stackoverflow.com/questions/23103878/sign-csr-from-client-using-ca-root-certificate-in-python –
Python supporta l'ambiente Go lang ed è possibile creare un modulo che utilizza https: // golang .org/pkg/crypto/x509/- e chiamalo tramite l'API REST. –