<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>How to verify that BLE comms are encrypted using 128bit AES (Mode 1, Security Level 2)</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/70418/how-to-verify-that-ble-comms-are-encrypted-using-128bit-aes-mode-1-security-level-2</link><description>Hi 
 My device is a medical device, we are now beginning verification. One of the items on the spec requires verification that 128bit AES is used during post-bond comms with the device. The device uses &amp;#39;Just Works&amp;#39; legacy pairing, Mode 1, with Security</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 14 Jan 2021 07:41:03 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/70418/how-to-verify-that-ble-comms-are-encrypted-using-128bit-aes-mode-1-security-level-2" /><item><title>RE: How to verify that BLE comms are encrypted using 128bit AES (Mode 1, Security Level 2)</title><link>https://devzone.nordicsemi.com/thread/289072?ContentTypeID=1</link><pubDate>Thu, 14 Jan 2021 07:41:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:74876dfb-b1ac-410c-b220-8f24011f5eb0</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi Karen,&lt;/p&gt;
&lt;p&gt;Then I understand it would be a bit of hassle. I would think it should be possible to see this from Android as well, but I do not have a Android device in my home office to I have not been able to check how it looks. Alternatively, perhaps your initial idea of using a sniffer is better after all. I&amp;nbsp;am not sure.&lt;/p&gt;
&lt;p&gt;Einar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to verify that BLE comms are encrypted using 128bit AES (Mode 1, Security Level 2)</title><link>https://devzone.nordicsemi.com/thread/289016?ContentTypeID=1</link><pubDate>Wed, 13 Jan 2021 18:29:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c2345fa9-0b13-4399-bf23-87c49c09caba</guid><dc:creator>veletron</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;My posted log was from NRF Connect on Android.&lt;/p&gt;
&lt;p&gt;Our device has some requirements where the app running on the central (ios/android only) has to ID its self after connection/bond. If it does not do this then it gets kicked (by the peripheral). I was hoping that the nRF Connect app on Android showed similar info to the same app on a PC, but it seems not. Getting NRF Connect on a PC to run and show the info in your log works fine, but requires the firmware on the peripheral to be modified to prevent the central getting kicked post-bond.&lt;br /&gt;&lt;br /&gt;This obviously then leads to production firmware not being what is verified - and it also gets more complicated for the verification team.&lt;br /&gt;&lt;br /&gt;If that&amp;#39;s the only way of achieving this then fair enough, we will need to jump through the hoops!&lt;/p&gt;
&lt;p&gt;Karen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to verify that BLE comms are encrypted using 128bit AES (Mode 1, Security Level 2)</title><link>https://devzone.nordicsemi.com/thread/289012?ContentTypeID=1</link><pubDate>Wed, 13 Jan 2021 18:02:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5ec1da8-3709-443d-8a0c-ce194e6c31e0</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi Karen,&lt;/p&gt;
&lt;p&gt;Which nRF connect platform and version are you using here? You probably get much of the same from Android, but these status codes I assume refer to some Android API I am not familiar with.&lt;/p&gt;
&lt;p&gt;Referring to nRF Connect from desktop, you see security level clearly stated in the short log. In this example I use a GLS example and configure nRF Connect to bond, connects and bond. Then I disconnect and reconnect. As you can see, log shows that link is secured, including security mode and level both when bonding and when securing the link after reconnecting. (I also added full log for reference -&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/6886.2021_2D00_01_2D00_13T17_5F00_53_5F00_34.999Z_2D00_log.txt"&gt;devzone.nordicsemi.com/.../6886.2021_2D00_01_2D00_13T17_5F00_53_5F00_34.999Z_2D00_log.txt&lt;/a&gt;, though that is probably not needed).&lt;/p&gt;
&lt;p&gt;&lt;img alt=" " src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/5810.output.PNG" /&gt;&lt;/p&gt;
&lt;p&gt;Einar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to verify that BLE comms are encrypted using 128bit AES (Mode 1, Security Level 2)</title><link>https://devzone.nordicsemi.com/thread/288960?ContentTypeID=1</link><pubDate>Wed, 13 Jan 2021 14:25:37 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0cc29190-a513-4f66-8de6-ee75f0e8e2bf</guid><dc:creator>veletron</dc:creator><description>&lt;p&gt;Hi Thanks for your response. Trying to have it bond from NRF Connect, and looking at the resulting log, can you tell me where I can find a reference as to what the numbers in the brackets mean?&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;D 14:10:44.584 [Broadcast] Action received: android.bluetooth.device.action.BOND_STATE_CHANGED, bond state changed to: BOND_BONDING (11)&lt;/p&gt;
&lt;p&gt;D 14:10:44.604 [Broadcast] Action received: android.bluetooth.device.action.PAIRING_REQUEST, pairing variant: PAIRING_VARIANT_CONSENT (3)&lt;/p&gt;
&lt;p&gt;I 14:10:45.875 Connection parameters updated (interval: 30.0ms, latency: 30, timeout: 4000ms)&lt;/p&gt;
&lt;p&gt;I 14:10:48.165 Read Response received from 36f71401-9511-4c82-a7dd-d66d1e837a30, value: 0 bytes&lt;/p&gt;
&lt;p&gt;D 14:10:48.228 [Broadcast] Action received: android.bluetooth.device.action.BOND_STATE_CHANGED, bond state changed to: BOND_BONDED (12)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;My main reason for asking is that I am wondering if the &amp;#39;12&amp;#39; actually means &amp;#39;Mode 1, security level 2&amp;#39;.&lt;/p&gt;
&lt;p&gt;Karen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to verify that BLE comms are encrypted using 128bit AES (Mode 1, Security Level 2)</title><link>https://devzone.nordicsemi.com/thread/288935?ContentTypeID=1</link><pubDate>Wed, 13 Jan 2021 13:30:54 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d825f2a6-b9e4-47de-915b-859fb2055294</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi Karen,&lt;/p&gt;
&lt;p&gt;The way this is implemented in the SoftDevice and nRF5 HW there are only two possibilities. Either the BLE packets are clear text or they are encrypted with 128 bit AES-CCM.&amp;nbsp;You can use a sniffer, as you write. Or you could use a tool such as &lt;a href="https://infocenter.nordicsemi.com/topic/ug_nrfconnect_ble/UG/nRF_Connect_BLE/nRF_Connect_intro.html"&gt;nRF Connect BLE&lt;/a&gt;&amp;nbsp;(provided that you trust the information it gives you).&lt;/p&gt;
&lt;p&gt;Einar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>