Cryptage

rere -  
Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour les costauds du PHP

Voici mon problème. Je viens de Objective C, et dans mon code je crypte un mot de passe de la manière suivante :

#define kSalt @"adJHGJKGTI^*&^*&877887hjg855"
//salt the password
NSString* saltedPassword = [NSString stringWithFormat:@"%@%@", txtPassword.text, kSalt];
//prepare the hashed storage
NSString* hashedPassword = nil;
unsigned char hashedPasswordData[CC_SHA1_DIGEST_LENGTH];
//hash the pass
NSData *data = [saltedPassword dataUsingEncoding: NSUTF8StringEncoding];
if (CC_SHA1([data bytes], [data length], hashedPasswordData))
{
hashedPassword = [[NSString alloc] initWithBytes:hashedPasswordData length:sizeof(hashedPasswordData) encoding:NSASCIIStringEncoding];
} else {
[UIAlertView error:@"Password can't be sent"];
return;
}

Mais je n'arrive pas au même résultat en php ...
 $pass="popo";
$Ksalt="adJHGJKGTI^*&^*&877887hjg855";

$acrypt = sha1($pass.$Ksalt);

echo utf8_encode($acrypt);
Comment dois je faire ?

Le mot de passe (popo) salé doit donner un code du genre :
»)6Ã<@à Â--¤"7 ¦Ã<8ÃzõR/ÃOE

merci pour votre aide :)
D.

5 réponses

  1. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    Bonjour,
    Ton code te retourne quoi pour le coup ?
    0
  2. rere
     
    Mon code sort :
    584a05f58429e5be24559dc1b8feb3d9cfe37543
    0
  3. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    ça ressemble bien à une sortie de sha1, ton utf8_encode ne fais rien sur cette chaîne.
    Tu peut toujours utiliser base64_encode si tu veux compliqué la chaîne de sortie.
    0
  4. rere
     
    Merci,
    voila mon retour base64_encode
    NTg0YTA1ZjU4NDI5ZTViZTI0NTU5ZGMxYjhmZWIzZDljZmUzNzU0Mw==

    A quoi ressemble
    »)6Ã<@à Â--¤"7 ¦Ã<8ÃzõR/ÃOE

    On dirait une chaine "mal" encode ?
    Genre 584a05f58429e5be24559dc1b8feb3d9cfe37543 qui serait passe par un CHARSET non ?

    Je pense meme que mon code de base (Objectif +) aurait du me generer un
    584a05f58429e5be24559dc1b8feb3d9cfe37543

    Qu'en pensez vous ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Nhay Messages postés 838 Date d'inscription   Statut Membre Dernière intervention   126
     
    A la base oui, c'est une chaîne mal encodé (Forcé par le utf8_encode), mais cette fonction ne doit agir que sur les accents, donc ça ne change rien sur une sortie de sha1 qui n'en a pas.

    Après, je ne sais pas pourquoi tu voulais faire ce utf8_encode à la base.
    Si c'est juste pour compliqué la chaîne, le base64 sera suffisant, sinon il ne sert à rien.

    Pour plus de sécurité, changer de méthode de cryptage par compte, sha1 est pas terrible, terrible.
    0