Laboratório para realizar/validar assinaturas de documentos.
Exemplo de geração de certificado no computador local.
$ keytool -genkeypair -storepass 123456 -storetype pkcs12 -alias test -validity 365 -v -keyalg RSA -keystore keystore.p12
Principais bibliotecas utilizadas. Conferir o arquivo pom.xml.
- org.apache.pdfbox: pdfbox
- com.itextpdf: itextpdf
- org.bouncycastle: bcprov-jdk15on e bcpkix-jdk15on
O iText precisa do BouncyCastle para realizar análise das assinaturas e certificados e calcular valores de hash.
Exemplo de criação do provider do BouncyCastle:
import java.security.Security;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
// demais código ...
BouncyCastleProvider provider = new BouncyCastleProvider();
Security.addProvider(provider);