You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2017/11/02 07:21:06 UTC
svn commit: r1814042 -
/pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java
Author: tilman
Date: Thu Nov 2 07:21:06 2017
New Revision: 1814042
URL: http://svn.apache.org/viewvc?rev=1814042&view=rev
Log:
PDFBOX-1848: show timestamp
Modified:
pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java
Modified: pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java?rev=1814042&r1=1814041&r2=1814042&view=diff
==============================================================================
--- pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java (original)
+++ pdfbox/branches/2.0/examples/src/main/java/org/apache/pdfbox/examples/signature/ShowSignature.java Thu Nov 2 07:21:06 2017
@@ -47,6 +47,8 @@ import org.bouncycastle.cms.CMSSignedDat
import org.bouncycastle.cms.SignerInformation;
import org.bouncycastle.cms.jcajce.JcaSimpleSignerInfoVerifierBuilder;
import org.bouncycastle.operator.OperatorCreationException;
+import org.bouncycastle.tsp.TSPException;
+import org.bouncycastle.tsp.TimeStampToken;
import org.bouncycastle.util.Store;
import org.bouncycastle.util.StoreException;
@@ -74,10 +76,12 @@ public final class ShowSignature
* @throws java.security.InvalidKeyException
* @throws java.security.NoSuchProviderException
* @throws java.security.SignatureException
+ * @throws org.bouncycastle.tsp.TSPException
*/
public static void main(String[] args) throws IOException, CertificateException,
NoSuchAlgorithmException, InvalidKeyException,
- NoSuchProviderException, SignatureException
+ NoSuchProviderException, SignatureException,
+ TSPException
{
ShowSignature show = new ShowSignature();
show.showSignature( args );
@@ -85,7 +89,8 @@ public final class ShowSignature
private void showSignature(String[] args) throws IOException, CertificateException,
NoSuchAlgorithmException, InvalidKeyException,
- NoSuchProviderException, SignatureException
+ NoSuchProviderException, SignatureException,
+ TSPException
{
if( args.length != 2 )
{
@@ -189,6 +194,19 @@ public final class ShowSignature
//TODO verify signature
}
+ else if (subFilter.equals("ETSI.RFC3161"))
+ {
+ TimeStampToken timeStampToken = new TimeStampToken(new CMSSignedData(contents.getBytes()));
+ System.out.println("Time stamp gen time: " + timeStampToken.getTimeStampInfo().getGenTime());
+ System.out.println("Time stamp tsa name: " + timeStampToken.getTimeStampInfo().getTsa().getName());
+
+ CertificateFactory factory = CertificateFactory.getInstance("X.509");
+ ByteArrayInputStream certStream = new ByteArrayInputStream(contents.getBytes());
+ Collection<? extends Certificate> certs = factory.generateCertificates(certStream);
+ System.out.println("certs=" + certs);
+
+ //TODO verify signature
+ }
else
{
System.err.println("Unknown certificate type: " + subFilter);