【发布时间】:2021-12-04 16:14:56
【问题描述】:
我正在使用 nodejs 内置的 crypto、zlib 和 fs 包来使用这些代码加密一个大文件。
import fs from 'fs';
import zlib from 'zlib';
import crypto from 'crypto';
const initVect = crypto.randomBytes(16);
const fread = fs.createReadStream('X:/File.mp4');
const fwrite = fs.createWriteStream('X:/File.mp4.enc');
const gzipStream = zlib.createGzip();
const hashedPassword = crypto.createHash('sha256').update('SomePassword').digest();
const cipher = crypto.createCipheriv(
'aes-256-cbc',
hashedPassword,
initVect
);
fread.pipe(gzipStream).pipe(cipher).pipe(fwrite);
但我不知道如何添加加密进度/状态指示器,因为大文件需要很长时间来加密我想在控制台中向用户显示加密进度。
你们能告诉我如何做到这一点吗?
【问题讨论】:
标签: javascript typescript encryption aes