# 証明書デコーダー

X.509証明書、またはPEMもしくはbase64 DER形式の証明書チェーン（最大10件）を読み取ります。各証明書について、サブジェクト、発行者、シリアル番号、有効期間と残り日数、公開鍵、署名アルゴリズム、サブジェクト代替名、鍵の用途、制約、CRLとOCSPの場所、SHA-256とSHA-1のフィンガープリント、SPKIピンを表示し、自己署名か次の証明書による署名かを確認します。

## よくある質問

### デコーダーはどの入力形式に対応していますか？

-----BEGIN CERTIFICATE-----で始まるPEMブロックを1つ以上貼り付けてください。.pem、.crt、fullchainファイルに含まれる形式です。または、ヘッダーのないbase64 DER形式の証明書を1件貼り付けてください。最大10件の証明書を、貼り付けた順にデコードします。

### ステータスはどのように判定されますか？

デコーダーは現在時刻をnotBeforeとnotAfterの日付と比較し、証明書が有効か、期限切れか、まだ有効でないかを、残りまたは経過した日数（整数）とともに報告します。日付はUTCのISO 8601形式で表示されます。

### 「次の証明書による署名」とはどういう意味ですか？

チェーンでは、各証明書の署名を、その次に続く証明書の公開鍵で検証します。これによって、リーフ、中間、ルートの順序を判定します。「いいえ」と表示された場合、順序が誤っているか、チェーンが不完全です。これは署名の確認のみであり、トラストストア、失効情報、名前制約に対する完全なパス検証ではありません。

### 自己署名証明書はどのように検出されますか？

発行者がサブジェクトと一致し、自身の公開鍵で署名を検証できる証明書は、自己署名と判定されます。ルート証明書は自己署名であり、テスト用や内部用の証明書にも自己署名のものが多くあります。

### どのフィンガープリントが表示されますか？

SHA-256とSHA-1のフィンガープリントは、DERエンコードされた証明書全体のハッシュです。ブラウザーやopenssl x509 -fingerprintが表示する値と同じく、大文字の16進数をコロンで区切って表示します。比較にはSHA-256を使ってください。SHA-1はもはや衝突耐性がないためです。

### SPKIピンは何に使われますか？

証明書のSubjectPublicKeyInfoのSHA-256ハッシュをbase64で表したものです。HTTP公開鍵ピンニング、Androidのネットワークセキュリティ設定、多くのモバイル向けピンニングライブラリで使われます。同じ鍵を使って証明書を更新しても値は変わりません。

### どの拡張が説明されますか？

サブジェクトと発行者の代替名、鍵の用途、拡張鍵用途、パス長を含む基本制約、サブジェクトと認証局の鍵識別子、CRL配布ポイント、OCSPと認証局の発行者URLを含む認証局情報アクセス、CA/Browser ForumのDV、OV、IV、EVマーカーを含む証明書ポリシーが説明されます。その他の拡張は名前またはオブジェクト識別子で表示されます。

### ウェブサイトの証明書を取得するにはどうすればよいですか？

openssl s_client -connect example.com:443 -showcertsを実行し、出力からPEMブロックをコピーするか、ブラウザーの証明書ビューアーから証明書を書き出してください。SSLCertificate Checkerでサイトの証明書を検索することもできます。

### 証明書は保存されますか？

いいえ。証明書はリクエストごとにメモリ上でデコードされ、ログに記録されたり保存されたりすることはありません。証明書に含まれるのは公開データのみですが、対応する秘密鍵はここに貼り付けないでください。

### 利用上限はありますか？

入力は131,072文字までで、証明書は最大10件まで読み込めます。OpenSSLのTRUSTED CERTIFICATEブロックは読み取れないため、先にopenssl x509 -in cert.pem -out plain.pemで変換してください。

ここに広告を掲載しませんか？

[メールでお問い合わせ](mailto:hi@dennn.is?subject=OneClick%20Pro%E3%81%A7%E3%81%AE%E5%BA%83%E5%91%8A%E6%8E%B2%E8%BC%89)

[広告 WordPress向けのエージェント対応プラグインスイート。](https://sleekwp.com/?ref=oneclickpro)
