Documentation Home

2.1.4.3 使用 Gpg4win for Windows 进行签名检查

2.1.4.2 节,“使用 GnuPG 进行签名检查”部分描述了如何使用 GPG 验证 MySQL 下载。该指南也适用于 Microsoft Windows,但另一种选择是使用Gpg4win等 GUI 工具。您可以使用不同的工具,但我们的示例基于 Gpg4win,并利用其捆绑的KleopatraGUI。

下载并安装 Gpg4win,然后加载 Kleopatra。该对话框应类似于:

图 2.1 Kleopatra:初始屏幕

显示默认的 Kleopatra 屏幕。 顶部菜单包括“文件”、“查看”、“证书”、“工具”、“设置”、“窗口”和“帮助”。 顶部菜单下方是一个水平操作栏,其中包含用于“导入证书”、“重新显示”和“在服务器上查找证书”的可用按钮。 灰色按钮是“导出证书”和“停止操作”。 下面是一个名为“查找”的搜索框。 下面是三个选项卡:“我的证书”、“受信任的证书”和“其他证书”,其中选中了“我的证书”选项卡。 “我的证书”包含六个栏目:“姓名”、“电子邮件”、“有效期自”、“有效期至”、“详细信息”  和“密钥 ID”。 没有示例值。

接下来,添加 MySQL 发布工程证书。通过单击“文件”、“在服务器上查找证书”来执行此操作。在搜索框中键入“Mysql Release Engineering”,然后按“搜索” 。

图 2.2 Kleopatra:在服务器上查找证书向导:查找证书

显示标题为“Find”的搜索输入字段,其中输入了“mysql release engineering”。 一个结果包含以下值:Name=MySQL Release Engineering, E-Mail=mysql-build@oss.oracle.com, Valid From=2003-02-03, Valid Until="", Details=OpenPGP, Fingerprint=5072E1F5 , 和密钥 ID = 5072E1F5。 可用的操作按钮有:搜索、全选、取消全选、详细信息、导入和关闭。

选择“MySQL Release Engineering”证书。对于 MySQL 8.0.28 及更高版本,Fingerprint 和 Key-ID 必须为“3A79BD29”,对于 MySQL 8.0.27 及更早版本,指纹和密钥 ID 必须为“5072E1F5”,或者选择 Details...以确认证书有效。现在,通过单击Import将其导入。显示导入对话框时,选择 Okay,该证书现在应该列在Imported Certificates选项卡下。

接下来,为我们的证书配置信任级别。选择我们的证书,然后从主菜单中选择 CertificatesChange Owner Trust...。我们建议选择我相信检查对我们的证书非常准确,否则您可能无法验证我们的签名。选择 I believe checks are very accurate以启用“完全信任”,然后按OK

图 2.3 Kleopatra:更改 MySQL 发布工程的信任级别

显示信任选项列表,选项包括“我不知道(未知信任)”、“我不信任他们(从不信任)”、“我相信检查是偶然的(边际信任)”、“我相信检查非常准确(完全信任)”,以及“这是我的证书(最终信任)”。 选择“我相信检查非常准确(完全信任)”选项。

接下来,验证下载的MySQL包文件。这需要用于打包文件和签名的文件。签名文件必须与打包文件同名,但要附加.asc扩展名,如下表中的示例所示。签名链接到每个 MySQL 产品的下载页面。您必须.asc使用此签名创建文件。

表 2.2 用于 Microsoft Windows 的 MySQL 安装程序的 MySQL 包和签名文件

文件类型 文件名
分发文件 mysql-installer-community-8.0.31.msi
签名文件 mysql-installer-community-8.0.31.msi.asc

确保这两个文件都存储在同一目录中,然后运行以下命令来验证分发文件的签名。将签名 ( ) 文件拖放.asc到 Kleopatra,或从文件加载对话框,解密/验证文件...,然后选择 .msi.asc文件。

图 2.4 Kleopatra:解密和验证文件对话框

显示要执行的可用解密和验证选项。 示例中使用了 MySQL Installer MSI 文件,其中 .asc 文件列为“输入文件”,.msi 文件列在“签名数据”下。 选中“输入文件是分离签名”选项的复选框。 显示“输入文件是存档;解压方式:”选项,但显示为灰色。 下面是选中的“在单个文件夹中创建所有输出文件”选项复选框,以及以“C:/docs”输入的“输出文件夹”输入字段作为示例。 可用的按钮是“返回”(变灰)、“解密/验证”和“取消”。

单击解密/验证以检查文件。两个最常见的结果如下图所示;虽然黄色警告可能看起来有问题,但以下意味着文件检查成功通过。您现在可以运行此安装程序。

图 2.5 Kleopatra:解密和验证结果对话框:所有操作已完成

结果窗口的黄色部分显示“没有足够的信息来检查签名有效性”和“无法验证签名的有效性”。 还显示了密钥信息,例如密钥 ID 和电子邮件地址、密钥的登录日期,还显示了 ASC 文件的名称。

看到红色The signature is bad错误表示文件无效。如果看到此错误,请不要执行 MSI 文件。

图 2.6 Kleopatra:解密和验证结果对话框:不好

结果窗口的红色部分显示“无效签名”、“使用未知证书签名”、“签名错误”,还显示 ASC 文件的名称。

2.1.4.2 节,“使用 GnuPG 进行签名检查”部分解释了为什么您看不到绿色Good signature 结果。