New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 837088 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Chrome , Mac
Pri: 2
Type: Bug

Blocked on:
issue 840153
issue 846881



Sign in to add a comment

Implement cloud assisted BLE discovery

Project Member Reported by hongjunchoi@chromium.org, Apr 26 2018

Issue description

Implement CA-BLE discovery mechanism. CA-BLE discovery should first advertise client EID passed from the relying party. Once advertisement has been successfully registered, normal BLE discovery should follow. 
 
Blockedon: 840153
Project Member

Comment 2 by bugdroid1@chromium.org, May 16 2018

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

commit a6bde7802a10b262ee4914757d6bbe1f615589b4
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Wed May 16 03:58:36 2018

Implement FidoCaBleDiscovery

Implement discovery mechanism for cloud assisted BLE. Unlike regular BLE
discovery, Ca-BLE must first advertise using client EID passed on from
the relying party as an extension. Shared logic between FidoBleDiscovery
and FidoCaBleDiscovery is refactored into FidoBleDiscoveryBase interface.

Bug:  837088 
Change-Id: I3d47130501a5a8397bd0560b8b471659a3fafda9
Reviewed-on: https://chromium-review.googlesource.com/1029428
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#558968}
[modify] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/BUILD.gn
[modify] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/BUILD.gn
[modify] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_ble_discovery.cc
[modify] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_ble_discovery.h
[add] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_ble_discovery_base.cc
[add] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_ble_discovery_base.h
[modify] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_ble_uuids.cc
[modify] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_ble_uuids.h
[add] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_cable_discovery.cc
[add] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_cable_discovery.h
[add] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_cable_discovery_unittest.cc
[modify] https://crrev.com/a6bde7802a10b262ee4914757d6bbe1f615589b4/device/fido/fido_discovery.cc

Project Member

Comment 3 by bugdroid1@chromium.org, May 23 2018

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

commit 659f4ca4f5cc7f936ea11c015805b63fdaacba8d
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Wed May 23 19:03:07 2018

Use UUID formatted string for Cable Discovery

MacOS BLE implementation assumes UUID formatted string for advertisement
parameter. Properly convert byte array into UUID formatted string.

Bug:  837088 
Change-Id: I6892ff72b736838093661fc1fec4e30dcf28b25b
Reviewed-on: https://chromium-review.googlesource.com/1068241
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Reviewed-by: Tim Song <tengs@chromium.org>
Reviewed-by: Balazs Engedy <engedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561188}
[modify] https://crrev.com/659f4ca4f5cc7f936ea11c015805b63fdaacba8d/device/fido/fido_cable_discovery.cc

Project Member

Comment 4 by bugdroid1@chromium.org, May 23 2018

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

commit b8ea8ca8d489f6535b88a4b5121d860fcd56e87f
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Wed May 23 19:54:47 2018

Add CableDiscovery to AuthenticatorImpl transports

Add support for Cable discovery to AuthenticatorImpl GetAssertion API.
Cable transport protocol should only be enabled if feature flag
kWebAuthCtap and kWebAuthCable are enabled.

Bug:  837088 
Change-Id: I57966c00e591fa4e773d471cbd8a49cbbdd415d7
Reviewed-on: https://chromium-review.googlesource.com/1058910
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Balazs Engedy <engedy@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org>
Reviewed-by: Kim Paulhamus <kpaulhamus@chromium.org>
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561219}
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/content/browser/webauth/authenticator_impl.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/content/browser/webauth/authenticator_impl_unittest.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/content/browser/webauth/authenticator_type_converters.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/content/browser/webauth/authenticator_type_converters.h
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/content/public/common/content_features.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/content/public/common/content_features.h
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/ctap_get_assertion_request.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/ctap_get_assertion_request.h
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/fake_fido_discovery.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/fake_fido_discovery.h
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/fido_cable_discovery.h
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/fido_discovery.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/fido_request_handler_base.cc
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/fido_request_handler_base.h
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/fido_transport_protocol.h
[modify] https://crrev.com/b8ea8ca8d489f6535b88a4b5121d860fcd56e87f/device/fido/get_assertion_request_handler.cc

Project Member

Comment 5 by bugdroid1@chromium.org, May 23 2018

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

commit 8dacb0eb29b9f4371c1476b1621a479d6a4d5bc1
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Wed May 23 20:06:32 2018

Process Cable advertisement prior to scanning

In current implementation of discovering Cable devices, we invoke
advertisement and discovery scanning process simultaneously. While this
conforms to the Cable spec, this can potentially be problematic since
 1) There is no need to start scanning process if all advertisements
    fail.
 2) Simultaneously starting advertisement/scanning process may cause
 undefined behavior in OS level.

Change discovery process so that device scanning process is only started
once
 1) All advertisement process is complete.
 2) At least one of the advertisement process is successful.

