Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
Internet of Things (IoT) blog Arm security APIs now open to contributions
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tags
  • Open Source Projects
  • iot security
  • Platform Security Architecture (PSA)
  • Open Source Software
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

Arm security APIs now open to contributions

Nicolas Devillard
Nicolas Devillard
January 10, 2023
3 minute read time.

Arm has opened contributions to PSA Certified APIs on GitHub: A range of embedded software APIs designed to ease industry collaboration around best practices and software standards. The APIs target security integrations for billions of IoT applications running on ultra-constrained devices typically powered by Arm MCU processors and provide open standards for more secure software development. They have the backing of PSA Certified, a security framework certifying silicon, software, and devices across the industry.

The work is also part of the Arm Centauri project, a recent initiative making IoT development easier and faster. This project builds architecture agnostic standards that enable interoperability and a fast-track to best practice for software developers, across the full range of low-power Arm-based devices. Centauri relies on PSA Certified APIs for everything related to security and provides the other pieces of the puzzle for standardizing APIs to commonly used hardware.

Developers creating ultra-constrained devices have many system software options available to consider. There are hundreds of real-time operating systems, libraries, and peripherals to choose from.

While diversity is good for software, fragmentation does not help when establishing common best practices around security. Arm’s initiative through PSA Certified APIs is to level the field for the integration of Roots of Trust, by providing a common set of low-level, standard APIs that are likely to help implement secure operations on those devices.

PSA Certified APIs define a set of functions and symbols in C, providing common services for embedded systems regardless of the underlying hardware. Those API sets are split into four chapters:

  • Crypto API defines how to achieve basic crypto operations.
  • Attestation API defines an attestation token and a generation function.
  • Storage API defines a small set of get and set functions to securely store data.
  • Firmware Update API defines a flow for securely updating firmware.

Arm started working on the definition of the APIs in 2018, gathering inputs from partners to ensure all topics are correctly covered and they can be implemented in software and hardware. The API specifications have been public for a few years now. Today we are proud to open them up on github.com for anyone wishing to contribute, correct bugs, suggest new functions, or address new topics around security for ultra-constrained devices.

Documentation is available from https://arm-software.github.io/psa-api/
The GitHub repository can be found at: https://github.com/ARM-software/psa-api

As a reminder: the APIs are not architecture-specific, they can be implemented on any microcontroller. We already have a reference implementation of the Crypto API inside the Mbed TLS project and all PSA Certified APIs in TF-M.

Partners implementing their own solutions behind the APIs can validate their compliance to the specification by running our PSA Certified API Compliance suite, available from GitHub. PSA Certified delivers compliance certificates which can be used to showcase your products by displaying the logo on your product site.

PSA Certified APIs define a contract between developers seeking to use secure services and vendors of secure solutions. Please have a look at those specifications and help us steer them towards something that will change the way secure firmware is developed.

Developers working on more powerful A-class systems may be interested to know that the PSA Certified Crypto API has been made available as a Linux micro-service running in user space. A similar open-source initiative, PARSEC, fully implemented in Rust, makes the same APIs available in Rust and various other programming languages. Crypto services are handed over to crypto capability providers like a TPM, a secure element, a partition running in a trusted execution environment, or just a crypto software library running in user space.

This is good news to everyone who has ever had to deal with painful crypto integrations. These APIs are not just one more standard, they aim to fundamentally solve the Crypto API issues that have plagued security developers for more than two decades.

Read the PSA Certified API Specifications

Anonymous
Internet of Things (IoT) blog
  • Transforming smart home privacy and latency with local LLM inference on Arm devices

    Fidel Makatia
    Fidel Makatia
    Learn how Raspberry Pi 5 and Arm-based local LLM inference can power a fully private, cloud-free smart home assistant with real-time performance
    • August 19, 2025
  • Building vision-enabled devices to capture the emerging wave in IoT

    Diya Soubra
    Diya Soubra
    IoT devices will drive an explosion in use cases with vision. Read more about the different use cases and what Arm technology is involved here.
    • December 9, 2024
  • The power of SystemReady for custom-built OS distributions

    Pere Garcia
    Pere Garcia
    Arm developed the SystemReady Devicetree band as part of the SystemReady program, learn more in this blog post.
    • November 22, 2024