Encryption GPG-具有TWOFISH对称加密的最大密钥大小

Encryption GPG-具有TWOFISH对称加密的最大密钥大小,encryption,gnupg,encryption-symmetric,twofish,Encryption,Gnupg,Encryption Symmetric,Twofish,我正在使用一个脚本来打包和加密档案,以便在云存储中备份它们 它生成如下shell命令: cd /vault/backup/pictures; tar cf - vacation-201309 | xz -3 | gpg --symmetric --cipher-algo TWOFISH --digest-algo SHA512 --no-secmem-warning --yes --batch --passphrase-file /vault/keys/back_keyfile -o /vaul

我正在使用一个脚本来打包和加密档案,以便在云存储中备份它们

它生成如下shell命令:

cd /vault/backup/pictures; tar cf - vacation-201309 | xz -3 | gpg --symmetric --cipher-algo TWOFISH --digest-algo SHA512 --no-secmem-warning --yes --batch --passphrase-file /vault/keys/back_keyfile -o /vault/backup/upload/vacation-201309.tar.xz.gpg
TWOFISH是256位密码,这意味着它只能使用不大于

openssl兰德-base64 256

3zXeZC/XWC1h1lxre88gzkhCZqk6tV7YKCg9HiKDLrooEDYkvwYXQ5LMBLSFdpYr
c2KAP10aq6pfEi4YeL7llQXfd47qXsEDi8nOpBpPRALxv2NYE4qjZC3sTPe+d1ue
cbFM18BmxHN0094YotLBD+6cQIfZyU8GVLLHx8iH2jf48+7QuXigqWW1oT33BPbQ
zrlND50ZFeGNYo7woIRpSvt8KeBm8t75jVEqXIzA2Zei0r9Xsx0mu828t0wZ6mGL
hkj4B5M56eJzFUCFG207Mf/bXvV5X7Pz6W72Y8nhjAtkumdAsEb0Vc0iIHJ64mfH
XWEfs/1T3n2F8/kxASIvPQ==
至少我是这样理解的

我的问题是,如果我像这样向GPG传递一个更大的密钥文件,GPG将如何工作

openssl rand -base64 512:

P0MzGpZItSu6fKObtJvAx1fLRxPBK/pOIjR9Yv+mCrHLlit7ksHOjif6ln32lXl3
8g/zxdQc39kanAproaOzZ1ulebxbfK1Bi6/OfwhdP1HF61nWBZb03TDtdNNXEDFW
9lAN6kHUUctpY9PhFCv2AmoKSKzv1HsAGkrhqslO4E+3sIlGgVLg69qKHE9yQJSX
s5xhXKTcAcaVZ++HwuTTvIduf3sc2J+BEDzpqrAwES2hV5gFwnFFA6G0md31VwEI
9wf22p07qbOrRryV/0WZUNZfOuZ5g/JgrqhRgq53lK0VHvyRkNjMlx7BW4n3Y/0y
5Lgve8Q89Cx5jwbxPcBnXW5h4SWLFa8bSLrGrn/eDH+F1mA5BbU+3IrBdLgivz0u
Unr+jLD3FbBOv/8jRAyp/iOwMmOw9welTu/mcEEa20gyupeJXxAZaVrNfWdWVORi
PdjW5vR9Rn/NLh6fV46+E39dgTn4TBp/v9h+LZpiVK3nNkry+as9vH73o+nFIe8Q
H/UkchDqmIBLntKc9rBZQrkx8NOzruoWGJoFE/Wb23AHN7RNyYgVgvZTy5QWhILz
CW/mzwMQYAuLbFfnY4cgDs9zLMo4OqFGUmbgbnXO9KbYgsplU2aps9JoOjyWCchm
uWYRNAGWrgdfl8vIaxMz1WUwWJFDxyNrANPRiPFQTUg=

它只需要前256个字符,而忽略其余字符吗?

您正在使用随机字符作为密码短语的输入。只使用第一行。因此,您根本没有生成密钥,密钥是使用算法生成的,只使用第一行


请注意,256位密钥不包含256个“字符”或字节。

您似乎知道openssl命令-为什么不按要求执行?嗯,我的问题是关于它的gpg实现。我如何用openssl检查呢?好吧,试着别忘了使用位而不是字节。好的,我做了一个256个字符的密钥,加密了一个文件。之后,我在同一个密钥文件中添加了另一个字符,现在有257个字符,直到260个字符为止。SHA1的总数总是不同的。那么,256加密是如何工作的呢?既然它需要超过256个字符的密钥,那么密钥文件的限制是什么?好的,那么我的问题应该是:TWOFISH密钥文件的字符限制是什么?很抱歉进行了大量编辑,我吃的太少了。。。修改。如果我用256个字符的密钥文件加密同一个文件一次,然后在同一个密钥文件的末尾添加另一个字符,那么为什么sha1和不一样呢。如果只使用了第一行,则密钥文件末尾的更改不会产生任何影响,但确实如此。这可能是随机IV(初始化向量)的原因。请注意,密文看起来应该是随机的。如果不是静态IV,你可以很容易地分辨出相同的密文或以相同的明文开头的密文,泄露信息。是的,这是有道理的。谢谢澄清!