Je veux chiffrer quelques fichiers en utilisant python quelle est la meilleure façon Je peux utiliser gpg/pgp en utilisant des bibliothèques python standard/célèbres?quelle est la meilleure/plus facile à utiliser bibliothèque de chiffrement en python
Répondre
PyCrypto semble être le meilleur.
Pourquoi dites-vous cela? –
C'est complet et l'auteur original AMK est un développeur Python respecté. –
Oui, mais son mainteneur actuel n'a aucune sortie (comme vérifié aujourd'hui) –
Essayez KeyCzar
Très facile à mettre en œuvre.
Voir le projet Keyczar de Google, qui fournit un bon ensemble d'interfaces aux fonctionnalités de PyCrypto.
J'utilise GPGme La principale force de GPGme est qu'il lit et écrit des fichiers au standard OpenPGP (RFC 4880) ce qui peut être important si vous voulez interopérer avec d'autres programmes PGP. Il a un Python interface. Attention: c'est une interface de bas niveau, pas très Pythonic.
Si vous lisez en français, see examples.
Voici un, pour vérifier une signature:
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
J'aime pyDes (http://twhiteman.netfirms.com/des.html). Ce n'est pas le plus rapide, mais c'est du pur Python et fonctionne très bien pour de petites quantités de données cryptées.
Le cryptage est un sujet délicat. Veuillez ajouter plus d'informations sur ce que vous cryptez et pourquoi, et comment votre application doit le gérer. Plus précisément, vous devez parler de la façon dont les secrets doivent être gérés - cela déterminera si vous devez utiliser le cryptage par clé publique ou simplement un secret partagé. – Allen
Fondamentalement, je veux juste crypter certains fichiers de configuration afin qu'il ne soit pas lisible acheter d'autres personnes, mais mon programme seulement. Je ne veux pas de solution infaillible ici parce que je vais devoir déchiffrer des fichiers dans mon programme ou peut-il y avoir une façon infaillible de le faire? –