← Chrome 147 reference · Device Bound Session Credentials
DBSC protocol reference · federated and well known
Federated sessions and well-known configuration
An advanced proposed key-sharing path. It has privacy-sensitive cross-site implications and is not needed for a normal same-origin server integration.
Syntax
# RP response: use an existing Session Provider key (draft federation form)
Secure-Session-Registration: (ES256);path="/dbsc/register";challenge="r1";provider_key="base64url-jwk-thumbprint";provider_session_id="sp-session";provider_url="https://id.example"
# https://id.example/.well-known/device-bound-sessions
{"relying_origins":["https://app.example"]}
# https://app.example/.well-known/device-bound-sessions
{"provider_origin":"https://id.example"}Inputs and constraints
| Item | Requirement / behavior |
|---|---|
provider_key | Base64url (unpadded) JWK thumbprint of the provider session key. |
provider_session_id | Provider DBSC session identifier in the current draft federation design. |
provider_url | String URL whose origin must match the stored provider session scope origin. |
| Provider well-known | JSON dictionary with relying_origins including the RP registration origin and no provider_origin. |
| RP well-known | JSON dictionary with provider_origin exactly equal to the provider origin and no relying_origins. |
| Site-scoped registration | The well-known may instead contain registering_origins authorizing a subdomain to register for the root site. |
Outputs
When all checks pass, the user agent reuses the Session Provider session key for the new Relying Party DBSC session. The ordinary registration endpoint still returns JSON instructions and cookies. This does not send a hardware certificate or establish a general cross-site identity API.
Errors and unknowns
Missing/invalid parameters, absent provider session, thumbprint mismatch, denied permission, malformed/unavailable well-known response, or a failed mutual authorization stop key sharing. The current Chromium implementation has active DBSC SSO/attestation work and has changed parameter validation relative to the current draft; therefore exact SSO extensions are not a stable server contract. Do not infer them from internal source.
Context
The draft asks user agents to request device-bound-session-key-sharing permission and fetches well-known files without credentials. It also recommends limiting registrable-origin labels to resist coordinated key-guessing; Chromium source currently uses an implementation limit. Deploy only between parties with a real authenticated relationship.
Lifecycle
First establish the provider session before the RP registration. The RP supplies the provider binding, both sites’ well-known files authorize the relationship, and a successful RP registration shares the key. Provider logout/key loss/revocation must be reflected in RP authorization design; the draft does not define a cross-site server revocation protocol.
Site-scoped authorization example
# Registration endpoint is https://login.example.com/dbsc/register
# Its instructions request origin https://example.com with include_site:true.
# https://example.com/.well-known/device-bound-sessions must return:
{"registering_origins":["https://login.example.com"]}
# If the file is missing, non-200, malformed, or does not list that exact origin,
# the DBSC session is not created for the whole site.Compatibility
| Item | Requirement / behavior |
|---|---|
| Chrome | DBSC availability, not page-layout support: ChromeStatus lists DBSC as in development, with Chrome desktop milestone 145. Its Android milestone is null/unknown; availability remains controlled by implementation and feature configuration. |
| Firefox | No signal; the Mozilla standards-position issue is the public evidence, not an implementation commitment. |
| Safari | No signal; the WebKit standards-position issue is the public evidence, not an implementation commitment. |
| Other engines | Unknown. The W3C document is an Editor’s Draft, not a final interoperable Recommendation. |
Security and privacy
Key sharing has a high-entropy cross-site correlation risk. Mutual well-known opt-in, permission, quotas/backoff, and origin limits are privacy controls, not optional decoration. Avoid it unless federation is required; use normal same-origin DBSC otherwise. Never use it to test whether a person has a particular provider key.
Primary sources: federated · wellknown · registration · chromium · security · status. External sources open in a new tab.