🔐 pgp-lib
Rust library to deal with PGP operations, based on rPGP.
Features
- Encrypts asynchronously bytes using multiple public keys
- Decrypts asynchronously bytes using a secret key and its passphrase
- Signs asynchronously bytes using a secret key and its passphrase
- Verifies asynchronously bytes using a public key and a standalone signature
- Finds public keys matching emails using WKD and Key Servers (HTTP and HKP protocols supported)
- Provides helpers to generate a key pair, to read secret/public keys from path, to read signature from bytes etc.
Development
The development environment is managed by Nix. Running nix-shell
will spawn a shell with everything you need to get started with the lib: cargo
, cargo-watch
, rust-bin
, rust-analyzer
…
# Start a Nix shell
# then build the lib
Contributing
A bug tracker is available on SourceHut. [send an email]
A mailing list is available on SourceHut. [send an email] [subscribe] [unsubscribe]
If you want to report a bug, please send an email at ~soywod/pimalaya@todo.sr.ht.
If you want to propose a feature or fix a bug, please send a patch at ~soywod/pimalaya@lists.sr.ht. The simplest way to send a patch is to use git send-email, follow this guide to configure git properly.
If you just want to discuss about the project, feel free to join the Matrix workspace #pimalaya or contact me directly @soywod. You can also use the mailing list.
Sponsoring
Special thanks to the NLnet foundation and the European Commission that helped the project to receive financial support from:
- NGI Assure in 2022
- NGI Zero Entrust in 2023
If you appreciate the project, feel free to donate using one of the following providers: