arrow
Return

TSC-VEE: A TrustZone-Based Smart Contract Virtual Execution Environment

delete2023-06-01
delete4
PRE
AI
Z
Zhaolong Jian
Y
Ye Lu *
Y
Youyang Qiao
Y
Yaozheng Fang
X
Xueshuo Xie
Y
Yang, Dayi
Z
Zhiyuan Zhou
T
Tao Li
DOI:10.1109/TPDS.2023.3263882delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
TrustZone as a trusted execution environment (TEE) has been proven to preserve the confidentiality of blockchain transactions supported by smart contracts. Despite some academic effort, TrustZone can only support limited languages for now. The lack of the corresponding execution environment for smart contracts seriously hinders blockchain applications from directly running on TrustZone. In this paper, we design the first virtual execution environment named TSC-VEE for performing Solidity smart contracts on TrustZone, to the best of our knowledge. TSC-VEE can be decomposed into fourfold: (1) an instruction set adapted to the isolation and world switching mechanism of TrustZone. (2) a runtime memory management mechanism that provides a pair of instructions with the corresponding processing mechanism to allocate and release the work memory. (3) a hybrid granularity resource analysis algorithm which computes and records the value of maximum stack height and static gas cost through bytecode pre-execution, avoiding runtime overflow and invalid computations. (4) a cross-isolation-environment prefetching approach that supports loading and storing the storage data from the normal world into the secure world on TrustZone before execution, thus avoiding switching the world state frequently at runtime. Extensive experimental results show that TSC-VEE can perform smart contracts correctly and efficiently on TrustZone. Compared with the most commonly used Ethereum client-Geth, TSC-VEE achieves execution performance improvements by $9.29\times$9.29x. We also implement the Ethereum virtual machine-evmone on TrustZone. TSC-VEE can reduce the latency by 12.63% with our optimization techniques, and decrease the work memory footprint by 22.95% on average when executing various scale contracts.
Keywords:
Smart contracts
Blockchains
Memory management
Switches
Codes
Public key
Optimization
Blockchain
smart contract
solidity program language
TrustZone
virtual execution environment

Journal

IEEE Transactions on Parallel and Distributed Systems cover
IEEE Transactions on Parallel and Distributed Systems
IF:
6
Papers:
5.2K
Citations:
1.1W

Organization

N
nankai university
Scholars:
4.7W
Papers: 3.2W
Citations: 74