https://github.com/eclipse-biscuit/biscuit
delegated, decentralized, capabilities based authorization token
https://github.com/eclipse-biscuit/biscuit
Last synced: 5 months ago
JSON representation
delegated, decentralized, capabilities based authorization token
- Host: GitHub
- URL: https://github.com/eclipse-biscuit/biscuit
- Owner: eclipse-biscuit
- License: apache-2.0
- Created: 2019-01-07T10:49:25.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2025-10-21T14:58:11.000Z (8 months ago)
- Last Synced: 2026-01-13T04:12:18.522Z (5 months ago)
- Language: Rust
- Size: 825 KB
- Stars: 1,080
- Watchers: 26
- Forks: 30
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# Biscuit authentication/authorization token
[Join the Matrix chat](https://matrix.to/#/#biscuit-auth:matrix.org)

## Version
The stable version of the specification is at [SPECIFICATIONS.md](https://github.com/biscuit-auth/biscuit/blob/main/SPECIFICATIONS.md). The currently in development version is on the [dev branch](https://github.com/biscuit-auth/biscuit/blob/dev/SPECIFICATIONS.md).
## Motivation, goals, non-goals
See .
## Try it out
Biscuit tokens can be created, attenuated, inspected and authorized from your browser:
## Roadmap
You can follow the next steps on the [roadmap](https://github.com/biscuit-auth/biscuit/issues/12).
Current status:
- the credentials language, cryptographic primitives and serialization format are done
- we have implementations for biscuits v3.x in
- [Rust](https://github.com/eclipse-biscuit/biscuit-rust)
- [Web Assembly](https://github.com/eclipse-biscuit/biscuit-wasm) (based on the Rust version)
- [Python](https://github.com/eclipse-biscuit/biscuit-python) (based on the Rust version)
- [Haskell](https://github.com/eclipse-biscuit/biscuit-haskell)
- we have implementations for biscuits v1 in
- [Java](https://github.com/eclipse-biscuit/biscuit-java) (implementation of v3.3 is in progress)
- [Go](https://github.com/eclipse-biscuit/biscuit-go)
- [.Net](https://github.com/dmunch/biscuit-net)
- a website with documentation and an interactive playground is live at
- Currently deploying to real world use cases such as [Apache Pulsar](https://github.com/clevercloud/biscuit-pulsar) at [Clever Cloud](https://www.clever-cloud.com/)
- looking for an audit of the token's design, cryptographic primitives and implementations
## Feature support
The different implementations are following the specification closely, but parts of it may take some time to be fully implemented, so here is the current list of supported features per version:
* ✅ full support
* 🚧 partial support
* ❌ not supported yet
| | Rust | Haskell | Java | Go | Python | C# |
|--------------------|------|---------|------|----|--------|----|
|**v3.0** | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|**v3.1** | ✅ | ✅ | 🚧 | ❌ | ✅ | ✅ |
| scopes | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
| check all | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
| bitwise operations | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ |
| snapshots | ✅ | ❌ | 🚧 | ❌ | ✅ | ❌ |
|**v3.2** | ✅ | ✅ | 🚧 | ❌ | ✅ | ✅ |
| third party blocks | ✅ | ✅ | 🚧 | ❌ | 🚧 | ✅ |
|**v3.3** | ✅ | ✅ | 🚧 | ❌ | ✅ | ✅ |
## How to help us?
- provide use cases that we can test the token on (some specific kind of checks, auth delegation, etc)
- cryptographic design audit: we need reviews of algorithms, their usage and implementation in various languages
- add support for biscuit v3.2 to java and go implementations
## Project organisation
- `SPECIFICATIONS.md` is the description of Biscuit, its format and behaviour
- `biscuit-web-key/` is a specification for publishing biscuit public keys
- `DESIGN.md` holds the initial ideas about what Biscuit should be
- `experimentations/` holds initial code examples for the crypographic schemes and caveat language. `code/biscuit-poc/` contains an experimental version of Biscuit, built to explore API issues
## License
Licensed under Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)
logo by Julien Richard
originally created at [Clever Cloud](https://www.clever-cloud.com/)
### Contribution
Unless you explicitly state otherwise, any contribution intentionally
submitted for inclusion in the work by you, as defined in the Apache-2.0
license, shall be licensed as above, without any additional terms or
conditions.