<?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>Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/56178/immutable-bootloader-private-key-in-zephyr</link><description>In trying to use a private key file to sign the application image I&amp;#39;m running into an issue with the PEM file. I created a PEM file using the following command: 
 
 as documented here: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/samples</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 13 Oct 2020 12:15:28 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/56178/immutable-bootloader-private-key-in-zephyr" /><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274622?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 12:15:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:8b3dfaf0-a962-4a05-acc8-ac7ac8cdb8f9</guid><dc:creator>kk2mkk</dc:creator><description>&lt;p&gt;I do need firmware upgrade functionality, but if i start providing my self generated private key i end up in this booting issue.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;2020-10-13T11:26:59.824Z DEBUG modem &amp;lt;&amp;lt; *** Booting Zephyr OS build v2.3.0-rc1-ncs1-3614-ga4ead9805140  ***
2020-10-13T11:26:59.844Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot slot 0.
2020-10-13T11:26:59.856Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot from address 0x8200.
2020-10-13T11:26:59.860Z DEBUG modem &amp;lt;&amp;lt; Firwmare has been invalidated: 0x91020000.
2020-10-13T11:26:59.860Z DEBUG modem &amp;lt;&amp;lt; Failed to validate, permanently invalidating!
2020-10-13T11:26:59.860Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot slot 1.
2020-10-13T11:26:59.861Z DEBUG modem &amp;lt;&amp;lt; No fw_info struct found.
2020-10-13T11:26:59.861Z DEBUG modem &amp;lt;&amp;lt; No bootable image found. Aborting boot.&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Build log&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;C:\Data\GIT\ncs\master\zephyr\samples\hello_world\build&amp;gt;ninja rom_report
[0/1] Re-running CMake...
Including boilerplate (Zephyr base (cached)): C:/Data/GIT/ncs/master/zephyr/cmake/app/boilerplate.cmake
-- Application: C:/Data/GIT/ncs/master/zephyr/samples/hello_world
-- Using NCS Toolchain 1.3.0 for building. (C:/Data/GIT/ncs/master/toolchain/cmake)
-- Zephyr version: 2.4.0 (C:/Data/GIT/ncs/master/zephyr)
-- Found west (found suitable version &amp;quot;0.7.3&amp;quot;, minimum required is &amp;quot;0.7.1&amp;quot;)
-- Board: nrf9160dk_nrf9160ns
-- Cache files will be written to: C:/Data/GIT/ncs/master/zephyr/.cache
-- Found dtc: C:/Data/GIT/ncs/master/toolchain/opt/bin/dtc.exe (found suitable version &amp;quot;1.4.7&amp;quot;, minimum required is &amp;quot;1.4.6&amp;quot;)
-- Found toolchain: gnuarmemb (C:/Data/GIT/ncs/master/toolchain/opt)
-- Found BOARD.dts: C:/Data/GIT/ncs/master/zephyr/boards/arm/nrf9160dk_nrf9160/nrf9160dk_nrf9160ns.dts
-- Generated zephyr.dts: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/zephyr/zephyr.dts
-- Generated devicetree_unfixed.h: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/zephyr/include/generated/devicetree_unfixed.h
Parsing C:/Data/GIT/ncs/master/zephyr/Kconfig
Loaded configuration &amp;#39;C:/Data/GIT/ncs/master/zephyr/boards/arm/nrf9160dk_nrf9160/nrf9160dk_nrf9160ns_defconfig&amp;#39;
Merged configuration &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/prj.conf&amp;#39;
Configuration saved to &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/zephyr/.config&amp;#39;
Kconfig header saved to &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/zephyr/include/generated/autoconf.h&amp;#39;
Changed board to secure nrf9160dk_nrf9160 (NOT NS)

=== child image spm -  begin ===
Including boilerplate (Zephyr base (cached)): C:/Data/GIT/ncs/master/zephyr/cmake/app/boilerplate.cmake
-- Application: C:/Data/GIT/ncs/master/nrf/samples/spm
-- Using NCS Toolchain 1.3.0 for building. (C:/Data/GIT/ncs/master/toolchain/cmake)
-- Zephyr version: 2.4.0 (C:/Data/GIT/ncs/master/zephyr)
-- Found west (found suitable version &amp;quot;0.7.3&amp;quot;, minimum required is &amp;quot;0.7.1&amp;quot;)
-- Board: nrf9160dk_nrf9160
-- Cache files will be written to: C:/Data/GIT/ncs/master/zephyr/.cache
-- Found dtc: C:/Data/GIT/ncs/master/toolchain/opt/bin/dtc.exe (found suitable version &amp;quot;1.4.7&amp;quot;, minimum required is &amp;quot;1.4.6&amp;quot;)
-- Found toolchain: gnuarmemb (C:/Data/GIT/ncs/master/toolchain/opt)
-- Found BOARD.dts: C:/Data/GIT/ncs/master/zephyr/boards/arm/nrf9160dk_nrf9160/nrf9160dk_nrf9160.dts
-- Found devicetree overlay: C:/Data/GIT/ncs/master/nrf/samples/spm/nrf9160dk_nrf9160.overlay
-- Generated zephyr.dts: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/spm/zephyr/zephyr.dts
-- Generated devicetree_unfixed.h: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/spm/zephyr/include/generated/devicetree_unfixed.h
Parsing C:/Data/GIT/ncs/master/zephyr/Kconfig
Loaded configuration &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/spm/zephyr/.config&amp;#39;
No change to configuration in &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/spm/zephyr/.config&amp;#39;
No change to Kconfig header in &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/spm/zephyr/include/generated/autoconf.h&amp;#39;
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/spm
=== child image spm -  end ===

Changed board to secure nrf9160dk_nrf9160 (NOT NS)

=== child image b0 -  begin ===
Including boilerplate (Zephyr base (cached)): C:/Data/GIT/ncs/master/zephyr/cmake/app/boilerplate.cmake
-- Application: C:/Data/GIT/ncs/master/nrf/samples/bootloader
-- Using NCS Toolchain 1.3.0 for building. (C:/Data/GIT/ncs/master/toolchain/cmake)
-- Zephyr version: 2.4.0 (C:/Data/GIT/ncs/master/zephyr)
-- Found west (found suitable version &amp;quot;0.7.3&amp;quot;, minimum required is &amp;quot;0.7.1&amp;quot;)
-- Board: nrf9160dk_nrf9160
-- Cache files will be written to: C:/Data/GIT/ncs/master/zephyr/.cache
-- Found dtc: C:/Data/GIT/ncs/master/toolchain/opt/bin/dtc.exe (found suitable version &amp;quot;1.4.7&amp;quot;, minimum required is &amp;quot;1.4.6&amp;quot;)
-- Found toolchain: gnuarmemb (C:/Data/GIT/ncs/master/toolchain/opt)
-- Found BOARD.dts: C:/Data/GIT/ncs/master/zephyr/boards/arm/nrf9160dk_nrf9160/nrf9160dk_nrf9160.dts
-- Generated zephyr.dts: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/b0/zephyr/zephyr.dts
-- Generated devicetree_unfixed.h: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/b0/zephyr/include/generated/devicetree_unfixed.h
Parsing C:/Data/GIT/ncs/master/zephyr/Kconfig
Loaded configuration &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/b0/zephyr/.config&amp;#39;
No change to configuration in &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/b0/zephyr/.config&amp;#39;
No change to Kconfig header in &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/b0/zephyr/include/generated/autoconf.h&amp;#39;
CMake Warning at ../../subsys/bootloader/CMakeLists.txt:21 (message):


        --------------------------------------------------------
        --- WARNING: When using the immutable bootloader on  ---
        --- this SoC, the UICR must be erased when flashing. ---
        --- E.g. by calling &amp;#39;west flash --erase&amp;#39;             ---
        --------------------------------------------------------


CMake Warning at C:/Data/GIT/ncs/master/zephyr/kernel/CMakeLists.txt:54 (message):
  Single threaded mode (CONFIG_MULTITHREADING=n) is deprecated


-- Configuring done
-- Generating done
-- Build files have been written to: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/b0
=== child image b0 -  end ===

Changed board to secure nrf9160dk_nrf9160 (NOT NS)

=== child image mcuboot -  begin ===
Including boilerplate (Zephyr base (cached)): C:/Data/GIT/ncs/master/zephyr/cmake/app/boilerplate.cmake
-- Application: C:/Data/GIT/ncs/master/bootloader/mcuboot/boot/zephyr
-- Using NCS Toolchain 1.3.0 for building. (C:/Data/GIT/ncs/master/toolchain/cmake)
-- Zephyr version: 2.4.0 (C:/Data/GIT/ncs/master/zephyr)
-- Found west (found suitable version &amp;quot;0.7.3&amp;quot;, minimum required is &amp;quot;0.7.1&amp;quot;)
-- Board: nrf9160dk_nrf9160
-- Cache files will be written to: C:/Data/GIT/ncs/master/zephyr/.cache
-- Found dtc: C:/Data/GIT/ncs/master/toolchain/opt/bin/dtc.exe (found suitable version &amp;quot;1.4.7&amp;quot;, minimum required is &amp;quot;1.4.6&amp;quot;)
-- Found toolchain: gnuarmemb (C:/Data/GIT/ncs/master/toolchain/opt)
-- Found BOARD.dts: C:/Data/GIT/ncs/master/zephyr/boards/arm/nrf9160dk_nrf9160/nrf9160dk_nrf9160.dts
-- Found devicetree overlay: C:/Data/GIT/ncs/master/bootloader/mcuboot/boot/zephyr/dts.overlay
-- Found devicetree overlay: C:/Data/GIT/ncs/master/bootloader/mcuboot/boot/zephyr/dts.overlay
-- Generated zephyr.dts: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/mcuboot/zephyr/zephyr.dts
CMake Warning at C:/Data/GIT/ncs/master/zephyr/kernel/CMakeLists.txt:54 (message):
-- Generated devicetree_unfixed.h: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/mcuboot/zephyr/include/generated/devicetree_unfixed.h
Parsing C:/Data/GIT/ncs/master/bootloader/mcuboot/boot/zephyr/Kconfig
Loaded configuration &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/mcuboot/zephyr/.config&amp;#39;
No change to configuration in &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/mcuboot/zephyr/.config&amp;#39;
No change to Kconfig header in &amp;#39;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/mcuboot/zephyr/include/generated/autoconf.h&amp;#39;
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/mcuboot
  Single threaded mode (CONFIG_MULTITHREADING=n) is deprecated


MCUBoot bootloader key file: C:/Data/GIT/ncs/master/bootloader/mcuboot/root-rsa-2048.pem
=== child image mcuboot -  end ===

CMake Warning at C:/Data/GIT/ncs/master/nrf/cmake/mcuboot.cmake:115 (message):


        ---------------------------------------------------------
        --- WARNING: Using default MCUBoot key, it should not ---
        --- be used for production.                           ---
        ---------------------------------------------------------


Call Stack (most recent call first):
  C:/Data/GIT/ncs/master/bootloader/mcuboot/zephyr/CMakeLists.txt:1 (include)


-- Configuring done
-- Generating done
-- Build files have been written to: C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build
[0/157] Performing build step for &amp;#39;spm_subimage&amp;#39;
[149/153] Linking C executable zephyr\zephyr_prebuilt.elf
Memory region         Used Size  Region Size  %age Used
           FLASH:       32256 B        48 KB     65.63%
            SRAM:        5520 B        64 KB      8.42%
        IDT_LIST:          40 B         2 KB      1.95%
[153/153] Linking C executable zephyr\zephyr.elf
[2/153] Performing build step for &amp;#39;b0_subimage&amp;#39;
[105/109] Linking C executable zephyr\zephyr_prebuilt.elf
Memory region         Used Size  Region Size  %age Used
           FLASH:       26200 B        32 KB     79.96%
            SRAM:       38824 B        64 KB     59.24%
        IDT_LIST:          40 B         2 KB      1.95%
[109/109] Linking C executable zephyr\zephyr.elf
[129/153] Linking C executable zephyr\zephyr_prebuilt.elf
Memory region         Used Size  Region Size  %age Used
           FLASH:       15396 B     392704 B      3.92%
            SRAM:        4040 B       128 KB      3.08%
        IDT_LIST:          56 B         2 KB      2.73%
[132/151] Creating public key from private key used for signing
[139/151] Performing build step for &amp;#39;mcuboot_subimage&amp;#39;
[118/122] Linking C executable zephyr\zephyr_prebuilt.elf
Memory region         Used Size  Region Size  %age Used
           FLASH:       40588 B        48 KB     82.58%
            SRAM:       24724 B        64 KB     37.73%
        IDT_LIST:          88 B         2 KB      4.30%
[122/122] Linking C executable zephyr\zephyr.elf
[144/149] Creating signature of application
[145/149] Creating validation for zephyr.hex, storing to
[148/149] cmd.exe /C &amp;quot;cd /D C:\Data\GIT\ncs\master\zephyr\samples\hello_world\build\...t.py --input C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/partitions.yml&amp;quot;
 (0x100000 - 1024kB):
+------------------------------------------+
+---0x0: b0 (0x8000)-----------------------+
| 0x0: b0_image (0x8000)                   |
+---0x8000: s0 (0xc200)--------------------+
| 0x8000: s0_pad (0x200)                   |
+---0x8200: s0_image (0xc000)--------------+
| 0x8200: mcuboot (0xc000)                 |
| 0x14200: EMPTY_0 (0xe00)                 |
+---0x15000: s1 (0xc200)-------------------+
| 0x15000: s1_pad (0x200)                  |
| 0x15200: EMPTY_1 (0x6e00)                |
| 0x1c000: s1_image (0xc000)               |
+---0x28000: mcuboot_primary (0x6c000)-----+
| 0x28000: mcuboot_pad (0x200)             |
+---0x28200: mcuboot_primary_app (0x6be00)-+
+---0x28200: spm_app (0x6be00)-------------+
| 0x28200: spm (0xc000)                    |
| 0x34200: app (0x5fe00)                   |
| 0x94000: mcuboot_secondary (0x6c000)     |
+------------------------------------------+
[148/149] cmd.exe /C &amp;quot;cd /D C:\Data\GIT\ncs\master\zephyr\samples\hello_world\build\...d/build --json C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/rom.json rom&amp;quot;
Traceback (most recent call last):
  File &amp;quot;C:/Data/GIT/ncs/master/zephyr/scripts/footprint/size_report&amp;quot;, line 643, in &amp;lt;module&amp;gt;
    main()
  File &amp;quot;C:/Data/GIT/ncs/master/zephyr/scripts/footprint/size_report&amp;quot;, line 605, in main
    print(&amp;quot;WARN: Symbol &amp;#39;{0}&amp;#39; is not in RAM or ROM&amp;quot;.format(sym[&amp;#39;name&amp;#39;]))
TypeError: string indices must be integers
FAILED: zephyr/cmake/reports/CMakeFiles/rom_report
cmd.exe /C &amp;quot;cd /D C:\Data\GIT\ncs\master\zephyr\samples\hello_world\build\zephyr\cmake\reports &amp;amp;&amp;amp; C:\Data\GIT\ncs\master\toolchain\opt\bin\python.exe C:/Data/GIT/ncs/master/zephyr/scripts/footprint/size_report -k C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/zephyr/zephyr.elf -z C:/Data/GIT/ncs/master/zephyr -o C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build --json C:/Data/GIT/ncs/master/zephyr/samples/hello_world/build/rom.json rom&amp;quot;
ninja: build stopped: subcommand failed.

C:\Data\GIT\ncs\master\zephyr\samples\hello_world\build&amp;gt;west flash&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;openssl ecparam -name prime256v1 -genkey -noout -out priv.pem&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;# b0 Bootloader
CONFIG_SECURE_BOOT=y
CONFIG_SB_SIGNING_KEY_FILE=&amp;quot;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/priv.pem&amp;quot;

# MCUboot as upgradable bootloader
CONFIG_BOOTLOADER_MCUBOOT=y&lt;/pre&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274556?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 09:54:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:7c0a5171-3d78-4fba-a817-402045482f23</guid><dc:creator>shibshab</dc:creator><description>&lt;p&gt;That configuration is currently not supported. Is it so that you only want secure boot, no firmware upgrade functionality?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274555?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 09:51:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c3d3e79d-7576-4cbc-892b-125f3d00c652</guid><dc:creator>kk2mkk</dc:creator><description>&lt;p&gt;You are correct, i haven&amp;#39;t enabled MCUBoot boot, only secured boot was enabled&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;# Bootloader
CONFIG_SECURE_BOOT=y&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;the question is do we need mcuboot, can&amp;#39;t b0+app(including spm) suffice? ya i do do agree the the application upgrade wont be possible if we dont have mcuboot.&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;
&lt;p&gt;kk&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274476?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 07:17:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ac25ffe2-563f-4dc6-a503-5eb14c3aa482</guid><dc:creator>shibshab</dc:creator><description>&lt;p&gt;You are correct in that the bootloaders (both b0 and mcuboot) are automatically built for the secure variant of the board. In the case of your issue, I&amp;#39;m wondering if you have enabled MCUBoot or not (when you saw the issue about missing validation info)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274472?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 07:12:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c2ee46a6-766e-44be-81d8-8b35f79b0b06</guid><dc:creator>kk2mkk</dc:creator><description>&lt;p&gt;To my understanding when you build the application(with NS) with secure boot and mcuoot support the child images are build automatically with their respective secure or NS configuration, no need to specify explicitly.&lt;/p&gt;
&lt;p&gt;Lets us consider an application on which i am presently working on i.e&amp;nbsp;ncs\master\nrf\applications\&lt;strong&gt;serial_lte_modem&lt;/strong&gt;, by adding the following config lines to the my application builds the b0 and mcuboo(NS) automatically&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;# b0 Bootloader
CONFIG_SECURE_BOOT=y

# MCUboot as upgradable bootloader
CONFIG_BOOTLOADER_MCUBOOT=y&lt;/pre&gt; &amp;nbsp; &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;ROM map&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1602572810648v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;terminal o/p&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;-------------------------------b0 -------------------------------------------------
2020-10-13T06:54:51.280Z DEBUG modem &amp;lt;&amp;lt; *** Booting Zephyr OS build v2.3.0-rc1-ncs1-3614-ga4ead9805140  ***
2020-10-13T06:54:51.284Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot slot 0.
2020-10-13T06:54:51.289Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot from address 0x8200.
2020-10-13T06:54:51.291Z DEBUG modem &amp;lt;&amp;lt; Verifying signature against key 0.
2020-10-13T06:54:51.298Z DEBUG modem &amp;lt;&amp;lt; Hash: 0x8e...d7
2020-10-13T06:54:51.316Z DEBUG modem &amp;lt;&amp;lt; Firmware signature verified.
2020-10-13T06:54:51.318Z DEBUG modem &amp;lt;&amp;lt; Firmware version 1
2020-10-13T06:54:51.324Z DEBUG modem &amp;lt;&amp;lt; Setting monotonic counter (version: 1, slot: 0)
2020-10-13T06:54:51.325Z DEBUG modem &amp;lt;&amp;lt; Booting (0x8200).
-------------------------------mcuboot -------------------------------------------------
2020-10-13T06:54:51.334Z DEBUG modem &amp;lt;&amp;lt; *** Booting Zephyr OS build v2.3.0-rc1-ncs1-3614-ga4ead9805140  ***
2020-10-13T06:54:51.337Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.006,042] [0m&amp;lt;inf&amp;gt; mcuboot: Starting bootloader[0m
2020-10-13T06:54:51.350Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.012,359] [0m&amp;lt;inf&amp;gt; mcuboot: Primary image: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3[0m
2020-10-13T06:54:51.353Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.022,491] [0m&amp;lt;inf&amp;gt; mcuboot: Boot source: none[0m
2020-10-13T06:54:51.357Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.028,015] [0m&amp;lt;inf&amp;gt; mcuboot: Swap type: none[0m
2020-10-13T06:54:51.374Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.033,691] [0m&amp;lt;inf&amp;gt; mcuboot: Primary image: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3[0m
2020-10-13T06:54:51.376Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.043,792] [0m&amp;lt;inf&amp;gt; mcuboot: Boot source: none[0m
2020-10-13T06:54:51.386Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.049,346] [0m&amp;lt;inf&amp;gt; mcuboot: Swap type: none[0m
2020-10-13T06:54:51.652Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.319,702] [0m&amp;lt;inf&amp;gt; mcuboot: Bootloader chainload address offset: 0x28000[0m
2020-10-13T06:54:51.664Z DEBUG modem &amp;lt;&amp;lt; [00:00:00.327,514] [0m&amp;lt;inf&amp;gt; mcuboot: Jumping to the first image slot[0m
-------------------------------app---------------------------------------------
2020-10-13T06:54:52.037Z DEBUG modem &amp;lt;&amp;lt; Ready
2020-10-13T06:54:55.659Z DEBUG modem &amp;gt;&amp;gt; AT
2020-10-13T06:54:55.675Z DEBUG modem &amp;lt;&amp;lt; OK
2020-10-13T06:54:56.153Z DEBUG modem &amp;gt;&amp;gt; AT
2020-10-13T06:54:56.168Z DEBUG modem &amp;lt;&amp;lt; OK&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;regrads&lt;/p&gt;
&lt;p&gt;kk&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274453?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 05:58:02 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:246f8dcb-c29a-46e7-a1bf-8f1932c45bda</guid><dc:creator>shibshab</dc:creator><description>&lt;p&gt;Are you building for a non-secure board? If so you should use MCUBoot as the single stage bootloader instead. B0 does not support non-secure apps as the next step in the bootloader chain.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274447?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 03:44:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4b68bd77-30b1-49c3-9e4d-72610c6fd31c</guid><dc:creator>kk2mkk</dc:creator><description>&lt;p&gt;Yes i put extra caution in doing that step&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274433?ContentTypeID=1</link><pubDate>Mon, 12 Oct 2020 18:57:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:903b399c-bf72-4fb0-961f-d0f848a6da5f</guid><dc:creator>shibshab</dc:creator><description>&lt;p&gt;Have performed a chip erase before flashing b0? `nrfjprog -e`&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274400?ContentTypeID=1</link><pubDate>Mon, 12 Oct 2020 15:12:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1e5e7a97-8ea1-4657-9973-cd254aa47494</guid><dc:creator>kk2mkk</dc:creator><description>&lt;p&gt;I think its nothing to do with the private key, even just enabling&amp;nbsp;&lt;span style="background-color:#ffffff;"&gt;CONFIG_SECURE_BOOT=y&lt;/span&gt; doesn&amp;#39;t work either&lt;/p&gt;
&lt;p&gt;regards&lt;/p&gt;
&lt;p&gt;KK&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/274367?ContentTypeID=1</link><pubDate>Mon, 12 Oct 2020 14:04:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:44d9aea3-a394-49bc-9b25-2bb88281e2a9</guid><dc:creator>kk2mkk</dc:creator><description>&lt;p&gt;Hi&amp;nbsp;&lt;span style="background-color:#ffffff;"&gt;shibshab&lt;/span&gt;,&lt;/p&gt;
&lt;p&gt;I tried the above steps on nrf master, by specifying the private in absolute and relative path but the applicant failed to boot, with following error message.&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;# Bootloader
CONFIG_SECURE_BOOT=y
#CONFIG_SB_SIGNING_KEY_FILE=&amp;quot;priv.pem&amp;quot;
CONFIG_SB_SIGNING_KEY_FILE=&amp;quot;C:/Data/GIT/ncs/master/zephyr/samples/hello_world/priv.pem&amp;quot;
&lt;/pre&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;2020-10-12T13:50:30.809Z DEBUG modem &amp;lt;&amp;lt; *** Booting Zephyr OS build v2.3.0-rc1-ncs1-3614-ga4ead9805140  ***
2020-10-12T13:50:30.817Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot slot 0.
2020-10-12T13:50:30.819Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot from address 0x8000.
2020-10-12T13:50:30.820Z DEBUG modem &amp;lt;&amp;lt; Firwmare has been invalidated: 0x91020000.
2020-10-12T13:50:30.822Z DEBUG modem &amp;lt;&amp;lt; Failed to validate, permanently invalidating!
2020-10-12T13:50:30.825Z DEBUG modem &amp;lt;&amp;lt; Attempting to boot slot 1.
2020-10-12T13:50:30.827Z DEBUG modem &amp;lt;&amp;lt; No fw_info struct found.
2020-10-12T13:50:30.831Z DEBUG modem &amp;lt;&amp;lt; No bootable image found. Aborting boot.
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;thanks and regards&lt;/p&gt;
&lt;p&gt;KK&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/228270?ContentTypeID=1</link><pubDate>Thu, 09 Jan 2020 07:50:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f98223a-85df-401b-b1fd-465cc326bdd2</guid><dc:creator>shibshab</dc:creator><description>&lt;p&gt;I performed the following steps, and did not see any issue. Please let me know what you have done differently:&lt;br /&gt;&lt;br /&gt;1. Jump to latest master (you should be able to do this on older commits as well)&lt;br /&gt;2. West update &amp;lt;- The warning about the &amp;#39;TEST_RANDOM_GENERATOR&amp;#39; might indicate that this step is not done properly&lt;br /&gt;3. Use BOARD nrf9160_pca10090ns&lt;br /&gt;4. Jump to zephyr/samples/hello_world&lt;br /&gt;5. Run your openssl command&lt;br /&gt;6. modify zephyr/samples/hello_world prj.conf by adding the two lines you mention above&lt;br /&gt;7. cmake -GNinja -DBOARD=nrf9160_pca10090ns &amp;amp;&amp;amp; ninja flash&lt;br /&gt;8. Verify that hello world boots.&lt;br /&gt;&lt;br /&gt;Also, the help text for the &amp;#39;SB_SIGNING_KEY_FILE&amp;#39; explicitly states that the path shall be absolute. Note that for this case, the relative path provided by you also worked for me.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Try to follow those steps, and let me know if/when it fails.&lt;br /&gt;&lt;br /&gt;Edit: I see now that you are on windows. Please try to use the absolute path :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/228168?ContentTypeID=1</link><pubDate>Wed, 08 Jan 2020 14:07:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:491e800a-e3d5-44b4-a970-5175bbb950ff</guid><dc:creator>&amp;#216;yvind</dc:creator><description>&lt;p&gt;Thanks for providing this information. I&amp;nbsp;have forwarded it to our&amp;nbsp;R&amp;amp;D team and will get back to asap.&amp;nbsp;&lt;br /&gt;&lt;br /&gt;Kind regards,&lt;br /&gt;Øyvind&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Immutable bootloader private key in zephyr</title><link>https://devzone.nordicsemi.com/thread/227749?ContentTypeID=1</link><pubDate>Mon, 06 Jan 2020 15:55:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0131915b-7898-47ce-a1c1-6260ad1d71c0</guid><dc:creator>Chris Burns</dc:creator><description>&lt;p&gt;Here is the CMakeError.log:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;Compiling the C compiler identification source file &amp;quot;CMakeCCompilerId.c&amp;quot; failed.
Compiler: C:/gnuarmemb/bin/arm-none-eabi-gcc.exe 
Build flags: 
Id flags:  

The output was:
1
c:/gnuarmemb/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib\libc.a(lib_a-exit.o): In function `exit&amp;#39;:
exit.c:(.text.exit+0x2c): undefined reference to `_exit&amp;#39;
collect2.exe: error: ld returned 1 exit status


Compiling the CXX compiler identification source file &amp;quot;CMakeCXXCompilerId.cpp&amp;quot; failed.
Compiler: C:/gnuarmemb/bin/arm-none-eabi-gcc.exe 
Build flags: 
Id flags:  

The output was:
1
c:/gnuarmemb/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib\libc.a(lib_a-exit.o): In function `exit&amp;#39;:
exit.c:(.text.exit+0x2c): undefined reference to `_exit&amp;#39;
collect2.exe: error: ld returned 1 exit status
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;And here&amp;#39;s the CMakeOutput.log:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;The target system is: Generic - 2.0.99 - arm
The host system is: Windows - 10.0.17763 - AMD64
Compiling the C compiler identification source file &amp;quot;CMakeCCompilerId.c&amp;quot; succeeded.
Compiler: C:/gnuarmemb/bin/arm-none-eabi-gcc.exe 
Build flags: 
Id flags: -c 

The output was:
0


Compilation of the C compiler identification source &amp;quot;CMakeCCompilerId.c&amp;quot; produced &amp;quot;CMakeCCompilerId.o&amp;quot;

The C compiler identification is GNU, found in &amp;quot;C:/Users/me/Repos/myproject/build/CMakeFiles/3.14.5/CompilerIdC/CMakeCCompilerId.o&amp;quot;

Compiling the CXX compiler identification source file &amp;quot;CMakeCXXCompilerId.cpp&amp;quot; succeeded.
Compiler: C:/gnuarmemb/bin/arm-none-eabi-gcc.exe 
Build flags: 
Id flags: -c 

The output was:
0


Compilation of the CXX compiler identification source &amp;quot;CMakeCXXCompilerId.cpp&amp;quot; produced &amp;quot;CMakeCXXCompilerId.o&amp;quot;

The CXX compiler identification is GNU, found in &amp;quot;C:/Users/me/Repos/myproject/build/CMakeFiles/3.14.5/CompilerIdCXX/CMakeCXXCompilerId.o&amp;quot;

Checking whether the ASM compiler is GNU using &amp;quot;--version&amp;quot; matched &amp;quot;(GNU assembler)|(GCC)|(Free Software Foundation)&amp;quot;:
arm-none-eabi-gcc.exe (GNU Tools for Arm Embedded Processors 7-2018-q2-update) 7.3.1 20180622 (release) [ARM/embedded-7-branch revision 261907]
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;When setting the path to the PEM, which folder is it referencing? I put it in the same folder as my CMakeLists.txt but that isn&amp;#39;t correct. Using an absolute path can&amp;#39;t be the best way to do it, so&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Where should the PEM file be? Or&lt;/li&gt;
&lt;li&gt;How can I use a relative path?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I&amp;#39;m not using the Segger IDE - just command line tools and text editors.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>