From 865a4084d813006d2dbe3e936330d985e0a0f68b Mon Sep 17 00:00:00 2001 From: Justus Winter Date: Fri, 12 Jun 2020 14:41:16 +0200 Subject: sop: Improve README.md. --- sop/README.md | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/sop/README.md b/sop/README.md index 0b00731a..e16e4076 100644 --- a/sop/README.md +++ b/sop/README.md @@ -2,6 +2,32 @@ An implementation of the Stateless OpenPGP Command Line Interface using Sequoia. This implements a subset of the [Stateless OpenPGP Command Line -Interface] using the Sequoia OpenPGP implementation. +Interface] (SOP) using the Sequoia OpenPGP implementation. While SOP +is not intended for daily use, it is a good way to interact with and +explore OpenPGP implementations. SOP is primarily used as abstraction +in the [OpenPGP interoperability test suite]. [Stateless OpenPGP Command Line Interface]: https://datatracker.ietf.org/doc/draft-dkg-openpgp-stateless-cli/ + [OpenPGP interoperability test suite]: https://tests.sequoia-pgp.org/ + +# SOP primer + +To demonstrate SOP, let's generate a key, and encrypt and decrypt a +message: + +```sh +$ sqop generate-key julia@example.org > julia.secret.pgp +$ sqop extract-cert < julia.secret.pgp > julia.public.pgp +``` + +First, we generate a key for `julia@example.org`. Next, we extract +the certificate, i.e. the key without the secret key material. + +```sh +$ echo "a message" | sqop encrypt julia.public.pgp > message.pgp +$ sqop decrypt julia.secret.pgp < message.pgp +a message +``` + +Here, we encrypt a message with Julia's certificate, and decrypt it +with her key. -- cgit v1.2.3