使用 Javascript 解密受密码保护的 zip 文件
Posted
技术标签:
【中文标题】使用 Javascript 解密受密码保护的 zip 文件【英文标题】:Using Javascript to decrypt password protected zip file 【发布时间】:2014-05-29 17:41:18 【问题描述】:我正在尝试创建一个 chrome 扩展程序,当它在 Gmail 中检测到加密的 zip 文件时会激活该扩展程序。加密的 zip 包含一个 mp3 文件。 zip 文件的密码将事先知道。我希望 chrome 扩展使用已知密码解密文件并使用 javascript 播放它。
这是我第一次使用 Chrome 扩展程序,但我相信我知道如何编写除 zip 文件解密之外的所有内容。经过一番研究,我还没有发现如何使用现有的库(如 zip.js 或 jszip.js)来解密 zip 文件。
任何帮助将不胜感激。谢谢!
【问题讨论】:
这可能会让你朝着正确的方向前进 gildas-lormeau.github.io/zip.js/demos/demo2.html 和 github.com/gildas-lormeau/zip.js @DavidCorbin 感谢您的回复,但我尝试了 zip.js。仍然不确定如何解密 zip 文件。 这是一种使用 Node 的方法,但我不确定它是否会对您有所帮助。 ***.com/questions/23926927/… @DavidCorbin 感谢您的链接。会追求它。 可能是这个tutorialzine.com/2013/11/javascript-file-encrypter 【参考方案1】:我最终在客户端使用 CryptoJS 解密了文件。即使有 6 分钟以上的音频剪辑,它也非常有效。
【讨论】:
你能分享代码吗?由于我使用 CryptoJS 解码 aes-encode 文件,但它总是返回长度为 0 的 wordarray。 @user3378223 不幸的是,我已经有一段时间没有完成这个项目了。我目前无法访问代码。 CryptoJS 是否可以解密实际的 zip 文件,或者您决定在两端都使用 CryptoJS?我最后的意思是:CryptoJS 可以创建 zip 文件吗? @Absulit 加密和 Zip 文件是分开的事情。您可以加密文件并将其压缩并在客户端执行相反的操作。但是,上次我检查时,它不会创建可以通过标准 zip 程序解压缩的加密 zip 文件。以上是关于使用 Javascript 解密受密码保护的 zip 文件的主要内容,如果未能解决你的问题,请参考以下文章
SSL 替代方案 - 使用 JavaScript 加密密码提交给 PHP 进行解密
如何使用 iText 7 删除受密码保护的 pdf 中的密码