Itsik Mauyhas
Itsik Mauyhas

Reputation: 3984

bouncycastle and iText versions

I am using iText 5.5.11 following digital-signatures-chapter. I have created my KeyStore - ks.jks file and added bouncycastle jar to my classpath.

Using bouncycastle 14-157(latest) version i got -

java.lang.ClassNotFoundException: org.bouncycastle.tsp.TimeStampTokenInfo

following TimeStampTokenInfo-class-not-found I tried to use bouncycastle 14-145 and this error:

java.lang.ClassNotFoundException: org.bouncycastle.jcajce.provider.digest.MD2$Digest

Anyone knows what else can I try?

The full error log:

Exception in thread "main" java.lang.NoClassDefFoundError: org/bouncycastle/jcajce/provider/digest/MD2$Digest
    at com.mataf.GenSig.PfxDS.sign(PfxDS.java:51)
    at com.mataf.GenSig.PfxDS.main(PfxDS.java:71)
Caused by: java.lang.ClassNotFoundException: org.bouncycastle.jcajce.provider.digest.MD2$Digest
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 2 more

Thanks.

Upvotes: 0

Views: 2577

Answers (1)

mkl
mkl

Reputation: 95918

A look at the iText 5.5.11 Maven pom.xml reveals:

  <dependencies>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcprov-jdk15on</artifactId>
      <version>1.49</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcpkix-jdk15on</artifactId>
      <version>1.49</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.8.2</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.santuario</groupId>
      <artifactId>xmlsec</artifactId>
      <version>1.5.1</version>
      <optional>true</optional>
    </dependency>
  </dependencies>

Thus, iText is compiled using the Java version 5-8 version of BouncyCastle version 1.49.

Upvotes: 5

Related Questions