-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
High-Level OpenPGP API #1911
base: main
Are you sure you want to change the base?
High-Level OpenPGP API #1911
Conversation
99a1b3d
to
ea5cde9
Compare
c5856b5
to
b096e10
Compare
This PR is now based on #1926 |
This PR contains #1931 and may need to be rebased if the other patch is merged. |
c83aa87
to
bfec434
Compare
2c178a6
to
efed5a3
Compare
* Rename masterKey -> primaryKey * Add generics to list structures * sanitize primary and subkeys * properly instantiate signature generators by passing key version
This class contains methods for checking properties of public key algorithms
@dghgit I noticed, that in many places you replaced
with
I was under the impression that BC was now targeting Java 1.8 primarily, which already supports the former method of collection iteration. Edit: I see you recently made some changes for Java 4 and 5 compatibility. |
The PR is ready for review. Let me know if you like me to squash it for you :) |
As another cherry on top, I present to you bc-sop, which implements the stateless OpenPGP protocol as a native-image using Bouncy Castle :) |
fadfaec
to
3c6cf05
Compare
This PR contains a high-level API for OpenPGP, which simplifies the following tasks:
OpenPGPMessageGenerator
sets up anOpenPGPMessageOutputStream
based on user configurationOpenPGPMessageProcessor
processes encrypted / signed / compressed OpenPGP messages and emits the plaintext along with metadataOpenPGPCertificate
acts as high-level API pendant toPGPPublicKeyRing
, evaluating expiration / revocation / key signatures and allows the user to get verified information about the certOpenPGPKey
provides similar high-level API pendant toPGPSecretKeyRing
I decided to use a common
OpenPGP*
naming scheme for the new HighLevel API classes and also decided to make use of general terminology from the book "OpenPGP for application developers" (https://openpgp.dev).This PR is still pretty much very early work in progress (as is #1857, which will eventually integrate with this API), but I want you to be able to comment on it during the development phase already :)