文章目录
- 一、网络安全概述
-
- 1. 基本概念
- 2. 网络安全威胁
- 二、数据加密
-
- 1. 基本概念
- 2. 传统加密方式
- 3. 对称密钥加密
- 4. 非对称/公开密钥加密
- 三、消息完整性与数字签名
-
- 1. 消息完整性检测方法
- 2. 报文认证
- 3. 数字签名
- 四、身份认证
- 五、密钥分发中心与证书认证
-
- 1. 密钥分发中心
- 2. 证书认证机构
- 六、防火墙入侵检测系统
-
- 1. 防火墙基本概念
- 2. 防火墙的分类
- 3. 入侵检测系统IDS
- 七、网络安全协议
-
- 1. 安全电子邮件
- 2. 安全套接字层SSL(TLS)
- 3. 虚拟专用网VPN和IP安全协议IPSec
一、网络安全概述 1. 基本概念 网络安全通信所需要的基本属性:
- 机密性;
- 消息完整性;
- 可访问与可用性;
- 身份认证。
- 窃听;
- 插入;
- 假冒;
- 劫持;
- 拒绝服务Dos和分布式拒绝服务DDos;
- 映射;
- 嗅探;
- IP欺骗。
密文:被加密的消息。
加密:伪装消息以隐藏消息的过程,即明文转变为密文的过程。
解密:密文转变为明文的过程。
2. 传统加密方式
- 替代密码
用密文字母代替明文字母。
文章图片
- 换位密码
根据一定的规则重新排列明文。
- 对称密钥密码:加密密钥和解密密钥相同(密钥保密)。
- 非对称密钥密码:加密密钥和解密密钥不同。
- 分组密码
在加密前,先对整个明文进行分组。然后对每一组二进制数据进行加密处理,产生一组密文数据。最后将各组密文串接起来,即得出整个的密文。
例如:DES、AES、IDEA等都属于分组密码。
- DES:56位密钥,64位分组。
- 三重DES:使用两个密钥(共112位),执行三次DES算法。
- AES:分组128位,密钥128/192/256位。
- IDEA:分组64位,密钥128位。
- 流密码
每次处理一位二进制数,挨个进行处理。
典型的公钥算法:Diffie-hellman算法、RSA算法。
文章图片
三、消息完整性与数字签名 1. 消息完整性检测方法 密码散列函数:
- 特性:
定长输出(当输入一组数据时,不管该组数据的长度是多少,都能输出固定长度结果,即固定长度的散列值);
单向性(无法根据散列值逆推报文);
抗碰撞性(无法找到具有相同散列值的两个报文)。
- 典型散列函数
MD5:128位散列值
SHA-1:160位散列值
报文认证的两种方法:
简单报文验证:仅使用报文摘要(即密码散列散列函数),可以防篡改,但不能防伪造,不能真正实现报文鉴别。
- 散列函数问题
文章图片
3. 数字签名 数字签名的三个功能:
- 实体鉴别:证明来源。
- 报文鉴别:防篡改,保证完整性。
- 不可否认:防抵赖。
- 简单数字签名:直接对报文签名
通常使用公钥加密,但是直接加密报文所使用的计算量过大。
- 签名报文摘要
文章图片
上图展示了签名报文摘要的工作流程,Bob对报文m应用散列函数H生成报文摘要H(m),然后Bob通过其私钥KB+对报文摘要进行加密生成加密的报文摘要KB-(H(m)),将扩展报文(m,KB-(H(m))))发送给Alice。假设Alice收到报文以及加密的报文摘要(m,KB-(H(m)))),Alice利用Bob的公钥解密KB+解密KB-(H(m)),并检验KB+(KB-(H(m)))来证实报文是否是Bob签名的。如果KB+(KB-(H(m)))=H(m)成立,则签名报文的一定是Bob的私钥。
- 口令:会被窃听;
- 加密口令:可能遭受回放(重放)攻击;
重放:攻击者截获加密口令,之后再把它重新发给认证服务器,这样即使攻击者不知道正确口令,也能通过认证。
- 加密一次性随机数:可能遭受中间人攻击。
使用一次随机数的基本过程:
文章图片
- Alice向Bob发送报文“我是Alice”
- Bob选择一个一次性随机数然后把这个值发送给Alice。
- Alice使用她与Bob共享的对称秘密密钥KA-B来加密这个一次性随机数,然后把加密的一次性随机数KA-B?发回给Bob。由于Alice知道KA-B并用它加密了R,就使得Bob知道收到的报文是由Alice产生的,于是,这个一次性随机数便可用于确定Alice是活跃的。
- Bob解密接收到的报文。如果解密得到的一次性随机数等于他发送给Alice的那个一次性随机数,则可确认Alice的身份。
文章图片
- Alice向Bob发送报文“我是Alice”。
- Bob选择一个一次性随机数,然后把这个值发送给Alice。
- Alice使用她的私钥来加密R,然后把加密结果发回给Bob。
- Bob向Alice索要她的公钥。
- Alice向Bob发送自己的公钥。
- Bob用Alice的公钥解密收到的报文。如果解密得到的一次性随机数等于他发送给Alice的那个一次性随机数R则可确认Alice的身份。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EnCyXzJq-1643292760594)(D:/llf/Snipaste/202201271901806.png)]
Alice向Bob发送消息,但是发送的消息被中间人Trudy劫持;Trudy劫持消息后将其转发给Bob;Bob收到消息后向他认为的“Alice”发送一次性随机数同样被Trudy动持;Trudy将一次性随机数转发给Alice;Alice收到后,向她认为的“Bob”发送用自己私钥加密的一次性随机数;与此同时,Trudy也向Bob发送用自己私钥加密的一次性随机数,并向Alice索要Alice的公钥;Bob收到加密后的一次性随机数后,向“Alice”索要公钥;然后,Trudy成功获取了Alice发来的公钥KA,并将自己的公钥碍发送给Bob。至此,Trudy己经完全成为了“中间人”,Bob与Alice可以收到彼此发送的所有信息,但同时Trudy也收到了所有信息。再之后,Bob会用Trudy的公钥加密消息,而此时Trudy只需要使用自己的私钥解密,就可以获取信息。
这中间最主要的问题是,公钥被替换,也就是无法确认一个公钥到底是谁的。
文章图片
2. 证书认证机构 认证中心CA:将公钥与特定的实体绑定,为实体颁发数字证书。
数字证书是对公钥与其对应的实体 (人或机器) 进行绑定的一个证明。每个证书中写有公钥及其拥有者的标识信息(例如:人名、地址、电子邮件地址或IP地址等)。
注意:
- 证书中有A使用自己私钥的数字签名。
- 把CA的数字签名和未签名的B的证书放在一起,就最后构成了已签名的B的数字证书。
- 证书被CA进行了数字签名,是不可伪造的。
- 任何用户都可从可信任的地方(如代表政府的报纸)获得认证中心CA的公钥,以验证证书的真伪。数字证书是公开的,不需要加密。
【计算机网络|网络安全基础】
文章图片
已签名的B的数字证书的生产过程:
文章图片
核实数字证书的过程:
A拿到B的数字证书后,使用数字证书上给出的CA的公钥,对数字证书中CA的数字签名进行E运算(解密),得出一个数值。再对B的数字证书(CA数字签名除外的部分)进行散列运算,又得出一个数值。比较这两个数值。若一致,则数字证书是真的。
六、防火墙入侵检测系统 1. 防火墙基本概念 防火墙:能够隔离组织内部网络与公共互联网,允许某些分组通过,而阻止其他分组进入或离开内部网络的软件、硬件或者软件硬件结合的一种设施。只有符合安全规则的信息才能通过防火墙(从外部到内部或从内部到外部)。
前提:从外部到内部和从内部到外部的所有流量都经过防火墙。
2. 防火墙的分类
- 无状态分组过滤器
基于特定的规则(不考虑通信状态,仅仅是通过IP地址或端口号来判断)对分组是通过还是丢弃进行决策。
使用访问控制列表(ACL)实现防火墙规则。
- 有状态分组过滤器
跟踪每个TCP连接建立、拆除,根据状态确定是否允许分组通过。
- 应用网关
鉴别用户身份或针对授权用户开放特定服务。
七、网络安全协议 1. 安全电子邮件 电子邮件安全需求
- 机密性;
- 完整性;
- 身份认证性;
- 抗抵赖性。
2. 安全套接字层SSL(TLS)
- SSL是介于应用层和传输层之间的安全协议。
- SSL作用在TCP之上建立起一个安全通道,为通过TCP传输的应用层数据提供安全保障。
- 1999年,IETF在SSL 3.0基础上设计了TLS 1.0,为所有基于TCP的网络应用提供安全数据传输服务。
- TLS的位置
文章图片
在发送方,TLS接收应用层的数据,对数据进行加密孬然后把加密后的数据送往TCP套接字。
在接收方,TSL从TCP套接字读取数据,解密后把数据交给应用层。
- TLS建立安全会话的工作原理
文章图片
TLS的握手阶段:验证服务器,生成会话阶段所需的共享密钥
- 协商加密算法。①浏览器A向服务器B发送浏览器的TLS版本号和一些可 选的加密算法。②B从中选定自己所支持的算法(如RSA),告知A, 同时把自己的CA数字证书发送给A。
- 服务器鉴别。③客户A用数字证书中CA的公钥对数字证书进行验证鉴别。
- 生成主密钥。④客户A按照双方确定的密钥交换算法生成主密钥MS。⑤客户A用B的公钥PKB对主密钥MS加密,得出加密的主密钥PKB(MS),发送给服务器B。
- 服务器B用自己的私钥把主密钥解密出来。⑥:SKB(PKB(MS))=MS。这 样,客户A和服务器B都有了为后面数据传输使用的共同的主密钥MS。
- 生成会话密钥⑦和⑧。为了使双方的通信更加安全,客户A和服务器B最好使用不同的密钥。主密钥被分割成4个不同的密钥。每一方都拥有这样4个密钥(注意:这些都是对称密钥):
- 客户A发送数据时使用的会话密钥KA
- 客户A发送数据时使用的MAC密钥MA
- 服务器B发送数据时使用的会话密钥KB
- 服务器B发送数据时使用的MAC密钥MB
- VPN
建立在公共网络上的安全通道,实现远程用户、分支机构、业务伙伴等与机构总部网络的安全连接,从而构建针对特定组织机构的专用网络。
关键技术:隧道技术,如IPSec。
- 典型的网络层安全协议一IPSec
提供机密性、身份鉴别、数据完整性验证和防重放攻击服务。
体系结构:认证头AH协议、封装安全载荷ESP协议。
运行模式:传输模式(AH传输模式、ESP传输模式)、隧道模式(AH隧道模式、ESP隧道模式)。
参考资料:《计算机网络(第8版)》—— 谢希仁
推荐阅读
- 计算机网络|【计算机网络】TCP的流量控制和拥塞控制
- 计算机网络|OSI七层模型和各自功能
- 计算机网络|TCP流量控制与拥塞控制
- 计算机网络|TCP的流量控制(滑动窗口)和拥塞控制
- 计算机网络|计算机网络 拥塞控制和流量控制,简述TCP的流量控制与拥塞控制
- 计算机网络基础|TCP流量控制与拥塞控制总结
- 网络|node-red、nodejs与JavaScript之间的区别与联系
- Linux|Linux网络(传输层TCP/UDP)
- Linux|Linux网络(应用层HTTP)