public final class HmacUtils extends Object
Mac tasks. This class is immutable and thread-safe.
Note: Not all JCE implementations supports all algorithms. If not supported, an IllegalArgumentException is thrown.
| Constructor and Description |
|---|
HmacUtils() |
| Modifier and Type | Method and Description |
|---|---|
static Mac |
getHmacMd5(byte[] key)
Returns an initialized
Mac for the HmacMD5 algorithm. |
static Mac |
getHmacSha1(byte[] key)
Returns an initialized
Mac for the HmacSHA1 algorithm. |
static Mac |
getHmacSha256(byte[] key)
Returns an initialized
Mac for the HmacSHA256 algorithm. |
static Mac |
getHmacSha384(byte[] key)
Returns an initialized
Mac for the HmacSHA384 algorithm. |
static Mac |
getHmacSha512(byte[] key)
Returns an initialized
Mac for the HmacSHA512 algorithm. |
static Mac |
getInitializedMac(HmacAlgorithms algorithm,
byte[] key)
Returns an initialized
Mac for the given algorithm. |
static Mac |
getInitializedMac(String algorithm,
byte[] key)
Returns an initialized
Mac for the given algorithm. |
static byte[] |
hmacMd5(byte[] key,
byte[] valueToDigest)
Returns a HmacMD5 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacMd5(byte[] key,
InputStream valueToDigest)
Returns a HmacMD5 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacMd5(String key,
String valueToDigest)
Returns a HmacMD5 Message Authentication Code (MAC) for the given key and value.
|
static String |
hmacMd5Hex(byte[] key,
byte[] valueToDigest)
Returns a HmacMD5 Message Authentication Code (MAC) as a hex string (lowercase) for the given key and value.
|
static String |
hmacMd5Hex(byte[] key,
InputStream valueToDigest)
Returns a HmacMD5 Message Authentication Code (MAC) as a hex string (lowercase) for the given key and value.
|
static String |
hmacMd5Hex(String key,
String valueToDigest)
Returns a HmacMD5 Message Authentication Code (MAC) as a hex string (lowercase) for the given key and value.
|
static byte[] |
hmacSha1(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA1 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha1(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA1 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha1(String key,
String valueToDigest)
Returns a HmacSHA1 Message Authentication Code (MAC) for the given key and value.
|
static String |
hmacSha1Hex(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA1 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha1Hex(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA1 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha1Hex(String key,
String valueToDigest)
Returns a HmacSHA1 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static byte[] |
hmacSha256(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA256 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha256(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA256 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha256(String key,
String valueToDigest)
Returns a HmacSHA256 Message Authentication Code (MAC) for the given key and value.
|
static String |
hmacSha256Hex(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA256 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha256Hex(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA256 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha256Hex(String key,
String valueToDigest)
Returns a HmacSHA256 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static byte[] |
hmacSha384(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA384 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha384(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA384 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha384(String key,
String valueToDigest)
Returns a HmacSHA384 Message Authentication Code (MAC) for the given key and value.
|
static String |
hmacSha384Hex(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA384 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha384Hex(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA384 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha384Hex(String key,
String valueToDigest)
Returns a HmacSHA384 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static byte[] |
hmacSha512(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA512 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha512(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA512 Message Authentication Code (MAC) for the given key and value.
|
static byte[] |
hmacSha512(String key,
String valueToDigest)
Returns a HmacSHA512 Message Authentication Code (MAC) for the given key and value.
|
static String |
hmacSha512Hex(byte[] key,
byte[] valueToDigest)
Returns a HmacSHA512 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha512Hex(byte[] key,
InputStream valueToDigest)
Returns a HmacSHA512 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static String |
hmacSha512Hex(String key,
String valueToDigest)
Returns a HmacSHA512 Message Authentication Code (MAC) as hex string (lowercase) for the given key and value.
|
static Mac |
updateHmac(Mac mac,
byte[] valueToDigest)
Updates the given
Mac. |
static Mac |
updateHmac(Mac mac,
InputStream valueToDigest)
Updates the given
Mac. |
static Mac |
updateHmac(Mac mac,
String valueToDigest)
Updates the given
Mac. |
public static Mac getHmacMd5(byte[] key)
Mac for the HmacMD5 algorithm.
Every implementation of the Java platform is required to support this standard Mac algorithm.
key - They key for the keyed digest (must not be null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.Mac.getInstance(String),
Mac.init(Key)public static Mac getHmacSha1(byte[] key)
Mac for the HmacSHA1 algorithm.
Every implementation of the Java platform is required to support this standard Mac algorithm.
key - They key for the keyed digest (must not be null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.Mac.getInstance(String),
Mac.init(Key)public static Mac getHmacSha256(byte[] key)
Mac for the HmacSHA256 algorithm.
Every implementation of the Java platform is required to support this standard Mac algorithm.
key - They key for the keyed digest (must not be null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.Mac.getInstance(String),
Mac.init(Key)public static Mac getHmacSha384(byte[] key)
Mac for the HmacSHA384 algorithm.
Every implementation of the Java platform is not required to support this Mac algorithm.
key - They key for the keyed digest (must not be null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.Mac.getInstance(String),
Mac.init(Key)public static Mac getHmacSha512(byte[] key)
Mac for the HmacSHA512 algorithm.
Every implementation of the Java platform is not required to support this Mac algorithm.
key - They key for the keyed digest (must not be null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.Mac.getInstance(String),
Mac.init(Key)public static Mac getInitializedMac(HmacAlgorithms algorithm, byte[] key)
Mac for the given algorithm.algorithm - the name of the algorithm requested. See Appendix
A in the Java Cryptography Architecture Reference Guide for information about standard algorithm
names.key - They key for the keyed digest (must not be null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.Mac.getInstance(String),
Mac.init(Key)public static Mac getInitializedMac(String algorithm, byte[] key)
Mac for the given algorithm.algorithm - the name of the algorithm requested. See Appendix
A in the Java Cryptography Architecture Reference Guide for information about standard algorithm
names.key - They key for the keyed digest (must not be null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.Mac.getInstance(String),
Mac.init(Key)public static byte[] hmacMd5(byte[] key,
byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacMd5(byte[] key,
InputStream valueToDigest)
throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacMd5(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacMd5Hex(byte[] key, byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacMd5Hex(byte[] key, InputStream valueToDigest) throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacMd5Hex(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha1(byte[] key,
byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha1(byte[] key,
InputStream valueToDigest)
throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha1(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha1Hex(byte[] key, byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha1Hex(byte[] key, InputStream valueToDigest) throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha1Hex(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha256(byte[] key,
byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha256(byte[] key,
InputStream valueToDigest)
throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.
s * @throws IllegalArgumentException
when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha256(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha256Hex(byte[] key, byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha256Hex(byte[] key, InputStream valueToDigest) throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha256Hex(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha384(byte[] key,
byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha384(byte[] key,
InputStream valueToDigest)
throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha384(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha384Hex(byte[] key, byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha384Hex(byte[] key, InputStream valueToDigest) throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha384Hex(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha512(byte[] key,
byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha512(byte[] key,
InputStream valueToDigest)
throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static byte[] hmacSha512(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha512Hex(byte[] key, byte[] valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha512Hex(byte[] key, InputStream valueToDigest) throws IOException
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest
The InputStream must not be null and will not be closed
IOException - If an I/O error occurs.IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static String hmacSha512Hex(String key, String valueToDigest)
key - They key for the keyed digest (must not be null)valueToDigest - The value (data) which should to digest (maybe empty or null)IllegalArgumentException - when a NoSuchAlgorithmException is caught or key is null or key is invalid.public static Mac updateHmac(Mac mac, byte[] valueToDigest)
Mac. This generates a digest for valueToDigest and the key the Mac was initializedmac - the initialized Mac to updatevalueToDigest - the value to update the Mac with (maybe null or empty)MacIllegalStateException - if the Mac was not initializedpublic static Mac updateHmac(Mac mac, InputStream valueToDigest) throws IOException
Mac. This generates a digest for valueToDigest and the key the Mac was initializedmac - the initialized Mac to updatevalueToDigest - the value to update the Mac with
The InputStream must not be null and will not be closed
MacIOException - If an I/O error occurs.IllegalStateException - If the Mac was not initializedpublic static Mac updateHmac(Mac mac, String valueToDigest)
Mac. This generates a digest for valueToDigest and the key the Mac was initializedmac - the initialized Mac to updatevalueToDigest - the value to update the Mac with (maybe null or empty)MacIllegalStateException - if the Mac was not initializedCopyright © 2002–2014 The Apache Software Foundation. All rights reserved.