4 ms·
CHERI enforces safety in hardware. No amount of language safety can prevent exploits from being forged right out of machine code.
by speed_spread 3y ago
CHERI enforces safety in hardware. No amount of language safety can prevent exploits from being forged right out of machine code.
- olliej 3y agoCHERI gives you greater granularity over memory access it doesn’t magic away security vulnerabilities. But that doesn’t negate what I stated: there’s a massive amount of complexity, and significant performance costs of all these features. They’re needed because the prevalence of unsafe code means we need a global enforcement mechanism which means hardware. Hence we take a real and permanent cost in hardware that applies to all code on the system. The cost is hardware complexity, runtime performance, and memory, and it is borne by all software on the system.
- markjdb 3y agoCHERI does more than help eliminate security vulnerabilities. Consider that today we rely on the MMU to provide memory isolation between Unix processes; CHERI enables isolation without switching page tables, at a smaller hardware cost (though it's not like you can drop unmodified software into such an architecture). So I don't think it's correct to consider this yet another layer of complexity. If anything it has the potential to lead to simpler system designs.
- gpderetta 3y agoIt will be nice to see CHERI applied to single address space operating systems!