1. 程式人生 > >JAVA-MD5加密函式

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語言中