Java 对outpuStream 加密
时间: 2023-11-26 12:03:37 浏览: 64
Java中可以通过使用CipherOutputStream来实现对OutputStream的加密。具体步骤如下:
1. 创建一个Cipher对象,设置加密算法和密钥。
2. 创建一个OutputStream对象,用于向指定文件写入加密后的数据。
3. 创建一个CipherOutputStream对象,将OutputStream对象和Cipher对象传入其中。
4. 将需要加密的数据写入CipherOutputStream中,加密后的数据将被写入OutputStream对象中。
示例代码如下:
```
import java.io.*;
import javax.crypto.*;
import javax.crypto.spec.*;
public class EncryptOutputStream {
public static void main(String[] args) throws Exception {
// 设置密钥
SecretKeySpec keySpec = new SecretKeySpec("MySecretKey".getBytes(), "AES");
// 创建Cipher对象
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, keySpec);
// 创建OutputStream对象
OutputStream os = new FileOutputStream("encrypted.txt");
// 创建CipherOutputStream对象
CipherOutputStream cos = new CipherOutputStream(os, cipher);
// 写入需要加密的数据
cos.write("Hello, world!".getBytes());
// 关闭CipherOutputStream和OutputStream
cos.close();
os.close();
}
}
```
执行该程序后,将会生成一个名为encrypted.txt的文件,其中包含加密后的数据。
阅读全文