1
0
Fork 0
mirror of https://github.com/pgpainless/pgpainless.git synced 2024-11-18 10:22:05 +01:00
Commit graph

233 commits

Author SHA1 Message Date
70c4dcd1d2
Begin introducing new Decryption API 2021-06-15 17:08:40 +02:00
a65ea26181
Add tests for PublicKeyAlgorithmPolicy 2021-06-11 16:47:22 +02:00
5bb4fd3687
Add PublicKeyAlgorithmPolicy to reject weak public keys
BCs PGPPublicKey.getBitStrenght() appears to fail to recognize some elliptic curves.
In such cases, bitStrength is reported as -1.
I added BCUtil.getBitStrength(publicKey) to manually determine the bit strenght by OID.
See https://github.com/bcgit/bc-java/issues/972 for an upstream bug report.
2021-06-11 16:20:29 +02:00
6b99f0aadc
Add tests for PGPKeyRingCollection 2021-06-10 16:21:04 +02:00
ed8584df95
Add policy tests 2021-06-10 15:41:44 +02:00
7696f120e6
Even more EncryptionOptions tests 2021-06-10 15:18:31 +02:00
762d9d4803
More EncryptionOptions tests 2021-06-10 15:04:21 +02:00
512825aad4
Add test for EncryptionOptions 2021-06-10 14:25:00 +02:00
a2d0a75d42
Add SignatureStructureTest to test various signature field accessors 2021-06-10 13:37:10 +02:00
9b9064beae
Small code style fixes and optimizations 2021-06-10 12:42:48 +02:00
845779d40b
Avoid deprecated methods 2021-06-10 12:42:03 +02:00
27370fa925
Bump Bouncycastle to 1.69 2021-06-10 12:41:12 +02:00
1ad23366a7
Implement KeyRingInfo.getKeysWithFlag() and KeyRingInfo.getExpirationDateForUse() 2021-05-31 15:13:28 +02:00
8618d1faea
More tests 2021-05-31 13:59:56 +02:00
b07cb2467b
Alter tests to cover untested KeyRingBuilderInterface methods 2021-05-30 18:05:38 +02:00
8e02df9a3e
Test FileBasedMultiPassStrategy 2021-05-29 14:13:08 +02:00
82536eaa77
Improve support for PGP[Secret|Public]KeyRingCollections 2021-05-29 13:52:29 +02:00
1a5baa0fa4
Clean up BCUtils class 2021-05-29 12:43:31 +02:00
13c7572c8c
Restore functionality of MissingPublicKeyCallback + JUnit test it 2021-05-29 12:19:12 +02:00
7bbc23d826
Test MissingDecryptionMethodException 2021-05-28 23:29:41 +02:00
fd0734b247
Remove legacy symmetric encryption code 2021-05-28 23:22:11 +02:00
77800f26e8
SecretKeyRingEditor: UserIDs only reside on primary keys 2021-05-28 23:14:20 +02:00
57c11a63e5
Remove unused throws declarations 2021-05-28 22:39:27 +02:00
c255439ee2
Cleanse duplicated code 2021-05-28 22:37:16 +02:00
a23f2c4401
Delete SelectSignatureFromKey class 2021-05-28 22:21:03 +02:00
826c761e69
Test invalid keys cannot sign behavior 2021-05-28 21:41:02 +02:00
9883d1537b
Move EncryptionPurpose to own class 2021-05-27 15:52:43 +02:00
4e63313c91 Do some first prototype algorithm negotiation 2021-05-25 14:24:38 +02:00
909f0e7be3 Work on KeyRingInfo 2021-05-25 14:24:26 +02:00
6cb9091b2a Work on signaturePicker 2021-05-25 14:24:16 +02:00
a30767eb91 Fix tests 2021-05-25 14:24:10 +02:00
d70ee86468 Prevent plaintext encryption 2021-05-25 14:23:58 +02:00
89a0adddd8 Reworking encryption/decryption API. 2021-05-25 14:23:42 +02:00
7e2c89b1b3 Trim passphrases 2021-05-20 12:41:51 +02:00
a72cff28d8
Improve user-id revocation tests 2021-05-17 18:28:37 +02:00
197cfab0d6
Respect symmetric algorithm policy during decryption and throw UnacceptableAlgorithmException if policy is violated 2021-05-17 13:47:46 +02:00
225bc78ee1
Implement signature verification of cleartext-signatures 2021-05-15 18:44:03 +02:00
14ff0e9cc5
ArmorUtils: Add support for messageIds 2021-05-15 16:24:01 +02:00
b05f6887bd Better support for Armor headers 2021-05-15 15:57:42 +02:00
9358e58fb3
Improve CachingSecretKeyRingProtector 2021-05-14 18:55:26 +02:00
95121e2a55
Get rid of redundant SecretKeyRingProtector implementations. 2021-05-14 18:37:47 +02:00
8313895f26
Remove redundant exceptions 2021-05-14 13:20:16 +02:00
5a56949dd7
Throw WrongPassphraseException when wrong passphrase is provided to unlock secret key 2021-05-14 13:18:34 +02:00
ec611d7c5f
OpenPgpV4Fingerprint: Support pretty print format 2021-05-08 14:01:42 +02:00
431a65517e
Add documentation to signature related classes 2021-05-03 13:37:47 +02:00
ec85f53bb6
Incorporate feedback from @IvanPizhenko. Thanks! 2021-04-30 10:23:12 +02:00
64cc9ecca4 Proper Signature Verification 2021-04-30 09:49:19 +02:00
6ee8a9416f
Prevent decryption of messages using SED instead of SEIP packets and create dedicated exceptions for MDC related errors 2021-04-27 12:27:25 +02:00
Ivan Pizhenko
eb47e5caa3
issue #107 Add method KeyRingInfo.isFullyEncrypted() (#110)
Add method KeyRingInfo.isFullyEncrypted()

