For a capability based security model for systems, the first results are ponylang/ponyc (Pony is a programming language that uses a compile-time object-capability model to enforce safe concurrency, directly implementing capability-based security for secure programming, but it is a language rather than a dedicated framework, kernel, or access control library), webassembly/wasi (WASI implements a capability-based security model where WebAssembly modules receive explicit, unforgeable capabilities for system resource access, directly matching the search for a capability-focused framework) and sel4/sel4 (seL4 is a formally verified microkernel built around a capability-based access control system, making it a flagship example of a capability-based security framework with formal verification and strict isolation). lunatic-solutions/lunatic and tauri-apps/tauri round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
We curate open-source GitHub repositories matching “capability based security models”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
Pony is an open-source, actor-model, capabilities-secure, high performance programming language
Pony is a programming language that uses a compile-time object-capability model to enforce safe concurrency, directly implementing capability-based security for secure programming, but it is a language rather than a dedicated framework, kernel, or access control library.
The WebAssembly System Interface is a standardized set of APIs that allow WebAssembly modules to interact with operating systems in a portable and platform-independent manner. It provides a portable runtime abstraction that separates high-level system calls from low-level host implementations to ensure compatibility across different operating systems. The project utilizes a component-based module system to link independent binary modules through shared interfaces, removing the requirement for a single monolithic binary. It employs a cross-language interface definition to provide a portable ty
WASI implements a capability-based security model where WebAssembly modules receive explicit, unforgeable capabilities for system resource access, directly matching the search for a capability-focused framework.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
seL4 is a formally verified microkernel built around a capability-based access control system, making it a flagship example of a capability-based security framework with formal verification and strict isolation.
Lunatic is a WebAssembly runtime and concurrent process manager that implements an Erlang-inspired model of lightweight concurrency and fault tolerance. It functions as a distributed actor system where isolated processes communicate via message passing across a network of linked nodes. The system utilizes a WebAssembly sandbox environment to isolate memory and restrict system call permissions for each individual process. This capability-based security model ensures that processes are sandboxed to safely execute untrusted code. The platform provides a fault-tolerant supervision tree for hiera
Lunatic is a WebAssembly runtime and actor system that enforces a capability-based security model through sandboxed processes and access controls, directly addressing the interest in capability-based security implementations, though it focuses on process isolation rather than being a general-purpose security framework for operating systems.
Tauri is a cross-platform framework for building desktop applications that combine web-based user interfaces with a memory-safe systems-language backend. It functions as a secure runtime that hosts web content within native windowing containers, allowing developers to leverage existing web technologies while maintaining high-performance native logic. By compiling applications into small-footprint, platform-specific binaries, the framework avoids bundling heavy runtime environments, resulting in lightweight executables. The project distinguishes itself through a capability-based security model
Tauri is an application framework that implements a capability-based security model for controlling access to system resources in desktop apps, fitting your interest in capability-based security tools for secure programming, though it focuses on app-level permissions rather than kernel or formal verification features.
Tock is a secure embedded operating system and microcontroller kernel designed to isolate untrusted applications and drivers. It functions as a memory-safe process isolator that uses a combination of hardware memory protection and language-level type safety to execute mutually distrustful applications on bare metal. The system distinguishes itself through a hardware abstraction layer that decouples high-level components from specific microcontroller implementations using standardized traits. It further employs a virtualization layer to allow multiple independent software components to share a
Tock is a secure embedded operating system kernel that uses capability-based access controls to isolate applications and drivers, directly implementing the capability-based security model for embedded systems — the right kind of tool, though narrower in scope (embedded-only) and not covering formal verification.
Sandstorm is an open-source platform that packages and runs web applications in security-hardened sandboxes on a personal server, functioning as a self-hosted web app operating system. It provides a curated app store where users discover and install sandboxed web applications with one-click ease, while each application runs in an isolated container that uses Linux kernel security features to separate it from the host and other apps. The platform includes a centralized authentication layer so users sign in once and gain access to all installed applications without managing separate accounts per
Sandstorm is a self-hosted platform that packages web apps in sandboxes using a capability-based security model (via Cap'n Proto and Powerbox), making it a practical demonstration of capability security for application isolation rather than a kernel or library, which fits the intent for a capability-based security framework.
Sway is a smart contract development language and programming environment designed for writing, compiling, and deploying secure blockchain programs. It serves as a type-safe language for building on-chain logic and a static analysis toolchain that validates contracts before they are executed on a network. The ecosystem provides a development environment focused on blockchain application logic and web3 backend engineering. It integrates a type-safe programming approach to reduce vulnerabilities and ensure reliable state transitions for decentralized services. The toolchain incorporates static
Sway is a smart contract language and toolchain for the Fuel blockchain, not a capability-based security framework; while it includes formal verification and type safety, it does not implement an object-capability model or capability-based access control.
Kani is a formal verification tool and model checker for Rust. It functions as a bit-precise static analyzer that mathematically proves the correctness and memory safety of code by exhaustively analyzing program states to identify undefined behavior, panics, and logic errors. The tool identifies bugs by producing concrete counterexamples when program assertions or safety contracts are violated. It enables the definition of function contracts through preconditions and postconditions to verify that inputs and outputs match expected behavior. The system provides capabilities for Rust program an
Kani is a general-purpose formal verification and model-checking tool for Rust, not a capability-based security framework — while it can verify security properties, it does not implement or demonstrate capability-based security models, delegation, or revocation itself.
CapnProto is a zero-copy serialization framework and remote procedure call system. It serves as a C++ communication library providing a schema-based data interchange format that eliminates the need to encode or decode data before reading it from memory. The system enables high-performance data serialization and low-latency network communication. It supports cross-language data exchange by using a defined schema to ensure consistent binary representation across different platforms. The framework provides tools for implementing remote procedure calls, allowing functions to be invoked on a remo
Cap'n Proto is a serialization and RPC library that uses capability-based security concepts for its RPC layer, but it is not a dedicated security framework for access control or secure programming — the security model is a feature of its communication protocol, not its primary purpose.
btrace is a Java dynamic tracing tool and instrumentation framework designed for real-time diagnostics. It enables the injection of monitoring code into running Java virtual machines to analyze behavior and diagnose processes without requiring an application restart. The platform features a dynamic probe engine for executing single-line debugging commands to print data and trace call stacks. It provides an extensible tracing framework that supports custom functionality and external integrations through isolated implementation modules. The system covers runtime performance monitoring, method
btrace is a dynamic tracing tool that uses capability-based security internally for its extension permissions, but its core purpose is runtime diagnostics, not a capability-based security framework for operating systems or access control.
Sui is a blockchain platform featuring an object-centric state model and resource-oriented smart contracts. It utilizes parallel transaction execution to increase network throughput and supports programmable transaction blocks that bundle multiple operations into single atomic units. The platform distinguishes itself with a capability-based access control system and zero-knowledge login mechanisms, enabling users to authenticate via identity providers without seed phrases. It also implements deterministic object addressing to allow predictable state lookups and supports the creation of soulbo
Sui is a blockchain platform that incorporates capability-based access control, but its identity is a distributed ledger system rather than a general-purpose capability-based security framework for operating systems or secure programming.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| ponylang/ponyc | 6.1K | Pony | BSD-2-Clause | |
| webassembly/wasi | 5.7K | Rust | NOASSERTION | |
| sel4/sel4 |
| 5.6K |
| C |
| NOASSERTION |
| lunatic-solutions/lunatic | 4.9K | Rust | Apache-2.0 |
| tauri-apps/tauri | 107.9K | Rust | Apache-2.0 |
| tock/tock | 6.4K | Rust | NOASSERTION |
| sandstorm-io/sandstorm | 7K | JavaScript | NOASSERTION |
| fuellabs/sway | 61.6K | Rust | Apache-2.0 |
| model-checking/kani | 2.9K | Rust | apache-2.0 |
| capnproto/capnproto | 13.1K | C++ | NOASSERTION |