TZ-LLM: Protecting On-Device Large Language Models with Arm TrustZone
Xunjie Wang, Jiacheng Shi, Zihan Zhao, Yang Yu, Zhichao Hua, Jinyu Gu
TL;DR
TZ-LLM tackles the confidentiality of on-device large language models by leveraging Arm TrustZone to protect parameters in the TEE while enabling practical performance. The approach combines two key innovations: pipelined parameter restoration to dynamically scale secure memory without incurring prohibitive TTFTs, and a co-driver data-plane NPU driver in the TEE to achieve secure NPU time-sharing with minimal additional TCB. Implemented on OpenHarmony with llama.cpp, TZ-LLM delivers substantial TTFT reductions (up to 90.9%) and decoding-speed gains (up to 23.2%) against a strawman baseline, with acceptable overhead when compared to REE-based baselines. The work demonstrates the viability of end-to-end secure on-device LLM inference with realistic hardware constraints, potentially enabling privacy-preserving, low-latency mobile AI without cloud dependence.
Abstract
Large Language Models (LLMs) deployed on mobile devices offer benefits like user privacy and reduced network latency, but introduce a significant security risk: the leakage of proprietary models to end users. To mitigate this risk, we propose a system design for protecting on-device LLMs using Arm Trusted Execution Environment (TEE), TrustZone. Our system addresses two primary challenges: (1) The dilemma between memory efficiency and fast inference (caching model parameters within TEE memory). (2) The lack of efficient and secure Neural Processing Unit (NPU) time-sharing between Rich Execution Environment (REE) and TEE. Our approach incorporates two key innovations. First, we employ pipelined restoration, leveraging the deterministic memory access patterns of LLM inference to prefetch parameters on demand, hiding memory allocation, I/O and decryption latency under computation time. Second, we introduce a co-driver design, creating a minimal data plane NPU driver in the TEE that collaborates with the full-fledged REE driver. This reduces the TEE TCB size and eliminates control plane reinitialization overhead during NPU world switches. We implemented our system on the emerging OpenHarmony OS and the llama.cpp inference framework, and evaluated it with various LLMs on an Arm Rockchip device. Compared to a strawman TEE baseline lacking our optimizations, our system reduces TTFT by up to 90.9% and increases decoding speed by up to 23.2%.
