PKI存储库:各个终端实体证书以及CRL列表等信息的集中存放地,提供公众查询,可以是LDAP服务器或普通数据库。
PKI相关基本理论
1、对称加密算法(机密性)
- 用同一把秘钥对数据进行加密,使用相同秘钥对数据进行解密。传输过程中第三方没有获取到加密秘钥就无法解决。
- 对称加密算法在VPN中常用的有:
• DES
• 3DES
• AES
优点:1、加解密速度很快,可以用硬件实现,效率高。2、加密后的数据比较紧凑(紧凑:明文数据和加密后的数据大小相差不大)
- 适合对大的数据进行加解密
缺点:1、通讯双方要提前获取同一份秘钥(用于加解密),秘钥分发、管理、存储,秘钥存在很大问题。2、通信双方如何安全交互这一把秘钥是一个大问题。
- 1、如何要和100个用户进行数据传输,要为每个用户协商秘钥,这100个用户只用同一个秘钥不安全,要安全就要产生100个秘钥。
2、非对称加密算法(机密性)
- 通信的两个用户之间会彼此先拥有一把秘钥对,公钥和私钥,彼此之间交互公钥。发送方可以用接收方公钥加密发送给接收方,接收方使用自己的私钥解密(公钥加密私钥解密,私钥解密公钥加密)。
• 公钥:用于共享,所有用户都可以获取(所有用户指需要这把公钥的用户)。
• 私钥:只有拥有者有私钥,不能被其他人获取(私钥具有唯一性)。
• 公钥和私钥存在数学关系,通常公钥由私钥衍生而来,我们无法在很短时间内用公钥反推出私钥。
- 常见的非对称加密算法有:
• DH
• ASE
优点:1、安全性好,私钥唯一性。
缺点:1、加密后数据变得比较大,对设备性能和带宽有影响。2、加密速度比较慢(相对于对称加密),复杂度更高。
- 不适合对大的数据进行加密
3、数字指纹(完整性)
- 数字指纹是指通过某种算法对数据信息进行综合计算得到的一个固定长度的数字序列,这个序列有时也称信息摘要,常采用单向哈希算法对原始数据进行散列计算得出数字指纹
• 作用是保障数据的完整性。
• 哈希算法有两大类:
• MD5系列
• 128bit
• SHA系列
• 160bit
• MD5和SHA都可以实现数字指纹,通过算法都可以得到固定长度的数字序列。SHA的安全性高于MD5。
- 数字指纹四大特点:
• 1、固定大小
• 无论原始报文是多大,通过哈希后得到的都是固定长度。
• 2、雪崩效应
• 修改文件任何一个bit,修改后得出的哈希值结果和原始文件计算的哈希值结果都会不一样。
• 3、单向不可逆
• 单向算法不可逆,没办法通过哈希值推算出原始数据。
• 4、冲突避免
• 不同的文件计算出的哈希值可能是相同的(几率很低)
- 数字指纹存在的漏洞
• 如果攻击者将数据和哈希一起替换,接收方就无法判断这份数据是否是完整的数据,为了弥补这个缺点,实际使用中,我们会把文件和某一个key(key可以随机生成或者自己配置)一起做哈希值,这个key在接收和发送方保持一致(key本地存在不在网络传输,这样的话可以防范这种攻击,而且一定情况下也可以避免冲突产生)。
4、数字签名(不可否认性)
- 数字签名:将明文数据进行哈希计算后得出定长的哈希值,用自己的私钥对哈希值进行加密的结果就是数字签名。非对称加密不适合大量数据的加密,而对定长的哈希值进行加密,设备性能以及网络带宽影响就很小了。
- 数字签名用途
• 加密:数字签名相当于加密之后的密文。
• 源认证:发送者用自己私钥和哈希值进行的加密,能够产生这份加密数据的人只有私钥的拥有者,而私钥具有唯一性。
• 保障通信双方身份的合法性
- 存在的漏洞
• 用户2是要用用户1的公钥对数字证书进行解密,用户2如何判断这个公钥就是用户1的?
5、数字信封
1、数字信封的功能类似于普通信封,数字信封采用密码技术保证只有指定的接收人才能阅读信息的内容。2、数字信封中采用了对称密码算法和非对称密码算法。信息发送者首先利用随机产生或预先配置的对称密码加密信息(发送者和接收者随机产生一致的加密秘钥),再利用接收方的公钥加密对称密码,被公钥加密后的对称密码被称之为数字信封。3、信息接收方要解密信息时,必须先用自己的私钥解密数字信封,得到对称密码,然后利用对称密码解密所得到的信息,这样就保证了数据传输的真实性和不可窥探性。
- vpn中交换对称秘钥的方式有三种:
• 1、静态预先配置,两边配置一样。
• 2、通过某种机制协商成一样。
• 3、一边生成对称秘钥,利用接收方的公钥发给对方,对方用自己密码解密获得这个秘钥。
- 对称加密和非对称加密两者的优点相结合
• 对称秘钥加密数据效率高,非对称加密安全性高。
6、数字证书
数字证书简称为证书,它是由证书机构签发的电子数据,是PKI技术的基础。数字证书是网络上实体的身份证明,证明某一实体身份和公钥的合法性以及实体与公钥的匹配关系。证书是公钥的载体,证书上的公钥与唯一实体身份绑定。证书格式及证书内容遵循X.509标准,主要内容包括:序列号、用户公钥、用户实体信息、签证机构的信息、签证机构的签名(数字签名)、证书有效期等。
7、证书吊销列表
由于用户身份、用户信息或者用户公钥的改变、用户私钥泄漏、CA私钥泄漏、从属关系改变或用户业务中止等原因,需要存在一种方法提前将现行的证书撤消,即撤消公钥及相关用户身份信息的绑定关系。在PKI 中,使用的方法为CRL(CertificateRevocationList,证书吊销列表),即证书黑名单。通常证书具有一定的有效期,但CA可通过证书吊销的过程来缩短这一有效期。CA 发布一个证书吊销列表,列出被认为不能再使用的证书的序列号。CRL指定的寿命通常比证书指定的寿命短得多。CA 也可以在CRL中加入证书被吊销的理由。在吊销的证书到期之后,CRL中的有关条目被删除,以缩短CRL列表的大小。
8、证书注册
证书注册,即证书申请,就是实体向CA 自我介绍并获取证书的过程。实体向CA 提供身份信息,以及相应的公钥,这些信息将成为颁发给该实体证书的主要组成部分。实体向CA 提出证书申请,有离线和在线两种方式。离线申请方式下,CA 允许申请者通过带外方式(如电话、磁盘、电子邮件等)向CA 提供申请信息。在线证书申请有手工发起和自动发起两种方式。
PKI系统逻辑结构
用户通过与PKI的管理层RA进行交互,通过RA身份认证后,就可以提交申请到CA进行证书申请CA就可以颁发证书给用户。通常,我们在现实生活中,例如网上银行要用到证书,证书申请还需要比较传统的方法,到银行去手动办理,进行填写表格后,由银行进行确认后,CA才会颁发。而在我们一些使用证书的解决方案中,就不需要这么麻烦,可以使用计算机通过网络来实现整个PKI结构的使用及其服务申请。
手动秘钥交换与确认
- 安全地交换公钥,最简单的安全方法是需要带外验证:1、回读收到的密钥(指纹)通过一个安全的通道/途径(电话)。2、如果它是匹配的,说明密钥在传输中没有被更改。3、它不具备可扩展性。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
一个人可以走的很快,但一群人才能走的更远。如果你从事以下工作或对以下感兴趣,欢迎戳这里加入程序员的圈子,让我们一起学习成长!
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算
/bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0)
AI人工智能、Android移动开发、AIGC大模型、C C#、Go语言、Java、Linux运维、云计算、MySQL、PMP、网络安全、Python爬虫、UE5、UI设计、Unity3D、Web前端开发、产品经理、车载开发、大数据、鸿蒙、计算机网络、嵌入式物联网、软件测试、数据结构与算法、音视频开发、Flutter、IOS开发、PHP开发、.NET、安卓逆向、云计算