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

Java加密和数字签名编程快速入门

      本文主要谈一下密码学中的加密和数字签名,以及其在java中如何进行使用。对密码学有兴趣的伙伴,推荐看Bruce Schneier的著作:Applied Crypotography。在jdk1.5的发行版本中安全性方面有了很大的改进,也提供了对RSA算法的直接支持,现在我们从实例入手解决问题(本文仅是作为简单介绍):
  一、密码学上常用的概念 
  1)消息摘要:
  这是一种与消息认证码结合使用以确保消息完整性的技术。主要使用单向散列函数算法,可用于检验消息的完整性,和通过散列密码直接以文本形式保存等,目前广泛使用的算法有MD4、MD5、SHA-1,jdk1.5对上面都提供了支持,在java中进行消息摘要很简单, java.security.MessageDigest提供了一个简易的操作方法:
Java代码
/**  
*MessageDigestExample.java  
*Copyright 2005-2-16  
*/  
import java.security.MessageDigest;   
/**  
*单一的消息摘要算法,不使用密码.可以用来对明文消息(如:密码)隐藏保存  
*/  
public class MessageDigestExample{   
 public static void main(String[] args) throws Exception{   
  if(args.length!=1){   
   System.err.println("Usage:java MessageDigestExample text");   
   System.exit(1);   
  }   
  
  byte[] plainText=args[0].getBytes("UTF8");   
  
  //使用getInstance("算法")来获得消息摘要,这里使用SHA-1的160位算法   
  MessageDigest messageDigest=MessageDigest.getInstance("SHA-1");   
  
  System.out.println("\n"+messageDigest.getProvider().getInfo());   
  //开始使用算法   
  messageDigest.update(plainText);   
  System.out.println("\nDigest:");   
  //输出算法运算结果   
  System.out.println(new String(messageDigest.digest(),"UTF8"));   
 }   
}   
/**
*MessageDigestExample.java
*Copyright 2005-2-16
*/


相关文档:

java中的System.currentTimeMillis()函数

System.currentTimeMillis():可以提取到当前时间的毫秒数,产生一个当前的毫秒,这个毫秒其实就是自1970年1月1日0时起的毫秒数。
常见作用:一般都是用2个时间的差值来得到运行时间的,常用来比较2个算法的效率!
long start = System.currentTimeMillis();
  // 这里可以加上你要知道的方法运行的时间!!
......

Java除法结果带小数、进一法的实现

进一法: 即省略的位上只要大于零都要进一位 ;
四舍五入法: 即省略的位上小于五都要舍去,但省略的位上满五都要进一位 ;
还有一种
去尾法: 即省略的位上不管是否满五都要舍去 ;
1、除法带小数
例如:
  int a = 8;
  int b = 3;
  int c = ((double)la)/b;
  System.out.println(c); ......

java生成随机数字和字母组合


注:1.方法的参数 length 是生成的随机数的长度。
      2. 只想要大写的字母 可以使 int choice =65; 只想要小写的字母,就 int choice =97;
import java.util.Random;
public String getCharAndNumr(int length)  
{  
    String val = " ......

优化Java动画编程中的显示效果

Java动画编程有多种实现方法,但它们实现的基本原理是一样的,即在屏幕上画出一系列的帧来造成运动的感觉。Java多线程技术是Java动画编程中普遍运用的技术,它在控制动画程序的流程和动画的显示效果方面起着重要的作用。Java动画编程中的动画闪烁和图像残缺不全等现象,是Java程序员经常遇到的问题。本文以作者应用实例程序 ......

不错的经典文章:java提速

Java语言特别强调准确性,但可靠的行为要以性能作为代价。这一特点反映在自动收集垃圾、严格的运行期检查、完整的字节码检查以及保守的运行期同步等等方面。对一个解释型的虚拟机来说,由于目前有大量平台可供挑选,所以进一步阻碍了性能的发挥。
“先做完它,再逐步完善。幸好需要改进的地方通常不会太多。”( ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号