背景:秘密鍵 (XXX.key) とそのパスワードが提供されています。また、Windows Mobile 6 (.NET Compact Edition 3.5) を使用する PocketPC 用に開発されたアプリケーションがあります。 シナリオ:次の手順を使用してメッセージに署名する必要があります。 1. SHA1 アルゴリズムを使用してメッセージを暗号化します。2. 提供された秘密鍵を使用して、RSA アルゴリズムを使用して消化に署名します。3. 結果を Base 64 数字でエンコードされた同等の文字列表現に変換します。次の行で最初のステップを実装できます。
// Step 1
string message = "this message will be encrypted";
byte[] messageBytes = Encoding.UTF8.GetBytes(message);
SHA1 sha1 = SHA1.Create();
byte[] digestion = sha1.ComputeHash(messageBytes, 0, messageBytes.Length);
// Step 2 Here I need to sign with the private key.
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
// Step 3
string signedMessage = Convert.ToBase64String();
これらの手順は、インターネットにアクセスできない Pocket 用のアプリに実装する必要があることに注意してください。私の問題は、秘密鍵を RSA アルゴリズムに入れる方法がわからないことです。また、私はセキュリティの専門家ではありません。なぜこのようにする必要があるのか教えてください。私はこのように設計しませんでした。2番目のステップを実装することを知っている人はいますか?? 前もって感謝します。