发布网友 发布时间:2022-04-22 00:59
共4个回答
热心网友 时间:2023-12-03 05:45
https是基于ssl的。
https支持单向认证和双向认证。
对浏览器的要求就是要支持SSL V3.0/TLS V1.0及以上,但现在几乎所有浏览器都支持,如IE、Firefox、Opera等。
单向认证不需要客户证书,双向认证需要客户证书,这个是可以在服务器端配置的。
OK?
热心网友 时间:2023-12-03 05:46
用双向ssl这个词其实并不是十分准确,因为ssl协议的加密本身就是双向(服务端和客户端之间传输的数据上下行都已经加密)。
一般只有对客户端的身份要求特别严格,比如像网上银行,电子支付这类的才十分有必要使用客户端证书认证,否则一般直接在服务器上部署ssl证书建立https就可以了。
参考资料:http://www.trustasia.com/
热心网友 时间:2023-12-03 05:46
HTTPS 利用 SSL/TLS 建立安全信道、加密数据包,主要目的是提供对网站服务器的身份认证,同时保护交换数据的安全性与完整性。
SSL 单向验证过程中,客户端会验证自己访问的服务器端,服务器端对客户端不做验证。如果服务器端验证客户端,则需要开启服务器端验证,这就是双向验证。
SSL 双向验证和单向验证的不同之处在于:
第二步中服务器端第一次回应客户端的 Server Hello 消息中,会要求客户端提供客户端证书;
第三步中客户端验证完服务器端证书后,回应的内容中,会增加两个信息:
客户端证书;
客户端证书验证消息(CertificateVerify message):客户端将之前所有收到的和发送的消息组合起来,并用 hash 算法得到一个 hash 值,然后用客户端密钥库的私钥对这个 hash 进行签名,这个签名就是 CertificateVerify message;
服务器端收到客户端证书后,会做如下处理:
确认客户端发送的证书是有效合法的;
用客户端证书中的公钥验证收到信息中的签名,以确定这个证书是客户端发出的;
服务器端和客户端,握手结束,之后就可以用对称加密传输数据了。
热心网友 时间:2023-12-03 05:47
双向认证 SSL 协议要求服务器和用户双方都有证书。单向认证 SSL 协议不需要客户拥有CA证书,具体的过程相对于上面的步骤,只需将服务器端验证客户证书的过程去掉,以及在协商对称密码方案,对称通话密钥时,服务器发送给客户的是没有加过密的(这并不影响 SSL 过程的安全性)密码方案。这样,双方具体的通讯内容,就是加过密的数据,如果有第三方攻击,获得的只是加密的数据,第三方要获得有用的信息,就需要对加密的数据进行解密,这时候的安全就依赖于密码方案的安全。而幸运的是,目前所用的密码方案,只要通讯密钥长度足够的长,就足够的安全。这也是我们强调要求使用128位加密通讯的原因。
一般Web应用都是采用SSL单向认证的,原因很简单,用户数目广泛,且无需在通讯层对用户身份进行验证,一般都在应用逻辑层来保证用户的合法登入。但如果是企业应用对接,情况就不一样,可能会要求对客户端(相对而言)做身份验证。这时就需要做SSL双向认证。