https://github.com/kushaldas/johnnycanencrypt
Python module for OpenPGP written in Rust.
https://github.com/kushaldas/johnnycanencrypt
ecryption gpg openpgp python rust
Last synced: 3 months ago
JSON representation
Python module for OpenPGP written in Rust.
- Host: GitHub
- URL: https://github.com/kushaldas/johnnycanencrypt
- Owner: kushaldas
- License: lgpl-3.0
- Created: 2020-07-08T06:16:51.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2026-01-02T11:49:31.000Z (5 months ago)
- Last Synced: 2026-01-08T12:29:35.168Z (5 months ago)
- Topics: ecryption, gpg, openpgp, python, rust
- Language: Rust
- Homepage:
- Size: 1.1 MB
- Stars: 53
- Watchers: 5
- Forks: 8
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-python-rs - johnnycanencrypt - OpenPGP library with Yubikey support. (Cryptography & Hashing)
README
# Johnny can encrypt
[](https://circleci.com/gh/kushaldas/workflows/johnnycanencrypt/tree/main)
Johnnycanencrypt aka **jce** is a Python module written in Rust to do basic encryption and decryption, and detached signing operations.
It uses amazing [sequoia-pgp](https://sequoia-pgp.org/) library for the actual OpenPGP operations.
You can also use Yubikeys for the private key operations using this module.
## How to build?
First install [Rustup toolchain](https://rustup.rs) for your user.
### Build dependencies in Fedora
```
sudo dnf install nettle clang clang-devel nettle-devel python3-devel pcsc-lite-devel
```
### Build dependencies in Debian Bullseye
```
sudo apt install -y python3-dev libnettle8 nettle-dev libhogweed6 python3-pip python3-venv clang libpcsclite-dev libpcsclite1 libclang-9-dev pkg-config
```
```
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements-dev.txt
maturin develop
```
For a release build use the following command.
```
maturin build --release
```
## Introduction
Please read the [Introduction](https://johnnycanencrypt.readthedocs.io/en/latest/introduction.html) documentation.
## API documentation
Please go through the [full API documentation](https://johnnycanencrypt.readthedocs.io/en/latest/api.html) for detailed
descriptions.
## LICENSE: LGPL-3.0-or-later