このセクションでは、暗号化されたメッセージを復号化する手順について説明します。
暗号化されたメッセージを復号化するには
- デジタルでエンベロープされたメッセージへのポインターを取得します。
- 証明書ストアを開きます。
- メッセージから、受信者識別子 (マイ ID) を取得します。
- 受信者識別子を使用して証明書を取得します。
- 証明書の秘密キーを取得します。
- 秘密キーを使用して、対称 (セッション) キーを復号化します。
- メッセージから暗号化アルゴリズムを取得します。
- 復号化されたセッション キーと暗号化アルゴリズムを使用して、データを復号化します。
CryptDecryptMessage は、 メッセージを復号化するためのすべてのタスクを実行します。ただし、構造体やその他のデータの初期化は引き続き必要です。
CryptDecryptMessage を使用してデータを復号化するには
- 暗号化された BLOB へのポインターを取得します。
- 証明書ストアを開きます。
- 証明書ストア配列を作成します。
- CRYPT_DECRYPT_MESSAGE_PARA構造体を初期化します。
- CryptDecryptMessage を呼び出して、メッセージに含まれるデータを復号化します。
C プログラムの例: CryptEncryptMessage と CryptDecryptMessage を使用すると 、提示したプロシージャが実装されます。 コメントは、プロシージャの各ステップを実行するコード要素を示します。 この関数の詳細については、「 CryptDecryptMessage」を参照し、データ構造の詳細については、 CRYPT_DECRYPT_MESSAGE_PARAを参照してください。