C++ でクライアント/サーバー アプリケーションを構築しており、各クライアントにパスワードを提供する必要があります。明らかに、転送中にこれを安全にしたいので、パスワードを暗号化する方法を検討しています。サーバー アプリケーションのみが再度暗号化解除できるようにします。
私が抱えている問題は、必ずしも関数を機能させることではなく、それをコードに関連付けるために何をする必要があるかを理解することです。私は理解しようとしており、MSDN を読んでいます (そのように感じます) が、まだ学習しているだけなので、実装に関する明確で正確なガイダンスが本当に必要です。
これは正しいと思いますか?
- サーバーとクライアントの両方で CSP へのコンテキストを取得します。
- サーバーでキーを生成するか、キーをロードします (何でも)。
そして私は
サーバーから公開鍵をエクスポートしてクライアントに送信すると、クライアントは鍵をインポートし、パスワードを暗号化して返し、サーバーだけが再び復号化できるようにします。(試してみると失敗します)。
または、私はそうしますか
セッション鍵、または交換鍵ペアで暗号化された交換鍵ペア (単一公開) をエクスポートしますか?
ああ、私はとても迷っています。はっきりと説明することさえできません。
これを理解するのを手伝ってください...