W3C

Joint Task Force of WebAuthn and WPWG

29 Apr 2020

Agenda

Attendees

Present
Ian Jacobs (W3C), Ken Buchanan (Google), Benjamin Tidor (Stripe), Adrian Hope-Bailie (Coil), Nick Telford-Reed, Mathieu Hofman (Stripe), Gerhard Oosthuizen (Entersekt)
Chair
Ian
Scribe
ian

Contents


New WebAuthn Adoption CG

Recently launched: WebAuthn Adoption CG

Transaction confirmation proposal from AHB

Proposal from AdrianHB

adrianHB: I am updating the text still, but have pushed a flow diagram.

AdrianHB: This is a proposal to enhance the payment sheet
... FIDO has a concept of transaction confirmation
... option for more security thanks to display by client / platform
... webauthn extensions related to transaction confirmation are not implemented
... so the proposal is to combine info from PR API into WebAuthn

[We walk through flow]

1. PR API constructor

2. Use of canMakePayment to determine whether payment handler can provide a public key.

3. Show()

4. Payment handler selector comes up with transaction details

5. Within the payment handler, because the merchant has requested built-in auth experience, window.open not available. Payment handler gets a challenge from server.

6. Payment handler calls some version of get() in the special proposed payment handler context

Adrian: in this special context, the browser knows to add this transaction info from the PR context into the client data passed to the authenticator
... Webauthn internal method called

7. User prompted to authenticate

Adrian: and they are also shown transaction details.

8. Credential returned to payment handler, which can be given to merchant.

9. That signed credential is all that's needed to get paid.

Adrian: The account holder receives a signed assertion that the user agrees to the transaction.

Gerhard: Some discussion in Europe about the merchant doing banking-grade authentication
... and they want the merchant to be able to pass a credential to the merchant
... if we could conform to that payload, then there is already a way to pass that credential to 3DS

AdrianHB: We could propose this as a secure way for the user to get a credential from an account holder and pass to a merchant.
... and payment systems could adopt that as one way to authenticate.
... so merchant could submit this retrieved credential to the ACS.
... one challenge with the proposal that the issuing bank mint a credential per merchant is that it doesn't scale well across sites.

[We see a recorded demo]

AdrianHB: This UI is rendered by the client.
... this particular demo is not (yet) FIDO
... probably will include as well the origin of the beneficiary
... the relying party in this case is the wallet
... working with Chrome on this "minimal UI"
... for payment handlers.
... None of the UI comes from the payment handler (except for the icon)
... so this is WebAuthn + no UI...helps trust "what the user saw" since all done by the client and not by the site
... advantage is consistency across the web since the UX is from the platform, not the site
... another advantage is, as a relying party, you don't need to write code! You just write a 5-line service worker that says "do webauthn and pass results to merchant"
... this is simpler for parties to do and maintain

IJ: What exists in chrome today?

AdrianHB: You can get the minimal UI in Canary on Android
... but it's not FIDO..just a presence check

IJ: When do we get FIDO?

AdrianHB: That's a bigger question; need to get the proposal in shape to understand full impact, especially on platform authenticators

AdrianHB: I am still learning about WebAuthn details and getting feedback from people.

btidor: Does this mean that you are adopting Dirk's proposal to hash ?

AdrianHB: Whatever browser needs to do so that the prompt can show the total, beneficiary
... not sure if you need to pass details to FIDO server or can combine afterwards.

btidor: Seems like we have 2 separate proposals:

- Dirk's proposal for PISPs

- This proposal for non-PISPs.

btidor: It would be great to consider if the payment handler is a PISP
... I think your proposal can satisfy the PISP use case equally well.

AdrianHB: I think Dirk's proposal speaks more to enrollment

btidor: If the payment handler is written by a third party helping an issuer get online...how do people trust the third party?
... I think that there are parallels with signing browser data
... and that will have a material difference on challenge and separate field
... see my comment on issue #1.

AdrianHB: Thanks!

Next call

13 May

Summary of Action Items

Summary of Resolutions

[End of minutes]

Minutes manually created (not a transcript), formatted by David Booth's scribe.perl version 1.154 (CVS log)
$Date: 2020/04/29 16:30:56 $