public class SMIMESigned extends CMSSignedData
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".
Constructor and Description |
---|
SMIMESigned(javax.mail.internet.MimeMultipart message)
base constructor using a defaultContentTransferEncoding of 7bit
|
SMIMESigned(javax.mail.internet.MimeMultipart message,
String defaultContentTransferEncoding)
base constructor with settable contentTransferEncoding
|
SMIMESigned(javax.mail.Part message)
base constructor for a signed message with encapsulated content.
|
Modifier and Type | Method and Description |
---|---|
javax.mail.internet.MimeBodyPart |
getContent()
return the content that was signed.
|
javax.mail.internet.MimeMessage |
getContentAsMimeMessage(javax.mail.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
|
getAttributeCertificates, getAttributeCertificates, getAttributeCertificates, getCertificates, getCertificates, getCertificates, getCertificatesAndCRLs, getCertificatesAndCRLs, getContentInfo, getCRLs, getCRLs, getCRLs, getEncoded, getSignedContent, getSignedContentTypeOID, getSignerInfos, getVersion, replaceCertificatesAndCRLs, replaceCertificatesAndCRLs, replaceSigners
public SMIMESigned(javax.mail.internet.MimeMultipart message) throws javax.mail.MessagingException, CMSException
javax.mail.MessagingException
- on an error extracting the signature or
otherwise processing the message.CMSException
- if some other problem occurs.public SMIMESigned(javax.mail.internet.MimeMultipart message, String defaultContentTransferEncoding) throws javax.mail.MessagingException, CMSException
message
- the signed messagedefaultContentTransferEncoding
- new default to usejavax.mail.MessagingException
- on an error extracting the signature or
otherwise processing the message.CMSException
- if some other problem occurs.public SMIMESigned(javax.mail.Part message) throws javax.mail.MessagingException, CMSException, SMIMEException
javax.mail.MessagingException
- on an error extracting the signature or
otherwise processing the message.SMIMEException
- if the body part encapsulated in the message cannot be extracted.CMSException
- if some other problem occurs.public javax.mail.internet.MimeBodyPart getContent()
public javax.mail.internet.MimeMessage getContentAsMimeMessage(javax.mail.Session session) throws javax.mail.MessagingException, IOException
session
- javax.mail.MessagingException
IOException
public Object getContentWithSignature()
Copyright © 2015. All rights reserved.