com.rsa.certj.cert.attributes

Class MessageDigest

java.lang.Object
  |
  +--com.rsa.certj.cert.attributes.X501Attribute
        |
        +--com.rsa.certj.cert.attributes.MessageDigest
All Implemented Interfaces:
Cloneable, Serializable

public class MessageDigest
extends X501Attribute
implements Cloneable, Serializable

This class holds, encodes, and decodes the message digest attribute, which is defined in PKCS #9 v2. The message-digest attribute type is used in PKCS #7 digitally signed data. It specifies the message digest of the contents’ octets of the DER encoding. The DER encoding is computed on the content field of the ContentInfo value that is being signed. The data is signed according to the PKCS #7 rules, using the signer’s message-digest algorithm. The message-digest attribute type is required if there are any PKCS #7 authenticated attributes. It can be created by the user. If other authenticated attributes are present in a PKCS #7 signed data message that the user is creating, Cert-J adds this attribute with the correct value to the authenticated attributes, if it is not already present.

The PKCS #7 attribute is defined as follows:

     MessageDigest ::= OCTET STRING
 

Copyright © RSA Security Inc., 1999-2001. All rights reserved.

See Also

Serialized Form

Fields inherited from class com.rsa.certj.cert.attributes.X501Attribute
CHALLENGE_PASSWORD, CONTENT_TYPE, COUNTRY_OF_CITIZENSHIP, COUNTRY_OF_RESIDENCE, CRS_DUAL_STATUS, CRS_FAILURE_INFO, CRS_MESSAGE_TYPE, CRS_PKI_STATUS, CRS_RECIPIENT_NONCE, CRS_SENDER_NONCE, CRS_TRANSACTION_ID, CRS_VERSION, DATE_OF_BIRTH, FRIENDLY_NAME, GENDER, LOCAL_KEY_ID, MESSAGE_DIGEST, NON_STANDARD, PLACE_OF_BIRTH, POSTAL_ADDRESS, PSEUDONYM, SIGNING_TIME, SMART_CSP, X509_V3_EXTENSION
 

Constructor Summary

MessageDigest()

Constructs an empty MessageDigest object.

MessageDigest(byte[] digest, int offset, int len)

Constructs a MessageDigest object and initializes it with the values given.

 

Method Summary

 Object

clone()

Overrides the default clone method to get a deeper clone.

 boolean

equals(Object obj)

Returns true if this object and obj contain the same MessageDigest, returns false otherwise.

 byte[]

getMessageDigest()

Gets the value of this attribute, the MessageDigest data.

 void

setMessageDigest(byte[] digest, int offset, int len)

Sets the value of this attribute, the MessageDigest, to digest.

 
Methods inherited from class com.rsa.certj.cert.attributes.X501Attribute
clearSensitiveData, compareOID, derEncodeAttributeLen, getAttributeType, getAttributeTypeString, getDEREncoding, getDERLen, getInstance, getNextBEROffset, getOID, isAttributeType
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MessageDigest

public MessageDigest()
Constructs an empty MessageDigest object.

MessageDigest

public MessageDigest(byte[] digest,
                     int offset,
                     int len)
Constructs a MessageDigest object and initializes it with the values given.

Parameters

         digest  

The message digest.

         offset  

The offset into the digest array.

         len  

The length of the message digest in the digest array.

Method Detail

getMessageDigest

public byte[] getMessageDigest()
Gets the value of this attribute, the MessageDigest data.

Returns

A new instance of the byte array.

setMessageDigest

public void setMessageDigest(byte[] digest,
                             int offset,
                             int len)
Sets the value of this attribute, the MessageDigest, to digest.

Parameters

         digest  

A byte array that contains the message digest.

         offset  

The offset into the digest array.

         len  

The length of the digest message in the digest array.


clone

public Object clone()
             throws CloneNotSupportedException
Overrides the default clone method to get a deeper clone.

Overrides

clone in class X501Attribute

Returns

A new MessageDigest object, a copy of this object.

Throws

CloneNotSupportedException - If the cloning operation is not successful.

equals

public boolean equals(Object obj)
Returns true if this object and obj contain the same MessageDigest, returns false otherwise.

Overrides

equals in class Object

Parameters

         obj  

The instance of the MessageDigest object.

Returns

A boolean indicating whether these objects are equal.


RSA BSAFE ® Cert-J 2.1.1 001-047007-211-001-000