JAVA-MD5加密函式
public void GetMD5(String str){ try { MessageDigest mdi = MessageDigest.getInstance("MD5"); byte[] input = str.getBytes("UTF-8"); byte[] hash = mdi.digest(input); String d = ""; for (int i=0;i<hash.length;i++){ int v = hash[i] & 0xFF;//作用應該是將字串前面清零 因為轉換為int 時 高位會補位 負數就會產生不一樣的效果. if (v<16) d+="0"; System.out.println(" v :"+v); d+=Integer.toString(v,16).toLowerCase(); } System.out.println(d); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
MessageDigest類適用於建立封裝了指紋演算法的工廠,其靜態方法getInstange返回某個演算法物件的例項。上面的例子,在SHA1演算法是同樣可以使用的。裡面的主要思路是
1 、呼叫update方法將資訊提供給物件。
2、呼叫digest演算法將資訊補齊計算,然後程式會以位元組陣列的形式返回資訊摘要(hash value)
3、得到的資訊摘要要逐字元進行轉換,先將補齊的效果去掉之後按照16進位制將其轉換為字元
4、最終得到結果。
以上內容是在學習了JAVA核心技術之後的成果。
相關推薦
JAVA-MD5加密函式
public void GetMD5(String str){ try { MessageDigest mdi = MessageDigest.getInstance("MD5"); byte[] input = str.getBytes("UTF-8")
java-md5加密學習筆記
pack tao tin etc except sta demo hex throws package com.example.demo.testng; import org.testng.annotations.Test; import java.io.Buffered
(Android、Java) MD5加密方法
Android、Java在http請求的時候都會做兩端加密驗證,有的會使用AES加密、解密,但大部分都是使用到MD5單向加密驗證,方法很簡單,只是在加密之前一定要串一個特殊的保密密匙(要混淆)! 需要導包 import java.security.MessageDigest;
Java MD5加密程式碼
package com.hqyj.shiro; import java.util.HashSet; import java.util.Set; import org.apache.shiro.authc.AuthenticationException; import or
Java MD5加密演算法
MD5加密演算法,是一種被廣泛使用的密碼雜湊函式,可以產生出一個128位的雜湊值,用於確保資訊傳輸完全一致,在很多方面都有著廣泛的應用,例如儲存使用者密碼,比較下載檔案的md5值以保證檔案無損毀等等。
.NET 簡單實現MD5加密函式
一、自定義Md5加密函式 public static string Md5(string str) { MD5 md5 = MD5.Create(); byte[] bufstr = Encoding.GetEncoding("GBK").GetBytes(str); byte[] has
C#,自己寫的32位MD5加密函式
大體思路都是,MD5加密後得到byte型別的陣列,然後將每個陣列成員轉換成16進位制的string字串,這裡就容易產生BUG,因為轉換成16進位制時,遇到10以內的數字時,轉後都是一個單字元的,但我們每次轉換都要得到兩個字元的字串,網上大多數都沒有考慮到這個,導致加密結果出現
Java MD5加密類
用來對使用者的密碼進行加密,增加安全性 import java.security.MessageDigest; /** * * @author changxuan */ public class MD5password { public final s
js MD5加密與 java MD5加密不一致
因為該專案會部署到多臺機器,所以需要用字元生成唯一的MD5,但是js生成的MD5和java生成的MD5不一致.經過博主查閱資料發現java生成MD5用的是utf-8的編碼,而且js用的是2進位制.那我就直接上程式碼了 MD5.js 可以直接複製 /* * A JavaScript
Java MD5加密方法
package com.dataservice.utils; import java.security.MessageDigest; import org.springframework.util.Base64Utils; public class MD5Util { p
Jmeter 介面測試之MD5加密函式(函式助手篇)
Jmeter 介面測試之MD5加密函式 本文給大家介紹一下如何使用Jmeter自帶的函式對常量和變數進行簡單的加密處理,廢話少說,裡面開講。 nice~你可以開始虐待Jmeter了 下載Jmeter 4.0版本 解壓下載的jmeter壓縮
java MD5 加密(16位/32位)
public static void main(String[] args) { String sss=textToMD5L32("qqqqq",32); System.out.println(sss); } /** * 對文字進行MD5加密 * @p
java md5加密驗證兩個檔案的內容是否相同
1.首先新建兩個內容相同的檔案 2.建立測試類 public class TestMD5 { public static void main(String[] args) { try { FileInp
Java Md5 加密
Java 兩種加密 此處僅記錄,方便查閱 1.Spring 自帶加密 最常用的md5加密,但是有個隱患,不同的使用者使用同樣的密碼加密出來得到的字串都是相同的值。 //匯入包 import org.springframework.util.Di
java md5加密
package com.test; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithm
Oracle中定義DES加密解密及MD5加密函式
(4)函式使用示例 DES加密: update tb_salarysign_staff s set s.staffpwd =encrypt_des(s.staffpwd, 'test#5&124*!de'); DES解密:select decrypt_des(s.staffpwd, 'test
oracle md5 加密函式
原始碼:CREATE OR REPLACE FUNCTION fn_md5 (input_string IN VARCHAR2) RETURN VARCHAR2IS raw_input RAW (128)
java md5加密結果不一至的問題
問題:兩種方式生成的md5串不匹配的問題 MAIN方法生成的: 871903B66AD9C3ED67CAD9C3D4214324 前端Controller生成的加密字串: 6214869A27142CB8552AFA5D15742E84 md5方法: public f
Java MD5 加密 解密 工具類
package com.accountmanagement.techzero.util; public class MD5Helper { // 標準的建構函式,呼叫md5Init函式進行初始化工作 public MD5Helper() { md5Init()
java中使用MD5加密的算法
static main for 獲得 負數 turn output null ssa MD5,全名Message Digest Algorithm 5,中文名為消息摘要算法第五版,為計算機安全領域廣泛使用的一種散列函數,用以提供消息的完整性保護。以下是JAVA語言中