web-dev-qa-db-ja.com

Base64のX.509証明書公開鍵

使用している証明書のbase64公開鍵を見つけようとしています。証明書の[詳細]タブにある公開鍵はbase64ではないため、base64公開鍵を提供するように求められます。

Base64バージョンの公開鍵を取得する方法はありますか?証明書から公開鍵を取得し、base64に暗号化することで実行できますか?たとえば、以下は私が証明書用に見つけた公開鍵です。

"30 82 01 0a 02 82 01 01 00 bc 39 25 06 5d 99 a4 05 5f e7 fc 59 1f 28 b5 48 d2 0d 2e ea aa eb ed 74 ef c9 2f 90 f8 ad 96 80 24 0f c2 dc 71 58 ea 3e fa 5c c9 29 87 51 7c cb 54 28 7c f9 10 15 b0 ac 8f eb 9e d3 d7 70 35 93 8a c7 1f 45 97 e3 c8 0b 72 a1 65 79 cf 74 6c 87 d9 eb 7d a0 b9 0e 4b 45 3d 81 f0 18 6e 9f 97 11 54 cb d8 e2 35 1a 4b e7 4d bf 68 1d ad 4e ca 57 25 9e 2f f7 f8 44 6f c2 0c 78 d8 19 ef 22 5a 9f 78 9f 17 1a b8 c0 72 0f 51 5c 21 6f c9 1e 80 de 7c 25 47 d0 28 01 2a 94 6e 34 39 1f 42 39 be 5f 0e c2 7c b4 fa a5 b9 05 4e 9c 45 75 63 a3 87 c3 e5 dd 54 35 85 d4 8d c2 5f da 6f 86 12 cf b3 8b 65 23 1d 34 43 c5 2e b1 49 56 56 25 93 f7 09 bf 9e 48 21 91 6a de 27 9e 6d 38 2f f5 f4 93 23 46 e8 41 b4 21 b4 02 50 79 71 48 72 0f 57 46 a0 20 c0 19 02 f9 d4 76 02 2d 85 fd 79 cd 70 fc 41 8b 02 03 01 00 01 "

これをbase64に変換するにはどうすればよいですか?助けてくれてありがとう!

7
user2220871

私はあなたが窓にいると仮定します。

私がそれをした方法は、証明書をインストールすることでした。証明書を開く(mmcからまたは直接)問題の証明書を開きます。

[詳細]タブには、[ファイルにコピー]オプションがあります。エクスポートファイル形式が表示されるまで、[次へ]を押します。

Base-64でエンコードされたX.509(.cer)を選択します。デスクトップに保存します。

このファイルをメモ帳で開くと、---- BEGIN CERTIFICATE ----と----- END CERTIFICATE ------の間にbase64でエンコードされた公開鍵が表示されます。

編集:

このbase64文字列を保存してから、コードに変換して実際の証明書を取得します。とても簡単です。

var base64Cert = // read from Db or somewhere
var base64EncodedStr = Encoding.Unicode.GetString(base64Cert);
var cert = new X509Certificate2(Convert.FromBase64String(base64EncodedStr), "password", X509KeyStorageFlags.PersistKeySet);
if(cert != null)
{
    // use certificate
}
16
Peter Lea

ASN.1 Editor を使用できます。それはあなたがHEX、BASE64、PEMから前述のいずれかに変換することを可能にする素晴らしいデータコンバーターを持っています。

enter image description here

1
pepo