openpgp-notes/book/source/02-goals.md
Heiko Schaefer c8054b9120
Initial outline and old notes
(Rough merge of two precursor projects by Heiko, and outline notes by Paul)
2023-09-14 21:30:43 +02:00

1.5 KiB

Goals of this document

Target audience: developers (not end users)

Prior knowledge of the reader?
- Software development
- Basics of encryption

Entry point to writing software that uses OpenPGP

Help to getting started as a user of any implementation (OpenPGP JS, Sequoia PGP, ...)

The RFC explains lots of details (which bit goes where) that are crucial
for implementers, but unimportant for software developers who use OpenPGP
through a library.
This text aims to describe OpenPGP at the "library-level."

A companion for the OpenPGP RFC

The OpenPGP Standard defines "format and methods" to "provide services including confidentiality, key management, authentication, and digital signatures".

This chapter is intended as a companion to the RFC. It does not aim to teach cryptographic concepts.

The idea is to go over various common OpenPGP artifacts, as they are currently used, to get an overview. There are lots of details that these notes will not cover.

Among these omitted details are differences between current v4 artifacts and older variants, which were used in previous incarnations of (Open)PGP. (Note: OpenPGP v3 artifacts are still in use as of this writing, the RFC requires implementations to accept them. v3 artifacts are still very much relevant for real world OpenPGP usage and implementations)

We will also ignore most details about how OpenPGP artifacts are encoded, as well as how OpenPGP data is arranged to allow for streaming operation.