Pairing Methods

The two devices in the link use the IO capabilities from Pairing Request and Pairing Response packet data to determine which of two pairing methods to use for generation of the Temporary Key (TK). The two methods are Just Works and Passkey Entry1A third method, Out Of Band (OOB), performs the same as Pass Key, but through another external link such as NFC.. An example of when Just Works method is appropriate is when the IO capability input = None and output = None. An example of when Passkey Entry would be appropriate would be if input= Keyboard and output = Display. There are 25 combinations that result in 13 Just Works methods and 12 Passkey Entry methods.

In Just Works the TK = 0. In the Passkey Entry method,

Initiator Pairing Confirm Example (ComProbe Frame Display, BPA 600 low energy capture)


Responder Pairing Confirm Example (ComProbe Frame Display, BPA 600 low energy capture)

SMP Pairing Message Sequence Chart

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.