Domanda

Voglio crittografare pochi file usando Python Qual è il modo migliore per usare gpg/pgp usando qualsiasi librerie Python standard/famose?

È stato utile?

Soluzione

PyCrypto sembra essere il migliore in circolazione.

Altri suggerimenti

Tentativo KeyCzar

Molto facile da implementare.

Io uso GPGme Il punto di forza di GPGme è che legge e scrive file secondo lo standard OpenPGP (RFC4880) che può essere importante se vuoi interagire con altri programmi PGP.

Ha un Interfaccia Python.Avvertimento:è un'interfaccia di basso livello, non molto pythonica.

Se leggi il francese, vedi esempi.

Eccone uno, per verificare una firma:

signed = core.Data(sys.stdin.read())
plain = core.Data()
context = core.Context()

context.op_verify(signed, None, plain)
result = context.op_verify_result()

sign = result.signatures
while sign:
    if sign.status != 0:
        print "BAD signature from:"
    else:
        print "Good signature from:"
    print "  uid:        ", context.get_key(sign.fpr, 0).uids.uid
    print "  timestamp:  ", sign.timestamp
    print "  fingerprint:", sign.fpr
    sign = sign.next

Io uso pyOpenSSL, è un collegamento Python per OpenSSL che esiste da molto tempo ed è molto ben testato.Ho eseguito alcuni benchmark per la mia applicazione, che è molto intensiva in termini di crittografia e ha vinto a mani basse contro pyCrypto.YMMV.

Vedi quello di Google Keyczar project, che fornisce un bel set di interfacce per la funzionalità di PyCrypto.

Mi piace pyDes (http://twhiteman.netfirms.com/des.html).Non è il più veloce, ma è puro Python e funziona molto bene con piccole quantità di dati crittografati.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top