ARM details security in ARMv9 designs
ARM’s Confidential Compute Architecture (CCA) hardware and software for securing data in ARMv9-A designs is based around a new kind of environment called a Realm that protects the data and code, even in use.
“Currently, applications and virtual machines place huge amounts of trust in the supervisor software (kernels or hypervisors) that manage them,” said Richard Grisenthwaite, SVP, chief architect and fellow at ARM. “Supervisors can access the resources used by applications for their program code and data. Exploits against supervisors can therefore leak confidential data or algorithms held in the applications.”
Confidential computing changes the traditional trust relationship between applications and supervisors by removing the supervisor’s right to access the resources used by the application, while retaining the right to manage them. Removing that right of access is critical because the devices we use today handle large quantities of confidential data. Cloud systems can be running payloads from many different customers, while mobile devices can contain both personal and business information, from medical data to company emails. Confidential computing reduces the need to trust unseen technology within any compute environment.
CCA is intended to run from the sensors all the way through the smartphone up to the data cetnre and supercomputers. It extends workload isolation to enable a provider to shift from a position where service providers will not access customer data, to one where they cannot access customer data – thereby reducing the volume of software that must be trusted, the attack surface for hackers, and the potential for customer data or algorithm breaches.
The Realm Management Extension (RME) defines the hardware architecture for Realms along with an extension to TrustZone enabled by RME that removes the need to dedicate memory to TrustZone. This Dynamic TrustZone technology allows TrustZone to be used for applications with large and dynamic memory footprints, for example in the data centre.
ARM has worked with operating system and firmware developers to drive standard interfaces for interaction with RME firmware by defining a Realm Management Monitor (RMM) and extensions to the Monitor to provide an architecture for Realms. Chip designers, particularly NXP, have been adding security enclaves to their designs, and CCA provides a more standardised way that will support software developers.
“In our increasingly automated world where data privacy and confidentiality are imperative, CCA provides an opportunity to add a complementary layer of security to the integrated security capabilities that have been foundational to our processing portfolio for IoT, industrial, and automotive markets,” said Ron Martino, Executive Vice President and General Manager of Edge Processing, NXP Semiconductors. “Data generated, processed and sent by intelligent edge devices must be protected, and this is a step toward achieving that desired integrity and confidentiality.”
To do this, open-source projects such as trustedfirmware.org provide standard implementations of ARM CCA firmware, and new projects for confidential computing such as project Veraison will deliver open-source software for constructing attestation verification services
The code or data of a Realm is situated in memory that is assigned to that Realm, and any attempted access of that memory from the supervisory software that created the Realm (kernel or hypervisor), or by TrustZone code, other Realms or devices not trusted by the Realm, are blocked and result in faulting exceptions says Grisenthwaite.
Next: ARM CCA data structure
To enable the Realm in a CCA, a new data structure has been added to the architecture – the Granule Protection Table. This structure tracks whether a page is to be used for Realms, TrustZone or for the normal world, where existing applications, kernel, or a hypervisor run today. The hardware checks this table upon every access and blocks any that are illegal. A hypervisor or kernel can indirectly update this table, allowing pages to migrate between normal world use and Realms, or even between normal world use and TrustZone use. This ability to dynamically move memory resources among different security environments is a key change in the architecture.
“The Armv9 confidential compute features were developed in close collaboration with Microsoft, and we believe that it is critical that we put confidential compute into the hands of as many developers as possible to enable the next era of secure computing. Through the use of realms, the Arm Confidential Computing Architecture has the potential to raise the security bar for all developers, bringing huge benefits across the ecosystem in terms of protecting computation and data in-use, delivering confidential compute for everyone whatever the application,” said Dr Leendert van Doorn, Distinguished Engineer at Microsoft.
“With the hardware specifications now available, we are continuing to engage with our extensive software ecosystem as a critical next step in the development of Arm CCA,” said Grisenthwaite.
The company has shown that hardware at a Linaro ARM CCA event today to help application developers use the technology, including compiler support, open-source Trusted Firmware A (TF-A) Monitor code, and Project Veraison. ARM plans to provide reference implementations of the Realm Management Monitor and work closely with toolchain and OS vendors to ensure realms are accessible to the broadest possible range of application developers.
“To truly unlock the potential and power of data, security needs to evolve to protect this data and code not just at rest and in transit but in use. Arm’s Confidential Computing Architecture is an important step in putting confidential computing in the hands of as many developers as possible at a time when it has never been more critical for the industry to collaborate to deliver best-in-class security across every application, and drive new robust and open standards in this space,” said
Richard Searle, Customer Solutions Director, Fortanix, a General Member’s Representative to the Governing Board of the Confidential Computing Consortium and Chair of the End-User Advisory Council
Just as cloud computing is moving to the edge, so will confidential computing. “We predict that soon, 100 percent of the world’s shared data will be processed on ARM, either at the endpoint, in the data networks or the cloud,” said Grisenthwaite. “Our vision for Arm CCA is to protect all data and code wherever computing happens, while empowering developers to implement strong privacy controls.”
www.arm.com; trustedfirmware.org
Related ARMv9 articles
- ARMv9 looks to a decade of AI chips
- IAR, NXP boost protection of IoT connected devices
- 3nm physical IP tapes out for ARMv9 designs
Other articles on eeNews Europe
- Chip shortage hits payment cards
- Micron, Mouser sued in Germany
- Europe looks to the end of the mobile phone
- SiBrain module takes on microcontrollers
- €8m project for Europe’s first RISC-V supercomputer chip
- Intel eyes Bavaria for wafer fab
- Delivering power from the back of a chip