FORSV : Forum de Sciences et de Vie

Forum scientifique
 
AccueilAccueil  GalerieGalerie  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  

Partagez | 
 

 (in)digest !

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
pem



Nombre de messages : 912
Date d'inscription : 08/02/2007

MessageSujet: (in)digest !   Ven 1 Juin 2007 - 20:59

Quelqu'un connaitrait-il la méthode pour encoder un mot de passe selon la méthode digest de http ? J'ai passé l'après-midi à rechercher le modus operendi pour ne trouver que la méthode à appliquer sur un client pour répondre à une telle requête. À ça ! J'ai tout le détail pour créer un client http, même pour les option non encore implémenter, mais rien pour générer le cryptage du mot de passe Le pb, c'est que le mot de passe n'est pas en clair dans le fichier de mot de passe, il est codé en md5 mais ce n'est pas le mot de passe lui même mais une concaténation avec d'autres éléments.


apache fourni un outil, htdigest, mais il n'est utilisable qu'en ligne de commande car purement interactif. Or je ne peux pas utiliser ce moyen.

Donc si qqn pouvait me fournir la méthode miracle, voire un moyen de truander htdigest pour qu'il croit être face à un humain, il aura toute ma reconnaissance (qui dans mon état actuel est profonde).

Pour ceusses qui n'auraient pas encore captés, je cherche à fabriquer mon .htpasswd pour une protection par .htaccess qui utilise la methode Digest

PeM
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pem



Nombre de messages : 912
Date d'inscription : 08/02/2007

MessageSujet: Re: (in)digest !   Lun 4 Juin 2007 - 21:18

Heu ? Ça ne vous inspire pas ?

PeM, Help ! Hilfe ! ¡ Ayuda ! Ayuto ! SOS ! À l'aide quoi !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jibus



Nombre de messages : 2607
Date d'inscription : 14/02/2007

MessageSujet: Re: (in)digest !   Lun 4 Juin 2007 - 21:28

hello

ben non... le gros probleme c'est que je crois que chacun peut faire un peu ce qu'il veut... en phpo il y a une fonction digest je crois... mais tu as un truc par defaut, que je ne sais pas ce qu'il fait, et tu as d'autres parametres pour lui dire une fonction en particulier et un cle a utiliser pour la digestion...

comme tu dis si bien, c'est assez indigeste..

mais bon, quelque part, dans ton application, c'est a toi de determiner comment tu veux faire ce digest... tu peux toi sauvegarder le password en lui mettant le digest que tu veux, et, par la suite, quand l'utilisateur va rentrer son password, tu peux toi aussi faire le calcul du digest pour comparer le resultat digere contre ce que tu as dans ta base de donnees non?

'jib
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pem



Nombre de messages : 912
Date d'inscription : 08/02/2007

MessageSujet: Re: (in)digest !   Lun 4 Juin 2007 - 22:10

Le pb, c'est que derrière, apache "décode" à sa façon. Mais qu'elle est cette façon ? Si je le savais, je pourrai reproduire le digest, mais je n'arrive pas à trouver la méthode utilisée par apache.

