java中常用的加密方法,Java 开发中常用的 4 种加密方法

privatestaticfinalString hexDigIts[] = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};

/*** MD5加密* @paramorigin 字符* @paramcharsetname 编码* @return*/publicstaticString MD5Encode(String origin, String charsetname){String resultString = null;try{resultString = newString(origin);MessageDigest md = MessageDigest.getInstance( "MD5");if( null== charsetname || "".equals(charsetname)){resultString = byteArrayToHexString(md.digest(resultString.getBytes));} else{resultString = byteArrayToHexString(md.digest(resultString.getBytes(charsetname)));}} catch(Exception e){}returnresultString;}

publicstaticString byteArrayToHexString( byteb[]){StringBuffer resultSb = newStringBuffer;for( inti = 0; i < b.length; i++){resultSb.append(byteToHexString(b[i]));}returnresultSb.toString;}

publicstaticString byteToHexString( byteb){intn = b;if(n < 0){n += 256;}intd1 = n / 16;intd2 = n % 16;returnhexDigIts[d1] + hexDigIts[d2];}

}

滑动查看全部2. base64加密工具类

publicclassBase64Util { // 字符串编码 private static final String UTF_8 = "UTF-8"; /** * 加密字符串 * @param inputData * @return */ public static String decodeData(String inputData) { try { if (null == inputData) { return null; } return new String(Base64.decodeBase64(inputData.getBytes(UTF_8)), UTF_8); } catch (UnsupportedEncodingException e) { } return null; } /** * 解密加密后的字符串 * @param inputData * @return */ public static String encodeData(String inputData) { try { if (null == inputData) { return null; } return new String(Base64.encodeBase64(inputData.getBytes(UTF_8)), UTF_8); } catch (UnsupportedEncodingException e) { } return null; } public static void main(String[] args) { System.out.println(Base64Util.encodeData("我是中文")); String enStr = Base64Util.encodeData("我是中文"); System.out.println(Base64Util.decodeData(enStr)); }}

滑动查看全部3. Bcrypt工具类

加密测试

1. MD5加密测试

/** * MD5加密 */publicclassMD5Test{ publicstaticvoidmain( String[] args){ String string= "我是一句话"; String byteArrayToHexString = MD5Utils.byteArrayToHexString( string.getBytes); System. out.println(byteArrayToHexString); //e68891e698afe4b880e58fa5e8af9d }}

滑动查看全部2. base64加密测试

/*** base64加密*/publicclassBast64Tester{publicstaticvoidmain( String[] args){String string= "我是一个字符串";String encodeData = Base64Util.encodeData( string); //加密String decodeData = Base64Util.decodeData(encodeData); //解密System. out.println(encodeData); //5oiR5piv5LiA5Liq5a2X56ym5LiySystem. out.println(decodeData); //我是一个字符串

}}

滑动查看全部3. SHA加密测试

/** * SHA加密 */publicclassShaTest{ publicstaticvoidmain( String[] args){ String string= "我是一句话"; String sha256Crypt = Sha2Crypt.sha256Crypt( string.getBytes); System. out.println(sha256Crypt); //$5$AFoQTeyt$TiqmobvcQXjXaAQMYosAAO4KI8LfigZMGHzq.Dlp4NC }}

滑动查看全部4. BCrypt加密测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值