ts-odd icon indicating copy to clipboard operation
ts-odd copied to clipboard

AWAKE Protocol: PIN validation step changes to allow choosing a device to link with

Open matheus23 opened this issue 4 years ago • 3 comments

This tracks an idea for improving the UX of linking with a device in case there's multiple devices in a single websocket room at the same time.

At the moment, we're only keeping track of "one AWAKE protocol at a time" that we're running. So the provider will start trying to connect to the first requestor they heard about. At step 5 the provider will show the PIN they sent the requestor to make sure the user connects to the device they think they're connecting to.

If there are multiple devices in the same room at the same time, this might be the wrong room, and the user will wait for their other device to show a number indefinitely.

What we can do instead is keep track of all (or capped at 10/100) AWAKE protocols running with different DIDs in parallel. Once we get to step 5 in any of the protocol states, instead of showing the PIN on the provider side, we show an input field asking to enter the code the user sees on the other device.

Because the provider keeps a record of which codes it sent to which DIDs, it then knows which DID to send the delegated credentials to.

matheus23 avatar Dec 20 '21 19:12 matheus23

Will be in the spec repo for next AWAKE version.

bgins avatar Jul 25 '22 17:07 bgins

@bgins @expede I think this was put into the whitepaper repo by mistake. This should be in the webnative repo, this is an idea for an improvement in the AWAKE implementation.

This does not describe spec changes. (Maybe someone misread "PIN validation step changes" for "spec changes"?)

matheus23 avatar Jul 25 '22 18:07 matheus23

This does not describe spec changes. (Maybe someone misread "PIN validation step changes" for "spec changes"?)

Agreed, the whitepaper looks like it holds for these changes. Multiple devices does seem like an implementation detail. Same with the method by which the user confirms the pin (displayed to the user vs user enters pin).

bgins avatar Jul 25 '22 21:07 bgins