Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/astro/sigh
HTTP signatures for ActivityPub in Rust
https://github.com/astro/sigh
activitypub activitypub-protocol activitypub-server http openssl reqwest rust rustlang signature signatures
Last synced: 3 months ago
JSON representation
HTTP signatures for ActivityPub in Rust
- Host: GitHub
- URL: https://github.com/astro/sigh
- Owner: astro
- License: mit
- Created: 2022-12-09T16:38:01.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-15T01:02:18.000Z (10 months ago)
- Last Synced: 2024-05-23T04:01:38.861Z (7 months ago)
- Topics: activitypub, activitypub-protocol, activitypub-server, http, openssl, reqwest, rust, rustlang, signature, signatures
- Language: Rust
- Homepage:
- Size: 36.1 KB
- Stars: 6
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# sigh!
This crate supplies everything for dealing with [HTTP
signatures](https://datatracker.ietf.org/doc/html/draft-cavage-http-signatures-12)
in ActivityPub:- Keypair generation
- Signing
- VerificationSee the [documentation](https://docs.rs/sigh) for usage examples.
The [OpenSSL crate](https://crates.io/crates/openssl) is used for
cryptographic algorithms. The [http
crate](https://crates.io/crates/http) is used as a common denominator
interface for many HTTP client and server implementations.Beware that you *must also* take care of `Digest:` headers, using
eg. [http-digest-headers](https://github.com/dskyberg/http_digest_headers).## Supported algorithms
| Algorithm | Implemented | Used by... |
|---------------------------|-------------|------------|
| `hs2019` (Ed25519-SHA512) | ✓ | |
| `rsa-sha1` | | |
| `rsa-sha256` | ✓ | Mastodon |
| `hmac-sha256` | | |
| `ecdsa-sha256` | | |