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 条
  • [21] On Making Emerging Trusted Execution Environments Accessible to Developers
    Nyman, Thomas
    McGillion, Brian
    Asokan, N.
    TRUST AND TRUSTWORTHY COMPUTING, TRUST 2015, 2015, 9229 : 58 - 67
  • [22] Obscuro: A Bitcoin Mixer using Trusted Execution Environments
    Tran, Muoi
    Luu, Loi
    Kang, Min Suk
    Bentov, Iddo
    Saxena, Prateek
    34TH ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE (ACSAC 2018), 2018, : 692 - 701
  • [23] Keystone: An Open Framework for Architecting Trusted Execution Environments
    Lee, Dayeol
    Kohlbrenner, David
    Shinde, Shweta
    Asanovic, Krste
    Song, Dawn
    PROCEEDINGS OF THE FIFTEENTH EUROPEAN CONFERENCE ON COMPUTER SYSTEMS (EUROSYS'20), 2020,
  • [24] SeRoT: A Secure Runtime System on Trusted Execution Environments
    Liu, Jingbin
    Qin, Yu
    Feng, Dengguo
    2020 IEEE 19TH INTERNATIONAL CONFERENCE ON TRUST, SECURITY AND PRIVACY IN COMPUTING AND COMMUNICATIONS (TRUSTCOM 2020), 2020, : 30 - 37
  • [25] Remote Attestation Assurance Arguments for Trusted Execution Environments
    Usman, Ahmad B.
    Cole, Nigel
    Asplund, Mikael
    Boeira, Felipe
    Vestlund, Christian
    PROCEEDINGS OF THE 2023 ACM WORKSHOP ON SECURE AND TRUSTWORTHY CYBER-PHYSICAL SYSTEMS, SAT-CPS 2023, 2023, : 33 - 42
  • [26] The Untapped Potential of Trusted Execution Environments on Mobile Devices
    Ekberg, Jan-Erik
    Kostiainen, Kari
    Asokan, N.
    IEEE SECURITY & PRIVACY, 2014, 12 (04) : 29 - 37
  • [27] DELEGATEE: Brokered Delegation Using Trusted Execution Environments
    Matetic, Sinisa
    Schneider, Moritz
    Miller, Andrew
    Juels, Ari
    Capkun, Srdjan
    PROCEEDINGS OF THE 27TH USENIX SECURITY SYMPOSIUM, 2018, : 1387 - 1403
  • [28] A framework for application partitioning using trusted execution environments
    Atamli-Reineh, Ahmad
    Paverd, Andrew
    Petracca, Giuseppe
    Martin, Andrew
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2017, 29 (23):
  • [29] Fortress: Securing IoT Peripherals with Trusted Execution Environments
    Yuhala, Peterson
    Menetrey, James
    Felber, Pascal
    Pasin, Marcelo
    Schiavoni, Valerio
    39TH ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, SAC 2024, 2024, : 243 - 250
  • [30] BOOMERANG: Exploiting the Semantic Gap in Trusted Execution Environments
    Machiry, Aravind
    Gustafson, Eric
    Spensky, Chad
    Salls, Chris
    Stephens, Nick
    Wang, Ruoyu
    Bianchi, Antonio
    Choe, Yung Ryn
    Kruegel, Christopher
    Vigna, Giovanni
    24TH ANNUAL NETWORK AND DISTRIBUTED SYSTEM SECURITY SYMPOSIUM (NDSS 2017), 2017,