私は2つのサイトを持っています。他のサイトのユーザーを認証するための最適な暗号化アルゴリズム(PHP)
最初のサイトでは、ユーザーがログインする必要があります。ユーザーが最初から2番目に移動すると、認証トークンが2番目のサイトに渡されます。ユーザーは2番目のサイトのURLを取得してログインすることはできません。
私はこの認証目的に使用できる最適な暗号化/認証アルゴリズムは何ですか?
私は2つのサイトを持っています。他のサイトのユーザーを認証するための最適な暗号化アルゴリズム(PHP)
最初のサイトでは、ユーザーがログインする必要があります。ユーザーが最初から2番目に移動すると、認証トークンが2番目のサイトに渡されます。ユーザーは2番目のサイトのURLを取得してログインすることはできません。
私はこの認証目的に使用できる最適な暗号化/認証アルゴリズムは何ですか?
典型的なPKスキーム。 site1では、auth情報をsite1の秘密鍵で暗号化し、site2の公開鍵で暗号化します。 site2の秘密鍵を使用するsite2 decrytp、およびsite1の公開鍵。関心の
機能:
私はAES暗号化を使用すると思います。
なぜ対称暗号化ですか?それはより速く、よりリソースを集中しません。 (CPU、帯域幅)鍵を配布するだけで、非対称暗号化と同じように安全です。
非対称暗号化の利点は、2つのクライアントが互いを知らない場合にのみ存在します。
+1を参照してください。単純なハッシュでも行うことができます。トークン「4d2.49a7f0d4.226c04be17a8f860acb7e4e5ce093d420b9a177e」、ここで、「4d2」は1634のユーザ1234、「49a7f0d4」はトークンの有効期限のタイムスタンプ、最後のビットは「sausage.4d2.49a7f0d4」のsha1()ハッシュです。 「ソーセージ」はサイト1とサイト2の間の共有秘密です – bobince
nb。そんなことをしたら、「ソーセージ」よりも強力な共有秘密を使ってください:-) – bobince
ソーセージは最高です!しかし、あなたが正しいです、辞書の単語はおそらく暗号化キーのあなたの最高のソースではありません... –
OpenIDプロトコルを確認してください。必要な処理を行います。
申し訳ありませんが、私はGoogleのPKスキームで何も見つかりません – Graviton
PK ==公開鍵。 http://en.wikipedia.org/wiki/Public_key – vartec
http://en.wikipedia.org/wiki/Public-key_cryptography –