1
0
Fork 0
mirror of https://github.com/pgpainless/pgpainless.git synced 2024-07-03 00:32:33 +02:00
Commit graph

926 commits

Author SHA1 Message Date
Paul Schaub 03cd9d0ecc Reinstate integrity-protection and fix tests
Integrity Protection is now checked when reading from the stream,
not only when closing.
2022-11-11 14:04:01 +01:00
Paul Schaub 2a624d30f9 Properly expose signatures 2022-11-11 14:04:01 +01:00
Paul Schaub b2cf606638 Cleaning up and collect signature verifications 2022-11-11 14:04:01 +01:00
Paul Schaub 07d9fb5bf9 It was the buffering. 2022-11-11 14:04:01 +01:00
Paul Schaub 2817d8c322 Create TeeBCPGInputStream to move teeing logic out of OpenPgpMessageInputStream 2022-11-11 14:04:01 +01:00
Paul Schaub a1feedcc84 2/3 the way to working sig verification 2022-11-11 14:04:01 +01:00
Paul Schaub 1448e7a29e WIP: So close to working notarizations 2022-11-11 14:03:59 +01:00
Paul Schaub 906813eb1d Reformat KeyRingReader 2022-11-11 14:03:24 +01:00
Paul Schaub 140168bbe8 Suppress DefaultCharset warning 2022-11-11 14:03:23 +01:00
Paul Schaub 8597286acc Convert links in javadoc to html 2022-11-11 14:03:23 +01:00
Paul Schaub e42e1dc776 DO NOT MERGE: Disable broken test 2022-11-11 14:03:23 +01:00
Paul Schaub c024f72d72 Remove unnecessary throws declarations 2022-11-11 14:03:23 +01:00
Paul Schaub 4d68c22977 Use BCs Arrays.constantTimeAreEqual(char[], char[]) 2022-11-11 14:03:23 +01:00
Paul Schaub 749ce4b400 Fix ModificationDetectionException by not calling PGPUtil.getDecoderStream() 2022-11-11 14:03:23 +01:00
Paul Schaub 2dbc998890 SIGNATURE VERIFICATION IN OPENPGP SUCKS BIG TIME 2022-11-11 14:03:23 +01:00
Paul Schaub e8b5787557 Wip 2022-11-11 14:03:23 +01:00
Paul Schaub 2285ba5ee9 Wip: Work on OPS verification 2022-11-11 14:03:23 +01:00
Paul Schaub e56233d09a Fix checkstyle issues 2022-11-11 14:03:23 +01:00
Paul Schaub 3255eef387 Wip: Introduce MessageMetadata class 2022-11-11 14:03:23 +01:00
Paul Schaub 371bebe8b9 WIP: Play around with TeeInputStreams 2022-11-11 14:03:23 +01:00
Paul Schaub 9b647742da WIP: Add LayerMetadata class 2022-11-11 14:03:23 +01:00
Paul Schaub bb31fea265 Implement experimental signature verification (correctness only) 2022-11-11 14:03:23 +01:00
Paul Schaub 0bf85c32c0 Add read(b,off,len) 2022-11-11 14:03:23 +01:00
Paul Schaub a921f0b85e Clean close() method 2022-11-11 14:03:23 +01:00
Paul Schaub 48e83420a3 Work on getting signature verification to function again 2022-11-11 14:03:23 +01:00
Paul Schaub 39fa8ad291 Fix tests 2022-11-11 14:03:23 +01:00
Paul Schaub 2f42dff7df WIP: Replace nesting with independent instancing 2022-11-11 14:03:23 +01:00
Paul Schaub ad8bf4fcac WIP: Implement custom PGPDecryptionStream 2022-11-11 14:03:23 +01:00
Paul Schaub 9fcb9782a3 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-11 14:03:23 +01:00
Paul Schaub ae88fdf4ab
Document ArmoredOutputStreamFactory.setVersionInfo(null) 2022-11-11 13:49:28 +01:00
Paul Schaub 86b06ee5e3 SOP: Hide armor version header by default 2022-11-11 13:46:43 +01:00
Paul Schaub c253732ad9 Do not reject bnacksig signatures when they predate subkey binding date
Fixes #334
2022-11-09 15:44:20 +01:00
Paul Schaub 50d18a4581 Fix NPE when validating signature made by key without keyflags on direct key sigature
(Presumably) fixes #332
2022-11-07 15:34:18 +01:00
Paul Schaub b02ae86ff6 Annotate SignatureSubpacketsUtil methods with @Nullable and @Nonnull 2022-11-07 15:34:18 +01:00
Paul Schaub f5e4c7571c
Bump BC to 1.72, BCPG to 1.72.1 2022-11-02 10:53:53 +01:00
Paul Schaub 754fcf72a1
Implement ProducerOptions.setHideArmorHeaders()
Fixes #328
2022-10-31 11:43:24 +01:00
Paul Schaub 8834d8ad10
Increase timeframe for some tests which check expiration dates 2022-10-18 15:13:49 +02:00
Paul Schaub f94917d01f
Fix checkstyle issue 2022-09-28 13:18:34 +02:00
Paul Schaub 6a2a604ba4
Update TODO for BC 173 2022-09-27 16:47:23 +02:00
Paul Schaub d74a8d0408
Add PGPainless.asciiArmor(PGPSignature) 2022-09-27 16:28:31 +02:00
Paul Schaub dac059c702
Add test for PGPainless.asciiArmor(key, stream) 2022-09-27 16:17:22 +02:00
Paul Schaub 5bccc1960e Add PGPainless.asciiArmor(key, outputStream) 2022-09-27 16:12:26 +02:00
Paul Schaub 639d2a19f8
Remove unused provideSessionKeyDataDecryptorFactory() methods 2022-09-13 20:27:16 +02:00
Paul Schaub 609bb4556a
Use ImplementationFactory.getSessionKeyDataDecryptorFactory() method 2022-09-13 20:26:13 +02:00
Paul Schaub 0e45de9b4a Formatting 2022-09-13 20:23:06 +02:00
Paul Schaub 9e403c1124 Add ImplementationFactory.getSessionKeyDataDecryptorFactory() and impls 2022-09-13 20:22:53 +02:00
Paul Schaub 8dfabf1842 Test decryption of messages using Session Key 2022-09-12 15:26:06 +02:00
Paul Schaub 7480c47fa7
Add behavior test to ensure that ArmoredInputStream cuts away any data outside of the armor 2022-09-08 18:15:52 +02:00
Paul Schaub 31c4570d10
Move finalization of signatures into own method 2022-09-07 13:48:59 +02:00
Paul Schaub 0dd54f27b7
Add test for processing message byte by byte 2022-09-05 15:43:32 +02:00