什么是数字签名?Win10系统如何查验文件是否数字签名?
什么是数字签名?win10系统下如何查验文件是否经过数字签名?数字签名(又称公钥数字签名)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。今天系统天地小编就为大家介绍在win10系统下查验文件是否经过数字签名的多种技巧!
小提示:本文仅讲述验证文件是否经过数字签名的方法,对于如何添加数字签名和数字签名算法等更多的内容,不在本文讲述的范畴。
首先可以通过文件资源管理器验证文件是否进行数字签名。选择一个要验证的文件,例如Photoshop的程序文件,右键单击并从快捷菜单中选择“属性”,打开程序文件属性窗口,如果看到有“数字签名”选项卡,说明该程序进行过数字签名(图1)。
如果程序没有经过数字签名,右击程序文件并显示其属性窗口,将不会出现“数字签名”选项卡。但这并不意味着没签名软件就不能安装或运行,你会发现一个未经数字签名的EXE绿色程序,依然可以正常运行。对未签名的驱动安装作,微软会有保护性提示,但选择主动权在于用户,可通过在高级启动设置中选择“禁用驱动程序强制签名”来解决。
对于含有数字签名的程序,单击其“数字签名”选项卡下的“详细信息”按钮,即可看到程序签名者的具体信息,包括签名者名称、电子邮件和签名时间等(图2)。点击“查看证书”按钮能查看签名证书的具体情况,包括该证书的签发目的、颁发者和颁发给的对象、证书的有效期、证书的详细信息、证书的路径等内容。通过“数字签名详细信息”窗口中的“高级”选项卡,能看到序列号、算法等信息。在查看证书窗口中点击“安装证书”按钮,会弹出“证书导入向导”,据此我们可以将证书及其信任列表从磁盘复制到证书存储区。证书存储区是保存证书的系统区域。证书是确认身份、保护数据和网络连接安全的保障。
除了使用文件属性窗口进行数字签名与否的验证外,用第三方软件DigiCert Certificate Utility,也能进行数字签名验证。运行该软件后,点击“I Accept”按钮接受使用条款。进入主界面后点击左侧栏的Code Signing项,再点击右侧窗格上方工具栏的Check Signature按钮,随后在文件对话窗口中找到要检查证书的程序,点击“打开”按钮。在弹出的证书验证窗口中,如果两个圆形钮都显示为绿色,说明已经过数字签名且时间戳均有效(图3)。
手动查看软件数字签名
在 Windows 中检查应用程序数字签名最简单的方法就是直接查看,这种方法属于 Windows 自带功能,无需其它第三方工具:
1打开「资源管理器」——找到需要验证软件的 .exe 可执行文件——右击选择「属性」
2在弹出的「XXX 属性」对话框中点击「数字签名」选项卡
在「签名列表」中看到的条目表示您的文件是经过数字签名的,在此也可以查看到签名者是谁、采用了何种加密摘要算法和时间戳。
3可以双击任何这些条目来查看有关签名机构的更多详细信息。因此,您可以知道该文件是否由软件的原始 ISV 签署。
4此外在「数字签名详细信息」视图中,可以点击「查看证书」按钮查看有关签名附带证书的更多详细信息。
使用DigiCert Certificate Utility验证软件数字签名
DigiCert Certificate Utility 是由国际知名证书服务供商 DigiCert 发布的一款专业、多功能证书工具,对软件数字签名进行检查和验证也是其功能之一。由于是绿色软件,只需下载之后打开并接受使用条款就可以使用。
1点击左侧栏中「Code Signing」代码签名按钮——点击右上角最左边的「Check Signature」检查签名按钮。
2在弹出窗口中选择要验证的 .exe 可执行文件
此时 DigiCert 证书工具会自主检查签名并在打开的新窗口中显示整个信息摘要。DigiCert 小工具会自动验证如下 2 方面的信息:
如果文件已签名,则验证签名是否有效。
检查签名的时间戳。
在微软Windows 10 SDK套件中有一个SignTool工具,它也可以验证程序的数字签名。由于SDK主要针对开发者,因此日常使用的Windows中不包含该组件,需要下载安装。安装之后,用以下命令验证已经签名的文件。signtool verify MyFile.exe