本文へスキップ
ecdsa.com

x5c(X.509 証明書チェーンヘッダー)

X.509 証明書チェーンを、base64 でエンコードした(base64url ではない)DER 証明書の配列として運ぶ JOSE ヘッダー兼 JWK のメンバーで、先頭の証明書が署名鍵を含みます。
別表記x5cx5t#S256x5uX.509 certificate chain parameter

RFC 7515 §4.1.6 は、他のすべての JOSE の値とは異なり、各証明書にパディング付きの標準の base64 を使うことを定めており、これがパーサーのつまずきの原因になります。関連するメンバーには、x5t(SHA-1 による証明書のサムプリント)と x5t#S256(SHA-256)、そしてチェーンの取得元となる URL を示す x5u があります。

トークンのヘッダーに含まれるチェーンは、それだけでは何も証明しません。誰でも自己署名証明書を添付できるからです。検証者は、自身が選んだトラストアンカーまでチェーンを検証し、証明書の ID と用途を確認してから、はじめて鍵を使わなければなりません。パス検証を行わずに埋め込みの証明書で検証するシステムは、これまで偽造が可能でした。正当な用途としては、Apple や Google のデバイスアテステーションのペイロードや、欧州の eIDAS 関連の署名があり、そこではトラステッドリストに照らした検証がプロトコルの一部になっています。

規格と参考文献

すべての用語