Note the approach I took in WebUSB hasn't proven popular. I wouldn't
replicate it. WebAuthn defines WebDriver commands and that's the approach
we've been trying to take other APIs in as well such as Web Bluetooth and
Web Smart Card.
Reilly Grant | Software Engineer | reil...@chromium.org | Google Chrome
<https://www.google.com/chrome>


On Tue, Jun 17, 2025 at 1:20 PM Rick Byers <rby...@chromium.org> wrote:

> This is exciting Slobo, thank you! I think this is really important to
> ship in order to bring back the promise of device-binding to SPC (which was
> broken when WebAuthn keys became synced a few years ago). It's unfortunate
> that no other engines are currently interested in SPC but I remain
> confident that there's a path to getting more interest if we can get to the
> point that payments are actually easier (eg. less annoying SMS two-factor
> authentications) for a non-trivial number of users due to this feature.
>
> I have just one concern around WPTs, inline. Otherwise this looks ready to
> ship to me.
>
> On Tue, Jun 10, 2025 at 2:47 PM Chromestatus <
> ad...@cr-status.appspotmail.com> wrote:
>
>> Contact emails slobo...@chromium.org, smcgr...@chromium.org,
>> rous...@chromium.org
>>
>> Explainer https://github.com/w3c/secure-payment-confirmation/issues/271
>>
>> Specification
>> https://w3c.github.io/secure-payment-confirmation/#sctn-browser-bound-key-store
>>
>> Design docs
>> https://github.com/w3c/secure-payment-confirmation/issues/271
>> https://github.com/w3c/secure-payment-confirmation/pull/286
>> https://github.com/w3c/secure-payment-confirmation/pull/296
>>
>> Summary
>>
>> Adds an additional cryptographic signature over Secure Payment
>> Confirmation assertions and credential creation. The corresponding private
>> key is not synced across devices. This helps web developers meet
>> requirements for device binding for payment transactions.
>>
>>
>> Blink component Blink>Payments
>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EPayments%22>
>>
>> TAG review https://github.com/w3ctag/design-reviews/issues/1097
>>
>> TAG review status Pending
>>
>> Risks
>>
>>
>> Interoperability and Compatibility
>>
>> Browser bound keys are an additive feature for Secure Payment
>> Confirmation, the risk is that other browser do not implement it.
>>
>>
>> *Gecko*: No signal (
>> https://github.com/mozilla/standards-positions/issues/570) Firefox have
>> never finalized their view on SPC, so we updated the original SPC issue
>> with a note on this additional capability.
>>
>> *WebKit*: No signal (
>> https://github.com/WebKit/standards-positions/issues/30) Safari have
>> never finalized their view on SPC, so we updated the original SPC issue
>> with a note on this additional capability.
>>
>> *Web developers*: No signals
>>
>> *Other signals*:
>>
>> WebView application risks
>>
>> Does this intent deprecate or change behavior of existing APIs, such that
>> it has potentially high risk for Android WebView-based applications?
>>
>>
>>
>> Debuggability
>>
>> Web developers should be able to inspect the new signature output which
>> is defined in WebIDL, thus no changes are needed in devtools.
>>
>>
>> Will this feature be supported on all six Blink platforms (Windows, Mac,
>> Linux, ChromeOS, Android, and Android WebView)? No
>>
>> Browser bound keys add to Secure Payment Confirmation which is supported
>> only on Android, Windows, and Mac.
>>
>>
>> Is this feature fully tested by web-platform-tests
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>> ? No
>>
>> Web platform tests depend on the availability of a software
>> implementation. Whether software implementation of BBK would be permitted
>> is an open issue:
>> https://github.com/w3c/secure-payment-confirmation/issues/288.
>>
> Hmm, I disagree. Generally we're now in the habit of creating WPTs for
> APIs which are backed by hardware by mocking them out in testing
> situations, I don't think there's any reason that SPC should be different,
> is there? For example WebUSB defines a whole testing API
> <https://wicg.github.io/webusb/test/> for this purpose, but there are
> other lighter weight options
> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md#tests-that-require-testing-apis>
> too. In this case I'd imagine we might want to follow the pattern
> <https://w3c.github.io/webauthn/#sctn-automation> used by WebAuthn which
> is to define some webdriver commands.
>
> Could you take a look into this space and see how difficult it might be to
> do something like this? In this case we're not expecting any other
> implementations anytime soon so I personally would be OK with not blocking
> shipping on landing the tests, but I would want us to plan to add tests not
> too long after shipping.
>
>> DevTrial instructions
>> https://docs.google.com/document/d/1Wgx8MQG4GsdPErGPya7iMCbhw5NiSrLrNIoDPq2_P2s/edit?usp=sharing
>>
>> Flag name on about://flags
>> enable-secure-payment-confirmation-browser-bound-key
>>
>> Finch feature name SecurePaymentConfirmationBrowserBoundKeys
>>
>> Rollout plan Will ship enabled for all users
>>
>> Requires code in //chrome? False
>>
>> Tracking bug https://issues.chromium.org/issues/377278827
>>
>> Measurement Browser bound keys are an additive to Secure Payment
>> Confirmation: The Secure Payment Confirmation UseCounter will be used.
>>
>> Availability expectation Secure Payment Confirmation (and Browser Bound
>> Keys) are only in Chromium browsers for the foreseeable future.
>>
>> Non-OSS dependencies
>>
>> Does the feature depend on any code or APIs outside the Chromium open
>> source repository and its open-source dependencies to function?
>> No
>>
>> Sample links
>> https://rsolomakhin.github.io/pr/spc-sync
>>
>> Estimated milestones
>> Shipping on Android 139
>> DevTrial on Android 135
>>
>> Anticipated spec changes
>>
>> Open questions about a feature may be a source of future web compat or
>> interop issues. Please list open issues (e.g. links to known github issues
>> in the project for the feature specification) whose resolution may
>> introduce web compat/interop risk (e.g., changing to naming or structure of
>> the API in a non-backward-compatible way).
>>
>>
>> Link to entry on the Chrome Platform Status
>> https://chromestatus.com/feature/5106102997614592?gate=5080941065928704
>>
>> Links to previous Intent discussions Intent to Prototype:
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/68093084.170a0220.15e62e.01e5.GAE%40google.com
>>
>>
>> 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/68487d9f.170a0220.bdf4.01e1.GAE%40google.com
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/68487d9f.170a0220.bdf4.01e1.GAE%40google.com?utm_medium=email&utm_source=footer>
>> .
>>
> --
> 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/CAFUtAY8Bh68hFm%2B5WJHFh029i%3DX19885FSUJH-DrU3JX%3DqLT8w%40mail.gmail.com
> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY8Bh68hFm%2B5WJHFh029i%3DX19885FSUJH-DrU3JX%3DqLT8w%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
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/CAEmk%3DMY3dbjrsN5N4cXBdBvt2Hcetv0vQp%2Begizan%3DH7gMV01A%40mail.gmail.com.

Reply via email to