首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Nodejs中对zip文件夹进行密码保护?

如何在Nodejs中对zip文件夹进行密码保护?
EN

Stack Overflow用户
提问于 2021-11-01 07:08:13
回答 1查看 53关注 0票数 0

我想创建一个带有密码的压缩文件夹,在服务器端使用node.js解压压缩文件夹时会要求输入密码。这里有一个没有密码的zip文件夹创建的例子,但是我怎么才能让它有密码保护呢?

下面是创建受密码保护的zip的代码。所以,在demo文件夹中,我有一个文件列表,以及我想压缩到一个文件夹中的那些文件。我已经在xyz文件夹中创建了test.zip,正在创建压缩包,但解压该压缩包时不会要求输入密码。取而代之的是,它在解压后打开单个文件时要求输入密码。我希望你能理解我的问题。

代码语言:javascript
复制
spawn = require('child_process').spawn;
  zip = spawn('zip',['-P', 'password' , '-r','./xyz/test.zip', `./demo`]);
  zip .on('exit', function(code) {
    console.log("zip with password protected successfully");
})
EN

回答 1

Stack Overflow用户

发布于 2021-11-01 07:17:25

简短的回答是:你不能。

Zip文件(特别是PKZip文件)不支持整个归档加密或文件名加密:只能加密归档中的单个文件-以及标准加密方案(ZipCrypto) and is considered insecure today

更多现代版本的PKZip规范支持AES加密和文件头加密,但是使用这个版本的压缩文件不被今天使用的大多数软件支持(以我的经验),包括微软视窗(例如,Windows11仍然不支持AES加密的压缩文件)。

在您的例子中,我看到您使用的是zip命令行可执行文件,它(取决于您的*nix发行版)不支持AES加密,也不支持仅针对每个文件的头加密ZipCrypto。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69793610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档