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 :
- input_pwd = sha.new(input)
- if input_pwd.digest() == pwd:
- pwd_ok
- else:
- 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 :
- if input_pwd.digest() in pwd_table:
- 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