Commit Graph

117 Commits

Author SHA1 Message Date
Paul Schaub aafc9be888
Switch to Jupiter JUnit for tests 2020-11-13 16:31:59 +01:00
Paul Schaub 4ed2cdaed9
Introduce UserId utility class 2020-11-13 15:59:28 +01:00
Paul Schaub 31844c5212
break for-loop of addUserId method when finding key 2020-11-13 15:11:33 +01:00
Paul Schaub 86c3487ad4
Some code cleanup 2020-11-13 15:08:37 +01:00
Paul Schaub 9b2ad24bda
Implement revocation of subkeys 2020-11-13 14:32:29 +01:00
Paul Schaub b4967db1a2
Implement adding subkeys to keyrings 2020-11-10 17:25:35 +01:00
Paul Schaub 99a2fcf1c0
Simplify KeyType API 2020-11-07 18:24:12 +01:00
Paul Schaub cb3190a0fc
Add JUnit tests for user-id addition/deletion 2020-11-06 18:32:44 +01:00
Paul Schaub 6159428c9a
Add support for deleting user-ids (untested) 2020-11-03 19:56:35 +01:00
Paul Schaub 92e2828885
Add support for deleting subKeys (untested) 2020-11-03 19:32:01 +01:00
Paul Schaub 2d899e0a3b
Allow adding user-ids to sub keys 2020-11-03 19:29:15 +01:00
Paul Schaub 47b1ccc071
More rigurous testing of key re-encryption 2020-10-30 13:30:21 +01:00
Paul Schaub 7c102334ed
expand expression to simplify debugging 2020-10-30 13:30:04 +01:00
Paul Schaub 70ad4a274e
Change method name to toNoPassphrase() 2020-10-30 13:29:18 +01:00
Paul Schaub d0580918fa
Fix checkstyle issues 2020-10-30 12:38:59 +01:00
Paul Schaub 8097a9d964
Passphrase.isEmpty: also check for validity 2020-10-30 12:31:52 +01:00
Paul Schaub 423a3f1354
Merge pull request #18 from wiktor-k/fix-empty-passphrase
Fix creating keys with `Passphrase.emptyPassphrase()`
2020-10-30 12:31:06 +01:00
Paul Schaub 04420f8dac
Extract secret key checksum algorithm into constant 2020-10-30 12:28:11 +01:00
Wiktor Kwapisiewicz 59fe53c594
Fix creating keys with `Passphrase.emptyPassphrase()`
Previously the code supplied `null` to BouncyCastle's
encryptor/decryptor builder's build method and that caused
NullPointerException to be thrown.

The fix checks if the passphrase is empty and omits the BouncyCastle
builder in that case.

Fixes #16.
2020-10-30 12:22:05 +01:00
Wiktor Kwapisiewicz e30d0f6293
Remove RSA_SIGN and RSA_ENCRYPT as they are deprecated
This change removes two mechanisms that are deprecated in RFC 4880. The
spec explicitly mentions that "RSA Encrypt-Only (2) and RSA Sign-Only
are deprecated and SHOULD NOT be generated" [0].

The remaining RSA_GENERAL key type was renamed to just RSA for ease of
use for developers.

[0]: https://tools.ietf.org/html/rfc4880#section-9.1
2020-10-30 11:48:28 +01:00
Paul Schaub cdd1bf4198
Add documentation and throw NotYetImplementedException in stubs 2020-10-29 15:15:13 +01:00
Paul Schaub 99af9e0171
Re-encrypting whole keyring successful 2020-10-25 20:43:09 +01:00
Paul Schaub 623c4c930d
Adding user-ids works 2020-10-25 19:54:03 +01:00
Paul Schaub 651a69c118
Work on the editing api 2020-10-23 16:44:21 +02:00
Paul Schaub 207c41d411
Add initial draft interface for a key editor API 2020-10-22 01:20:43 +02:00
Paul Schaub f21231ad53
Trim user-ids 2020-10-20 23:23:25 +02:00
Paul Schaub c06bedd656
Introduce SignatureType enum 2020-10-20 22:59:06 +02:00
Paul Schaub 1b389f678a
Fix checkstyle issues 2020-10-20 22:58:45 +02:00
Paul Schaub 9670e5ecb9
Prevent additional user-id from being equal to primary user-id 2020-10-20 22:14:56 +02:00
Paul Schaub 2f85c9a8d0
Test if userId is present 2020-10-16 13:18:07 +02:00
Paul Schaub 11e7bc69fc
Fix NPE by initializing the SignatureGenerator 2020-10-16 13:11:46 +02:00
Paul Schaub 8c30db9bf1
Wip: Allow for additional user-ids to be added 2020-10-16 12:46:58 +02:00
Paul Schaub 6a4fa47c12
Remove unused imports 2020-09-09 20:49:31 +02:00
Paul Schaub 2af60454f5
Add KeyRingProtectionSettings.secureDefaultSettings() factory method 2020-08-31 12:37:34 +02:00
Paul Schaub 20f32926bb
Add Passphrase.fromPassword() and PasswordBasedSecretKeyRingProtector.forKey() factory methods 2020-08-31 12:26:07 +02:00
Paul Schaub 01f81fabaa
Add OnePassSignature verification test 2020-08-30 13:16:47 +02:00
Paul Schaub 7de04c2949
Add handy shortcut methods to the API 2020-08-24 16:57:14 +02:00
Paul Schaub f10d698a09
Remove dependency on jetbrains annotations 2020-08-24 16:44:14 +02:00
Paul Schaub 4f6a7d2838
Fix checkstyle issues 2020-08-24 16:26:29 +02:00
Paul Schaub 848a7a428b
Add handy default methods for the API and add documentation 2020-08-24 16:00:23 +02:00
Paul Schaub 65b670740e Add support for detached signatures 2020-08-24 14:56:42 +02:00
Paul Schaub 0a3f688b23
Add documentation for openpgp4fpr fingerprint methods 2020-07-10 20:31:33 +02:00
Paul Schaub 46af22cc50
Add toUri/fromUri methods to OpenPgpV4Fingerprint 2020-07-10 18:17:29 +02:00
Paul Schaub 6c449b86af
Move charset utf8 to static constant 2020-07-10 18:16:22 +02:00
Paul Schaub f108ccc30c
Fix compatibility with java8 2020-04-21 17:34:21 +02:00
Paul Schaub 2c008ecf50
Add bcpg as transitive dependency 2020-04-11 12:48:07 +02:00
Paul Schaub ba6e850f6f
Improve logging of tests 2020-04-11 11:35:48 +02:00
Paul Schaub 5fa05e08fc
Add test for password protected keys 2020-01-14 22:11:01 +01:00
Paul Schaub 9c1f6fc812
return null-cryptors for unprotected keys 2020-01-14 22:10:07 +01:00
Paul Schaub 4b61745c46
Add default constructor and fix condition 2020-01-14 22:09:13 +01:00