Author: tilman
Date: Mon Jan 27 09:45:10 2025
New Revision: 1923393
URL: http://svn.apache.org/viewvc?rev=1923393&view=rev
Log:
PDFBOX-5941: isSelfSigned() should not throw an exception
Modified:
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
Modified:
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java?rev=1923393&r1=1923392&r2=1923393&view=diff
==============================================================================
---
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
(original)
+++
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
Mon Jan 27 09:45:10 2025
@@ -23,9 +23,7 @@ import java.io.IOException;
import java.io.InputStream;
import java.net.URISyntaxException;
import java.security.GeneralSecurityException;
-import java.security.InvalidKeyException;
import java.security.PublicKey;
-import java.security.SignatureException;
import java.security.cert.CertPathBuilder;
import java.security.cert.CertPathBuilderException;
import java.security.cert.CertStore;
@@ -263,10 +261,9 @@ public final class CertificateVerifier
/**
* Checks whether given X.509 certificate is self-signed.
* @param cert The X.509 certificate to check.
- * @return true if the certificate is self-signed, false if not.
- * @throws java.security.GeneralSecurityException
+ * @return true if the certificate is self-signed, false if error or not
self-signed.
*/
- public static boolean isSelfSigned(X509Certificate cert) throws
GeneralSecurityException
+ public static boolean isSelfSigned(X509Certificate cert)
{
try
{
@@ -275,7 +272,7 @@ public final class CertificateVerifier
cert.verify(key, SecurityProvider.getProvider());
return true;
}
- catch (SignatureException | InvalidKeyException ex)
+ catch (GeneralSecurityException | IllegalArgumentException ex)
{
// Invalid signature --> not self-signed
LOG.debug("Couldn't get signature information - returning false",
ex);
Modified:
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java?rev=1923393&r1=1923392&r2=1923393&view=diff
==============================================================================
---
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
(original)
+++
pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
Mon Jan 27 09:45:10 2025
@@ -233,14 +233,7 @@ public class CertInformationCollector
certInfo.crlUrl =
CertInformationHelper.getCrlUrlFromExtensionValue(crlExtensionValue);
}
- try
- {
- certInfo.isSelfSigned =
CertificateVerifier.isSelfSigned(certificate);
- }
- catch (GeneralSecurityException ex)
- {
- throw new CertificateProccessingException(ex);
- }
+ certInfo.isSelfSigned = CertificateVerifier.isSelfSigned(certificate);
if (maxDepth <= 0 || certInfo.isSelfSigned)
{
return;