-
Notifications
You must be signed in to change notification settings - Fork 37
Description
Imported from AB/Connect bitbucket: https://bitbucket.org/openid/connect/issues/2020
Original Reporter: pwlb
In Pre-authorized code flow the OpenID4VCI protocol offers the option to use a userPIN to further protect the code from theft/replay. The spec (rightfully) does not make any further assumptions about how and where this userPIN is communicated between Issuer and Holder. But this also means that situations might occur, where the Holder is prompted for the UserPIN in his wallet and he might be clueless of what the PIN is or where it might be communicated. The issuer might give this information on the website, where the QR-Code is displayed but
a) in a same-device scenario the website is not visible anymore for the user
b) in a cross-device scenario the user’s attention is now on the wallet (we have seen problems in the past with DIDComm cross-device flows)
UserPINs might be send as SMS Code or an email might not be aware to the user in this situation.
I therefore propose to extend the properties in the Credential Offer with either
- add `user_pin_description` that is a short text describing how and where to get the userPIN OR
- add `user_pin_description` in the metadata of the issuer
Additionally wallet implementers told us, they would favor a user_pin_length that says how many digits are expected for the userPIN such that this could be displayed in the app and might give further indications for the user what the correct PIN might be and improve the UI/UX in general.
`user_pin_description` might need i18n similar to what is already existing in the metadata, otherwise the issuer might know the language from the browser metadata.