DPoP (Demonstrating Proof of Possession)
DPoP (Demonstrating Proof of Possession) とは何ですか?
DPoP (Demonstrating Proof of Possession)An OAuth 2.0 extension (RFC 9449) that binds access tokens to a per-client key pair, so a stolen bearer token cannot be replayed by an attacker without also stealing the private signing key.
DPoP (Demonstrating Proof of Possession at the Application Layer), specified in RFC 9449, is an OAuth 2.0 mechanism that converts bearer tokens into sender-constrained tokens without requiring mutual TLS. The client generates an ephemeral asymmetric key pair, includes the public key's JWK thumbprint as `jkt` in the access token (issued by the IdP), and on every API call sends a short-lived JWT proof signed with its private key in the `DPoP` HTTP header. The proof commits to the HTTP method, the request URI, and a fresh nonce or jti, so an attacker who steals the access token but lacks the private key cannot forge a valid proof. Resource servers verify the proof matches both the token's bound key and the current request. DPoP is one of two practical answers to OAuth bearer-token theft (the other being mTLS-bound tokens) and is now widely supported by Okta, Auth0, Entra ID, Keycloak, and several open-source libraries. Combined with PKCE and short refresh-token lifetimes, DPoP dramatically reduces the value of a stolen token to an attacker.
● 例
- 01
A mobile banking app signs a DPoP proof JWT with its TEE-stored key on every API call; a stolen access token alone gets the attacker nothing.
- 02
An IdP issues access tokens with `cnf.jkt` bound to the client's DPoP key, and the resource server rejects any request whose proof JWT doesn't match the bound thumbprint.
● よくある質問
DPoP (Demonstrating Proof of Possession) とは何ですか?
An OAuth 2.0 extension (RFC 9449) that binds access tokens to a per-client key pair, so a stolen bearer token cannot be replayed by an attacker without also stealing the private signing key. サイバーセキュリティの ID とアクセス カテゴリに属します。
DPoP (Demonstrating Proof of Possession) とはどういう意味ですか?
An OAuth 2.0 extension (RFC 9449) that binds access tokens to a per-client key pair, so a stolen bearer token cannot be replayed by an attacker without also stealing the private signing key.
DPoP (Demonstrating Proof of Possession) はどのように機能しますか?
DPoP (Demonstrating Proof of Possession at the Application Layer), specified in RFC 9449, is an OAuth 2.0 mechanism that converts bearer tokens into sender-constrained tokens without requiring mutual TLS. The client generates an ephemeral asymmetric key pair, includes the public key's JWK thumbprint as `jkt` in the access token (issued by the IdP), and on every API call sends a short-lived JWT proof signed with its private key in the `DPoP` HTTP header. The proof commits to the HTTP method, the request URI, and a fresh nonce or jti, so an attacker who steals the access token but lacks the private key cannot forge a valid proof. Resource servers verify the proof matches both the token's bound key and the current request. DPoP is one of two practical answers to OAuth bearer-token theft (the other being mTLS-bound tokens) and is now widely supported by Okta, Auth0, Entra ID, Keycloak, and several open-source libraries. Combined with PKCE and short refresh-token lifetimes, DPoP dramatically reduces the value of a stolen token to an attacker.
DPoP (Demonstrating Proof of Possession) からどのように防御しますか?
DPoP (Demonstrating Proof of Possession) に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
DPoP (Demonstrating Proof of Possession) の別名は何ですか?
一般的な別名: RFC 9449, Demonstrating Proof of Possession。
● 関連用語
- identity-access№ 839
OAuth 2.0
リソース所有者が資格情報を共有せずに、サードパーティ製アプリへ API に対する制限付き・スコープ付きのアクセスを委譲できる、オープンな認可フレームワーク。
- identity-access№ 642
JWT(JSON Web Token)
署名付き JSON クレームを運ぶ、コンパクトで URL セーフなトークン形式(RFC 7519)。アクセストークン、ID トークン、セッションコンテナとして広く使われる。
- identity-access№ 928
PKCE (Proof Key for Code Exchange)
An OAuth 2.0 extension (RFC 7636) that binds an authorization-code redemption to a one-time secret created by the client, neutralizing authorization-code interception attacks on public and confidential clients alike.
- identity-access№ 104
ベアラトークン(Bearer Token)
RFC 6750 で定義された不透明あるいは構造化された資格情報。所持しているだけでリソースへのアクセス権が与えられ、本人確認は行われない。
- network-security№ 797
相互 TLS(mTLS)
クライアントとサーバーの双方が X.509 証明書を提示し、互いを暗号学的に認証する TLS の拡張方式。
- identity-access№ 852
OpenID Connect (OIDC)
OAuth 2.0 上に構築された ID レイヤーで、クライアントが署名付き ID トークンを通じて利用者の身元を検証し、基本プロフィールを取得できるようにする。