我在Talend 5.6中使用tFileArchive组件加密了一个文件。
配置是: 编码:UTF-8 加密方法AES256bit
我试图用另一种方法解密它,我用了
openssl enc -d -aes256 -in testEncrypt.csv -out tmp/dectestEnd.csv
在Linux中但它说:bad magic number
我在这里做错了什么。
更新
我正在使用Talend 5.6 以下是工作的配置。可以使用tFileUnarchive组件成功解密文件testEncrypt.csv。
答案 0 :(得分:1)
实际上,你是以错误的方式看待它
tFileArchive
创建一个或多个文件的存档,并可以选择对其进行密码保护。因此,在您的示例中,您将获得一个使用AES256加密密码保护的zip文件,其中包含test.csv文件。
这是我用来测试它的例子(创建一个包含一个文件json.txt的存档,使用密码“password”保护):
现在生成的archive.zip
是一个有效的存档,只有它受密码保护。因此将其传递给openssl
会导致错误bad magic number
,因为它本身不是加密文件。
为了解压缩它,我使用7za
命令来验证它(可以使用sudo apt install p7zip-full
安装):
7za l -slt archive.zip
输出:
7-Zip (A) [64] 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,8 CPUs)
Listing archive: archive.zip
--
Path = archive.zip
Type = zip
Physical Size = 281
----------
Path = json.txt
Folder = -
Size = 171
Packed Size = 129
Modified = 2018-01-12 09:25:04
Created =
Accessed =
Attributes = .....
Encrypted = +
Comment =
CRC =
Method = AES-256 Deflate
Host OS = FAT
Version = 20
您可以在Method = AES-256 Deflate
中看到加密方法
然后您可以使用以下命令对其进行解压缩:
7za e -mem=AES256 archive.zip -ppassword
输出:
7-Zip (A) [64] 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,8 CPUs)
Processing archive: archive.zip
Extracting json.txt
Everything is Ok
Size: 171
Compressed: 281