7b76a9162d
Add Pushdown Automaton for checking OpenPGP message syntax
...
The automaton implements what is described in
https://github.com/pgpainless/pgpainless/blob/main/misc/OpenPGPMessageFormat.md
However, some differences exist to adopt it to BouncyCastle
Part of #237
2022-11-03 11:53:42 +01:00
f5e4c7571c
Bump BC to 1.72, BCPG to 1.72.1
2022-11-02 10:53:53 +01:00
754fcf72a1
Implement ProducerOptions.setHideArmorHeaders()
...
Fixes #328
2022-10-31 11:43:24 +01:00
8834d8ad10
Increase timeframe for some tests which check expiration dates
2022-10-18 15:13:49 +02:00
f94917d01f
Fix checkstyle issue
2022-09-28 13:18:34 +02:00
6a2a604ba4
Update TODO for BC 173
2022-09-27 16:47:23 +02:00
d74a8d0408
Add PGPainless.asciiArmor(PGPSignature)
2022-09-27 16:28:31 +02:00
dac059c702
Add test for PGPainless.asciiArmor(key, stream)
2022-09-27 16:17:22 +02:00
5bccc1960e
Add PGPainless.asciiArmor(key, outputStream)
2022-09-27 16:12:26 +02:00
639d2a19f8
Remove unused provideSessionKeyDataDecryptorFactory() methods
2022-09-13 20:27:16 +02:00
609bb4556a
Use ImplementationFactory.getSessionKeyDataDecryptorFactory() method
2022-09-13 20:26:13 +02:00
0e45de9b4a
Formatting
2022-09-13 20:23:06 +02:00
9e403c1124
Add ImplementationFactory.getSessionKeyDataDecryptorFactory() and impls
2022-09-13 20:22:53 +02:00
8dfabf1842
Test decryption of messages using Session Key
2022-09-12 15:26:06 +02:00
7480c47fa7
Add behavior test to ensure that ArmoredInputStream cuts away any data outside of the armor
2022-09-08 18:15:52 +02:00
31c4570d10
Move finalization of signatures into own method
2022-09-07 13:48:59 +02:00
0dd54f27b7
Add test for processing message byte by byte
2022-09-05 15:43:32 +02:00
0bafc410a0
Add missing parseAndCombineSignatures call
...
For some reason this was missing from the single-byte read() method
of the SignatureInputStream, causing issues if draining the stream
byte by byte
2022-09-05 15:41:58 +02:00
9106d98449
Add tests for Certificate merging
2022-09-05 15:25:29 +02:00
cd0b9603e7
Add KeyRingUtils.injectCertification(keys, certification)
2022-09-05 15:15:58 +02:00
5be42b22bd
Add test for KeyRingUtils.keysPlusPublicKey
2022-09-05 14:45:22 +02:00
4ec38bb63b
Add tests for ArmoredInputStreamFactory
2022-09-05 14:37:23 +02:00
70ce4d45f4
Remove unused CRCinArmoredInputStreamWrapper.possiblyWrap()
2022-09-05 14:20:11 +02:00
3a33bb126a
Add RNGPerformanceTest to help diagnose performance bottlenecks
...
Related to https://github.com/pgpainless/pgpainless/issues/309
2022-09-03 14:24:37 +02:00
3cd5a95d89
Rename inspectionDate to referenceTime
2022-09-03 13:48:02 +02:00
7189516dd4
Add documentation for modifyKeyRing(keys, date)
2022-09-03 13:46:32 +02:00
c3dc3c9d87
Allow modification of keys with custom reference date
...
Also, bind subkeys using SubkeyBindingSignatureBuilder
2022-09-03 13:42:58 +02:00
15046cdc32
Switch default S2K for secret key protection over to use SHA256 and add documentation
2022-08-31 21:37:31 +02:00
c6676d3c91
Add support for generating keys without user-ids
...
Fixes #296
2022-08-29 14:12:02 +02:00
bc24c4626a
Add ConsumerOptions.get() factory method
2022-08-29 13:00:50 +02:00
5746985bb7
Add EncryptionOptions.get() factory method
2022-08-29 12:46:36 +02:00
d1001412a1
Add SigningOptions.addDetachedSignature(protector, key) shortcut method
2022-08-29 12:36:16 +02:00
39ff2bca73
Fix javadoc of SigningOptions methods
2022-08-29 12:35:51 +02:00
1b04d67e1a
Remove unused SignatureSubpacketGeneratorUtil class and tests
2022-08-29 11:30:26 +02:00
0cc884523c
Integrate RevocationState into KeyRingInfo class
2022-08-29 11:30:10 +02:00
c73905d179
Import RevocationStateTest from wot branch
2022-08-29 11:12:42 +02:00
d019c0d5db
Add RevocationState implementation from wot branch
2022-08-29 11:09:32 +02:00
405e67c0cb
Add documentation to AlgorithmNegotiator classes
2022-08-29 11:06:17 +02:00
7faa6c580a
Remove deprecated ArmorUtils.createArmoredOutputStream()
2022-08-29 10:38:44 +02:00
054828ef8c
Remove deprecated EncryptionResult.getSymmetricKeyAlgorithm()
...
Use getEncryptionAlgorithm() instead
2022-08-29 10:37:55 +02:00
bc5dc50b78
Add KeyRingInfo.isSigningCapable()
...
Fixes #307
2022-08-09 15:08:59 +02:00
b9845912ee
Add tests for readKeyRing()
2022-08-08 13:20:28 +02:00
e6b89e2c3b
Add KeyRingReader.keyRing(*) mnethods to read either a public or secret key ring
2022-08-08 13:15:03 +02:00
ca09ac62ca
KeyRingInfo.isUsableFor*(): Check if primary key is revoked
2022-08-03 13:37:18 +02:00
c1de66e1d7
Fix javadoc lying about only encrypting to single subkeys
...
Fixes #305
2022-08-02 16:53:01 +02:00
895fcced9a
Add gradle CI action
2022-07-22 20:21:02 +02:00
cb23cad625
Fix checkstyle issues and java API compatibility
2022-07-22 13:59:15 +02:00
Jérôme Charaoui
5a86d9db62
Fix tests that read from jar-embedded resources
...
It seems that none of the functions used here actually require a File
object as arguments, and will happily work on InputStream objects.
This also changes readFromResource() to use InputStream.readAllBytes()
instead of File.readAllBytes(), which is available from Java 9.
2022-07-22 13:55:05 +02:00
c4bffad478
Abort (skip) tests reading from resources
2022-07-21 21:34:44 +02:00
f966c1ed07
Explicitly cast Long to long to fix ambiguity in debian tests
2022-07-20 18:07:42 +02:00