Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/instructure/paseto
A paseto implementation in rust.
https://github.com/instructure/paseto
dogs-over-cats paseto security token
Last synced: 3 months ago
JSON representation
A paseto implementation in rust.
- Host: GitHub
- URL: https://github.com/instructure/paseto
- Owner: instructure
- License: mit
- Archived: true
- Created: 2018-03-09T00:23:55.000Z (almost 7 years ago)
- Default Branch: trunk
- Last Pushed: 2024-04-30T14:10:03.000Z (10 months ago)
- Last Synced: 2024-08-09T03:16:14.174Z (6 months ago)
- Topics: dogs-over-cats, paseto, security, token
- Language: Rust
- Size: 140 KB
- Stars: 150
- Watchers: 11
- Forks: 14
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-rust-security - paseto.rs - PASETO Rust implementation (Web and Cloud Security / Authorization & Authentication Frameworks)
README
# Paseto Rust #
Paseto is everything you love about JOSE (JWT, JWE, JWS) without any of the [many design deficits that plague the JOSE standards][blog_post].
This is directly adapted from the reference implemenation made by paragon-ie, which can be found: [HERE][reference_impl]._NOTE: The license of the original paseto implementation is ISC which is functionally equivelant to MIT, but located: [HERE][reference_license]_
## What is Paseto? ##
Paseto (Platform-Agnostic SEcurity TOkens) is a specification and reference implementation for secure stateless tokens. You
can find a lot of info about the motivation + benefits of using paseto inside the original paseto repo: [HERE][reference_impl].## Usage ##
Simply add this crate to your `Cargo.toml` file:
```toml
[dependencies]
paseto = "3.0.0+1.0.3"
```## Examples ##
The `examples/` directory covers the following use cases:
1. Using the protocol directly to encode potentially non-json data.
2. Using the public builder interface to build a JWT esque equivelant json payload with shared key encryption.
3. Using the public builder interface to build a JWT esque equivelant json payload with public key signing.[reference_impl]: https://github.com/paragonie/paseto
[reference_license]: https://github.com/paragonie/paseto/blob/master/LICENSE
[blog_post]: https://paragonie.com/blog/2017/03/jwt-json-web-tokens-is-bad-standard-that-everyone-should-avoid