Capacity: Cryptographically-Enforced In-Process Capabilities for Modern ARM Architectures (Extended Version)
Kha Dinh Duy, Kyuwon Cho, Taehyun Noh, Hojoon Lee

TL;DR
Capacity introduces a hardware-assisted, capability-based in-process access control scheme for ARM architectures, leveraging features like Pointer Authentication and Memory Tagging Extension to enhance security with minimal performance overhead.
Contribution
The paper presents Capacity, a novel approach that retrofits ARM hardware features to implement cryptographically-enforced in-process capabilities, filling a gap left by x86-specific features.
Findings
Capacity achieves low overhead (~17%) in web server benchmarks.
It effectively isolates sensitive resources within in-process domains.
The scheme enhances security by cryptographically authenticating references.
Abstract
In-process compartmentalization and access control have been actively explored to provide in-place and efficient isolation of in-process security domains. Many works have proposed compartmentalization schemes that leverage hardware features, most notably using the new page-based memory isolation feature called Protection Keys for Userspace (PKU) on x86. Unfortunately, the modern ARM architecture does not have an equivalent feature. Instead, newer ARM architectures introduced Pointer Authentication (PA) and Memory Tagging Extension (MTE), adapting the reference validation model for memory safety and runtime exploit mitigation. We argue that those features have been underexplored in the context of compartmentalization and that they can be retrofitted to implement a capability-based in-process access control scheme. This paper presents Capacity, a novel hardware-assisted intra-process…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
