数字签名的小知识

发布时间:2020-08-29 09:56:23

     上一篇我们说了驱动签名驱动签名是数字签名和驱动程序相关联的产物,那么这篇我们就来说说数字签名。

     数字签名基于 Microsoft 公钥基础结构技术,基于 Microsoft Authenticode与受信任的证书颁发机构 (Ca) 的基础结构结合使用。 验证码,基于行业标准,允许供应商,或软件发布者、 文件的集合进行签名 (如驱动程序包) 通过使用代码签名数字证书CA 颁发。

     Windows 使用有效的数字签名来验证以下各项:

  • 该文件或文件的集合进行签名。

  • 签名者是受信任。

  • 身份验证签名者的证书颁发机构是受信任。

  • 发布后对其未被更改的文件的集合。

    例如,对于此签名过程驱动程序包涉及以下:

 发布服务器获取X.509 数字证书从 CA 验证码证书也称为签名证书。 签名证书是一组数据,用于标识发布服务器,并仅后已验证的发布服务器的标识由 CA 颁发。 CA 可以是 Microsoft CA 第三方商业 CA 或企业 CA

  • 用于签名的证书进行签名编录文件的驱动程序包或设置为嵌入签名驱动程序文件中。 标识受信任的发行者和受信任的 Ca 的证书安装在证书存储区的维护 Windows

  • 签名证书包含私钥和公钥,它被称为密钥对。 使用私钥进行签名的编录文件驱动程序包或驱动程序文件中嵌入签名。 公钥用于验证驱动程序包的目录文件的签名或签名的驱动程序文件中嵌入的。

  • 若要签署编录文件或文件中嵌入签名,签名过程首先生成加密哈希,或指纹,该文件。 签名过程然后会使用私钥加密的文件指纹,并将指纹添加到文件。

  • 签名过程还将添加有关发布服务器和 CA 颁发的签名证书的信息。 数字签名添加到生成文件指纹时则不会处理该文件的节中的文件中。

  • 若要验证的数字签名的文件,Windows 提取有关发布服务器和 CA 的信息,并使用公钥进行解密的加密的文件指纹。

Windows 可接受的文件的完整性和真实性的发布服务器仅当满足以下条件:

  1. 已解密的指纹匹配的文件的指纹。

  2. 发布服务器的证书安装在受信任的发行者证书存储区。

  3. 颁发的发布者证书的 CA 的根证书安装在受信任的根证书颁发机构证书存储区。

微软驱动签名就是一种数字签名。在windows平台上,微软支持两种签名方式,一种是微软自己的签名,我们见微软驱动签名,可以通过微软的徽标认证(WHQL),获取到。任外一种是第三方发布的证书进行签名。目前微软官方支持6个第三方证书:digicertglobalsignEntrust SSL  CertumSectigo