RSACypthyServiceProviderを検索しているときに、MSDNで次のコードサンプルを見つけました。コメントの助けを借りて、コードの一部を理解できませんでした。
モジュラスと指数とは何ですか?
IVとは何ですか?
なぜ彼らは非対称暗号化を行うためにRijndaelManagedclassを使用しているのですか?私の検索に基づいて、RSACryptoServiceProviderは非対称暗号化機能を提供し、オブジェクトを作成するときに秘密鍵と公開鍵を自動的に作成します。ここでRijndaelManagedインスタンスの目的は何ですか?
誰か説明してもらえますか?
コードサンプル:
class Class1
{
static void Main()
{
//Initialize the byte arrays to the public key information.
byte[] PublicKey = {Somethink in byte}
byte[] Exponent = {1,0,1};
//Create values to store encrypted symmetric keys.
byte[] EncryptedSymmetricKey;
byte[] EncryptedSymmetricIV;
//Create a new instance of the RSACryptoServiceProvider class.
RSACryptoServiceProvider RSA = new RSACryptoServiceProvider();
//Create a new instance of the RSAParameters structure.
RSAParameters RSAKeyInfo = new RSAParameters();
//Set RSAKeyInfo to the public key values.
RSAKeyInfo.Modulus = PublicKey;
RSAKeyInfo.Exponent = Exponent;
//Import key parameters into RSA.
RSA.ImportParameters(RSAKeyInfo);
//Create a new instance of the RijndaelManaged class.
RijndaelManaged RM = new RijndaelManaged();
//Encrypt the symmetric key and IV.
EncryptedSymmetricKey = RSA.Encrypt(RM.Key, false);
EncryptedSymmetricIV = RSA.Encrypt(RM.IV, false);
}
}