首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >邮编目录AES加密

邮编目录AES加密
EN

Stack Overflow用户
提问于 2013-04-08 11:18:01
回答 1查看 1.2K关注 0票数 1

是否可以加密包含目录的zip文件,而不加密文件?或者如果这是不可能的,那么如何加密目录本身呢?

我有一个带有子目录的目录。我需要加密它。我读了一份建议,建议先将其压缩,然后加密zip文件。

我也不想要一堆加密的文件。以防万一有人提出建议。我真的需要它的目录或压缩文件被加密。或者这是唯一可能的方法?

我怎么知道我的文件被加密了?

我的程序是用java编写的。并被应用在android系统中。

非常感谢您的投入。

EN

回答 1

Stack Overflow用户

发布于 2013-04-08 14:33:22

据我所知,ZIP规范允许对每个文件的内容进行加密,理论上每个文件都有一个单独的密码。

如果您想加密一个目录和它下面的所有文件,那么您需要对目录进行存档和加密。目录不被视为可加密的项,因为它只是一个位置持有者-所有与目录相关的信息都是zip条目属性的一部分,而不是可加密的,因为只有文件的内容是加密的(这是根据zip规范)。

若要确定文件是否已加密,可以尝试使用zip工具进行解压缩,而无需指定密码。程序应提示输入加密文件的密码。在撰写本文时,Note没有一种信息压缩工具支持AES加密,因此您可能无法使用此方法测试解压缩文件。

使用zipinfo查看“status”列,如果它都是大写的,那么它是加密的(很好的经验规则):

代码语言:javascript
复制
host:~/bin% zip hello.zip radio    
updating: radio (deflated 30%)
host:~/bin% zipinfo hello.zip
Archive:  hello.zip   307 bytes   1 file
-rwxr-xr-x  3.0 unx      211 tx defN  9-Jun-09 11:33 radio
1 file, 211 bytes uncompressed, 147 bytes compressed:  30.3%

注意不受密码保护的条目的小写tx

代码语言:javascript
复制
host:~/bin% zip -P fred hello.zip radio
  adding: radio (deflated 30%)
host:~/bin% zipinfo hello.zip
Archive:  hello.zip   335 bytes   1 file
-rwxr-xr-x  3.0 unx      211 TX defN  9-Jun-09 11:33 radio
1 file, 211 bytes uncompressed, 147 bytes compressed:  30.3%

请注意密码保护条目的大写TX

jar工具产生了令人敬畏的消息(ymmv):

代码语言:javascript
复制
host:~/bin% zip -P fred hello.zip radio
updating: radio (deflated 30%)
host:~/bin% jar tvf hello.zip          
java.util.zip.ZipException: invalid CEN header (encrypted entry)
    at java.util.zip.ZipFile.open(Native Method)
    at java.util.zip.ZipFile.<init>(ZipFile.java:214)
    at java.util.zip.ZipFile.<init>(ZipFile.java:144)
    at java.util.zip.ZipFile.<init>(ZipFile.java:115)
    at sun.tools.jar.Main.list(Main.java:1004)
    at sun.tools.jar.Main.run(Main.java:245)
    at sun.tools.jar.Main.main(Main.java:1177)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15877705

复制
相关文章

相似问题

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