HasTEE: Programming Trusted Execution Environments with Haskell

被引:0
|
作者
Sarkar, Abhiroop [1 ]
Krook, Robert [1 ]
Russo, Alejandro [2 ]
Claessen, Koen [1 ]
机构
[1] Chalmers Univ, Gothenburg, Sweden
[2] Chalmers Univ, DPella AB, Gothenburg, Sweden
关键词
Trusted Execution Environment; Haskell; Intel SGX; Enclave; SGX;
D O I
10.1145/3609026.3609731
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Trusted Execution Environments (TEEs) are hardware enforced memory isolation units, emerging as a pivotal security solution for security-critical applications. TEEs, like Intel SGX and ARM TrustZone, allow the isolation of confidential code and data within an untrusted host environment, such as the cloud and IoT. Despite strong security guarantees, TEE adoption has been hindered by an awkward programming model. This model requires manual application partitioning and the use of error-prone, memory-unsafe, and potentially information-leaking low-level C/C++ libraries. We address the above with HasTEE, a domain-specific language (DSL) embedded in Haskell for programming TEE applications. HasTEE includes a port of the GHC runtime for the Intel-SGX TEE. HasTEE uses Haskell's type system to automatically partition an application and to enforce Information Flow Control on confidential data. The DSL, being embedded in Haskell, allows for the usage of higher-order functions, monads, and a restricted set of I/O operations to write any standard Haskell application. Contrary to previous work, HasTEE is lightweight, simple, and is provided as a simple security library; thus avoiding any GHC modifications. We show the applicability of HasTEE by implementing case studies on federated learning, an encrypted password wallet, and a differentially-private data clean room.
引用
收藏
页码:72 / 88
页数:17
相关论文
共 50 条
  • [31] SafeKeeper: Protecting Web Passwords using Trusted Execution Environments
    Krawiecka, Klaudia
    Kurnikov, Arseny
    Paverd, Andrew
    Mannan, Mohammad
    Asokan, N.
    WEB CONFERENCE 2018: PROCEEDINGS OF THE WORLD WIDE WEB CONFERENCE (WWW2018), 2018, : 349 - 358
  • [32] Profiling with trust: system monitoring from trusted execution environments
    Christian Eichler
    Jonas Röckl
    Benedikt Jung
    Ralph Schlenk
    Tilo Müller
    Timo Hönig
    Design Automation for Embedded Systems, 2024, 28 : 23 - 44
  • [33] Universal Trusted Execution Environments for Securing SDN/NFV Operations
    Lefebvre, Vincent
    Santinelli, Gianni
    Mueller, Tilo
    Goetzfried, Johannes
    13TH INTERNATIONAL CONFERENCE ON AVAILABILITY, RELIABILITY AND SECURITY (ARES 2018), 2019,
  • [34] How trusted execution environments fuel research on microarchitectural attacks
    Schwarz, Michael
    Gruss, Daniel
    IEEE Security and Privacy, 2020, 18 (05): : 18 - 27
  • [35] SYSTEMATIZATION OF TRUSTED I/O SOLUTIONS FOR ISOLATED EXECUTION ENVIRONMENTS
    Stancu, Florin-Alexandru
    Mircea, Alexandru-Alin
    Rughiniș, Răzvan
    Chiroiu, Mihai
    UPB Scientific Bulletin, Series C: Electrical Engineering and Computer Science, 2022, 84 (02): : 3 - 14
  • [36] Trusted Execution Environments for Telecoms: Strengths, Weaknesses, Opportunities, and Threats
    Lacoste, Marc
    Lefebvre, Vincent
    IEEE SECURITY & PRIVACY, 2023, 21 (03) : 37 - 46
  • [37] Profiling with trust: system monitoring from trusted execution environments
    Eichler, Christian
    Roeckl, Jonas
    Jung, Benedikt
    Schlenk, Ralph
    Mueller, Tilo
    Hoenig, Timo
    DESIGN AUTOMATION FOR EMBEDDED SYSTEMS, 2024, 28 (01) : 23 - 44
  • [38] A Secure IIoT Gateway Architecture based on Trusted Execution Environments
    Froehlich, Antonio Augusto
    Horstmann, Leonardo Passig
    Hoffmann, Jose Luis Conradi
    JOURNAL OF NETWORK AND SYSTEMS MANAGEMENT, 2023, 31 (02)
  • [39] Secure and Efficient Mobile DNN Using Trusted Execution Environments
    Hu, Bin
    Wang, Yan
    Cheng, Jerry
    Zhao, Tianming
    Xie, Yucheng
    Guo, Xiaonan
    Chen, Yingying
    PROCEEDINGS OF THE 2023 ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, ASIA CCS 2023, 2023, : 274 - 285
  • [40] Time to Rethink: Trust Brokerage Using Trusted Execution Environments
    Koeberl, Patrick
    Phegade, Vinay
    Rajan, Anand
    Schneider, Thomas
    Schulz, Steffen
    Zhdanova, Maria
    TRUST AND TRUSTWORTHY COMPUTING, TRUST 2015, 2015, 9229 : 181 - 190