如果你对命令行深恶痛绝,本教程是你的不二之选。
如何用GPA(GNU Privacy Assistant)校验签名?
一、创建自己的密钥
1.安装GPA。如果你在用whonix那么你的虚拟机中已经预装了GPA。
2.启动GPA。在程序菜单里找,这个也没什么好说的。
3.如果你是第一次启动它,它会问你是否要产生私钥(private key),选“Generate key now”。如果它没有问你,菜单栏里找 Keys/new key...,效果等同。
4.在“Your Name”输入你的暱称,当然别填真实姓名。然后点下一步(Forward)。
5.在“Your Email Address”填写你的邮箱。在熟悉密匙管理前,建议不要填写真实存在的邮箱。你可以不填或者随便编一个邮箱,
6.“Do you want to create a backup copy?”,你想创建一个副本吗?选“Do it later”
7.“Please enter the passphrase to protect your new key”,为你的密钥设置密码。
8.如果你的密码太简单,它会让你重新设置。选“Enter new passphrase”。
9.随便晃晃鼠标,等密钥创建完毕。
二、导入别人的公钥
怎么辨别公钥?
如果你看到一段乱码开始的一行是这样: “-----BEGIN PGP PUBLIC KEY BLOCK-----” 结束的一行是这样: “-----END PGP PUBLIC KEY BLOCK-----” 这段文本就是他们的公钥(public key)
有的公钥是写在文本文件里的,有的是贴在网页里的。无论什么形式,当你要用它时,把它复制到一个txt文件里。
1.启动GPA
2.点导入(import),选你复制/下载的别人的公钥
3.鼠标右击选中导入的公钥。点“Sign Keys”。
4.输入第一章节第7步你设置的密码。接下来你就可以用这个公钥验证他们的签名了。
三、校验签名
怎么辨别签名?
如果你看到一段乱码开始的一行是这样:
-----BEGIN PGP SIGNATURE-----
结束的一行是这样:
-----END PGP SIGNATURE-----
这段文本就是他们对某个文件或者某段话的签名(SIGNATURE)。在量子计算机足以破解PGP前,签名可以证明所签名的文本或文件来源于——作者本人,与公钥相对应的私钥的持有者。
签名有两种形式:
1.文本文件:通常以.sig或者.asc结尾
2.纯文本:以-----BEGIN PGP SIGNATURE-----
为开头出现在网页中,如果你得到的文本是这样的:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
一段金玉良(fei)言(hua)
-----BEGIN PGP SIGNATURE-----
一堆乱码
-----END PGP SIGNATURE-----
其中一堆乱码
就是对一段金玉良(fei)言(hua)
的签名,这段属于纯文本的形式。
下面将讲解如何处理两种形式的签名:
文本文件:
1.启动GPA
2.在菜单里找windows/File Manager
3.准备签名文件和你想验证的文件,通常签名文件是被校验的文件的文件名加后缀“.sig”,检查它们的名称是否一致(重点),把两个文件放在同一个文件夹。
4.点Open选择你想校验的文件。
5.点Verify
纯文本:
1.启动GPA
2.在菜单里找windows/Clipboard
3.把类似这样的文本粘贴到GPA-Clipboard
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
一段金玉良(fei)言(hua)
-----BEGIN PGP SIGNATURE-----
一堆乱码
-----END PGP SIGNATURE-----
4.点Verify
四、实战:验证Warrant Canary
本文以qubes.live的Warrant Canary为例,Warrant Canary是一种定期报平安的方式。
该团队的的公钥在:
https://blog.qubes.live/rule
Canary声明:
https://blog.qubes.live/2025/02/04/Qubes-live-Canary-1/
1.打开网页https://blog.qubes.live/rule,创建三个文本文件,分别用于存储该页的三个公钥。
2.启动GPA。
3.导入三个公钥。
4.鼠标右击选中导入的公钥,点“Sign Keys”。三个公钥所以要操作三次。
5.打开网页https://blog.qubes.live/2025/02/04/Qubes-live-Canary-1/,复制第一个代码块中的文本。
6.在文件管理器中创建文本文件“Qubes-live-Canary-1”,粘贴文本,保存,关闭。
7.在网页找到第二个代码块Bar’s PGP signature,复制。这里以Bar的签名为例,如果你想验证其他人的签名,复制其他人的公钥,并且重复7~11。
8.在文件管理器中同一个文件夹里创建文本文件“Qubes-live-Canary-1.sig”,粘贴文本,保存,关闭。
9.启动GPA,在菜单里找windows/File Manager
10.点Open,选择你刚刚保存的文件“Qubes-live-Canary-1”
11.点Verify。“GPA found a file that could be a signature of .... Would you like to verify it instead?”,点Yes。如果显示绿色的Valid则验证成功,如果显示其它的,考虑一下是不是你的操作有问题,也有较小可能是信息遭到了篡改。
参考:
验证Qubes Canary:https://www.qubes-os.org/news/2024/06/14/canary-039/
(license: CC 3.0)
我的公钥
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
yRmXzfQ=
=EVl7
-----END PGP PUBLIC KEY BLOCK-----
签名
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
如果你对命令行深恶痛绝,本教程是你的不二之选。
如何用GPA(GNU Privacy Assistant)校验签名?
一、创建自己的密钥
1.安装GPA。如果你在用whonix那么你的虚拟机中已经预装了GPA。
2.启动GPA。在程序菜单里找,这个也没什么好说的。
3.如果你是第一次启动它,它会问你是否要产生私钥(private key),选“Generate key now”。如果它没有问你,菜单栏里找 Keys/new key...,效果等同。
4.在“Your Name”输入你的暱称,当然别填真实姓名。然后点下一步(Forward)。
5.在“Your Email Address”填写你的邮箱。在熟悉密匙管理前,建议不要填写真实存在的邮箱。你可以不填或者随便编一个邮箱,
6.“Do you want to create a backup copy?”,你想创建一个副本吗?选“Do it later”
7.“Please enter the passphrase to protect your new key”,为你的密钥设置密码。
8.如果你的密码太简单,它会让你重新设置。选“Enter new passphrase”。
9.随便晃晃鼠标,等密钥创建完毕。
二、导入别人的公钥
怎么辨别公钥?
如果你看到一段乱码开始的一行是这样:
“-----BEGIN PGP PUBLIC KEY BLOCK-----”
结束的一行是这样:
“-----END PGP PUBLIC KEY BLOCK-----”
这段文本就是他们的公钥(public key)
有的公钥是写在文本文件里的,有的是贴在网页里的。无论什么形式,当你要用它时,把它复制到一个txt文件里。
1.启动GPA
2.点导入(import),选你复制/下载的别人的公钥
3.鼠标右击选中导入的公钥。点“Sign Keys”。
4.输入第一章节第7步你设置的密码。接下来你就可以用这个公钥验证他们的签名了。
三、校验签名
怎么辨别签名?
如果你看到一段乱码开始的一行是这样:
“-----BEGIN PGP SIGNATURE-----”
结束的一行是这样:
“-----END PGP SIGNATURE-----”
这段文本就是他们对某个文件或者某段话的签名(SIGNATURE)。在量子计算机足以破解PGP前,签名可以证明所签名的文本或文件来源于——作者本人,与公钥相对应的私钥的持有者。
签名有两种形式:
1.文本文件:通常以.sig或者.asc结尾
2.纯文本:以“-----BEGIN PGP SIGNATURE-----”为开头出现在网页中,如果你得到的文本是这样的:
- -----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
一段金玉良(fei)言(hua)
- -----BEGIN PGP SIGNATURE-----
一堆乱码
- -----END PGP SIGNATURE-----
其中“一堆乱码”就是对“一段金玉良(fei)言(hua)”的签名,这段属于纯文本的形式。
下面将讲解如何处理两种形式的签名:
文本文件:
1.启动GPA
2.在菜单里找windows/File Manager
3.准备签名文件和你想验证的文件,通常签名文件是被校验的文件的文件名加后缀“.sig”,检查它们的名称是否一致(重点),把两个文件放在同一个文件夹。
4.点Open选择你想校验的文件。
5.点Verify
纯文本:
1.启动GPA
2.在菜单里找windows/Clipboard
3.把类似这样的文本粘贴到GPA-Clipboard
“-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
一段金玉良(fei)言(hua)
- -----BEGIN PGP SIGNATURE-----
一堆乱码
- -----END PGP SIGNATURE-----”
4.点Verify
四、实战:验证Warrant Canary
本文以qubes.live的Warrant Canary为例,Warrant Canary是一种定期报平安的方式。
该团队的的公钥在:
https://blog.qubes.live/rule
Canary声明:
https://blog.qubes.live/2025/02/04/Qubes-live-Canary-1/
1.打开网页https://blog.qubes.live/rule,创建三个文本文件,分别用于存储该页的三个公钥。
2.启动GPA。
3.导入三个公钥。
4.鼠标右击选中导入的公钥,点“Sign Keys”。三个公钥所以要操作三次。
5.打开网页https://blog.qubes.live/2025/02/04/Qubes-live-Canary-1/,复制第一个代码块中的文本。
6.在文件管理器中创建文本文件“Qubes-live-Canary-1”,粘贴文本,保存,关闭。
7.在网页找到第二个代码块Bar’s PGP signature,复制。这里以Bar的签名为例,如果你想验证其他人的签名,复制其他人的公钥,并且重复7~11。
8.在文件管理器中同一个文件夹里创建文本文件“Qubes-live-Canary-1.sig”,粘贴文本,保存,关闭。
9.启动GPA,在菜单里找windows/File Manager
10.点Open,选择你刚刚保存的文件“Qubes-live-Canary-1”
11.点Verify。“GPA found a file that could be a signature of .... Would you like to verify it instead?”,点Yes。如果显示绿色的Valid则验证成功,如果显示其它的,考虑一下是不是你的操作有问题,也有较小可能是信息遭到了篡改。
参考:
验证Qubes Canary:https://www.qubes-os.org/news/2024/06/14/canary-039/
(license: CC 3.0)
-----BEGIN PGP SIGNATURE-----
iQITBAEBCgB9FiEED4DyePDPXizSuOH9H46KdjTIILsFAmevKINfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDBG
ODBGMjc4RjBDRjVFMkNEMkI4RTFGRDFGOEU4QTc2MzRDODIwQkIACgkQH46KdjTI
ILt3lwv/dRZOzq+Y20BoQMdXXG1FIdLVexwle498BRdHbCNYFYcOBgjkB12HQvb9
3vyN4Kmwfkr/dS+RFvOXl4thr3P9I/u1ytVYt3NOD1HGC6MQs8L8V1xQ4D8lNODQ
29VUVH56mDt1rM/tpqTmUHQqDiflQD7ZmwP1EofqAmUdb2RQjuw2rsBNURqQCHC9
gbWQU0LiH41IYa5aX5KCBx3T+g5IpnTtMJ5cr54byRlPiFMYkX44ETtxQ+MIqaaB
JI8V0S5QkosSqzuE/ZFfHulDlxVAFsi8Lm1bsCtUwWaf+6dEy5EBny0rW52pjPQH
XD0Qs1PlalTCTsKYz+iryH6Qqfkhw0QhT1TI9AfgKV/Y5N5EgV5yyMVaO2IhFgCf
tW0a6Qooogq7ZXpstTDWZ7zoV6oKO1iAdgqb4plQsJGR/0UNIWcVB2ELR55EtjP0
t5uUzeuecr5D+Tuptc6vxkLvOt9LG7z220o+2jOOTDJKGHEPIyRcomMy37jULErv
f1tRScAN
=/MVO
-----END PGP SIGNATURE-----