Commit Graph

300 Commits

Author SHA1 Message Date
Paul Schaub 8cf5347b52 Base PGPainlessCLI on new sop-java module
* Rename pgpainless-sop -> pgpainless-cli
* Introduce sop-java (implementation-independent SOP API)
* Introduce sop-java-picocli (CLI frontend for sop-java)
* Introduce pgpainless-sop (implementation of sop-java using PGPainless)
* Rework pgpainless-cli (plugs pgpainless-sop into sop-java-picocli)
2021-07-15 17:03:56 +02:00
Paul Schaub 2ba782c451
Move file-related encryption-info into ProducerOptions 2021-07-10 12:22:47 +02:00
Paul Schaub be4962c531 Fix KeyRingReader methods not ignoring marker packets 2021-07-10 11:48:39 +02:00
Paul Schaub 6a90c4303e
OpenPgpMetadat: identify verified sigs by SubkeyIdentifier 2021-07-04 13:08:24 +02:00
Paul Schaub b4b84badc0
ImplementationFactory: override toString() 2021-07-03 12:44:21 +02:00
Paul Schaub 63c75f1f86
Rename TestUtil -> TestImplementationFactoryProvider 2021-07-03 12:42:12 +02:00
Paul Schaub 9ac4b30ec7
Delete unused NonEmptyList class 2021-07-03 12:24:08 +02:00
Paul Schaub c8a281d6a4
Move UTC timestamp methods to DateUtil class 2021-07-03 12:23:24 +02:00
Paul Schaub 9b046a0cf1
Change SymmetricEncryptionAlgorithmNegotiator to return the 'best' avail. alg 2021-07-01 21:33:38 +02:00
Paul Schaub cce0605ac3
Remove probably buggy, unused code 2021-07-01 18:55:21 +02:00
Paul Schaub 77fbd8763e
PGPainless.java: Add extractCertificate and asciiArmor methods 2021-07-01 17:15:25 +02:00
Paul Schaub b6eed91f47
Remove deprecated encryption API 2021-06-29 16:43:37 +02:00
Paul Schaub ab347dab43 Remove deprecated decryption API code 2021-06-29 16:15:36 +02:00
Paul Schaub 4947f17842
JUnit test the AlgorithmSuite class 2021-06-29 14:58:50 +02:00
Paul Schaub 733dcf0a7e
Remove deprecated method from PGPainless.java 2021-06-29 14:47:05 +02:00
Paul Schaub dff47d17d1
Remove more unused methods and fix method name 2021-06-28 21:14:40 +02:00
Paul Schaub 02ddb71c07
Remove deprecated methods from PGPainless.java 2021-06-28 21:10:20 +02:00
Paul Schaub 9395fa80a2
Revert if-conditions to reduce indentation level 2021-06-28 21:06:12 +02:00
Paul Schaub e13a2fce73
Solve some TODOs 2021-06-26 19:20:58 +02:00
Paul Schaub 715ae707ed Merge branch 'decryptionAPI2' 2021-06-26 18:36:04 +02:00
Paul Schaub e8311f0cc5 Add link to keylength.com 2021-06-26 18:33:41 +02:00
Paul Schaub 5c2910f6c1 Wip 2021-06-26 18:33:41 +02:00
Paul Schaub 41b8d15cec CachingSecretKeyRingProtector: Add addPassphrase(OpenPgpV4Fingerprint, Passphrase) 2021-06-26 18:33:33 +02:00
Paul Schaub dae5288456
Add KeyRingInfo.getVersion() 2021-06-26 16:30:54 +02:00
Paul Schaub a6e5ca898f Fix NPEs in KeyRingInfo.getExpirationDateForUse() 2021-06-24 15:09:59 +02:00
Paul Schaub 548bfff93f
Fix: Respect user requested keyflags when adding a subkey. 2021-06-24 14:11:18 +02:00
Paul Schaub 259f629b3c
Further deletion of unused selection classes 2021-06-23 19:39:10 +02:00
Paul Schaub 3c37072774
Remove unused Selection classes 2021-06-23 19:33:13 +02:00
Paul Schaub df22c2a102
Remove duplicate code and throw NotYetImplementedExceptions where sensible 2021-06-16 15:49:43 +02:00
Paul Schaub 88891e1337
Remove usage of deprecated decryption/verification API in tests 2021-06-16 15:38:02 +02:00
Paul Schaub 715d055b41
Add documentation and deprecate old methods 2021-06-15 17:56:36 +02:00
Paul Schaub 8f425cd31d
Fix parsing of non-OpenPGP messages when handling detached signatures 2021-06-15 17:35:58 +02:00
Paul Schaub 70c4dcd1d2
Begin introducing new Decryption API 2021-06-15 17:08:40 +02:00
Paul Schaub 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
Paul Schaub e587fc46b8
SOP: Ignore marker packets in certificates 2021-06-10 16:56:36 +02:00
Paul Schaub 6b99f0aadc
Add tests for PGPKeyRingCollection 2021-06-10 16:21:04 +02:00
Paul Schaub ed8584df95
Add policy tests 2021-06-10 15:41:44 +02:00
Paul Schaub e297dfd3c1
EncryptionOptions: Consistent exceptions 2021-06-10 15:04:08 +02:00
Paul Schaub cc8a7826fc
Add KeyIdUtil with method to convert from 16 digit hex key-id to long 2021-06-10 13:36:44 +02:00
Paul Schaub f7525dde65
Add get{,Un}HashedNotationData(sig, notationName) to SignatureSubpacketUtils 2021-06-10 13:35:55 +02:00
Paul Schaub bedfef49fe
Add getSignatureDigestPrefix utility method to SignatureUtils 2021-06-10 13:35:09 +02:00
Paul Schaub 9b9064beae
Small code style fixes and optimizations 2021-06-10 12:42:48 +02:00
Paul Schaub 845779d40b
Avoid deprecated methods 2021-06-10 12:42:03 +02:00
Paul Schaub 27370fa925
Bump Bouncycastle to 1.69 2021-06-10 12:41:12 +02:00
Paul Schaub ce4869e15a
UnlockSecretKey: Do not try to get decryptor for unencrypted keys 2021-05-31 15:38:47 +02:00
Paul Schaub 73f6c54fa2
More documentation 2021-05-31 15:33:42 +02:00
Paul Schaub a871bc3a0c
Add documentation 2021-05-31 15:24:41 +02:00
Paul Schaub 1ad23366a7
Implement KeyRingInfo.getKeysWithFlag() and KeyRingInfo.getExpirationDateForUse() 2021-05-31 15:13:28 +02:00
Paul Schaub 8618d1faea
More tests 2021-05-31 13:59:56 +02:00
Paul Schaub ccdcd49c58
Remove deprecated method withMasterKey from KeyRingBuilderInterface 2021-05-30 18:05:09 +02:00