public class HMAC extends Digest
Please do not use it with MD5 and SHA1. Good ones are SHA256+. With SHA3 it also could be used though SHA3 does not require this type of algorythm as is considered to be prone to the length extension attack.
Created by sergeych on 19.12.16.
| Constructor | Description |
|---|---|
HMAC(byte[] key) |
Default implementation uses SHA256 and it's blick size.
|
HMAC(byte[] key,
java.lang.Class<? extends Digest> hashClass) |
Create new HMAC hash.
|
| Modifier and Type | Method | Description |
|---|---|---|
protected byte[] |
_digest() |
Override it to calculate and return digest of all processed data.
|
protected void |
_update(byte[] data,
int offset,
int size) |
Override to process sequence of bytes.
|
int |
getLength() |
Override to provide digest length in bytes.
|
protected Digest |
hashInstance() |
base64Digest, base64Digest, base64Digest, base64Digest, digest, digest, digest, digest, getChunkSize, hexDigest, hexDigest, hexDigest, hexDigest, update, update, update, updatepublic HMAC(byte[] key)
key - secret keypublic HMAC(byte[] key,
java.lang.Class<? extends Digest> hashClass)
key - secret keyhashClass - class of the hash to use to sign the message. SHA256+ is recommended.protected void _update(byte[] data,
int offset,
int size)
Digestprotected byte[] _digest()
Digestprotected final Digest hashInstance()