问题: 谁知道“报文摘要”是干什么用的?也就是说“DigestInputStream和DigestOutputStream”这两个流是干什么用的?

ewang_365 2002-05-22 02:06:28
他们在java.util.security包中,说是两个过滤器流,计算流的报文摘要(Message digest),我不明白什么叫“报文摘要”,谁能给举个例子讲一下“报文摘要”是干什么用的?谢谢。
...全文
112 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
horseliu 2002-05-22
消息摘要是用来保证数据完整性的。传输的数据一旦被修改那么计算出的摘要就不同,只要对比两次摘要就可确定数据是否被修改过。
回复
ewang_365 2002-05-22
这我到明白,但是我不知道这消息摘要有什么用??
我是想知道到底什么是消息摘要?
回复
horseliu 2002-05-22
就是在输入、输出的同时用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()方法。



回复
发帖
Java SE
创建于2007-09-28

6.1w+

社区成员

Java 2 Standard Edition
申请成为版主
帖子事件
创建了帖子
2002-05-22 02:06
社区公告
暂无公告