pgpainless/docs/source/ecosystem.md

2.7 KiB

The PGPainless Ecosystem

PGPainless consists of an ecosystem of different libraries and projects.

The diagram below shows, how the different projects relate to one another.

Ecosystem

Libraries and Tools

  • {{ 'PGPainless'.format(repo_host) }}
    The main repository contains the following components:

    • pgpainless-core - core implementation - powerful, yet easy to use OpenPGP API
    • pgpainless-sop - super simple OpenPGP implementation. Drop-in for sop-java
    • pgpainless-cli - SOP CLI implementation using PGPainless
  • {{ 'SOP-Java'.format(repo_host) }}
    An API definition and CLI implementation of the Stateless OpenPGP Protocol (SOP). Consumers of the SOP API can simply depend on sop-java and then switch out the backend as they wish. Read more about the SOP protocol here.

    • sop-java - generic OpenPGP API definition
    • sop-java-picocli - CLI frontend for sop-java
  • {{ 'WKD-Java'.format(repo_host) }}
    Implementation of the Web Key Directory.

    • wkd-java - generic WKD discovery implementation
    • wkd-java-cli - CLI frontend for WKD discovery using PGPainless
    • wkd-test-suite - Generator for test vectors for testing WKD implementations
  • {{ 'VKS-Java'.format(repo_host) }}
    Client-side API for communicating with Verifying Key Servers, such as https://keys.openpgp.org/.

    • vks-java - VKS client implementation
    • vks-java-cli - CLI frontend for vks-java
  • {{ 'Cert-D-Java'.format(repo_host) }}
    Implementations of the Shared OpenPGP Certificate Directory specification.

    • pgp-certificate-store - abstract definitions of OpenPGP certificate stores
    • pgp-cert-d-java - implementation of pgp-certificate-store following the PGP-CERT-D spec
    • pgp-cert-d-java-jdbc-sqlite-lookup - subkey lookup using sqlite database
  • {{ 'Cert-D-PGPainless'.format(repo_host) }}
    Implementation of the Shared OpenPGP Certificate Directory specification using PGPainless.

    • pgpainless-cert-d - PGPainless-based implementation of pgp-cert-d-java
    • pgpainless-cert-d-cli - CLI frontend for pgpainless-cert-d
  • {{ 'PGPeasy'.format(repo_host) }}
    Prototypical, comprehensive OpenPGP CLI application

    • pgpeasy - CLI application