一探究竟:客户端安装过程中被win10阻止|项目复盘

382 阅读8分钟

目录

前言

正文

一、证书类型

二、证书区别

2.1 OV、DV和EV证书的区别

2.2 如何区分OV和DV证书?

2.3 如何区分EV和OV证书?

三、市场调研

3.1 证书类型的选择

3.2 常见应用的证书类型

结尾

前言

做PC客户端的同学,安装包在win10系统上安装时,有没有遇到过下图的问题:

我就遇到了。说来话长,自己一个人从0到1,用了一个多月的时间搞出了windows和mac系统的PC客户端。过程中遇到太多了系统适配问题,特别是windows系统,问题极多。尤其是上图的问题就困扰了我很久。其根本原因是windows系统对客户端应用程序的数字签名证书有一定的要求。今天,我们就来看看PC客户端有哪些可以选择的数字签名证书以及他们之间的区别。

正文

今天,本文采取倒叙的介绍方式来解密这个问题。其实,市面常用的数字签名证书类型一共有四种,分别是自定义证书、DV证书、OV证书、EV证书,接下来我们具体了解一下它们各自的特点和区别。

一、证书类型

DV证书:域名验证型证书,证书审核方式为通过验证域名所有权即可签发证书。此类型证书适合个人和小微企业申请,价格较低,申请快捷,但是证书中无法显示企业信息,安全性较差。如果是部署在web网站上,浏览器中显示锁型标志。

OV证书:企业验证型证书,证书审核方式为通过验证域名所有权和申请企业的真实身份信息才能签发证书。目前OV类型证书是全球运用最广,兼容性最好的证书类型。此证书类型适合中型企业和互联网业务申请。如果是部署在web网站上,浏览器中显示锁型标志,并能通过点击查看到企业相关信息。支持ECC高安全强度加密算法,加密数据更加安全,加密性能更高。

EV证书:增强验证型证书,证书审核级别为所有类型最严格验证方式,在OV类型的验证基础上额外验证其他企业的相关信息,比如银行开户许可证书。EV类型证书多使用于银行、金融、证券、支付等高安全标准行业。如果是部署在web网站上,其在地址栏可以显示独特的EV绿色标识地址栏,最大程度的标识出网站的可信级别。支持ECC高安全强度加密算法,加密数据更加安全,加密性能更高。

自定义证书:顾名思义就是就是自己通过私有协议定义的数字证书,受信任等级也是最低的。如果自己做实验也是可以研究一下的。在Windows Kits中有一个工具——makecert.exe,可以用来制作自定义的签名证书,方法非常简单,可以上网搜一下,然后再用signtool.exe给相应的应用签名即可。

二、证书区别

2.1 OV、DV和EV证书的区别

为了大家能够清楚的区分DV、OV、EV证书的区别,这里整理了一个对比表格:

2.2 如何区分OV和DV证书?

OV证书和DV证书中使用者的信息对比如下图所示:

通过对比图可以看出:OV型证书会在证书的Subject中显示域名+单位名称等信息,而DV型证书只会在证书的Subject中显示域名信息。

2.3 如何区分EV和OV证书?

EV证书和DV证书中使用者的信息对比如下图所示:

通过对比图可以看出:在使用者一栏中,EV证书比OV证书多了很多其他信息,最明显的区别是显示了序列号等信息,这是EV证书特有的字段,而其他类型证书所没有的。这也是区分EV和OV证书的第一个方法。第二个方法观察颁发者一栏,如果是EV证书,一般会有EV的标示,但并不是所有的EV证书都有这个标示,所以这个方法可以作为一种辅助手段。

如果是部署在web网站上,浏览器对EV证书更加“信任”,当浏览器访问到EV证书时,可以在地址栏显示出公司名称,并将地址栏变成绿色,这是第三种区别的方法。具体的不同表现,可以参考下图:

三、市场调研

3.1 证书类型的选择

随着网络的普及,互联网攻击事件也日益增多,越来越多的企业开始意识到HTTPS加密的重要性。无论是企业想要将网站从HTTP升级为HTTPS,还是做出一个具有系统信任等级更高的客户端时,选择一个靠谱的SSL证书就成了非常必要的前提条件。然而,市场上的SSL证书五花八门,往往让我们无从选择。对于领域新人来说,如果我们不知道怎么选择,其实,可以先看看市场上其他应用都使用的什么证书。然后再根据企业自身不同的规模和业务类型做出最佳的选择。

3.2 常见应用的证书类型

接下来,我们先看看几个常见应用的证书使用情况。

1. 腾讯会议,使用的证书类型是OV证书。

​​​​​​​

2. Zoom,使用的证书类型是EV证书。

3. 钉钉,使用的证书类型是EV证书。

4. 云端课堂,使用的证书类型是OV证书。

这里需要说一下,腾讯会议使用OV证书,这一点让我没有想到,这种做法值得表扬。当然还有其他一些应用,这里就不一一列举了,使用EV证书的应用还是非常多的。

那么问题来了,我们的PC客户端使用的是OV证书,win10被拦截,而其他家公司的客户端也是OV证书却没有被win10拦截呢?

其实,理论上OV证书和EV证书都可以不被win10系统拦截,但是OV证书不被拦截是有条件的,它必须要基于一定的安装量,这个具体的数量官方没有透露。这就解释了我们客户端被拦截的原因,因为我们的客户端是我新做的,基本上没有下载量,因此就没有可靠的信誉值。(但是,我们可以找机构代刷信誉,就像淘宝店刷信用一样。)

其实,我们也可以理解微软这样做的考虑,毕竟新做出来的应用程序,谁也不知道是不是携带了OV证书的木马程序呢。

然而,EV证书却有这方面的特权,天生具有信誉值。所以,新做出来的客户端如果不想被win10拦截可以直接选择EV证书。

此时,有人可能会问,为什么EV证书天生就有信誉值呢?没有木马的风险呢?

其实,信誉值就是一种安全认证等级的体现,因为EV证书的申请非常的严格,需要的材料也非常的敏感,包括公司资质、法人、地址、银行账户等等信息,而且费用也非常高,价格一般是OV证书的两到三倍。

最终,我们找到了两条解决该拦截问题的方法:

1. 使用OV证书签名客户端,并找第三方机构刷量。

优点:签名证书费用便宜。

缺点:刷量也需要费用,而且不知道具体的完成时间。

2. 直接购买EV证书。

优点:直接使用,省时省力。

缺点:费用较高。

后来,经过集体讨论决定,我们选择了后者。因为时间耗不起。

结尾

通过复盘整个证书的选择过程,得出如下结果:DV证书目前几乎快被市场淘汰了,自定义证书就更不建议使用了。市面上现在使用最多最广的就是OV和EV证书,如果是面向公众提供服务、有用户账户登录、有多个应用需求,多个域名需要部署可以考虑购买OV型证书,方便用户快速识别网站真实性,实现全网SSL。如果需要实现在线交易、有高价值的数据保密需求(比如涉及商业秘密的视频会议)可以考虑购买EV型证书,提供最高安全性。

本文正在参与「掘金 2021 春招闯关活动」, 点击查看 活动详情