From 873ca84af8f1d4567f21d4ee098c439f3c83e194 Mon Sep 17 00:00:00 2001 From: Paul Schaub Date: Fri, 7 Jul 2023 12:34:16 +0200 Subject: [PATCH] Bump PGPainless dependencies Bump pgpainless-core to 1.5.6 Bump cert-d-pgpainless to 0.2.2 Bump cert-d-java to 0.2.2 --- CHANGELOG.md | 6 +++--- version.gradle | 6 +++--- .../java/pgp/wkd/cli/PGPainlessCertificateParser.java | 9 ++++++--- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c04805c..82c97ae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,9 +7,9 @@ SPDX-License-Identifier: Apache-2.0 # Changelog ## 0.1.2-SNAPSHOT -- Bump `pgpainless-core` to `1.13.2` -- Bump `cert-d-pgpainless` to `0.2.1` -- Bump `cert-d-java` to `0.2.1` +- Bump `pgpainless-core` to `1.5.6` +- Bump `cert-d-pgpainless` to `0.2.2` +- Bump `cert-d-java` to `0.2.2` ## 0.1.1 - Bump `pgpainless-core` to `1.2.1` diff --git a/version.gradle b/version.gradle index 6e2a3c4..204027e 100644 --- a/version.gradle +++ b/version.gradle @@ -16,10 +16,10 @@ allprojects { slf4jVersion = '1.7.36' logbackVersion = '1.2.11' mockitoVersion = '4.5.1' - pgpainlessVersion = '1.3.12' - pgpainlessCertDVersion = '0.2.1' + pgpainlessVersion = '1.5.6' + pgpainlessCertDVersion = '0.2.2' picocliVersion = '4.6.3' - certDJavaVersion = '0.2.1' + certDJavaVersion = '0.2.2' zbase32Version = '1.0.0' } } diff --git a/wkd-java-cli/src/main/java/pgp/wkd/cli/PGPainlessCertificateParser.java b/wkd-java-cli/src/main/java/pgp/wkd/cli/PGPainlessCertificateParser.java index 15a89fa..245ca33 100644 --- a/wkd-java-cli/src/main/java/pgp/wkd/cli/PGPainlessCertificateParser.java +++ b/wkd-java-cli/src/main/java/pgp/wkd/cli/PGPainlessCertificateParser.java @@ -6,9 +6,9 @@ package pgp.wkd.cli; import org.bouncycastle.openpgp.PGPException; import org.bouncycastle.openpgp.PGPPublicKeyRing; -import org.bouncycastle.openpgp.PGPPublicKeyRingCollection; import org.pgpainless.PGPainless; import org.pgpainless.certificate_store.CertificateFactory; +import org.pgpainless.key.collection.PGPKeyRingCollection; import org.pgpainless.key.info.KeyRingInfo; import pgp.certificate_store.certificate.Certificate; import pgp.wkd.CertificateAndUserIds; @@ -24,8 +24,11 @@ public class PGPainlessCertificateParser implements CertificateParser { public List read(InputStream inputStream) throws IOException { List certificatesAndUserIds = new ArrayList<>(); try { - PGPPublicKeyRingCollection certificates = PGPainless.readKeyRing().publicKeyRingCollection(inputStream); - for (PGPPublicKeyRing certificate : certificates) { + PGPKeyRingCollection keyMaterial = PGPainless.readKeyRing().keyRingCollection(inputStream, true); + if (keyMaterial.getPGPSecretKeyRingCollection().size() != 0) { + throw new PGPException("Secret key material encountered!"); + } + for (PGPPublicKeyRing certificate : keyMaterial.getPgpPublicKeyRingCollection()) { KeyRingInfo info = PGPainless.inspectKeyRing(certificate); Certificate parsedCert = CertificateFactory.certificateFromPublicKeyRing(certificate, 0L); List userIds = info.getValidAndExpiredUserIds();