继续 漫谈Java加密技术(一)
HMAC
HMAC(Hash Message Authentication Code,散列消息鉴别码,基于密钥的Hash算法的认证协议。消息鉴别码实现鉴别的原理是,用公开函数和密钥产生一个固定长度的值作为认证标识,用这个标识鉴别消息的完整性。使用一个密钥生成一个固定大小的小数据块,即MAC,并将其加入到消息中,然后传输。接收方利用与发送方共享的密钥进行鉴别认证等。
通过java代码实现如下:
/** *//**
* 初始化HMAC密钥 http://www.guihua.org http://www.feng123.com
*
* @return
* @throws Exception
*/
public static String initMacKey() throws Exception {
KeyGenerator keyGenerator = KeyGenerator.getInstance(KEY_MAC);
SecretKey secretKey = keyGenerator.generateKey();
return encryptBASE64(secretKey.getEncoded());
}
/** *//**
* HMAC加密
*
* @param data
* @param key
* @return
* @throws Exception
*/
public static byte[] encryptHMAC(byte[] data, String key) throws Exception {
SecretKey secretKey = new SecretKeySpec(decryptBASE64(key), KEY_MAC);
Mac mac = Mac.getInstance(secretKey.getAlgorithm());
mac.init(secretKey);
return mac.doFinal(data);
}
给
相关文档:
2010-05-03
Linux AS 4
JDK
Sun JDK
http://java.sun.com/javase/downloads/index.jsp
Download Java SE Development Kit 6u20 for Linux, Multi-language
Java SE Development Kit 6u20
jdk-6u20-linux-i586-rpm.bin
Java SE Development Kit 6u20
jdk-6u20-linux-i586.bin
Notes:现在的JDK ......
多线程环境中,比较掌握的事情之一就是如何返回线程的信息。因为run和start方法并不返回任何值。
假设现在有两个线程,主线程和一个子线程,子线程读文件,主线程需要对文件的结果进行操作,当然,最简单的方法就是读文件和处理读出的文件全部都在主线程中进
行。
......
这是我个人归纳的一些知识点,我觉得初学java首先需要重以下的知识开始
(1)JAVA程序开发步骤:
源代码-->编译成*.class-->执行(将.class交给JVM)
jvm--java虚拟机(解释器)
(2)
JDK -- java开发工具包(编译器、解释器、类库)
JSDK -- java标准开发工具包 ......
Cavaj Java Decompiler is a graphical freeware utility that reconstructs Java source code from CLASS files. You can decompile Java applets, JAR and ZIP files, producing accurate Java source code. Browse the reconstructed source code with the Class View for instant access to methods and fields. The pr ......
在Eclipse中我们经常会向主方法注入参数,以提供给程序的运行,其方法如下:
1.点运行按钮(或右击要运行的类)
2.点击Open Run Dialog..
3.选中左侧需要运行的类
4.在右侧选中Argument
5.在Program Argument中输入你要注入到主函数中的参数
6.点击运行(Run),就可以运行了。。。 ......