文章分享

开放、平等、协作、快速、分享

当前位置:首页>文章分享

TLS协议、PKI、CA

摘录:HCTech 无锡和控电子   时间:2020-08-07   访问量:3298

本篇文章纯属于想到哪写到哪,所写的内容也不一定对,因为白天工作中刚好谈到TLS协议,然后晚上查阅资料,牵涉出TCP/IP、PKI、CA、TLS/SSI等一系列知识点。本来已经睡下了,还是决定半夜爬起来把自己的一些理解记录下来,怕过一段时间后,把好不容易理解的地方又给遗忘了。


TLS/SSL

传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。TLS/SSL位于应用层和传输层之间,它可以为任何基于TCP等可靠连接的应用层协议提供安全性保证(加密、身份验证、完整性),如下图1。

blob.png

下图2为客户端和服务端的通信流程,为何服务器的证书不能被伪造,因为服务器的证书为光放证书机构CA颁发,其公钥是公开的,以百度举例,其公钥是不是百度的,可通过CA公开的信息查询到,这样能确保公钥是百度的无疑,然后通过百度的公钥解密后如果和证书的摘要(哈希值)一致,则可以确定通信的对方就是百度的服务器,这样就确保了身份验证。

blob.png


加密算法


1. 散列(Hash)

把任意大小的文档变成一个 固定大小(MD5是32个字符)的字符串,过程不可逆。MD5,SHA1等。


2. 对称加密(Symmetric Cryptography)

使用同一个密钥加密和解密,优点是速度快,缺点是密钥管理不方便,要求共享密钥。 DES,AES等。


3. 非对称加密(Asymmetric Cryptography)

使用公钥和私钥来加密和解密,优点是密钥管理很方便,缺点是速度慢。RSA,DSA等。


4. 数字签名(Digital Signature)

使用散列和非对称加密验证文档的真实性。先为要签名的信息生成一个Hash字串,Hash1,然后用你的私钥加密得到Encrypted(Hash1),这就是你对这个文档的数字签名。

当别人需要验证某个文档是否是你签名的时候,只需要用你的公钥解密你的签名得到Hash1,并和该文档计算出来的Hash2对比,查看是否一致。如果一致则说明你确实对该文档签过名,否则就是没有。


PKI

PKI:Public Key Infrastructure,公钥基础设施。

CA:Certificate Of Authority,认证中心。

完整的PKI/CA系统如下部分:


1. 安全服务器:安全服务器面向普通用户,用于提供证书申请、浏览、证书撤销列表、证书下载等安全服务;用户需要首先得到安全服务器的证书(该证书由CA颁发);

2. 注册机构RA:在CA体系结构中起承上启下的作用,一方面向CA转发安全服务器传输过来的证书申请请求,另一方面向LDAP服务器和安全服务器转发CA颁发的数字证书和证书撤销列表(CRL)。

3. LDAP服务器:Lightweight Directory Access

Protocol(轻量目录访问协议),提供目录浏览服务,负责将注册机构服务器RA传输过来的用户信息以及数字证书加入到服务器上。用户通过访问LDAP服务器就能够得到其他用户的数字证书。

4. CA服务器:整个证书机构的核心,负责证书的签发。CA首先

产生自身的私钥和公钥,然后生成数字证书,并且将数字正常传输给安5. 5. 全服务器。CA还负责为安全服务器、RA服务器生成数字证书。

数据库服务器:CA中的核心部分,用于CA中数据(如密钥和用户信息等)、日志、统计信息的存储和管理。

blob.png

CA证书颁发

数字签名要发挥作用,首先需要接收方获取发送方的公钥。如何证明获取的公钥确实是发送方的公钥而不是假冒的呢?数字证书提供了一种发布公钥的简便方法。

<证书的申请、发布、使用>

blob.png

<数字证书的生成和验证>

blob.png



版权声明:本文为CSDN博主「$从入门到放弃$」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_41652912/java/article/details/89484332


上一篇:SSL与TLS有什么区别(最全面的知识点都在这)

下一篇:PSK在TLS中的应用

在线咨询

点击这里给我发消息 售前咨询专员

点击这里给我发消息 售后服务专员

在线咨询

免费通话

24小时免费咨询

请输入您的联系电话,座机请加区号

免费通话

微信扫一扫

微信联系
返回顶部