mirror of
https://codeberg.org/openpgp/notes.git
synced 2025-09-11 12:19:40 +02:00
ch1/2: add/improve links
Tighten "Building blocks" section. (Processing input from Wiktor)
This commit is contained in:
parent
49cd4f88f3
commit
3ef4f265d1
4 changed files with 15 additions and 19 deletions
|
@ -8,13 +8,13 @@ OpenPGP is an IETF-standardized set of cryptographic operations. OpenPGP defines
|
|||
|
||||
The OpenPGP standard has evolved over time, and remains under active development.
|
||||
|
||||
(Also see https://www.openpgp.org/about/history/)
|
||||
(Also see [https://www.openpgp.org/about/history/](https://www.openpgp.org/about/history/))
|
||||
|
||||
### "Pretty Good Privacy (PGP)"
|
||||
|
||||
The earliest roots of OpenPGP trace back to *"Pretty Good Privacy (PGP)"*, a software program written by [Phil Zimmermann](https://en.wikipedia.org/wiki/Phil_Zimmermann) and first released in 1991.
|
||||
|
||||
The original PGP software has played a role in the political struggles sometimes referred to as the ["Crypto Wars"](https://en.wikipedia.org/wiki/Crypto_Wars) (also see https://en.wikipedia.org/wiki/Crypto_(book) for some of that history, including about the history of PGP).
|
||||
The original PGP software has played a role in the political struggles sometimes referred to as the ["Crypto Wars"](https://en.wikipedia.org/wiki/Crypto_Wars) (also see ["Crypto: How the Code Rebels Beat the Government Saving Privacy in the Digital" (2002)](https://en.wikipedia.org/wiki/Crypto_(book)) for some of that history, including part of the history of PGP).
|
||||
|
||||
The original "PGP" software was never under a Free Software license, even though its source code has at one point been widely published.
|
||||
|
||||
|
@ -32,7 +32,7 @@ The name "OpenPGP" can be used freely by implementations (unlike the name "PGP",
|
|||
|
||||
[First released 1997-12-20](https://gnupg.org/download/release_notes.html#sec-2-70), GnuPG (the "GNU Privacy Guard") is an implementation of the OpenPGP standard.
|
||||
|
||||
GnuPG has been a major early Free Software implementation of OpenPGP. It has played an important (and successful) role in the release of NSA documents by [Edward Snowden](https://theintercept.com/2014/10/28/smuggling-snowden-secrets/).
|
||||
GnuPG has been a major early Free Software implementation of OpenPGP. It has played an important (and successful) role in the [release of NSA documents](https://theintercept.com/2014/10/28/smuggling-snowden-secrets/) by [Edward Snowden](https://en.wikipedia.org/wiki/Edward_Snowden).
|
||||
|
||||
The GnuPG program binary is called `gpg`, thus the names "GnuPG" and "gpg" are often used interchangeably.
|
||||
|
||||
|
@ -64,11 +64,11 @@ This document describes OpenPGP version 6, while pointing out differences to pre
|
|||
|
||||
Significant work on support for OpenPGP version 6 has already been done for multiple implementations, including:
|
||||
|
||||
- GOpenPGP,
|
||||
- OpenPGP.js,
|
||||
- PGPainless,
|
||||
- PGPy,
|
||||
- Sequoia PGP.
|
||||
- [GOpenPGP](https://github.com/ProtonMail/gopenpgp/tree/v3),
|
||||
- [OpenPGP.js](https://github.com/openpgpjs/openpgpjs/tree/v6),
|
||||
- [PGPainless](https://github.com/pgpainless/pgpainless/milestone/6),
|
||||
- [PGPy](https://github.com/dkg/PGPy/tree/dkg/crypto-refresh),
|
||||
- [Sequoia-PGP](https://gitlab.com/sequoia-pgp/sequoia/-/tree/crypto-refresh).
|
||||
|
||||
## Concepts
|
||||
|
||||
|
@ -76,7 +76,7 @@ Significant work on support for OpenPGP version 6 has already been done for mult
|
|||
|
||||
Use of OpenPGP is centered around (asymmetric) cryptographic keys.
|
||||
|
||||
In OpenPGP, bare cryptographic keys are combined with additional metadata into "OpenPGP certificates", which are a relatively complex data structure (OpenPGP certificates are also often called "OpenPGP keys").
|
||||
In OpenPGP, bare cryptographic keys are combined with additional metadata into "OpenPGP certificates," which are a relatively complex data structure (OpenPGP certificates are also often called "OpenPGP keys").
|
||||
|
||||
An OpenPGP certificate can evolve over time, with components being added, expiring, or being marked as invalid.
|
||||
|
||||
|
@ -89,18 +89,12 @@ Other important topics around certificates are their management, authentication,
|
|||
With OpenPGP it's possible to:
|
||||
|
||||
- [Encrypt](encryption_chapter) and [Decrypt](decryption_chapter) Messages
|
||||
- Sign Data
|
||||
- Issue and examine Statements about Keys and Identities (to perform CA-like functionality)
|
||||
- [Sign](signing_data) and [Verify](verification_chapter) Data
|
||||
- [Issue and examine Statements](signatures_chapter) about Keys and Identities (to perform CA-like functionality)
|
||||
|
||||
### Building blocks
|
||||
|
||||
To perform these high-level operations, the following building blocks are used:
|
||||
|
||||
- Encryption
|
||||
- Signature Algorithms
|
||||
- OpenPGP Signatures (made from raw signatures; Certifications, Data Signatures)
|
||||
- Keys, Subkeys
|
||||
- User IDs
|
||||
To perform these high-level operations, a set of [established cryptographic mechanisms](cyrptography_chapter) are used as building blocks, and combined into OpenPGP's format, which additionally deals with identities and their verification.
|
||||
|
||||
## Zooming in: Internal structure of OpenPGP data
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue