2009-08-27 7 views
2

J'ai le code Java suivant que je suis en train de convertir en python, et je ne suis pas vraiment sûr comment faire:java en python conversion: x509/dsa/sha1withdsa crypto comment?

import java.security.spec.X509EncodedKeySpec; 
import java.security.KeyFactory; 
import java.security.PublicKey; 
import java.security.Signature; 

byte[] key = KeyReader.read(filestream) 
    //KeyReader.read(inputstream) just reads in the bytes 1 at a time from the filestream 
X509EncodedKeySpec pubKey = new X509EncodedKeySpec(key); 
KeyFactory keyFactory = KeyFactory.getInstance("DSA"); 

PublicKey pub = keyFactory.generatePublic(pubKey); 

Signature signature = Signature.getInstance("SHA1withDSA"); 
signature.initVerify(pub) 
signature.update(a_byte_string) //doesn't matter 

Je suis un peu perdu quant à la façon de le faire en python. Plus précisément, la partie SHA1withDSA. Je n'en sais pas assez sur les librairies python crypto (m2crypto pour être exact) pour mapper les fonctions (et je n'ai pas pu trouver d'écritures décentes sur la façon de le faire).

Répondre

1

Je ne comprends pas exactement le code Java, mais est-ce ce que vous essayez de faire?

from M2Crypto import X509 

x509 = X509.load_cert(filename) 
assert x509.verify() == 1 
Questions connexes