日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

MD5和SHA加密实现

發布時間:2025/3/20 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MD5和SHA加密实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
@Testpublic void TestMD5AndSHA() throws NoSuchAlgorithmException {String MD5=Md5("123456");//MD5加密算法 System.out.println(MD5);String SHA=SHA256("123456");//SHA256加密算法 System.out.println(SHA);//先經過MD5加密在經過SHA加密String Md5AndSha256=SHA256(Md5("123456"));System.out.println(Md5AndSha256);}public static String Md5(String str) throws NoSuchAlgorithmException {String MD5 ="";MessageDigest md5 = MessageDigest.getInstance("MD5");byte[] bytes = str.getBytes();byte[] digest = md5.digest(bytes);for (int i = 0; i < digest.length; i++) {//摘要字節數組中各個字節的"十六進制"形式.int j = digest[i];j = j & 0x000000ff;String s1 = Integer.toHexString(j);if (s1.length() == 1) {s1 = "0" + s1;}MD5 += s1;}return MD5;}public static String SHA256(String str){MessageDigest messageDigest;String encodeStr = "";try {messageDigest = MessageDigest.getInstance("SHA-256");messageDigest.update(str.getBytes("UTF-8"));encodeStr = byte2Hex(messageDigest.digest());} catch (NoSuchAlgorithmException e) {e.printStackTrace();} catch (UnsupportedEncodingException e) {e.printStackTrace();}return encodeStr;}private static String byte2Hex(byte[] bytes){StringBuffer stringBuffer = new StringBuffer();String temp = null;for (int i=0;i<bytes.length;i++){temp = Integer.toHexString(bytes[i] & 0xFF);if (temp.length()==1){stringBuffer.append("0");}stringBuffer.append(temp);}return stringBuffer.toString();}

總結MD5算法和SHA都是不可逆的算法,網上的破解方法都是窮舉出來的,只要密碼長度長一點,是不可能解出來的

MD5算法破解比較容易,加密速度比較快

SHA算法破解比較難,加密速度比較慢

一起使用雖然很保密解碼幾乎不可能,但是會浪費很多開銷。

轉載于:https://www.cnblogs.com/CY-947205926/p/8898138.html

總結

以上是生活随笔為你收集整理的MD5和SHA加密实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。