frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Confidential computing for high-assurance RISC-V embedded systems

https://github.com/IBM/ACE-RISCV
103•mrnoone•1y ago
Dear HN community! Looking forward to hearing your feedback on ACE (assured confidential execution), technology that implements VM-based trusted execution environment (TEE) for embedded RISC-V systems with focus on a formally verified and auditable firmware. We target high-assurance systems that can benefit from compartmentalization and hardware-backed isolation. The key ingredient called security monitor (firmware) is implemented in Rust. The formal specification is defined as annotations directly in code and gets translated to Coq using RefinedRust automation. ACE design is now part of the RISCV confidential VM extension (CoVE) specification (deployment model 3).

Comments

IshKebab•1y ago
Can you explain what the relationship is between this and CoVE? Is ACE (this repo) the firmware, and CoVE the RISC-V hardware extensions that it requires?

How does it run on a P550 if that doesn't support CoVE?

aseipp•1y ago
Yes, that's basically the relationship between CoVE and ACE, from a quick glance. In this case, ACE is simply implementing a formally modeled and verified security monitor where the design has been extracted to Coq and the invariants proven.

It can work on P550 because CoVE supports several "Deployment strategies", the one ACE uses is referenced in the README: CoVE spec, Appendix D, "M-mode [Trusted Security Manager] based deployment model" https://github.com/riscv-non-isa/riscv-ap-tee/blob/main/src/... -- the other appendicies detail e.g. Smmtt based designs, and apparently there's a not-yet-written "Nested Virtualization" design in Appendix C.

They also note that the P550 isn't a "true" port due to the preliminary, non-ratified H extension, and it also misses another required extension called "Sstc" but they just emulate it. (Sstc is interesting; it seems to be a performance optimization for delivering timer interrupts directly to supervisors, but I can imagine in the case of CoVE timer interrupts going through M-mode could leak data, making it more of a security issue.)

Leveraging M-mode is basically how previous security monitors like keystone worked too, back on the original HiFive Unleashed. It just sorta treats M-mode as an analogue to the "secure world" in ARM parlance, though there is no requirement that M-mode has e.g. an encrypted memory controller and dedicated memory region, and I'm guessing other things (I'm not super familiar with TrustZone.)

Broadly speaking this reminds me as a kind of a evolution/combination of Microsoft's Komodo (formally verified, but was only for e.g. SGX-style enclaves) and existing M-mode TEE systems like Keystone -- but upgraded to support "Confidental Computing" virtual machines. So that's quite nice.

mrnoone•1y ago
The CoVE specification defines a unified confidential computing architecture for RISC-V that scales across embedded, edge, and cloud use cases. The system designers select the appropriate deployment model based on the specific constraints and goals of their target systems. ACE adopts the deployment model tailored for mid- to high-end embedded platforms (see Appendix D in the CoVE spec).

Ultimately, we should expect multiple CoVE implementations optimized for different domains. For instance, in cloud environments, the focus is on maximizing performance and resource utilization—typically requiring full CoVE support and advanced hardware features such as Smmtt and AIA. Salus from Rivos is an example of such a high-end implementation. In contrast, embedded systems have limited power and silicon budgets, and thus prioritize simpler hardware. These systems trade off performance and accept memory fragmentation in favor of reduced hardware complexity and cost—ACE is designed with this trade-off in mind.

ACE runs on P550 by emulating the missing hardware features. This enables experimental deployment on real hardware. (P550 is the first commercially available RISC-V processor with virtualization support.)

neom•1y ago
Developers have faced in the confidential computing space, particularly with x86 TEEs, fragmentation leading to vendor lockin and a difficult developer experience due to multiple, somewhat incompatible standards/approaches. Does the CoVE effort, and IBM's involvement in it, aim to prevent a similar situation in the RISC-V world, fostering a more open and standardized TEE ecosystem? Are you using CCC to align RISC-V CoVE with efforts to improve the developer experience? I hope we see common abstractions across different TEE architectures!!!
mrnoone•1y ago
I agree with your point, we need common abstractions across different TEE architectures!

The CoVE specification addresses fragmentation in the RISC-V ecosystem by defining a unified confidential computing architecture that scales across embedded, edge, and cloud use cases. Higher layers of the software stack, for example Linux KVM and QEMU, implement the defined ABI, enabling support for a variety of CoVE-compliant implementations. Currently, there are two CoVE implementations: ACE, targeting embedded systems, and Salus, aimed at cloud deployments. Additionally, there are efforts underway to port OP-TEE to the CoVE architecture.

Within the Linux kernel, there is ongoing work to unify internal interfaces across different TEE implementations (x86,ARM,Z,PowerPC) and harden the guest kernel. The CoVE patches are designed to align with these abstractions, though they have not yet been upstreamed. Remote attestation is still the pain point, since the CoVE spec proposes formats that are not compatible with Intel/AMD/TPM style. On the other hand, the ACE's local attestation re-uses the format from OpenPOWER PEF and opens it with versioning to new algorithms and properties.

From an end-user standpoint, VM-based TEEs are more agnostic to the underlying hardware technology compared with process-based TEEs, as they rely on the virtualization boundary for isolation. What does still change is the guest kernel and its supporting libraries, which must be adapted to leverage platform-specific attestation mechanisms.

anonymousDan•1y ago
How does this differ from Keystone?
mrnoone•1y ago
There are two key differences:

(1) ACE leverages hardware virtualization support, including an MMU, to enable confidential virtual machines. In contrast, Keystone is designed for simpler processors that rely on just machine/supervisor/user privilege levels and physical memory protection (PMP), making it more suitable for process-based enclaves—similar to architectures like Komodo or Intel SGX. In that sense, ACE is conceptually closer to Intel TDX, but tailored for a different domain: embedded systems rather than cloud infrastructure.

(2) In ACE, the architecture and code are simplified to facilitate formal verification.

hyperhello•1y ago
> ACE supports local attestation, a mechanism to authenticate confidential VMs intended for embedded systems with limited or no network connectivity.

I'm interested to know the safe definition of 'limited' connectivity - is there some kind of boundary which logical reasoning can't support?

l0ng1nu5•1y ago
This area is where I see riscv excelling ahead of current proprietary options. I don't think it can compete on speed in terms of general purpose computing at this point.

The way I see it, once guaranteed security is offered, security conscious IT admins will insist on using it and the herd will eventually follow.

Project Brain – Persistent memory index for AI coding

https://github.com/OoneBreath/claude-code-project-brain
1•Slav_fixflex•1m ago•0 comments

databow: a Rust CLI for any database with an ADBC driver

https://columnar.tech/blog/introducing-databow//
1•hckshr•2m ago•0 comments

Pluto.jl 1.0 release – reactive notebook for Julia

https://discourse.julialang.org/t/pluto-1-0-release/137296
1•fons-p•4m ago•0 comments

The Mathematics of Multi-Tenancy

https://www.bitsxpages.com/p/the-mathematics-of-multi-tenancy
1•birdculture•10m ago•0 comments

Normetrics: A unified API for norm-based linear models (white paper)

https://github.com/PPenelle/-NORMETRICS-
1•ppenelle•11m ago•0 comments

Why China got rich and India didn't

https://davidoks.blog/p/why-china-got-rich-and-india-didnt
3•rochansinha•11m ago•0 comments

Audio software to increase focus (EEG)

https://www.hosaka.fi/
2•cslr•12m ago•1 comments

We're going to put Codex inside ChatGPT

https://openai.com/business/intelligence-at-work/
1•marcuschong•12m ago•1 comments

Show HN: Junco, turn newsletters into short audio episodes

https://www.tryjunco.com/
3•alex-onecard•13m ago•2 comments

