crypter et decrypter un pass

crypter et decrypter un pass - Python - Programmation

Marsh Posté le 24-06-2004 à 17:39:07    

bonjour quel module me permettrait de crypter et decrypter du texte facilement ?

Reply

Marsh Posté le 24-06-2004 à 17:39:07   

Reply

Marsh Posté le 24-06-2004 à 17:42:16    

Reply

Marsh Posté le 24-06-2004 à 17:46:26    

merci
mais là si j' ai bien compris je crypte une chaine mais ca ne me permet pas de retrouver ma chaine originale.

Reply

Marsh Posté le 24-06-2004 à 17:55:32    

non, c'est du hachage et non du cryptage.  
 
il te faut comparer les 2 chaines cryptees (les signatures)


Message édité par jagstang le 24-06-2004 à 17:55:59

---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 24-06-2004 à 18:03:00    

http://www.python.org/doc/current/lib/crypto.html  
 
En bas de la page, y'a un lien vers un module qui fait peut être ce que tu veux:
http://www.amk.ca/python/code/crypto.html

Reply

Marsh Posté le 24-06-2004 à 18:04:22    

ha d' accord, donc ca peut etre pas mal aussi pour ce que je veux faire.
il suffit que je hash le password donné à chaque fois et que je compares avec le pass hashé original qui est stocké.
 
merci
si vous avez qd meme une idée pour le module de cryptage/decryptage ca m interresse aussi.
 

Reply

Marsh Posté le 24-06-2004 à 18:04:39    

ekxon > c'est quoi tes impératifs de sécurité ?
 
sinon tu as le module password, getpasswd et crypt
 
mais tu peux faire un truc très bien à la main avec un xor, rc4 ou utiliser le déprécié mais fonctionnel http://docs.python.org/lib/module-rotor.html

Reply

Marsh Posté le 24-06-2004 à 18:04:45    

chaica a écrit :

http://www.python.org/doc/current/lib/crypto.html  
 
En bas de la page, y'a un lien vers un module qui fait peut être ce que tu veux:
http://www.amk.ca/python/code/crypto.html


 
merci je regardes  :jap:

Reply

Marsh Posté le 24-06-2004 à 18:11:13    

Taz a écrit :

ekxon > c'est quoi tes impératifs de sécurité ?
 
sinon tu as le module password, getpasswd et crypt
 
mais tu peux faire un truc très bien à la main avec un xor, rc4 ou utiliser le déprécié mais fonctionnel http://docs.python.org/lib/module-rotor.html


 
en fait je veux seulement donner en options a mes utilisateur qui s enregistrent la possiblité de crypter leur pass pour ne pas les stocker en clair sur le disk
 
je regardes tout ca merci  :jap:


Message édité par Profil supprimé le 24-06-2004 à 18:20:23
Reply

Marsh Posté le 25-06-2004 à 09:41:36    

Personnellement, je te conseillerais d'utiliser le module SHA de Python.
 
import sha
pass_hasp = sha.new(pass)
 
