0

したがって、基本的にはCookieを使用してユーザーをログインさせようとしており、パフォーマンスを向上させるためにDBにクエリを実行しません

ここに簡単なアイデアがあります:

  1. SSL経由ですべてを送信
  2. グローバル秘密鍵 A と秘密鍵 B を設定する
  3. 登録時およびパスワード変更時にランダムな検証文字列を生成する
  4. 確認文字列を A で暗号化し、cookie に保存する
  5. 検証文字列を B で暗号化し、cookie に保存する
  6. ユーザーがログインしようとすると、各文字列を A と B で復号化し、一致するかどうかを比較します

次の場合、それが良い考えかどうか疑問に思っています。

bouncycastle ASE-256、Digestなどを使用して、実際にJavaで暗号化を行うにはどうすればよいですか?

Redis のような超高速 DB にセッション変数を格納することによる認証と比較した場合、この暗号化/復号化プロセスはパフォーマンスにどの程度影響しますか?

そうでない場合:どうすればいいですか..

4

1 に答える 1

2

データが認証トークン (Cookie) に存在することを復号化して確認するときに、認証データと一緒に既知の値を単純に暗号化できます。2 つのキーを使用する必要はありません。

データベースとの速度の違いは、データベースの構成と実行される暗号化によって異なります。私はまず実証済みのスキームを選択し、パフォーマンスが他に選択肢がない場合にのみ独自のスキームを発明したいと思います.

http://security.stackexchange.comでよりよく検証されたスキーム。

于 2013-03-05T17:36:48.160 に答える