1
0
Fork 0
mirror of https://github.com/pgpainless/pgpainless.git synced 2024-06-25 21:14:49 +02:00
Commit graph

1055 commits

Author SHA1 Message Date
Paul Schaub f005885318 Add MessageMetadata.isVerifiedSigned() and .getVerifiedSignatures() 2022-11-23 20:42:54 +01:00
Paul Schaub c031ea9285 Remove empty newlines 2022-11-23 20:42:54 +01:00
Paul Schaub 6926cedf61 Fix compilation errors and simplify LayerIterator by introducing Packet interface 2022-11-23 20:42:54 +01:00
Paul Schaub 8f6227c14b Rework some tests to use MessageMetadata 2022-11-23 20:42:54 +01:00
Paul Schaub 39f8f89fe0 Add convenience methods to MessageMetadata 2022-11-23 20:42:54 +01:00
Paul Schaub 616e14d043 Enable tests for unsupported s2k identifiers 2022-11-23 20:42:54 +01:00
Paul Schaub e4560ac5b5 Cleartext Signaure Framework: Support for multiple Hash: headers 2022-11-23 20:42:17 +01:00
Paul Schaub 6ba7e91f2a Add documentation and removal-TODO to old OpenPgpMetadata class 2022-11-23 20:42:17 +01:00
Paul Schaub 4e4c095d8d Rename tests to end in Test 2022-11-23 20:42:17 +01:00
Paul Schaub b95568f30a Rename IgnoreMarkerPacketsTest 2022-11-23 20:42:17 +01:00
Paul Schaub 8faec25ecf Enable previously disabled test for marker+seipd packet processing 2022-11-23 20:42:17 +01:00
Paul Schaub fd2f6523ec More specific exception message for when nesting depth is exceeded 2022-11-23 20:42:17 +01:00
Paul Schaub 1437604836 Add documentation to DecryptionStream 2022-11-23 20:42:17 +01:00
Paul Schaub 70cca563d7 Add javadoc to getMetadata() and getResult() 2022-11-23 20:42:17 +01:00
Paul Schaub 33d9a784bb Add javadoc to MEssageMetadata class 2022-11-23 20:42:17 +01:00
Paul Schaub 3023d532e3 Make DecryptionStream.getMetadata() first-class, deprecate getResult() 2022-11-23 20:42:17 +01:00
Paul Schaub e976cc6dd2 Move getResult() method around 2022-11-23 20:42:17 +01:00
Paul Schaub 03d04fb324 Tests: Replace usages of default algorithm policies with specific policies 2022-11-23 20:42:17 +01:00
Paul Schaub d7e4fcaec6 OpenPgpMessageInputStream: Source verification certs from ConsumerOptions.getCertificateSource() 2022-11-23 20:42:17 +01:00
Paul Schaub a792952845 Remove code to manually throw NSEE for missing certs
This is now done further down in the store itself
2022-11-23 20:42:17 +01:00
Paul Schaub c19b8297a3 Add TODO for when bumping cert-d-java 2022-11-23 20:42:17 +01:00
Paul Schaub 4594b494a9 Implement signature verification with certificate stores as cert source 2022-11-23 20:42:17 +01:00
Paul Schaub 22abb62443 Add test for encryption to cert from certificate store 2022-11-23 20:42:17 +01:00
Paul Schaub d0277fbbec Bump cert-d-java to 0.2.0 2022-11-23 20:42:17 +01:00
Paul Schaub 6dc5b84d66 Depend on pgp-certificate-store again 2022-11-23 20:42:17 +01:00
Paul Schaub d486a17cf1 Implement EncryptionOptions.addRecipient(store, fingerprint) 2022-11-23 20:42:17 +01:00
Paul Schaub b287d28a28 Depend on pgp-certificate-store 2022-11-23 20:42:17 +01:00
Paul Schaub 963b678a9e Enable test for decryption of messages without ESKs 2022-11-23 20:42:17 +01:00
Paul Schaub 59e81dc514 Use BCs PGPEncryptedDataList.extractSessionKeyEncryptedData() for decryption with session key 2022-11-23 20:42:17 +01:00
Paul Schaub f80b3e0cdb Use BCs PGPEncryptedDataList.isIntegrityProtected() 2022-11-23 20:42:17 +01:00
Paul Schaub b1f9a1398a Add comment for ArmorUtils method 2022-11-23 20:40:40 +01:00
Paul Schaub f86aae4997 Implement efficient read(buf,off,len) for DelayedInputStream 2022-11-23 20:40:40 +01:00
Paul Schaub ca49ed087b Small clean-ups in OpenPgpMessageInputStream 2022-11-23 20:40:40 +01:00
Paul Schaub 58195c19b1 Properly handle failed decryption caused by removed private keys 2022-11-23 20:40:40 +01:00
Paul Schaub 58aa9f5712 Move classes related to GNU dummy keys to gnupg package 2022-11-23 20:40:40 +01:00
Paul Schaub df4fc94ce7 Add test for decryption with removed private key 2022-11-23 20:40:40 +01:00
Paul Schaub 3af6ab1b85 Rename GnuPGDummyExtension + GnuPGDummyKeyUtil 2022-11-23 20:40:40 +01:00
Paul Schaub 033beaa8f2 Use S2K usage SHA1 in GnuDummyKeyUtil 2022-11-23 20:40:40 +01:00
Paul Schaub a8d2319d63 Add documentation to GnuDummyKeyUtil 2022-11-23 20:40:40 +01:00
Paul Schaub 2487e3300a Add and test GnuDummyKeyUtil 2022-11-23 20:40:40 +01:00
Paul Schaub 7467170bcc Move CachingBcPublicKeyDataDecryptorFactoryTest to correct package 2022-11-23 20:40:40 +01:00
Paul Schaub 07320ed3cf Fix HardwareSecurity.getIdsOfHardwareBackedKeys() 2022-11-23 20:40:40 +01:00
Paul Schaub 8c0d096fc6 Fix CachingBcPublicKeyDataDecryptorFactory 2022-11-23 20:40:40 +01:00
Paul Schaub 705e36080c Implement caching PublicKeyDataDecryptorFactory 2022-11-23 20:40:40 +01:00
Paul Schaub 8fafb6aa56 Add comments 2022-11-23 20:40:40 +01:00
Paul Schaub 208612ab56 Add (commented-out) read(buf, off, len) implementation for DelayedTeeInputStream 2022-11-23 20:40:40 +01:00
Paul Schaub 8cb7d19487 Allow injection of different syntax into PDA 2022-11-23 20:40:40 +01:00
Paul Schaub 161ce57711 Clean up old unused code 2022-11-23 20:40:40 +01:00
Paul Schaub ec793c66ff More cleanup and better error reporting 2022-11-23 20:40:40 +01:00
Paul Schaub 8ca0cfd3ae Rename *Alphabet to *Symbol and add javadoc 2022-11-23 20:40:40 +01:00
Paul Schaub b3d61b0494 Separate out syntax logic 2022-11-23 20:40:40 +01:00
Paul Schaub 798e68e87f Improve syntax error reporting 2022-11-23 20:40:40 +01:00
Paul Schaub a2a5c9223e Remove debugging fields 2022-11-23 20:40:40 +01:00
Paul Schaub a0ba6828c9 Remove superfluous states 2022-11-23 20:40:40 +01:00
Paul Schaub 7e8841abf3 Handle unknown packet versions gracefully 2022-11-23 20:40:40 +01:00
Paul Schaub 192aa98326 Add missing REUSE license headers 2022-11-23 20:40:40 +01:00
Paul Schaub a013ab4ebb Wrap MalformedOpenPgpMessageException in BadData 2022-11-23 20:40:40 +01:00
Paul Schaub 8097c87b7f Fix last two broken tests 2022-11-23 20:40:40 +01:00
Paul Schaub e0b2145793 Fix more tests 2022-11-23 20:40:40 +01:00
Paul Schaub aa398f9963 Only check message integrity once 2022-11-23 20:40:40 +01:00
Paul Schaub e281143d48 Delete old DecryptionStreamFactory 2022-11-23 20:40:40 +01:00
Paul Schaub 3f8653cf2e Fix CRCing test and fully depend on new stream for decryption 2022-11-23 20:40:40 +01:00
Paul Schaub 54cb9dad71 Further increase coverage of PDA class 2022-11-23 20:40:40 +01:00
Paul Schaub 3977d1f407 Add more direct PDA tests 2022-11-23 20:40:40 +01:00
Paul Schaub 977f8c4101 Rename automaton package to syntax_check 2022-11-23 20:40:40 +01:00
Paul Schaub a27c0ff36e Add detailled logging to OpenPgpMessageInputStream 2022-11-23 20:40:40 +01:00
Paul Schaub b7acb2a59c Enable logging in tests 2022-11-23 20:40:40 +01:00
Paul Schaub a9993fd866 Throw UnacceptableAlgEx for unencrypted encData 2022-11-23 20:40:40 +01:00
Paul Schaub 3d5916c545 Implement custom decryptor factories in pda 2022-11-23 20:40:40 +01:00
Paul Schaub a39c6bc881 Identify custom decryptor factories by subkey id 2022-11-23 20:40:40 +01:00
Paul Schaub cfd3f77491 Make map final 2022-11-23 20:40:40 +01:00
Paul Schaub 228918f96b Change HardwareSecurity DecryptionCallback to emit key-id 2022-11-23 20:40:40 +01:00
Paul Schaub 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
Paul Schaub d39d062a0d WIP: Explore Hardware Decryption 2022-11-23 20:40:40 +01:00
Paul Schaub 7da34c8329 Work on postponed keys 2022-11-23 20:40:40 +01:00
Paul Schaub d3f07a2250 Reuse *SignatureCheck class 2022-11-23 20:40:40 +01:00
Paul Schaub dfbb01d61c Enfore max recursion depth and fix CRC test 2022-11-23 20:40:40 +01:00
Paul Schaub 7097d44916 Fix NPEs and expose decryption keys 2022-11-23 20:40:40 +01:00
Paul Schaub 6fd705b1dc Fix checkstyle issues 2022-11-23 20:40:40 +01:00
Paul Schaub 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
Paul Schaub 654493dfcc Properly expose signatures 2022-11-23 20:40:40 +01:00
Paul Schaub a9f77ea100 Cleaning up and collect signature verifications 2022-11-23 20:40:40 +01:00
Paul Schaub 43c369f1f9 It was the buffering. 2022-11-23 20:40:40 +01:00
Paul Schaub bdc968dd43 Create TeeBCPGInputStream to move teeing logic out of OpenPgpMessageInputStream 2022-11-23 20:40:40 +01:00
Paul Schaub e420678076 2/3 the way to working sig verification 2022-11-23 20:40:40 +01:00
Paul Schaub 5e37d8038a WIP: So close to working notarizations 2022-11-23 20:40:39 +01:00
Paul Schaub 5288fb81c3 Reformat KeyRingReader 2022-11-23 20:40:03 +01:00
Paul Schaub 18b1fadeb6 Suppress DefaultCharset warning 2022-11-23 20:40:03 +01:00
Paul Schaub 2ce4486e89 Convert links in javadoc to html 2022-11-23 20:40:03 +01:00
Paul Schaub babd1542e3 DO NOT MERGE: Disable broken test 2022-11-23 20:40:03 +01:00
Paul Schaub 09f94944b3 Remove unnecessary throws declarations 2022-11-23 20:40:03 +01:00
Paul Schaub 81bb8cba54 Use BCs Arrays.constantTimeAreEqual(char[], char[]) 2022-11-23 20:40:03 +01:00
Paul Schaub 527aab922e Fix ModificationDetectionException by not calling PGPUtil.getDecoderStream() 2022-11-23 20:40:03 +01:00
Paul Schaub ec28ba2924 SIGNATURE VERIFICATION IN OPENPGP SUCKS BIG TIME 2022-11-23 20:40:03 +01:00
Paul Schaub 4e44691ef6 Wip 2022-11-23 20:40:03 +01:00
Paul Schaub 45555bf82d Wip: Work on OPS verification 2022-11-23 20:40:03 +01:00
Paul Schaub e25f6e1712 Fix checkstyle issues 2022-11-23 20:40:03 +01:00
Paul Schaub 5c93eb3705 Wip: Introduce MessageMetadata class 2022-11-23 20:40:03 +01:00
Paul Schaub efdf2bca0d WIP: Play around with TeeInputStreams 2022-11-23 20:40:03 +01:00
Paul Schaub 7537c9520c WIP: Add LayerMetadata class 2022-11-23 20:40:03 +01:00