Tout ce que je sais, c'est que la fonction htdigest fournie avec apache n'utilise que le login, le mot de passe et le "realm" (le titre qui apparaît lorsquela navigateur demande les codes d'accès). Il n'y a rien d'autre. J'avais cru comprendre que le digest était MD5("login:realm:passe"), mais ça ne marche pas.

La solution serait peut-être de lire le code de cette fonction htdiest ? Apache est bien libre ? Où peut-on trouver le source ?

PeM
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jibus



Nombre de messages : 2607
Date d'inscription : 14/02/2007

MessageSujet: Re: (in)digest !   Lun 4 Juin 2007 - 22:17

http://www.apache.org/

le truc c'est que, prendre ca, c'est risque et tordu.. tordu dans le sens ou, si tu veux bosser avec ca, tu vas faire un truc 100% specifique a apache...

'jib
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pem



Nombre de messages : 912
Date d'inscription : 08/02/2007

MessageSujet: Re: (in)digest !   Sam 9 Juin 2007 - 17:38

Pour info, j'ai trouvé le code de htdigest ; il est perdu dans le source d'apache (en gros, ce n'est pas un programme indépendant, mais une biblio compilée en même temps que le reste d'apache. Je n'ai pas encore traduit ça en php.

jib', je m'en moque que ce ne sois que pour apache, ça ne fonctionnera que sous apache (c'est pour le taf).

Mais ta remarque me surprend un peu ; soit il existe une norme digest et apache, IIS ou tout autre serveur doivent l'implétenter de la même façon (même entrée, même sortie). Soit c'est prope au serveur et alors ta remarque est forcément toujours vraie.

PeM
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Loceka

avatar

Nombre de messages : 300
Date d'inscription : 10/02/2007

MessageSujet: Re: (in)digest !   Sam 9 Juin 2007 - 19:39

Je pense que ce qu'il voulait dire c'est que pour encoder un mdp il existe des outils plus standards qui marcheraient quelque soit le serveur. Ce qui permet de réutiliser ce que tu as fait si jamais il y'a une migration du serveur (ou si tu dois le réutiliser toi ailleurs).

C'est quand même un gros avantage. Smile
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pem



Nombre de messages : 912
Date d'inscription : 08/02/2007

MessageSujet: Re: (in)digest !   Dim 10 Juin 2007 - 13:57

Oui, mais on en revient à ma question : il doit y avoir une norme.

Pourtant, ce n'est pas le cas. Chez free par exemple, aucun mot de passe n'est encodé ; si vous protégez avec un .htaccess un dossier, le .htpasswd contient les mmots de passe en clair.
Sur nos serveurs, ils sont forcément encodés (doit y avoir un paramètre pour).
Donc qqn qui vient de free chez nous ou l'inverse devra quoi qu'il arrive changer son fichier.

Et on est dans les deux cas sous apache.

PeM
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Loceka

avatar

Nombre de messages : 300
Date d'inscription : 10/02/2007

MessageSujet: Re: (in)digest !   Dim 10 Juin 2007 - 14:20

En fait je pensais plus à faire ça avec du PHP et une base de donnée (ou un fichier).

Le PHP dispose d'une fonction "md5(String)" qui retourne la valeur md5 de la chaîne. Après tu le stockes dans une BDD ou dans un fichier XML et voilà. Smile

En tout cas c'est plus portable (sauf peut-être la BDD mais rare sont les serveurs qui n'en disposent pas).
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jibus



Nombre de messages : 2607
Date d'inscription : 14/02/2007

MessageSujet: Re: (in)digest !   Lun 11 Juin 2007 - 16:53

salut pem

je rejoins loceka... en gros, je pense qu'il vaut mieux utiliser des trucs standards que des fonctions propres a un serveur... des trucs comme le MD5 par exemple, c'est impeccable. c'est un algorithme standard. sur toutes les machines, le MD5 d'une chaine de caractere te donnera le meme resultat.

imagine, tu encryptes tous les password avec le digest de apache. un beau jour, apache decide de changer son digest, et la tu te retrouves avec plein de password encryptes que tu ne peux plus comparer parce que tu n'as plus la fonction digest sous la main parce que ca n'est pas un truc standard..

'jib
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pem



Nombre de messages : 912
Date d'inscription : 08/02/2007

MessageSujet: Re: (in)digest !   Lun 11 Juin 2007 - 22:30

Entièrement d'accord et c'est ce que je ferai.
Le hic, c'est la chaine que vous passez au md 5 ...


J'ai commencé à porter le programme en php. Ben, c'est pas simple. Il utilise 50 bibliothéques, déclare un contexte qui sert je ne sais à quoi, est bourré de directives de compilation sur des variables OS dont j'ignore de quoi il s'agit. Bref, c'est pas gangé !

PeM Rolling Eyes Sad
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jibus



Nombre de messages : 2607
Date d'inscription : 14/02/2007

MessageSujet: Re: (in)digest !   Mar 12 Juin 2007 - 0:44

pem a écrit:
Entièrement d'accord et c'est ce que je ferai.
Le hic, c'est la chaine que vous passez au md 5 ...

euh... ben la chaine, c'est le password...

non??

'jib
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Loceka

avatar

Nombre de messages : 300
Date d'inscription : 10/02/2007

MessageSujet: Re: (in)digest !   Mar 12 Juin 2007 - 12:08

Si tu veux, ceci est LE site référence pour le PHP :
http://fr.php.net/

Il existe son équivalent en anglais mais ils sont très similaires voire identiques donc autant préférer celui-ci. Very Happy

Sinon si tu as besoin d'aide pour "débuter" en PHP j'ai pas mal de temps libre en ce moment (sauf le matin... Rolling Eyes).
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
pem



Nombre de messages : 912
Date d'inscription : 08/02/2007

MessageSujet: Re: (in)digest !   Mer 13 Juin 2007 - 0:06

Ben non. Le realm fait partie de l'encodage : mêmes passes, realm différents = encodages différents

Exemple avec le mot 'passe' et les realms 'protectiont' et protection2' :
nom1:protection:a943a14376a4111ffb1f4f052eb27291
nom1:protection2:e706b52b31b1c29dfdae4fa18f00aeec

Et puis le ponpon : l'utilisateur ! Même realm, même passe, utilisateurs différents :
nom1:protection:a943a14376a4111ffb1f4f052eb27291
nom2:protection:9e162b0f4681dba247be5ed9de473e37

Voili, voilou ! Very Happy

PeM, qui connait php.net
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: (in)digest !   

Revenir en haut Aller en bas
 
(in)digest !
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Récit d'un vécu... paru sur Sélection du Reader's Digest
» novalac ar digest
» Citations Nietzsche
» ENFAMIL AR
» quel lait utiliser?

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORSV : Forum de Sciences et de Vie :: Sciences :: Informatique-
Sauter vers: