本文へスキップ
ecdsa.com

Sigstore

OIDC の ID に一時鍵を結び付ける証明書を発行し(Fulcio)、署名を公開ログに記録する(Rekor)オープンソースの署名サービスです。長期鍵なしでアーティファクトに署名し、検証できます。
別表記SigstoreFulcioRekorsigstore bundle

キーレス署名の流れは次のとおりです。署名者は一時的な鍵ペアを作成し、OIDC で ID を証明し(GitHub Actions のワークフロー、Google や Microsoft のアカウント)、その鍵を ID に結び付ける有効期間 10 分の Fulcio 証明書を受け取ります。そしてアーティファクトに署名し、署名を Rekor に記録して、鍵を破棄します。検証では、Sigstore のルートに対する証明書チェーン、検証者が想定する ID と発行者、そして証明書の有効期間内に署名が行われたことを示すログの包含証明または署名付きタイムスタンプを確認します。

結果は、証明書、署名または DSSE エンベロープ、透明性ログの証拠を含む Sigstore バンドル(メディアタイプ application/vnd.dev.sigstore.bundle.v0.3+json)として受け渡され、トラストルートは TUF で配布されます。タイルベースのログである Rekor v2 は、2025年に一般提供が始まりました。利用例には、npm の来歴、PyPI のアテステーション、Homebrew、Kubernetes のリリース、cosign で署名されたコンテナイメージ、GitHub のアーティファクトアテステーションがあります。

セキュリティ上の判断は「どの鍵か」から「どの ID か」に移ります。検証者は証明書の ID(たとえばワークフローのパス)と OIDC の発行者の両方を固定しなければなりません。そうしないと、任意の Sigstore ユーザーの署名が通ってしまいます。Sigstore バンドル検証ツールでは、想定する ID に照らしてバンドルをローカルで確認できます。

規格と参考文献

すべての用語