|
For the latest news and information visit The GNU Crypto project |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectgnu.crypto.mac.BaseMac
gnu.crypto.mac.HMac
public class HMac
The implementation of the HMAC (Keyed-Hash Message Authentication Code).
HMAC can be used in combination with any iterated cryptographic hash function. HMAC also uses a secret key for calculation and verification of the message authentication values. The main goals behind this construction are
References:
Field Summary | |
---|---|
protected int |
blockSize
|
protected byte[] |
ipad
|
protected IMessageDigest |
ipadHash
|
protected int |
macSize
|
protected IMessageDigest |
opadHash
|
static String |
USE_WITH_PKCS5_V2
|
Fields inherited from class gnu.crypto.mac.BaseMac |
---|
name, truncatedSize, underlyingHash |
Fields inherited from interface gnu.crypto.mac.IMac |
---|
MAC_KEY_MATERIAL, TRUNCATED_SIZE |
Constructor Summary | |
---|---|
protected |
HMac(IMessageDigest underlyingHash)
Trivial constructor for use by concrete subclasses. |
Method Summary | |
---|---|
byte[] |
digest()
Completes the MAC by performing final operations such as padding and resetting the instance. |
void |
init(Map attributes)
Initialises the algorithm with designated attributes. |
void |
reset()
Resets the algorithm instance for re-initialisation and use with other characteristics. |
boolean |
selfTest()
A basic test. |
Methods inherited from class gnu.crypto.mac.BaseMac |
---|
clone, macSize, name, update, update |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String USE_WITH_PKCS5_V2
protected int macSize
protected int blockSize
protected IMessageDigest ipadHash
protected IMessageDigest opadHash
protected byte[] ipad
Constructor Detail |
---|
protected HMac(IMessageDigest underlyingHash)
Trivial constructor for use by concrete subclasses.
underlyingHash
- the underlying hash algorithm instance.Method Detail |
---|
public void init(Map attributes) throws InvalidKeyException, IllegalStateException
IMac
Initialises the algorithm with designated attributes. Permissible names and values are described in the class documentation above.
init
in interface IMac
init
in class BaseMac
attributes
- a set of name-value pairs that describe the desired
future instance behaviour.
InvalidKeyException
- if the key data is invalid.
IllegalStateException
- if the instance is already initialised.IMac.MAC_KEY_MATERIAL
public void reset()
IMac
Resets the algorithm instance for re-initialisation and use with other characteristics. This method always succeeds.
reset
in interface IMac
reset
in class BaseMac
public byte[] digest()
IMac
Completes the MAC by performing final operations such as padding and resetting the instance.
digest
in interface IMac
digest
in class BaseMac
public boolean selfTest()
IMac
A basic test. Ensures that the MAC of a pre-determined message is equal to a known pre-computed value.
selfTest
in interface IMac
selfTest
in class BaseMac
true
if the implementation passes a basic self-test.
Returns false
otherwise.
|
For the latest news and information visit The GNU Crypto project |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |