
SSL握手过程是HTTPS协议中的一个核心部分,它允许客户端及服务器之间进行身份验证,并确保在数据传输的过程中双方的数据都得到了加密保护。在HTTPS连接成功建立之前,SSL握手过程必须在客户端及服务器之间完成。SSL握手过程是整个HTTPS传输过程的安全基石,确保了传输过程中双方的数据即便被黑客窃取也是加密的。
SSL(Secure Socket Layer)是为了解决互联网应用的保密、完整性、验证等问题而设计的安全协议。对于HTTPS协议来说,它是在HTTP协议的基础上加上一层SSL/TLS协议,确保荷载信息在传输过程中得到安全的保护,防止被中间人窃取、伪造、篡改或者重放攻击和其他一些安全问题。
在HTTPS协议连接建立的过程中,SSL握手是不可或缺的一环。SSL握手可以认为是客户端与服务器之间进行的安全协商过程,也是整个传输过程的安全基石。SSL握手完成后,客户端和服务器之间就可以开始加密传输数据。
SSL握手的过程主要包括以下几个步骤:
1. 客户端发送ClientHello消息
客户端在建立HTTPS连接后,首先发送一个ClientHello消息,该消息包含以下信息:
- SSL/TLS协议版本。
- 支持的加密算法集合。
- 随机数(client_random)。
- 按顺序列表打算访问的服务器名。
2. 服务端响应ServerHello消息
服务器收到客户端的ClientHello消息后,根据客户端发来的协议版本信息和加密算法列表选定适合的这两项,然后发送一个ServerHello消息给客户端,该消息包含以下信息:
- 选定的协议版本。
- 选定的加密算法。
- 随机数(server_random)。
3. 服务端发送证书
服务端向客户端发送自己的数字证书,以供客户端验证确认服务器的身份。证书通常以X.509格式存储。客户端使用数字证书中的公钥,检验这个数字证书是否是可以信赖的。
如果运营商对SSL进行中间人劫持,将会伪造一个数字证书发给客户端,在这个数字证书中,证书公钥对应的所有者会是服务器名,这也是窃取机密信息或者篡改数据的原因之一。
4. 客户端验证证书
客户端收到服务端发送的证书后,按照一定的规则验证证书的合法性,如果验证通过,则开始进行下一步的交互。
5. 客户端发送ClientKeyExchange消息
客戶端发送了一个包括重定向信息、余下消息长度和随机数据的信息。它使用发给服务器的随机数和盐值生成预主密钥,并将加密后的预主密钥发送给服务器。
6. 客户端发送ChangeCipherSpec消息
客户端向服务器发送一个消息告诉服务器自己已经提前完成了所有准备工作,可以开始使用加密通信协定了。
7. 服务端发送ChangeCipherSpec消息
服务器向客户端发送一个消息告诉客户端自己已经也完成了所有准备工作,可以开始使用加密通信协定了。
8. 客户端发送Finished消息
客户端向服务器发送一个Finished消息,该消息包含了一个经过计算的验证数据,用于验证握手过程中是否存在任何修改或篡改。
9. 服务端发送Finished消息
服务端向客户端发送一个Finished消息,该消息包含了一个经过计算的验证数据,用于验证握手过程中是否存在任何修改或篡改。
当以上几步完成后,SSL握手过程就完成了。此时,客户端和服务器之间的连接是加密的,所有传输的数据都受到加密保护。
SSL握手过程是HTTPS协议的重要组成部分,可以认为是客户端与服务器之间的安全协商过程。在SSL握手完成后,客户端和服务器之间可以开始安全传输数据。因此,SSL握手过程对于保障HTTPS连接的安全性具有至关重要的作用,完整性,隐私性和可靠性。
互亿无线竭力为您提供全面的SSL证书解决方案,保障您网站的安全与信任。我们呈现丰富多样的SSL证书类型,如DV(域名验证)、OV(组织验证)和EV(扩展验证)证书,满足您各类安全需求。我们提供全面的证书类型,涵盖单域名、多域名以及通配符证书。以便适应您的网站架构需求。我们与全球证书品牌,如Globalsign、DigiCert、GeoTrust、vTrus、COMODO等建立了密切的合作关系,确保您获得高品质的SSL证书。
![]() |
一站式SSL证书购买方案 |
![]() |
享受快速签发的SSL证书服务 |
![]() |
我们提供高性价比的SSL证书价格方案 |
![]() |
提供全方位的SSL证书服务 |
不同的Web服务器支持不同的证书格式。您需要将签发的证书转换为适用于当前Web服务器的格式,以便正常安装SSL证书。本文介绍了如何转换证书格式。
您可以参考以下方法实现证书格式之间的转换:
将JKS格式证书转换为PFX格式
您可以使用JDK自带的Keytool工具,将JKS格式证书文件转换为PFX格式。例如,您可以执行以下命令,并将其转换为PFX格式。cert_name.jks证书文件转换为cert_name.pfx证书文件。
keytool-importkeystore-srckeystoreD:\.jks-destkeystoreD:\.pfx
-srcstoretypeJKS-deststoretypePKCS12
(本文证书名称为cert_name例如:证书文件名称为例cert_name.pem,证书密钥文件名称为cert_name.key。在实际使用过程中,您需要cert_name更换为您的证书名称。)
(Keytool该工具是JDK中自带的密钥管理工具,可以制作出来Keystore(jks)您可以从官方地址下载JDK工具包获取格式证书文件。JDK\jre\bin\security\目录下。)
将PFX格式证书转换为JKS格式
您可以使用JDK自带的Keytool工具,将PFX格式证书文件转换为JKS格式。例如,您可以执行以下命令,并将其转换为JKS格式。cert_name.pfx证书文件转换为cert_name.jks证书文件。
keytool-importkeystore-srckeystoreD:\.pfx-destkeystoreD:\.jks
-srcstoretypePKCS12-deststoretypeJKS
将PEM,KEY或CRT格式证书转换为PFX格式证书
您可以使用OpenSSL工具,将KEY格式密钥文件,PEM或CRT格式公钥文件转换为PFX格式证书文件。例如,将您的KEY格式密钥文件转换为PFX格式证书文件。cert_name.keyPEM格式公钥文件cert_name.pem复制到OpenSSL工具安装目录,使用OpenSSL工具执行以下命令,将证书转换为OpenSSL工具安装目录cert_name.jks证书文件。
opensslpkcs12-export-out.pfx-inkey.key-in.pem
将PFX格式证书转换为PFX格式证书PEM,KEY或CRT格式
您可以使用OpenSSL工具将PFX格式证书文件转换为KEY格式密钥文件,PEM或CRT格式公钥文件。例如,您的PFX格式证书文件cert_name.pfx复制到OpenSSL安装目录,使用OpenSSL工具执行以下命令,将证书转换为OpenSSL安装目录cert_name.pem证书文件和KEY格式密钥文件cert_name.key。
执行opensslpkcs12-in.pfx-nokeys-out.pem。
执行opensslpkcs12-in.pfx-nocerts-out.key-nodes。
将CER格式证书转化为PEM格式
您可以使用OpenSSL工具将CER格式证书文件转换为PEM格式证书。例如,将您的CER格式证书文件cert_name.cer复制到OpenSSL安装目录,使用OpenSSL工具执行以下命令,将证书转换为OpenSSL安装目录cert_name.pem证书文件。
opensslx509-in.cer-out.pem-outformPEM
将PEM格式证书转化为CER格式
您可以使用OpenSSL工具将PEM格式证书文件转换为CER格式证书文件。例如,将您的PEM格式证书文件cert_name.pem复制到OpenSSL安装目录,使用OpenSSL工具执行以下命令,将证书转换为OpenSSL安装目录cert_name.cer证书文件。
opensslx509-in.pem-out.cer-outformDER
安装SSL证书后,可以激活SSL协议,保证网站信息的安全。SSL协议是一种具有加密传输和身份认证功能的网络安全通信协议。通过在客户浏览器和WEB服务器之间建立SSL安全通道,可以帮助网站从http协议向更安全的https协议进步,其功能是记录和加密网络传输中的数据,防止数据被截取或窃听,从而保证网络数据传输的安全。证书可以通过SSL协议认证网站服务器的真实身份,同时对传输的数据进行加密和解密,既能有效减少用户误入钓鱼网站,保护网站用户信息的安全,又能保证网站数据的机密性和完整性,防止第三方窃取和篡改。此外,部署SSL证书的网站还可以获得更好的SEO收录排名,更快的网页加载速度,给用户带来更好的使用体验。
1、购买证书。
需要到权威机构厂家,SSL证书或可信CA机构颁发机构购买。
2、提交域名订单。
然后提交你的域名。其实这个过程也会决定证书的类型。这里就不多介绍了。一般DV单域名或者DV通配符都可以。
3、验证域名。
去域名注册商根据系统提示进行操作分析,银行级OV、EV实名认证接听电话核实身份。
4、取得SSL证书。
几分钟后,刷新界面下载证书,包括各种服务器环境类型的SSL证书。
在线咨询
150,000家
企业客户
22年
行业经验
2V1
2对1客户支持