Fixes #107 

Co-authored-by: Ivan Pizhenko <IvanPizhenko@users.noreply.github.com>
2021-04-27 11:06:04 +02:00
2c4a3fca6a
Introduce OpenPgpMetadata.FileInfo class for setting/getting file name, mod date, encoding... 2021-04-25 00:28:48 +02:00
39e87f9ce4
Fix checkstyle issues 2021-04-10 13:09:32 +02:00
DenBond7
43647f3145 Added PGPKeyRingCollection. Added tests to KeyRingReaderTest to cover parsing of private/pub keys combinations. 2021-04-10 13:08:04 +02:00
DenBond7
8e569e7931 Added tests to KeyRingReaderTest to cover different cases of the source. 2021-04-10 13:08:04 +02:00
d0a162ce74 Merge branch 'parse_public_key_ring_collection_from_armored_source' 2021-03-23 01:06:37 +01:00
46140e6561
Fix checkstyle issues in tests and make small adjustments 2021-03-23 01:06:15 +01:00
883c819536
GenerateKeyTest: Print public key instead of secret key 2021-03-18 21:33:39 +01:00
8c97b6ead1
In PasswordBasedSecretKeyRingProtector.forKey(ring, passphrase): Return passphrase also for subkeys
Fixes #97, thanks @DenBond7
2021-03-18 21:28:08 +01:00
DenBond7
fb82f711d8
Updated KeyRingReaderTest. Added publicKeyRingCollectionFromNotArmoredStream() 2021-03-17 14:55:05 +02:00
DenBond7
f34c787a4d
Added working tests(string, bytes) to EncryptDecryptTest 2021-03-17 13:49:31 +02:00
DenBond7
447593a65d
Added tests for PGPainless.readKeyRing().publicKeyRingCollection()(different resources) 2021-03-17 12:51:02 +02:00
c5fbdbbc9b
Disable MultiPassphraseEncryptionTest until https://github.com/pgpainless/pgpainless/issues/72 is fixed 2021-02-27 15:22:29 +01:00
bfab4b60f0
Introduce parametrized tests to also test the JceImplementationFactory 2021-02-25 23:27:08 +01:00
9587d52f29
Add test for Feature class 2021-02-25 20:02:42 +01:00
577ee143b5
Add NotationRegistryTest 2021-02-25 19:57:18 +01:00
Ivan Pizhenko
e5aaebe174 issue #91 Improve class UserId 2021-02-21 15:11:09 +02:00
3e75d325a8 Stabilize test
The test was sometimes failing, as generating RSA keys can take longer than 1 second, which would result in the delta in the check being exceeded
2021-02-20 01:08:51 +01:00
81393a7285
Abort decryption process at a depth of 16 nested packets 2021-02-19 21:37:54 +01:00
c75a192513
Use ArmoredOutputStreamFactory to hide version string in ascii armor
Partially fixes #82
2021-02-19 19:50:36 +01:00
ea89289852
Check MDC when stream is closed 2021-02-17 21:04:05 +01:00
d2a581de9b
Fix decryption of messages with Wildcard recipient
Fixes #76
2021-02-17 20:20:10 +01:00
f2f7305fec
Allow for setting of expiration date during key generation 2021-02-13 12:22:28 +01:00
83117c99cb
Add two more tests 2021-02-12 01:23:32 +01:00
651bb63175
Deprecate withMasterKey(spec) in favor of withPrimaryKey(spec) 2021-02-11 17:18:59 +01:00
79b2d42f9c
Add support for more elliptic curves and start implementing KeyInfo class 2021-02-11 16:58:00 +01:00
ebf46fa05e
Add tests for SelectUserId 2021-02-07 03:12:59 +01:00
Ivan Pizhenko
72e0dea20f remove unused imports 2021-02-04 09:56:08 +02:00
Ivan Pizhenko
a807ddbb4e use PGPainless.readKeyRing().secretKeyRing() 2021-02-04 09:45:08 +02:00
Ivan Pizhenko
c9982ccfe6 Additional user id manipulation test 2021-02-03 23:09:02 +02:00
eaee5a27fc
Move selection strategies to util package and implement UserIdSelectionStrategy 2021-02-03 16:05:21 +01:00
d7ef05775d
Add getPrimaryUserId() 2021-01-29 15:08:11 +01:00
bec2fb5ce1
Increase test coverage by writing bunch of JUnit tests 2021-01-22 20:03:20 +01:00
ee1f90e850
Test and implement revocation of single userIDs 2021-01-22 18:28:48 +01:00
c4d670821f
Test if revoked userIds are no longer accepted as valid userIDs 2021-01-22 16:56:41 +01:00
85ed20cfae
Test if subpackets are being preserved when changing expiration time 2021-01-22 16:56:06 +01:00
39ab6ebddf
Add test for SignatureSubpacketGeneratorUtil 2021-01-22 16:48:30 +01:00
93df791700
Test revocation reason related code 2021-01-21 14:59:55 +01:00
87eab2fb9a
More UserID tests 2021-01-21 14:52:11 +01:00
2880e0bed0
Test SecretKeySelectionStrategy.selectKeysFromKeyRing() 2021-01-21 14:46:28 +01:00
ccae32ca3f
Test getSecretKey() 2021-01-21 14:38:25 +01:00
c35154813a
More code cleanup and tests 2021-01-21 14:35:33 +01:00
74c0c8a32e
Fix signature creation using keys without preferred algorithms 2021-01-21 13:47:43 +01:00
3e5ff1fe70
PGPainless 0.2.0-alpha6 2021-01-20 00:51:59 +01:00
21dae7541c
Add test to verify that key with generic certification can be revoked properly 2021-01-19 15:36:31 +01:00
b25a78bc29
Fix changing of expiration dates for keys and subkeys 2021-01-18 17:09:57 +01:00
c89558a01b
Split KeyFlagSelectionStrategies up into Has{Any|All}KeyFlagsSelectionStrategy 2021-01-09 20:55:19 +01:00
4f0493bce7
Test that the encryptionStreamBuilder will not encrypt to keys with missing flags 2021-01-09 20:40:10 +01:00
8df752e995
Add HasKeyFlagsSelectionStrategy 2021-01-09 20:16:13 +01:00
83bd157a78
Get rid of generics in selection strategies 2021-01-09 19:23:50 +01:00
e53a21ff77
Add some weird keys and test for multi sub key encryption 2021-01-09 18:57:48 +01:00
63bf5a8e69
Add support for decryption with hidden recipients 2021-01-09 16:16:17 +01:00