本文へスキップ
ecdsa.com

README 用の TLS 証明書バッジ

任意のドメインに使える 5 種類のライブ SVG バッジです。署名ヘルスチェックの総合評価、証明書の有効期限のカウントダウン、ネゴシエートされた TLS バージョン、証明書の鍵、ポスト量子暗号への対応状況を表示できます。バッジを選んでスタイルを決め、スニペット(Markdown、HTML、reStructuredText)をコピーするだけです。アカウントもトークンもビルド手順も不要です。

スタイル
例:

バッジを選択

以下のプレビューはすべて、エンドポイントがドメインについて今まさに生成しているものです。

README にコピー

上でドメインを入力すると、ここにスニペットが表示されます。

5 種類すべてのバッジ

signature health | Acert expires | in 34 daystls | 1.3cert key | ECDSA P-256post-quantum | not yet

「すべて Markdown でコピー」では、各バッジのデフォルトのラベルと、上で選択したスタイルが使われます。出力は 5 行で、そのまま貼り付けるとバッジが横一列に並びます。

そもそもバッジを置く理由

自動で最新の状態に保たれる

このバッジは、一度貼り付けたきりのスナップショットではなく、最新のスキャン結果から生成され、1 時間キャッシュされる SVG です。証明書を更新する、ECDSA に切り替える、TLS 1.3 を有効にする、といった変更を加えれば、CI ジョブもトークンも使わずに、1 時間以内にバッジに反映されます。

誰でも再現できるチェック

どのバッジも ecdsa.com/health/<ドメイン名> の完全なレポートにリンクしているため、読み手は色を鵜呑みにせず、何が測定されたのか(チェーン、アルゴリズム、プロトコルバージョン、有効期間)を正確に確認できます。

ありがちな障害を早めに察知できる

自分の README で有効期限バッジが黄色に変わっていけば、それが手間のかからない常設のリマインダーになります。週末にサイトが止まってしまう前に、証明書の更新が必要だと気づけます。

エンドポイントの仕組み

各バッジは、https://ecdsa.com/api/badge/<domain> に種類を表すサフィックス(/expiry、/tls、/key、/pqc)を付けた単純な GET リクエストで取得でき、SVG で応答します。省略可能なクエリパラメーターが 2 つあります。?style=for-the-badge は背の高い大文字の表示に切り替え、?label=Your%20text は左側の見出しを置き換えます。

結果は 1 時間キャッシュされるため、アクセスの多い README でも、サーバーにかかる負荷は訪問者ごとに 1 回ではなく、1 時間に 1 回のハンドシェイクだけです。到達できないドメインでは、壊れた画像ではなく灰色の unreachable バッジが表示されます。バッジのせいで README が画像の欠けたページになることはありません。

先に評価の根拠を知りたい場合は、ドメインの署名ヘルスチェックで完全なチェックを実行するか、ECDSA と RSA の比較を読んで、鍵のバッジがなぜそのような表示になるのかを確認してください。