<?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>Bonding, how to change the ltk manually</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/77873/bonding-how-to-change-the-ltk-manually</link><description>how to change the ltk manually, is it possible with nrf52 dk?</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 27 Jul 2021 11:51:27 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/77873/bonding-how-to-change-the-ltk-manually" /><item><title>RE: Bonding, how to change the ltk manually</title><link>https://devzone.nordicsemi.com/thread/322031?ContentTypeID=1</link><pubDate>Tue, 27 Jul 2021 11:51:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e8e2870-4491-4555-90eb-ea70b63fad6a</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;If you have control on both sides of the link (central + peripheral) you can update LTK and use it when they connect. Just like what happens&amp;nbsp;&lt;/span&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v7.3.0/group___b_l_e___g_a_p___c_e_n_t_r_a_l___e_n_c___m_s_c.html"&gt;here&lt;/a&gt;&lt;span&gt;&amp;nbsp;on the central and&amp;nbsp;&lt;/span&gt;&lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v7.3.0/group___b_l_e___g_a_p___p_e_r_i_p_h___e_n_c___m_s_c.html"&gt;here&lt;/a&gt;&lt;span&gt;&amp;nbsp;on the peripheral.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The LTK generation is taken care of by the SoftDevice.&amp;nbsp;LTK can be accessed when you receive the BLE_GAP_EVT_AUTH_STATUS event from the SoftDevice.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Any keys generated and/or distributed as a result of the ongoing security procedure will be stored into the memory referenced by the pointers inside the p_sec_keyset used in&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s132.api.v7.2.0/group___b_l_e___g_a_p___f_u_n_c_t_i_o_n_s.html#ga7b23027c97b3df21f6cbc23170e55663"&gt;sd_ble_gap_sec_params_reply()&lt;/a&gt;. The keys will be stored and available to the application upon reception of a&amp;nbsp;&lt;a href="https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.s140.api.v6.1.1/group___b_l_e___g_a_p___e_n_u_m_e_r_a_t_i_o_n_s.html#ggada486dd3c0cce897b23a887bed284fefa8958220152f7547da3b250b4f724877c"&gt;BLE_GAP_EVT_AUTH_STATUS&lt;/a&gt;&amp;nbsp;event. The Peer Manager( security_dispatcher.c) handles this and will store the keys for you when you bond with a device.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;-Amanda H.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Bonding, how to change the ltk manually</title><link>https://devzone.nordicsemi.com/thread/321985?ContentTypeID=1</link><pubDate>Tue, 27 Jul 2021 08:58:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:addcfb4c-45ab-4920-830f-32bdbb8518e9</guid><dc:creator>tfoobarq</dc:creator><description>&lt;p&gt;HI,&lt;/p&gt;
&lt;p&gt;I am not saying that I need to generate a pair of LTK by myself, I mean whether I can manually change the LTK in a pair of bonded devices.&lt;/p&gt;
&lt;p&gt;For example, there is a situation where I need to connect with a peripheral that only supports Legacy Pairing, but I still don&amp;#39;t want others to decipher my Bluetooth encryption link. Therefore, I tried to change the LTK exchanged in Legacy Pairing through some interactive information and proprietary algorithms, so that even if a third party could sniff my Legacy Pairing interaction, it would not be able to decrypt future links.&lt;/p&gt;
&lt;p&gt;In other words, I established my own set of authentication protocols through a certain method, and changed the LTK of both parties, so that in subsequent connections, I can use AES-CCM to encrypt the transmitted data like normal Secure Connection.&lt;/p&gt;
&lt;p&gt;I want to know if this is feasible for nrf52? If so, how should I change the LTK that has been stored?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Bonding, how to change the ltk manually</title><link>https://devzone.nordicsemi.com/thread/321979?ContentTypeID=1</link><pubDate>Tue, 27 Jul 2021 08:36:06 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1196a0cb-cade-4d3b-af38-c9e5c01aa750</guid><dc:creator>Amanda Hsieh</dc:creator><description>&lt;p&gt;Hi,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Are you looking to&amp;nbsp;generate&lt;span&gt;&amp;nbsp;the LTK&amp;nbsp;&lt;/span&gt;&lt;span&gt;manually?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;You could refer to B.2.2 Generating Keys from ER in the&amp;nbsp;&lt;/span&gt;&lt;span&gt;BLUETOOTH CORE SPECIFICATION Version 5.2 | Vol 3, Part H, and t&lt;/span&gt;&lt;span&gt;his&amp;nbsp;&lt;/span&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/12188/generating-my-own-ltk-ediv-rand"&gt;post&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/a&gt;&lt;span&gt;might help.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;-Amanda H.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>