约翰想寄给1.txt保罗。
他加密了它。现在该文件名为myFile.pgp,他将其发送给Paul。
保罗得到了文件。
Paul怎样(可能的话)知道原始文件名(1.txt)是什么?是否有参数(--xxx)来查看文件名?
我在控制台模式下使用GNU PGP(GnuPG)。
约翰想寄给1.txt保罗。
他加密了它。现在该文件名为myFile.pgp,他将其发送给Paul。
保罗得到了文件。
Paul怎样(可能的话)知道原始文件名(1.txt)是什么?是否有参数(--xxx)来查看文件名?
我在控制台模式下使用GNU PGP(GnuPG)。
Answers:
使用GnuPG,原始文件名可以在中看到gpg --list-packets。
$ gpg --list-packets test.gpg
:pubkey enc数据包:版本3,算法1,keyid CE7B5510340F19EF
数据:[4095位]
:加密数据包:
长度:67
mdc_method:2
gpg:使用4096位RSA密钥,ID CE7B5510340F19EF加密,创建于2009-10-31
“曼塔斯·米库纳斯<grawity@gmail.com>”
:压缩包:算法= 2
:文字数据包:
模式b(62),创建了1356362981,name =“ passwords.txt”,
原始数据:8个字节
(注意:整个文字数据包(包括文件名)均已加密。如果没有私钥,则也看不到名称。)
或者,您可以--decrypt与--verbose(或-v -d简称)一起使用:
$ gpg --verbose --decrypt test.gpg> NUL
gpg:公钥是CE7B5510340F19EF
gpg:使用子项CE7B5510340F19EF代替主键D24F6CB2C1B52632
创建于2009-10-31的4096位RSA密钥ID ID CE7B5510340F19EF
(主键ID D24F6CB2C1B52632上的子键)
gpg:使用4096位RSA密钥,ID CE7B5510340F19EF加密,创建于2009-10-31
“曼塔斯·米库纳斯<grawity@gmail.com>”
gpg:AES256加密数据
gpg:原始文件名='passwords.txt'
(在Linux中,请> /dev/null改用。)
如果要解密并保存整个文件,请使用以下--use-embedded-filename选项:
$ gpg -v-使用嵌入式文件名test.gpg …无聊的输出… gpg:原始文件名='passwords.txt' 文件`passwords.txt'存在。覆盖?(y / N)n
(注意:您不应使用-d或--decrypt将此选项使用,因为它从不使用嵌入的文件名。而应使用“默认”操作。)
不要忘记并非所有文件都有名称。在Linux中,gpg通常用于直接加密另一个程序的输出,而不将其保存在文件中。然后它将显示为:
$ echo测试| gpg --store | gpg-列表包
:压缩包:算法= 1
:文字数据包:
模式b(62),创建1356362394,name =“”,
原始数据:8个字节
当加密(或只是存储),嵌入式文件名可以与被改变--set-filename。
$ echo测试| gpg --store --set-filename“ test.txt” | gpg-列表包
:压缩包:算法= 1
:文字数据包:
模式b(62),创建了1356362790,name =“ test.txt”,
原始数据:8个字节
-v?它没有出现在gpg -?
--verbose。(就像-?并且-d是短的形式--help和--decrypt。)我的GnuPG版本确实显示它为:“-v,--verbose”中的“选项”部分下。
gpg -v --use-embedded-filename bbb.gpg提取文件?
--list-packets不提取。只是显示...(对吗?)