<?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>Protect application data</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/61856/protect-application-data</link><description>Hi, we are using nRF9160 and would like to save a data that is written only once(should not be overwritten or erased) and accessed every time it starts. I found that flash region(32KB) can be protected using Flash access control but a region is to big</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 02 Jun 2020 07:46:25 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/61856/protect-application-data" /><item><title>RE: Protect application data</title><link>https://devzone.nordicsemi.com/thread/252633?ContentTypeID=1</link><pubDate>Tue, 02 Jun 2020 07:46:25 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8a76ac48-fa41-4e9e-8e0d-d322a6a883f0</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
[quote user="mmanlod"]We cannot use the static array that you have suggested.[/quote]
&lt;p&gt;Why not?&lt;/p&gt;
&lt;p&gt;Based on the considerations you have described, the best way I can think of to get reasonable protection of the data without using a full flash region is to put this as an array within the &lt;a href="https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/ug_nrf9160.html#secure-partition-manager"&gt;SPM&lt;/a&gt;. This way, assuming it does not make the SPM grow across a 32 kB flash region, you don&amp;#39;t have to use a separate additional 32 kB flash region (protected by &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf9160/spu.html?cp=2_0_0_5_14_1#flash_access_control"&gt;flash access control&lt;/a&gt;), since it is within the region of SPM. Then you can just write different data to the application data array for each device during production. But there are many considerations here, and I do not know enough to say if other options could be better in your specific use case.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Protect application data</title><link>https://devzone.nordicsemi.com/thread/252299?ContentTypeID=1</link><pubDate>Fri, 29 May 2020 06:23:26 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:57b6fa5f-8892-4c80-af88-1098976abf1f</guid><dc:creator>MIchael</dc:creator><description>&lt;p&gt;We had saved this data on a specific address that even when doing FOTA this remains intact. However, we want to make sure that it will be protected. I was hoping similar to Access control lists or can be any that nRF9160 offers.&lt;br /&gt;&lt;br /&gt;Yes, it is written once during production. We cannot use the static array that you have suggested.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Protect application data</title><link>https://devzone.nordicsemi.com/thread/251986?ContentTypeID=1</link><pubDate>Wed, 27 May 2020 13:53:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:965bbcff-dbff-4bca-aaf0-1b4ae9bb3376</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;You do not necessarily need to use a flash region exclusively for this data, so it would probably be enough to reserve a flash page. A flash page is 4 kB, so while it is more than you need, it is far from 32 kB.&lt;/p&gt;
&lt;p&gt;Is it written once during production? Then perhaps you could make it as simple as a static array that is all FF&amp;#39;s in code so that you can just overwrite those addresses using a debugger after writing the firmware. In that case, it could reside anywhere in your code space without needing special attention what so ever.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>