就是在输入、输出的同时用MD5,SHA1等摘要算法计算消息摘要,比如:读如文件的同时计算消息摘要
  MessageDigest md=MessageDigest.getInstance("MD5");
  FileInputStream fin=new FileInputStream("test.txt");
  DigestInputStream in=new DigestInputStream(fin,md);
  /**
   *读入数据
   */
   //计算摘要
   md=in.getMessageDigest();
   byte[] digest=md.digest();
其实,DigestInputStream 、 DigestOutputStream就是每从下层流中读入或写入数据时调用 MessageDigest的update()方法。
   

解决方案 »

  1.   

    这我到明白,但是我不知道这消息摘要有什么用??
    我是想知道到底什么是消息摘要?
      

  2.   

    消息摘要是用来保证数据完整性的。传输的数据一旦被修改那么计算出的摘要就不同,只要对比两次摘要就可确定数据是否被修改过。