org.mozilla.jss.pkcs12
Class MacData
java.lang.Object
org.mozilla.jss.pkcs12.MacData
- All Implemented Interfaces:
- ASN1Value
public class MacData
- extends java.lang.Object
- implements ASN1Value
Nested Class Summary |
static class |
MacData.Template
A Template for decoding a MacData from its BER encoding. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
MacData
public MacData()
MacData
public MacData(DigestInfo mac,
OCTET_STRING macSalt,
INTEGER macIterationCount)
- Creates a MacData from the given parameters.
- Parameters:
macIterationCount
- 1 is the default and should be used for
maximum compatibility. null can also be used, in which case
the macIterationCount will be omitted from the structure
(and the default value of 1 will be implied).
MacData
public MacData(Password password,
byte[] macSalt,
int iterations,
byte[] toBeMACed)
throws CryptoManager.NotInitializedException,
java.security.DigestException,
TokenException,
java.io.CharConversionException
- Creates a MacData by computing a HMAC on the given bytes. An HMAC
is a message authentication code, which is a keyed digest. It proves
not only that data has not been tampered with, but also that the
entity that created the HMAC possessed the symmetric key.
- Parameters:
password
- The password used to generate a key using a
PBE mechanism.macSalt
- The salt used as input to the PBE key generation
mechanism. If null is passed in, new random salt will be created.iterations
- The iteration count for creating the PBE key.toBeMACed
- The data on which the HMAC will be computed.
- Throws:
CryptoManager.NotInitializedException
- If the crypto subsystem
has not been initialized yet.
TokenException
- If an error occurs on a crypto token.
java.security.DigestException
java.io.CharConversionException
getMac
public DigestInfo getMac()
getMacSalt
public OCTET_STRING getMacSalt()
getMacIterationCount
public INTEGER getMacIterationCount()
getTag
public Tag getTag()
- Description copied from interface:
ASN1Value
- Returns the base tag for this type, not counting any tags
that may be imposed on it by its context.
- Specified by:
getTag
in interface ASN1Value
encode
public void encode(java.io.OutputStream ostream)
throws java.io.IOException
- Description copied from interface:
ASN1Value
- Write this value's DER encoding to an output stream using
its own base tag.
- Specified by:
encode
in interface ASN1Value
- Throws:
java.io.IOException
encode
public void encode(Tag implicitTag,
java.io.OutputStream ostream)
throws java.io.IOException
- Description copied from interface:
ASN1Value
- Write this value's DER encoding to an output stream using
an implicit tag.
- Specified by:
encode
in interface ASN1Value
- Throws:
java.io.IOException
getTemplate
public static final MacData.Template getTemplate()