1、计算机网络安全计算机网络安全的本质和内容网络安全从其本质上来讲就是网络上的信息安全。信息安全是对信息的保密性、完整性和可用性的保护,包括物理安全、网络系统安全、数据安全、信息内容安全和信息基础设施安全等。计算机网络面临的安全性威胁 n计算机网络上的通信面临以下的四种威胁: (1) 截获从网络上窃听他人的通信内容。 (2) 中断有意中断他人在网络上的通信。 (3) 篡改故意篡改网络上传送的报文。 (4) 伪造伪造信息在网络上传送。n截获信息的攻击称为被动攻击,而更改信息和拒绝用户使用资源的攻击称为主动攻击。对网络的被动攻击和主动攻击 截获篡改伪造中断被动攻击主 动 攻 击目的站源站源站源站源站目
2、的站目的站目的站网络安全的目标进不来进不来拿不走拿不走看不懂看不懂改不了改不了跑不了跑不了网络安全的攻击手段物理破坏窃听数据阻断攻击数据篡改攻击数据伪造攻击数据重放攻击盗用口令攻击中间人攻击缓冲区溢出攻击分发攻击野蛮攻击SQL注入攻击计算机病毒蠕虫后门攻击欺骗攻击拒绝服务攻击特洛伊木马 网络信息系统网络信息系统内部人员威胁内部人员威胁拒绝服务攻击拒绝服务攻击逻辑炸弹逻辑炸弹特洛伊木马特洛伊木马黑客攻击计算机病毒计算机病毒信息泄漏、信息泄漏、篡改、破坏篡改、破坏后门、隐蔽通道后门、隐蔽通道蠕虫蠕虫社会工程社会工程天灾天灾系统系统Bug网络安全机制数据加密机制密码技术是保障信息安全的核心技术。消息
3、被称为明文。用某种方法伪装消息以隐藏它的内容的过程称为加密。加了密的消息称为密文。而把密文转变为明文的过程称为解密。信息加密是保障信息安全的最基本、最核心的技术措施和理论基础。信息加密也是现代密码学主要组成部分。密码学发展历程密码学是一门古老的科学,大概自人类社会出现战争便产生了密码,以后逐渐形成一门独立的学科。密码学的发展历史大致可以分为三个阶段:在1949年之前,是密码发展的第一阶段古典密码体制。古典密码体制是通过某种方式的文字置换进行,这种置换一般是通过某种手工或机械变换方式进行转换,同时简单地使用了数学运算。虽然在古代加密方法中已体现了密码学的若干要素,但它只是一门艺术,而不是一门科学
4、。 密码学发展历程从1949年到1975年,是密码学发展的第二阶段。1949年Shannon发表了题为保密通信的信息理论的著名论文,把密码学置于坚实的数学基础之上,标志着密码学作为一门学科的形成,这是密码学的第一次飞跃。然而,在该时期密码学主要用在政治、外交、军事等方面,其研究是在秘密地进行,密码学理论的研究工作进展不大,公开的发表的密码学论文很少。 密码学发展历程1976年,WDiffie和MHellman在密码编码学新方向一文中提出了公开密钥的思想,这是密码学的第二次飞跃。1977年美国数据加密标准(DES)的公布使密码学的研究公开,密码学得到了迅速地发展。1994年美国联邦政府颁布的密钥
5、托管加密标准(EES)和数字签名标准(DSS)以及2001年颁布的高级数据加密标准(AES),都是密码学发展史上一个个重要的里程碑。 置换密码在置换密码中,每个字母或每一组字母被另一个字母或另一组字母来取代,从而将明文中的字母掩盖起来,也就是在密文中将明文伪装起来。一种常用的方法是将明文字母表移动k个字母,例如k为3,即A变成D,B变成E,C变成F,Z变成C,此时k就是这种循环移动字母表的通用加密方法的密钥。根据映像方式的不同,可分为单表置换密码和多表置换密码。典型的置换密码:福尔摩斯探案集中的跳舞的小人helloworldkhoorzruog算法:置换算法算法:置换算法密钥:密钥:k=3明文
6、明文密文密文一些重要概念一些重要概念 n密码编码学(cryptography)是密码体制的设计学,而密码分析学(cryptanalysis)则是在未知密钥的情况下从密文推演出明文或密钥的技术。密码编码学与密码分析学合起来即为密码学(cryptology)。n如果不论截取者获得了多少密文,但在密文中都没有足够的信息来唯一地确定出对应的明文,则这一密码体制称为无条件安全的,或称为理论上是不可破的。n如果密码体制中的密码不能被可使用的计算资源破译,则这一密码体制称为在计算上是安全的。 明文 X 截获密文 Y一般的数据加密模型 加密密钥 K明文 X密文 Y截取者篡改ABE 运算加密算法D 运算解密算法
7、因特网解密密钥 K传统基础加密方法置换密码(Substitution Cipher)换位密码(Transposition Cipher)换位密码换位密码又称代换密码,它不更改保持明文的字母,但是重新对字母进行排序,形成新的密文序列。典型的置换密码:美国南北战争时期(1861-1865年),军队中曾经使用过的“栅栏”式密码(rail fence cipher)现代加密体制分类对称密钥体制非对称密钥体制混合密钥体制对称密钥算法的优缺点优点:加解密速度快。缺点:网络规模扩大后,密钥管理很困难;无法解决消息确认问题;缺乏自动检测密钥泄露的能力。非对称密钥算法的优缺点优点:可以适用网络的开放性要求,密钥
8、管理相对简单;可以实现数字签名功能。缺点:算法一般比较复杂,加解密速度慢。混合密钥体制第一步,数据发送者A用对称密钥把需要发送的数据加密。第二步,A用B的公开密钥将对称密钥加密,形成数字信封,然后一起把加密数据和数字信封传给B。第三步,B收到A的加密数据和数字信封后,用自己的私钥将数字信封解密,获取A加密数据时的对称密钥。第四步B使用A加密的对称密钥把收到的加密数据解开。两类密码体制 1. 对称密钥密码体制 n所谓常规密钥密码体制,即加密密钥与解密密钥是相同的密码体制。n这种加密系统又称为对称密钥系统。数据加密标准 DESn数据加密标准 DES 属于常规密钥密码体制,是一种分组密码。n在加密前
9、,先对整个明文进行分组。每一个组长为 64 位。n然后对每一个 64 位 二进制数据进行加密处理,产生一组 64 位密文数据。n最后将各组密文串接起来,即得出整个的密文。n使用的密钥为 64 位(实际密钥长度为 56 位,有 8 位用于奇偶校验)。 2. 公钥密码体制n公钥密码体制使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。 n公钥密码体制的产生主要是因为两个方面的原因,一是由于常规密钥密码体制的密钥分配问题,另一是由于对数字签名的需求。n现有最著名的公钥密码体制是RSA 体制,它基于数论中大数分解问题的体制,由美国三位科学家 Rivest,
10、 Shamir 和 Adleman 于 1976 年提出并在 1978 年正式发表的。加密密钥与解密密钥 n在公钥密码体制中,加密密钥(即公钥) PK 是公开信息,而解密密钥(即私钥或秘钥) SK 是需要保密的。n加密算法 E 和解密算法 D 也都是公开的。n虽然秘钥 SK 是由公钥 PK 决定的,但却不能根据 PK 计算出 SK。 公钥算法的特点 n发送者 A 用 B 的公钥 PKB 对明文 X 加密(E 运算)后,在接收者 B 用自己的私钥 SKB 解密(D 运算),即可恢复出明文: (7-4) n解密密钥是接收者专用的秘钥,对其他人都保密。n加密密钥是公开的,但不能用它来解密,即 XXE
11、DYDPKSKSK)()(BBB(7-5)XXEDPKPK)(BB公钥算法的特点(续)n加密和解密的运算可以对调,即 n在计算机上可容易地产生成对的 PK 和 SK。n从已知的 PK 实际上不可能推导出 SK,即从 PK 到 SK 是“计算上不可能的”。n加密和解密算法都是公开的。XXEDXDEBBBBPKSKSKPK)()((7-6)公钥密码体制 密文Y E 运算加密算法D 运算解密算法加密解密明文 X明文 X ABB 的私钥 SKB密文Y 因特网B 的公钥 PKB3 数字签名n数字签名必须保证以下三点:(1) 报文鉴别接收者能够核实发送者对报文的签名;(2) 报文的完整性接收者不能伪造对报
12、文的签名;(3) 不可否认发送者事后不能抵赖对报文的签名。n现在已有多种实现各种数字签名的方法。但采用公钥算法更容易实现。 密文 )(AXDSK数字签名的实现 D运算明文 X明文 X ABA 的私钥 SKA因特网签名 核实签名E运算密文 )(AXDSKA 的公钥 PKA数字签名的实现n因为除 A 外没有别人能具有 A 的私钥,所以除 A 外没有别人能产生这个密文。因此 B 相信报文 X 是 A 签名发送的。n若 A 要抵赖曾发送报文给 B,B 可将明文和对应的密文出示给第三者。第三者很容易用 A 的公钥去证实 A 确实发送 X 给 B。n反之,若 B 将 X 伪造成 X,则 B 不能在第三者前
13、出示对应的密文。这样就证明了 B 伪造了报文。 具有保密性的数字签名 )(AXDSK)(AXDSK核实签名解密 加密 签名 E 运算D 运算明文 X明文 X ABA 的私钥 SKA因特网E 运算B 的私钥 SKBD 运算加密与解密签名与核实签名)(ABXDESKPKB 的公钥 PKBA 的公钥 PKA密文报文摘要 MD (Message Digest)nA 将报文 X 经过报文摘要算法运算后得出很短的报文摘要 H。然后然后用自己的私钥对 H 进行 D 运算,即进行数字签名。得出已签名的报文摘要 D(H)后,并将其追加在报文 X 后面发送给 B。 nB 收到报文后首先把已签名的 D(H) 和报文
14、 X 分离。然后再做两件事。n用A的公钥对 D(H) 进行E运算,得出报文摘要 H 。n对报文 X 进行报文摘要运算,看是否能够得出同样的报文摘要 H。如一样,就能以极高的概率断定收到的报文是 A 产生的。否则就不是。 报文摘要算法n报文摘要算法就是一种散列函数。这种散列函数也叫做密码编码的检验和。报文摘要算法是防止报文被人恶意篡改。 n报文摘要算法是精心选择的一种单向函数。n可以很容易地计算出一个长报文 X 的报文摘要 H,但要想从报文摘要 H 反过来找到原始的报文 X,则实际上是不可能的。n若想找到任意两个报文,使得它们具有相同的报文摘要,那么实际上也是不可能的。 报文摘要的实现 A比较签
15、名 核实签名报文 XHD 运算D(H)A 的私钥报文 XD(H)B报文摘要报文 XD(H)发送 E 运算H签名的报文摘要H报文摘要运算A 的公钥报文摘要运算报文摘要报文摘要因特网身份认证查证对方的真实身份身份认证n基于共享秘密密钥的认证nDiffie hellman密钥交换协议n使用密钥分发中心的认证nKerberos认证协议n基于公开密钥系统的认证一.基于共享秘密密钥的认证(基于对称密钥系统的认证)n1.认证过程A,B分别是Alice和BobRA,RB分别是Alice和Bob选择的随机数KAB为Alice和Bob的共享密钥认证过程演示2.反射攻击:利用截获对方的有用信息来攻击对方3.挫败反射
16、攻击: Alice和Bob从不同的整数集合中选择随机数,例如Alice选奇数 Bob选偶数二.Diffie hellman密钥交换协议n其中,n,g为两个大素数,且(n-1)/2和(g-1)/2也都是素数。(保证安全性)n认证过程演示n问题:真正解决身份认证必须有可信赖的第三方三、使用密钥分发中心的认证n在网络中,为了减少用户的共享密钥数目,通常需要一个密钥分发中心来管理会话密钥。n密钥分发中心简记为KDC n(Key Distribution Center)大嘴蛙协议n其中,KDC是可信赖的密钥分发中心。nKS是Alice选择的与Bob共享会话密钥nKA是Alice选择的与KDC共享会话密钥
17、nKB是Bob与KDC共享会话密钥n认证过程演示大嘴蛙协议优缺点n优点:每个用户只需维护一个共享密钥,即与KDC的共享密钥。n问题:KDC如何鉴定Alice? KA如何产生?n缺点:易受到重发攻击挫败重发攻击n1.每条消息中加上时间戳,若接收端收到过时的消息则丢弃,但大型网络中很难做到时钟同步n2.每条消息中设置一个唯一性的序号(通过检查是否已收到这个序号来判断是否已经过时),但要求每个用户保存以前收到的消息序号AB四、Kerberos认证协议认证协议ASTGS使用两台服务器:使用两台服务器:认证服务器认证服务器(AS):在登录时验证用户的身份:在登录时验证用户的身份许可证服务器许可证服务器(
18、TGS):用于发放:用于发放“许可证许可证”,证实,证实持证者确实如他所自称得一样持证者确实如他所自称得一样ABKerberosAASTGSTKAB, A, KABKBT + 1KABA, KSTKS, B,KTGA, KABKB,B, KABKSKTGKAA, KSKS, 五、基于公开密钥系统的认证nEA和EB分别是Alice和Bob的加密密钥nRA,RB分别是Alice和Bob选择的随机数nKS为Alice和Bob的共享密钥n认证过程演示公钥认证n公钥认证:证实某一公钥确实属于某一用户。nPKI(公钥基础设施)公钥基础设施PKI(Pubic Key Infrastructure)又叫公钥体
19、系,是一种标准的公钥证书管理体制,它通过离线的数字证书(公钥证书)来说明某一公钥的真实性。是一种利用公钥加密技术为电子商务的开展提供一套安全基础平台的技术和规范。PKI基础设施采用数字证书来管理公钥,通过第三方的可信任机构认证机构CA,把用户的公钥和用户的其他标识信息捆绑在一起,在Internet网上验证用户的身份。PKI基本组成n一、证书颁发机构(CA)主要职责:验证并标识申请者的身份;签署公钥证书通过安全信道发放证书证书的维护X.509版本版本3数字证书格式数字证书格式n一、证书颁发机构(CA)n二、注册机构(RA):分担CA的部分功能n三、证书库:公开的,保存所有用户的数字证书n四、用户
20、PKI基本组成n数字证书管理机构n数字证书的申请注册n数字证书的生成n数字证书的更新发送方发送方发送方私有密钥发送方数字证书+信息数字签名发送方数字证书加密对称密钥加密后信息接收方公开密钥加密数字信封信息数字摘要接收方接收方解密对称密钥加密后信息发送方数字证书+信息比较比较数字信封接收方私有密钥解密数字摘要数字签名发送方公开密钥解密数字摘要发送方发送方发送方私有密钥发送方数字证书+信息数字签名发送方数字证书加密对称密钥加密后信息接收方公开密钥加密数字信封信息数字摘要n防火墙的原义是指古代建筑在房屋之间的一道墙,当某一房屋发生火灾的时候,它能防止火势蔓延到别的房屋。n防火墙是目前一种广泛应用的网
21、络安全技术,它用来控制两个不同安全策略的网络之间互访,从而防止不同安全领域之间的相互危害。防火墙(firewall)防火墙(firewall)n防火墙是由软件、硬件构成的系统,是一种特殊编程的路由器,用来在两个网络之间执行访问控制策略的一个或一组系统。控制策略是由使用防火墙的单位自行制订的,为的是可以最适合本单位的需要。防火墙具备属性n它是不同网络或网络安全领域直接信息流通过的惟一出入口,所有双向数据流必须经过它;n只有被授权的合法数据,即防火墙系统中安全策略允许的数据,才可以通过它;n该系统应具有很高的抗攻击能力,自身能不受各种攻击的影响。n防火墙将网络分隔成不同的物理网络,限制威胁从一个子
22、网扩散到另一子网,正如传统意义的防火墙防止火势蔓延一样。n防火墙内的网络称为“可信赖的网络”(trusted network),而将外部的因特网称为“不可信赖的网络”(untrusted network)。防火墙可用来解决内联网和外联网的安全问题。防火墙在互连网络中的位置 G内联网可信赖的网络不可信赖的网络分组过滤路由器 R分组过滤路由器 R应用网关外局域网内局域网防火墙因特网防火墙的功能n防火墙的功能有两个:阻止和允许。n“阻止”就是阻止某种类型的通信量通过防火墙(从外部网络到内部网络,或反过来)。n“允许”的功能与“阻止”恰好相反。n防火墙必须能够识别通信量的各种类型。不过在大多数情况下防火墙的主要功能是“阻止”。 防火墙技术一般分为两类 (1) 网络级防火墙用来防止整个网络出现外来非法的入侵。属于这类的有分组过滤和授权服务器。前者检查所有流入本网络的信息,然后拒绝不符合事先制订好的一套准则的数据,而后者则是检查用户的登录是否合法。(2) 应用级防火墙从应用程序来进行接入控制。通常使用应用网关或代理服务器来区分各种应用。例如,可以只允许通过访问万维网的应用,而阻止 FTP 应用的通过。