88891e1337
Remove usage of deprecated decryption/verification API in tests
2021-06-16 15:38:02 +02:00
715d055b41
Add documentation and deprecate old methods
2021-06-15 17:56:36 +02:00
8f425cd31d
Fix parsing of non-OpenPGP messages when handling detached signatures
2021-06-15 17:35:58 +02:00
70c4dcd1d2
Begin introducing new Decryption API
2021-06-15 17:08:40 +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
e587fc46b8
SOP: Ignore marker packets in certificates
2021-06-10 16:56:36 +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
e297dfd3c1
EncryptionOptions: Consistent exceptions
2021-06-10 15:04:08 +02:00
cc8a7826fc
Add KeyIdUtil with method to convert from 16 digit hex key-id to long
2021-06-10 13:36:44 +02:00
f7525dde65
Add get{,Un}HashedNotationData(sig, notationName) to SignatureSubpacketUtils
2021-06-10 13:35:55 +02:00
bedfef49fe
Add getSignatureDigestPrefix utility method to SignatureUtils
2021-06-10 13:35:09 +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
ce4869e15a
UnlockSecretKey: Do not try to get decryptor for unencrypted keys
2021-05-31 15:38:47 +02:00
73f6c54fa2
More documentation
2021-05-31 15:33:42 +02:00
a871bc3a0c
Add documentation
2021-05-31 15:24:41 +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
ccdcd49c58
Remove deprecated method withMasterKey from KeyRingBuilderInterface
2021-05-30 18:05:09 +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
fd0734b247
Remove legacy symmetric encryption code
2021-05-28 23:22:11 +02:00
ea03c66400
Throw MissingDecryptionMethodException when missing decryption key or -passphrase
2021-05-28 23:20:25 +02:00
77800f26e8
SecretKeyRingEditor: UserIDs only reside on primary keys
2021-05-28 23:14:20 +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
293442d699
Delete unused EvaluatedKeyRing class
2021-05-28 21:42:31 +02:00
6f0cf35e31
Delete redundant classes
2021-05-28 21:33:20 +02:00
b1deb75969
Deprecate PGPainless.encryptAndOrSign(purpose)
2021-05-27 15:57:21 +02:00
9883d1537b
Move EncryptionPurpose to own class
2021-05-27 15:52:43 +02:00
3edaa60b52
Make KeyRingInfo NPE-safe
2021-05-27 14:50:48 +02:00
e3749f5734
Add SigningOptions.add{Inline|Detached}Signatures(decryptor, pgpSecretKeyRingCollection, type)
2021-05-27 13:55:18 +02:00
8e6abe5d02
Add EncryptionOptions.addRecipients(PGPPublicKeyRingCollection)
2021-05-27 13:47:24 +02:00
e67854310d
Change visibilit of non-API methods to package
2021-05-27 13:47:04 +02:00
629ebbd46d
Add missing javadoc
2021-05-27 13:46:40 +02:00
80a6baf0b1
Move File-based MultiPassStrategy from factory method into own class
2021-05-25 22:23:08 +02:00
3cd64b61ca
Fix SOP encrypt-decrypt test
2021-05-25 16:25:22 +02:00
b0692b4dc5
Fix javadoc reference
2021-05-25 14:24:47 +02:00
5965742e5f
Document DocumentSignatureType
2021-05-25 14:24:47 +02:00
412b0aa119
Add SymmetricKeyAlgorithmNegotiator
2021-05-25 14:24:47 +02:00
821a49576f
AlgorithmSuite: Use LinkedHashSet instead of List
2021-05-25 14:24:47 +02:00
1550e4ff4e
Delete SelectPublicKey
2021-05-25 14:24:47 +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
803e507ae7
Add some comments
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
87e5fe71e5
Fix javadoc warning
2021-05-17 13:50:34 +02:00
197cfab0d6
Respect symmetric algorithm policy during decryption and throw UnacceptableAlgorithmException if policy is violated
2021-05-17 13:47:46 +02:00
03fb81a77e
Create separate symmetric key algorithm policies for encryption/decryption
2021-05-15 20:43:56 +02:00
3be7f12887
Remove SignatureValidationDateProvider
2021-05-15 20:30:21 +02:00
11b67ea6d2
Add documentation to Policy
2021-05-15 20:27:43 +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
937ec2aa86
Add HashAlgorithm.getAlgorithmName()
2021-05-15 16:23:35 +02:00
b05f6887bd
Better support for Armor headers
2021-05-15 15:57:42 +02:00
f2e89bae36
Remove deprecated/reserved hash algorithms and add algo names
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
5a56949dd7
Throw WrongPassphraseException when wrong passphrase is provided to unlock secret key
2021-05-14 13:18:34 +02:00
32e1b0c838
KeyRingBuilder: Do not info-log exception when generated key has wrong length
2021-05-12 12:56:07 +02:00
892f452da8
Print fingerprint+user-id in comment headers of Armor
2021-05-08 14:02:44 +02:00
ec611d7c5f
OpenPgpV4Fingerprint: Support pretty print format
2021-05-08 14:01:42 +02:00
99be722875
Do not spaghetti
2021-05-03 14:11:59 +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
0b3511486c
Add documentation to DecryptionStream(Interface)
2021-04-25 13:34:30 +02:00
7916bf77d1
Add javadoc to enums
2021-04-25 13:28:33 +02:00
2c4a3fca6a
Introduce OpenPgpMetadata.FileInfo class for setting/getting file name, mod date, encoding...
2021-04-25 00:28:48 +02:00
Den
491ab93c41
Modified Passphrase.fromPassword() to fit Kotlin needs ( #101 )
...
* Added @Nonnull annotation to Passphrase.fromPassword()
2021-04-10 14:32:24 +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
6954c03f49
Fix checkstyle issue
2021-04-09 12:05:46 +02:00
cd19f91d77
Allow specification of file name and for-your-eyes-only flag
2021-04-07 21:31:12 +02:00
d082f126b3
Use more standards compliant way to determine if secret key is encrypted
2021-04-07 21:14:31 +02:00
ed43d3c6a9
Fix javadoc error
2021-03-23 01:26:51 +01:00
d0a162ce74
Merge branch 'parse_public_key_ring_collection_from_armored_source'
2021-03-23 01:06:37 +01:00
ce0bf970d6
KeyRingReader: Fix reading PGPKeyRingCollections
2021-03-23 01:05:45 +01:00
f427e3c7d0
Add documentation to SignatureSubpacket class
2021-03-21 20:15:18 +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
bfbb2ba31b
Fix checkstyle error
2021-03-05 12:32:21 +01:00
d5ac1301e0
Add primary key binding sigs to signing subkeys
2021-03-04 16:33:46 +01:00
bfab4b60f0
Introduce parametrized tests to also test the JceImplementationFactory
2021-02-25 23:27:08 +01:00
8c041e6856
Fix equality check in CallbackBasedKeyringProtector
2021-02-25 23:11:17 +01:00
e661908c5f
Fix NPE when creating SecretKeyEncryptor for key without S2K spec
2021-02-25 23:10:25 +01:00
577ee143b5
Add NotationRegistryTest
2021-02-25 19:57:18 +01:00
Ivan Pizhenko
57f7440039
Code review
2021-02-21 16:18:42 +02:00
Ivan Pizhenko
e5aaebe174
issue #91 Improve class UserId
2021-02-21 15:11:09 +02:00
81393a7285
Abort decryption process at a depth of 16 nested packets
2021-02-19 21:37:54 +01:00
217609679d
Add SignatureValidationUtil and NotationRegistry classes
2021-02-19 21:22:25 +01:00
ce5f8990ef
Add HashAlgorithmPolicy and SymmetricKeyAlgorithmPolicy
2021-02-19 19:51:44 +01:00