编程语言
首页 > 编程语言> > Java加密与解密的艺术~DigestInputStream

Java加密与解密的艺术~DigestInputStream

作者:互联网

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.security.DigestInputStream;
import java.security.MessageDigest;

/**
 * TODO 在此写上类的相关说明.<br>
 * @author gqltt<br>
 * @version 1.0.0 2021年11月29日<br>
 * @see 
 * @since JDK 1.5.0
 */
public class DigestInputStreamDemo {

	public static void main(String[] args) throws Exception {
		// 待做消息摘要操作的原始信息.
		final InputStream in = new FileInputStream(new File("D:/temp/附件01.pdf"));
		// 初始化MessageDigest对象,将使用MD5算法.
		MessageDigest md = MessageDigest.getInstance("MD5");
		// 构建DigestInputStream.
		DigestInputStream dis = new DigestInputStream(in, md);
		byte[] buf = new byte[in.available()];
		// 流输入.
		dis.read(buf, 0, in.available());
		// 获得摘要信息.
		byte[] output = dis.getMessageDigest().digest();
		System.out.println("摘要信息:" + HexUtil.byteArrToHex(output));
		// 关闭流.
		dis.close();
	}
}

标签:MessageDigest,java,DigestInputStream,解密,Java,new,import,dis
来源: https://blog.csdn.net/gqltt/article/details/121614075