IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Sécurité] Comment crypter input password ?


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 84
    Points : 63
    Points
    63
    Par défaut [Sécurité] Comment crypter input password ?
    Bonjour a tous !

    Je me pose une question et je n'arrive pas a savoir si cela est possible !

    Est-il possible de crypter la valeur d'un élément "input password"

    En effet, je suis en train de développer un intranet et je souhaiterais que lorsque la personne se connecte son mot de passe ne soit pa envoyé en clair sur le réseau.

    Je pense qu'il y aura un problème comme PHP est un langage serveur, mais si ya quelqu'un qui a une idée ca serait bien sympa

    Merci d'avance

    Tchô !

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    Tu peux fonctionner en https mais je ne pense pas que cela soit possible directement en http.

  3. #3
    Membre éclairé Avatar de haltabush
    Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    726
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 726
    Points : 835
    Points
    835
    Par défaut
    Il n'y a pas 36 solutions (simples) : https.
    edit : grillé

  4. #4
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 84
    Points : 63
    Points
    63
    Par défaut
    Merci pour les réponses et désolé du retard pour re-répondre

    J'ai encore une petite question, je sais que ca n'as pa reellement de rapport avec le forum ou je poste mais bon !

    la valeur de l'input elle pe pas etre chiffré grace au md5 et avec AJAX ?

    Merci encore pour votre rapidité de réponse à mes petites questions

    Aurevoir !

  5. #5
    Membre éprouvé

    Inscrit en
    Janvier 2006
    Messages
    969
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 969
    Points : 958
    Points
    958
    Par défaut
    Et pourquoi pas un cryptage à la volée avec Javascript (avant l'envoi) ?

  6. #6
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    tu peux encoder en javascript, à condition d'utiliser un hash irreversible (ex: md5), sinon ça ne sera pas sécurisé étant donné que l'algo de cryptage est envoyé au client.
    Quoiqu'il en soit, si tu optes pour du cryptage avec javascript, tout navigateur sur lequel javascript n'est pas actif sera incapable de se connecter, et (selon comment est fait ton code js) enverra peut être même le mot de passe en clair.
    Si tu veux sécurisé une authentification, il est clair que https est la meilleure solution

  7. #7
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 84
    Points : 63
    Points
    63
    Par défaut
    Merci pour toutes ces réponses très constructives

    J'ai reussi a faire ce que je voulais grace au script MD5 en javascript

    Merci encore a tous !

    Bonne continuation !

    PS : Hervé Saladin, pas mal le lien "Ne cliquez pas sur ce lien"

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Pour info, avec les méthodes de crypto à clé publique et clé privée, on peut envoyer l'algo pour encoder sans pouvoir le décoder...

  9. #9
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Citation Envoyé par stringman62
    Merci pour toutes ces réponses très constructives
    J'ai reussi a faire ce que je voulais grace au script MD5 en javascript
    Juste une petite remarque au niveau de la sécurité.

    Le fait de crypter ton password pour qu'il ne véhicule pas en clair sur le
    réseau n'est pas une mauvaise chose, mais cela n'apporte rien en terme
    de sécurité.

    Celui qui "snif" les paquets verra la valeur md5 du mot de passe. Il ne pourra
    pas savoir le mot de passe original, mais il pourra reproduire une requête avec
    la valeur du md5 et pourra se loguer !

  10. #10
    Membre habitué Avatar de Azazel.fr
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 170
    Points : 196
    Points
    196
    Par défaut
    je pense que le mieux est de garder le mot de passe en clair, puis de le comparer en bdd en suivant la technique du grain de sel !

  11. #11
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 84
    Points : 63
    Points
    63
    Par défaut
    Bonjour a tous !


    En effet je viens de me rendre compte que si la personne recupere l'en-tête HTTP, elle recupère le hash MD5 et donc en recréant une requete elle peut aisement se loguer.

    L'idée du grain de sel me parait simple a mettre en oeuvre et assez securisé.

    Arretez moi si je n'ai pas compris la methode :
    En fait, le grain de sel est une valeur aleatoire,relative a l'utilisateur, stockée en clair dans la base de données.

    Et lorsque la personne tente de se loguer 2 requetes se font:
    - la premiere verifie si le login existe dans la base et donne le grain de sel.
    - la seconde verifie le mot de passe concaténé au grain de sel le tout chiffrer en MD5.

    Ai-je bien compris le truc ? ou suis-je complètement a côté de la plaque ?

    Merci encore a tous !

    Tchô !

  12. #12
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Salut,

    tu as bien compris, mais le grain de sel ne devrait pas être le même à chaque
    login. cela peut être une valeur aléatoire valable que pour un login.

  13. #13
    Membre habitué Avatar de Azazel.fr
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 170
    Points : 196
    Points
    196
    Par défaut
    effectivement, utilise la fonction rand() de php pour générer ce grain de sel ; genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $monGrainDeSel = rand(10000,99999); // un chiffre assez grand est plus sécurisé.

  14. #14
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 84
    Points : 63
    Points
    63
    Par défaut
    Ok donc pour chaque utilisateur, un grain de sel c'est bien ca?
    Ou alors, a chaque fois que la personne se logue un grain de sel est généré?

    Merci encore pour la derniere petite precision

    Tchô !

  15. #15
    Membre habitué Avatar de Azazel.fr
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    170
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 170
    Points : 196
    Points
    196
    Par défaut
    non pas à chaque connexion.
    un grain de sel par utilisateur.
    http://matthieu.developpez.com/authentification/#L2.2

  16. #16
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 84
    Points : 63
    Points
    63
    Par défaut
    MERCIIIII ! !! ! !

    C'est bien ce que je pensais.

    Je suis en train de mettre en oeuvre cette methode !

    Bonne continuation a tous !

    Et encore merci a tous pour tout ces renseignements !

    Tchô !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 22/06/2010, 02h20
  2. [HTML][CSS] Comment personnaliser INPUT type = FILE
    Par frochard dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 09/07/2009, 03h55
  3. Réponses: 17
    Dernier message: 19/01/2006, 13h51
  4. [Oracle/SQL-Server] Comment crypter une base de données ?
    Par [DreaMs] dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 28/11/2005, 18h02
  5. [Sécurité] comment récupérer le subject dans une page jsp?
    Par lalakers dans le forum Servlets/JSP
    Réponses: 13
    Dernier message: 13/07/2005, 11h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo