yamamoWorks

.NET技術を中心に気まぐれに更新していきます

PEM形式の秘密鍵/公開鍵を.NETで扱う方法

.NET で公開鍵暗号を行うには RSACryptoServiceProvider
クラス等を使いますが、鍵の扱いがいまいちでBLOBのバイナリやXMLでのエクスポート、インポートしかサポートされていません。

なので、手元にOpenSSL等で作成したPEM形式の秘密鍵や公開鍵があっても素直に使えないのです。

どうやってPEM形式の鍵情報を RSACryptoServiceProvider
に食わせようかとずっと悩んでいたのですが、PEM形式から.NETで扱えるXML形式に変換してくれるコードを発見しました!

http://www.jensign.com/opensslkey/index.html
ありがたや~