1
0
Fork 0
mirror of https://github.com/pgpainless/pgpainless.git synced 2024-07-02 08:16:43 +02:00
Commit graph

1172 commits

Author SHA1 Message Date
Paul Schaub f37aa1097c
Prevent IAE when encountering non-UTF8 User-ID on a public key
Fixes #392
2023-07-07 10:42:18 +02:00
Paul Schaub 4be2956469
Remove unused methods from ImplementationFactory 2023-06-27 23:22:23 +02:00
Paul Schaub 0505b943de
Fix javadoc 2023-06-27 14:56:29 +02:00
Paul Schaub f7576abd35
Minimal revocation certificate test: Test merging 2023-06-20 17:37:18 +02:00
Paul Schaub 53d6260210
Implement method to create minimal revocation certificate.
Fixes #386
2023-06-20 17:30:19 +02:00
Paul Schaub 2a7c6af022
Rename SecretKeyRingEditor.createRevocationCertificate() to createRevocation() 2023-06-20 16:41:46 +02:00
Paul Schaub beccd6c5c7
Postpone removal of OpenPgpMetadata to 1.6.X 2023-06-19 12:36:59 +02:00
Paul Schaub c962b7920b
Update workaround description in KeyInfo 2023-06-19 12:36:59 +02:00
Paul Schaub 90626a8a76
Add SignatureSubpacketsUtil.getRegularExpressions() 2023-06-19 11:27:49 +02:00
Paul Schaub 82cea93e7b
Replace JcaPGPObjectFactory with custom PGPObjectFactory.
Workaround for https://github.com/bcgit/bc-java/issues/1428
2023-06-15 15:20:08 +02:00
Paul Schaub 2b119e8214
Basic V6 parsing test (only check non-crashing) 2023-06-15 14:41:41 +02:00
Paul Schaub 6b145475a8
Add test for anonymous recipients 2023-06-15 14:28:56 +02:00
Paul Schaub e9cd6c55cf
Bump Bouncycastle 2023-06-15 14:28:45 +02:00
Paul Schaub 558e6693e6 Add javadoc 2023-06-15 14:10:52 +02:00
Paul Schaub 344f1fc67c Allow hidden recipients using wildcard keyIDs 2023-06-15 14:10:52 +02:00
Paul Schaub 383c9799c3
Add test for minimal revocation certificate 2023-06-13 19:46:56 +02:00
Paul Schaub 8369333355
Clean unused methods from SignatureUtils 2023-06-12 15:04:57 +02:00
Paul Schaub 814421fe79
Test constructor of RevocationState.softRevoked() requires non-null date 2023-06-12 15:04:57 +02:00
Paul Schaub b9c2e8dfe9
Add test for weak public key behavior 2023-06-12 14:27:07 +02:00
Paul Schaub 1fca51d771
SigningOptions: Add methods to sign with a single, chosen signing subkey 2023-06-08 14:04:06 +02:00
Paul Schaub 5aabd1ced4
Fix faulty bit-strength policy check for signing subkeys 2023-06-08 13:54:20 +02:00
Paul Schaub 25cde8225d
Remove outdated javadoc @throws annotations 2023-06-08 03:18:24 +02:00
Paul Schaub 7769ff8173
Direct-Key signatures are calculated over the signee only, not the signer plus signee 2023-06-06 11:00:44 +02:00
Paul Schaub d3ef513960
Fix checkstyle issues 2023-06-05 21:12:16 +02:00
Paul Schaub 41e663e25b
Allow setting custom version header when encrypting/signing message 2023-06-05 20:18:06 +02:00
Paul Schaub add1b89019
Add test for MultiMap.putAll() 2023-06-05 19:44:58 +02:00
Paul Schaub 324302c536
Add MultiMap.flatten() 2023-06-05 19:44:47 +02:00
Paul Schaub 41d734f2db
ProviderFactory: Provide default implementation of _getProviderName() 2023-06-05 19:30:14 +02:00
Paul Schaub 96da3db2b8
Set AES-128 as default symmetric algorithm.
The crypto-refresh marks AES-128 as MUST implement.
2023-06-02 14:28:19 +02:00
Paul Schaub e1038a8bb3
Replace more occurrences of new Date().getTime() with System.currentTimeMillis() 2023-06-02 00:03:55 +02:00
Paul Schaub d25e7419c9
Replace new Date().getTime() with System.getCurrentTimeMillis() 2023-06-02 00:01:34 +02:00
Paul Schaub 528591f906
Key generation: Set default expiration periof of 5 years
Can be changed by calling 'keyRingBuilder.setExpirationDate(null);'
2023-06-01 23:43:41 +02:00
Paul Schaub be5562d273
Fix typo in feature name 2023-05-30 14:51:32 +02:00
Paul Schaub 55058d6070
Rename GNUPG features 2023-05-22 14:37:02 +02:00
Paul Schaub 5c11b8af08
Mark ArmoredInputStreamFactory methods as @Nonnull 2023-05-16 16:44:26 +02:00
Paul Schaub 772c0407b3
Mark ArmoredOutputStreamFactory methods as @Nullable 2023-05-16 16:43:53 +02:00
Paul Schaub 8b4dd0fc25
Annotate CollectionUtils methods with @Nullable, @Nonnull 2023-05-16 16:39:58 +02:00
Paul Schaub 126571a6cd
Document ProviderFactory 2023-05-16 16:34:57 +02:00
Paul Schaub d3ae02f137
Mark KeyRingReader.read*KeyRing() as @Nullable/@Nonnull 2023-05-16 16:26:52 +02:00
Paul Schaub 1bf9abbdaf
Add link to EdDSA spec 2023-05-16 16:19:20 +02:00
Paul Schaub 0805076392
Deprecate ElGamal key type 2023-05-16 16:16:42 +02:00
Paul Schaub 92a5e559f8
Earlier catching of NPEs in tests 2023-05-03 17:26:21 +02:00
Paul Schaub e08505e07d
CertificateValidator: Skip revocation signatures not made by primary key 2023-05-03 17:25:59 +02:00
Paul Schaub 495ff6aa5d
Fix javadoc reference 2023-05-03 17:25:19 +02:00
Paul Schaub 88de47490b
SignatureValidator: Prevent NPE when no EmbeddedSignature subpacket is found 2023-05-03 17:24:16 +02:00
Paul Schaub 005b9d477a
KeyRingReader: Remove unused @throws IOException 2023-05-03 17:23:13 +02:00
Paul Schaub fb581f11c7
UserId.parse(): Prevent self-referencing javadoc 2023-05-03 17:20:02 +02:00
Paul Schaub 3cea985365
TeeBCPGInputStream: Annotate byte[] arg as @Nonnull 2023-05-03 17:19:18 +02:00
Paul Schaub 78cb2ec3d0
Do not catch and immediatelly rethrow exception 2023-05-03 17:16:56 +02:00
Paul Schaub 5c76f9046f
Turn empty catch block into test failure 2023-05-03 17:16:10 +02:00
Paul Schaub 7a194c517a
Remove KeyRingUtils.removeSecretKey() in favor of stripSecretKey() 2023-05-03 17:15:30 +02:00
Paul Schaub 09bacd40d1
SecretKeyRingEditor: referenceTime cannot be null anymore 2023-05-03 17:14:18 +02:00
Paul Schaub 21ae48d8c1
Use assert statements to flag impossible NPEs 2023-05-03 17:13:29 +02:00
Paul Schaub d05ffd0451
Make DateUtil null-safe 2023-05-03 16:11:06 +02:00
Paul Schaub 953206b4ed
Make more of the API null-safe by using @Nonnull/@Nullable 2023-05-03 16:03:50 +02:00
Paul Schaub 3b8a1b47d7
Add javadoc p-tags 2023-05-03 16:03:12 +02:00
Paul Schaub 1d26751b45
Remove unused KeyRingEditorTest 2023-05-03 15:59:21 +02:00
Paul Schaub 64c6d7a904
Annotate EncryptionOptions methods with @Nonnull 2023-05-03 14:38:52 +02:00
Paul Schaub 304350fe5c
Add p-tags to EncryptionOptions javadoc 2023-05-03 14:38:38 +02:00
Paul Schaub 15f6cc70b1
Add MessageMetadata.getRecipientKeyIds()
Fixes #376
2023-05-03 14:30:08 +02:00
Paul Schaub 8869d9bd78
Simplify key template methods by replacing String and UserID args with CharSequence 2023-05-03 13:51:59 +02:00
Paul Schaub 9c81137f48
Add template methods to generate RSA keys with primary and subkeys 2023-05-03 13:51:34 +02:00
Paul Schaub 52fa7e4d46
OpenPgpMessageInputStream: Return -1 instead of throwing MalformedOpenPgpMessageException when calling read() on drained stream 2023-05-01 09:35:28 +02:00
Paul Schaub 0cb0885251
Relax constraints on decryption keys to improve interop with faulty, broken legacy clients that have been very naughty and need punishment 2023-04-25 13:28:07 +02:00
Paul Schaub 44608744c2
Add missing license header 2023-04-14 16:17:58 +02:00
Paul Schaub 2587f19df3
BC173: Fix CRC error detection by improving error check 2023-04-09 18:49:20 +02:00
Paul Schaub 46f7cfdb1a
Introduce OpenPgpv6Fingerprint 2023-04-07 12:28:27 +02:00
Paul Schaub e744668f5a
Deprecate OpenPgpFingerprint.parse() methods 2023-04-07 11:47:40 +02:00
Paul Schaub acb5d3fd9e
getEncryptionSubkeys(): Compare expirations against reference date 2023-04-07 11:26:38 +02:00
Paul Schaub ed2c53f5d6
Make getLastModified() @Nonnull 2023-02-25 11:26:58 +01:00
Paul Schaub d03f84f415
Add reuse header to VerifyVersion3SignaturePacketTest 2023-02-08 14:49:10 +01:00
Bastien JANSEN 30771f470a Support version 3 signature packets 2023-02-08 14:42:22 +01:00
Paul Schaub 695e03f8b6
Add EncryptionOptions.hasEncryptionMethod() 2023-01-31 18:19:08 +01:00
DenBond7 9f98e4ce37 Fixed redundant dot an exception message. 2023-01-23 10:47:37 +01:00
Paul Schaub a50c2d9714
More missing javadoc 2023-01-16 20:15:57 +01:00
Paul Schaub 8cb773841b
Revert certificate-store integration
Integration of certificate-store and pgpainless-cert-d makes packaging
complicated. Alternatively, users can simply integrate the certificate-store
with PGPainless themselves.
2023-01-13 19:18:02 +01:00
Paul Schaub 7a2c9d864c Add javadoc to DecryptionBuilder 2023-01-13 17:53:06 +01:00
Paul Schaub 980daeca31
Add missing javadoc to CustomPublicKeyDataDecryptorFactory 2023-01-04 18:55:57 +01:00
Paul Schaub 41cc71c274
Add missing javadoc to ConsumerOptions 2023-01-04 18:50:10 +01:00
Paul Schaub abf723cc6c
Add note about UserId.parse().toString() not guaranteing identity 2023-01-04 18:27:14 +01:00
Paul Schaub 00b593823a
Modify SED test to test successful decryption of SED packet 2023-01-02 13:18:18 +01:00
Paul Schaub 94d9efa1e7
OpenPgpMessageInputStream: Ignore non-integrity-protected data if configured 2023-01-02 13:12:14 +01:00
Paul Schaub 35c62663e9
Fix javadoc 2022-12-22 15:30:11 +01:00
Paul Schaub 44738766e5
Add comments to regexes 2022-12-22 15:19:42 +01:00
Paul Schaub 533b54a6b7
Add some more tests for valid email address formats 2022-12-22 15:01:10 +01:00
Paul Schaub a376587680
Add tests for international user-ids 2022-12-22 14:43:09 +01:00
Paul Schaub 75f69c0473
Fix Android compatibility by using Matcher.group(int) instead of Matcher.group(String) 2022-12-20 17:27:32 +01:00
Paul Schaub 94851ccb8f Add javadoc for UserId.parse() 2022-12-20 17:20:44 +01:00
Paul Schaub 59217d2501 Implement UserId.parse(mailbox) 2022-12-20 17:20:32 +01:00
Paul Schaub 6a5c6c5509 Improve ElGamal validation by refraining from biginteger for loop variable 2022-12-15 18:05:55 +01:00
Paul Schaub bfbaa30e4c Make KO-countermeasures configurable (off by default) 2022-12-15 18:05:46 +01:00
Paul Schaub 2d46fb18f7 SOP: Allow generation of keys without user-ids 2022-12-15 18:04:59 +01:00
Paul Schaub 4f435a0fa0 Fix parameter check for DSA keys
Fixes #345
2022-12-15 18:04:34 +01:00
Paul Schaub f5414bcc19 Use proper method to unlock private key when detached-signing 2022-12-15 18:04:19 +01:00
Paul Schaub 907d1c4d1c move V5OpenPgpKeyTest to org.pgpainless.key 2022-12-15 18:03:49 +01:00
Paul Schaub bfcfaa04c4 Add UserId.compare(uid1, uid2, comparator) along with some default comparators 2022-12-15 18:03:37 +01:00
Paul Schaub b07e0c2be5 Programmatically confirm that we do not yet support OpenPGP V5 keys :/ 2022-12-15 18:03:25 +01:00
Paul Schaub e69c4a8cf7 More UserId tests 2022-12-15 18:03:15 +01:00
Paul Schaub 837fbd3635 Simplify UserIdTests 2022-12-15 18:03:04 +01:00
Paul Schaub 4c1d359971 Deprecate UserId.asString() 2022-12-15 18:02:53 +01:00