coding
tianpl的gravatar头像
tianpl2013-01-05 10:38:46

java 密码工具类分享PasswordUtil.java

 * 字符串加密工具类。
 * 
 * @author tgl
 */
public class PasswordUtil {
	/**
	 * 使用3Des进行加密。
	 * 
	 * @param string 待加密的字符串
	 * @param key 密钥
	 * @return 加密后的字符串
	 * @throws PasswordException 如果发送错误
	 */
	public static String tripleEncrypt(String string, String key) throws Exception {
		if (key.length() >= 48) {
			byte[] bytK1 = StringUtil.hexString2byteArray(key.substring(0, 16));
			byte[] bytK2 = StringUtil.hexString2byteArray(key.substring(16, 32));
			byte[] bytK3 = StringUtil.hexString2byteArray(key.substring(32, 48));

			byte[] bytP = string.getBytes();
			byte[] ep = encrypt(encrypt(encrypt(bytP, bytK1), bytK2), bytK3);

			return StringUtil.byteArray2HexString(ep);
		} else {
			throw new Exception("密钥长度错误,无法进行3DES加密");
		}
	}

	/**
	 * 使用3Des进行解密。
	 * 
	 * @param string 待解密的字符串
	 * @param key 密钥
	 * @return 解密后的字符串
	 * @throws PasswordException 如果发送错误
	 */
	public static String tripleDecrypt(String string, String key) throws Exception {
		if (key.length() >= 48) {
			byte[] bytK1 = StringUtil.hexString2byteArray(key.substring(0, 16));
			byte[] bytK2 = StringUtil.hexString2byteArray(key.substring(16, 32));
			byte[] bytK3 = StringUtil.hexString2byteArray(key.substring(32, 48));

			byte[] bytP = StringUtil.hexString2byteArray(string);
			byte[] dp = decrypt(decrypt(decrypt(bytP, bytK3), bytK2), bytK1);

			return new String(dp);
		} else {
			throw new Exception("密钥长度错误,无法进行3DES加密");
		}
	}

PasswordUtil 密码DES对称加密解密工具类


AXIN编辑于2014-2-12 16:16:29


最代码官方编辑于2014-10-10 9:49:22


打赏

文件名:PasswordUtil.java,文件大小:4K下载
最代码最近下载分享源代码列表最近下载
qq1824250669 LV18月26日
星星
maojingxin LV15月15日
星星
czp1068894 LV82018年6月2日
月亮月亮
wenMN1994 LV132017年11月4日
月亮月亮月亮星星
你高冷1 LV12017年10月11日
星星
xiao_cui LV12017年8月11日
星星
ooeel LV122015年8月28日
月亮月亮月亮
dagf113225 LV672015年7月24日
皇冠星星星星星星
AXIN LV362014年2月12日
太阳太阳月亮
最代码最近浏览分享源代码列表最近浏览
likaizzk9月18日
暂无贡献等级
hw272619 LV59月13日
月亮星星
gtlishujie LV69月11日
月亮星星星星
hedongxiucai LV19月11日
星星
qq1824250669 LV18月26日
星星
与你同行2019 LV48月21日
月亮
tangjun LV178月15日
太阳星星
暂无贡献等级
inyoueyes LV68月4日
月亮星星星星
hfq131468 LV17月30日
星星
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友