<?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/"><channel><title>Intro to Application-level Security Using the ECB Peripheral</title><link>/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><description>Obligatory Disclaimer
Security is hard. If a product handles sensitive information then it is the engineer&amp;#39;s responsibility to his customers to consult a security professional. However, experimenting with security should be encouraged whenever possi</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Thu, 19 Mar 2020 14:07:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Embedded_Engineer</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;is this supported on nrf52840, as in the product specification it mentions section 6.7 ECB-AES &amp;quot; &lt;span class="fontstyle0"&gt;(encryption only, not decryption)&amp;quot;&lt;/span&gt;&lt;/p&gt;&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Fri, 27 Apr 2018 07:13:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Abhishek Chauhan</dc:creator><slash:comments>0</slash:comments><description>&lt;pre&gt;nrf_delay_us(RNG_BYTE_WAIT_US * remaining); Does delay depend on the no of remaining bytes. If yes then how..&lt;/pre&gt;&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Fri, 27 Apr 2018 07:11:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Abhishek Chauhan</dc:creator><slash:comments>0</slash:comments><description>&lt;pre&gt;nrf_delay_us(RNG_BYTE_WAIT_US * remaining);&lt;/pre&gt;&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Fri, 27 Apr 2018 07:11:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Abhishek Chauhan</dc:creator><slash:comments>0</slash:comments><description>&lt;pre&gt;nrf_delay_us(RNG_BYTE_WAIT_US * remaining);&lt;/pre&gt;&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Thu, 22 Feb 2018 10:47:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Raghav Iyer</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Thanks for the great article. I was wondering if we can use&amp;nbsp;&amp;nbsp;nrf_crypto_ecdh_shared_secret_compute for generating the shared secret keys?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The shared secret generated using above function is 32 bytes but the above requires only 16 bytes for key. Is it safe to use only the first or last 16 bytes to encrypt the nonce?&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Raghav&lt;/p&gt;&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Thu, 18 May 2017 08:33:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Jebakumar</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hi Daniel,&lt;/p&gt;
&lt;p&gt;Good article and explained well.&lt;/p&gt;
&lt;p&gt;Thanks a lot.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Wed, 28 Dec 2016 08:31:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>adriand</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;thanks for a nice tutorial. However, I&amp;#39;ve got a hard fault when nrf_ecb_hal_data_t m_ecb_datawas not aligned. To fix this in Keil I used attribute: static nrf_ecb_hal_data_t m_ecb_data __attribute__((aligned (4)));&lt;/p&gt;
&lt;p&gt;I also have a question, what if two devices (with the same pre-shared private key) went out of sync with their counters?&lt;/p&gt;
&lt;p&gt;What would be safe to inform each other about that and set a new common counter value by unencrypted channel? Is it very unsafe if someone (possible hijacker) could guess the counter values for following encrypted messages? Or without private key this is useless for him?&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Wed, 31 Aug 2016 23:01:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Daniel Veilleux</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Hello Kacem,&lt;/p&gt;
&lt;p&gt;The cleartext ([COUNTER][NONCE]) buffer is encrypted to create the ciphertext. The ciphertext is then XOR&amp;#39;d, one byte at a time, with the message that Alice and Bob want to trade. Applying the XOR function twice yields the original buffer so Alice and Bob just need to have the same NONCE and keep their counters in sync.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Tue, 16 Aug 2016 04:38:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Jeong Hyun Seok</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Thank you.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Thu, 04 Feb 2016 09:00:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Kacemox</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Great artical !&lt;/p&gt;
&lt;p&gt;the clear text contains the  nonce value; 12 random bytes starting at index 4 and the counter value starting at index 0.&lt;/p&gt;
&lt;p&gt;but I didn&amp;#39;t understand what the cipher text contains ?
what I understand is that the buf contains the message and the ciphertext contains the result of the xor operation with output buffer from the ECB, but this line of code &amp;quot;buf[i] ^= m_ecb_data.ciphertext[i];&amp;quot; doesn&amp;#39;t fit with Alice&amp;#39;s and Bob&amp;#39;s e.g.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Kacem.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Mon, 27 Jul 2015 07:08:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>Eirik Midttun</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Great article! Where is the &amp;quot;Like&amp;quot; button?&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Fri, 24 Jul 2015 14:29:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>syntroniks</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Great writeup, next up: ECDH! Great explanation using CBC.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item><item><title>RE: Intro to Application-level Security Using the ECB Peripheral</title><link>https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/intro-to-application-level-security-using-the-ecb-</link><pubDate>Thu, 23 Jul 2015 08:07:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9847734e-b0de-4fec-bfd4-efe65592e675</guid><dc:creator>David Edwin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Good intro Thanks for sharing.&lt;/p&gt;
&lt;img src="https://devzone.nordicsemi.com/aggbug?PostID=829&amp;AppID=4&amp;AppType=Weblog&amp;ContentType=0" width="1" height="1"&gt;</description></item></channel></rss>