[Java] encoder une chaine

Bonjour,

Est ce que quelqu'un connait un moyen de coder une chaine en Java.

En fait je crée des cookie contenant le login et le password de l'utilisateur connecté.

Mais il faudrait que je puisse coder le password avant de le mettre dans le cookie.

J'ai essayé en transformant en ASCII suivant un exemple trouvé sur un forum.
String chaine = "Ma chaîne à traduire !";
        
        // traduction en tableau de code ASCII :
        byte[] bytes = chaine.getBytes("ASCII");
        
        // affichage à l'écran :
        for( int i=0; i<bytes.length; i++ ) {
                System.out.println( bytes[i] );
        } 


Résultat :
77
97
32
99
104
97
63
63
110
101
32
63
63
32
116
114
97
100
117
105
114
101
32
33


Mais je n'arrive pas à décoder ensuite !

Si quelqu'un peut m'aider

Merci d'avance

Marianne
Configuration: Mac OS X
WebObjects 5.2
XCode

5 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    GARK !

    On ne met jamais un password dans un cookie !

    On gère une session côté serveur, et c'est l'identifiant de session qu'on stock dans le cookie.

    Procédure:
    1) page de login
    2) le serveur reçoit login/password, génère un identifiant de sessions aléatoire, le stock et l'envoie dans le cookie.
    3) le client utilise ce cookie pour accéder à toutes les pages.
    4) le serveur vérifie ce cookie à tout accès de page. Si cookie non trouvé, renvoie l'utilisateur à la page de login.
    5) l'utilisateur peut à tout moment cliquer pour se déloguer. Le serveur reçois la demande de logout, détruit la session stockée et vide le cookie de session de l'internaute.

    C'est la bonne façon de faire.

    Mettre le mot de passe dans le cookie, même chiffré, est un risque de sécurité très important.
    1. ok, je vais recommencer alors :-)

      Une petite question : est ce que si l'utilisateur ne se délogue pas, la prochaine fois qu'il ouvre l'appli il apparaitre directement logué ?

      merci encore

      Marianne

      :-)

      1. Tout dépend, (par défaut en asp.net, ) l'objet session est détruit après 20min d'inactivité, mais on peut très bien changer la valeur du timeout et même rajouter du code pour déloguer automatiquement le user après qu'il ait quitté une certaine "zone".
    2. Modérateur
      Une petite question : est ce que si l'utilisateur ne se délogue pas, la prochaine fois qu'il ouvre l'appli il apparaitre directement logué ?

      C'est une possibilité.

      Mais il vaut mieux choisir, côté serveur, de détruire la sessions au bout de x minutes d'inutilisation.
      C'est plus sûr.
      1. ok merci beaucoup a vous deux

        je vais voir ce que je vais pouvoir faire :-)

        ++