Given that the design of this feature doesn't require a specific backend 
implementation, going to approve it.

LGTM

On Thursday, March 13, 2025 at 3:50:18 PM UTC-7 Daniel Rubery wrote:

> Hello,
>
> Device Bound Session Credentials can only interface between the site and 
> the primitives given by the operating system. Chrome’s implementation only 
> supports DBSC for devices with TPMs on Windows. Given that a meaningful 
> proportion of Windows devices don’t have TPMs today, sites are not likely 
> to lock out users without Windows TPMs. I do share your concerns about the 
> potential ecosystem effects as our platform support rises though.
>
> It's not clear to me if your email suggests that restricting to specific 
> issuers is a dangerous future direction or a worry about the current 
> feature. Device Bound Session Credentials as designed today does not 
> support any kind of TPM attestation on behalf of sites. Sites are not able 
> to determine details about how the user agent stores the key, so your 
> concerns about restricting to specific issuers cannot happen. That only 
> leaves some risk around segmenting the web for users without TPMs.
>
> Given the limits on usage in Origin Trials, I think that risk is very low 
> while still experimenting. We should definitely re-evaluate that risk 
> before shipping. Does that address your concerns?
>
> Thanks,
> Dan Rubery
> On Tuesday, March 11, 2025 at 6:27:25 PM UTC-7 Morgaine (de la faye) wrote:
>
>> Hello. I'm writing in to express concerns I have related to this 
>> experiment & proposal.
>>
>> Just yesterday, we saw YouTube add DRM to all video downloads, breaking 
>> many user's flows for the yt-dlp user-agent.
>> At present, there's a workaround, which is to log in via an alternative 
>> user agent and extract a so called PO Token, and to transfer that 
>> credential to the yt-dlp user agent.
>> The specification here seems like it would directly obstruct the user 
>> from transferring their agency like this; a bound cookie count not be 
>> transfered and it's unclear if another user agent could find or use the TPM 
>> stored key.
>> Thus, it feels like the strong security guarantees here work directly 
>> counter to user agency, in contravention of RFC 8890 The Internet is for 
>> End Users.
>> https://github.com/yt-dlp/yt-dlp/issues/12563
>> https://news.ycombinator.com/item?id=43321145
>> https://github.com/yt-dlp/yt-dlp/wiki/PO-Token-Guide
>>
>> I don't see any way to resolve this conflict. Given that, I strongly 
>> disfavor locking the user out of their agency like this, and wish to 
>> protest the development of this specification as harmful and controlling 
>> and manipulative of the web, against user interests. This should never ever 
>> be allowed on the web.
>>
>> A more modest concern I also have. Currently only an abstract concern:
>> As written this specification seems like it at least does not prevent 
>> other user agents from implementing this specification, doesn't seem to 
>> require any specific JWT signing issuer authority system to work; it's just 
>> the user's computer. (Considerably better than the abandoned much-maligned 
>> & very constricting Web Environment Integrity proposal, which required 
>> specific servers to vouch for the assertion). But I also worry about a 
>> Jevon's Paradox situation, where the site's ability to rely on signed JWTs 
>> is something that then becomes further controlled & used to filter the web, 
>> force & restrict browser choice over time, by adding additional 
>> restrictions on what JWTs are accepted during registration (ex, requiring 
>> specific issuers, who can then be called to verify the JWT). The shape of 
>> the JWT here seems like it opens up a lot of possibility for sites to pick 
>> and choose what implementations they would or would not accept. That would 
>> be actively harmful to the web.    
>>
>> Given the timing of YouTube introducing universal DRM everywhere, this 
>> feels like an incredibly ominous & scary shift to propose today. The 
>> proposal of creating a contract between a TPM block and a website 
>> explicitly locks the user out of agency that has been fundamental to the 
>> web, and a condemn technology that would write a new contract for the web 
>> that would exclude the user and user agency like that. 
>>
>> On Wednesday, March 12, 2025 at 12:39:33 AM UTC Daniel Rubery wrote:
>>
>>> Contact emails dru...@chromium.org, the...@chromium.org, 
>>> arn...@chromium.org
>>
>>
>>>
>>> Explainer https://github.com/w3c/webappsec-dbsc/blob/main/README.md
>>>
>>> Specification https://w3c.github.io/webappsec-dbsc
>>>
>>> Summary
>>>
>>> A way for websites to securely bind a session to a single device. It 
>>> will let servers have a session be securely bound to a device. The browser 
>>> will renew the session periodically as requested by the server, with proof 
>>> of possession of a private key.
>>>
>>>
>>> Blink component Blink 
>>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%22>
>>>
>>> TAG review https://github.com/w3ctag/design-reviews/issues/1052
>>>
>>> TAG review status Pending
>>>
>>> Origin Trial documentation link 
>>> https://github.com/w3c/webappsec-dbsc/blob/main/README.md
>>>
>>> Risks
>>> When the experiment comes to an end, Chrome will no longer refresh any 
>>> bound cookies. Sites should not enforce DBSC in a way that makes this 
>>> difficult for users (e.g. triggering logouts).
>>>
>>> Interoperability and Compatibility
>>> *Gecko*: No signal (
>>> https://github.com/mozilla/standards-positions/issues/912)
>>> *WebKit*: No signal (
>>> https://github.com/WebKit/standards-positions/issues/281)
>>> *Web developers*: Positive (
>>> https://github.com/mozilla/standards-positions/issues/912#issuecomment-2204012985
>>> )
>>> *Other signals*:
>>>
>>> WebView application risks
>>> None, not currently shipping on WebView
>>>
>>> Goals for experimentation
>>>
>>> We want overall feedback on the header-based API. Note that error 
>>> handling during session refresh is complex. It is not yet recommended that 
>>> sites enforce strictly on the presence of device bound cookies (e.g. 
>>> logging users out if they're missing). The error rate should be 
>>> sufficiently low to understand if the API is unclear or overly complex.
>>>
>>> Debuggability
>>>
>>> Requests are visible in chrome://net-export, and more information is 
>>> available as UMA histograms at chrome://histograms#Net.
>>> DeviceBoundSessions
>>>
>>> Will this feature be supported on all six Blink platforms (Windows, Mac, 
>>> Linux, ChromeOS, Android, and Android WebView)?No
>>>
>>> The initial support for TPMs is Windows-only. This feature will 
>>> eventually support all platforms, as we integrate with the OS-specific key 
>>> generation/usage mechanisms.
>>>
>>> Is this feature fully tested by web-platform-tests 
>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>> ? Yes
>>>
>>> Flag name on about://flags 
>>> enable-standard-device-bound-session-credentials, 
>>> enable-standard-device-bound-session-persistence, 
>>> enable-standard-device-bound-session-credentials-refresh quota
>>>
>>> Finch feature name DeviceBoundSessions
>>>
>>> Requires code in //chrome? False
>>>
>>> Estimated milestones
>>> Shipping on desktop
>>> 143
>>> Origin trial desktop first
>>> 135
>>> DevTrial on desktop
>>> 135
>>>
>>> Link to entry on the Chrome Platform Status 
>>> https://chromestatus.com/feature/5140168270413824?gate=5106323928121344
>>>
>>> Links to previous Intent discussions
>>> Intent to Prototype: 
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/60bae138-43ee-4525-a549-461f241e9ae5n%40chromium.org
>>>
>>>
>>> This intent message was generated by Chrome Platform Status 
>>> <https://chromestatus.com/>.
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/b1c96d41-314b-4def-8eef-c1b2656b0b11n%40chromium.org.

Reply via email to