KeyVisor -- A Lightweight ISA Extension for Protected Key Handles with CPU-enforced Usage Policies
Fabian Schwarz, Jan Philipp Thoma, Christian Rossow, Tim G\"uneysu

TL;DR
KeyVisor introduces a lightweight CPU extension that securely manages cryptographic keys within the processor, enabling fast, fine-grained, hardware-enforced key policies without leaking keys to memory.
Contribution
It presents a novel ISA extension that offloads key handling to the CPU, improving security, performance, and deployability compared to existing key protection methods.
Findings
KeyVisor achieves fast cryptographic operations with hardware-enforced policies.
It prevents keys from leaking to memory, enhancing security.
Demonstrated real-world applications show practical benefits.
Abstract
The confidentiality of cryptographic keys is essential for the security of protection schemes used for communication, file encryption, and outsourced computation. Beyond cryptanalytic attacks, adversaries can steal keys from memory via software exploits or side channels, enabling them to, e.g., tamper with secrets or impersonate key owners. Therefore, existing defenses protect keys in dedicated devices or isolated memory, or store them only in encrypted form. However, these designs often provide unfavorable tradeoffs, sacrificing performance, fine-grained access control, or deployability. In this paper, we present KeyVisor, a lightweight ISA extension that securely offloads the handling of cryptographic keys to the CPU. KeyVisor provides CPU instructions that enable applications to request protected key handles and perform AEAD cipher operations on them. The underlying keys are…
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.
Taxonomy
TopicsAccess Control and Trust · Cloud Data Security Solutions · Security and Verification in Computing