Bug:  837088 
Change-Id: I29a4ee4dc7c2e7d725c3ae736929b738a56e7873
Reviewed-on: https://chromium-review.googlesource.com/1067782
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Reviewed-by: Tim Song <tengs@chromium.org>
Reviewed-by: Balazs Engedy <engedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561223}
[modify] https://crrev.com/8dacb0eb29b9f4371c1476b1621a479d6a4d5bc1/device/fido/fido_cable_discovery.cc
[modify] https://crrev.com/8dacb0eb29b9f4371c1476b1621a479d6a4d5bc1/device/fido/fido_cable_discovery.h
[modify] https://crrev.com/8dacb0eb29b9f4371c1476b1621a479d6a4d5bc1/device/fido/fido_cable_discovery_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, May 23 2018

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

commit 24507dbc3084650cae351431c3682ec3f5d2730d
Author: Jun Choi <hongjunchoi@chromium.org>
Date: Wed May 23 22:39:01 2018

Add advertisement UUID for MAC

BLE implementation in MacOS does not permit two 128 bit form UUID's for
advertisement. Thus, shorter form advertisement UUID is required for
Mac.

Bug:  837088 
Change-Id: I2eaa5c429c00dae53ade1c5f6be8c32af9a203b3
Reviewed-on: https://chromium-review.googlesource.com/1068510
Commit-Queue: Jun Choi <hongjunchoi@chromium.org>
Reviewed-by: Tim Song <tengs@chromium.org>
Reviewed-by: Balazs Engedy <engedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561285}
[modify] https://crrev.com/24507dbc3084650cae351431c3682ec3f5d2730d/device/fido/fido_ble_uuids.cc
[modify] https://crrev.com/24507dbc3084650cae351431c3682ec3f5d2730d/device/fido/fido_cable_discovery.cc

Comment 7 by tengs@chromium.org, May 25 2018

Blockedon: 846881
Status: Fixed (was: Started)
Project Member

Comment 9 by bugdroid1@chromium.org, Jul 20

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

commit 92431377727675829f2d1389a96c14698b708966
Author: Kim Paulhamus <kpaulhamus@chromium.org>
Date: Fri Jul 20 02:25:47 2018

Add chrome://flags#enable-web-authentication-cable-support
caBLE is a transport option for the WebAuthN API

Bug:  837088 
Change-Id: I81ea955bb95848161a927fb2a1b84773cf572d24
Reviewed-on: https://chromium-review.googlesource.com/1144418
Commit-Queue: Kim Paulhamus <kpaulhamus@chromium.org>
Reviewed-by: Jun Choi <hongjunchoi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576756}
[modify] https://crrev.com/92431377727675829f2d1389a96c14698b708966/chrome/browser/about_flags.cc
[modify] https://crrev.com/92431377727675829f2d1389a96c14698b708966/chrome/browser/flag_descriptions.cc
[modify] https://crrev.com/92431377727675829f2d1389a96c14698b708966/chrome/browser/flag_descriptions.h
[modify] https://crrev.com/92431377727675829f2d1389a96c14698b708966/tools/metrics/histograms/enums.xml

Project Member

Comment 10 by bugdroid1@chromium.org, Aug 24

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

commit 1b7fa9edfe15a60ad81a6e80d5b6c0c9e8ae5380
Author: Jan Wilken Doerrie <jdoerrie@chromium.org>
Date: Fri Aug 24 13:34:05 2018

[webauthn] Create caBLE Win Feature Flag

This change adds a feature flag for caBLE for Windows and disables it
by default.

Bug:  821766 ,  837088 
Change-Id: I2f87be1854a3fc64d23c9a0493eaecf0ee73668b
Reviewed-on: https://chromium-review.googlesource.com/1187146
Commit-Queue: Balazs Engedy <engedy@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: Balazs Engedy <engedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#585821}
[modify] https://crrev.com/1b7fa9edfe15a60ad81a6e80d5b6c0c9e8ae5380/content/browser/webauth/authenticator_impl.cc
[modify] https://crrev.com/1b7fa9edfe15a60ad81a6e80d5b6c0c9e8ae5380/content/browser/webauth/authenticator_impl_unittest.cc
[modify] https://crrev.com/1b7fa9edfe15a60ad81a6e80d5b6c0c9e8ae5380/content/public/common/content_features.cc
[modify] https://crrev.com/1b7fa9edfe15a60ad81a6e80d5b6c0c9e8ae5380/content/public/common/content_features.h

Project Member

Comment 11 by bugdroid1@chromium.org, Aug 30

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

commit e50a792d8c51a567ff57dbdf417eefc15b9b0528
Author: Jan Wilken Doerrie <jdoerrie@chromium.org>
Date: Thu Aug 30 15:43:52 2018

[fido] Update Windows Advertisement Payload for Cable

This change updates the Windows Advertisement Payload for Cable to match
a more recent version of the Cable spec.

TBR=arnarb@chromium.org,kpaulhamus@chromium.org

Bug:  837088 
Change-Id: Id670a6534c9d23cdeea241c364e3350f6c05cf1e
Reviewed-on: https://chromium-review.googlesource.com/1196512
Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org>
Reviewed-by: Balazs Engedy <engedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#587597}
[modify] https://crrev.com/e50a792d8c51a567ff57dbdf417eefc15b9b0528/device/fido/cable/fido_cable_discovery.cc
[modify] https://crrev.com/e50a792d8c51a567ff57dbdf417eefc15b9b0528/device/fido/cable/fido_cable_discovery_unittest.cc

Sign in to add a comment