<?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>Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/106875/implentation-of-read-back-protection-on-nrf52840</link><description>Greetings, 
 We are trying to enable/implement the read-back protection feature of the nRF52840 SoC and during this process we came accross this reported vulnerability of the read-back mechanism shared by Nordic regarding Read-Back Protection: Informational</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 12 Aug 2024 12:50:59 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/106875/implentation-of-read-back-protection-on-nrf52840" /><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/497826?ContentTypeID=1</link><pubDate>Mon, 12 Aug 2024 12:50:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b69dfa33-791e-46ec-ac46-e20185d665cb</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;I think you meant to suggest my answer, so I did that. Let me know if you disagree&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/497379?ContentTypeID=1</link><pubDate>Wed, 07 Aug 2024 17:49:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bf89486e-29c3-4e5a-bd20-5357204df1da</guid><dc:creator>Anders Nelson</dc:creator><description>&lt;p&gt;Suggesting as answer!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/488336?ContentTypeID=1</link><pubDate>Tue, 11 Jun 2024 12:55:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f7030000-f27c-4e42-9fb7-a63a6eb9a64c</guid><dc:creator>clockis</dc:creator><description>&lt;p&gt;Ok, thank you very much for your immediate responses, this made it so much clearer!&lt;/p&gt;
&lt;p&gt;I will test and if nothing else comes up I will be closing this ticket!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/488334?ContentTypeID=1</link><pubDate>Tue, 11 Jun 2024 12:48:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b4ad2532-9c42-4bd0-a60d-2927a495af08</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Here are some docs:&lt;/p&gt;
&lt;p&gt;&lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/security/ap_protect.html"&gt;https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/security/ap_protect.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Trying to sum it up&lt;/p&gt;
&lt;p&gt;Old devices: HW APPROTECT &lt;br /&gt;New devices: SW&amp;amp;HW APPROTECT&lt;/p&gt;
&lt;p&gt;How to enable HW APPROTECT: &amp;quot;nrfjprog --rbp&amp;quot;&lt;br /&gt;How to enable SW APPROTECT: &lt;span&gt;CONFIG_NRF_APPROTECT_LOCK&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;So for old devices, you can do only the first, and for new devices you should do both&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;EDIT: &lt;br /&gt;That being said, CONFIG_NRF_APPROTECT_LOCK will just be ignored on old devices, so you can set it for all revisions&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/488330?ContentTypeID=1</link><pubDate>Tue, 11 Jun 2024 12:43:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fa2d49e4-8329-40e7-9275-82652787ea62</guid><dc:creator>clockis</dc:creator><description>&lt;p&gt;What about revision 2 nRF52840 devices? Is this true for them as well?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/488326?ContentTypeID=1</link><pubDate>Tue, 11 Jun 2024 12:37:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8800fb9b-7739-41ec-91df-0938f8de9600</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>[quote user="clockis"]Sorry to get back to this so much later, but I just managed to find the time to get back to this.[/quote]
&lt;p&gt;Welcome back!&lt;/p&gt;
[quote user="clockis"]This information you shared is clear, so just enabling&amp;nbsp;&lt;span&gt;CONFIG_NRF_APPROTECT_LOCK=y is enough to enable the readback protection so that third parties cannot read the FW from the nRF52840 if it is a revision 3 chip, if I understand correctly.&amp;nbsp;&lt;/span&gt;[/quote]
&lt;p&gt;Since last time I learned that &lt;span&gt;CONFIG_NRF_APPROTECT_LOCK&lt;/span&gt; is for half of it, and then you also need to do &amp;quot;nrfjprog --rbp ALL&amp;quot; after.&lt;/p&gt;
&lt;p&gt;I am trying to talk our devs into making it so the config does both HW and SW locking&lt;/p&gt;
[quote user="clockis"]&lt;span&gt;What is necessary to be done so that it is ensured readback protection is enabled and no one is allowed to read back our FW?&lt;/span&gt;[/quote]
&lt;p&gt;nrfjprog --rbp ALL.&lt;/p&gt;
&lt;p&gt;So it will be the same for both.&lt;/p&gt;
&lt;p&gt;And in general, I recommend that you do testing on some devices to make sure that you indeed can not read anything from them. For example with &amp;quot;nrfjprog --memrd&amp;quot;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/488320?ContentTypeID=1</link><pubDate>Tue, 11 Jun 2024 12:18:56 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9e2e67a5-9731-4490-adf0-f4deab7931df</guid><dc:creator>clockis</dc:creator><description>&lt;p&gt;Hi Sigurd,&lt;/p&gt;
&lt;p&gt;Sorry to get back to this so much later, but I just managed to find the time to get back to this.&lt;/p&gt;
&lt;p&gt;This information you shared is clear, so just enabling&amp;nbsp;&lt;span&gt;CONFIG_NRF_APPROTECT_LOCK=y is enough to enable the readback protection so that third parties cannot read the FW from the nRF52840 if it is a revision 3 chip, if I understand correctly.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;What if the chips used are an older revision, for example, nRF52840 revision 2?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;What is necessary to be done so that it is ensured readback protection is enabled and no one is allowed to read back our FW?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Thank you very much for your support and I look forward to hearing from you!&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Stavros&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Implentation of Read-back protection on nRF52840</title><link>https://devzone.nordicsemi.com/thread/461804?ContentTypeID=1</link><pubDate>Wed, 27 Dec 2023 12:48:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:184ab9ae-afbe-4d76-88ed-2c5d8dd34ae6</guid><dc:creator>Sigurd Hellesvik</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;To get the new an improved APPROTECT, you need a newer revision of the nRF52840. From &amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/working-with-the-nrf52-series-improved-approtect"&gt;Working with the nRF52 Series&amp;#39; improved APPROTECT&lt;/a&gt;&amp;nbsp;:&lt;/p&gt;
&lt;p&gt;&amp;quot;&lt;/p&gt;
&lt;p&gt;New revisions of &lt;a href="https://infocenter.nordicsemi.com/pdf/in_153_v1.0.pdf?cp=18_4" rel="noopener noreferrer" target="_blank"&gt;nRF52805 (revision 2, build codes Bx0)&lt;/a&gt;, &lt;a href="https://infocenter.nordicsemi.com/pdf/in_152_v1.0.pdf?cp=18_5" rel="noopener noreferrer" target="_blank"&gt;nRF52810 (revision 3, build codes Ex0)&lt;/a&gt;, &lt;a href="https://infocenter.nordicsemi.com/pdf/in_151_v1.0.1.pdf?cp=18_6" rel="noopener noreferrer" target="_blank"&gt;nrf52811 (revision 2, build codes Bx0)&lt;/a&gt;, &lt;a href="https://infocenter.nordicsemi.com/pdf/in_150_v1.0.pdf?cp=18_7" rel="noopener noreferrer" target="_blank"&gt;nRF52820 (revision 3, build codes Dx0)&lt;/a&gt;, &lt;a href="https://infocenter.nordicsemi.com/pdf/in_149_v1.1.pdf?cp=18_8" rel="noopener noreferrer" target="_blank"&gt;nRF52833 (revision 2, build codes Bx0)&lt;/a&gt;, &lt;a href="https://infocenter.nordicsemi.com/pdf/in_142_v1.1.pdf?cp=18_15" rel="noopener noreferrer" target="_blank"&gt;nRF52832 (revision 3, build codes Gx0)&lt;/a&gt;, and &lt;a href="https://infocenter.nordicsemi.com/pdf/in_141_v1.1.pdf?cp=18_16" rel="noopener noreferrer" target="_blank"&gt;nRF52840 (revision 3, build codes Fx0)&lt;/a&gt; include an improved implementation of the the &lt;a href="https://infocenter.nordicsemi.com/index.jsp?topic=%2Fps_nrf52840%2Fdif.html&amp;amp;cp=4_0_0_3_7_1&amp;amp;anchor=concept_udr_mns_1s" rel="noopener noreferrer" target="_blank"&gt;access port protection mechanism&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&amp;quot;&lt;/p&gt;
&lt;p&gt;With that, CONFIG_NRF_APPROTECT_LOCK enables APPROTECT without the vulnerability you refer to.&lt;/p&gt;
&lt;p&gt;Does this answer your question?&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Sigurd Hellesvik&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>