Package org.craftercms.commons.crypto
Class SimpleDigest
- java.lang.Object
-
- org.craftercms.commons.crypto.SimpleDigest
-
public class SimpleDigest extends Object
Utility class for simplifying message digest generation, using theMessageDigest
. Default digest algorithm is SHA-256, and 1000 iterations are done to make hashes strong against attacks, according to OWASP recommendations.- Author:
- avasquez
-
-
Field Summary
Fields Modifier and Type Field Description static String
DEFAULT_ALGORITHM
static int
DEFAULT_ITERATIONS
static int
DEFAULT_SALT_SIZE
static String
ERROR_KEY_INVALID_ALG
static String
LOG_KEY_DEF_DIGEST_CREATED
static String
LOG_KEY_DIGEST_GEN
static String
LOG_KEY_SALT_GEN
-
Constructor Summary
Constructors Constructor Description SimpleDigest()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
digest(byte[] clear)
String
digestBase64(String clear)
String
getBase64Salt()
MessageDigest
getDigest()
int
getIterations()
byte[]
getSalt()
void
setAlgorithm(String algorithm)
void
setBase64Salt(String salt)
void
setDigest(MessageDigest digest)
void
setIterations(int iterations)
void
setSalt(byte[] salt)
-
-
-
Field Detail
-
LOG_KEY_DEF_DIGEST_CREATED
public static final String LOG_KEY_DEF_DIGEST_CREATED
- See Also:
- Constant Field Values
-
LOG_KEY_SALT_GEN
public static final String LOG_KEY_SALT_GEN
- See Also:
- Constant Field Values
-
LOG_KEY_DIGEST_GEN
public static final String LOG_KEY_DIGEST_GEN
- See Also:
- Constant Field Values
-
ERROR_KEY_INVALID_ALG
public static final String ERROR_KEY_INVALID_ALG
- See Also:
- Constant Field Values
-
DEFAULT_ALGORITHM
public static final String DEFAULT_ALGORITHM
- See Also:
- Constant Field Values
-
DEFAULT_ITERATIONS
public static final int DEFAULT_ITERATIONS
- See Also:
- Constant Field Values
-
DEFAULT_SALT_SIZE
public static final int DEFAULT_SALT_SIZE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getDigest
public MessageDigest getDigest()
-
setDigest
public void setDigest(MessageDigest digest)
-
setAlgorithm
public void setAlgorithm(String algorithm) throws CryptoException
- Throws:
CryptoException
-
getIterations
public int getIterations()
-
setIterations
public void setIterations(int iterations)
-
getSalt
public byte[] getSalt()
-
setSalt
public void setSalt(byte[] salt)
-
getBase64Salt
public String getBase64Salt()
-
setBase64Salt
public void setBase64Salt(String salt)
-
digest
public byte[] digest(byte[] clear)
-
-