Commit Graph

545 Commits

Author SHA1 Message Date
Paul Schaub a9a61bc799
Improve library usage of slf4j and logback.
Logback-classic is now a test dependency and is additionally declared as OPTIONAL runtime dependency.
Applications that don't want to use logback can now easily disable it by not explicitly depending on it.
2021-10-29 20:28:14 +02:00
Paul Schaub 2d364d0939
Replace OpenPgpV4Fingerprint with OpenPgpFingerprint in examples 2021-10-29 20:08:11 +02:00
Paul Schaub 3a9473ad6c
V5 Key-readyness: Replace usages of OpenPgpV4Fingerprint with abstract super class 2021-10-27 17:38:25 +02:00
Paul Schaub 383f51277e
Prepare for V5 keys: Extract abstract super class OpenPgpFingerprint from OpenPgpV4Fingerprint 2021-10-27 17:12:06 +02:00
Paul Schaub bc2afea7ed
Add toString() methods for SignatureVerification & failure 2021-10-27 17:11:40 +02:00
Paul Schaub e8bf2ea9e7
Add tests for message inspection 2021-10-27 15:54:50 +02:00
Paul Schaub aed06fc832
Add MessageInspector.determineEncryptionInfo(String) 2021-10-27 15:54:34 +02:00
Paul Schaub abdc5c8fdd
Fix license of KleopatraCompatibilityTest 2021-10-27 14:29:05 +02:00
Paul Schaub 5c3fa28946 Fix Kleopatra Interoperability
The cause of this issue was that we skipped the first (proper) PKESK and instead tried to decrypt
the wildcard PKESKs.

Furthermore, we had an issue in MessageInspector which read past the PKESK packets
2021-10-27 13:26:49 +02:00
Paul Schaub 4857056986 Add failing Kleopatra interoperability test 2021-10-27 13:26:49 +02:00
Paul Schaub 3fd929916d
EncryptionOptions: Change return val of overrideEncryptionAlgorithm to EncryptionOptions 2021-10-26 23:06:41 +02:00
Paul Schaub 963a8170da
Fix decryption of signed messages created with PGPainless < 0.2.10 2021-10-23 16:44:40 +02:00
Paul Schaub 2b2639bde7
Fix checkstyle issues 2021-10-20 21:37:48 +02:00
Paul Schaub a8998f27ad
Introduce HashAlgorithmNegotiator 2021-10-20 21:26:47 +02:00
Paul Schaub f05be3dc30
Fix prematurely throwing of MissingPassphraseException 2021-10-19 18:13:23 +02:00
Paul Schaub dc0b96278e
Add javadoc 2021-10-18 16:19:12 +02:00
Paul Schaub 2ad917d27c
Add ConsumerOptions.setMissingKeyPassphraseStrategy()
This allows switching missing passphrase handling from interactive mode
(fire callbacks to prompt user for missing key passphrases) to non-interactive mode
(throw MissingPassphraseException with all keys with missing passphrase in it).

Fixes #193
2021-10-18 16:01:19 +02:00
Paul Schaub bebb9709ac
Add tests for how unbound subkeys are handled in KeyRingInfo 2021-10-14 16:16:06 +02:00
Paul Schaub 23b714f61b
Only consider validly bound subkeys when determining latest key creation date 2021-10-14 16:15:42 +02:00
Paul Schaub aef213a672
Fix AssertionError when determining encryption subkeys from set containing unbound key 2021-10-14 15:53:49 +02:00
Paul Schaub 5ea8294a60
Improve javadoc of Feature class 2021-10-14 15:27:01 +02:00
Paul Schaub 4e16cf13c5
Remove unused subclass 2021-10-12 15:31:38 +02:00
Paul Schaub b04ecc4eef
Further increase coverage of KeyRingInfo 2021-10-12 14:56:24 +02:00
Paul Schaub ee1d38a38a
Increase test coverage for KeyRingInfo 2021-10-12 14:18:59 +02:00
Paul Schaub bbc68e9803
Fix Picking of Subkey Revocation Signatures 2021-10-12 14:04:23 +02:00
Paul Schaub 33f516efe8
Fix detection of signed messages when verification keys are missing
Fixes #187, supersedes #189
2021-10-08 14:03:12 +02:00
Paul Schaub e390389c0a Reuse compliance 2021-10-07 16:28:31 +02:00
Paul Schaub 18a6090f0e
Add tests for user-attribute validation 2021-10-04 15:53:58 +02:00
Paul Schaub c0ae6d75ba
Add tests for UserAttribute certification/revocation 2021-10-04 14:47:16 +02:00
Paul Schaub 5d28823c80
Add more signing tests 2021-10-04 14:21:06 +02:00
Paul Schaub 96755a82a5
More SignatureSubpacketsUtilTest methods 2021-10-04 14:00:23 +02:00
Paul Schaub bccf384dbf
Add feature-related utilities and tests 2021-10-04 13:32:04 +02:00
Paul Schaub 7113dd1d7e
Add test for SignatureUtils 2021-10-03 14:32:32 +02:00
Paul Schaub 76a0a6479a
Remove unused OPS methods 2021-10-03 14:12:26 +02:00
Paul Schaub 0e1d6cb5a1
Rename DetachedSignature -> DetachedSignatureCheck 2021-10-03 13:47:20 +02:00
Paul Schaub 910bae58c0
Remove unused methods in DetachedSignature 2021-10-03 13:46:15 +02:00
Paul Schaub 7bc35dcba3
Add regression test for PGPUtil.getDecoderStream mistaking plaintext for base64 encoded data 2021-10-01 15:21:42 +02:00
Paul Schaub f7a7035059
Workaround for PGPUtil accidentally mistaking plain data for base64 encoded data. 2021-10-01 15:04:37 +02:00
Paul Schaub 5869996059
Add isSignedOnly() to MessageInspector
This method can be used to determine, whether the message was created using gpg --sign --armor.
It will return false if the message is signed and encrypted, since we cannot determine signed status while the message is encrypted.
Fixes #188
2021-10-01 14:12:10 +02:00
Paul Schaub 8ec8a55f10
Add ConsumerOptions.setIgnoreMDCErrors()
This method can be used to make PGPainless ignore certain MDC related errors or mishabits.
Use of this options is discouraged, but may come in handy in some situations.

Fixes #190
2021-10-01 13:54:51 +02:00
Paul Schaub 526dc0caac
Add support for creating cleartext signed messages and add tests 2021-09-27 17:10:00 +02:00
Paul Schaub ece5897bae
CleartextSignedMessage processing: Reuse normal processing API 2021-09-27 11:47:54 +02:00
Paul Schaub f15f3a4e2a
Fix example use of ascii armoring 2021-09-23 18:06:54 +02:00
Paul Schaub 1aa6541766 Merge branch 'key_generator_rework' 2021-09-20 14:50:02 +02:00
Paul Schaub be47a96030
Further simplify the KeyRingBuilder API 2021-09-20 12:30:03 +02:00
Paul Schaub 387b2b4b43
Ensure that KeySpecBuilder gets at least one key flag 2021-09-20 11:26:00 +02:00
Paul Schaub 895adb24c6
Export dependency on bcprov 2021-09-17 18:05:54 +02:00
Paul Schaub ce645fc429
Postpone decryption of PKESK if secret key passphrase is missing and try next PKESK first before passphrase retrieval using callback
Fixes #186
2021-09-15 16:33:03 +02:00
Paul Schaub 81379a5176
Add MessageInspector utility class which can be used to determine encryption keys for a message 2021-09-14 21:49:02 +02:00
Paul Schaub fedf7c0cf8 Make AlgorithmSuite members final and remove setters 2021-09-13 19:46:18 +02:00