1
0
Fork 0
mirror of https://github.com/pgpainless/pgpainless.git synced 2024-11-15 17:02:06 +01:00
Commit graph

596 commits

Author SHA1 Message Date
7a194c517a
Remove KeyRingUtils.removeSecretKey() in favor of stripSecretKey() 2023-05-03 17:15:30 +02:00
953206b4ed
Make more of the API null-safe by using @Nonnull/@Nullable 2023-05-03 16:03:50 +02:00
1d26751b45
Remove unused KeyRingEditorTest 2023-05-03 15:59:21 +02:00
64c6d7a904
Annotate EncryptionOptions methods with @Nonnull 2023-05-03 14:38:52 +02:00
52fa7e4d46
OpenPgpMessageInputStream: Return -1 instead of throwing MalformedOpenPgpMessageException when calling read() on drained stream 2023-05-01 09:35:28 +02:00
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
44608744c2
Add missing license header 2023-04-14 16:17:58 +02:00
46f7cfdb1a
Introduce OpenPgpv6Fingerprint 2023-04-07 12:28:27 +02:00
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
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
00b593823a
Modify SED test to test successful decryption of SED packet 2023-01-02 13:18:18 +01:00
533b54a6b7
Add some more tests for valid email address formats 2022-12-22 15:01:10 +01:00
a376587680
Add tests for international user-ids 2022-12-22 14:43:09 +01:00
59217d2501 Implement UserId.parse(mailbox) 2022-12-20 17:20:32 +01:00
bfbaa30e4c Make KO-countermeasures configurable (off by default) 2022-12-15 18:05:46 +01:00
907d1c4d1c move V5OpenPgpKeyTest to org.pgpainless.key 2022-12-15 18:03:49 +01:00
bfcfaa04c4 Add UserId.compare(uid1, uid2, comparator) along with some default comparators 2022-12-15 18:03:37 +01:00
b07e0c2be5 Programmatically confirm that we do not yet support OpenPGP V5 keys :/ 2022-12-15 18:03:25 +01:00
e69c4a8cf7 More UserId tests 2022-12-15 18:03:15 +01:00
837fbd3635 Simplify UserIdTests 2022-12-15 18:03:04 +01:00
b0c283e143 Clean up UserId.toString() behavior 2022-12-15 18:02:44 +01:00
6913aa3d6d
Add more tests for RevocationState 2022-11-25 15:41:56 +01:00
ae6a427d90
Add test for UniversalSignatureBuilder 2022-11-25 15:34:54 +01:00
4426895814
Add tests for CollectionUtils 2022-11-25 14:55:46 +01:00
5bdd4f6ad0
Test rejection of messages with unacceptable skesk kek algorithm 2022-11-24 22:09:22 +01:00
c72b3a4b8e Improve CachingBcPublicKeyDataDecryptorFactoryTest 2022-11-23 20:42:54 +01:00
b36b5413e2 Fix isEncryptedFor() 2022-11-23 20:42:54 +01:00
27fd15a012 Update examples with new MessageMetadata class 2022-11-23 20:42:54 +01:00
c031ea9285 Remove empty newlines 2022-11-23 20:42:54 +01:00
8f6227c14b Rework some tests to use MessageMetadata 2022-11-23 20:42:54 +01:00
616e14d043 Enable tests for unsupported s2k identifiers 2022-11-23 20:42:54 +01:00
4e4c095d8d Rename tests to end in Test 2022-11-23 20:42:17 +01:00
b95568f30a Rename IgnoreMarkerPacketsTest 2022-11-23 20:42:17 +01:00
8faec25ecf Enable previously disabled test for marker+seipd packet processing 2022-11-23 20:42:17 +01:00
03d04fb324 Tests: Replace usages of default algorithm policies with specific policies 2022-11-23 20:42:17 +01:00
4594b494a9 Implement signature verification with certificate stores as cert source 2022-11-23 20:42:17 +01:00
22abb62443 Add test for encryption to cert from certificate store 2022-11-23 20:42:17 +01:00
963b678a9e Enable test for decryption of messages without ESKs 2022-11-23 20:42:17 +01:00
58195c19b1 Properly handle failed decryption caused by removed private keys 2022-11-23 20:40:40 +01:00
58aa9f5712 Move classes related to GNU dummy keys to gnupg package 2022-11-23 20:40:40 +01:00
df4fc94ce7 Add test for decryption with removed private key 2022-11-23 20:40:40 +01:00
3af6ab1b85 Rename GnuPGDummyExtension + GnuPGDummyKeyUtil 2022-11-23 20:40:40 +01:00
033beaa8f2 Use S2K usage SHA1 in GnuDummyKeyUtil 2022-11-23 20:40:40 +01:00
2487e3300a Add and test GnuDummyKeyUtil 2022-11-23 20:40:40 +01:00
7467170bcc Move CachingBcPublicKeyDataDecryptorFactoryTest to correct package 2022-11-23 20:40:40 +01:00
8c0d096fc6 Fix CachingBcPublicKeyDataDecryptorFactory 2022-11-23 20:40:40 +01:00
ec793c66ff More cleanup and better error reporting 2022-11-23 20:40:40 +01:00
8ca0cfd3ae Rename *Alphabet to *Symbol and add javadoc 2022-11-23 20:40:40 +01:00
7e8841abf3 Handle unknown packet versions gracefully 2022-11-23 20:40:40 +01:00
192aa98326 Add missing REUSE license headers 2022-11-23 20:40:40 +01:00
3f8653cf2e Fix CRCing test and fully depend on new stream for decryption 2022-11-23 20:40:40 +01:00
54cb9dad71 Further increase coverage of PDA class 2022-11-23 20:40:40 +01:00
3977d1f407 Add more direct PDA tests 2022-11-23 20:40:40 +01:00
977f8c4101 Rename automaton package to syntax_check 2022-11-23 20:40:40 +01:00
b7acb2a59c Enable logging in tests 2022-11-23 20:40:40 +01:00
a39c6bc881 Identify custom decryptor factories by subkey id 2022-11-23 20:40:40 +01:00
228918f96b Change HardwareSecurity DecryptionCallback to emit key-id 2022-11-23 20:40:40 +01:00
529c64cf43 Implement exploratory support for custom decryption factories
This may enable decryption of messages with hardware-backed keys
2022-11-23 20:40:40 +01:00
d39d062a0d WIP: Explore Hardware Decryption 2022-11-23 20:40:40 +01:00
dfbb01d61c Enfore max recursion depth and fix CRC test 2022-11-23 20:40:40 +01:00
6fd705b1dc Fix checkstyle issues 2022-11-23 20:40:40 +01:00
fbcde13df3 Reinstate integrity-protection and fix tests
Integrity Protection is now checked when reading from the stream,
not only when closing.
2022-11-23 20:40:40 +01:00
654493dfcc Properly expose signatures 2022-11-23 20:40:40 +01:00
a9f77ea100 Cleaning up and collect signature verifications 2022-11-23 20:40:40 +01:00
43c369f1f9 It was the buffering. 2022-11-23 20:40:40 +01:00
bdc968dd43 Create TeeBCPGInputStream to move teeing logic out of OpenPgpMessageInputStream 2022-11-23 20:40:40 +01:00
e420678076 2/3 the way to working sig verification 2022-11-23 20:40:40 +01:00
5e37d8038a WIP: So close to working notarizations 2022-11-23 20:40:39 +01:00
2ce4486e89 Convert links in javadoc to html 2022-11-23 20:40:03 +01:00
babd1542e3 DO NOT MERGE: Disable broken test 2022-11-23 20:40:03 +01:00
09f94944b3 Remove unnecessary throws declarations 2022-11-23 20:40:03 +01:00
81bb8cba54 Use BCs Arrays.constantTimeAreEqual(char[], char[]) 2022-11-23 20:40:03 +01:00
ec28ba2924 SIGNATURE VERIFICATION IN OPENPGP SUCKS BIG TIME 2022-11-23 20:40:03 +01:00
e25f6e1712 Fix checkstyle issues 2022-11-23 20:40:03 +01:00
5c93eb3705 Wip: Introduce MessageMetadata class 2022-11-23 20:40:03 +01:00
efdf2bca0d WIP: Play around with TeeInputStreams 2022-11-23 20:40:03 +01:00
54d7d0c7ae Implement experimental signature verification (correctness only) 2022-11-23 20:40:03 +01:00
d81c0d4400 Fix tests 2022-11-23 20:40:02 +01:00
e86062c427 WIP: Replace nesting with independent instancing 2022-11-23 20:40:02 +01:00
bf8949d7f4 WIP: Implement custom PGPDecryptionStream 2022-11-23 20:40:02 +01:00
bc73d26118 Add Pushdown Automaton for checking OpenPGP message syntax
The automaton implements what is described in
https://github.com/pgpainless/pgpainless/blob/main/misc/OpenPGPMessageFormat.md

However, some differences exist to adopt it to BouncyCastle

Part of #237
2022-11-23 20:40:02 +01:00
754fcf72a1
Implement ProducerOptions.setHideArmorHeaders()
Fixes #328
2022-10-31 11:43:24 +01:00
8834d8ad10
Increase timeframe for some tests which check expiration dates 2022-10-18 15:13:49 +02:00
6a2a604ba4
Update TODO for BC 173 2022-09-27 16:47:23 +02:00
d74a8d0408
Add PGPainless.asciiArmor(PGPSignature) 2022-09-27 16:28:31 +02:00
dac059c702
Add test for PGPainless.asciiArmor(key, stream) 2022-09-27 16:17:22 +02:00
8dfabf1842 Test decryption of messages using Session Key 2022-09-12 15:26:06 +02:00
7480c47fa7
Add behavior test to ensure that ArmoredInputStream cuts away any data outside of the armor 2022-09-08 18:15:52 +02:00
0dd54f27b7
Add test for processing message byte by byte 2022-09-05 15:43:32 +02:00
9106d98449
Add tests for Certificate merging 2022-09-05 15:25:29 +02:00
5be42b22bd
Add test for KeyRingUtils.keysPlusPublicKey 2022-09-05 14:45:22 +02:00
4ec38bb63b
Add tests for ArmoredInputStreamFactory 2022-09-05 14:37:23 +02:00
3a33bb126a
Add RNGPerformanceTest to help diagnose performance bottlenecks
Related to https://github.com/pgpainless/pgpainless/issues/309
2022-09-03 14:24:37 +02:00
c3dc3c9d87 Allow modification of keys with custom reference date
Also, bind subkeys using SubkeyBindingSignatureBuilder
2022-09-03 13:42:58 +02:00
15046cdc32
Switch default S2K for secret key protection over to use SHA256 and add documentation 2022-08-31 21:37:31 +02:00
c6676d3c91
Add support for generating keys without user-ids
Fixes #296
2022-08-29 14:12:02 +02:00
1b04d67e1a
Remove unused SignatureSubpacketGeneratorUtil class and tests 2022-08-29 11:30:26 +02:00
0cc884523c
Integrate RevocationState into KeyRingInfo class 2022-08-29 11:30:10 +02:00
c73905d179
Import RevocationStateTest from wot branch 2022-08-29 11:12:42 +02:00