I am glad that this issue was mentioned because I had the same problem,
not with argument exception but understanding how it was to be dimensioned.

>The easiest way is to create a dummy signature and look at the generated byte 
>length.

Paulo,
Don't take it personal but this seems like rather a crummy solution compared to
other crypto APIs.  That a too large argument gives an error is IMHO a bug.

My suggestion is that you document minimum sizes but handle oversized
arguments automatically in a future version of iText.

Another passibility is introducing another method which does not require
any dimensioned arguments at all.  I get a bit "C-sick" when I have to
reserve buffer-space for internal operations in a java program...

I love iText BTW!

best
Anders Rundgren


>
> Paulo Soares wrote:
> > Replace "new byte[128]" with "new byte[256]".
> >
> > Paulo
> >
> >> -----Original Message-----
> >> From: [EMAIL PROTECTED]
> >> [mailto:[EMAIL PROTECTED] On
> >> Behalf Of Android Andrew [:]
> >> Sent: Friday, September 15, 2006 12:42 PM
> >> To: [email protected]
> >> Subject: [iText-questions] IllegalArgumentException: The key
> >> /Contents istoo big. (RSA 2k ???)
> >>
> >> Hello everybody!
> >>
> >> I've faced with problem similar to described here:
> >> 26 Oct 2005
> >> http://www.mail-archive.com/[EMAIL PROTECTED]
> >> net/msg19419.html
> >>
> >> If I'm using 1k length private key, everything is Ok, but
> if I try to
> >> use 2k length key, I get this:
> >>
> >> Exception in thread "main"
> >> java.lang.IllegalArgumentException: The key
> >> /Contents is too big. Is 522, reserved 264
> >>          at
> >> com.lowagie.text.pdf.PdfSignatureAppearance.close(PdfSignature
> >> Appearance.java:1040)
> >>
> >> My code is based on receipt from
> >> http://itextpdf.sourceforge.net/howtosign.html#signextstd
> >>
> >> Does anybody faced with such problem or knew how to deal with it?
> >>
> >>
> >>
> >> Here is a part of my code:
> >>
> >> ....
> >>              KeyStore ks = KeyStore.getInstance("pkcs12");
> >>              ks.load(new FileInputStream(KeyFileName),
> >> Pass.toCharArray());
> >>              String alias = (String) ks.aliases().nextElement();
> >>              PrivateKey key =
> >> (PrivateKey)ks.getKey(alias,Pass.toCharArray());
> >>              Certificate[] chain = ks.getCertificateChain(alias);
> >>              PdfReader reader = new PdfReader(InFileName);
> >>              FileOutputStream fout = new
> >> FileOutputStream(OutFileName);
> >>              PdfStamper stp =
> >> PdfStamper.createSignature(reader,fout,'\0');
> >>              PdfSignatureAppearance sap =
> >> stp.getSignatureAppearance();
> >>              sap.setCrypto(key,chain, null,
> >> PdfSignatureAppearance.SELF_SIGNED);
> >>              sap.setReason(Reason);
> >>              sap.setLocation(Location);
> >>              if (isVisible)
> >>                  sap.setVisibleSignature(new
> >> Rectangle(475,15,575,115),
> >> 1, null);
> >>              sap.setExternalDigest(new byte[128], null, "RSA");
> >>              sap.preClose();
> >>              PdfPKCS7 sig = sap.getSigStandard().getSigner();
> >>              Signature sign = Signature.getInstance("SHA1withRSA");
> >>              sign.initSign(key);
> >>              byte buf[] = new byte[8192];
> >>              int n;
> >>              InputStream inp = sap.getRangeStream();
> >>              while ((n = inp.read(buf)) > 0) {
> >>                  sign.update(buf,0,n);
> >>              }
> >>              sig.setExternalDigest(sign.sign(), null, "RSA");
> >>              PdfDictionary dic = new PdfDictionary();
> >>              dic.put(PdfName.CONTENTS, new
> >> PdfString(sig.getEncodedPKCS1()).setHexWriting(true));
> >>              sap.setCertified(true);
> >>              sap.close(dic);
> >> ...
> >>
> >>
> >> --------------------------------------------------------------
> >> -----------
> >> Using Tomcat but need to do more? Need to support web
> >> services, security?
> >> Get stuff done quickly with pre-integrated technology to make
> >> your job easier
> >> Download IBM WebSphere Application Server v.1.0.1 based on
> >> Apache Geronimo
> >> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&;
> >> dat=121642
> >> _______________________________________________
> >> iText-questions mailing list
> >> [email protected]
> >> https://lists.sourceforge.net/lists/listinfo/itext-questions
> >>
> >
> >
> > Aviso Legal:
> > Esta mensagem é destinada exclusivamente ao destinatário.
> Pode conter informação confidencial ou legalmente protegida.
> A incorrecta transmissão desta mensagem não significa a perca
> de confidencialidade. Se esta mensagem for recebida por
> engano, por favor envie-a de volta para o remetente e
> apague-a do seu sistema de imediato. É proibido a qualquer
> pessoa que não o destinatário de usar, revelar ou distribuir
> qualquer parte desta mensagem.
> >
> > Disclaimer:
> > This message is destined exclusively to the intended
> receiver. It may contain confidential or legally protected
> information. The incorrect transmission of this message does
> not mean the loss of its confidentiality. If this message is
> received by mistake, please send it back to the sender and
> delete it from your system immediately. It is forbidden to
> any person who is not the intended receiver to use,
> distribute or copy any part of this message.
> >
> >
> >
> >
> >
> --------------------------------------------------------------
> ----------
> >
> >
> --------------------------------------------------------------
> -----------
> > Using Tomcat but need to do more? Need to support web
> services, security?
> > Get stuff done quickly with pre-integrated technology to
> make your job easier
> > Download IBM WebSphere Application Server v.1.0.1 based on
> Apache Geronimo
> >
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&;
> dat=121642
> >
> >
> >
> --------------------------------------------------------------
> ----------
> >
> > _______________________________________________
> > iText-questions mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/itext-questions
>
> --------------------------------------------------------------
> -----------
> Using Tomcat but need to do more? Need to support web
> services, security?
> Get stuff done quickly with pre-integrated technology to make
> your job easier
> Download IBM WebSphere Application Server v.1.0.1 based on
> Apache Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&;
> dat=121642
> _______________________________________________
> iText-questions mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/itext-questions
>


Aviso Legal:
Esta mensagem é destinada exclusivamente ao destinatário. Pode conter 
informação confidencial ou legalmente protegida. A incorrecta
transmissão desta mensagem não significa a perca de confidencialidade. Se esta 
mensagem for recebida por engano, por favor envie-a
de volta para o remetente e apague-a do seu sistema de imediato. É proibido a 
qualquer pessoa que não o destinatário de usar,
revelar ou distribuir qualquer parte desta mensagem.

Disclaimer:
This message is destined exclusively to the intended receiver. It may contain 
confidential or legally protected information. The
incorrect transmission of this message does not mean the loss of its 
confidentiality. If this message is received by mistake, please
send it back to the sender and delete it from your system immediately. It is 
forbidden to any person who is not the intended
receiver to use, distribute or copy any part of this message.

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions

Reply via email to