880 likes | 1.13k Views
第 9 章 网络安全与网络管理. 本章主要内容. 计算机网络具有连接形式多样性、终端分布不均匀性和网络的开放性、互连性等特征,所以网络易受到黑客、恶意软件和其他形式的非法攻击,这使得 计算机网络安全与管理问题 日益突出。网络安全已经涉及国民经济的各个领域,已经成为信息化建设的一个核心问题。 本章主要介绍 网络安全的概念 、 加密与认证技术 、 防火墙技术 和 网络管理技术 。. 9.1 网络安全概述. 网络安全从本质上来讲就是网络中的 信息安全 。从广义上说,凡是涉及网络信息的 保密性、完整性、可用性、真实性和可控性 的相关技术与原理,都是网络安全所要研究的内容。.
E N D
本章主要内容 • 计算机网络具有连接形式多样性、终端分布不均匀性和网络的开放性、互连性等特征,所以网络易受到黑客、恶意软件和其他形式的非法攻击,这使得计算机网络安全与管理问题日益突出。网络安全已经涉及国民经济的各个领域,已经成为信息化建设的一个核心问题。 • 本章主要介绍网络安全的概念、加密与认证技术、防火墙技术和网络管理技术。
9.1 网络安全概述 • 网络安全从本质上来讲就是网络中的信息安全。从广义上说,凡是涉及网络信息的保密性、完整性、可用性、真实性和可控性的相关技术与原理,都是网络安全所要研究的内容。
网络安全是指网络系统的硬件、软件及其系统中数据的安全,它体现于网络信息的存储、传输和使用过程中。网络安全是指网络系统的硬件、软件及其系统中数据的安全,它体现于网络信息的存储、传输和使用过程中。 • 网络安全性就是指,网络系统的硬件、软件及其系统中的数据受到保护,不受偶然的或恶意的原因而遭到破坏、更改和泄露,系统能够连续、可靠、正常地运行,网络服务不中断。 • 网络安全的保护内容 ① 保护服务、资源和信息; ② 保护结点和用户; ③ 保护网络私有性。
网络安全的含义 • 从一般用户的角度,他们希望涉及个人隐私或商业利益的信息在网络上传输时得到机密性、完整性和真实性的保护,避免其他人或对手利用窃听、冒充、篡改等手段对用户信息进行损害和侵犯,同时也希望用户信息不被非法用户非授权访问和破坏。 • 从网络运行和管理者的角度,他们希望对本地网络信息的访问、读/写等操作受到保护和控制,避免受到病毒、非法存取、拒绝服务、网络资源的非法占用及非法控制的威胁,制止和防御网络黑客的攻击。
从安全保密部门的角度,他们希望对非法的、有害的或涉及国家机密的信息进行过滤和防堵,避免其通过网络泄露,避免由于这类信息的泄密对社会产生危害,给国家造成巨大的经济损失,甚至威胁到国家安全。从安全保密部门的角度,他们希望对非法的、有害的或涉及国家机密的信息进行过滤和防堵,避免其通过网络泄露,避免由于这类信息的泄密对社会产生危害,给国家造成巨大的经济损失,甚至威胁到国家安全。 • 从社会教育和意识形态的角度,网络上不健康的内容会对社会的稳定和人类的发展造成阻碍,必须对其进行控制。
9.1.1 网络安全的需求 • 人们对网络安全性的需求主要有以下6条: (1)保密性 (2)完整性 (3)可用性 (4)可控性 (5)可审查性 (6)可保护性
9.1.2 网络安全的目标 • 网络安全的目标是确保网络系统的信息安全。 • 网络信息安全主要包括两个方面: • 信息存储安全 • 信息传输安全
信息存储安全 • 信息存储安全就是指信息在静态存放状态下的安全,如是否会被非授权调用等。 • 一般通过设置访问权限、身份识别、局部隔离等措施来保证信息存储安全。针对“外部”的访问和调用而言的访问控制技术是解决信息存储安全的主要途径。
信息传输安全 • 在网络系统中,任何调用指令和任何信息反馈均是通过网络传输实现的,所以网络信息传输上的安全就显得特别重要。 • 信息传输安全主要是指信息在动态传输过程中的安全。
网络信息的传输安全问题 • 为确保网络信息的传输安全,需要防止出现如下问题。 (1)截获(interception) (2)伪造(fabrication) (3)篡改(modification) (4)中断(interruption) (5)重发(repeat)
9.2 加密与认证技术 • 密码技术是保证网络与信息安全的核心技术之一。密码学(cryptography)包括密码编码学与密码分析学。 • 密码体制的设计是密码学研究的主要内容。人们利用加密算法和一个秘密的值(称为密钥)来对信息编码进行隐藏,而密码分析则是试图破译算法和密钥。两者相互对立,又互相促进彼此的发展。
9.2.1 数据加密的模型 • 在发送方,明文 P用加密算法 E 和加密密钥 Ke加密,得到密文。在传送过程中可能出现密文被截取者(又称为攻击者或入侵者)截获,但由于没有解密密钥而无法将其还原成明文,从而保证了数据的安全性。到了接收方,利用解密算法 D和解密密钥 Kd,解出明文。
C=EKe(p) P=DKd(C) 传统的数据加密模型 • 当Ke=Kd时,这种加密体制称为单钥或对称密钥加密体制; • 当KeKd时,这种加密体制称为双钥或非对称密钥体制或公开密钥加密体制。
如果不论截取者获得多少密文,在密文中没有足够的信息来解密出对应的明文,则称这一密码体制为无条件安全的(或理论上是不可破的)。如果不论截取者获得多少密文,在密文中没有足够的信息来解密出对应的明文,则称这一密码体制为无条件安全的(或理论上是不可破的)。 • 在无任何限制的条件下,目前几乎所有实用的密码体制都是可破的。因此,人们关心的是研制出在计算机上而非在理论上是不可破的密码体制。
9.2.2 对称密钥加密体制 • 在20世纪70年代公开密钥加密技术问世之前,对称密钥加密体制是唯一存在的一种加密技术。 • 对称加密曾经被无数个人和群体用于安全通信,直至今天的外交、军事和商业用户。 • 下面介绍几种对称密钥加密技术。 1.凯撒加密 2.置换加密 3.数据加密标准
1.凯撒加密 • 凯撒(Caesar)加密算法的思想是:每个字母都用字母表中向左移动一个固定数字的字母代替。例如,将明文字母的顺序保持不变,都左移3个字母,即密钥为3。 明文 a b c d … abcd 密文d e f g … defg • 凯撒加密算法的一种改进方法是单码替换加密算法。这种方法制定一个规则,将明文中的每个字母替换成另一个字母。例如,下面的这组字母对应关系就构成了一个替换加密器: 明文a b c d … abcd 密文 m n b v … mnbv I like you 密文?
2.置换加密 • 置换加密的实现思想是:按某一规则重新排列数据中的字符(或比特)。例如,在发送方以china在字母表中的顺序作为密钥,将明文按5个字符为一组写在密钥下面。 密钥 c h i n a 顺序 2 3 4 5 1 明文 a b c a c k i g n s a f t u o b z m w q • 然后按密钥中的字母在字母表中的排列顺序,按列抄出密文:csoq akab bifz cgtm anuw;在接收方,按密钥中字母顺序按列写下并按行读出,即可得到明文。
3.数据加密标准 • 数据加密标准(Data Encryption Standard,DES)是最典型的对称加密算法,它是由 IBM公司提出,经过国际标准化组织认定的数据加密的国际标准。 • DES是使用最为广泛一个加密标准,被广泛应用在保护金融数据的安全中。通常,自动取款机(Automatic Teller Machine,ATM)都使用DES。
DES使用一个56位的密钥和附加的8位奇偶校验位,产生长度为64位的分组。DES使用一个56位的密钥和附加的8位奇偶校验位,产生长度为64位的分组。 • 这是一个迭代的分组密码,使用称为Feistel的技术,将加密的文本块分成两半。使用子密钥对其中一半应用循环功能,然后将输出与另一半进行异或运算;接着交换这两半,这一过程继续下去,但最后一个循环不交换。 • DES使用16次循环。
函数f变换过程 DES加密算法示意图
DES的保密性完全取决于对密钥的保密,而算法是公开的。在破译DES方面,至今仍没找到比穷举法搜索密钥更有效的方法了。DES的保密性完全取决于对密钥的保密,而算法是公开的。在破译DES方面,至今仍没找到比穷举法搜索密钥更有效的方法了。 • 为了提高DES的安全性,Tuchman提出一种称为三重DES(Triple DES)的算法,它在1985年成为美国的一个商用标准。三重DES使用两个密钥,执行三次DES算法。
9.2.3 公开密钥加密体制 • 在对称密钥加密技术中,加密通信需要通信双方共享一个共同秘密,即用于加密和解密的相同密钥。这种方法带来的一个问题就是双方必须就共享密钥达成一致,即密钥协商和传递的安全性问题。 • 1976年,美国斯坦福大学的Diffie和Hellman论证了一个解决这个问题的算法(现在称为Diffie-Hellman密钥交换),开创了公开密钥加密技术。
公开密钥加密的使用在概念上相当简单。每一个发送者拥有两个密码,一个是任何人都可得到的公开密钥(public key),简称为公钥;另一个是只有发送者本人知道的秘密密钥(private key),简称为私钥。 • 同时,加密算法 E 和解密算法 D 也都是公开的。
公开密钥加密算法的两个重要特征 (1)从计算的角度说,仅仅掌握密码算法和加密密钥是不可能判断出解密密钥的; (2)对于绝大多数的公开密钥加密机制,公钥和私钥这两个相关密钥中的任何一个都可以用于加密,同时另一个用于解密。
公开密钥算法RSA • 目前最流行的公开密钥算法RSA是1977年由MIT的Ronald L. Rivest、Adi Shamir和Leonard M. Adleman 3位数学家共同开发的。RSA分别取自他们姓氏的第一个字母。 • RSA有两个互相关联的部分: ① 公钥和私钥的选择; ② 加密和解密算法。
RSA算法的结论介绍 (1)选择两个大素数p和q(保密)。选择的值越大,RSA越难于攻破,但是执行加密和解密所用的时间也越长。 (2)计算,n=pq,欧拉函数(n)=(p1)(q1)。 (3)随机选择一个小于n的数e,且要求e和 (n)互质。 (4)找到一个数d,使d×e mod (n) =1。
通过上述几步,得到的数对(e,n)为公钥,(n,d )为私钥。计算过程中所使用的两个素数p和q不再需要时应该丢弃,不要让任何人知道。 • 假设待发送的明文是一个比特组合或数m,m<n。为了进行编码,先进行指数运算me,然后计算me被n除的整数余数。则加密后的密文c为 c=me mod n • 在接收方对收到的密文c解密,需要用接收方的私钥(n,d )计算,即 m=cdmod n • 在此加密、解密的过程中,发送方首先使用了接收方的公钥(e,n)进行加密,然后在接收方用其私钥(n,d )解密得到明文。
假设p=5,q=7,则n=35,(n) =24。因为5和24没有公因数,故选择e=5。对于d,要求5×d mod 24=1,故可以选择d=29。所以加密过程为c=m5mod35,解密为m=c29mod35。假设要发送的字符是“love”,每个字母用其在字母表中的序号来表示,则其加密、解密运算的过程如表9-1和表9-2所示。 表9-1 RSA加密过程 (e=5,n=35)
表9-2 RSA解密过程 (d=29,n=35) • RSA算法之所以具有安全性,是基于数论中的一个事实:将两个大的质数合成一个大数很容易,而相反的过程则非常困难。
9.2.4 密钥分配技术 • 在数据加密传输过程中,由于密码算法是公开的,而网络的安全性完全取决于对密钥的保密性,所以如何通过安全的通道对密钥进行分配就成为必须解决的大问题。 • 目前常用的密钥分配方式是设立密钥分配中心(Key Distribution Center,KDC),通过KDC来分配密钥。当用户向KDC注册时,由KDC分配一个用户与KDC之间共享的对称密钥。KDC知道每一个用户的密钥,且每一个用户都可使用这个密钥与KDC进行通信。
在公开密钥加密体制中,公开密钥就像电话号码那样是公开的,一个用户只要查到另一个用户的公开密钥,它们就可以实现安全通信了。在公开密钥加密体制中,公开密钥就像电话号码那样是公开的,一个用户只要查到另一个用户的公开密钥,它们就可以实现安全通信了。 • 然而,要使公开密钥加密体制实用,实体(用户、浏览器和路由器等)必须能够确定它们得到的公开密钥是来自其通信的对方。
对于上述的问题,通常有证书权威机构(Certification Authority,CA)把一个特定实体与其公开密钥绑定在一起,CA的职责就是可以确认从CA得到的某个实体的公开密钥是可信的。 • CA负责完成以下任务: ① 验证一个实体(一个人、一台路由器等)的真实身份; ② 在验证了某个实体的身份后,CA生成一个把该实体的身份和公开密钥绑定到一起的证书(certificate)。 • 这个证书包含这个公开密钥和公开密钥所有者全局唯一的身份标识信息。
9.2.5 数字签名技术 • 数字签名(digital signature)是一种基于密码的身份鉴别技术。 • 数字签名必须保证以下几点: (1)接收者能够核实发送者对报文的签名; (2)发送者事后不能抵赖对报文的签名; (3)接收者不能伪造对报文的签名。
常用的数字签名实现方法采用了公开密钥算法。常用的数字签名实现方法采用了公开密钥算法。 • 在使用公开密钥加密算法进行数字签名前,通常先使用单向散列函数(Hash Function,又称为哈希函数)对要签名的消息进行处理并生成消息摘要(Message Digest, MD),然后对消息摘要进行签名。 • 其中,哈希函数根据报文文本产生固定长度的单向哈希值,有时这个单向值也称为报文摘要,与报文的数字指纹或标准校验和相似。
数字签名通常包括两个过程:数字签名的创建和验证,分别由签名者和接收者执行,其原理如图所示。数字签名通常包括两个过程:数字签名的创建和验证,分别由签名者和接收者执行,其原理如图所示。 图9-6 数字签名的工作原理
9.2.6 电子邮件加密 1.PGP安全协议 • PGP(Pretty Good Privacy,PGP)是一种基于RSA密钥加密体制供大众使用的加密协议。 • PGP并没有使用新的概念,只是将现有的MD5(Message Digest)、RSA等技术综合在一起而已。
2.PEM协议 • PEM(Privacy Enhanced Mail)称为增强隐私的邮件,它是一个正式的Internet标准,由4个RFC文档描述(RFC 1421,1422,1423,1424)组成。 • PEM的功能与PGP的功能类似,都是为电子邮件提供私密性和认证功能。
使用PEM发送消息时,首先要经过规范形式的处理(即对空格、制表符、回车符、换行符等的处理);接着用MD5得出报文摘要,与报文串接在一起后用DES加密;加密后的报文可再用base64编码,然后发送给接收者。使用PEM发送消息时,首先要经过规范形式的处理(即对空格、制表符、回车符、换行符等的处理);接着用MD5得出报文摘要,与报文串接在一起后用DES加密;加密后的报文可再用base64编码,然后发送给接收者。 • 在PEM中,每个报文可以使用RSA或三重DES对报文加密,密钥也存放在报文中一起在网络上传送。同时,PEM有更完善的密钥管理机制,由认证中心CA发布证书,包含有用户姓名、公开密钥和密钥的使用期限等。
9.2.7 电子商务中的加密协议 • 在电子商务安全方面应用比较广泛的安全协议主要有安全套接层(Secure Socket Layer,SSL)和安全电子交易(Secure Electronic Transaction,SET)。
1.SSL安全协议 • SSL是一种在Internet上进行保密通信的安全协议。该协议可以对Internet中客户与服务器之间传送的数据进行加密和鉴别。 • SSL的客户和服务器在正式传送应用数据之前,需要建立会话密钥并有选择地进行身份验证。会话和连接是SSL的两个重要的特点。 • SSL位于TCP层和应用层之间,对应用层是透明的。
SSL为应用层数据提供传输过程中的安全,它提供的安全连接有3个特点:SSL为应用层数据提供传输过程中的安全,它提供的安全连接有3个特点: (1)连接是保密的,对称加密用于加密数据; (2)实体的身份通过公开密钥加密得到验证; (3)连接是可靠的,带密钥的MAC用于保证消息的完整性。 • 虽然SSL可服务于各种应用层协议,如HTTP,FTP,TELNET等,但目前SSL的主要应用对象还是HTTP协议。
SSL由两层组成,低层是SSL记录协议层(SSL Record Protocol Layer),简称为记录层;高层是SSL握手协议层(SSL Handshake Protocol Layer),简称为握手层,如图所示。
SSL协议主要提供3方面的服务: ① 认证用户和服务器,使得它们能够确信数据将被发送到正确的客户端和服务器上; ② 加密数据,以保护数据在传送过程中的安全,即使数据被窃,盗窃者没有解密密钥也得不到可读的资料; ③ 维护数据的完整性,确保数据在传送过程中不被阅读后再传送到目的端,否则客户资料的安全性便受到威胁。另外,整个过程只有商家对客户的认证,缺少了客户对商家的认证。
2.SET安全协议 • SET协议是电子商务协议,也是目前世界上公认的最安全、最成熟的电子支付协议之一,其主要特点如下: ① 信息的保密性 ② 数据的完整性 ③ 持卡人账号的鉴别 ④ 商家的鉴别
SET协议的内容 • SET协议包含SET证书、认证中心(CA)、支付网关和用户注册等内容。 ① SET证书主要包含申请者的个人信息和其公共密钥。在SET中,认证中心颁发的数字证书主要有持卡人证书、商户证书和支付网关证书。 ② 认证中心负责发放和管理用户的数字证书。 ③ 支付网关是金融机构专用网与公用网之间的接口,它是金融网的安全屏障;用户注册由持卡人注册和商户注册两部分构成。
9.3 防火墙技术 • 防火墙(firewall)是把一个组织的内部网络与整个Internet隔离开的软件和硬件的组合,它允许一些数据分组通过,也禁止一些数据分组通过。 • 防火墙允许网络管理员控制对外部网络和被管理网络内部资源之间的访问,这种控制是通过管理流入和流出这些资源的流量实现的。
9.3.1 防火墙的体系结构 • 防火墙的主要作用是实施对内部网络的保护,以防止受到外部网络的攻击。因此,保护内部网络的任务主要包括:① 阻止非授权用户访问敏感数据;② 允许合法用户无障碍地访问内部网络资源。 图9-9 防火墙的实现及其作用