一、网络安全概述
网络安全的基本特征:相对性、时效性、相关性、不确定性、复杂性以及重要性等。
网络安全:指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。
网络安全通信的基本属性:
- 1、机密性:只有发送方和接收方能理解报文内容。
- 2、消息完整性:消息未被篡改,发生篡改一定会被检测到。
- 3、可访问与可用性:对授权用户提供有效服务。
- 4、身份认证:双方确认彼此的真实身份。
典型的网络安全威胁:
- 1、报文传输:主要包括窃听、插入、假冒、劫持等安全威胁。
- 2、拒绝服务DoS 、分布式拒绝服务DDoS:在网络安全威胁中,拒绝服务DoS是指通过向接收方恶意泛洪分组,淹没接收方,导致带宽耗尽,资源耗尽等过载资源情况。
- 3、映射:先探路,再攻击。Namp 是国外广为使用的端口扫描工具之一
- 4、分组“嗅探”:Wireshark是一个典型的分组嗅探软件。
- 5、IP欺骗:黑客利用IP地址进行欺骗攻击
二、数据加密
密码学:
- 密码编码学:指将密码变化的客观规律应用于编制密码来保守通信秘密
- 密码分析学:研究密码变化客观规律中的固有缺陷,并应用于破译密码以获取通信情报
通信加密模型、传统加密方式、对称密钥加密、非对称/公开密钥加密
密码分类:
1、密码体制的特点、出现的先后时间
- 1、传统加密方式
- 2、对称密钥加密
- 3、非对称 / 公开密钥加密
2、依据处理数据的类型
- 分组密码:又称块密码,将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为 n 的组,每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。
- 序列密码:又称流密码,利用密钥产生一个密钥流,然后对明文串分别加密的过程。解密时使用相同的密钥流,是加密的逆过程。
============传统加密方式===========
1、替代密码:凯撒密码
2、换位密码:列置换密码
凯撒密码:加密:K=3的含义就是明文的每个字母按照字母表顺序推后3位。
换位密码(置换密码):列置换密码,根据一定规则重新排列明文,以便打破明文的结构特性。只改变明文结构,不改变内容。
=============对称密钥加密============
无论是简单的替代密码还是换位密码,安全性都很低,很容易被攻破。现代密码学将替代密码和换位密码相结合,并利用复杂的加密过程,提高密码的安全性。
现代密码学:对称密钥加密和非对称密钥加密。
- 对称密钥加密:加密密钥和解密密钥是相同的。
- 非对称密钥加密(公开密钥加密系统):加密密钥和解密密钥是不同的。
1、对称密钥加密
DES加密算法(Data Encryption Standard):
- 1、加密:明文分为64位分组,使用56位的密钥,进行16轮加密。
- 2、三重DES:使用两个密钥,执行三次DES算法,密钥长度达到112位。
DES过时的原因:密钥长度太短,利用高性能计算机可在短时间内蛮力攻击破解
AES加密算法(Advanced Encryption Standard):密钥长度:128/192/256位,AES 加密过程 4 种操作:字节替代、行移位、列混淆、轮密钥加;解密过程分别为对应的逆过程
AES加密算法的特点:
- 1)分组长度和密钥长度均可变
- 2)循环次数允许在一定范围内根据安全要求进行修正
- 3)安全、效率、易用、灵活
- 4)抗线性攻击和抗差分攻击的能力大大增强
- 5)如果1秒暴力破解DES,则需要149万亿年破解AES
IDEA加密算法(International Data Encryption Algorithm):密钥长度128位。
对称密钥加密面临一个最大问题是密钥分发问题
2、非对称 / 公开密钥加密
通信双方都有两个密钥:
- 公钥:任何人都可以得到
- 私钥:只有自己知道
加密过程:
- 1、Alice用Bob的公钥加密明文,发送。
- 2、Bob收到密文后,用自己的私钥解密得到明文。
非对称密钥加密(公开密钥加密)的算法:
- 典型的公开密钥加密算法:Diffie-Hellman算法和RSA算法;Diffie-Hellman算法:基于数学中素数原根理论。
- RSA算法:基于数论设计,安全性建立在大数分解的难度上;应用比较广泛,安全性高。
三、消息完整性与数字签名
消息完整性(报文认证)的目标
- 1、证明报文确实来自声称的发送方;
- 2、验证报文在传输过程中没有被篡改;
- 3、预防报文的时间、顺序被篡改;
- 4、预防报文持有期被篡改;
- 5、预防抵赖:如发送方否认已发送的消息或接收方否认己接收的消息
消息完整性检测方法:用散列函数,对报文m进行散列化。
典型的散列函数
- 第一种:MD5(Message-Digest Algorithm 5):128位散列值。
- 第二种:SHA-1:作为散列数据的标准,SHA-1 可产生一个 160 位的散列值。SHA-1 是典型的用于创建数字签名的单向散列算法
散列函数的特性:
- 1、散列函数算法公开
- 2、快速计算
- 3、对任意长度报文进行散列产生定长输出
- 4、对于任意报文无法预知其散列值
- 5、不同报文不会产生相同的散列值
- 6、单向性
================报文认证=======================
- 消息完整性检测一个重要目的:完成报文认证的任务。
- 报文认证:使消息的接受者能够检验收到的消息是否是真实的方法。
报文(消息)认证的目的:
- ①消息源的认证,即验证消息的来源是真实的;
- ②消息的认证,即验证消息在传送过程中未被篡改。
报文摘要:对报文m应用散列函数H,得到固定长度的散列码。
A、报文认证的第一种方式:简单报文验证
- 发送方对报文m应用散列函数,得到固定长度的散列码H(m),获得报文摘要h,将扩展报文(m,h)发送给接收方
- 接收方收到扩展报文后,提取出报文m和报文摘要h,同样对报文m应用散列函数H获得新的报文摘要H(m),将H(m)和h比较。
- 若相同,报文认证成功。否则报文认证失败。
简单报文认证缺点:无法达到对消息源认证
B、报文认证的另外一种方式:报文认证码MAC(Message Authentication Code)
- 发送方和接收方共享一个认证密钥s,发送方对报文m和认证密钥s应用散列函数H得到报文认证码h,将扩展报文(m,h)发送给接收方。
- 接收方收到扩展报文后,提取出报文m和报文认证码h,对报文m和认证密钥s应用散列函数H获得新的报文认证码H(m+s),将H(m+s)与h比较。
- 若相等,则报文认证成功。否则失败
报文认证码MAC的不足:无法保证消息在接收方没有被篡改。
==============数字签名==============
数字签名:在公开密码体制中,一个主体使用自己的私钥加密消息,得到的密文。密文可以使用该主体的公钥解密,恢复成原来的消息。如此生成的“密文”对该消息提供认证服务。
数字签名应满足:
1、接收方能够确认发送方的签名,但不能伪造。
2、发送方发出签名的消息给接收方后,就不能再否认他所签发的消息。
3、接收方对已收到的签名消息不能否认,有收报认证。
4、第三者可以确认收发双方之间的消息传送,但不能伪造这一过程。
1、数字签名的一种方式:简单数字签名
- Bob利用自己的私钥对报文m加密,创建签名报文。将扩展报文(报文,签名报文)发送给Alice。
- Alice收到扩展报文。利用Bob的公钥解密签名报文,并检验解密后的签名报文和报文m是否一致。
- 若一致,则签名m的一定是Bob的私钥。
2、数字签名的另外一种方式:签名报文摘要
- Bob对报文m应用散列函数H生成报文摘要H(m),然后Bob通过其私钥对报文摘要进行加密生成加密的报文摘要,将扩展报文(报文,加密的报文摘要)发送给Alice。
- Alice收到报文m以及加密的报文摘要。Alice利用Bob的公钥解密加密的报文摘要,并对m应用散列函数生成新的报文摘要。
- 如果两者一致,则签名报文m的一定是Bob的私钥。
四、身份认证
身份认证:身份鉴别。一个实体经过计算机网络向另一个实体证明其身份的过程。
1、基于共享对称密钥的身份认证;
2、基于公开密钥的身份认证;
基于共享对称密钥的身份认证
- 1、Alice向Bob发送报文“我是Alice”
- 2、Bob选择一个一次性随机数R,然后把这个值发送给Alice
- 3、Alice使用她与Bob共享的对称秘密密钥加密这个一次性随机数,然后把加密的一次性随机数发回给Bob。
- 4、Bob解密收到的报文。
基于公开密钥的身份认证
- 1、Alice向Bob发送报文“我是Alice”
- 2、Bob选择一个一次性随机数R,然后把这个值发送给Alice
- 3、Alice使用她的私钥来加密R,然后把加密的一次性随机数发回给Bob。
- 4、Bob向Alice索要她的公钥。
- 5、Alice向Bob发送自己的公钥。
- 6、Bob利用Alice的公钥解密收到的报文。
五、密钥分发中心(KDC)与证书认证(CA)
对称密钥分发的典型解决方案:通信各方建立一个大家都信赖的密钥分发中心(Key Distribution Center , KDC);解决对称密钥安全可靠的分发。
密钥分发中心(Key Distribution Center , KDC):解决对称密钥安全可靠的分发
证书认证机构(CA):解决非对称密钥问题
- 要使公钥密码有效,需要证实你拥有的公钥,实际上就是要与你通信的实体的公钥。
- 将公钥与特定的实体绑定,通常由认证中心(Certification Authority,CA)完成。
认证中心(Certification Authority,CA)的作用:
- 1)CA可以证实一个实体的真实身份。
- 2)一旦CA验证了某个实体的身份,CA会生成一个把其身份和实体的公钥绑定起来的证书,其中包含该实体的公钥及其全局唯一的身份识别信息等,并由CA对证书进行数字签名。
方式一:通信发起方生成会话密钥
- 1、Alice和Bob进行保密通信。Alice随机选择一个会话秘钥。用Alice和KDC之间长期的共享密钥加密会话秘钥,发送给KDC。
- 2、KDC得到后,解密获得会话密钥,以及所希望通信方Bob。KDC利用其和Bob的长期共享密钥加密密钥,发送给Bob。
- 3、Bob解密,获得会话秘钥,并且得知期望和自己通信的是Alice。
方式二:KDC为Alice、Bob生成通信的会话秘钥
- 1、Alice在希望和Bob通信时,首先向KDC发送请求消息。
- 2、KDC收到请求消息后,随机选择一个会话秘钥,并将会话秘钥分别用和
- Alice、Bob的长期共享密钥加密,再分别发送给Alice、Bob。
- 3、Alice、Bob收到KDC的密文后,分别解密,获得会话秘钥。
六、防火墙与入侵检测系统
概念:防火墙是能够隔离组织内部网络与公共互联网,允许某些分组通过,而阻止其他分组进入或离开内部网络的软件、硬件或者软件硬件结合的一种设施。
防火墙的分类
- 1、无状态分组过滤器:典型部署在内部网络和网络边缘路由器上的防火墙。路由器逐个检查数据报,根据访问控制表(Access Control Lists ,ACL)实现防火墙规则。
- 2、有状态分组过滤器:跟踪每个TCP连接建立、拆除,根据状态确定是否允许分组通过。
- 3、应用网关:应用网关实现授权用户通过网关访问外部网络的服务。
入侵检测系统(Intrusion Detection System,IDS)是当观察到潜在的恶意流量时,能够产生警告的设备或系统。
七、网络安全协议
自顶向下各层解决安全性的实例协议
- 1、安全电子邮件(应用层)
- 2、安全套接字层SSL(传输层)
- 3、虚拟与用网VPN和IP安全协议IPSec(网络层)
1、安全电子邮件(电子邮件对网络安全的需求):
- 1、机密性
- 2、完整性
- 3、身份认证性
- 4、抗抵赖性
安全电子邮件标准:PGP标准(Pretty Good Privacy)
- PGP提供的服务:邮件加密;报文完整性;数字签名;
- 加密算法:公钥加密算法(如RSA)、对称加密算法(如3DES)、散列算法(如SHA-1)
2、 网络安全协议
安全套接字层SSL
- 1、一般Web服务器越强大,包含安全漏洞的概率越高。
- 2、Web浏览器也会遇到各种各样的安全威胁。
- 3、普通Web应用的应用层数据,在传输过程中都已明文形式传输,可能受到攻击
- 4、在电子商务背景下,提出HTTP安全电子商务交易协议;
- 5、在传输层之上构件一个安全层:安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)
SSL可以提供的服务:机密性、完整性、身份认证等安全服务。
SL协议栈(协议的总和):SSL是介于TCP和HTTP等应用层协议之间的一个可选层,大多数应用层;协议直接建立在SSL协议之上,SSL是两层协议。
SSL协议栈:
SSL握手协议:在插、握手过程中需要用到SSL握手协议、SSL更改密码规格协议、SSL警告协议。主要作用:协商密码组和建立密码组;服务器认证与鉴别和客户认证与鉴别
SSL警告协议:为对等实体传递SSL警告或终止当前连接。包含两个字段:警告级别和警告代码。
SSL记录协议:描述了信息交换过程中的消息格式,前面3个协议需要记录协议进行封装与传输。
3、虚拟专用网VPN和IP安全协议IPSec
虚拟与用网VPN:建立在公共网络上的安全通道,是用户通过公用网络建立的临时的、安全的连接;实现进程用户、分支机构、业务伙伴等与机构总部网络的安全连接,从而构建针对特定组织机构的专用网络。虚拟转用网最重要的特点就是虚拟。虚拟转用网一般指的是构建在Internet上能够自我管理的专用网络;关键技术:隧道技术,如IPSec。
VPN涉及的关键技术:隧道技术(核心) 、数据加密 、身份认证、密钥管理 、访问控制、 网络管理
隧道:通过Internet提供的点对点的数据传输的安全通道。通过数据加密保证安全;数据进入隧道时,由VPN封装成IP数据报,通过隧道在Internet上传输;离开隧道后,进行解装,数据便不再受VPN保护。
IPSec体系简介:IPSec是网络层使用最广泛的安全协议,但IPSec不是一个单一的协议,而是一个安全体系;主要包括:封装安全载荷协议( ESP)、认证头( AH)协议
IPSec传输模式:传输模式和隧道模式
- 1、传输模式:主机模式。IPSec数据报的发送和接收都由端系统完成。
- 2、隧道模式:将IPSec的功能部署在网络边缘的路由器上,路由器之间建立安全隧道,数据报在其中封装传输。
传输模式和协议组合
- 1、传输模式AH
- 2、隧道模式AH
- 3、传输模式ESP
- 4、隧道模式ESP:最广泛和最重要的IPSec形式。