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

1209 commits

Author SHA1 Message Date
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
Paul Schaub b0c283e143 Clean up UserId.toString() behavior 2022-12-15 18:02:44 +01:00
Paul Schaub 6913aa3d6d
Add more tests for RevocationState 2022-11-25 15:41:56 +01:00
Paul Schaub ae6a427d90
Add test for UniversalSignatureBuilder 2022-11-25 15:34:54 +01:00
Paul Schaub 4426895814
Add tests for CollectionUtils 2022-11-25 14:55:46 +01:00
Paul Schaub e1ab128c2e
Add annotations to GnuPGDummyKeyUtil 2022-11-25 14:40:57 +01:00
Paul Schaub 7cc2751527
Add @Nonnull annotations to OpenPgpMessageSyntax 2022-11-25 14:38:45 +01:00
Paul Schaub 3f70936ff1
Add documetation to PDA class 2022-11-25 14:26:55 +01:00
Paul Schaub e88a88a447
Add javadoc for OpenPgpMessageInputStream factory method return value 2022-11-24 22:24:12 +01:00
Paul Schaub 39d656d2dd
Add javadoc for HardwareDataDecryptorFactory constructor argument 2022-11-24 22:22:21 +01:00
Paul Schaub 5bdd4f6ad0
Test rejection of messages with unacceptable skesk kek algorithm 2022-11-24 22:09:22 +01:00
Paul Schaub a495f2275c
Precise error message for IntegrityProtectedInputStream 2022-11-24 21:34:25 +01:00
Paul Schaub c72b3a4b8e Improve CachingBcPublicKeyDataDecryptorFactoryTest 2022-11-23 20:42:54 +01:00
Paul Schaub be7349f0b5 Clean up CachingBcPublicKeyDataDecryptorFactory 2022-11-23 20:42:54 +01:00
Paul Schaub b495e602e5 More precise error message for malformed message 2022-11-23 20:42:54 +01:00
Paul Schaub 25190fc5df SOP: Use new MessageMetadata class 2022-11-23 20:42:54 +01:00
Paul Schaub b36b5413e2 Fix isEncryptedFor() 2022-11-23 20:42:54 +01:00
Paul Schaub 27fd15a012 Update examples with new MessageMetadata class 2022-11-23 20:42:54 +01:00
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
Paul Schaub 54d7d0c7ae Implement experimental signature verification (correctness only) 2022-11-23 20:40:03 +01:00
Paul Schaub 9366700895 Add read(b,off,len) 2022-11-23 20:40:03 +01:00
Paul Schaub 7b9db97212 Clean close() method 2022-11-23 20:40:03 +01:00
Paul Schaub 0753f4d38a Work on getting signature verification to function again 2022-11-23 20:40:03 +01:00
Paul Schaub d81c0d4400 Fix tests 2022-11-23 20:40:02 +01:00
Paul Schaub e86062c427 WIP: Replace nesting with independent instancing 2022-11-23 20:40:02 +01:00
Paul Schaub bf8949d7f4 WIP: Implement custom PGPDecryptionStream 2022-11-23 20:40:02 +01:00
Paul Schaub 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
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
Paul Schaub 0bafc410a0
Add missing parseAndCombineSignatures call
For some reason this was missing from the single-byte read() method
of the SignatureInputStream, causing issues if draining the stream
byte by byte
2022-09-05 15:41:58 +02:00
Paul Schaub 9106d98449
Add tests for Certificate merging 2022-09-05 15:25:29 +02:00
Paul Schaub cd0b9603e7
Add KeyRingUtils.injectCertification(keys, certification) 2022-09-05 15:15:58 +02:00
Paul Schaub 5be42b22bd
Add test for KeyRingUtils.keysPlusPublicKey 2022-09-05 14:45:22 +02:00
Paul Schaub 4ec38bb63b
Add tests for ArmoredInputStreamFactory 2022-09-05 14:37:23 +02:00
Paul Schaub 70ce4d45f4
Remove unused CRCinArmoredInputStreamWrapper.possiblyWrap() 2022-09-05 14:20:11 +02:00
Paul Schaub 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
Paul Schaub 3cd5a95d89
Rename inspectionDate to referenceTime 2022-09-03 13:48:02 +02:00
Paul Schaub 7189516dd4
Add documentation for modifyKeyRing(keys, date) 2022-09-03 13:46:32 +02:00
Paul Schaub c3dc3c9d87 Allow modification of keys with custom reference date
Also, bind subkeys using SubkeyBindingSignatureBuilder
2022-09-03 13:42:58 +02:00
Paul Schaub 15046cdc32
Switch default S2K for secret key protection over to use SHA256 and add documentation 2022-08-31 21:37:31 +02:00
Paul Schaub c6676d3c91
Add support for generating keys without user-ids
Fixes #296
2022-08-29 14:12:02 +02:00
Paul Schaub bc24c4626a
Add ConsumerOptions.get() factory method 2022-08-29 13:00:50 +02:00
Paul Schaub 5746985bb7
Add EncryptionOptions.get() factory method 2022-08-29 12:46:36 +02:00
Paul Schaub d1001412a1
Add SigningOptions.addDetachedSignature(protector, key) shortcut method 2022-08-29 12:36:16 +02:00
Paul Schaub 39ff2bca73
Fix javadoc of SigningOptions methods 2022-08-29 12:35:51 +02:00
Paul Schaub 1b04d67e1a
Remove unused SignatureSubpacketGeneratorUtil class and tests 2022-08-29 11:30:26 +02:00