Generating Random Factored Numbers, Easily [pdf]

https://link.springer.com/content/pdf/10.1007/s00145-003-0051-5.pdf
1•luu•14m ago•0 comments

DeepSeek-V4-Flash (official FP8) running across 2x DGX Spark

https://forums.developer.nvidia.com/t/deepseek-v4-flash-official-fp8-running-across-2x-dgx-spark-...
1•pilooch•15m ago•0 comments

FBI charges two NIH researchers with smuggling monkeypox to US from Congo

https://www.justice.gov/usao-edmi/pr/feds-charge-foreign-nationals-working-national-institutes-he...
3•delichon•15m ago•0 comments

Python The Good Stuff: Humble Book Bundle

https://www.humblebundle.com/books/python-good-stuff-no-starch-books
2•teleforce•15m ago•0 comments

Use your Nvidia GPU's VRAM as swap space on Linux

https://github.com/c0dejedi/nbd-vram
5•tanelpoder•18m ago•0 comments

FullPAC files S-1 [pdf]

https://d1io3yog0oux5.cloudfront.net/gotv/sec/0001493152-26-026911/0001493152-26-026911.pdf
1•naryJane•19m ago•1 comments

Always Be Blaming: how Git blame answers the wrong question

https://matklad.github.io/2026/05/18/always-be-blaming.html
1•pgedge_postgres•24m ago•0 comments

Show HN: Reloops – Open-Source Frame.io Alternative for AI Agents and Teams

https://github.com/Reloops-App/reloops/
1•dheerajbhatia27•24m ago•0 comments

Show HN: Ordinary and Ordinaryd v0.6.0

https://codeberg.org/ordinarylabs/Ordinary/src/branch/main/docs/quick-start.md
1•seanwatters•25m ago•0 comments

Feds failing in bid to take a supercomputer from a climate research center

https://arstechnica.com/science/2026/06/judge-blocks-part-of-trump-admins-effort-to-hurt-colorado...
2•yodon•27m ago•0 comments

I hadn't coded in 30 years. Then I built a space game with Godot

2•CosmicGoldRush•27m ago•0 comments

AI enthusiasts are in race against time, AI skeptics are in race against entropy

https://charitydotwtf.substack.com/p/ai-enthusiasts-are-in-a-race-against
1•wapasta•27m ago•0 comments

Eupago for Python – The First Python SDK for Portugal's MB Way/Multibanco

https://github.com/bilouro/eupago-python
1•bilouro•29m ago•0 comments

This creepy blob robot will keep going even if you break its legs

https://www.popsci.com/technology/unstoppable-blob-robot/
1•mhb•35m ago•1 comments

Law Professors Prefer AI over Peer Answers [pdf]

https://law.stanford.edu/wp-content/uploads/2026/06/salinas_et_al.pdf
1•droidjj•36m ago•0 comments

Titan Network claims 5% of Asia's AI data market using crowdsourced home devices

https://www.coindesk.com/tech/2026/06/02/here-s-how-one-decentralized-cloud-provider-says-private...
1•Reaktornano•37m ago•1 comments

Paseo – Beautiful open-source coding agent interface (desktop, mobile, CLI)

https://github.com/getpaseo/paseo
5•timhigins•39m ago•1 comments

The Empty Field That Wasn't: GPS, OTAD and Two Decades of Encrypted Broadcasts

https://lsc-pagepro.mydigitalpublication.com/publication/?i=865273&p=62&view=issueViewer
1•ahlCVA•40m ago•0 comments

WinUtils: Shell-powered CLI tools for Windows 95

https://www.codenaked.com/winutils
3•code_naked•40m ago•1 comments

We tore down our no-code site and went back to code

https://twitter.com/chrismuccioli/status/2061909833893257389
5•nadis•42m ago•1 comments

ContextWall – Context firewall for AI agents and RAG pipelines

https://contextwall.io/
2•sumeshpk•42m ago•0 comments