|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.gudy.bouncycastle.jce.PKCS7SignedData
public class PKCS7SignedData
Represents a PKCS#7 object - specifically the "Signed Data" type.
How to use it? To verify a signature, do:
PKCS7SignedData pkcs7 = new PKCS7SignedData(der_bytes); // Create it pkcs7.update(bytes, 0, bytes.length); // Update checksum boolean verified = pkcs7.verify(); // Does it add up? To sign, do this: PKCS7SignedData pkcs7 = new PKCS7SignedData(privKey, certChain, "MD5"); pkcs7.update(bytes, 0, bytes.length); // Update checksum pkcs7.sign(); // Create digest bytes = pkcs7.getEncoded(); // Write it somewhere
This class is pretty close to obsolete, for a much better (and more complete) implementation of PKCS7 have a look at the org.gudy.bouncycastle.cms package.
Field Summary |
---|
Constructor Summary | |
---|---|
PKCS7SignedData(byte[] in)
Read an existing PKCS#7 object from a DER encoded byte array using the BC provider. |
|
PKCS7SignedData(byte[] in,
java.lang.String provider)
Read an existing PKCS#7 object from a DER encoded byte array |
|
PKCS7SignedData(java.security.PrivateKey privKey,
java.security.cert.Certificate[] certChain,
java.security.cert.CRL[] crlList,
java.lang.String hashAlgorithm,
java.lang.String provider)
Create a new PKCS#7 object from the specified key. |
|
PKCS7SignedData(java.security.PrivateKey privKey,
java.security.cert.Certificate[] certChain,
java.lang.String hashAlgorithm)
Create a new PKCS#7 object from the specified key using the BC provider. |
|
PKCS7SignedData(java.security.PrivateKey privKey,
java.security.cert.Certificate[] certChain,
java.lang.String hashAlgorithm,
java.lang.String provider)
Create a new PKCS#7 object from the specified key. |
Method Summary | |
---|---|
java.security.cert.Certificate[] |
getCertificates()
Get the X.509 certificates associated with this PKCS#7 object |
java.util.Collection |
getCRLs()
Get the X.509 certificate revocation lists associated with this PKCS#7 object |
java.lang.String |
getDigestAlgorithm()
Get the algorithm used to calculate the message digest |
byte[] |
getEncoded()
return the bytes for the PKCS7SignedData object. |
java.security.cert.X509Certificate |
getSigningCertificate()
Get the X.509 certificate actually used to sign the digest. |
int |
getSigningInfoVersion()
Get the version of the PKCS#7 "SignerInfo" object. |
int |
getVersion()
Get the version of the PKCS#7 object. |
void |
reset()
Resets the PKCS7SignedData object to it's initial state, ready to sign or verify a new buffer. |
void |
update(byte buf)
Update the digest with the specified byte. |
void |
update(byte[] buf,
int off,
int len)
Update the digest with the specified bytes. |
boolean |
verify()
Verify the digest |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public PKCS7SignedData(byte[] in) throws java.lang.SecurityException, java.security.cert.CRLException, java.security.InvalidKeyException, java.security.cert.CertificateException, java.security.NoSuchProviderException, java.security.NoSuchAlgorithmException
java.lang.SecurityException
java.security.cert.CRLException
java.security.InvalidKeyException
java.security.cert.CertificateException
java.security.NoSuchProviderException
java.security.NoSuchAlgorithmException
public PKCS7SignedData(byte[] in, java.lang.String provider) throws java.lang.SecurityException, java.security.cert.CRLException, java.security.InvalidKeyException, java.security.cert.CertificateException, java.security.NoSuchProviderException, java.security.NoSuchAlgorithmException
java.lang.SecurityException
java.security.cert.CRLException
java.security.InvalidKeyException
java.security.cert.CertificateException
java.security.NoSuchProviderException
java.security.NoSuchAlgorithmException
public PKCS7SignedData(java.security.PrivateKey privKey, java.security.cert.Certificate[] certChain, java.lang.String hashAlgorithm) throws java.lang.SecurityException, java.security.InvalidKeyException, java.security.NoSuchProviderException, java.security.NoSuchAlgorithmException
the
- private key to be used for signing.the
- certifiacate chain associated with the private key.hashAlgorithm
- the hashing algorithm used to compute the message digest. Must be "MD5", "MD2", "SHA1" or "SHA"
java.lang.SecurityException
java.security.InvalidKeyException
java.security.NoSuchProviderException
java.security.NoSuchAlgorithmException
public PKCS7SignedData(java.security.PrivateKey privKey, java.security.cert.Certificate[] certChain, java.lang.String hashAlgorithm, java.lang.String provider) throws java.lang.SecurityException, java.security.InvalidKeyException, java.security.NoSuchProviderException, java.security.NoSuchAlgorithmException
privKey
- the private key to be used for signing.certChain
- the certificate chain associated with the private key.hashAlgorithm
- the hashing algorithm used to compute the message digest. Must be "MD5", "MD2", "SHA1" or "SHA"provider
- the provider to use.
java.lang.SecurityException
java.security.InvalidKeyException
java.security.NoSuchProviderException
java.security.NoSuchAlgorithmException
public PKCS7SignedData(java.security.PrivateKey privKey, java.security.cert.Certificate[] certChain, java.security.cert.CRL[] crlList, java.lang.String hashAlgorithm, java.lang.String provider) throws java.lang.SecurityException, java.security.InvalidKeyException, java.security.NoSuchProviderException, java.security.NoSuchAlgorithmException
privKey
- the private key to be used for signing.certChain
- the certificate chain associated with the private key.crlList
- the crl list associated with the private key.hashAlgorithm
- the hashing algorithm used to compute the message digest. Must be "MD5", "MD2", "SHA1" or "SHA"provider
- the provider to use.
java.lang.SecurityException
java.security.InvalidKeyException
java.security.NoSuchProviderException
java.security.NoSuchAlgorithmException
Method Detail |
---|
public java.lang.String getDigestAlgorithm()
public void reset()
public java.security.cert.Certificate[] getCertificates()
public java.util.Collection getCRLs()
public java.security.cert.X509Certificate getSigningCertificate()
public int getVersion()
public int getSigningInfoVersion()
public void update(byte buf) throws java.security.SignatureException
java.security.SignatureException
public void update(byte[] buf, int off, int len) throws java.security.SignatureException
java.security.SignatureException
public boolean verify() throws java.security.SignatureException
java.security.SignatureException
public byte[] getEncoded()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |