Normal World and Secure World using TrustZone Diagram.

Getting Started

The Arm CryptoCell-300 family of embedded security solutions is aimed at high efficiency systems with emphasis on small footprint and low power consumption. The CryptoCell-300 family offers platform security services as well as a rich set of cryptographic services, targeting multiple threats. These services are needed across various Internet of Things (IoT) domains such as home automation, factory automation, smart energy, industrial IoT and other areas where there is potential usage of an Arm Cortex-M processor. 

The CryptoCell-300 family uses a modular approach which consists of control and scheduling, data interfaces, cryptography and various security resources to enable the right level of security and PPA trade-offs for a particular threat model.

CryptoCell complements TrustZone for Armv8-M and together these solutions form a Trusted Execution Environment (TEE). This helps reduce the attack surface and isolate sensitive assets and processes from potentially malicious application code.


Key Features

The CryptoCell-300 family provides these key features to owners of assets on the platform (chip vendors, device makers and more):

  • Brand-name and IP protection through enforcement of code authentication and code confidentiality – the IP allows an image owner to deliver the code to the target device – in the field or on the manufacturing floor - signed and encrypted. That code owner can be a chip vendor, a device maker, or other entities in the ecosystem. The model allows chip vendors and other entities to rely on different roots of trust, without having to share them.

  • Authenticated debug, allowing authorization of ecosystem partners for specific capabilities – the IP allows cryptographic enforcement of a debug policy that takes into account the state of the device (e.g. manufacturing and deployment status) and the specific grants the entity attempting to debug has received from an authorized entity (e.g. the OEM behind the device). The IP allows fine granularity of debug control, as well as separated authorization path for different owners of assets in the device.

  • Secure provisioning of code and data, allowing different entities to send assets to the device in a manner preserving the integrity and confidentiality over untrusted communication means.

  • Hardware based management of roots-of-trust, enforcing different access control policies based on the state of the device (e.g. manufacturing and deployment status).

  • Efficient implementation of a rich set of cryptographic services such as:
    • Symmetric ciphers like AES and chacha20 (operational in multiple modes).
    • Hashing functions like SHA1, SHA256 and keyed-hash message authentication code (HMAC) based on these hash functions.
    • Asymmetric cryptographic schemes like RSA and various schemes based Elliptic Curve Cryptography.
    • Random number generation based on a true source of entropy.

The support for some of these modes is optional and allows the integrator to trade off area footprint with performance.

CryptoCell-312 is also available with enhancements which help protect against side-channel attacks (CryptoCell-312P)

Want to know more about Security on Arm?

Learn more

Free on-demand training webinar about Arm CryptoCell

Simplifying the design of secure IoT systems

Get support

Arm support

Arm training courses and on-site system-design advisory services enable licensees to realize maximum system performance with lowest risk and fastest time-to-market.

Arm training courses  Open a support case

Community Blogs

Community Forums

Answered Where do I find presentations and photos from SC'18? 2 votes 1802 views 0 replies Started 1 years ago by John Linford Answer this
Suggested answer Build process failed in system canvas 0 votes 35 views 1 replies Latest 6 hours ago by Rob Kaye Answer this
Not answered MDK, SNTP Client, Timeout in case of error?
  • Keil MDK
  • Keil Middleware
0 votes 45 views 0 replies Started 8 hours ago by Julien MÊME (COMECA) Answer this
Suggested answer AXI4 master requirements for unaligned transactions (address v/s WSTRB) 0 votes 97 views 1 replies Latest 12 hours ago by guimers8 Answer this
Suggested answer How to set BOR for a STM32L4 micro on Keil
  • STM32 L4
  • Keil
0 votes 170 views 1 replies Latest 12 hours ago by R.Kopsch Answer this
Not answered TFT/LCD graphic contoller 0 votes 105 views 0 replies Started 15 hours ago by levetop Answer this
Answered Where do I find presentations and photos from SC'18? Started 1 years ago by John Linford 0 replies 1802 views
Suggested answer Build process failed in system canvas Latest 6 hours ago by Rob Kaye 1 replies 35 views
Not answered MDK, SNTP Client, Timeout in case of error? Started 8 hours ago by Julien MÊME (COMECA) 0 replies 45 views
Suggested answer AXI4 master requirements for unaligned transactions (address v/s WSTRB) Latest 12 hours ago by guimers8 1 replies 97 views
Suggested answer How to set BOR for a STM32L4 micro on Keil Latest 12 hours ago by R.Kopsch 1 replies 170 views
Not answered TFT/LCD graphic contoller Started 15 hours ago by levetop 0 replies 105 views