2019
DOI: 10.1109/tc.2019.2914037
|View full text |Cite
|
Sign up to set email alerts
|

CHERI Concentrate: Practical Compressed Capabilities

Abstract: We present CHERI Concentrate, a new fat-pointer compression scheme applied to CHERI, the most developed capability-pointer system at present. Capability fat pointers are a primary candidate to enforce fine-grained and non-bypassable security properties in future computer systems, although increased pointer size can severely affect performance. Thus, several proposals for capability compression have been suggested elsewhere that do not support legacy instruction sets, ignore features critical to the existing so… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
27
0

Year Published

2020
2020
2023
2023

Publication Types

Select...
5
3
1

Relationship

3
6

Authors

Journals

citations
Cited by 43 publications
(27 citation statements)
references
References 30 publications
0
27
0
Order By: Relevance
“…CHERI Concentrate [15] is an elegant capability compression scheme that reduces the footprint of a capability value to 128 bits. However this shrinkage comes at the cost of some loss of precision in terms of representable base addresses 1 if (cheri_gettag(limit) == 0) { 2 limit -= ALIGNMENT; 3 } else { // ...…”
Section: Bounds Precisionmentioning
confidence: 99%
“…CHERI Concentrate [15] is an elegant capability compression scheme that reduces the footprint of a capability value to 128 bits. However this shrinkage comes at the cost of some loss of precision in terms of representable base addresses 1 if (cheri_gettag(limit) == 0) { 2 limit -= ALIGNMENT; 3 } else { // ...…”
Section: Bounds Precisionmentioning
confidence: 99%
“…When the object's size is large enough, this approach may have false positives or excessive performance overheads. Many efforts [11,29,44,45] embed metadata into pointers and implement different forms of fat pointers by extending registers or language implementations. However, the approach needs to change the processor hardware and increases runtime overheads.…”
Section: Metadata Managementmentioning
confidence: 99%
“…Then there is a Bluespec [11] FPGA hardware implementation of the architecture, and a software stack above it, adapting LLVM [12] and FreeBSD [13] to CHERI-MIPS. All this has involved extensive work on the interaction between the capability system and systems aspects of memory management (static and dynamic linking, process creation, context switching, page swapping and signal delivery) [14]; on the overhead of compiling pointers to capabilities [5], [15]; on compartmentalisation of legacy software [16]; and on the performance overhead of tagged memory [17] and protectiondomain switches [18]. The underlying ideas are portable, not MIPS-specific, and work is underway on experimental academic RISC-V and industrial Arm versions -the latter in a major project involving Arm and the UK Government [19], [20] to produce prototype silicon and a development board.…”
Section: A the Cheri Contextmentioning
confidence: 99%
“…The 256-bit format includes a 64-bit virtual address, base, and length; permission bits, to execute, load, and store data, to load, store, seal, and unseal capabilities, to invoke sealed capabilities, and to store local capabilities; an is-sealed bit; and a 24-bit object type, used in sealing, unsealing, and invoking. The 128-bit format [15] compresses this, exploiting the redundancy from allocation alignment (the proofs later in this paper are about the 256bit version). In this example, the base and length, identifying the memory region that the capability is allowed to access, are those of the original x allocation.…”
Section: A Fine-grained Memory Protectionmentioning
confidence: 99%