Cryptage

Fermé
rere - 7 déc. 2013 à 18:24
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 - 8 déc. 2013 à 22:09
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

Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
7 déc. 2013 à 22:39
Bonjour,
Ton code te retourne quoi pour le coup ?
0
Mon code sort :
584a05f58429e5be24559dc1b8feb3d9cfe37543
0
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
8 déc. 2013 à 12:41
ç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
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nhay Messages postés 838 Date d'inscription vendredi 2 novembre 2012 Statut Membre Dernière intervention 17 décembre 2015 126
8 déc. 2013 à 22:09
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