Den0128 Psa SM V1.1 Rel0
Den0128 Psa SM V1.1 Rel0
Release Information iv
Feedback vi
Feedback on this book vi
3 PRoT Parameters 21
4.1 Debug 25
5 PRoT Binding 27
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page ii
1.1 REL 0 Non-Confidential
6.3 Anti-rollback 31
6.3.1 Anti-rollback Reference Version Update 31
6.3.2 Anti-rollback Reference Number Reset 32
7 PRoT Services 35
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page iii
1.1 REL 0 Non-Confidential
About this document
This document is one of a set of resources provided by Arm that can help organizations develop products that
meet the security requirements of PSA Certified on Arm-based platforms. The PSA Certified scheme provides a
framework and methodology that helps silicon manufacturers, system software providers and OEMs to develop
more secure products. Arm resources that support PSA Certified range from threat models, standard
architectures that simplify development and increase portability, and open-source partnerships that provide
ready-to-use software. You can read more about PSA Certified here: www.psacertified.org and find more Arm
resources here: developer.arm.com/platform-security-resources.
This Security Model motivates the set of platform security architecture specifications that target internet and
other forms of connected compute-centric devices. This document underlies the PSA Certified™ framework and
certification scheme.
Key goals for designing devices based on essential security properties are described in this security model. These
essential properties are used to define a Platform Root of Trust for a platform on which end-products can be
built. This Platform Root of Trust covers the set of hardware and firmware necessary to support non-secure and
secure processing.
A connected device needs to operate within an ecosystem. This document outlines how such a device and some
of the essential security features might fit within an ecosystem. It does this by illustrating typical entities,
capabilities and processes required to securely deploy connected services.
Release Information
The change history table lists the changes that have been made to this document.
May 2021 1.0 REL 0 Non-Confidential Arm version of DEN 0079 PSA Certified 1.0 Release 0
December 2021 1.1 Beta 0 Non-Confidential Arm version of JSADEN014 PSA Certified 1.1 Beta 0
November 2023 1.1 REL 0 Non-Confidential Document is stable, minor textual enhancements
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page iv
1.1 REL 0 Non-Confidential
Platform Security Model 1.1
Copyright ©2023 Arm Limited or its affiliates. All rights reserved. The copyright statement reflects the fact that
some draft issues of this document have been released, to a limited circulation.
Licensee hereby agrees that the licences granted above shall not extend to any portion or function of a product that is not itself compliant with
part of the Document.
Except as expressly licensed above, Licensee acquires no right, title or interest in any Arm technology or any intellectual property embodied
therein.
THE DOCUMENT IS PROVIDED “AS IS”. ARM PROVIDES NO REPRESENTATIONS AND NO WARRANTIES, EXPRESS, IMPLIED OR
STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY, SATISFACTORY QUALITY, NON-
INFRINGEMENT OR FITNESS FOR A PARTICULAR PURPOSE WITH RESPECT TO THE DOCUMENT. Arm may make changes to the Document
at any time and without notice. For the avoidance of doubt, Arm makes no representation with respect to, and has undertaken no analysis to
identify or understand the scope and content of, third party patents, copyrights, trade secrets, or other rights.
NOTWITHSTANING ANYTHING TO THE CONTRARY CONTAINED IN THIS LICENCE, TO THE FULLEST EXTENT PETMITTED BY LAW, IN NO
EVENT WILL ARM BE LIABLE FOR ANY DAMAGES, IN CONTRACT, TORT OR OTHERWISE, IN CONNECTION WITH THE SUBJECT MATTER
OF THIS LICENCE (INCLUDING WITHOUT LIMITATION) (I) LICENSEE’S USE OF THE DOCUMENT; AND (II) THE IMPLEMENTATION OF THE
DOCUMENT IN ANY PRODUCT CREATED BY LICENSEE UNDER THIS LICENCE). THE EXISTENCE OF MORE THAN ONE CLAIM OR SUIT
WILL NOT ENLARGE OR EXTEND THE LIMIT. LICENSEE RELEASES ARM FROM ALL OBLIGATIONS, LIABILITY, CLAIMS OR DEMANDS IN
EXCESS OF THIS LIMITATION.
This Licence shall remain in force until terminated by Licensee or by Arm. Without prejudice to any of its other rights, if Licensee is in breach of
any of the terms and conditions of this Licence then Arm may terminate this Licence immediately upon giving written notice to Licensee. Licensee
may terminate this Licence at any time. Upon termination of this Licence by Licensee or by Arm, Licensee shall stop using the Document and
destroy all copies of the Document in its possession. Upon termination of this Licence, all terms shall survive except for the licence grants.
Any breach of this Licence by a Subsidiary shall entitle Arm to terminate this Licence as if you were the party in breach. Any termination of this
Licence shall be effective in respect of all Subsidiaries. Any rights granted to any Subsidiary hereunder shall automatically terminate upon such
Subsidiary ceasing to be a Subsidiary.
The Document consists solely of commercial items. Licensee shall be responsible for ensuring that any use, duplication or disclosure of the
Document complies fully with any relevant export laws and regulations to assure that the Document or any portion thereof is not exported,
directly or indirectly, in violation of such export laws.
This Licence may be translated into other languages for convenience, and Licensee agrees that if there is any conflict between the English version
of this Licence and any translation, the terms of the English version of this Licence shall prevail.
The Arm corporate logo and words marked with ® or ™ are registered trademarks or trademarks of Arm Limited (or its subsidiaries) in the US
and/or elsewhere. All rights reserved. Other brands and names mentioned in this document may be the trademarks of their respective owners.
No licence, express, implied or otherwise, is granted to Licensee under this Licence, to use the Arm trade marks in connection with the Document
or any products based thereon. Visit Arm’s website at https://www.arm.com/company/policies/trademarks for more information about Arm’s
trademarks.
The validity, construction and performance of this Licence shall be governed by English Law.
Copyright © [2023] Arm Limited (or its affiliates). All rights reserved.
Arm Limited. Company 02557590 registered in England.
110 Fulbourn Road, Cambridge, England CB1 9NJ.
Arm document reference: LES-PRE-21585 version 4.0
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page v
1.1 REL 0 Non-Confidential
Potential for change
The contents of this specification are subject to change.
In particular, the following may change:
• Feature addition, modification, or removal
Feedback
Arm welcomes feedback on its documentation.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page vi
1.1 REL 0 Non-Confidential
1 Platform Security Model Overview
This Platform Security Model (PSM) is one document in a holistic set that includes threat models and security
analyses, security requirement specifications and application programming interfaces, all architecture-agnostic.
Together with an open-source reference implementation and test suites, this enables consistent design-in at the
right level of security.
This framework builds upon best practice from across the industry and is aimed at different entities throughout
the supply chain, from chip designers, software vendors and device developers to cloud and network
infrastructure providers. Though the focus is on compute-centric local network or internet connected devices,
many aspects are relevant for non-connected devices. No assumptions are made about the solution architecture,
only that the properties described are met whether using a resource- and performance-constrained
microcontroller or a resource-rich powerful microprocessor-based platform.
This security model is the top-level document for the other platform security specifications and defines a
common language, high-level robustness rules, and models.
Products may go through a security evaluation, such as PSA Certified, to provide a measure of the robustness of
the implementation.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 7
1.1 REL 0 Non-Confidential
Goal 4: Devices ensure that only authorized software can be executed.
Secure boot and secure loading processes are necessary to ensure that only authorized software can be
executed on the device. See also Goal 6. Allowing unauthorized software is acceptable only if such software
cannot compromise the security of the device.
Goal 10: Devices support a minimal set of trusted services and cryptographic operations that are
necessary for the device to support the other goals.
Trusted services may include configuration of the hardware to support security lifecycle (see Goal 2), isolation
(see Goal 7), and cryptographic services that may use bound secrets (for example, keys) used to support
attestation (see Goal 3), secure boot and secure loading (see Goal 4), and binding of data (see Goal 9). The
trusted services must be kept as small as possible to enable analysis and reduce the likelihood flaws.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 8
1.1 REL 0 Non-Confidential
These goals inform and are embodied in the platform security specifications that are designed to help in the
development and deployment of secure products. It is recommended that all features are implemented.
However, the features supported to secure a device are determined by, for example, the intended application
domain and cost, by applicable threat models, by applicable national standards, by ecosystem operators, and by
any certification scheme. However, implementing the security features to increase the security level and provide
product differentiation is a motivation behind this document.
Manufacture
Enrolment
Reporting Design and
Manufacture
Factory Provisioning
Deployment
Provisioning Attestation
and Updates Service Providers Protocol
• Security specifications enable the design and deployment of compliant devices that are compatible with
the ecosystem requirements:
o The Platform Security Model, this document, defines the top-level security concepts, identifies,
and defines the Platform Root of Trust and generic Platform Root of Trust services
o Technical specifications define the security requirements, outline solution architectures, and
provide the necessary mitigations identified by threat modelling and security analysis. This
includes generic material and references other standards that can be applied to any
implementation
o Reference architectures are any other applicable specifications that define, for example,
hardware and software functional and robustness requirements, and standardized functional
interfaces
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 9
1.1 REL 0 Non-Confidential
• Certification and compliance show that a deployed device is compliant and compatible with the
ecosystem requirements
o Threat Models and Security Analyses (TMSA) identify use case-specific security threats and
motivate use case-specific security functional requirements
o Compliance testing, for example PSA Functional API Certification, deals with interfaces,
functional behavior, and interoperability
o Certification programs, for example PSA Certified, assess the implementation of the security
functional requirements of a compliant device for vulnerability against the identified threats.
The robustness that is required is based on use case, cost and security trade-off and the
assessment scope. Certification schemes are an assessment and not a guarantee that a device is
free from vulnerabilities
Figure 1 also illustrates the following elements that are typical in an ecosystem, but not defined by in this
security model:
• Design and manufacture: Secure-by-design devices should be designed and then manufactured based on
security specifications with the aim of achieving robustness certification and functional compliance.
Device manufacture includes the provisioning of root secrets and other sensitive information. See
section 4.
• Deployment: Service providers manage and support deployed devices through:
o Device management: Device manufacturers provide device manufacture data, provisioning,
firmware update services, and other support functions. Device management considers devices
throughout their lifetime, from factory provisioning through deployment, any re-deployment, in-
field analysis, repair, to end-of-life. Data specific to the device management system must be
defined by that system. The storage of such data may make use of the Platform Root of Trust
services
o Device verification: Devices are enrolled with a device verification system, including attestation
verification. Depending on ecosystem requirements, device and attestation verification services
are expected to be deployed by manufacturers, service providers, or by industry consortia
1. The overall trust anchor for the system. This ensures the platform is securely booted, configured,
establishes the secure environments required to support the protection of security sensitive operations,
and contains the root parameters. This is called the Platform Root of Trust (PRoT).
2. The secure environment for the PSM-defined generic security services, referred to as PRoT services
(section 7). These services facilitate the PRoT and are intended to be used by application specific security
services and functionality.
3. The secure environment for any Application Root of Trust (ARoT) services. An ARoT service can be any
application defined security service, which may make use of the PRoT services. Note that some systems
may need nothing more than the PRoT and PRoT services.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 10
1.1 REL 0 Non-Confidential
There are many ways to build a PSM compliant device. For this reason, the following generalized concepts are
used.
• A partition is defined as some processing with a defined logical boundary. Typically, this means software
but may also apply to hardware, including hardware controlled by software. Interaction with a partition
and its data, both in- and out-bound, must be only via defined interfaces with defined behavior. Abuse
of the interface must not be able to compromise the partitions on either side of the boundary. Partitions
are managed by a partition management function, see section 2. Partitions may be nested within other
partitions, see section 1.3.1.
• A partition manager is used to allocate resources to the partitions that it manages, for example,
communication channels, memory, interrupts, peripherals, and processing time. A partition manager will
have a defined logical boundary with defined interfaces and interactions (in this sense it is also a
partition). Typically, the partition management function comprises software that dynamically manages
partitions. In the case where there is only one partition, the partition management function may not
exist. Note that there may be some elements of partition management that are static and set when the
partition manager is initialized.
• A processing environment hosts partitions, including any partition manager (and the partitions that it
manages), and attributes the partitions with specific security properties, though these might be trivial
for any processing not considered security sensitive. For example, a processing environment might,
through hardware design, have sole access to system resources that enforce isolation. A sub-system with
hardware-based countermeasures against physical attacks is another example. Processing environments
can be necessary to mitigate specific threats and attacks, or to comply with different certification
schemes and assurance levels. Applying the most demanding of the attributes to the entirety of a system
is often not practical, and non-security motivations may also apply, for example, real-time
characteristics, system architecture considerations, re-use of existing designs, separation of
responsibilities and ownership. Processing environments may be established at run-time, typically, but
not necessarily, during system boot, or they may be inherent from the design of the system. This can
lead to devices with more than one trust anchor if the isolation between them is fixed, for example, in
the hardware design.
A minimal PSM compliant device is illustrated in Figure 2. There are two processing environments. One, labelled
Secure Processing Environment (SPE), hosts partitions, called secure partitions, for PSM-defined security
processing. The other, labelled Non-Secure Processing Environment (NSPE), hosts partitions for all other
processing. The SPE shown in Figure 2 hosts the following PSM elements:
• The Platform Root of Trust, which is discussed in section 2, comprises:
o The Immutable Platform Root of Trust, which is inherently trusted. This largely refers to the
hardware, see section 2.1, including any firmware that cannot be updated on a production
device.
o The Updateable Platform Root of Trust, such as firmware and configuration that is trusted by
verification through a chain of trust tied to the trust anchor and can be updated on a production
device. This largely refers to software, see section 2.2, but may include configurable hardware
that can be changed.
o The Platform Root of Trust Services, which includes the secure storage, cryptographic, and
attestation services that are covered in section 7. Typically, these are part of the updateable
Platform Root of Trust.
• Any Application Root of Trust (ARoT) service(s), which are not covered in this document. They are
expected to use interfaces provided by the PRoT services but must have no direct access to the
immutable PRoT. Typically, ARoT services are updateable.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 11
1.1 REL 0 Non-Confidential
A secure partition must only host the PRoT, the PRoT services, or any ARoT services. All other processing must be
completely outside any secure partition and secure processing environment.
Updateable
Application Application
Root of Trust …. Root of Trust
Platform
Root of Trust Services Secure
Processing
Platform
Updatable Environment
Root of
Trust Platform Root of Trust
Immutable
Immutable
Platform Root of Trust
Volatile Non-volatile
Peripherals
Memory Storage
Untrusted Resources
Application Application
Root of Trust …. Root of Trust Secure
Processing
Environment
Platform Root of Trust Services
Platform
Root of
Trust Updatable
Platform Root of Trust Secure
Processing
Environment
Immutable
Immutable
Platform Root of Trust
Volatile Non-volatile
Peripherals
Memory Storage
Untrusted Resources
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 12
1.1 REL 0 Non-Confidential
PSM allows for systems where there is the need for more than one secure processing environment (SPE). For
example, Figure 3 illustrates a device with two SPEs, one for the PRoT and the other for the PRoT services and
any ARoT services. See also section 1.3.3.
PSM is concerned with the protection of the PRoT, the PRoT services and any ARoT services. Provided the PSM
security requirements are not violated, non-PSM security processing environments can co-exist, as shown in the
example on Figure 4. As the trust anchor for the device, the PRoT may need to include functionality specific to
any non-PSM security service, and the PRoT SPE will need to meet any specific non-PSM processing environment
security properties.
Updateable
Non-PSM
Non-PSM
Security Service
…. Non-PSM
Security Service
Processing
Environment
Application Application
Root of Trust …. Root of Trust Secure
Processing
Environment
Platform Root of Trust Services
Platform Updatable
Root of Platform Root of Trust Secure
Trust Processing
Environment
Immutable Immutable
Platform Root of Trust
Volatile Non-volatile
Peripherals
Memory Storage
Untrusted Resources
In practice it may be necessary to distribute the PRoT and PRoT services functionality over multiple partitions
and, possibly, multiple secure processing environments. Such distribution leads to the need to either restrict
access to, or protect, the transactions between the defined interfaces of the distributed partitions.
Access to transactions between partitions should be restricted only to those interacting partitions or agents that
are trusted, for example:
• Access can be permitted, for example when on the same die, through static design topology or though
secure configuration that is set and protected by the PRoT
• Where access cannot be denied, cryptography can be used to ensure that the transactions are protected
in at least confidentiality, but where necessary are protected also in integrity and against replay
It is also necessary to handle any unauthorized substitution of any one of those interacting partitions in a safe
and secure way, for example:
• When on the same die, the hardware components are physically inseparable
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 13
1.1 REL 0 Non-Confidential
• Where on more than one die, more generally where physical inseparability cannot be guaranteed, then
separation must result in safe and secure failure. For example, using cryptography to ensure that the
transactions are protected in integrity, confidentiality, and against replay
The mechanisms deployed to meet the accessibility and inseparability objectives will depend on the security
requirements derived from threat modelling, any applicable certification scheme and related protection profiles.
1.3.1 Isolation
Isolation ensures that processing in one partition cannot compromise any code, run-time state including
hardware, and secrets, of any other partition either directly or via misuse of software-controlled hardware
elements.
PSM requires each secure processing environment (SPE) to be isolated by hardware means from all other
processing environments. Figure 5 illustrates SPE isolation, shown by the red border, from the NSPE in the
minimal PSM system of Figure 2. Any run-time hardware required to enforce this isolation must be configurable
only by the processing environment management function fulfilled by the PRoT, see section 2.2. Non-PSM
processing environment isolation requirements, for example, isolation from the SPEs, though very advisable, is
not defined by PSM.
Updateable
Application Application
Root of Trust …. Root of Trust
Immutable
Platform Root of Trust
Volatile Non-volatile
Peripherals
Memory Storage
Untrusted Resources
Isolation between partitions is not defined by PSM but will depend upon the security requirements and any
applicable certification scheme. Figure 6 illustrates, with an orange border, the isolation of secure partitions that
form the PRoT and PRoT services and the isolation of secure partitions that form the ARoT services. It is
recommended that all processing, especially software, is designed assuming that the isolation boundaries are
enforced. This encourages the development of robust solutions that will continue to work when, for example,
the isolation is activated during later stages of the development process or where the solution is re-used on
devices that do enforce the isolation.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 14
1.1 REL 0 Non-Confidential
Application Specific Software Non-secure
Processing
Environment
System Software/Firmware
Updateable
Application Application
Root of Trust …. Root of Trust
Immutable
Immutable
Platform Root of Trust
Volatile Non-volatile
Peripherals
Memory Storage
Untrusted Resources
Isolation of partitions is handled by a partition management function (see section 2.2). This function may be
fulfilled, for example, by an Operating System, which may, itself, be a partition isolated from other virtual
machines by a hypervisor that also fulfils a partition management function. In other words, a partition may be
nested in another partition. Each outer most partition manager is hosted in a single processing environment.
Note that a nested secure partition can only be nested within another secure partition, and hosted in a secure
processing environment.
Figure 7 illustrates an example where a processing environment includes a partition management function. One
of the managed partitions contains another partition management function that manages two partitions. The
orange border illustrates where isolation has been enforced by the applicable partition manager. Multiple
processing environments, as in Figure 3, will require a partition management function for every processing
environment that supports more than one partition.
Partition A Partition B
Processing
Partition Manager 1.1 Partition C Environment
Partition Manager 1
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 15
1.1 REL 0 Non-Confidential
Consequently, the PRoT and PRoT services may no longer be trusted. Any ARoT services may not be trusted.
Trust in the entire device may be lost.
To minimize this risk, all access to the root parameters and the Boot ROM should be denied as soon as possible
after they have fulfilled their purpose, which typically means at the point where control passes to the
updateable PRoT. This is termed Temporal Isolation. All processing before a temporal isolation boundary must
complete its task and handover to the stage after the boundary; the only way back requiring a reset leading to a
system boot. This should be enforced in hardware.
Figure 8 illustrates temporal isolation in the secure boot flow of section 6.
Immutable Updateable
Platform
Root Parameters
Main Root of Trust Services
Bootloader
SPE
Boot ROM
Partition Management
time
Only state explicitly provided for use by the processing to be performed after the temporal boundary must be
accessible after the boundary. For secure boot, that state will likely be derived from sensitive assets in the root
parameters and must be stored on-chip because external storage exposes the state to attack. Note that re-use of
code from before a temporal boundary to reduce the overall footprint may be acceptable provided it does not
expose any sensitive data that the temporal boundary is there to protect.
The immutable PRoT must also be protected from compromise throughout the lifetime of the product, see
section 4.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 16
1.1 REL 0 Non-Confidential
A trusted subsystem may have its own root of trust and its own security lifecycle. However, all configuration and
updates must be performed by the PRoT, and that configuration and state must always be attestable by the
PRoT, see section 7.3.
Updateable
Application Application
Root of Trust …. Root of Trust
Immutable
Trust Immutable
Platform Root of Trust
Secure
Trusted Subsystem Processing
Environment
Volatile Non-volatile
Peripherals
Memory Storage
Untrusted Resources
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 17
1.1 REL 0 Non-Confidential
2 Platform Root of Trust
The Platform Root of Trust (PRoT) includes the hardware and software components that are responsible for
system level security configuration, anchoring the secure boot process to establish a chain of trust for the
platform, establishing any partitions for its own functionality and establishing the isolated secure processing
environments. The PRoT services provide functionality available to the system beyond the initialization phase,
for these, PSA Certified define some interfaces in the form of APIs and ABIs.
The set of functionalities illustrated in Figure 10 is indicative of the minimal PSM device model shown in Figure 2.
Figure 10 also illustrates a typical split between the hardware and software1 parts of an implementation.
Mapping of the functions to specific partitions and secure processing environments will be specific to each
platform architecture. For example, a system like that shown in Figure 4 will likely have a secure partition
management function for each of the SPEs, and possibly partition management functions for the NSPE and any
non-PSM processing environments.
Internal
Secure Secure Initial Secure
Trusted
Boot Update Attestation Storage
Storage Trusted
Subsystem(s)
Isolated & Crypto-
Boot Isolation
Platform Shielded graphic
ROM Hardware
Root of Trust Locations Hardware
Hardware
Lifecycle State Management
1
In this document no distinction is made between software and firmware.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 18
1.1 REL 0 Non-Confidential
manufacture. The Boot ROM is typically implemented using Mask ROM, permanently locked one-time-
programmable memory (OTP), or locked on-chip flash, or some combination of these. See section 6.
• Isolated locations contain sensitive data stored in non-volatile memory. There must be some locations
on-chip, typically OTP, or on-chip flash (if practical). Access should only be by the PRoT or PRoT services.
Some on-chip isolated locations may be used by the Boot ROM during system configuration, and some
may, via a hardware path, directly control cryptographic hardware or other security configuration
hardware.
• Shielded locations are tamper-resistant isolated locations intended to hold provisioned secrets, including
the PRoT root parameters, see section 3. Tamper resistance may include mechanisms to make active
probing difficult, for example, physical disassembly for access to internal buses and interfaces, may
include countermeasures against side-channel attacks, for example, power and timing analysis, or may
include protection against power and clock glitching. However, the extent of tamper-resistance and the
choice of data stored will depend on the threats identified during threat analysis that are applicable to
the deployment requirements, or to any certification requirements. Off-chip tamper resistant storage
hardware can be classed as a trusted subsystem, see section 1.3.3.
• Isolation hardware is the on-chip hardware that is necessary to implement the isolation requirements
covered in sections 1.3.1 and 1.3.2. The extent of the isolation depends on any certification scheme,
deployment requirements or to mitigate threats identified during threat analysis. Control and
configuration of the hardware that isolates the processing environments must be by the PRoT.
• Cryptographic on-chip hardware may be available. On-chip hardware may provide performance benefits
and make direct use of keys and configuration stored in on-chip isolated locations or shielded locations.
Some countermeasures against side-channel attacks and resistance to fault injection may be possible,
however, off-chip cryptographic hardware may provide stronger physical protection should that be
needed. See below and section 1.3.3 on trusted sub-systems.
• A trusted subsystem may provide functionality that the PRoT or PRoT services rely on for correct
operation. For example, a trusted subsystem may provide cryptographic operations, such as encryption,
decryption, and signature generation, while denying all access to the key material used for the
operation. See section 1.3.3.
• Lifecycle state management represents any hardware used to indicate or control operations that are
state dependent. See section 4.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 19
1.1 REL 0 Non-Confidential
function may also be responsible for allocating and scheduling the use of shared processing resources
between the managed secure processing environments.
• Secure partition management enforces any required isolation between the managed secure partitions
and controls access to resources for each secure partition, for example, to access to Internal Trusted
Storage and operations performed by the Cryptographic service, see below and section 5. This function
may also be responsible for allocating and scheduling the use of shared processing resources between
the managed secure partitions.
• Internal Trusted Storage (ITS) is a PRoT service that provides partition-based access control to isolated
and shielded locations for all PSM secure processing environments. That means that ITS is available to
any secure partition that implements PRoT or ARoT service functionality. See section 7.1.
• Secure Storage is a PRoT service that provides secure storage in non-isolated storage for any ARoT
service, see sections 2.3 and 7.4.
• Cryptographic operations is a PRoT service that provides partition-based access control to the use of
keys and cryptographic processing for all secure partitions that implement PRoT or ARoT functionality.
See section 7.2.
• Initial Attestation is a PRoT service that a allows a validation entity, as shown in Figure 1, to validate the
trustworthiness of the Platform Root of Trust, its implementation, and updateable components loaded
during secure boot. See section 7.3.
Provided that all processing environment isolation requirements are upheld, the PRoT services that support
internal trusted storage, the cryptographic operations and initial attestation may be available to non-PSM
processing environments, for example, to the NSPE shown in Figure 2, or the Non-PSM Processing Environment
shown in Figure 4.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 20
1.1 REL 0 Non-Confidential
3 PRoT Parameters
A device platform requires at least the parameters, or equivalent, listed below and in Table 1.
• Implementation ID; public data that uniquely identifies the implementation. Typically, this identifies the
device manufacturer, the device model and version number, and any other data necessary to uniquely
identify the device and the Immutable PRoT
• Instance ID: a public value that identifies the specific instance of the device identified by the
Implementation ID. This also allows identification of the instance Initial Attestation Key, and, possibly,
the Hardware Unique Key.
• Hardware Unique Key: a secret key unique to each device instance that is used to derive other device
unique secrets and to bind data to that instance (see section 5)
• Boot Validation Key: the public part of an asymmetric key pair used for authentication during secure
boot, however, see section 6
• Initial Attestation Key: a secret private key from an asymmetric2 key-pair accessible only to the Initial
Attestation service, see section 7.3. To prevent cloning or spoofing, this key must be unique to each
device instance or to a collection of identical devices. They should not be shared between different
versions of a device, between different devices, or between manufacturers.
• Boot Decryption Key: a secret symmetric key used where the boot images authenticated by the Boot
ROM are encrypted. Note that the device requirements or any applicable certification scheme may not
require the images to be encrypted.
Boot Validation Key Yes No see section 4 Isolated Location or Boot ROM
Initial Attestation Key Yes Yes Secret Shielded Location or derived
Boot Decryption Key Yes No see section 4 Isolated Location or Boot ROM
As a consequence of temporal isolation boundaries for secure boot, see sections 6 and 6.4, the parameters are
categorized as follows, based on whether each is secret or public. Secret means that the data that must not be
accessible to unauthorized agents, and public means that the data may be shared inside and outside the device.
• Initial parameters are those used by the immutable PRoT. Depending on the certification profile, initial
parameters are stored in isolated locations or shielded locations. They should only be directly accessible
2
In this document no distinction is made between software and firmware.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 21
1.1 REL 0 Non-Confidential
or useable by the immutable PRoT, see section 6, but can be copied to, or used as seeds for derivation of
Initial Boot State data, see section 6.4.1.
• Updateable parameters are those that are used by the PRoT services. They should only be directly
accessible by the updateable PRoT code and can be copied to or derived and stored in the Main Boot
State, as required, see section 6.4.2.
Direct use of a Shielded Location or Isolated Location, or using derivation, is implementation specific. In general,
derivation can be more flexible and future proof. Derivation can support additional strategies for protecting
secret parameters and may reduce the risk of exposure of secret parameters during device manufacture.
However, derivation may require additional computational resources at boot.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 22
1.1 REL 0 Non-Confidential
4 PRoT Security Lifecycle
A lifecycle defines the states of an object through its lifetime. Each security state in the security lifecycle of a
device defines the security properties in that state. Security state can depend on:
• Software versions
• Run-time status such as data measurements, hardware configuration, and status of debug ports
• Product lifecycle phase, for example, development, deployment, returned to manufacturer, or end-of-
life
This section is concerned with how the Platform Root-of-Trust and its data and secrets may be compromised
when debug is enabled after the platform has been secured, and how to ensure valid attestation only in
attestable states. The generic security lifecycle shown in Figure 11 is intended to capture only the minimum set
of notional lifecycle states and transitions. The described characteristics of each state will need to be related to
the actual states that arise in an implementation and deployment.
Device Lockdown
PRoT Provisioning
Provisioning Lockdown
Enrol
Secured
Device
Management Recoverable Recoverable
System
PRoT Debug Non-PRoT Debug
Terminate
Decommissioned
• Device assembly and test: The device will be running manufacture and diagnostic software. This is not a
secure state and, therefore, is not an attestable state
o Hardware debug interfaces may be open, secure boot may not be enabled
o If secure boot is already enabled, manufacture and diagnostic software should not be signed by
the same authority as the final production software. There must be the ability to revoke any
manufacture and diagnostic software certificates.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 23
1.1 REL 0 Non-Confidential
o Test secrets and identities may be present. Production platform security parameters must not be
present
• PRoT Provisioning: The device is programmed with production platform security parameters, see Table
13, and is configured so it can enter the Secured state. This is not a secure state and, therefore, not an
attestable state
o Production platform security parameters are provisioned and locked to prevent modification.
Random values that are generated on the device should use a random source with sufficient
entropy. Where parameters are provisioned separately, for example on a secure element, then it
should not be possible for any device software to access or perform any operations with them
until the device has reached this state
o Hardware debug ports should be disabled, or an access control mechanism activated
o Secure boot should be enabled
o Only signed production software should be present. Manufacture and diagnostic software must
not be present after any use in the PRoT provisioning process.
o Once the device has been provisioned it may be enrolled with a device management system.
This will declare the existence of the device to the ecosystem
• Secured: The PRoT is fully operational and secured. This is the operational security state for most of the
life of the device. Only in this state do the platform security parameters become available to any PRoT
software. Provisioning of any application-specific data that is to be protected using PRoT services can
now be performed. This is expected to require manufacture reporting for tracking and identification of
fully secured devices. This is a secure and attestable state
• Debug: Figure 11 includes Non-PRoT Debug and PRoT Debug states. If entering either debug state is
supported once a device is in the Secured state, then a system reset is required. This is because the
device includes production secrets and the act of reset requires the removal of, or denial of access to,
any previous data and derivation of Secured state sensitive data. Only if the PRoT and PRoT services can
still be considered trustworthy after either debug state can the device be returned to the Secured state;
this is called recoverable debug. Otherwise, debug is considered as non-recoverable, see section 4.1
• Decommissioned: Entering this state requires a system reset. This is because the device includes
production secrets and the act of reset requires the removal of, or permanent denial of access to, any
previous data and derivation of Secured state sensitive data. This is not a secure state and so not an
attestable state
o Production platform security parameters secrets should be permanently inaccessible, denying
attestation and access to any bound data. The overall product lifecycle may require non-secret
platform identities to remain accessible
o It is not possible for the device to leave the Decommissioned state unless a full factory reset is
possible, and the device becomes indistinguishable from a new device. This means that the
device can be securely re-provisioned with a new set of platform security parameters stored in
Isolated Locations or Shielded Locations, or in the Boot ROM, effectively resulting in a new
device instance
o Revocation of the device by the device management system can be used to ensure that the
device is no longer operational. This is necessary even if the device can be factory reset
3
This may include the Boot ROM firmware if not a design-time mask ROM.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 24
1.1 REL 0 Non-Confidential
Additional states and sub-states may exist in any real device. Any sub-state must retain the properties of its
parent. Both parent and sub-states must always be attestable once a device enters an attestable state. The
security state is included in the PRoT attestation claims, see section 7.3. Therefore, it is not permitted for the
security state to change without a device reset if either the current state or the new state is attestable.
4.1 Debug
It may be necessary to debug a device that has reached the Secured state in its lifecycle, see Figure 11. Debug
during product development is likely to be on non-secure parts or with secure parts provisioned with
development credentials.
When the device is in Secured state, logging of events or reporting of diagnostics in a way that does not expose
sensitive data and does not affect the trustworthy operation of the device is permitted. The ecosystem may
require that such logs and reports are only accessible by a device management system, and are integrity and
confidentiality protected. This is called non-intrusive debug.
Debug that is more intrusive than event logging depends on the access level that is granted to the debugging
agent. For example, it is possible that device-sensitive data can be compromised or that secure boot may be
circumvented, meaning that the device is no longer trustworthy.
This PSM is concerned with protection of the PRoT and PRoT services when the device is subject to intrusive
debug. Table 2 includes the two notional debug states shown in Figure 11. One, called PRoT Debug, covers
explicit debug of the PRoT and PRoT Services. The other, called Non-PRoT Debug, covers the security
requirements for the PRoT, PRoT services and any ARoT services that may arise when debugging any other part
of the device. An implementation where debug in a Non-PRoT debug state cannot guarantee that the PRoT and
PRoT services are free from compromise is indistinguishable from the PRoT Debug. Note that the actual debug
states and options that are available to the manufacturer will depend on the specific hardware implementation
on the device.
The act of entering a debug mode should be by a secure mechanism, typically some form of authentication, even
if protection of the sensitive assets is not implemented.
Table 2: Intrusive debug
Secure
Debug
and Security Implications/Requirements
State
Attestable
Non-recoverable Compromises PRoT, PRoT parameters, any PRoT services and any
PRoT ARoT services.
No
Debug Recoverable May compromise the PRoT operation while in this state but
cannot compromise the PRoT parameters.
Non- No Non-recoverable PRoT and PRoT services must not have been compromised.
PRoT
Debug Yes Recoverable ARoT services and data should not have been compromised.
Intrusive forms of debug should be restricted to authorized debug agents and require a secure authorization
process, with the debug rights granted by an appropriate device management service. This process is beyond the
scope of this document. However, other platform security specifications provide guidance. Non-PRoT debug is
beyond the scope of this document.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 25
1.1 REL 0 Non-Confidential
Debug of the PRoT is the most intrusive. When the PRoT debug state is entered it must not be possible to issue
an attestation token that is signed using the Initial Attestation Key. This is because the device is no longer in a
trustworthy state. Also, it must not be possible to derive production binding keys in order to prevent access to
securely stored data, see section 5.
Recoverable PRoT debug applies to devices that can deny access to production platform security secret
parameters when in PRoT debug state and can be restored to a fully trustworthy and attestable state on exit,
provided the debug activity has not compromised the Secured state.
Non-recoverable PRoT debug applies to devices that are not able to protect the platform security parameters
and are not able to ensure that the debug has not compromised the Secured state. This type of device must
make the platform security parameters permanently inaccessible on entry to debug. The only valid next state is
Decommissioned.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 26
1.1 REL 0 Non-Confidential
5 PRoT Binding
The following types of binding are applicable when sensitive data owned by secure partitions are stored in Non-
isolated Storage, see section 2.3. Binding may also be used to protect Internal Trusted Storage.
• Device binding binds the data to the owning device instance. No other device instances can directly
access the data.
• Partition binding binds the data to the owning secure partition. No other partition in any processing
environment can directly access the data.
• Lifecycle State Binding binds the data to specific security lifecycle state, see section 4.
Binding relies on secret keys and cryptography. The generation and storage of the required keys depends on the
lifecycle security state, which includes the supported debug modes. It is recommended to use run-time-derived
keys to support lifecycle binding, see section 4. Derivation is essential if recoverable debug is supported because
the return to the secured state requires the generation of the secured state keys.
Section 5.2 outlines a run-time key derivation scheme to support partition binding.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 27
1.1 REL 0 Non-Confidential
§ Signing/verification
§ PSBK derivation: The derived PSBK can only be used to derive other PSBKs
o Debug Policy, with reference to section 5.1, one of:
§ Secure: The PSBK derivation must be anchored at SBRK
§ Non-PRoT Debug: The PSBK must be anchored at DBRK
• The identity of the calling secure partition, which is called the Partition ID, must be an implicit parameter
that is provided on behalf of the calling secure partition. This binds the derived PSBK to that secure
partition and guarantees the uniqueness of the derived PBSK
The Use Policy does not include export in the clear of the derived PSBK. Thus, a PSBK cannot be used where
shared knowledge of the key is required.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 28
1.1 REL 0 Non-Confidential
6 PRoT Secure Boot and Firmware Update
All devices must support a secure boot flow to ensure only authorized software can be executed on the
platform. Secure boot, sometimes called verified boot, uses cryptography to verify later code stages and any
metadata. Execution of the verified code proceeds only if that verification and all any validation checks on the
verified metadata pass, for example, version information, see section 6.3.
Secure boot is required for the firmware and software in the SPE. It should also apply to the first NSPE image
loaded. Note that in some contexts, the term Measured Boot is used, however, this involves measuring the code,
typically for attestation, but without any verification and validity checks.
The secure boot flow must start with an inherently trusted Boot ROM in the Immutable PRoT; this is the trust
anchor for the boot validation chain. Both the following are recommended, as shown in Figure 12:
• The Boot ROM is small, simple, and verifiable. This minimizes the risk of a vulnerability that cannot be
corrected once on the chip, and
• The complex steps are handled by an updateable bootloader, which is subject to validity check by the
Boot ROM, because it can be corrected through a secure firmware update process, see section 6.5
Secure Boot
NSPE NSPE
Image(s) Image(s)
The example in Figure 12 shows the Updateable Bootloader verifying and validating the Platform and Application
Root of Trust codes. Figure 12 also shows that the NSPE First Stage Loader is also verified and validated, and that
it verifies and validates each of the NSPE images. Actual implementations may include more boot stages, or
support multiple images to allow for incremental updates, or to support supply chains with different signing
entities. Any such variation must meet the following security properties to establish a secure boot chain:
1. A device must always boot from a fixed address in the Boot ROM following system reset. This is because
it acts as the trust anchor for the secure boot chain. The term system reset is used to describe a
complete system reset, including any trusted subsystems, see section 1.3.3. No run-time state from
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 29
1.1 REL 0 Non-Confidential
before the reset should be retained or used, except where necessary if suspend or hibernate are
supported, see section 1.3.3.
2. The Boot ROM verifies and validates all images that are associated with the next stage before executing
any next stage code. The immutable Boot Validation Key (BVK), see Table 1, is used. The BVK is the public
part of an asymmetric key pair. Despite being a public key, it is good practice to consider a BVK as secret.
The Boot ROM may use a stored hash value for the second and subsequent verification of the same
image, see section 6.1.
3. The next stage verifies and validates all data and images that are associated with the following stage
before executing any of the following stage code. This process is repeated until all the chained images
have been verified and validated. The keys required and any management of anti-rollback, see
section Anti-rollback, are not defined by the Platform Root of Trust. However, following the principles
that are outlined in this document is recommended.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 30
1.1 REL 0 Non-Confidential
Table 3: Verification and version check requirements
6.3 Anti-rollback
Anti-rollback is used to reject earlier versions of the firmware, software or data that may contain known errors
or vulnerabilities. Secure boot must only allow components that have the same or newer (typically higher)
version number than the reference version number for that component to be executed. To ensure that the
component version number is valid, it must be included in the signature of the component and verified before
use. The verified version number of each software component must be compared against a reference version
number as part of a secure boot process. To ensure the integrity of the reference version number, it is, typically,
stored in an updateable Isolated Location.
The Boot ROM must include an anti-rollback check on all images that it verifies on devices in the Secured
lifecycle state, see section 4. Policies for updating the reference number used by the Boot ROM are covered in
section 6.3.1 and section 6.3.2. Subsequent stages in the secure boot chain should include an anti-rollback check
on the images that are validated by that stage. The principles that are discussed in section 6.3.1 and section 6.3.2
can be applied.
Regarding the example in Figure 12, the minimal set of version-checked components is given in the Version
Checked Components columns of Table 3.
For the purposes of attestation, see section 7.3, the version of the Boot ROM must also be recorded. If
components are not individually versioned, they should be recorded with the version of the overall image.
4
Where the Boot ROM can differentiate an intentional reset from a failure-induced reset, it may choose not to
update the reference counter in the case of a failure reset and so fall back to the last known good version.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 31
1.1 REL 0 Non-Confidential
• Update on command: The anti-rollback reference version is updated in response to a secure message
from an external device management service. This means that the existing version is revoked only after
the device management service signals that the newer version has no identified faults.
The first option does not support a legitimate rollback if the new image boots correctly, but some aspect of its
function is later found to be broken and the service provider decides that it is necessary to rollback to an earlier
version.
The second option means that the service provider decides when to revoke the previous version after rolling out
a newer version to the device. This option may also signal which version, that is newer than the current anti-
rollback reference counter, to load if more than one version is available. A secure messaging service is required
to ensure that the messages are from a trusted command issuer and are replay protected. This ability to
legitimately rollback leaves devices susceptible to illegitimate rollback for longer. This ability also makes devices
susceptible to denial-of-service attacks that block the update message.
To ensure that a device remains bootable, the device should never set the reference version counter to a value
that is higher than the value of the newest image that is available.
5
It must not be easier to subvert the messaging protocol than to subvert the secure boot. This means that
authentication of the command issuer should have at least the same cryptographic properties as the ones that
are used for image signing.
6
The Signer Identity, if present, would typically be in image metadata.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 32
1.1 REL 0 Non-Confidential
• Any Initial Parameters, see Table 1, that are required by later stages must be copied from Isolated
Locations or Shielded locations, or be derived as appropriate. This is to comply with the parameter
visibility rules. See section 3.
Initial boot state must be only directly accessible to the Updateable Bootloader, and should not be modified
once set by the Boot ROM.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 33
1.1 REL 0 Non-Confidential
The state that is necessary for resumption may be accessible when the device is suspended or hibernated. This
introduces the risk that it can be modified, breaching the principle that a system that has been suspended or
hibernated should be indistinguishable from one that has not. Therefore, that state must be subject to integrity
and replay checks on resumption. It may also need to be subject to privacy protection too, for example, secrets
may need to be erased or encrypted.
In general, deciding whether to suspend, hibernate, or shut down can be performed by application code. For
suspension or hibernation, the creation and signing of the required resume state, and the process of entering
the low power mode, must be performed by trusted code. On resume, validation of the saved resume state must
be performed by trusted code anchored in the Boot ROM.
If the integrity of any of the saved resume state is invalid, or replay is detected, then the Boot ROM must
proceed with a full system restart.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 34
1.1 REL 0 Non-Confidential
7 PRoT Services
This section covers the Platform Root of Trust Services that are made available to any secure partitions, see
section 2 and Figure 10. They may also be made available to other partitions provided that the isolation
properties are met. PSM does not require the use of any specific API. However, APIs are available and are
referenced in this section as examples, and PSA Certified has an API functional compliance programme.
1. Isolation: Keys and other sensitive data is isolated within the cryptographic service, so that this type of
material is not exposed to less trusted software7
2. Access control: Keys and other sensitive data must have an owning secure partition and can be used only
by that partition. However, see the next point: Policy
3. Policy: This property restricts how individual keys and secrets that are owned by a specific secure
partition can be used by that partition, preventing misuse
7
This does not prevent the use of hardware solutions where the cryptographic service can only request the
hardware to use a key.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 35
1.1 REL 0 Non-Confidential
A source of random data is required, typically for establishing a secure communication channel. A True Random
Number Generator (TRNG) or a suitably seeded Deterministic Random Bit Generator (DRBG) should be used to
provide such random data.
The PSA Crypto API provides an interface to the cryptographic operations. Meeting the properties list above is
dependent upon the implementation.
Device
Attestation
Attestation Attestation
Validation
Client Protocol
Entity
Attestation
End Point
Initial
AEP
Attestation
Claims
Token
Initial Attestation
Service
Initial Attestation Key
Manufacture Instance ID
Implementation ID
Figure 14 illustrates a typical initial attestation sequence. The validation entity (VE) challenges the Attestation
End Point with the metadata in the object record VEOR, the content and use depend on the attestation scheme.
Use of a nonce in each challenge to ensure freshness of the data is recommended.
The AEP requests an Initial Attestation Token (IAT) from the Initial Attestation Service, providing at least the
metadata that must be validated by the VE for the attestation scheme. Typically, this will be a cryptographic
hash of the AEP-specific data in the object record AEPOR, and VEOR.
The Initial Attestation Service constructs the object record, IASOR, which typically includes:
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 36
1.1 REL 0 Non-Confidential
• The boot seed from the Initial Boot State and the boot state of every updateable component loaded at
secure boot. See section 6.4
• Current security lifecycle state of the system. See section 4
• Instance ID and Implementation ID, see section 3, and calling Partition ID
The Initial Attestation Key is used to sign a cryptographic hash of the data from the AEP and IASOR. Once signed
using the IAK, it is returned to the AEP. This is the Initial Attestation Token.
Generate VEOR
Challenge
VEOR
Generate AEPOR
Generate IASOR
Sign
Digest
Attestation report
Initial Attestation Response
Token IAT, AEPOR
Verify IAT
The challenge is then completed by the AEP returning the signed IAT and its object record AEPOR to the validation
entity. The VE can use the returned data along with knowledge of a valid set of updateable components for the
corresponding implementation to validate:
• The trustworthiness of the Platform Root of Trust and its implementation
• The authenticity of the Object Record AEPOR
• The context of the original validating entity challenge data VEOR
The Initial Attestation Service can form the basis of delegated attestation. For example, a Delegated Attestation
Service generates its own attestation key, which is included in the Initial Attestation Token by invoking the Initial
Attestation Service. This provides proof of possession of the Initial Attestation Key as the root of the delegated
attestation service.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 37
1.1 REL 0 Non-Confidential
7.4 Secure Storage
Many devices require secure persistent storage to hold sensitive data. That data could come from the
manufacturer, or could be application-generated, service-generated, or user-generated. Such storage is called
non-isolated storage, see section 2.3, and is typically implemented with flash memory either on- or off-chip.
Secure storage is expected to be available to Application RoT services, but may be available to other partitions
provided that that the following properties are met:
• Defined ownership of all stored data, regardless of the management of data on the storage device
• Privacy and integrity protection to prevent the data from being accessed or modified by an unauthorized
agent, including when the device is in a non-secure state, such as during debug
• Replay protection to prevent a stored set of data from being replaced by a previously stored version of
the data set
Depending on implementation requirements and certification profiles, these properties may be enforced by
isolation, or by cryptography, or a combination of both, see section 5.
Secure storage is supported by the PSA Storage API.
DEN 0128 Copyright © 2023 Arm Limited or its affiliates. All rights reserved. Page 38
1.1 REL 0 Non-Confidential