2010-07-22 2 views
0

Je crée une application iphone dans laquelle je dois envoyer des données à mon serveur PHP. Par exemple, je fais une requête HTTP comme ceci:Comment créer un jeton d'authentification pour un message envoyé au serveur?

http: example.com/append.php data1 = X = Y & données2 & token = Z

X et Y sont mes données connues et je veux pour calculer Z avec un algorithme qui prend X et Y sont des entrées et produire Z.

Donc, quand je reçois X, Y, Z dans le serveur, je peux exécuter le contraire du même algorithme là pour vérifier l'originalité de X et Y.

Je ne sais pas quoi utiliser pour former le Z. Quelqu'un peut-il m'aider s'il vous plaît?

Merci

Répondre

0

Voici comment je le fais. Je crée un hachage md5 à partir d'un salt.data1.data2. Le sel est uniquement connu par l'application cliente et le serveur.

Si vous recalculez le hachage sur le serveur et que le jeton est le même, les données sont correctes.

$salt = "test"; 
$token = md5($salt.$data1.$data2); 

(Le Z dans votre explication devient le md5 calculé à partir de sel + data1 + données2.)

+0

Merci pour votre réponse rapide. J'ai compris comment le faire du côté serveur maintenant. – samdeV

0

Hashes et sels.

Si votre seul but est de vérifier l'originalité de x et y, vous pouvez créer un hachage salé sur les deux valeurs. Cela signifie que vous prenez x, y et un sel (mot de passe connu à la fois par le serveur et le client) et créez un hachage. Donc, vous créez cela des deux côtés et comparez les valeurs. Quelque chose comme ceci:

$x = 435345; 
$y = 2323; 
$salt = 'password'; 
$token = md5($x.$y.$salt); 
Questions connexes