继续 漫谈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);
}
给
相关文档:
最近读完<Java并发编程实践>,无疑这是一本好书,它使得我对线程,锁,以及与并发相关的
一些知识体系更加完备,闲话不多说,下面我系统梳理了下里面的一些理论要点,相信实践上
面,大家或多或少都会有体会,那么用理论的知识点将实践体会笼络起来,将会形成更加牢固
和完备的知识体系,至少我这么认为,写这一篇笔记也是用以 ......
最近看到论坛里有个帖子在讨论接口和抽象类的区别和作用,这其实也是很多面试官喜欢问的问题,这里我就说说我的总结,顺便说说内部类的作用,当是给刚入门,或者想学习java的同学们能更好的理解它们的用法。
1.接口(interface),接口被用来建立类与类之间关联的标准。
Java code
public interface ITest{
public ......
今天一天学了异常处理这一章。
首先异常是Java程序在运行期出现的错误,非编译期(javac)出现的错误。
然后再给异常分类,异常分为三种,第一为error,这种异常不可以处理,是系统的内部错误,第二为Exception,这种可以被处理,Exception里面又有个RuntimeException的类,而RuntimeException又是可以不被捕获处理的,因 ......
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 ......
豆豆网 技术应用频道 2009年06月10日 【字号:小中大】 收藏本文
JProfiler memcached JavaCC EclEmma Jester Java加密技术(七)。
ECC
ECC-Elliptic Curves Cryptography,椭圆曲线密码编码学,是目前已知的公钥体制中,对每比特所提供加密强度最高的一种体制。在软件注册 ......