org.bouncycastle.mail.smime
Class SMIMESignedParser
public class SMIMESignedParser
general class for handling a pkcs7-signature message.
A simple example of usage - note, in the example below the validity of
the certificate isn't verified, just the fact that one of the certs
matches the given signer...
CertStore certs = s.getCertificates("Collection", "BC");
SignerInformationStore signers = s.getSignerInfos();
Collection c = signers.getSigners();
Iterator it = c.iterator();
while (it.hasNext())
{
SignerInformation signer = (SignerInformation)it.next();
Collection certCollection = certs.getCertificates(signer.getSID());
Iterator certIt = certCollection.iterator();
X509Certificate cert = (X509Certificate)certIt.next();
if (signer.verify(cert.getPublicKey()))
{
verified++;
}
}
Note: if you are using this class with AS2 or some other protocol
that does not use 7bit as the default content transfer encoding you
will need to use the constructor that allows you to specify the default
content transfer encoding, such as "binary".
SMIMESignedParser(MimeMultipart message) - base constructor using a defaultContentTransferEncoding of 7bit.
|
SMIMESignedParser(MimeMultipart message, File backingFile) - base constructor using a defaultContentTransferEncoding of 7bit and a specified backing file.
|
SMIMESignedParser(MimeMultipart message, String defaultContentTransferEncoding) - base constructor with settable contentTransferEncoding.
|
SMIMESignedParser(MimeMultipart message, String defaultContentTransferEncoding, File backingFile) - base constructor with settable contentTransferEncoding and a specified backing file.
|
SMIMESignedParser(Part message) - base constructor for a signed message with encapsulated content.
|
SMIMESignedParser(Part message, File file) - Constructor for a signed message with encapsulated content.
|
SMIMESignedParser
public SMIMESignedParser(MimeMultipart message)
throws MessagingException,
CMSException
base constructor using a defaultContentTransferEncoding of 7bit. A temporary backing file
will be created for the signed data.
message
- signed message with signature.
SMIMESignedParser
public SMIMESignedParser(MimeMultipart message,
File backingFile)
throws MessagingException,
CMSException
base constructor using a defaultContentTransferEncoding of 7bit and a specified backing file.
message
- signed message with signature.backingFile
- the temporary file to use to back the signed data.
SMIMESignedParser
public SMIMESignedParser(MimeMultipart message,
String defaultContentTransferEncoding)
throws MessagingException,
CMSException
base constructor with settable contentTransferEncoding. A temporary backing file will be created
to contain the signed data.
message
- the signed message with signature.defaultContentTransferEncoding
- new default to use.
SMIMESignedParser
public SMIMESignedParser(MimeMultipart message,
String defaultContentTransferEncoding,
File backingFile)
throws MessagingException,
CMSException
base constructor with settable contentTransferEncoding and a specified backing file.
message
- the signed message with signature.defaultContentTransferEncoding
- new default to use.backingFile
- the temporary file to use to back the signed data.
SMIMESignedParser
public SMIMESignedParser(Part message)
throws MessagingException,
CMSException,
SMIMEException
base constructor for a signed message with encapsulated content.
Note: in this case the encapsulated MimeBody part will only be suitable for a single
writeTo - once writeTo has been called the file containing the body part will be deleted.
message
- the message containing the encapsulated signed data.
SMIMESignedParser
public SMIMESignedParser(Part message,
File file)
throws MessagingException,
CMSException,
SMIMEException
Constructor for a signed message with encapsulated content. The encapsulated
content, if it exists, is written to the file represented by the File object
passed in.
message
- the Part containing the signed content.file
- the file the encapsulated part is to be written to after it has been decoded.
getContent
public MimeBodyPart getContent()
return the content that was signed.
- the signed body part in this message.
getContentAsMimeMessage
public MimeMessage getContentAsMimeMessage(Session session)
throws MessagingException,
IOException
Return the content that was signed as a mime message.
session
- the session to base the MimeMessage around.
- a MimeMessage holding the content.
getContentWithSignature
public Object getContentWithSignature()
return the content that was signed with its signature attached.
- depending on whether this was unencapsulated or not it will return a MimeMultipart
or a MimeBodyPart