MD5Encoder

package com.timespark.core.util;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class MD5Encoder {
	 public static String encode(String pwd) {  
	        try {  
	            MessageDigest  digest = MessageDigest.getInstance("MD5");  
	            byte[]  bytes = digest.digest(pwd.getBytes());  
	            StringBuffer sb = new  StringBuffer();  
	            for(int i = 0;i<bytes.length;i++){  
	                String s = Integer.toHexString(0xff&bytes[i]);  
	                  
	                if(s.length()==1){  
	                    sb.append("0"+s);  
	                }else{  
	                    sb.append(s);  
	                }  
	            }  
	              
	            return sb.toString();  
	        } catch (NoSuchAlgorithmException e) {  
	            e.printStackTrace();  
	            throw new RuntimeException("buhuifasheng");  
	        }  
	    }  
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 JavaScript 中,可以使用第三方库或者内置函数来进行 MD5 加密和解密。 1. 使用第三方库:可以使用 CryptoJS 库来进行 MD5 加密和解密。首先,需要引入 CryptoJS 库: ```html <script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/crypto-js.min.js"></script> ``` 然后,可以使用以下代码进行 MD5 加密和解密: ```javascript // 加密 var encrypted = CryptoJS.MD5("message").toString(); // 解密(MD5 是不可逆过程,无法解密) ``` 2. 使用内置函数:JavaScript 本身没有提供内置的 MD5 加密和解密函数,但可以使用 `window.crypto.subtle.digest()` 方法进行加密,但无法解密。 下面是使用 `window.crypto.subtle.digest()` 方法进行 MD5 加密的示例: ```javascript // 将字符串转换为 Uint8Array function strToUint8Array(str) { var encoder = new TextEncoder(); return encoder.encode(str); } // 将 ArrayBuffer 转换为十六进制字符串 function arrayBufferToHexString(buffer) { var byteArray = new Uint8Array(buffer); var hexString = ""; for (var i = 0; i < byteArray.length; i++) { var hex = byteArray[i].toString(16); hex = hex.length === 1 ? "0" + hex : hex; hexString += hex; } return hexString; } // MD5 加密 async function md5Encrypt(message) { var encoder = new TextEncoder(); var data = encoder.encode(message); var hashBuffer = await crypto.subtle.digest("MD5", data); var hashArray = arrayBufferToHexString(hashBuffer); return hashArray; } // 使用示例 md5Encrypt("message").then(function(hash) { console.log(hash); }); ``` 需要注意的是,MD5 是一种不可逆的哈希算法,无法进行解密。加密后的结果只能用于比对,无法还原原始数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值