Commit Graph

135 Commits

Author SHA1 Message Date
Paul Schaub ef4b01c6bd
Kotlin conversion: Profile 2023-10-31 12:42:13 +01:00
Paul Schaub 6c5c4b3d98
Kotlin conversion: Verification 2023-10-31 12:25:54 +01:00
Paul Schaub 567571cf6c
Kotlin conversion: SessionKey 2023-10-31 11:33:15 +01:00
Paul Schaub 0f5270c28d
Kotlin conversion: ByteArrayAndResult 2023-10-31 11:24:36 +01:00
Paul Schaub 308c4b452f
Add test for signature verification with hard-revoked cert 2023-07-12 15:36:39 +02:00
Paul Schaub be351616b6
Add some more RevokeKey tests 2023-07-12 15:08:33 +02:00
Paul Schaub 6afe6896d8
Implement '--signing-only' option for 'generate-key' command 2023-07-12 01:06:41 +02:00
Paul Schaub 7e1377a28c
Initial implementation of 'change-key-password' command of SOP-07 2023-07-12 00:42:02 +02:00
Paul Schaub 618d123a7b
Add RevokeKeyExternal implementation and some basic tests 2023-07-11 22:58:39 +02:00
Paul Schaub e6393b44b9
Initial implementation of 'revoke-key' command 2023-07-11 22:42:16 +02:00
Paul Schaub bfaba69222
Add Dearmor.data(String) default method 2023-07-11 21:18:37 +02:00
Paul Schaub ab8f44138d
Add missing @throws javadoc 2023-04-27 14:45:42 +02:00
Paul Schaub 419056ba4c
Fix checkstyle issues 2023-04-27 14:32:13 +02:00
Paul Schaub c479cc8ef3
Profile: Use Optional for description 2023-04-27 14:25:16 +02:00
Paul Schaub aa88904711
Add tests for Verification parsing 2023-04-27 14:24:59 +02:00
Paul Schaub 7ea46a1916
Move tests 2023-04-27 14:23:58 +02:00
Paul Schaub 8aded17f10
Use UTF8Util.UTF8 constant 2023-04-27 13:17:58 +02:00
Paul Schaub 8eba099146
UTF8Util.decodeUTF8(): throw CharacterCodingException instead of PasswordNotHumanReadable 2023-04-27 13:15:44 +02:00
Paul Schaub 0308732328
Make UTCUtil.parseUTCDate() throw instead of returning null for malformed inputs 2023-04-27 13:07:08 +02:00
Paul Schaub 8b8863c6df
Verification: Annotate with @Nonnull, @Nullable 2023-04-27 12:52:12 +02:00
Paul Schaub 44e6dd2180
Depend on findbugs:jsr305 for @Nullable etc. annotations 2023-04-27 12:44:40 +02:00
Paul Schaub 19d6b7e142
Verification: Make use of Optional for signature mode and description 2023-04-27 12:44:01 +02:00
Paul Schaub e336e536a8
Javadoc: Insert <p> tags to preserve newlines 2023-04-26 16:44:49 +02:00
Paul Schaub ed59c713eb
Remove unused 'throws IOException' declarations 2023-04-26 16:28:04 +02:00
Paul Schaub 0fccf3051c
Refactor AbstractSOPTest 2023-04-26 16:21:37 +02:00
Paul Schaub aeda534f37
Add DSL for testing verification results 2023-04-26 15:53:50 +02:00
Paul Schaub 4a7c2b74da
Add test for listing encrypt profiles, use new shortcut methods 2023-04-18 18:05:10 +02:00
Paul Schaub 78ecf2f554
ListProfiles: Add shortcut methods generateKey() and encrypt() 2023-04-18 18:04:23 +02:00
Paul Schaub d8cac7b9d7
external-sop: Fix error code mapping of new exceptions 2023-04-18 18:03:18 +02:00
Paul Schaub 84a01df4bd
Rename new methods in Version 2023-04-17 15:29:06 +02:00
Paul Schaub 1a4affde35
Skip sopSpecVersionTest if --sop-spec is not supported 2023-04-17 14:44:09 +02:00
Paul Schaub 8425665fa7
Expose SOP revision info more fine-grained 2023-04-17 14:44:09 +02:00
Paul Schaub 8a66f0bc4f
Implement sop encrypt --profile=XXX 2023-04-17 14:44:08 +02:00
Paul Schaub f49c16e4c5
Implement sop version --sop-spec 2023-04-17 14:44:08 +02:00
Paul Schaub 8a9f535531
Add documentation to ListProfiles command 2023-04-17 14:04:06 +02:00
Paul Schaub 7e12da400b
Add documentation to new exception types 2023-04-17 14:01:49 +02:00
Paul Schaub 360f2fba02
Document SignatureMode 2023-04-17 13:56:43 +02:00
Paul Schaub d838e9589b
Add documentation to Verification 2023-04-17 13:51:05 +02:00
Paul Schaub ffdd5eee51
Document SOP.listProfiles() 2023-04-17 13:41:03 +02:00
Paul Schaub 67292864b3
Add documentation to Profile class 2023-04-17 13:39:36 +02:00
Paul Schaub 9bc391fc7c
Add note discouraging reuse of subcommand objects 2023-04-17 13:07:54 +02:00
Paul Schaub 5935d65c90
Implement profiles 2023-04-14 14:06:34 +02:00
Paul Schaub b8544396f8
Add Profile class 2023-04-14 14:03:22 +02:00
Paul Schaub 0ed5c52f4b
Change ListProfiles class to interface 2023-04-11 15:27:23 +02:00
Paul Schaub 83a003e80f
Add list-profiles command 2023-04-11 15:06:37 +02:00
Paul Schaub 6d28a7b07d
Add new Exceptions 2023-04-09 19:52:34 +02:00
Paul Schaub f5e34bce6c
Fix IOOB in Verification.fromString() 2023-04-09 19:51:49 +02:00
Paul Schaub 5d04bb965b
Add support for 05-style verifications 2023-04-09 19:29:10 +02:00
Paul Schaub 6ac133499c
Enable tests only if test backends are available 2023-01-31 18:35:48 +01:00
Paul Schaub 0709bce35c
Allow for extension of test suite from 3rd party SOP implementations 2023-01-31 18:20:27 +01:00
Paul Schaub fd426b533c
Restructure test artifacts into sop-java testFixtures 2023-01-27 00:35:38 +01:00
Paul Schaub f1c6fd67d3 Update sop-java/README 2023-01-13 18:53:14 +01:00
Paul Schaub e3b618a0a8 Wip: Add TempDirProvider 2023-01-13 18:53:14 +01:00
Paul Schaub 3eb2503852 Add back missing exception constructor 2023-01-13 18:53:14 +01:00
Paul Schaub a63b29fe80 WiP: Implement first prototypes of all SOP commands for external binaries 2023-01-13 18:53:14 +01:00
Paul Schaub efec4d9110 Wip: working extract-cert, fix generate-key parameter passing 2023-01-13 18:53:14 +01:00
Paul Schaub 3bc19b27ad toString() of enum options: Ensure lowercase 2023-01-13 18:50:36 +01:00
Paul Schaub c00109c2bf Rename InlineSignAs.CleartextSigned to clearsigned, make options lowercase
Fixes #16
2022-11-11 12:48:26 +01:00
Paul Schaub 137d2e7f85
Add Verification.fromString(string), equals(other) and hashCode() 2022-11-07 16:21:34 +01:00
Paul Schaub dad75bb522
Clean up toString() method 2022-11-07 16:21:01 +01:00
Paul Schaub aa953428ee Be less finnicky about session key formats 2022-11-06 20:30:03 +01:00
Paul Schaub c32ef9830b
Properly throw CannotDecrypt exception with error message 2022-11-06 14:41:37 +01:00
Paul Schaub 61ab35ad52
Reference exit codes directly in junit tests 2022-06-11 11:18:45 +02:00
Paul Schaub 0c24c2301d
Add KeyCannotSign(message) constructor 2022-06-10 16:55:53 +02:00
Paul Schaub eefb445916
Reformat and restructure exceptions 2022-06-10 16:16:37 +02:00
Paul Schaub e175ee6208
Fix return types of sign builders 2022-06-09 00:46:40 +02:00
Paul Schaub 2135455cda
Don't throw KeyIsProtected 2022-06-07 08:55:44 +02:00
Paul Schaub 4934e472e2
Wip: Refactor command implementation and enable i18n for CLI 2022-06-06 20:06:14 +02:00
Paul Schaub a7f02d58cc
Wip 2022-05-29 21:17:03 +02:00
Paul Schaub 580c3af350
Add InlineSign API 2022-05-24 21:44:46 +02:00
Paul Schaub e8d7d1b5f4
Move withKeyPassword method in Sign around 2022-05-24 21:36:02 +02:00
Paul Schaub 72c3b3218d
Add API for verification of inline signed messages 2022-05-24 21:34:50 +02:00
Paul Schaub fd9192995f
Rename DetachInbandSignatureAndMessage to InlineDetach 2022-05-24 21:19:37 +02:00
Paul Schaub 0bfc12c1e1
Add withKeypassword() methods to Decrypt 2022-05-24 21:18:47 +02:00
Paul Schaub 0699ae740a
Add withKeyPassword() methods to Sign 2022-05-24 21:18:37 +02:00
Paul Schaub 146a2bd761
Add withKeyPassword() methods to GenerateKey 2022-05-24 21:13:30 +02:00
Paul Schaub be2fd9de49
Add javadoc to SignAs 2022-05-24 21:07:50 +02:00
Paul Schaub 33c8e5edc5
Switch to version agnostic SOP spec URLs 2022-05-07 22:17:41 +02:00
Paul Schaub e154b3e535
Add missing javadoc 2022-04-11 12:35:56 +02:00
Paul Schaub 4177780653
Host javadoc on javadoc.io 2022-02-11 14:27:29 +01:00
Paul Schaub 8877bae675
Implement detection of non-UTF8 passwords 2022-02-09 23:59:45 +01:00
Paul Schaub 117117b735
Treat password and sessionkkey arguments as indirect data types 2022-02-09 15:12:23 +01:00
Paul Schaub a2f2069380
Move and update project badges 2022-01-15 14:55:02 +01:00
Paul Schaub 9950668792
Switch sop-java from 'java' to 'java-library' plugin 2022-01-12 01:26:31 +01:00
Paul Schaub 8e3ee6c284
Initial commit 2022-01-11 13:46:05 +01:00