HTTPS是一种协议,等于HTTP+TLS(由于历史原因,SSL3.0之后就被TLS1.0替代了)。
openssl是一套开源工具集,主要有两个特性:
1、实现了ssl2,ssl3,TLSv1,TLSv1.1,TLSv1.2协议。
2、实现目前常用的加密算法。
没有一个非常精准的方法来判断HTTPS是否使用openssl,但是根据网站返回的server类型,可以大致估计是否使用了openssl,比如如果使用apache或者nginx,那么肯定是使用了openssl。保守估计至少70%以上的网站是使用openssl的。而windows系列的服务器包括IIS,windows server等都是使用schannel,没有使用openssl,不会受heartbleed影响。
大白话:openssl就是用来创建证书密钥的工具。网站加了证书就可以实现https访问了。但是自己用openssl签发证书,是不会被浏览器信任的。权威的CA证书签发机构可以用openssl创建证书,并且被浏览器信任。
如下图,提示有风险,正常吗?是我哪里弄错了,还是一定要从某些机构申请的才可以?不申请不可以吗?
一般出现这种情况有两种原因:
1.证书签发机构,不是权威的CA证书签发机构,你目前的情况就属于这种情况
2.证书签发机构或者是该机构签发的部分证书在某些浏览器上是不受信任的,如wosign的部分证书在chrome浏览器上就会被打红叉