Ensuite tu stockes sha.digest() (ca donne 20 octets de donnees sous forme d'un string, ces 20 octets sont le hash SHA de ta chaine pass)
 
Quand un utilisateur entrera son pass, tu extrairas le hash stocke (par un pwd = file.read(20) si c'est dans un fichier), puis

Code :
  1. input_pwd = sha.new(input)
  2. if input_pwd.digest() == pwd:
  3.     pwd_ok
  4. else:
  5.     pwd_wrong


 
Apres si tu as plusieurs MDPs stockes (ce qui est probable), tu peux les mettre dans un tableau de strings et faire

Code :
  1. if input_pwd.digest() in pwd_table:
  2.     OK


si un MDP correspond a un username, une table de hachage, ...
 
(je conseille SHA car il semble etre plus securise que MD5)
 
la doc Python sur SHA est http://www.python.org/doc/current/lib/module-sha.html
 
PS: si besoin de faire des transferts de donnees, utiliser hexdigest() plutot que digest(), mais le resultat fair 40octets au lieu de 20


Message édité par masklinn le 25-06-2004 à 09:46:46
Reply

Marsh Posté le 25-06-2004 à 09:41:36   

Reply

Marsh Posté le 28-06-2004 à 11:23:33    

bha du coup j' ai utilisé le module md5, mais si le module SHA est plus secure je changerais. ou je proposerais les deux je sais pas..
merci pour ton aide  :)

Reply

Marsh Posté le 28-06-2004 à 11:26:03    

utilise les modules pour les mots de passe ! ils font tout, stocke en md5 et permettent une saisie sécurisée !

Reply

Marsh Posté le 28-06-2004 à 15:23:47    

Taz a écrit :

utilise les modules pour les mots de passe ! ils font tout, stocke en md5 et permettent une saisie sécurisée !


?
un module non standard?

Reply

Marsh Posté le 28-06-2004 à 15:27:22    

non, des modules standards dont j'ai déjà donné les noms

Reply

Marsh Posté le 29-06-2004 à 17:55:13    

Taz a écrit :

non, des modules standards dont j'ai déjà donné les noms


password n'existe pas (mais pwd existe, tu parlais peut etre de celui la), pwd et crypt sont Unix only, getpass permet une saisie securisee en console (donc la ok, je vois bien l'interet si le programme tourne en console)
 
 
et j'ai quand meme du mal a voir l'interet d'une solution de cryptage/decryptage (qui force a stocker une ou plusieurs cle(s)) sur les hachages MD5/SHA (qui permet de ne rien stocker du tout, sauf le mdp crypte bien sur)

Reply

Marsh Posté le 29-06-2004 à 18:11:23    

fallait dire que tu étais dans un environnement pauvre

Reply

Marsh Posté le 29-06-2004 à 18:20:50    

Taz a écrit :

fallait dire que tu étais dans un environnement pauvre


c'est pas moi qui ait pose la question
et l'utilisateur initial n'a pas precise dans quel environnement il se trouvait  :kaola:  
 
et tu m'as toujours pas dit pourquoi t'aimais pas les solutions de hachage  :whistle:

Reply

Marsh Posté le 29-06-2004 à 18:24:10    

c'est pas que j'aime pas, c'est que la solution pwd, getpasswd, etc fais tout très bien. getpasswd permet de lire un mot de passe sur n'importe quel descripteur de fichier

Reply

Marsh Posté le 29-06-2004 à 18:34:07    

mouais j'aime pas trop la maniere dont semble fonctionner le module crypt (a la lecture de la doc)
 
(enfin je dis ca pour faire chier parce que j'ai plus rien a dire quoi)
(ah si ! crypt il hash en DES, pas en MD5 :p)

Reply

Marsh Posté le 29-06-2004 à 18:36:54    

non crypt utilise MD5 si tu lui dis d'utiliser MD et DES si tu lui dis DES

Reply

Marsh Posté le 29-06-2004 à 18:42:28    

Taz a écrit :

non crypt utilise MD5 si tu lui dis d'utiliser MD et DES si tu lui dis DES


On doit pas avoir acces au meme module alors, la doc python online dit

Citation :

This module implements an interface to the crypt(3) routine, which is a one-way hash function based upon a modified DES algorithm; see the Unix man page for further details. Possible uses include allowing Python scripts to accept typed passwords from the user, or attempting to crack Unix passwords with a dictionary.


Ya marque "modified DES", pas qu'on a le choix entre MD5 et DES :pfff: (mon dieu j'aime les smileys de ce forum)

Reply

Marsh Posté le 29-06-2004 à 18:43:23    

« see the Unix man page for further details »

Reply

Marsh Posté le 29-06-2004 à 18:50:21    

je te hais :(

Reply

Marsh Posté le 05-07-2012 à 10:44:24    

déterrage:
je souhaite scripter la modification de mode de passe  pour lancer la commande "usermod -p passwdpcrypted user" sur un parc de machines, mais crypt que j'uutilise pour générer le passwdpcrypted  exige u deuxieme argument salt,  
comment le renseigner ?
faut il utiliser autre chose que crypt ?

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed