mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
e38aec72b2
`pycrypto` is unmaintained [[1]] since v2.6.1 (released October 2013). This version, however, has some severe vulnerabilities [[2]] [[3]]. The recommendation is to use the API-compatible `pycryptodome` library. [1]: https://github.com/pycrypto/pycrypto/issues/173 [2]: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2013-7459 [3]: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6594
34 lines
1.2 KiB
Markdown
34 lines
1.2 KiB
Markdown
# MCUBoot test application
|
|
This test is intended to compile a hello-world program taking into account
|
|
the existence of the MCUBoot bootloader at the first 32K in the ROM.
|
|
|
|
For this first support, a pre-compiled mynewt MCUBoot binary is downloaded at
|
|
compile time.
|
|
|
|
The goal is to produce an ELF file which is linked to be flashed at a
|
|
`BOOTLOADER_OFFSET` offset rather than the beginning of ROM. MCUBoot also
|
|
expects an image padded with some specific headers containing the version
|
|
information, and TLVs with hash and signing information. This is done through
|
|
the imgtool.py application, which is executed automatically by the build
|
|
system.
|
|
|
|
Before running the test, be sure that you meet the following Python3
|
|
dependencies:
|
|
|
|
- pycryptodome
|
|
- ecdsa
|
|
- pyasn1
|
|
|
|
If you don't have one of those, you can install them with the commands:
|
|
|
|
```console
|
|
pip3 install --user pycryptodome ecdsa pyasn1
|
|
```
|
|
|
|
This test can be called using `make mcuboot` to produce such ELF file,
|
|
which can also be flashed using `make mcuboot-flash`.This command also flashes
|
|
the pre-compiled bootloader.
|
|
|
|
It's also possible to build and flash MCUBoot by following the instructions on
|
|
the MCUBoot repository either using mynewt or zephyr operating systems.
|