Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
156 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
45 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

HasTEE+ : Confidential Cloud Computing and Analytics with Haskell (2401.08901v1)

Published 17 Jan 2024 in cs.CR and cs.PL

Abstract: Confidential computing is a security paradigm that enables the protection of confidential code and data in a co-tenanted cloud deployment using specialized hardware isolation units called Trusted Execution Environments (TEEs). By integrating TEEs with a Remote Attestation protocol, confidential computing allows a third party to establish the integrity of an \textit{enclave} hosted within an untrusted cloud. However, TEE solutions, such as Intel SGX and ARM TrustZone, offer low-level C/C++-based toolchains that are susceptible to inherent memory safety vulnerabilities and lack language constructs to monitor explicit and implicit information-flow leaks. Moreover, the toolchains involve complex multi-project hierarchies and the deployment of hand-written attestation protocols for verifying \textit{enclave} integrity. We address the above with HasTEE+, a domain-specific language (DSL) embedded in Haskell that enables programming TEEs in a high-level language with strong type-safety. HasTEE+ assists in multi-tier cloud application development by (1) introducing a \textit{tierless} programming model for expressing distributed client-server interactions as a single program, (2) integrating a general remote-attestation architecture that removes the necessity to write application-specific cross-cutting attestation code, and (3) employing a dynamic information flow control mechanism to prevent explicit as well as implicit data leaks. We demonstrate the practicality of HasTEE+ through a case study on confidential data analytics, presenting a data-sharing pattern applicable to mutually distrustful participants and providing overall performance metrics.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (8)
  1. ARM: ARM TrustZone (2004), https://www.arm.com/technologies/trustzone-for-cortex-a
  2. ARM: Mbed TLS (2009), https://tls.mbed.org
  3. Intel: Intel SGX Intro: Passing Data Between App and Enclave (2016), https://www.intel.com/content/www/us/en/developer/articles/technical/sgx-intro-passing-data-between-app-and-enclave.html
  4. Intel: tlibc - an alternative to glibc (2018), https://github.com/intel/linux-sgx/tree/master/common/inc/tlibc
  5. Intel: Intel Trust Domain Extensions (2021), https://www.intel.com/content/www/us/en/developer/tools/trust-domain-extensions/overview.html
  6. LinuxSGX: Linux SGX Remote Attestation (2017), https://github.com/svartkanin/linux-sgx-remoteattestation/blob/master/Application/isv˙enclave/isv˙enclave.cpp#L152-L308
  7. Microsoft: Windows cryptoapi spoofing vulnerability (2020), https://nvd.nist.gov/vuln/detail/CVE-2020-0601
  8. Northwood, C.: The full stack developer: your essential guide to the everyday skills expected of a modern full stack web developer. Springer (2018)

Summary

We haven't generated a summary for this paper yet.