本文へスキップ
ecdsa.com

キーバインディング(保有者バインディング)

クレデンシャルを提示する当事者が、そのクレデンシャルに記載された秘密鍵を管理していることの証明で、コピーされたクレデンシャルを他人がリプレイできないようにするものです。SD-JWT のキーバインディング JWT や mdoc のデバイス認証で実装されています。
別表記holder bindingKB-JWTkb+jwtdevice authenticationcnf

発行者は保有者の公開鍵をクレデンシャルに入れます(SD-JWT では cnf.jwk、mdoc ではモバイルセキュリティオブジェクト内のデバイス鍵)。提示の際、保有者は検証者ごとに異なる新しいチャレンジに署名します。SD-JWT では typ が kb+jwt で、aud、nonce、iat、sd_hash を含む JWT を使い(RFC 9901 §4.3)、mdoc ではセッショントランスクリプトに署名または MAC を付けます(ISO/IEC 18013-5)。検証者は nonce とオーディエンスを確認し、別の検証者へのリプレイを防ぎます。

キーバインディングの強さは、保有者の鍵がどれだけ保護されているかで決まります。そのため、ウォレットは鍵を安全なハードウェアに保管し、発行者は発行前にウォレットや鍵のアテステーションを求めます。同じ考え方は、OAuth では送信者制約付きトークン(DPoP、mTLS)として現れます。

規格と参考文献

すべての用語