Author: tilman
Date: Mon Jan 27 09:45:19 2025
New Revision: 1923395
URL: http://svn.apache.org/viewvc?rev=1923395&view=rev
Log:
PDFBOX-5941: isSelfSigned() should not throw an exception
Modified:
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
Modified:
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
URL:
http://svn.apache.org/viewvc/pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java?rev=1923395&r1=1923394&r2=1923395&view=diff
==============================================================================
---
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
(original)
+++
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/cert/CertificateVerifier.java
Mon Jan 27 09:45:19 2025
@@ -22,9 +22,7 @@ package org.apache.pdfbox.examples.signa
import java.io.IOException;
import java.io.InputStream;
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;
@@ -268,10 +266,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
{
@@ -280,13 +277,13 @@ public final class CertificateVerifier
cert.verify(key, SecurityProvider.getProvider().getName());
return true;
}
- catch (SignatureException ex)
+ catch (GeneralSecurityException ex)
{
// Invalid signature --> not self-signed
LOG.debug("Couldn't get signature information - returning false",
ex);
return false;
}
- catch (InvalidKeyException ex)
+ catch (IllegalArgumentException ex)
{
// Invalid signature --> not self-signed
LOG.debug("Couldn't get signature information - returning false",
ex);
Modified:
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
URL:
http://svn.apache.org/viewvc/pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java?rev=1923395&r1=1923394&r2=1923395&view=diff
==============================================================================
---
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
(original)
+++
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/validation/CertInformationCollector.java
Mon Jan 27 09:45:19 2025
@@ -235,14 +235,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;