TUM Logo

Trusted Execution Environment and software security

Trusted Execution Environment and software security  

Seminare 2sws / 5ects
Veranstalter: Peng Xu
Zeit und Ort:

Kickoff:   26.06.18 13:30 - 14:00

Normal Courses: Wednesday 10:00 - 12:00


Beginn: 2018-10-23

The lecture is given in english
The slides are available in english
The exam will be in english

With the amount of threats that increasingly pressure companies and private usage, it is important to guarantee the application are completely secure. Therefore, secure software development becomes more and more attractive and necessary. In this course, we want to discuss how to develop the secure software with the Trusted Execution Environment (TEE) based ways. Based on the TEE-enabled core, there are many available secure world software architectures, from the range of the most complex secure world operating system to the simplest synchronous library of code placed in the Secure world.  

Since this course is a topic on the advanced software security level, we hope the students have the c program language background as well as the basic knowledge of operating system. In addition, information security knowledge is also necessary. Knowledge on Android OS as well as compiler could be better.



The content would include the following references.
0. I will talk about the TEE and ARM trustzone and Intel SGX
This section will talk about the framework we can use to develop the
application based on trustzone and sgx if we do not have the hardware.

OP-TEE                                                                           2018-10-31 Peng Xu
openSGX 2018-10-31 Peng Xu

This section will discuss the trustzone related works

Using ARM TrustZone to build a trusted language runtime for mobile applications 2018-11-07  
Graphene-SGX: A practical library OS for Unmodified Applications on SGX 2018-11-07  
TrustShadow: Secure Execution of Unmodified Applications with ARM TrustZone 2018-11-14 Florian Olschewski

This section will present the Intel SGX based works

JITGuard: Hardening just-in-time Compilers with SGX 2018-11-14                        
Shielding applications from an untrusted cloud with Haven 2018-11-21 Yanki Kurtcan 
SCONE: secure linux containers with intel SGX 2018-11-21 Lukas Heine
Glamdring: Automatic Application Paritioning for Intel SGX 2018-11-28 Jokubas Trinkunas
Automated partitioning of android applications for trusted execution environments 2018-11-28 Deminl Omerovic
PANOPLY: Low-TCB linux Applications with SGX Enclaves 2018-12-05  
Hacking in darkness: Return-oriented Programming against Secure Enclaves 2018-12-05 Dominik Pham
Teechain: Scalable Blockchain Payments using Trusted Execution Environments 2018-12-12 Gizem Akdeniz
Slalom: Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware 2018-12-12 Kriti Shreshtha          



After normal meeting we do not need to meet every week. In the rest time you need to preapre the final report. 

For the report you should include the content from original paper, questions and answers we talked after your presentation and of course another discussion (like the research direction i asked during course, related works from another students and so on).

Final Report

You can find a final report from my previous student from CFI seminar course. You can take that one as template. 
In addition, you can also find the Latex template which is the format of our final report. 
The content of findal report should include:
1. Introduction (Section I from template)
2. Background 
3. Design and implementation from original papers (Section II, III, IV from template)
4. Performance 
5. Discussion about the connection and difference with another related works in our seminar course (Section VII, VIII from template)
6. Conclusion


We have two deadline for the final report.
The first one is for the draft. The deadline is 6th, Feb.
After that I will check these reports. Meanwhile, i will distribute two drafts to every students and help me to check and give feedback. And then I will feedback your report and update it with suggestions from my side and another students' sides.
The deadline for the second round is 13rd, Feb.