org.bouncycastle.mail.smime
Class SMIMESigned
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".
SMIMESigned(MimeMultipart message) - base constructor using a defaultContentTransferEncoding of 7bit
|
SMIMESigned(MimeMultipart message, String defaultContentTransferEncoding) - base constructor with settable contentTransferEncoding
|
SMIMESigned(Part message) - base constructor for a signed message with encapsulated content.
|
MimeBodyPart | getContent() - return the content that was signed.
|
MimeMessage | getContentAsMimeMessage(Session session) - Return the content that was signed as a mime message.
|
Object | getContentWithSignature() - return the content that was signed - depending on whether this was
unencapsulated or not it will return a MimeMultipart or a MimeBodyPart
|
SMIMESigned
public SMIMESigned(MimeMultipart message)
throws MessagingException,
CMSException
base constructor using a defaultContentTransferEncoding of 7bit
CMSException
- if some other problem occurs.
SMIMESigned
public SMIMESigned(MimeMultipart message,
String defaultContentTransferEncoding)
throws MessagingException,
CMSException
base constructor with settable contentTransferEncoding
message
- the signed messagedefaultContentTransferEncoding
- new default to use
CMSException
- if some other problem occurs.
SMIMESigned
public SMIMESigned(Part message)
throws MessagingException,
CMSException,
SMIMEException
base constructor for a signed message with encapsulated content.
SMIMEException
- if the body part encapsulated in the message cannot be extracted.CMSException
- if some other problem occurs.
getContent
public MimeBodyPart getContent()
return the content that was signed.
getContentAsMimeMessage
public MimeMessage getContentAsMimeMessage(Session session)
throws MessagingException,
IOException
Return the content that was signed as a mime message.
session
-
- a MimeMessage holding the content.
getContentWithSignature
public Object getContentWithSignature()
return the content that was signed - depending on whether this was
unencapsulated or not it will return a MimeMultipart or a MimeBodyPart