⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mymac.java

📁 密码学中的JAVA例子
💻 JAVA
字号:
import java.io.*; 

import java.security.*; 

import javax.crypto.*; 

import javax.crypto.spec.*; 

public class MyMac 
{ 

	public static void main(String[] args) throws Exception
	{ 

		//这是一个消息摘要串 

		String str="TestString"; 

		//共同的密钥编码,这个可以通过其它算法计算出来 

		byte[] kb=
			{
				11,105,-119,50,4,-105,16,38,-14,-111,21,-95,70,-15,76,-74, 

				67,-88,59,-71,55,-125,104,42}; 

		//获取共同的密钥 

		SecretKeySpec k = new SecretKeySpec(kb,"HMACSHA1"); 

		//获取Mac对象 

		Mac m = Mac.getInstance("HmacSHA1"); 

		m.init(k); 
        /**
		 * 为了产生消息认证码,我们将数据传给mac的update()方法。一旦运行完毕,就可以调用doFinal()来得到消息码
		 */
		m.update(str.getBytes("UTF-8")); 

		byte[] re = m.doFinal();//生成消息码 

		//下面把消息码转换为字符串 

		String result = ""; 

		for(int i=0;i<re.length;i++)
		{ 

			result += Integer.toHexString((0x000000ff&re[i])|0xffffff00).substring(6); 

		} 

		System.out.println(result); 

	} 

} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -