<?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>Is re-pairing necessary with MITM protection?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/25893/is-re-pairing-necessary-with-mitm-protection</link><description>I am working on a peripheral. This peripheral is IO display only. On the other side, the central is keyboard + display. I have a single, custom service with a single characteristic. Said characteristic is readable and writable and requires both encryption</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 16 Oct 2017 13:56:36 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/25893/is-re-pairing-necessary-with-mitm-protection" /><item><title>RE: Is re-pairing necessary with MITM protection?</title><link>https://devzone.nordicsemi.com/thread/101976?ContentTypeID=1</link><pubDate>Mon, 16 Oct 2017 13:56:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:50ed05a1-98db-4cec-bdaf-25ae8a9f46e1</guid><dc:creator>Mateusz</dc:creator><description>&lt;p&gt;Looks like the issue was with non-volatile memory. Security properties were not being saved properly. Why or how - I&amp;#39;m not sure yet, but that&amp;#39;s a different issue.&lt;/p&gt;
&lt;p&gt;So if a device is paired and bonded with MITM protection, authenticated reads or writes should succeed on the initial and following connections.&lt;/p&gt;
&lt;p&gt;Thanks Hung Bui for your help. I deleted my previous &amp;quot;answer&amp;quot; as I was misunderstanding the book quote.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is re-pairing necessary with MITM protection?</title><link>https://devzone.nordicsemi.com/thread/101974?ContentTypeID=1</link><pubDate>Mon, 16 Oct 2017 07:42:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4881aeab-e092-4666-9521-b9cdd7031fc9</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;The log didn&amp;#39;t show how the initial bonding is performed.
I would suggest you to get hold of a nRF51 DK (or nRF52 DK ) and capture a sniffer trace.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is re-pairing necessary with MITM protection?</title><link>https://devzone.nordicsemi.com/thread/101975?ContentTypeID=1</link><pubDate>Sun, 15 Oct 2017 00:53:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a3d2dc79-332d-4b82-81ee-1142bba4d821</guid><dc:creator>Mateusz</dc:creator><description>&lt;p&gt;Here&amp;#39;s a log - see link below. It was captured on MacOS with Xcode&amp;#39;s PacketLogger, but it&amp;#39;s viewable with WireShark. The flow is (more or less) - connect to the device, pair and bond, read and write the characteristic value (successfully), then disconnect. Then, connect again and attempt to read the characteristic value (fails). MacOS then begins to re-pair. In the PacketLogger, I see that the LTK is distributed properly - it&amp;#39;s used on next connection for encryption.
&lt;a href="https://goo.gl/BYKNeS"&gt;https://goo.gl/BYKNeS&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is re-pairing necessary with MITM protection?</title><link>https://devzone.nordicsemi.com/thread/101973?ContentTypeID=1</link><pubDate>Fri, 13 Oct 2017 14:35:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:506e3368-16e0-426f-ab9d-7fdc32aa28f9</guid><dc:creator>Hung Bui</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Could you provide &lt;a href="https://www.nordicsemi.com/eng/Products/Bluetooth-Smart-Bluetooth-low-energy/nRF-Sniffer/"&gt;a sniffer trace&lt;/a&gt; ?&lt;/p&gt;
&lt;p&gt;Have you make sure when you re-establish the connection, the LTK is used and the connection is encrypted using the LTK.&lt;/p&gt;
&lt;p&gt;My suspicion is that the LTK was not stored properly (or not exchanged at all if it was only pairing not bonding, initially). So when re-establishing connection, the link is not encrypted , causing Insufficient Authentication.&lt;/p&gt;
&lt;p&gt;You can check in the code if BLE_GAP_EVT_CONN_SEC_UPDATE  is triggered or not when the connection is established. But it&amp;#39;s the best to have the sniffer trace.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Is re-pairing necessary with MITM protection?</title><link>https://devzone.nordicsemi.com/thread/101972?ContentTypeID=1</link><pubDate>Thu, 12 Oct 2017 16:10:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0eb21e05-2ef0-493b-9e64-c58dbb72ef69</guid><dc:creator>Mateusz</dc:creator><description>&lt;p&gt;According to a book &amp;quot;Getting Started With Bluetooth Energy&amp;quot; by Kevin Townsend &amp;amp; others, &amp;quot;Insufficient Authentication (...) denotes (...) that the link is encrypted, but the LTK used to perform the encryption procedure is not authenticated (generated with man-in-the-middle protection (...)) while the permissions required authenticated encryption&amp;quot;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>