Simple to use OpenPGP API based on Bouncycastle
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Paul Schaub 15736586dd
SOP: Add convenience methods to deal with byte arrays
6 days ago
src SOP: Add convenience methods to deal with byte arrays 6 days ago Reuse compliance 1 week ago
build.gradle Reuse compliance 1 week ago


Implementation of the Stateless OpenPGP Command Line Interface specification. This terminal application allows generation of OpenPGP keys, extraction of public key certificates, armoring and de-armoring of data, as well as - of course - encryption/decryption of messages and creation/verification of signatures.

Install a SOP backend

This module comes without a SOP backend, so in order to function you need to extend it with an implementation of the interfaces defined in sop-java. An implementation using PGPainless can be found in the module pgpainless-sop, but it is of course possible to provide your own implementation.

Just install your SOP backend by calling

// static method call prior to execution of the main method


To get an overview of available commands of the application, execute

java -jar sop-java-picocli-XXX.jar help

If you just want to get started encrypting messages, see the module pgpainless-cli which initializes sop-java-picocli with pgpainless-sop, so you can get started right away without the need to manually wire stuff up.