易截截图软件、单文件、免安装、纯绿色、仅160KB

继续 漫谈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的ThreadLocal类的使用~~~~~~~~~~~~~~~~~

转载自:http://chenpingtai2008.javaeye.com/blog/253339
早在Java
1.2推出之时,Java平台中就引入了一个新的支持:java.lang.ThreadLocal,给我们在编写多线程程序时提供了一种新的选择。使用
这个工具类可以很简洁地编写出优美的多线程程序,虽然ThreadLocal非常有用,但是似乎现在了解它、使用它的朋友还不多。
  ......

[Java性能剖析]JVM Management API


      
JVM本身提供了一组管理的API,通过该API,我们可以获取得到JVM内部主要运行信息,包括内存各代的数据、JVM当前所有线程及其栈相关信息等
等。各种JDK自带的剖析工具,包括jps、jstack、jinfo、jstat、jmap、jconsole等,都是基于此API开发的。本篇对这部
分内容进行一个详细的说 ......

【奋斗第三天】菜鸟学Java之异常处理

今天一天学了异常处理这一章。
首先异常是Java程序在运行期出现的错误,非编译期(javac)出现的错误。
然后再给异常分类,异常分为三种,第一为error,这种异常不可以处理,是系统的内部错误,第二为Exception,这种可以被处理,Exception里面又有个RuntimeException的类,而RuntimeException又是可以不被捕获处理的,因 ......

java笔试题总结与大家分享

java试题
http://202.201.112.11/jpk/apply/teacher/preface/53/test123/test3/exam.htm
1.接口中方法的前面有哪些修饰符
 访问权限 返回值类型 是否静态 是否抽象
2.以下哪个为真
  Interger a = new Interger(9);
  Interger b = new Interger(9);
  Long c = New Long(9)
-----
&nbs ......

Eclipse运行java程序为主方法传递参数

在Eclipse中我们经常会向主方法注入参数,以提供给程序的运行,其方法如下:
1.点运行按钮(或右击要运行的类)
2.点击Open Run Dialog..
3.选中左侧需要运行的类
4.在右侧选中Argument
5.在Program Argument中输入你要注入到主函数中的参数
6.点击运行(Run),就可以运行了。。。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号