Hello all, could someone please clarify my doubt related to the concept of pairing in a particular scenario If a remote device having no I/O capability (also authentication : general bonding, and No MITM protection) sent a pairing request to our local device(DUT running with the bluez stack), local device stack auto accept the pairing request even though local device has I/O capability Is the Behavior of auto-accepting the pairing request justified? -- According to the specification "From the Bluetooth Core Specification 4.1 page 1958: "if both devices have set the Authentication_Requirements parameter to one of the MITM Protection Not Required options, authentication stage 1 shall function as if both devices set their IO capabilities to DisplayOnly (e.g., Numeric comparison with automatic confirmation on both devices)" Local device had set the "NO MITM protection required" based on the remote authentication and capabilities. Is the behavior of over-riding local device MITM capability necessary? In case of local device initiating a connection to the remote device, auto accept from the stack is acceptable but in case of remote initiated connection, auto-accept will cause user inconvenience, Isn't it? I have tested the similar scenario with the device having bluedroid stack, here we get a authorization popup, action on which will complete the pairing and connection. i.e auto-pairing is not done in stack May be we all have the following query, How does remote-device sent pairing request to Local device, when it doesn't have "NoInputNoOutput" capability? Ans: Remote device was paired and connected by local device first and then disconnected and link key is removed in the local device. When remote device is restarted, it is attempting to connect to the local device. When link-key validation failed, it attempted pairing Remote device : I'm using Motorola Roadster 2 Local device : DUT running with latest bluez stack HCI_Dump snippet when remote device initiated the connection to local device(DUT) > HCI Event: Link Key Request (0x17) plen 6 bdaddr 00:24:1C:D6:6F:1B < HCI Command: Link Key Request Negative Reply (0x01|0x000c) plen 6 bdaddr 00:24:1C:D6:6F:1B > HCI Event: Command Complete (0x0e) plen 10 Link Key Request Negative Reply (0x01|0x000c) ncmd 1 status 0x00 bdaddr 00:24:1C:D6:6F:1B > HCI Event: IO Capability Response (0x32) plen 9 bdaddr 00:24:1C:D6:6F:1B capability 0x03 oob 0x00 auth 0x04 Capability: NoInputNoOutput (OOB data not present) Authentication: General Bonding (No MITM Protection) > HCI Event: IO Capability Request (0x31) plen 6 bdaddr 00:24:1C:D6:6F:1B < HCI Command: IO Capability Request Reply (0x01|0x002b) plen 9 bdaddr 00:24:1C:D6:6F:1B capability 0x01 oob 0x00 auth 0x04 Capability: DisplayYesNo (OOB data not present) Authentication: General Bonding (No MITM Protection) > HCI Event: Command Complete (0x0e) plen 10 IO Capability Request Reply (0x01|0x002b) ncmd 1 status 0x00 bdaddr 00:24:1C:D6:6F:1B > HCI Event: User Confirmation Request (0x33) plen 10 bdaddr 00:24:1C:D6:6F:1B passkey 297587 < HCI Command: User Confirmation Request Reply (0x01|0x002c) plen 6 bdaddr 00:24:1C:D6:6F:1B > HCI Event: Command Complete (0x0e) plen 10 User Confirmation Request Reply (0x01|0x002c) ncmd 1 status 0x00 bdaddr 00:24:1C:D6:6F:1B > HCI Event: Simple Pairing Complete (0x36) plen 7 status 0x00 bdaddr 00:24:1C:D6:6F:1B > HCI Event: Link Key Notification (0x18) plen 23 bdaddr 00:24:1C:D6:6F:1B key 1F9A7E9411E435EA4DF05A10E6DEE451 type 4 Type: Unauthenticated Combination Key Regards Nagaraj D Rÿôèº{.nÇ+‰·Ÿ®‰†+%ŠËÿ±éݶ¥Šwÿº{.nÇ+‰·¥Š{±ý¹nzÚ(¶âžØ^n‡r¡ö¦zË?ëh™¨èÚ&£ûàz¿äz¹Þ—ú+€Ê+zf£¢·hšˆ§~††Ûiÿÿï?êÿ‘êçz_è®æj:+v‰¨þ)ߣøm