Creer LM Hash (Clé DES)

Aldo -  
Totes Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je souhaiterais créer une application qui crée le hash d'un mots de passe suivant le format Lan manager de Windows

Le principe de fonctionnement est le suivant :
* MDP de 14 caractères max
* Ajout de zéro pour atteindre 14 caractères
* Convertir en majuscules
* Le mot de passe est séparé en deux éléments de 7 caractères.
* Le hash de chaque morceau est calculé séparément.(une clé DES 56bits (7*8bits) est construite à partir de chacune des deux moitiés (2*7octets)
* Les deux hashs concaténés forment le hash LM(16 octets).

Par ailleurs, notons que le format LM ne gère pas la casse.

Mon problème se base principalement sur la création de clé DES car le reste est a priori assez simple

Si quelqu'un si connait je suis preneur

Merci

4 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Salut,
Je rajoute quelques points sur ton algorithme.
Ce n'est pas des zéros qui doivent être rajoutés pour padder, mais des caractères nuls.
Il n'y a pas que simplification au niveau des minuscules. En fait il y a aussi une conversion de la chaîne unicode en ASCII avec simplification des caractères non OEM.
Ensuite, les caractéristiques du DES utilisé dans l'algorithme est que c'est un DES ECB sans padding en version 56 bits. Le mot de passe à sert de clé pour chiffrer la chaîne KGS!@#$%
La sortie du DES sera le LM hash.

Pour te créer une application, il te faut d'abord connaître le choix du langage. Ensuite, tu devras chercher l'utilisation de bibliothèque cryptographique. Perso, j'avais fait ce programme en Java. Mais, tu peux aussi le faire en C, python, etc. Bref, que de choix.

Cdlt,
0
Totes Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   1
 
Javais pour but de le faire justement en java

tu as l'air de bien connaitre le sujet mais pour moi DES c'est déjà flou alors "DES ECB" "padding" tu me mets dans le brouillard

ensuite je débute en java mais je pense pas que ce soit un programme super compliqué

Tu as des sources pour aider ?

Cordialement Totes
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Voici un lien qui devrait t'intéresser : http://davenport.sourceforge.net/ntlm.html
0
Totes Messages postés 22 Date d'inscription   Statut Membre Dernière intervention   1
 
Ok merci beaucoup pour ce lien j'espere que ça cause un peu de lm et pas que de ntlm

Merci fiddy
0