2009-02-27 5 views
1

J'ai deux sites.Meilleur algorithme de chiffrement (PHP) pour authentifier les utilisateurs d'autres sites

Le premier site requiert la connexion des utilisateurs. Un jeton d'authentification sera ensuite transmis au second site lorsque les utilisateurs naviguent du premier au second. Les utilisateurs ne peuvent donc pas simplement saisir l'URL des deuxièmes sites et s'y connecter.

Quel est le meilleur algorithme de cryptage/authentification que je peux utiliser dans ce but d'authentification?

Répondre

6

Schéma PK typique. Sur site1, cryptez les informations d'authentification avec la clé privée de site1 et la clé publique de site2. Sur site2 decrytp en utilisant la clé privée de site2, et la clé publique de site1.

Fonctions d'intérêt:

+0

Je suis désolé, mais je ne trouve rien sur PK régime dans Google – Graviton

+0

PK == Clé publique. http://en.wikipedia.org/wiki/Public_key – vartec

+1

Voir http://en.wikipedia.org/wiki/Public-key_cryptography –

2

J'utilise le cryptage AES.

Pourquoi un cryptage symétrique? C'est plus rapide et moins gourmand en ressources. (CPU, bande passante) Vous pouvez simplement distribuer les clés et c'est aussi sûr que le cryptage asymétrique.

L'avantage du cryptage asymétrique existe uniquement si les deux clients ne se connaissent pas.

+0

+1. Vous pouvez également le faire avec un simple hachage. par exemple: jeton "4d2.49a7f0d4.226c04be17a8f860acb7e4e5ce093d420b9a177e", où '4d2' est l'utilisateur 1234 en hexadécimal, '49a7f0d4' est un horodatage d'expiration de jeton, et le dernier bit est un hachage sha1() de "sausage.4d2.49a7f0d4", 'saucisse' étant un secret partagé entre site1 et site2 – bobince

+1

nb. Si vous faites quelque chose comme ça, utilisez un secret partagé plus fort que «saucisse» :-) – bobince

+0

saucisse est génial! mais vous avez raison, les mots du dictionnaire ne sont probablement pas votre meilleure source de clés de chiffrement ... –

3

Assurez-vous de jeter un oeil au protocole OpenID, il fait ce que vous voulez.

Questions connexes