Proprietary code read-out protection (PCROP) software expansion for STM32Cube (AN4701, AN4758 and AN4968)

The goal of this X-CUBE-PCROP firmware is to illustrate the practical usage of the PCROP protection feature on microcontrollers of the STM32F4, STM32F7 and STM32L4 Series.

The firmware is provided with two projects: Project 1, called STEP1-ST_Customer_level_n and Project 2 called, STEP2-ST_Customer_level_n+1.

STEP1-ST_Customer_level_n shows how an ST customer level n can generate execute-only IP-Code (using compiler options), place it in a preferred Flash sector, protect it using PCROP and generate the IP-Code related files, such as the header file and the symbols definition file to be provided to ST customer level n+1. This project includes two project configurations: PCROP-IP-Code-XO and PCROP-IP-Code.

In the PCROP-IP-Code-XO configuration the compiler is configured to generate execute-only IP-Code, avoiding any data read (avoiding literal pools and branch tables).

In the PCROP-IP-Code configuration no special compiler option is used, it is just for test purposes to show that avoiding data in code (such as literal pools and branch tables) is mandatory for PCROP-ed codes.

The second project, STEP2-ST_Customer_level_n+1, shows how an ST Customer level n+1 having a preprogrammed microcontroller of the STM32F4, STM32F7 or STM32L4 Series, with a PCROP-ed IP-Code, can create his own end-user application, using these protected IP-Code functions.

The application used is the FIR filter example provided in the CMSIS library. The example is provided with Keil® MDK-ARM,IARand SW4STM32 toolchains and can be easily ported to any other toolchain.

For more details on PCROP implementation in microcontrollers, refer to the corresponding application note: Proprietary code read-out protection on microcontrollers of the STM32F4 series (AN4701), Proprietary code read-out protection on microcontrollers STM32F72xxx and STM32F73xxx (AN4968) or Proprietary code read-out protection on microcontrollers of the STM32L4 series (AN4758).

Key Features

  • PCROP
  • Read Protection
  • Write Protection

リソース

技術文書

製品スペック
Description バージョン サイズ
DB2641 DB2641: Proprietary code read-out protection (PCROP), software expansion for STM32Cube 3.0 139 KB
アプリケーションノート
Description バージョン サイズ
AN4968 AN4968: Proprietary code read out protection (PCROP) on STM32F72xxx and STM32F73xxx microcontrollers 1.0 1 MB
AN4701 AN4701: Proprietary code read-out protection on microcontrollers of the STM32F4 Series 3.0 893 KB
AN4758 AN4758: Proprietary code read-out protection on microcontrollers of the STM32L4 Series 2.0 994 KB

Publications and Collaterals

パンフレット
Description バージョン サイズ
STM32 Open Development Environment Brochure 15.10 1 MB

法務

ライセンス契約
Description バージョン サイズ
SLA0048 SLA0048: Mix Liberty + OSS + 3rd- party V1 - SOFTWARE LICENSE AGREEMENT 2.32 113 KB

ソフトウェア入手

製品型番 Software Version Marketing Status Supplier Order from ST
X-CUBE-PCROP 3.0.0 Active ST

 

×