• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

src/H21-Aug-2020-1,2991,046

Cargo.tomlH A D21-Aug-2020883 3127

MakefileH A D21-Aug-2020619 2517

README.mdH A D21-Aug-20201.1 KiB3425

README.md

1An implementation of the Stateless OpenPGP Command Line Interface
2using Sequoia.
3
4This implements a subset of the [Stateless OpenPGP Command Line
5Interface] (SOP) using the Sequoia OpenPGP implementation.  While SOP
6is not intended for daily use, it is a good way to interact with and
7explore OpenPGP implementations.  SOP is primarily used as abstraction
8in the [OpenPGP interoperability test suite].
9
10  [Stateless OpenPGP Command Line Interface]: https://datatracker.ietf.org/doc/draft-dkg-openpgp-stateless-cli/
11  [OpenPGP interoperability test suite]: https://tests.sequoia-pgp.org/
12
13# SOP primer
14
15To demonstrate SOP, let's generate a key, and encrypt and decrypt a
16message:
17
18```sh
19$ sqop generate-key julia@example.org > julia.secret.pgp
20$ sqop extract-cert < julia.secret.pgp > julia.public.pgp
21```
22
23First, we generate a key for `julia@example.org`.  Next, we extract
24the certificate, i.e. the key without the secret key material.
25
26```sh
27$ echo "a message" | sqop encrypt julia.public.pgp > message.pgp
28$ sqop decrypt julia.secret.pgp < message.pgp
29a message
30```
31
32Here, we encrypt a message with Julia's certificate, and decrypt it
33with her key.
34