MD5普通加密
import java.security.MessageDigest;
import java.util.Locale;
public class Md5Utils {
public static final String KEY_MD5 = "MD5";
private static String getString(String inputStr) {
System.out.println("=======加密前的数据:" + inputStr);
String result = "";
try {
MessageDigest md = MessageDigest.getInstance(KEY_MD5);
byte[] inputData = inputStr.getBytes("UTF-8");
md.update(inputData);
byte[] digest = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < digest.length; offset++) {
i = digest[offset];
if (i < 0) {
i += 256;
}
if (i < 16) {
buf.append("0");
}
buf.append(Integer.toHexString(i));
}
result = buf.toString().toUpperCase(Locale.ROOT);
return result;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static void main(String[] args) {
String result = getString("aa");
System.out.println("加密后的结果 result = " + result);
}
}
MD5加密 (加盐)
导包
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
import org.apache.commons.lang3.RandomStringUtils;
import java.security.MessageDigest;
import java.util.Locale;
public class Md5Utils {
public static final String KEY_MD5 = "MD5";
public static void main(String[] args) {
String result = getString("aa");
System.out.println("加密后的结果 result = " + result);
}
private static String getString(String inputStr) {
System.out.println("=======加密前的数据:" + inputStr);
String salt = RandomStringUtils.randomNumeric(4);
System.out.println("=======加密的盐:" + salt);
String aa = inputStr + salt;
String result = "";
try {
MessageDigest md = MessageDigest.getInstance(KEY_MD5);
byte[] inputData = aa.getBytes("UTF-8");
md.update(inputData);
byte[] digest = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < digest.length; offset++) {
i = digest[offset];
if (i < 0) {
i += 256;
}
if (i < 16) {
buf.append("0");
}
buf.append(Integer.toHexString(i));
}
result = buf.toString().toUpperCase(Locale.ROOT);
return result;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}