2012-03-27 14 views
0

私はいくつかの異なるウェブサイトに置かれるjavascriptプラグインを書く予定です。プラグインは、現在ログインしているユーザーに対して現在訪問しているWebサイトを自分のデータベースにブックマークします。永遠に生きるPHPセキュア認証

私のウェブサイトのユーザーは、ユーザー名/メールアドレスとパスワードでログインできます。今私は、ユーザーのブラウザのクッキーに期限切れにならないアクセストークンを保存したいので、プラグインのブックマークボタンをクリックするたびに、javascriptはCookieを取得し、 。

私の質問は、安全な方法は何ですか?私は単純にユーザーIDをクッキーに格納することができますが、これはどのユーザーでも簡単にシミュレートすることができます。 MD5ハッシュでユーザーIDを暗号化すると、ハッシュはユーザーログインごとに同じになり、ソリューションではなくユーザーIDとして機能します。どのような解決策を私にお勧めしますか?私のアルゴリズムへのリンクも書いてください。

答えて

1

Challenge-Responseブラウザに保存されているデータに基づいてプロトコルを使用します - おそらくサーバー上の "チャレンジ"と暗号化された "レスポンス"ハッシュで暗号化されたキーを保存するブラウザでlocalStorage or domStorageサーバーによって検証されると、ユーザーは進行することができます。

これは、ユーザーのブラウザを保護することはできませんが、外部の監視者(HTTPSを使用している必要があります。

例プロトコル:Secure Remote Password Protocol(クライアント側のJavaScript implementation

+0

私はupvoteするのが大好きだが、W3Schoolsのにリンクしないでください。 – CodeCaster

+0

_localStorage_リンクをMDNに更新しました。 –

+0

@David、あなたが私であれば、明示的なログアウトやクッキーが削除されない限り、ユーザを識別して永遠にユーザのコンピュータに保存するクッキーに何かを保存しなければならない場合、何を保存しますか?最大のセキュリティを保証するために格納する前に、そのデータを暗号化するためにどのアルゴリズムを使用しますか? – Neutralizer