どのように輸入PKCS#8RSA privateKeyが作成したOpenSSL)クライアントまで、フルのC#
-
19-09-2019 - |
質問
ようにしているかを読み込むにはprivateKeyを用いたOpenSSL PKCS#8RSA C#ソースコードを使用しない外部の図書館があります。
は誰かによって全然違います。
解決
ための最も簡単な方法はないこ と 外部の図書館を利用(無料) Chillkatの公開-非公開キーコンポーネント:を使用、輸入の鍵をベースに制御を行っています。 わずか数行のコード る場合、あなたが支払うの$149またはその他の図書館を扱う一般的な暗号化概念につくりました。
と異なり、正しまいました。NETフレームワーク、モノプロジェクト は ですので、 PKCS8実施 のための フルのC#ソース が可能です。この場合に適した基点とした場合は絶対にできな外部ライブラリと、(LGPL2.0)ライセンスに関連するモノのコード作品のためにお---
最後に、 PKCS#8形式 が難しくな解析は、RSA/DSA鍵のペアを対象として PKCS#11 比較的簡単に変換します。純X509Certificateだけがすべてのビットに行くのもとで実際に行っVB.NET 以前から、残念ながらないので、共有することができる。
他のヒント
あなたの答えをありがとうます。
私のスクリプトは、RSAキーを作成するために私が使用したOpenSSL聖霊降臨祭ます:
(Linuxのスクリプト)
openssl genrsa -out ${NAME}_openssl.key 2048
openssl pkcs8 -topk8 -in ${NAME}_openssl.key -nocrypt > ${NAME}.key
openssl req -new -x509 -key ${NAME}.key -out ${NAME}.crt -outform DER
C#では、私たちは、XML形式でのPrivateKeyを必要としています。私はこれを行うにはこののパーサを使用します。
私たちが使用する必要がありますデ挑戦を復号化するには:
byte[] challange = server.getChallenge();
RSACryptoServiceProvider rsaProvider = new RSACryptoServiceProvider();
rsaProvider.FromXmlString(Demo.Properties.Resources.XmlPrivateKey);
byte[] plaintext = rsaProvider.Decrypt(challange, false);
聖霊降臨祭のサーバ証明書を暗号化するには、我々が使用する必要があります:
RSACryptoServiceProvider rsaProvider = x509.PublicKey.Key as RSACryptoServiceProvider;
byte[] answer = RsaProvider.Encrypt(plaintext, false);
JavaScienceコンサルティングをお寄せいただきありがとうございます。