summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2020-06-12 14:41:16 +0200
committerJustus Winter <justus@sequoia-pgp.org>2020-06-12 14:41:16 +0200
commit865a4084d813006d2dbe3e936330d985e0a0f68b (patch)
tree503eceac7328cefcd807b52137ca93176e0a6ca7
parent4dc21f325a8f3746e1d30648b4dc842aede870c8 (diff)
sop: Improve README.md.
-rw-r--r--sop/README.md28
1 files changed, 27 insertions, 1 deletions
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.