Decoding clear-signed data
See below for decoding clear-signed data.
Creating the decoder
Create a PKCS7DecodeStream object.
PKCS7DecodeStream decoder = new PKCS7DecodeStream(user, new FileInputStream(<unencrypted_data>), new FileInputStream(<digital_signature>));Where <digital_signature> is the source of the signed data.
Decoding the data
Use the decoder to decrypt the encrypted and signed data.
byte[] b = new byte[128];int i = decoder.read(b);while (i >= 0){ i = decoder.read(b);}Optionally, obtain information about the signatures.
int no_of_signatures = decoder.getNumberOfSignatures();for (int n = 0; n & < ; no_of_signatures; ++n;) { System.out.println("Signature: " + n); System.out.println("Digest algorithm: " + decoder.getDigestAlgorithm(n)); System.out.println("Signer certificate: " + decoder.getSignerCertificate(n).getSubjectDN().getName()); System.out.println(decoder.getSignerInfo(n).toString());}