私はCrypto ++で作成されたDERコード化RSA鍵ペアと暗号を持っています。それらはBase64Encoded文字列です。私はまず、Base64からバイト配列にデータをデコードしますが、私はそれらをRSACryptoServiceProvider
にロードする方法がわかりません。C#でASN.1/DERでコード化されたRSA鍵ペアをロード
static void Main()
{
string pbkeystr = "mypublickey";
string pvkeystr = "myprivatekey";
string cipherstr = "mycipher";
byte[] pbkey = Convert.FromBase64String(pbkeystr);
byte[] pvkey = Convert.FromBase64String(pvkeystr);
byte[] cipher = Convert.FromBase64String(cipherstr);
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
//Set keys here..
//Decrypt the cipher using private key
rsa.Decrypt(pvkey, false);
}
キーを設定する機能はありません。私が見つけたのはImportParameters
メソッドで、RSAParameters
クラスのものがp
、q
、n
、モジュラス、指数などで構成されていました。私はこれらにアクセスできません。
文字列としてキーをロードする方法はありますか?キーをRSACryptoServiceProvider
にロードするにはどうすればよいですか?
Base64でエンコードされた文字列の内容は何ですか? DER/PEM ASN.1キー、または他の何か? – yaakov
それはCryptoからのDERです。++ – Kyojin