Záhada spočívá v tom, že u mě na stanici vidím, že podpis je neplatný: "Vybraný certifikát má chyby: Neplatné omezení zásad": kdežto Ostatní kolegové ve firmě ho vidí jako platný.
Poradíte někdo ? Díky.
- Kód: Vybrat vše
File inFile = new File(cesta_pdf);
FileInputStream fin = new FileInputStream(inFile);
PdfReader reader;
reader = new PdfReader(fin);
KeyStore ks = KeyStore.getInstance("pkcs12");
ks.load(new FileInputStream(path_pkx), certPass.toCharArray());
String alias = (String)ks.aliases().nextElement();
PrivateKey key = (PrivateKey)ks.getKey(alias, certPass.toCharArray());
Certificate[] chain = ks.getCertificateChain(alias);
FileOutputStream fout = new FileOutputStream("c:\\vystup\\signed.pdf");
PdfStamper stp = PdfStamper.createSignature(reader, fout, '\0');
PdfSignatureAppearance sap = stp.getSignatureAppearance();
sap.setLayer2Font(new Font(BaseFont.createFont(BaseFont.TIMES_ROMAN, "Cp1250", true)));
sap.setCrypto(key, chain, null, PdfSignatureAppearance.WINCER_SIGNED);
int x = 100;
int y = 780;
int s = 60;
sap.setVisibleSignature(new Rectangle(x, y, x+s, y + s), 1, null);
stp.close();
fin.close();
fout.close();