本文整理汇总了Java中org.apache.commons.codec.digest.Md5Crypt类的典型用法代码示例。如果您正苦于以下问题:Java Md5Crypt类的具体用法?Java Md5Crypt怎么用?Java Md5Crypt使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
Md5Crypt类属于org.apache.commons.codec.digest包,在下文中一共展示了Md5Crypt类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: generateCode
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
/**
* Generate unique code
*/
public static String generateCode(Participant p, ActionBeanContext context) {
String salt = context.getServletContext().getInitParameter(PARTICIPANTPOINTS_SALT_PARAM);
if (salt == null){
log.warn("The '"+PARTICIPANTPOINTS_SALT_PARAM+ "' is not configured as context param. Using the insecure, default salt");
salt = DEFAULT_SALT;
}
StringBuffer sb = new StringBuffer();
sb.append(p.getKarateka().getName());
sb.append(p.getKarateka().getSurname());
sb.append(p.getVanencompetition().getDate());
String hash = Md5Crypt.apr1Crypt(sb.toString(), salt);
return hash;
}
示例2: validatePassword
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
/**
* htpasswd supports a few other password encryption schemes than the StandardCredentialsRealm.
*
* @param requestCredentials
* @param storedCredentials
* @return true if the request password validates against the stored password
*/
@Override
protected boolean validatePassword(StandardCredentials requestCredentials, StandardCredentials storedCredentials) {
final String storedPassword = storedCredentials.getPassword();
final String username = requestCredentials.getUsername();
final String password = requestCredentials.getPassword();
boolean authenticated = false;
// test Apache MD5 variant encrypted password
if (storedPassword.startsWith("$apr1$")) {
if (storedPassword.equals(Md5Crypt.apr1Crypt(password, storedPassword))) {
log.trace("Apache MD5 encoded password matched for user '{}'", username);
authenticated = true;
}
}
// test Unsalted SHA password
else if (storedPassword.startsWith("{SHA}")) {
String password64 = Base64.encodeBase64String(DigestUtils.sha1(password));
if (storedPassword.substring("{SHA}".length()).equals(password64)) {
log.trace("Unsalted SHA-1 encoded password matched for user '{}'", username);
authenticated = true;
}
}
// test Libc Crypt password
else if (!isAllowClearTextPasswords() && storedPassword.equals(Crypt.crypt(password, storedPassword))) {
log.trace("Libc crypt encoded password matched for user '{}'", username);
authenticated = true;
}
// test Clear Text password
else if (isAllowClearTextPasswords() && storedPassword.equals(password)) {
log.trace("Clear text password matched for user '{}'", username);
authenticated = true;
}
return authenticated;
}
示例3: compareCredential
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
/**
* Compare login and password with hash from htpsswd
*
* @param login
* @param password
* @return boolean
*/
public static boolean compareCredential(String login, String password) {
if (isSetup()) {
// Get salt from apr1 hashed by login
String salt = getSaltFromLogin(login);
String hash = Md5Crypt.apr1Crypt(password, salt);
if (dataHtpasswd.contains(login + ":" + hash)) {
return true;
}
}
return false;
}
示例4: authenticateMd5Passwords
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
public static boolean authenticateMd5Passwords(final String authValue, final Iterable<String> passwords) {
final Matcher matcher = MD5_PATTERN.matcher(authValue);
if (matcher.matches()) {
final String known = matcher.group(1);
final String salt = matcher.group(2);
for (String password : passwords) {
final String offered = Md5Crypt.md5Crypt(password.getBytes(), salt);
if (known.equals(offered)) {
return true;
}
}
}
return false;
}
示例5: PasswordEncrypt
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
public PasswordEncrypt(final String key) {
final byte[] keyBytes = key.getBytes(US_ASCII);
this.md5 = Md5Crypt.md5Crypt(keyBytes.clone());
this.apr1 = Md5Crypt.apr1Crypt(keyBytes.clone());
this.sha256 = Sha2Crypt.sha256Crypt(keyBytes.clone());
this.sha512 = Sha2Crypt.sha512Crypt(keyBytes.clone());
Arrays.fill(keyBytes, (byte) 0);
}
示例6: checkPassword
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
public static boolean checkPassword(final String crypted, final String key) {
String crypted2 = null;
if (crypted == null)
return false;
if (crypted.length() < 24)
return false;
if (crypted.charAt(0) != '$')
return false;
final int offset2ndDolar = crypted.indexOf('$', 1);
if (offset2ndDolar < 0)
return false;
final int offset3ndDolar = crypted.indexOf('$', offset2ndDolar + 1);
if (offset3ndDolar < 0)
return false;
final String salt = crypted.substring(0, offset3ndDolar + 1);
final byte[] keyBytes = key.getBytes(US_ASCII);
if (crypted.startsWith("$1$")) { // MD5
crypted2 = Md5Crypt.md5Crypt(keyBytes.clone(), salt);
} else if (crypted.startsWith("$apr1$")) { // APR1
crypted2 = Md5Crypt.apr1Crypt(keyBytes.clone(), salt);
} else if (crypted.startsWith("$5$")) { // SHA2-256
crypted2 = Sha2Crypt.sha256Crypt(keyBytes.clone(), salt);
} else if (crypted.startsWith("$6$")) { // SHA2-512
crypted2 = Sha2Crypt.sha512Crypt(keyBytes.clone(), salt);
}
Arrays.fill(keyBytes, (byte) 0);
if (crypted2 == null)
return false;
return crypted.equals(crypted2);
}
示例7: encode
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
@NonNull
@Override
public String encode(@NonNull String text) {
return Md5Crypt.md5Crypt(text.getBytes());
}
示例8: generate
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
/**
* Creates a new md5 salted hash based from user id and user email.
*/
public static String generate(UserData userData) {
String raw = Long.toString(userData.getUserId()) + "" + userData.getEmail();
return Md5Crypt.md5Crypt(raw.getBytes());
}
示例9: hashMd5Password
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
public static final String hashMd5Password(final String cleantextPassword) {
return Md5Crypt.md5Crypt(cleantextPassword.getBytes());
}
示例10: validateMd5Password
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
private static boolean validateMd5Password(String hashed, String plain) {
String result = Md5Crypt.apr1Crypt(plain, hashed);
return hashed.equals(result);
}
示例11: verifyMD5Password
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
private boolean verifyMD5Password(String storedPassword, String passedPassword) {
// We send in the password presented by the user and use the stored password as the salt
// If they match, then the password matches the original non-encrypted stored password
return Md5Crypt.apr1Crypt(passedPassword, storedPassword).equals(storedPassword);
}
示例12: md5Check
import org.apache.commons.codec.digest.Md5Crypt; //导入依赖的package包/类
public static boolean md5Check(String plaintext, String hashed) {
return hashed.equals(Md5Crypt.apr1Crypt(plaintext, hashed));
}