揭秘具体的握手方式是 (揭秘具体的握手环节 深入解析SSL的上班原理)
编号:1822 分类:互联网资讯 阅读: 时间:2024-02-07

传统的网络通讯经常使用的是HTTP传输协议,全程明文传输,所以容易被人监听和劫持,同时HTTP协议不可验证通讯双方身份,因此给钓鱼网站可乘之机。通过安装SSL证书,可以将通讯升级为HTTPS加密协议,从而解决这些问题。下面将详细介绍SSL的工作原理和具体的握手过程。

一、什么是SSL:

SSL代表安全套接字层,是用于加密、完整性保护和验证互联网通讯的协议。虽然一段时间前SSL已被TLS(传输层安全性)的更新协议取代,但SSL仍然是这项技术的常用术语。SSL/TLS的重要用例是保证客户端和主机之间通讯的安全性,但它也可以保护非安全网络上的电子邮件、VoIP和其他通讯。

二、什么是SSL证书:

SSL证书是一种用于在Web主机和客户端浏览器之间建立加密连接的数字证书。通过使用性能和运行SSL证书启用HTTPS协议,可以确保访问网站的真实性和信息传输的加密处理,有效保护数据传输的安全性。目前许多证书颁发机构提供免费的SSL证书,各大国际云主机商也都有免费SSL证书可供使用。

三、SSL/TLS及SSL/TLS握手的概念:

SSL和TLS协议用于为通信双方提供身份识别和认证通道,从而确保通信的机密性和数据的完整性。TLS协议是从Netscape SSL 3.0协议演化而来的,但这两种协议不兼容,SSL已逐渐被TLS取代,因此后文以TLS指代安全层。TLS握手是启动HTTPS通信的过程,类似于建立TCP连接时的三次握手。在TLS握手的过程中,通信双方交换信息进行互相验证和确认,并确定它们要使用的加密算法和会话密钥(用于对称加密的密钥)。可以说,TLS握手是HTTPS通信的基础部分。

四、SSL的工作原理:

当客户端向一个HTTPS网站发起请求时,主机会发送SSL证书给客户端进行验证,SSL证书中包含一个公钥。验证成功后,客户端生成一个随机字符串,并使用受访网站的SSL证书公钥进行加密,然后发送给网站主机。网站主机收到加密的随机字符串后,使用自己的私钥进行解密,获取客户端生成的随机字符串。主机使用这个随机字符串与客户端启动对称加密通信,客户端使用随机字符串对主机发送的信息进行加密。从这个过程中可以看出,SSL证书同时使用了非对称加密和对称加密,使用非对称加密传输密钥给主机,确保密钥的安全性,主机获得密钥后,使用该密钥对信息进行加密,整个传输过程都处于加密状态,有效保证了信息的完整性、准确性和安全性。

五、SSL/TLS握手具体过程:

下面看一下TLS握手的具体过程,此图与HTTPS原理图的流程大致相反,不同之处在于此图将重点放在了TLS握手的关系概念上。

  1. 客户端发送clienthello信息:客户端发送clienthello信息向主机发起握手请求,该信息包含客户端所允许的TLS版本和加密组合供主机选择,以及一个clientrandom随机字符串。
  2. 主机发送serverhello信息:主机发送serverhello信息作为对客户端握手请求的回应,该信息包含数字证书、主机选择的加密组合和一个serverrandom随机字符串。
  3. 验证:客户端验证主机发送的证书,确保对方的合法身份。验证过程可以细分为以下几个步骤:
    ① 验证数字签名
    ② 验证证书链(此概念将在上文解释)
    ③ 验证证书的有效期
    ④ 验证证书的撤销状态(撤销表示证书已失效)
  4. premastersecret字符串:客户端向主机发送另一个随机字符串premastersecret(预主密钥),这个字符串经过主机的公钥加密,只能由对应的私钥解密。
  5. 主机使用私钥解密premastersecret。
  6. 生成共享密钥:客户端和主机都使用clientrandom、serverrandom和premastersecret,并通过相同的算法生成相同的共享密钥KEY。
  7. 客户端就绪:客户端发送经过共享密钥KEY加密的消息,表示握手过程成功,准备开始加密通信。

通过以上详细的分析,可以更好地理解SSL的工作原理和握手过程,以及SSL证书的作用和重要性。


什么是SSL握手

SSL协议的握手过程是这样的:SSL 协议既用到了公钥加密技术(非对称加密)又用到了对称加密技术,SSL对传输内容的加密是采用的对称加密,然后对对称加密的密钥使用公钥进行非对称加密。 这样做的好处是,对称加密技术比公钥加密技术的速度快,可用来加密较大的传输内容, 公钥加密技术相对较慢,提供了更好的身份认证技术,可用来加密对称加密过程使用的密钥。 主要过程如下:1. 客户端的浏览器向服务器传送客户端 SSL 协议的版本号,加密算法的种类,产生的随机数,以及其他服务器和客户端之间通讯所需要的各种信息。 2. 服务器向客户端传送 SSL 协议的版本号,加密算法的种类,随机数以及其他相关信息,同时服务器还将向客户端传送自己的证书。 3. 客户利用服务器传过来的信息验证服务器的合法性,服务器的合法性包括:证书是否过期,发行服务器证书的 CA 是否可靠,发行者证书的公钥能否正确解开服务器证书的“发行者的数字签名”,服务器证书上的域名是否和服务器的实际域名相匹配。 如果合法性验证没有通过,通讯将断开;如果合法性验证通过,将继续进行第四步。 4. 用户端随机产生一个用于后面通讯的“对称密码”,然后用服务器的公钥(服务器的公钥从步骤②中的服务器的证书中获得)对其加密,然后将加密后的“预主密码”传给服务器。 5. 如果服务器要求客户的身份认证(在握手过程中为可选),用户可以建立一个随机数然后对其进行数据签名,将这个含有签名的随机数和客户自己的证书以及加密过的“预主密码”一起传给服务器。 6. 如果服务器要求客户的身份认证,服务器必须检验客户证书和签名随机数的合法性,具体的合法性验证过程包括:客户的证书使用日期是否有效,为客户提供证书的CA 是否可靠,发行CA 的公钥能否正确解开客户证书的发行 CA 的数字签名,检查客户的证书是否在证书废止列表(CRL)中。 检验如果没有通过,通讯立刻中断;如果验证通过,服务器将用自己的私钥解开加密的“预主密码 ”,然后执行一系列步骤来产生主通讯密码(客户端也将通过同样的方法产生相同的主通讯密码)。 7. 服务器和客户端用相同的主密码即“通话密码”,一个对称密钥用于 SSL 协议的安全数据通讯的加解密通讯。 同时在 SSL 通讯过程中还要完成数据通讯的完整性,防止数据通讯中的任何变化。 8. 客户端向服务器端发出信息,指明后面的数据通讯将使用的步骤⑦中的主密码为对称密钥,同时通知服务器客户端的握手过程结束。 9. 服务器向客户端发出信息,指明后面的数据通讯将使用的步骤⑦中的主密码为对称密钥,同时通知客户端服务器端的握手过程结束。 10. SSL 的握手部分结束,SSL 安全通道的数据通讯开始,客户和服务器开始使用相同的对称密钥进行数据通讯,同时进行通讯完整性的检验。 如果还有什么问题,可以向Gworg SSL签发机构咨询。

请教SSL/TLS的握手过程

握手阶段涉及四次通信,我们一个个来看。 需要注意的是,握手阶段的所有通信都是明文的。 至此,整个握手阶段全部结束。 接下来,客户端与服务器进入加密通信,就完全是使用普通的HTTP协议,只不过用会话密钥加密内容。

SSL工作原理?

和 2 只提供服务器认证。 版本 3 添加了客户端认证,此认证同时需要客户端和服务器的数字证书。 SSL 握手SSL 连接总是由客户端启动的。 在SSL 会话开始时执行 SSL 握手。 此握手产生会话的密码参数。 关于如何处理 SSL 握手的简单概述,如下图所示。 此示例假设已在 Web 浏览器 和 Web 服务器间建立了 SSL 连接。 (1) 客户端发送列出客户端密码能力的客户端“您好”消息(以客户端首选项顺序排序),如 SSL 的版本、客户端支持的密码对和客户端支持的数据压缩方法。 消息也包含 28 字节的随机数。 (2) 服务器以服务器“您好”消息响应,此消息包含密码方法(密码对)和由服务器选择的数据压缩方法,以及会话标识和另一个随机数。 注意:客户端和服务器至少必须支持一个公共密码对,否则握手失败。 服务器一般选择最大的公共密码对。 (3) 服务器发送其SSL数字证书。 (服务器使用带有 SSL 的 X.509 V3 数字证书。 )如果服务器使用 SSL V3,而服务器应用程序(如 Web 服务器)需要数字证书进行客户端认证,则客户端会发出“数字证书请求”消息。 在 “数字证书请求”消息中,服务器发出支持的客户端数字证书类型的列表和可接受的CA的名称。 (4) 服务器发出服务器“您好完成”消息并等待客户端响应。 (5) 一接到服务器“您好完成”消息,客户端( Web 浏览器)将验证服务器的SSL数字证书的有效性并检查服务器的“你好”消息参数是否可以接受。 如果服务器请求客户端数字证书,客户端将发送其数字证书;或者,如果没有合适的数字证书是可用的,客户端将发送“没有数字证书”警告。 此警告仅仅是警告而已,但如果客户端数字证书认证是强制性的话,服务器应用程序将会使会话失败。 (6) 客户端发送“客户端密钥交换”消息。 此消息包含 pre-master secret (一个用在对称加密密钥生成中的 46 字节的随机数字),和 消息认证代码 ( MAC )密钥(用服务器的公用密钥加密的)。 如果客户端发送客户端数字证书给服务器,客户端将发出签有客户端的专用密钥的“数字证书验证”消息。 通过验证此消息的签名,服务器可以显示验证客户端数字证书的所有权。 注意: 如果服务器没有属于数字证书的专用密钥,它将无法解密 pre-master 密码,也无法创建对称加密算法的正确密钥,且握手将失败。 (7) 客户端使用一系列加密运算将 pre-master secret 转化为 master secret ,其中将派生出所有用于加密和消息认证的密钥。 然后,客户端发出“更改密码规范” 消息将服务器转换为新协商的密码对。 客户端发出的下一个消息(“未完成”的消息)为用此密码方法和密钥加密的第一条消息。 (8) 服务器以自己的“更改密码规范”和“已完成”消息响应。 (9) SSL 握手结束,且可以发送加密的应用程序数据。

什么是SSL连接?

SSL (Secure Socket Layer)为Netscape所研发,用以保障在Internet上数据传输之安全,利用数据加密(Encryption)技术,可确保数据在网络上之传输过程中不会被截取及窃听。 目前一般通用之规格为40 bit之安全标准,美国则已推出128 bit之更高安全标准,但限制出境。 只要3.0版本以上之I.E.或Netscape浏览器即可支持SSL。 当前版本为3.0。 它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。 SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。 SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。 SSL协议提供的服务主要有:1)认证用户和服务器,确保数据发送到正确的客户机和服务器;2)加密数据以防止数据中途被窃取;3)维护数据的完整性,确保数据在传输过程中不被改变。 SSL协议的工作流程:服务器认证阶段:1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。 用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。 经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。 从SSL 协议所提供的服务及其工作流程可以看出,SSL协议运行的基础是商家对消费者信息保密的承诺,这就有利于商家而不利于消费者。 在电子商务初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。 但随着电子商务的发展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。 虽然在SSL3.0中通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但是SSL协议仍存在一些问题,比如,只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,SSL协议并不能协调各方间的安全传输和信任关系。 在这种情况下,Visa和 MasterCard两大信用卡公组织制定了SET协议,为网上信用卡支付提供了全球性的标准。

ssl握手协议使用的是什么算法

SSL版本中所用到的加密算法包括:RC4、RC2、IDEA和DES,而加密算法所用的密钥由 消息散列函数MD5产生。 RC4、RC2是由RSA定义的,其中RC2适用于块加密,RC4适用于流 加密。

什么叫SSL

SSL主要作用:对传输信息进行加密(客户端与服务器端的链路加密)、认证用户身份(基于数字证书的高强度认证)SSL现在广泛应用于电子商务、电子政务等,如网银、支付宝、手机钱包、网上证券等SSL (Secure Socket Layer) 安全套接字层 当前版本为3.0。 它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。 SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。 SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。 SSL协议提供的服务主要有: 1)认证用户和服务器,确保数据发送到正确的客户机和服务器; 2)加密数据以防止数据中途被窃取; 3)维护数据的完整性,确保数据在传输过程中不被改变。

网址推荐 网址推荐