首页 > 编程语言 >ssl/tls加密算法讲解

ssl/tls加密算法讲解

时间:2024-12-24 23:55:12浏览次数:7  
标签:tls 公钥 加密 报文 ssl 算法 加密算法

ssl算法和tls算法的关系

      在我的理解中ssl算法属于是tls算法的父亲,但是由于tls算法比ssl算法优秀很多,所以说现在基本上都使用tls算法,而tls算法的使用情景和我们的日常生活息息相关,比如http协议和https协议,这两个协议的根本区别是http协议采用明文传输,而https协议采用了tls加密算法,采用公钥,私钥,会话秘钥进行加密(公钥/私钥对用于非对称加密,主要用于密钥交换;会话密钥用于对称加密,用于实际的数据传输。),还有vpn协议,也是采用了tls加密。

加密算法产生的背景

    在http协议中,我们的报文都是明文传输,这样就会导致黑客很容易就得到报文数据,并且可能对报文数据进行篡改,使得我们的聊天非常不安全

而有了https协议以后,就会在应用层对数据进行加密,使得黑客就算得到数据以后还是没办法看懂报文是什么,但是如果只是单纯的加密的话,可能黑客还会将数据进行篡改,使得数据失效

TLS算法讲解

首先是TCP的三次握手,然后,客户端向服务器发送支持的tls版本的加密算法,当服务端得到对应的报文以后,返回所要的tls版本和加密算法,然后再将自己的ca证书发送给客户端,然后客户端判断ca证书的真实性(验证证书的指纹和签名),然后系统中的ca公钥提取出证书中的服务器公钥,然后客户端生成预主秘钥利用服务器公钥加密后发送给服务端,服务端利用服务端私钥解密得到预主秘钥,然后此时就利用这个预主秘钥(也就是会话秘钥)进行后面的数据加密传输。

标签:tls,公钥,加密,报文,ssl,算法,加密算法
From: https://blog.csdn.net/weixin_74994990/article/details/144703485

相关文章

  • 雷池社区版 SSL 证书安装部署
    雷池社区版SSL证书安装部署示例说明域名:rivers.chaitin.cnWeb服务为Nginx安装SSL证书前,请在Nginx服务器上开启HTTPS默认端口443,避免证书安装后无法启用HTTPS。证书安装在控制台服务器类型选择Nginx(请注意基于自己Web服务类型进行选择),并点击下载文件解压。......
  • 低版本Android发送https请求,Android4.4.2启用TLSv1.2,Android4.4.2发送https请求报错,An
    参考:https://blog.csdn.net/weixin_54087854/article/details/134625241https://blog.csdn.net/weixin_35647799/article/details/117684065Android4.4.2发送https请求时,出现错误:javax.net.ssl.SSLProtocolException:SSLhandshakeaborted:ssl=0xb7eabc88:FailureinSSLlibr......
  • Camstar禁用SSL,使用Http替代Https登录Portal
    前提:1.Camstar安装正常并正常可以通过浏览器打开登录2.适用Camstar版本:8.3/8.5/8.9(问就是别的版本没用过)默认安装完成的地址:https://localhost/CamstarPortal/default.htm#/loginStep1:进入系统注册表修改相关信息CamstarInSiteServer进入注册表:regedit找到路......
  • 一键使用 Bash 脚本生成有效期至 2999 年的 SSL 证书并自动部署
    #!/bin/bash#设置变量CA_KEY="cakey.pem"CA_CERT="ca.crt"CA_SERIAL="ca.srl"CLIENT_KEY="client.pri"CLIENT_CSR="client.csr"CLIENT_CERT="client.crt"CACERT_PEM="cacert.pem"OUTPUT_DIR=&q......
  • 自签名SSL证书生成
    1、生成顶级CA的公钥证书和私钥文件##有效期15年(指定RSA2048bits,默认RSA1024bits)opensslreq-newkeyrsa:2048-x509-days5480-keyoutCARoot2048.key-outCARoot2048.crt2、为顶级CA的私钥文件去除保护口令openss1rsa-inCARoot2048.key-outCARoot2048.key3......
  • centos7.6 nginx配置ssl证书
    1、Linux(Centos7.6)Nginx安装部署并配置SSL证书(简单方便版)https://blog.csdn.net/m0_63684495/article/details/1287483102、解决nginx:[emerg]the“ssl“parameterrequiresngx_http_ssl_modulein/usr/local/nginx的问题https://blog.csdn.net/guo_qiangqiang/article/d......
  • Windows10如何安装OpenSSL并生成证书
    1.安装第三方软件FireDaemonOpenSSL下载地址:适用于MicrosoftWindows的OpenSSL3.4、3.3、3.0LTS、1.1.1LTS二进制文件安装过程中注意勾选“添加到环境变量”。2.进入到安装目录如C:\ProgramFiles\FireDaemonOpenSSL3\bin,确保目录下存在openssl.exe文......
  • CMake构建学习笔记19-OpenSSL库的构建
    1.概述OpenSSL是一个开源的加密工具包和库,主要实现了安全套接字层(SSL)和传输层安全(TLS)协议,以及各种加密算法、数字签名、消息摘要、加密证书等功能。这个库可以说是Web开发尤其是HTTPS通信的基石了。这里就具体讲解一下如何构建它。2.构建过程2.1Windows环境首先要说明的是O......
  • 宝塔面板SSL证书即将到期,如何续签?
    当宝塔面板中的SSL证书即将到期时,可以通过关闭现有证书并重新申请的方式来完成续签。以下是详细的步骤:登录宝塔面板:打开浏览器,输入你的宝塔面板地址和端口,例如:http://你的服务器IP:8888,使用管理员账号和密码登录。进入网站管理:在左侧导航栏中,选择“网站”。找到需要续......
  • 传输层安全协议TLS 超全解析!(含record、handshake握手全流程、Alert、ApplicationData)
    TLS协议概述SSL即安全套接字层,它位于OSI网络模型中的传输层,SSL在1999年更名为TLS,即传输安全层,直到现在,TLS一共出现过三个版本,1.1、1.2和1.3,目前最广泛使用的是1.2,所以接下来的探讨都是基于TLS1.2的版本上的。设计目标保密性通过加密算法保护数据内容,......