Outils de chiffrement pour python 3
Je suis en train d'écrire un programme en python 3 qui a besoin de fonctions de chiffrement (au moins aes et rsa). J'ai trouvé PyCrypto qui ne semble fonctionner que sur 2.x versions.
Est-il un bon outil pour python 3 ou devrais-je plutôt commencer à traduire mon programme pour être compatible avec python 2 (ou toute autre solution) ?
Merci
Mise à jour comme mentionné ci-dessous, PyCrypto est maintenant disponible sur py3k
OriginalL'auteur Martin Trigaux | 2011-01-03
Vous devez vous connecter pour publier un commentaire.
PyCrypto 2.4.1 et, plus tard, travailler sur Python 3.x (voir changelog diff).
OriginalL'auteur dlitz
Bien que Python 3 lui-même est prêt à heure de grande écoute, le manque de bibliothèques qui prennent en charge il est un obstacle. Le meilleur que vous pouvez faire est bien sûr d'aider à port PyCrypto à Python 3, mais comme il a beaucoup de C-modules d'extension qui n'est probablement pas tout à fait triviaux, et sera une couple de jours de travail, je pense. Peut-être le mainteneur actuel est intéressé par le portage ou déjà à moitié chemin, vous devriez communiquer avec lui et de lui demander.
Il y a un module rsa écrit en Python qui semble assez propre et facilement portable code, mais pour l'aes, il semble que PyCrypto est le module à utiliser. Il est donc probablement plus facile de faire de votre logiciel s'exécutent sous Python 2 à la place.
Heh. Python 2.1 soutenir aujourd'hui semble plutôt fou. 🙂 Il n'a pas été pris en charge depuis 2003.
Je suis d'accord avec vous 🙂 Check this out : github.com/yorickdowne/pycrypto/tree/py3k quelqu'un a commencé une fourchette de pycrypto pour la version 3 seulement
pycrypto branche pour python 3: github.com/dlitz/pycrypto/tree/py3k
OriginalL'auteur Lennart Regebro
Crytographic les Bibliothèques sont pour la plupart des calculs numériques et je ne sais pas pourquoi py3k versions ne sont pas encore disponibles.
Il faut les utiliser avec prudence, car ils ont juste des programmes de développement mis en œuvre suivant l'algorithme de texte. (Qui est, je ne suis pas sûr de la rigueur dans l'original python2 version).
Aussi, tous d'entre eux sont de la pure bibliothèques python, ils seraient plus lent que ce qui est écrit à l'aide de C-extensions ( et peut-être c'est la raison, pourquoi py3k versions sont l'obtention de retard).
Vos liens sont brisés "SVN d'hébergement a été désactivé de façon permanente."
OriginalL'auteur Senthil Kumaran
j'ai écrit un wrapper de la bibliothèque simple-crypte qui assure le chiffrement et le déchiffrement en python 3, de déléguer le travail à pycrypto.
avantages de l'utilisation de ce plus de pycrypto inclure directement:
beaucoup plus simple de l'interface:
clé de l'expansion afin de rendre l'utilisation de phrases de passe plus sécurisé
utilisation d'un hmac pour vérifier la modification des données
un versionnées en-tête qui devrait me permettre de basculer de la mise en œuvre de google keyczar une fois, qui se déplace vers python 3 (depuis que devrait être mieux entretenus, j'ai seulement écrit ceci hors de l'apparente nécessité).
vous pouvez installer le package à l'aide de:
plus d'informations disponibles sur le page github pour le projet.
OriginalL'auteur andrew cooke
Je ne suis pas au courant de tout être raisonnable librairie de cryptographie en python (peu importe la version). Tout ce que je connais (y compris pycrypto) est juste un jouet. Si vous souhaitez mettre en place une application sérieuse, alors vous devriez regarder pour un wrapper pour une véritable bibliothèque comme m2crypto. Pycrypto lui-même n'a suivre de nombreuses normes.
En particulier, le RSA a besoin d'un bon rembourrage système sécurisé. Depuis pycrypto est au moins pas actuellement à l'aide de
un rembourrage, ce qui rend son RSA la mise en œuvre plutôt la précarité et incompatible avec d'autres bibliothèques de chiffrement.
Réponse à Martins question: Évidemment, cette question est ouverte à beaucoup d'opinions. Une proposition serait d'utiliser Java au lieu de python. Java a un sens bien défini cryptographiques de l'interface, et il y a différents fournisseurs qui implémentent l'interface. Cela a plutôt le gros avantage que l'on peut mettre en œuvre une solution indépendante de l'opérateur, de sorte que l'on peut facilement basculer entre les différents prestataires. Personnellement, j'aime openssl, mais je suis conscient que c'est plutôt difficile à utiliser.
OriginalL'auteur Accipitridae
Ici est un Python3 bibliothèque pour la cryptographie recherche de l'université Johns Hopkins.
Il prend en charge courbe elliptique opérations et de couplage en fonction de la crypto.
OriginalL'auteur Gary
Mon wrapper Python autour de LibTomCrypt prend désormais en charge Python 3, et il a AES et RSA.
Voir: https://github.com/mikeboers/PyTomCrypt#readme
OriginalL'auteur Mike Boers
Cryptographie
(documentation
) les réclamations pour répondre à de multiples lacunes dePyCrypto
,M2Crypto
, etPyOpenSSL
. Ils ne parlent pas desimple-crypt
, mais l'objectif principal de ce projet est de fournir de haut niveau, coffre-fort, facile à utiliser les interfaces avec un ensemble de bas-niveau des interfaces (disponible à partir d'un "hazmat" module) permettant un contrôle plus précis pour les développeurs qui comprennent les pièges.Ne pas l'avoir utilisé les autres bibliothèques, je ne peux pas commenter si la cryptographie est mieux que les autres, mais il a certainement répondu à mes besoins jusqu'à présent.
OriginalL'auteur Dave
pycrypto a Py3k branche (en https://github.com/dlitz/pycrypto/tree/py3k)
OriginalL'auteur Taha Jahangir