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

Issue 842954 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Jun 2018
Cc:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 842952



Sign in to add a comment

Re-connection mechanism as master role and slave roles.

Project Member Reported by mcchou@chromium.org, May 15 2018

Issue description

This tracks the implementation for re-establishing security upon re-connection as either master or slave role.

The work items include
- the default security manager which handles the Key request when there is no SM channel setup
- generation of resolvable private address
- resolution of resolvable private address based on previously exchanged pairing information
- enumeration functions to search DB for certain key type or number type
 

Comment 1 by mcchou@chromium.org, May 15 2018

Blocking: 842952
Project Member

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

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/newblue/+/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133

commit c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133
Author: Miao-chen Chou <mcchou@chromium.org>
Date: Tue May 29 22:15:52 2018

sm,tests: implement reconnection mechanism for both master and slaver roles

This patch
- implements the generation of resolvable/non-resolvable random address
- implements resolution of resolvable random address by enumerating
  through the persist DB to find the matched IRK and LTK
- implements the default SM to retrieve LTK by enumerating through the
  persist DB to find the matched random number
- adds an unittest for smAddressHash
- upon reception of security request, sets the required fields of a SM
  instance, such as authentication requirement, key size and keys
- modifies test.c to adopt the generation of resolvable random address for
  adv slot 1 and to adopt the generation of non-resolvable random
  address for adv slot 2
- adds a hack to send the local resolvable random address in identity
  address information command in order to verify the correctness of
  address resolution and security re-establishment
- fixes nits discovered in hci.c att.c and l2cap.c during testing

BUG= chromium:842954 
TEST=(1) Run "make new_blue_unittest && ./new_blue_unittest" and all tests
         passes
     (2) Run new_blue_test on a veyron_minnie to adv, issue a connection
         to Nbt11 from nRF connection app on an Android phone and
         perform a read operation on "Current Time" characteristic to trigger
         the authentication request which starts pairing. Once paired,
         disconnect from Nbt11, connect to it again and perform a read
         operation. Verified that encryption is setup using previously
         exchanged LTK.

Change-Id: I2ccc7b2de479bdddb2d114cd393ccb92a0684bac

[modify] https://crrev.com/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133/l2cap.c
[modify] https://crrev.com/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133/sm.c
[modify] https://crrev.com/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133/test.c
[modify] https://crrev.com/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133/tests/sm_unittest.cc
[modify] https://crrev.com/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133/att.c
[modify] https://crrev.com/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133/hci.c
[modify] https://crrev.com/c34b8b7e45e6c2f5934c7a6027a431d3cb6a2133/sm.h

Comment 3 by mcchou@chromium.org, Jun 13 2018

Status: Fixed (was: Started)

Sign in to add a comment