- import java.security.MessageDigest;
- import java.security.NoSuchAlgorithmException;
- import sun.misc.BASE64Decoder;
- public class PasswdUtil {
- /**
- * SHA加密
- * @param decript
- * @return
- */
- public static String SHA1(String input) {
- if(input == null){
- return "";
- }
- try {
- MessageDigest digest = java.security.MessageDigest
- .getInstance("SHA-1");
- digest.update(input.getBytes());
- byte messageDigest[] = digest.digest();
- // Create Hex String
- StringBuffer hexString = new StringBuffer();
- // 字节数组转换为 十六进制 数
- for (int i = 0; i < messageDigest.length; i++) {
- String shaHex = Integer.toHexString(messageDigest[i] & 0xFF);
- if (shaHex.length() < 2) {
- hexString.append(0);
- }
- hexString.append(shaHex);
- }
- return hexString.toString();
- } catch (NoSuchAlgorithmException e) {
- e.printStackTrace();
- }
- return "";
- }
- /**
- * MD5加密
- * @param input
- * @return
- */
- public static String MD5(String input) {
- if(input == null){
- return "";
- }
- try {
- // 获得MD5摘要算法的 MessageDigest 对象
- MessageDigest mdInst = MessageDigest.getInstance("MD5");
- // 使用指定的字节更新摘要
- mdInst.update(input.getBytes());
- // 获得密文
- byte[] md = mdInst.digest();
- // 把密文转换成十六进制的字符串形式
- StringBuffer hexString = new StringBuffer();
- // 字节数组转换为 十六进制 数
- for (int i = 0; i < md.length; i++) {
- String shaHex = Integer.toHexString(md[i] & 0xFF);
- if (shaHex.length() < 2) {
- hexString.append(0);
- }
- hexString.append(shaHex);
- }
- return hexString.toString();
- } catch (NoSuchAlgorithmException e) {
- e.printStackTrace();
- }
- return "";
- }
- /**
- * BASE64解密
- */
- public static String decryptBASE64(String input) {
- if (input == null){
- return "";
- }
- BASE64Decoder decoder = new BASE64Decoder();
- String pwd = "";
- try {
- byte[] b = decoder.decodeBuffer(input);
- pwd = new String(b);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return pwd;
- }
- /**
- * BASE64加密
- */
- public static String encryptBASE64(String input) {
- if(input == null){
- return "";
- }
- return new sun.misc.BASE64Encoder().encode(input.getBytes());
- }
- }
MD5 SHA1 BASE64加密算法
最新推荐文章于 2023-09-07 09:40:04 发布