Figure 4 - Message Sequence Chart: SMP
Pairing
The initiating device will generate a 128-bit random number that
is combined with TK, the Pairing Request command, the Pairing
Response command, the initiating device address and address
type, and the responding device address and address type. The
resulting value is a random number
Mconfirm
that is sent to the
responding device by the Pairing Confirm command. The
responding device will validate the responding device data in the
Pairing Confirm command and if it is correct will generate a
Sconfirm
value using the same methods as used to generate
Mconfirm
only with different 128-bit random number and TK. The
responding device will send a Pairing Confirm command to the
initiator and if accepted the authentication process is complete.
The random number in the
Mconfirm
and
Sconfirm
data is
Mrand
and
Srand
respectively.
Mrand
and
Srand
have a key role in
setting encrypting the link.
Finally the master and slave devices exchange
Mrand
and
Srand
so that the slave can calculate and verify Mconfirm and the master
can likewise calculate and verify Sconfirm.
A.1.4 Encrypting the Link
The Short Term Key (STK) is used for encrypting the link the first time the two devices pair. STK remains in
each device on the link and is not transmitted between devices. STK is formed by combining
Mrand
and
Srand
which were formed using device information and TKs exchanged with Pairing Confirmation (
Pairing
Confirm
).
A.1.5 Encryption Key Generation and Distribution
Figure 5 - Encryption Request from Master, Example (ComProbe
Frame Display, BPA 600 low energy capture
To distribute the LTK, EDIV, and Rand values
an encrypted session needs to be set up.
The initiator will use STK to enable
encryption on the link. Once an encrypted
link is set up, the LTK is distributed. LTK is a
128-bit random number that the slave
device will generate along with EDIV and
Rand. Both the master and slave devices can
distribute these numbers, but
Bluetooth
low
energy is designed to conserve energy, so
the slave device is often resource
constrained and does not have the database
storage resources for holding LTKs. Therefore the slave will distribute LTK, EDIV, and Rand to the master
device for storage. When a slave begins a new encrypted session with a previously linked master device, it
will request distribution of EDIV and Rand and will regenerate LTK.
Figure 6 - Encryption Response from Slave, Example (ComProbe
Frame Display, BPA 600 low energy capture)
Appendicies
TELEDYNE LECROY
Frontline BPA low energy Hardware & Software User Manual
198
Summary of Contents for BPA LOW ENERGY
Page 1: ...Hardware and Software User Manual Revision Date 1 3 2017...
Page 222: ......