Creating checksum-protected library using RX tools

Technical Note 69721

Architectures:

RX

Component:

linker

Updated:

12/13/2023 10:26 AM

Introduction

This Technical Note shows how to create an absolutely placed library (functions and data), that can be integrity-checked using a checksum.

Discussion

Clarification

In this context the term 'library' stands for a linked executable (so the symbols there-in are absolutely located).

This usage of the term 'library' should not be mixed up with the term 'library' in use with ILINK, where 'library' stands for 'an archive of object files holding relocatable symbols'.

Idea behind the solution

The idea is that the library can be separately verified and possibly certified once, and later used by other applications.

The library is compiled and linked in a separate Embedded Workbench project.

The output is:

  • one ordinary ELF (or HEX) file,
  • one output file containing the exported symbols.

The symbols are exported using the “isymexport“-tool, described in the C/C++ Development Guide, chapter “The IAR Absolute Symbol Exporter - isymexport”.

Solution

See the pdf document Creating an absolutely placed library PDF 2.pdf and the zip Example project (IAR Embedded Workbench for RX 2.42.3).zip.

Conclusion

The pdf and the example project show how to create and use a library, that is built once, verified, and integrity-protected. (So not later changed.)

All product names are trademarks or registered trademarks of their respective owners.

We do no longer support Internet Explorer. To get the best experience of iar.com, we recommend upgrading to a modern browser such as Chrome or Edge.