New issue
Advanced search Search tips

Issue 813040 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Chrome , Mac
Pri: 2
Type: Bug



Sign in to add a comment

[webauthn] U2fBleDiscovery is slow to start up and blocks U2F Requests for 20 - 30 seconds

Project Member Reported by jdoerrie@chromium.org, Feb 16 2018

Issue description

https://crrev.com/c/887482 added WebAuthN support for BLE security keys by hooking a U2fBleDiscovery into U2fRequest. However, this discovery is slow to start up and blocks incoming U2F requests for 20 - 30 seconds.

The corresponding code that should be refactored lives in U2fRequest::DiscoveryStarted [1]. We should transition into the IDLE state when the first discovery successfully starts up. For HID discoveries this should happen quickly. BLE devices still will only be available after 20 - 30 seconds, but it will be possible to start talking to HID devices before.

[1] https://codesearch.chromium.org/chromium/src/device/fido/u2f_request.cc?l=115-119&rcl=6df08e7d7a943ba1c9b6bc34ba8fae9754c3922f
 
Project Member

Comment 1 by bugdroid1@chromium.org, Feb 21 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6d94712b7fa7818c1a3ae17b7b1ce96d50099c55

commit 6d94712b7fa7818c1a3ae17b7b1ce96d50099c55
Author: Adam Langley <agl@chromium.org>
Date: Wed Feb 21 00:20:19 2018

devices/fido: process requests once one discovery is successful.

Currently, requests only start processing once all discoveries are
complete. However, Bluetooth discovery can take 20+ seconds, which makes
it look like webauthn is broken if you're quickly trying it out.
Although it's behind a flag, we're telling developers to test with
Chrome 66 and so it would be good to tighten this up.

Bug:  813040 
Change-Id: I145045bf76ffd1f670176505146ae929313b61fb
Reviewed-on: https://chromium-review.googlesource.com/924385
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Commit-Queue: Adam Langley <agl@chromium.org>
Cr-Commit-Position: refs/heads/master@{#537950}
[modify] https://crrev.com/6d94712b7fa7818c1a3ae17b7b1ce96d50099c55/device/fido/mock_u2f_discovery.cc
[modify] https://crrev.com/6d94712b7fa7818c1a3ae17b7b1ce96d50099c55/device/fido/mock_u2f_discovery.h
[modify] https://crrev.com/6d94712b7fa7818c1a3ae17b7b1ce96d50099c55/device/fido/u2f_request.cc
[modify] https://crrev.com/6d94712b7fa7818c1a3ae17b7b1ce96d50099c55/device/fido/u2f_request.h
[modify] https://crrev.com/6d94712b7fa7818c1a3ae17b7b1ce96d50099c55/device/fido/u2f_request_unittest.cc

Comment 2 by agl@chromium.org, Feb 21 2018

Status: Fixed (was: Assigned)

Sign in to add a comment