The document discusses implementing AES encryption using ARM TrustZone technology. It begins with an introduction to ARM and the need for hardware-based security. It then provides an overview of TrustZone, describing its normal and secure worlds. Details are given on implementing TrustZone on a Zynq 7000, including configuration of secure memory regions. The document also outlines the AES encryption algorithm and its key steps of SubBytes, ShiftRows, MixColumns, and AddRoundKey.
Protecting Data with Short-Lived Encryption Keys and Hardware Root of TrustDan Griffin
The US National Security Agency has been public about the inevitability of mobile computing and the need to support cloud-based service use for secret projects. General Alexander, head of the NSA, recently spoke of using smartphones as ID cards on classified networks.
And yet, mobile devices have a poor security track record, both as data repositories and as sources of trustworthy identity information. Cloud services are no better: current security features are oriented toward compliance and not toward real protection.
What if we could provide a strong link between mobile device identity, integrity, and the lifecycle of data retrieved from the cloud using only the hardware shipped with modern smartphones and tablets?
The good news is that we can do that with the trusted execution environment (TEE) features of the common system on a chip (SOC) mobile processor architectures using 'measurement-bound' encryption. This presentation describes how data can be encrypted to a specific device, how decryption is no longer possible when the device is compromised, and where the weaknesses are. I demonstrate measurement-bound encryption in action. I also announce the release of an open-source tool that implements it as well as a paper that describes the techniques for time-bound keys.
This is likely the very same way that NSA will be protecting the smartphones that will be used for classified information retrieval. Learn how your government plans to keep its own secrets and how you can protect yours.
EuskalHack 2017 - Secure initialization of TEEs: when secure boot falls shortCristofaro Mune
Our presentation focuses on the critical role of secure initialization in the establishment of a Trusted Execution Environment.
The concepts are discussed in the light of the ARM TrustZone technology, although the considerations made may be valid for a wider range of TEEs.
We analyze past public attacks related to TEE initialization and we show how its security foundations go beyond the mere implementation of a Secure Boot chain of trust.
Security models used for TEE discussions often encompass a CPU-centric perspective at runtime.
We provide indications that such models should be augmented by including TEE lifecycle stages (e.g. Secure Cold/Warm Boot) and by considering the whole SoC as part of the security model.
We conclude that an holistic, system-level, view is required, along with careful design and implementation for establishing a secure TEE.
Security for io t apr 29th mentor embedded hangoutmentoresd
Security Strategies for Internet of Things From Devices to The Cloud -- these slides were presented during a live Google+ On-Air Hangout Panel on April 29th, 2014, presented by Mentor Graphics Embedded Software
Kernel Memory Protection by an Insertable Hypervisor which has VM Introspec...Kuniyasu Suzaki
IWSEC2014(The 9th International Workshop on Security 弘前) で"Kernel Memory Protection by an Insertable Hypervisor which has VM Introspection and Stealth Breakpoints"
Protecting Data with Short-Lived Encryption Keys and Hardware Root of TrustDan Griffin
The US National Security Agency has been public about the inevitability of mobile computing and the need to support cloud-based service use for secret projects. General Alexander, head of the NSA, recently spoke of using smartphones as ID cards on classified networks.
And yet, mobile devices have a poor security track record, both as data repositories and as sources of trustworthy identity information. Cloud services are no better: current security features are oriented toward compliance and not toward real protection.
What if we could provide a strong link between mobile device identity, integrity, and the lifecycle of data retrieved from the cloud using only the hardware shipped with modern smartphones and tablets?
The good news is that we can do that with the trusted execution environment (TEE) features of the common system on a chip (SOC) mobile processor architectures using 'measurement-bound' encryption. This presentation describes how data can be encrypted to a specific device, how decryption is no longer possible when the device is compromised, and where the weaknesses are. I demonstrate measurement-bound encryption in action. I also announce the release of an open-source tool that implements it as well as a paper that describes the techniques for time-bound keys.
This is likely the very same way that NSA will be protecting the smartphones that will be used for classified information retrieval. Learn how your government plans to keep its own secrets and how you can protect yours.
EuskalHack 2017 - Secure initialization of TEEs: when secure boot falls shortCristofaro Mune
Our presentation focuses on the critical role of secure initialization in the establishment of a Trusted Execution Environment.
The concepts are discussed in the light of the ARM TrustZone technology, although the considerations made may be valid for a wider range of TEEs.
We analyze past public attacks related to TEE initialization and we show how its security foundations go beyond the mere implementation of a Secure Boot chain of trust.
Security models used for TEE discussions often encompass a CPU-centric perspective at runtime.
We provide indications that such models should be augmented by including TEE lifecycle stages (e.g. Secure Cold/Warm Boot) and by considering the whole SoC as part of the security model.
We conclude that an holistic, system-level, view is required, along with careful design and implementation for establishing a secure TEE.
Security for io t apr 29th mentor embedded hangoutmentoresd
Security Strategies for Internet of Things From Devices to The Cloud -- these slides were presented during a live Google+ On-Air Hangout Panel on April 29th, 2014, presented by Mentor Graphics Embedded Software
Kernel Memory Protection by an Insertable Hypervisor which has VM Introspec...Kuniyasu Suzaki
IWSEC2014(The 9th International Workshop on Security 弘前) で"Kernel Memory Protection by an Insertable Hypervisor which has VM Introspection and Stealth Breakpoints"
CONFidence 2014: Yaniv Miron: ATMs – We kick their assPROIDEA
ATMs (Automated Teller Machines) are usually weak spots in any organization that operates them. We would like to share with you how we hack ATMs. We will show GENERIC ways to attack ATMs. Specific attacks are kewl but we like GENERIC ones that work in the often complex ATM world. Join us to pwn some ATMs and learn from our vast experience in the trenches.
The lecture by Sartakov A. Vasily for Summer Systems School'12.
Brief introduction to Trusted Computing.
SSS'12 - Education event, organized by ksys labs[1] in 2012, for students interested in system software development and information security.
1. http://ksyslabs.org/
Session ID: HKG18-212
Session Name: HKG18-212 - Trusted Firmware M: Introduction
Speaker: James King
Track: Iot, Security
★ Session Summary ★
Trusted Firmware M
In October 2017, Arm announced the vision of Platform Security Architecture (PSA) - a common framework to allow everyone in the IoT ecosystem to move forward with stronger, scalable security and greater confidence. There are three key stages to the Platform Security Architecture: Analysis, Architecture and Implementation which are described at https://developer.arm.com/products/architecture/platform-security-architecture.
Trusted Firmware M, i.e. TF-M, is the Arm project to provide an open source reference implementation firmware that will conform to the PSA specification for M-Class devices. Early access to TF-M was released in December 2017 and it is being made public during Linaro Connect. The implementation should be considered a prototype until the PSA specifications reach release state and the code aligns.
---------------------------------------------------
★ Resources ★
Event Page: http://connect.linaro.org/resource/hkg18/hkg18-212/
Presentation: http://connect.linaro.org.s3.amazonaws.com/hkg18/presentations/hkg18-212.pdf
Video: http://connect.linaro.org.s3.amazonaws.com/hkg18/videos/hkg18-212.mp4
---------------------------------------------------
★ Event Details ★
Linaro Connect Hong Kong 2018 (HKG18)
19-23 March 2018
Regal Airport Hotel Hong Kong
---------------------------------------------------
Keyword: Iot, Security
'http://www.linaro.org'
'http://connect.linaro.org'
---------------------------------------------------
Follow us on Social Media
https://www.facebook.com/LinaroOrg
https://www.youtube.com/user/linaroorg?sub_confirmation=1
https://www.linkedin.com/company/1026961
Efficient Reverse Engineering of Automotive FirmwareRiscure
The firmware executed by components found in a car provide a starting point for adversaries to obtain confidential information and discover potential vulnerabilities. However, the process of reverse engineering a specific component is typically considered a complex and time-consuming task. In this paper we discuss several techniques which we used to significantly increase the efficiency of reverse engineering the firmware of an instrument cluster.
Controlling PC on ARM using Fault InjectionRiscure
The slides from the presentation by Riscure's Niek Timmers, Albert Spruyt and Marc Whitteman. The paper describes an ARM specific fault injection attack strategy for exploiting embedded systems where externally controlled data is loaded in the program counter (PC) register of the processor.
Slides for a college course based on "Hands-On Ethical Hacking and Network Defense, Second Edition by Michael T. Simpson, Kent Backman, and James Corley -- ISBN: 1133935613
Teacher: Sam Bowne
Twitter: @sambowne
Website: https://samsclass.info/123/123_F16.shtml
Presenter: Chris Sistrunk
Why haven’t we seen more ICS-focused attacks? Perhaps it’s because we’re not looking for them. The current state of security in Industrial Control Systems is a widely publicized issue, but fixes to ICS security issues are long cycle, with some systems and devices that will unfortunately never have patches available.
In this environment, visibility into security threats to ICS is critical, and almost all of ICS monitoring has been focused on compliance, rather than looking for indicators/evidence of compromise. The non-intrusive nature of Network Security Monitoring (NSM) is a perfect fit for ICS. This presentation looks at using NSM as part of an incident response strategy in ICS, various options for implementing NSM, and some of the capabilities that NSM can bring to an ICS cyber security program.
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEELinaro
Smart connected devices such as mobile phones, tablets and Digital TVs are required to handle data with strong security and confidentiality requirements. A “Trusted Execution Environment” (TEE) provides an environment for processing data securely, protected from normal platform applications. This talk is intended as an introduction to Trusted Execution, and the open-source Trusted Execution Environment OP-TEE in particular. It introduces the GlobalPlatform TEE Specifications, explains how Trusted Execution is implemented by ARM TrustZone and OP-TEE, and outlines how trusted boot software manages the secure boot of an ARM platform. Finally, it gives some pointers on how to get started with OP-TEE.
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...FFRI, Inc.
In this slide, we introduce the TrustZone of information that has published at this time in relation to ARMv8-M.
It is possible to separate/isolate the security level by adding the security state.
ARMv8-M architecture has a different mechanism than TrustZone to provide traditional ARMv8-A architecture, which is optimized for embedded systems.
CONFidence 2014: Yaniv Miron: ATMs – We kick their assPROIDEA
ATMs (Automated Teller Machines) are usually weak spots in any organization that operates them. We would like to share with you how we hack ATMs. We will show GENERIC ways to attack ATMs. Specific attacks are kewl but we like GENERIC ones that work in the often complex ATM world. Join us to pwn some ATMs and learn from our vast experience in the trenches.
The lecture by Sartakov A. Vasily for Summer Systems School'12.
Brief introduction to Trusted Computing.
SSS'12 - Education event, organized by ksys labs[1] in 2012, for students interested in system software development and information security.
1. http://ksyslabs.org/
Session ID: HKG18-212
Session Name: HKG18-212 - Trusted Firmware M: Introduction
Speaker: James King
Track: Iot, Security
★ Session Summary ★
Trusted Firmware M
In October 2017, Arm announced the vision of Platform Security Architecture (PSA) - a common framework to allow everyone in the IoT ecosystem to move forward with stronger, scalable security and greater confidence. There are three key stages to the Platform Security Architecture: Analysis, Architecture and Implementation which are described at https://developer.arm.com/products/architecture/platform-security-architecture.
Trusted Firmware M, i.e. TF-M, is the Arm project to provide an open source reference implementation firmware that will conform to the PSA specification for M-Class devices. Early access to TF-M was released in December 2017 and it is being made public during Linaro Connect. The implementation should be considered a prototype until the PSA specifications reach release state and the code aligns.
---------------------------------------------------
★ Resources ★
Event Page: http://connect.linaro.org/resource/hkg18/hkg18-212/
Presentation: http://connect.linaro.org.s3.amazonaws.com/hkg18/presentations/hkg18-212.pdf
Video: http://connect.linaro.org.s3.amazonaws.com/hkg18/videos/hkg18-212.mp4
---------------------------------------------------
★ Event Details ★
Linaro Connect Hong Kong 2018 (HKG18)
19-23 March 2018
Regal Airport Hotel Hong Kong
---------------------------------------------------
Keyword: Iot, Security
'http://www.linaro.org'
'http://connect.linaro.org'
---------------------------------------------------
Follow us on Social Media
https://www.facebook.com/LinaroOrg
https://www.youtube.com/user/linaroorg?sub_confirmation=1
https://www.linkedin.com/company/1026961
Efficient Reverse Engineering of Automotive FirmwareRiscure
The firmware executed by components found in a car provide a starting point for adversaries to obtain confidential information and discover potential vulnerabilities. However, the process of reverse engineering a specific component is typically considered a complex and time-consuming task. In this paper we discuss several techniques which we used to significantly increase the efficiency of reverse engineering the firmware of an instrument cluster.
Controlling PC on ARM using Fault InjectionRiscure
The slides from the presentation by Riscure's Niek Timmers, Albert Spruyt and Marc Whitteman. The paper describes an ARM specific fault injection attack strategy for exploiting embedded systems where externally controlled data is loaded in the program counter (PC) register of the processor.
Slides for a college course based on "Hands-On Ethical Hacking and Network Defense, Second Edition by Michael T. Simpson, Kent Backman, and James Corley -- ISBN: 1133935613
Teacher: Sam Bowne
Twitter: @sambowne
Website: https://samsclass.info/123/123_F16.shtml
Presenter: Chris Sistrunk
Why haven’t we seen more ICS-focused attacks? Perhaps it’s because we’re not looking for them. The current state of security in Industrial Control Systems is a widely publicized issue, but fixes to ICS security issues are long cycle, with some systems and devices that will unfortunately never have patches available.
In this environment, visibility into security threats to ICS is critical, and almost all of ICS monitoring has been focused on compliance, rather than looking for indicators/evidence of compromise. The non-intrusive nature of Network Security Monitoring (NSM) is a perfect fit for ICS. This presentation looks at using NSM as part of an incident response strategy in ICS, various options for implementing NSM, and some of the capabilities that NSM can bring to an ICS cyber security program.
BKK16-110 A Gentle Introduction to Trusted Execution and OP-TEELinaro
Smart connected devices such as mobile phones, tablets and Digital TVs are required to handle data with strong security and confidentiality requirements. A “Trusted Execution Environment” (TEE) provides an environment for processing data securely, protected from normal platform applications. This talk is intended as an introduction to Trusted Execution, and the open-source Trusted Execution Environment OP-TEE in particular. It introduces the GlobalPlatform TEE Specifications, explains how Trusted Execution is implemented by ARM TrustZone and OP-TEE, and outlines how trusted boot software manages the secure boot of an ARM platform. Finally, it gives some pointers on how to get started with OP-TEE.
ARMv8-M TrustZone: A New Security Feature for Embedded Systems (FFRI Monthly ...FFRI, Inc.
In this slide, we introduce the TrustZone of information that has published at this time in relation to ARMv8-M.
It is possible to separate/isolate the security level by adding the security state.
ARMv8-M architecture has a different mechanism than TrustZone to provide traditional ARMv8-A architecture, which is optimized for embedded systems.
08680982.pdfArchitectures for Security A comparative anal.docxcroftsshanon
08680982.pdf
Architectures for Security: A comparative analysis
of hardware security features in Intel SGX and
ARM TrustZone
Muhammad Asim Mukhtar
Information Technology University
Lahore, Pakistan
[email protected]
Muhammad Khurram Bhatti
Information Technology University
Lahore, Pakistan
[email protected]
Guy Gogniat
University of South Brittany
Lorient, France
[email protected]
Abstract—A variety of applications are executing on a large
untrusted computing base, which includes the operating system,
hypervisor, firmware, and hardware. This large computing base
is becoming complex and unverifiable. This untrusted computing
base problem opens a way for a malicious application to steal
secrets of a security-critical application by compromising the
untrusted computing base. To resolve the untrusted computing
base problem, computer architectures have introduced a concept
of the trusted execution environment, which aim to ensure
the sensitive data to be stored and processed in an isolated
environment. Existing popular trusted execution environments
are relying on hardware to isolate the environments without
or minimum relying on system software. However, existing
hardware assisted trusted execution environments are still vul-
nerable to sophisticated attacks. This paper analyses popular
trusted execution environments that are Intel SGX and ARM
TrustZone in order to provide better insights about the intended
scope of the protection. This paper illustrates the functionality,
implementation and security analysis.
Index Terms—Trusted Execution Environments, TEE, Memory
isolation, Intel SGX, and ARM TrustZone.
I. INTRODUCTION
Normal and security-critical applications are executing on
a large untrusted computing base, which includes an operat-
ing system, hypervisor, firmware, and hardware. This large
computing base is becoming complex and unverifiable. For
example, an operating system such as Linux has 17 millions
of lines code [2] and CVE has reported 166 vulnerabilities in it
during the year of 2018 related to Denial-of-Service, overflow,
unauthorized privilege gain, memory corruption, directory
traversal, execute unauthorized code. Similarly, Xen is a well-
known hypervisor that has 150,000 lines code [27], which has
relatively small code than Linux but still has vulnerabilities,
and CVE has reported 18 vulnerabilities in Xen in the year
of 2018 [11]. Moreover, attacks that subvert firmware are
reported [1] [25] [23]. Execution of normal and security-
critical applications are executing on shared resources that
controlled by untrusted computing base raises security threats.
This opens the way for a malicious application to attack the
This research work is partially supported by the PHC PERIDOT Project
e-health.SECURE and National Center for Cyber Security (NCCS), Pakistan.
vulnerabilities to gain the unauthorized privilege, and then
steal secrets form security critical application’s address space.
To cope up the.
RTOS based Confidential Area Security Systemajinky gadewar
Project is about to provide security system for confidential area security system.
It uses ARM LPC-1768 as microcontroller and Micro-Controller Operating System as a RTOS. Project consists of identity module as RFID, Fingerprint Scan and numbered password. It also uses different sensors.
HKG18-113- Secure Data Path work with i.MX8MLinaro
"Session ID: HKG18-113
Session Name: HKG18-113 - Secure Data Path work with i.MX8M
Speaker: Cyrille Fleury
Track: Digital Home
★ Session Summary ★
NXP presentation on Secure Data Path work with i.MX8M Soc. Demonstrate 4K PlayReady playback with Android 8.1 running on i.MX8M. Focus on security (MS SL3000 and Widevine level 1)
---------------------------------------------------
★ Resources ★
Event Page: http://connect.linaro.org/resource/hkg18/hkg18-113/
Presentation: http://connect.linaro.org.s3.amazonaws.com/hkg18/presentations/hkg18-113.pdf
Video: http://connect.linaro.org.s3.amazonaws.com/hkg18/videos/hkg18-113.mp4
---------------------------------------------------
★ Event Details ★
Linaro Connect Hong Kong 2018 (HKG18)
19-23 March 2018
Regal Airport Hotel Hong Kong
---------------------------------------------------
Keyword: Digital Home
'http://www.linaro.org'
'http://connect.linaro.org'
---------------------------------------------------
Follow us on Social Media
https://www.facebook.com/LinaroOrg
https://www.youtube.com/user/linaroorg?sub_confirmation=1
https://www.linkedin.com/company/1026961"
The Mainframe's Role in Enterprise Security Management - Jean-Marc DareesNRB
We are expecting more and more from our IBM z Systems. Our critical data and applications are nested in our IBM z Systems infrastructure, and more than ever it positions itself as the security hub. It now exports services to secure distributed environment thanks to its security as a services capabilities. During this lecture, Mr Darées talks about z Systems Roles for security in most of today’s hot topics (compliance, Database encryption, Tokenization, Digital Certificates, ...).
Demystifying Security Root of Trust Approaches for IoT/Embedded - SFO17-304Linaro
Session ID: SFO17-304
Session Name: Demystifying Security Root of Trust Approaches for IoT/Embedded
- SFO17-304
Speaker: Suresh Marisetty
Track: LHG,LITE,Security
★ Session Summary ★
The current trend of IoT market segment is expected to enable and deploy about 50 billion connected devices by year 2020. IoT devices will be deployed across the board to cater to multiple use cases like Home/building Automation, Automotive, a highly fragmented embedded segment: gateways, set top boxes, security cameras, industrial automation, digital signage, healthcare, etc. This trend will bring about a great challenge of securing the connected end point IoT devices from a myriad of physical and remote attacks ex: DDOS Mirai botnet launched through IoT devices like digital cameras and DVR players
Problem Statement: Each use cases has its own IoT device constraints like: Cost, Power, Performance, memory footprint, security objectives, etc. The fundamental basis for any secure IoT and Embedded solution is the Root of Trust (RoT), which provides assurance of the integrity of the system software from: boot and runtime firmware, to OS loader, to the Kernel, to the user Applications. This poses a serious issue and challenges the one-size fits all RoT solution model.
ARM has taken on this challenge head on to come up with a microcontroller security architecture solution that caters to the various IoT devices constraints, by offering ARM Cortex-M family of processors. ARM’s flexible and scalable architecture solution will allow an OEM or Silicon partner to adapt the base security architecture and to extend it in a seamless way. This caters to the requirements of different market segments through add-on hardware, firmware and software security enhancements.
The session will present the ARM’s base security system and software architecture based on the upcoming Cortex V8M solution that will provide a hardware and firmware assisted Trust Zone based Security RoT aka TBSA-M for a range of markets, to include the highly constrained IoT devices. Furthermore, the session will discuss about how the base RoT capability can be extended in a seamless way with additional hardware assisted mechanisms to offer high levels of functionality and/or robustness for less constrained IoT devises with options like TBSA-M+, TBSA-HSM and platform level security software abstraction framework to decouple the chosen RoT capability for various OSes and the Cloud security frameworks.
---------------------------------------------------
★ Resources ★
Event Page: http://connect.linaro.org/resource/sfo17/sfo17-304/
Presentation:
Video: https://www.youtube.com/watch?v=aIwmRXFOshs
---------------------------------------------------
★ Event Details ★
Linaro Connect San Francisco 2017 (SFO17)
25-29 September 2017
Hyatt Regency San Francisco Airport
1. AES Encryption using ARM
TrustZone technology
CHIA-CHE,LEE
Adviser: Fareena Saqib
11/22/2016 CHIA-CHE,LEE 1
2. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 2
3. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 3
4. Introduction
About ARM…
– Over 50 billion ARM processors produced as of 2014.
– In 2013, 10 billion ARM processor were produced and "ARM-based chips are found in nearly 60 percent of the world’s
mobile devices”.
– representing 95% of smartphones, 35% of digital televisions and set-top boxes and 10% of mobile computers.
11/22/2016 CHIA-CHE,LEE 4
5. Introduction
• How to security our sensitive information from leaking?
– Malware
– Social engineering, trojans, phishing, APT
– Theft and loss of devices
– Weak security controls – no PIN lock
– User intervention – jail breaking, unlocking, etc.
• The most commended way to defense malware attacks
– antivirus software.
• Antivirus cannot effectively verify itself.
• When the malwares gain the same access level as antivirus have
– Theses defense software can be simply disable.
• Needed hardware beased security.
11/22/2016 CHIA-CHE,LEE 5
6. Introduction
• In order to improve security on mobile devices, controlling over hardware through device
software is a better approach.
• TCG, Trusted Computing Group, is a group form by AMD, Intel, IBM, HP and Microsoft in 2003
to deliver trusted computing in all personal computer platforms.
– All major OEMs joined in later
• Trusted Platform Module is made for targeting PC market.
• What about Mobile devices?
• ARM is a market leader by large margin in mobile market.
– A large number of applications leveraging ARM trusted environment to provide security to users.
11/22/2016 CHIA-CHE,LEE 6
7. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 7
8. Hardware-based security
Hardware-based security – TPM, TEE.
• A Trusted Platform Module is a microchip that is often built into a motherboard to provide
hardware-based security.
• There are two important functional components for TPM –
– a special register set call Platform Configuration Registers (PCRs)
– a cryptographic engine that can execute encryption digital signatures.
11/22/2016 CHIA-CHE,LEE 8
9. Hardware-based security
Hardware-based security – TPM, TEE.
• Trusted Execution Environment is a concept of hardware-based tasks isolation firmware.
– provide a smaller operating environment that has enough functionality to secure or provide sensitive service.
– using a hybrid approach that utilizes both hardware and software to protect data.
– The TEE is ideal for supporting natural ID (facial recognition, fingerprint sensor and voice authorization) as PINs and
passwords can be easily hacked and stolen.
• ARM TrustZone is a TEE for ARM family.
• TPM vs TEE:
TEE works alike a bulletproof safe
TPM is a 128-digit combination lock for the safe.
11/22/2016 CHIA-CHE,LEE 9
10. 1. The commend way of sealing information in systems is using testing
And debugging function modules as the starting point of hardware attack.
Usually are Trace and Jtag
- If there are loopholes in the system design, attackers can access
different modules through the debugging bug.
2. That figure shows that trustzone can protect sensitive information
through JTAG by using Xilinx SDK debugging tool.
- people cannot disassemble program.
Note: Memory address 1c000000 – 1fffffff is set for secure world used only.
Protection from illegal memory access
11. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 11
12. TrustZone
What is TrustZone?
• TrustZone is hardware-based security built into SoCs by semiconductor chip designers who
want to provide secure end points and a device root of trust.
– TrustZone has a normal world and a secure world.
• Very flexible as compared to other security technologies as software defined registers
configure secure and non-secure hardware access.
• TrustZone defines processors, memories, peripherals and even L2 ares as secure or non-
secure hardware.
11/22/2016 CHIA-CHE,LEE 12
13. TrustZone
11/22/2016 CHIA-CHE,LEE 13
Defining Normal World:
• A general purpose OS utilizing multiple
functionality provided on the hardware for users
rich experience.
• Ensured by TZ that Normal world software only
can access the non-critical hardware subset
• We can assume Normal world has been hacked
in most of the cases.
14. TrustZone
11/22/2016 CHIA-CHE,LEE 14
Defining Secure World:
• Secure World software has complete access to
both Trusted and Un-Trusted hardware
• Secure World only includes minimum
functionality and device interfaces.
• ARM Does not envisage using General purpose
OS inside Secure World, All TEE are limited
functionality RTOS-like OS.
15. TrustZone
11/22/2016 CHIA-CHE,LEE 15
Defining Secure Monitor:
• A special hard code in TZ that can switch
processor states between two worlds.
• The security of secure monitor is ensured by
Secure boot code.
• Secure Monitor provides Secure Monitor Calls
for both worlds use to communicate via Monitor.
• The secure monitor mode, a privileged mode
always Secure regardless of the state of the
NS(Non-Secure) bit.
16. TrustZone
11/22/2016 CHIA-CHE,LEE 16
The NS bit in AXI interconnect bus protocol has defined:
• • AWPROT[1]: Write transaction – low is Secure and high is Non-secure.
• • ARPROT[1]: Read transaction – low is Secure and high is Non-secure.
• Static assignment of Secure or Non-secure status to MI slots using Xilinx Vivado Tool.
• The security-checking feature is provide for each Master interface slot in the AXI interconnect IP.
17. TrustZone
11/22/2016 CHIA-CHE,LEE 17
CP15 registers and NS(Non-Secure) bit:
• The current world defined by the Non-Secure bit in the Secure Configuration register(C1 bit
0).
• Bit value for worlds:
• NS = 1 is Non-secure world execution.
• NS = 0 is secure world execution.
• When the Secure Monitor preforms the transformation from one world to the other,
processor context must be saved.
• it writes the NS bit to change the world operation.
18. TrustZone
11/22/2016 CHIA-CHE,LEE 18
• Boot up sequence for TrustZone:
Two important goals in Booting
sequence:
1. Secure monitor needs to be
booted up before Secure
World and Normal World.
• As a secure OS boot.
2. In the boot sequence, Monitor
will finish TrustZone feathers
initialization (SMC….etc).
19. TrustZone
11/22/2016 CHIA-CHE,LEE 19
Invocation of Secure Monitor Calls (SMC) –
• Secure Monitor Calls is a special code to invoke Secure Monitor code to switch
worlds, or invoke functions.
• In both worlds, Privilege mode is necessary for calling SMC.
In tustzone, systems mainly use User mode, Privilege mode and Monitor
mode.
• The Secure Monitor will provide an API sets for both worlds in order to invoke
SMC.
20. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 20
21. ARM TrustZone on Zynq 7000
11/22/2016 CHIA-CHE,LEE 21
• TrustZone support on Zynq SoC
• Zynq – 7000 AP SoC consists of 2 domains: PS and PL.
• Processing System (PS) - ARM Cortex-A9 MP core processor, peripherals,
interconnects etc. provided as hard IP.
• Programmable Logic (PL) – Programmable FPGA Fabric.
TrustZone security feather provided
in both PS and PL with TrustZone
related configuration registers
provided in PS dynamically
programmable during execution.
23. ARM TrustZone on Zynq 7000
11/22/2016 CHIA-CHE,LEE 23
Implementation
Xilinx Zynq-7000 All Programmable SoC
SafeG
A reliable dual hypervisor for embedded real-time systems for RTOS/GPOS
A Open souce platform from Nagoya University
RTOS: TOPPERS/FMP
Support for SMP and AMP configurations.
Kernel and applications are linked in a single monolithic binary.
Tasks are assigned to processor cores through a configuration file.
FMP provides runtime system calls for migrating a task to a different core.
The execution of FMP can be traced and displayed graphically.
24. ARM TrustZone on Zynq 7000
11/22/2016 CHIA-CHE,LEE 24
Secure Memory Configuration Setting
• Zedboard has 512Mbyte Memory in the system.
• The physical address of memory region is:
0x00000000 ~ 0x1fffffff : DDR
25. ARM TrustZone on Zynq 7000
11/22/2016 CHIA-CHE,LEE 25
TrustZone security memory settings are presented into 8
bits. Each bit has 64 MB. Each bit of physical address showed
as the following:
Bit 0: 0x00000000 - 0x03ffffff
1: 0x04000000 - 0x07ffffff
2: 0x08000000 - 0x0bffffff
3: 0x0C000000 - 0x0fffffff
4: 0x10000000 - 0x13ffffff
5: 0x14000000 - 0x17ffffff
6: 0x18000000 - 0x1bffffff
7: 0x1C000000 - 0x1fffffff
REG(TZ_DDR_RAM) = 0xFFFFFFFF & ~(1 << 7);
mov r3, #1072
movt r3, #63488
mvn r2, #128 = 0x80
str r2, [r3]
26. ARM TrustZone on Zynq 7000
11/22/2016 CHIA-CHE,LEE 26
TrustZone SMC API –
• All function needs a wrap in order to be callable by SMC
• The default SafeG SMC provides SMC system calls :
[Static system calls API]
#define SAFEG_SYSCALL_ID__GETID (0)
/ GETID: obtains the ID of a system call by name.
#define SAFEG_SYSCALL_ID__SETPERM (1)
/ SETPERM: set the permissions for a static or dynamic system call.
#define SAFEG_SYSCALL_ID__SWITCH (2)
/ SWITCH: initiates a switch to the opposite world.
#define SAFEG_SYSCALL_ID__SIGNAL (3)
/ SIGNAL: signals an interrupt to the opposite world.
[Dynamic system calls API]
#define SAFEG_SYSCALL_ID__REGDYN (4)
/REGDYN: register a dynamic system call.
struct safeg_syscall
{
uint32_t is_t_callable;
uint32_t is_nt_callable;
uint8_t name[8];
uint32_t (*function)(uint32_t core_id, uint32_t ns,
uint32_t a, uint32_t b, uint32_t c);
}
27. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 27
28. AES Encryption Algorithm
11/22/2016 CHIA-CHE,LEE 28
• The AES encryption is a symmetric encryption algorithm, and used for encrypt electronic
data wisely.
• It replaces Data Encryption Standard (DES) encryption algorithm to become one of the
most popular encryption algorithm in the world so far.
• The standard of Key and Block length is 128 bit, and represented with a matrix (array) of
bytes with 4 rows and N columns, N = key length / 32
29. AES Encryption Algorithm
11/22/2016 CHIA-CHE,LEE 29
• The AES algorithm processes on a two-dimensional array (4 times 4) of bytes called the
State.
• Initially, for the AES round transformation, the first state us the input plaintext and the
final state is the encrypted output.
• The round transformation mixes the bytes of the State either individually, row-wise, or
column-wise by directing the functions
o Sub-Bytes, Shift-Rows, Mix-Columns, and Add-RoundKey sequentially
37. AES DEMO execution flow
Calling safeg_syscall_regdyn();
to register AES function to SafeG systemcall
table in VMM.
Calling safeg_syscall_getid();
to get AES systemcall id from systemcall table
in VMM.
Receiving safeg_systemcall_invoke();
executing AES function and sending back the
output.
Calling safeg_syscall_invoke()
to invoke AES from trust-OS through VMM.
Receiving the output from aes function.
40. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 40
41. Future Research
11/22/2016 CHIA-CHE,LEE 41
• Physical Unclonable Function (PUF)
• An on-chip physical unclonable function is a unique challenge-response function,
• which is providing a random signature/response while the chip is powered-on
• PUD designs in cryptography engine in FPGA has played an important role in
security technology progress.
42. Outline
• Introduction
• Hardware-based security
• TrustZone
• ARM TrustZone on Zynq 7000
• AES encryption algorithm
• Results
• Future Research
• Questions
11/22/2016 CHIA-CHE,LEE 42