<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.arm.com/utility/feedstylesheets/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/"><channel><title>Read Unique ID</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/31983/read-unique-id</link><description> 
I&amp;#39;m starting a project with STM32F103VB ARM base MCU. How could I
Read 96 bit unique ID and manipulate in my software for security and
make unique MCU based software. 
 </description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/140736?ContentTypeID=1</link><pubDate>Tue, 17 Jun 2014 07:32:41 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:8b1e70a3-f3a3-4c3c-bd5b-ed0f264496d0</guid><dc:creator>ImPer Westermark</dc:creator><description>&lt;p&gt;&lt;p&gt;
It&amp;#39;s always best when the requirements specifications focuses on
&lt;b&gt;what&lt;/b&gt; problems that needs to be solved, instead of hard-coding
exactly &lt;b&gt;how&lt;/b&gt; the problems should be solved.&lt;/p&gt;

&lt;p&gt;
That gives the R&amp;amp;D engineers some options to find the best
solution instead of having to implement complex or expensive
solutions that might not even end up working very well.&lt;/p&gt;

&lt;p&gt;
Code read-protect makes it harder to duplicate a product.&lt;br /&gt;
A unique serial number doesn&amp;#39;t make it harder to duplicate the
product. It only makes it easier to spot that there are duplicated
serial numbers on the market - assuming that the devices reports to a
common server that can spot the excess registrations. And having
large, but sparse, numbers can make the server spot invalid numbers
that doesn&amp;#39;t follow the secret formula. But it doesn&amp;#39;t stop people
from creating duplicates that uses the same ID.&lt;/p&gt;

&lt;p&gt;
But the important thing here is that the CPU doesn&amp;#39;t know that it
isn&amp;#39;t alone to use a specific ID, in case there exists thousands of
devices with identical number. It isn&amp;#39;t until the devices talks with
a server that the duplication can be caught.&lt;/p&gt;

&lt;p&gt;
So without networking, that serial number is only good for denying
warranty if someone sends in a unit with a false ID, or if the
service department receives multiple units that uses the same ID. In
the field, it takes networking to get any advantage of the serial
number. Or that your device is connected to a computer and you mail
out a certificate to that computer that is matching the serial number
inside the connected device.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/131416?ContentTypeID=1</link><pubDate>Tue, 17 Jun 2014 05:59:35 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:a957b56d-fdef-4cf4-8eb3-e5a2d68d5d21</guid><dc:creator>Khodadad Namiri</dc:creator><description>&lt;p&gt;&lt;p&gt;
OK Dear Per, I put my hands off, although the project defined so,
but I accept your quotes,&lt;br /&gt;
Best Regards.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/128630?ContentTypeID=1</link><pubDate>Tue, 17 Jun 2014 00:56:47 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:aeb44300-0850-439b-acc3-a7d44499cac9</guid><dc:creator>ImPer Westermark</dc:creator><description>&lt;p&gt;&lt;p&gt;
Yes, but then it&amp;#39;s normally enough to select a chip with
copy-protection, where the chip blocks JTAG and other interfaces from
reading out the code from the flash memory.&lt;/p&gt;

&lt;p&gt;
What actual advantage do you expect to get from your unique serial
number, except for the possibility of having the unit send in this
serial number to a server for inventory management reasons?&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/117575?ContentTypeID=1</link><pubDate>Tue, 17 Jun 2014 00:45:44 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:655d3453-882e-4b70-a83d-b2ecee3b6555</guid><dc:creator>Khodadad Namiri</dc:creator><description>&lt;p&gt;&lt;p&gt;
Dear per&lt;br /&gt;
You are right, but if cracking price becomes more than designing new
software, I think it&amp;#39;s enough to prevent the copy,(not always but
often).&lt;br /&gt;
best regards.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/107754?ContentTypeID=1</link><pubDate>Tue, 17 Jun 2014 00:02:54 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:df76aff7-e3db-4a56-b68e-323166d47edb</guid><dc:creator>ImPer Westermark</dc:creator><description>&lt;p&gt;&lt;p&gt;
Anyone who gets past the code-protect feature supported by lots of
newer processors will not be stopped by some serial number unless you
use heavy-duty cryptography. But heavy-duty cryptography requires
that you store the crypto key which means that people able to get
past code-protect can also extract that crypto key.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/81967?ContentTypeID=1</link><pubDate>Mon, 16 Jun 2014 23:20:35 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:56066f11-4843-4c4c-a505-c496806708e0</guid><dc:creator>Khodadad Namiri</dc:creator><description>&lt;p&gt;&lt;p&gt;
dear Per&lt;br /&gt;
in the project it defined to be secure against of copy although the
cpu has protection.&lt;br /&gt;
best regards&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/92462?ContentTypeID=1</link><pubDate>Mon, 16 Jun 2014 09:24:32 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:7b1e5338-b5f5-4e75-a44e-36b5947e0170</guid><dc:creator>Westonsupermare Pier</dc:creator><description>&lt;p&gt;&lt;pre&gt;
   printf(&amp;quot;STM32F1 %08X-%08X-%08X UNIQUE\r\n&amp;quot;,
                *((unsigned long *)0x1FFFF7E8),
                *((unsigned long *)0x1FFFF7EC),
                *((unsigned long *)0x1FFFF7F0) );
&lt;/pre&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Read Unique ID</title><link>https://community.arm.com/thread/68737?ContentTypeID=1</link><pubDate>Mon, 16 Jun 2014 08:02:22 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:c7ea2ad6-bb43-4d1e-a4f7-4561c1bc4a48</guid><dc:creator>ImPer Westermark</dc:creator><description>&lt;p&gt;&lt;p&gt;
You don&amp;#39;t have _any_ idea at all?&lt;/p&gt;

&lt;p&gt;
What about just store 96 bits somewhere at a fixed location in the
flash?&lt;br /&gt;
Or use 1-wire interface to a Dallas/Maxim serial-number chip?&lt;br /&gt;
Or maybe use a SPI serial-number chip?&lt;/p&gt;

&lt;p&gt;
Why start your project with seeing problems? Why not start by
seeing possibilities? A developer is expected to develop, which
requires you to be inventive.&lt;/p&gt;
&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>