1、1数据通信与计算机网络(第5版)杨心强 陈国友编著电子工业出版社 2017 年 8 月课件制作人声明n本课件是电子工业出版社数据通信与计算机网络(第5版)的教辅材料,共12个 Powerpoint 文件(每章一个)。任课教师可根据教学的实际需要,结合自己的授课风格,自行修改或增删其内容,但不宜自行出版销售。n对于课件中存在的缺点和错误,欢迎读者提出宝贵意见,以便及时修订。课件制作人 杨心强 2017年8月23数据通信与计算机网络(第5版)第12章 计算机网络的管理和安全4第12章 计算机网络的管理和安全教学目的n了解计算机网络管理的一般概念(定义、模型、体系结构、网管功能,以及SNMP协议)n
2、了解计算机网络安全的一般概念(威胁和需求)n了解数据加密技术(加密模型和两种密钥密码体制)n掌握常用的网络安全策略n了解因特网的安全协议机制学习内容n计算机网络的管理n简单网络管理协议SNMPn计算机网络的安全n数据加密技术n网络安全策略n因特网的安全协议5第12章 内容提纲12.1 计算机网络的管理12.2 简单网络管理协议SNMP12.3 计算机网络的安全12.4 加密模型和密码体制12.5 网络安全策略12.6 因特网的安全协议12.1 计算机网络的管理12.1.1 网络管理概述n随着计算机网络的发展与普及,计算机网络的管理和安全问题越来越愈受到人们的关注和重视。其原因是:网络必须正常、
3、高效地运行;网络资源被广泛应用于政治、经济、科学以及军事等各个领域;网络的用户来自社会各个阶层和部门;计算机网络中的数据信息在存储和传输过程中,被窃取、复制、泄露或篡改的可能性不断增加;威胁计算机网络管理和安全的因素来自多个方面。6712.1.1 网络管理概述(续1)n计算机网络必须有一个高效的网络管理系统,才能为用户提供令人满意的服务。n网络管理(简称网管)已被列为“未来网络结构”的三大关键技术(高速交换技术、虚拟网络技术、网络管理技术)之一。n计算机网络的发展趋势是:网络规模不断扩大,复杂性不断增加,网络异构性越来越高。812.1.1 网络管理概述(续2)n网络管理的概念由来已久。话务员就
4、是整个电话网络系统的管理者。n20世纪5070年代期间,先后出现了三个事件:长途直拨、程控交换机和网络运营系统,对网络管理起着重大的变革作用。网络管理逐渐由人工管理过渡到机器管理。n计算机网络的管理,则始于1969年阿帕网(ARPANET)。n网络管理所追求的目标是集成化、开放型、分布式的网络管理。912.1.1 网络管理概述(续3)n网络管理有狭义和广义之分。狭义网络管理是指对网络通信量(traffic)等网络性能管理,广义网络管理是指对网络应用系统的管理。但至今尚无一个精确的定义。n网络管理不是指对网络进行行政上的管理,而是以提高整个网络系统的效率、管理和维护水平为目标,主要涉及对一个网络
5、系统的资源和活动,进行监视、测试、配置、分析、协调、评估和控制,并以合理的价格满足网络的一些需求。1012.1.2 网络管理的一般模型网络管理的一般模型网络管理员因特网A网管协议被管设备被管设备被管设备被管设备管理站AAAM 管理程序(运行 SNMP 客户程序)代理程序(运行 SNMP 服务器程序)MA1112.1.2 网络管理的一般模型(续1)网络管理模型中的主要构件n管理站常称为网络运行中心NOC(Network Operations Center),是整个网络管理系统的核心。由网络管理员直接操作和控制。管理站的关键构件是管理程序。n管理站(硬件)或管理程序(软件)都可称为管理者(mana
6、ger),它不是指人而是指机器或软件。管理程序在运行时成为管理进程。n网络管理员(administrator)指的是人。大型网络往往实行多级管理,因而有多个管理者,而一个管理者一般只管理本地网络的设备。12.1.2 网络管理的一般模型(续2)网络管理模型中的主要构件(续1)n被管设备如主机、路由器等(含软件)。有时可称网络元素(或网元)。网络的每一个被管设备中可能有个多被管对象(Managed Object)。被管对象可以是被管设备中的某些硬件或软件的配置参数的集合。在被管设备中也会有一些不能被管的对象。n代理(agent)是指运行在被管设备中的一个网络管理代理程序程序(简称代理),以便和管理
7、站中的管理程序进行通信。代理程序在管理程序的命令和控制下在被管设备上采取本地的行动。1212.1.2 网络管理的一般模型(续3)网络管理模型中的主要构件(续2)n网络管理协议(简称网管协议)。n必须注意,并不是网管协议本身来管理网络。网管协议只是管理程序和代理程序之间进行通信的规则。n网络管理员利用网管协议通过管理站对网络中的被管设备进行管理。1312.1.2 网络管理的一般模型(续4)管理者/代理方式n管理程序和代理程序按客户/服务器方式工作。n管理程序运行SNMP客户程序,向某个代理程序发出请求(或命令),代理程序运行SNMP服务器程序,返回响应(或执行某个动作)。n在网管系统中往往是一个
8、(或少数几个)客户程序与很多的服务器程序进行交互。141512.1.3 网络管理的体系结构n网络管理体系结构 指网络管理系统的逻辑结构,包括网络管理模型、网络管理模式(管理者代理模式)、网络管理协议及管理信息库MIB(Management Information Base)。n从应用角度,网管体系结构有两种类型:公用网管体系结构 由管理者、代理和MIB等三部分组成。这是一种集中式网管结构。OSI和因特网的网管均属于此类。专用网管体系结构 针对特定网络环境提出的网络管理体系结构。如Open View。1612.1.3 网络管理的体系结构(续1)n1990年初,开放软件基金会OSF提出分布式管理环
9、境DME的网络管理方案,将是未来计算机网络管理的发展方向。nDME的基本思想是:网管系统独立于具体的硬件与操作系统;提供标准的结构、服务和开发环境;开发简单易学的网管应用软件。1712.1.4 ISO的网络管理功能nISO 7498-4标准定义了网络管理的五项基本功能,简称FCAPS。1、故障管理 当网络中某个组成失效时,网络管理器应能迅速检测出故障,将其定位,并采取适当措施及时排除。包括故障检测、诊断和恢复三个方面。2、配置管理 对被管对象相关功能集合进行定义、识别、控制和监视。目的是为了实现某个特定功能或使网络性能达到最优的等级。3、计费管理 依据各种电信资费标准,以及管理用户对网络资源的
10、使用情况,对用户核收费用。1812.1.4 ISO的网络管理功能(续1)4、性能管理 通过监视和分析被管网络及其所提供服务的性能机制,来评估系统的运行状况及通信效率等系统性能。使网络能够提供可靠、连续的通信服务。5、安全管理 建立加密及密钥管理、授权和访问机制,以及建立、维护和检查安全日志。nISO就网络管理只定义了上述五项基本功能。许多厂商都扩展了网络管理的内容,作为网络管理系统功能的一部份。19第12章 内容提纲12.1 计算机网络的管理12.2 简单网络管理协议SNMP12.3 计算机网络的安全12.4 加密模型和密码体制12.5 网络安全策略12.6 因特网的安全协议12.2 简单网络
11、管理协议SNMPn20世纪80年代初期,因特网的发展使人们意识到网络管理的重要性。为此,人们对网络管理的开发研究十分重视,并提出了多种网络管理方案。nSNMP发布于1988年,于1990年成为因特网的正式标准(RFC 1157)。之后又修订为SNMPv2,1999年4月又提出了SNMPv3。SNMPv3最大的修改是定义了比较完善的安全模式,提供了基于视图的访问机制和基于用户的安全模型等安全机制。nSNMP属于应用层协议,内容丰富,共有8个RFC文档(RFC 34113418)。2012.2 简单网络管理协议SNMP(续1)n网络管理的基本思想:若要管理某个对象,就必然会给该对象添加一些软件或硬
12、件,但这种“添加”必须对原有对象的影响尽量小些。它的指导思想是尽可能简单。nSNMP的基本功能是监视网络性能、检测分析网络差错和配置网络设备等。nSNMP使用管理器和代理的概念。由管理器(通常是主机)控制和监视一组代理(通常是路由器)。管理器运行SNMP客户程序,代理运行SNMP服务程序。管理是通过管理器和代理之间的简单交互来实现的。2112.2 简单网络管理协议SNMP(续2)n整个网络系统必须有一个管理站。n管理进程和代理进程利用 SNMP 报文进行通信,而 SNMP 报文又使用 UDP 来传送。n若网络元素使用的不是 SNMP 而是另一种网络管理协议,SNMP 协议就无法控制该网络元素。
13、这时可使用委托代理(proxy agent)。委托代理能提供如协议转换和过滤操作等功能对被管对象进行管理。2212.2 简单网络管理协议SNMP(续3)网络管理的主要构件nSNMP 定义了管理器和代理之间交换的分组格式,内含对象(变量)及其状态(值)。SNMP还负责读取和改变这些数值。n管理信息结构SMI 定义了对象命名和对象类型(包括范围和长度),以及如何把对象和对象的值进行编码的一些通用规则。但SMI并不定义一个实体管理的对象数目,以及被管对象的名字以及对象与其值之间的关联。n管理信息库MIB 在被管对象的实体中创建命名对象,并规定其类型。2312.2.1 管理信息结构n管理信息结构SMI
14、是SNMP的重要构件,现版本是SMIv2。nSMI有三个功能:被管对象进行命名;定义对象中存储的数据类型;对网络上传输的数据给出编码方法。1、对象命名nSMI规定,每个被管对象都要有一个唯一命名的对象标识符,它处于基于分层次的树结构上。每个对象可用点隔开的整数序列表示,而在树结构用点分隔开的文本名字序列来定义对象。整数点的表示法用在SNMP,而名字点记法是人使用的。2412.2.1 管理信息结构(续1)部分对象标识树25sys(1)if(2)at(3)ip(4)icmp(5)tcp(6)udp(7)egp(8)trans(11)snmp(12)org(3)dod(6)internet(1)1.
15、3.6.1(iso.org.dod.internet)mib-2(1)1.3.6.1.2.1(iso.org.dod.internet.mgmt.mib-2)iso(1)iso-itu-u(2)根itu-t(0)mgmt(2)12.2.1 管理信息结构(续2)2、对象的数据类型nSMI使用抽象语法记法1(ASN.1)来定义数据类型,却又增加了新的定义。nSMI 既是 ASN.1 的子集,又是 ASN.1 的超集。nASN.1 的记法很严格,它使得数据的含义不存在任何可能的二义性。2612.2.1 管理信息结构(续3)SMI把数据类型分为两大类n简单类型,这是最基本的。其中一部分直接取自ASN.
16、1,另一部分是SMI增加的(见表12-1)。n结构化类型。此类型有两种:一种是Sequence,是一些简单数据类型的组合。它类似于C语言中的struct或record。另一种是Sequence of,是所有相同类型的简单数据类型的组合,或同类型的Sequence数据类型的组合,类似于C语言中的array。2712.2.1 管理信息结构(续4)3、编码方法nSMI使用ASN.1制定的基本编码规则BER对每种数据类型中每个数据的值进行编码。nSMI用TLV方法对数据进行编码。28编号类别格式位215标记长度可变可变1字节值标记T(1字节)该字段用来定义数据类型,由三个子字段组成:类别(2位)。用来
17、定义数据的作用域。分为通用类(00),应用类(01),上下文类(10)和专用类(11)。通用类取自于ANS.1,应用类是SMI增加的,而上下文类有5种是为了适应不同的协议。格式(1位)。指明数据类型种类,简单数据类型(0),结构化数据类型(1)。编号(5位)。用来将简单的或结构化的数据进一步划分为子组。12.2.1 管理信息结构(续5)29编号类别格式位215标记长度可变可变1字节值长度L(1或多字节)。当该字段最高位为0,其余7位定义数据长度。当该字段最高位为1,其余7位定义后续字节的字节数,所有后续字节串接起来的二进制数定义该字段的长度。nSMI对数据的编码格式(续1)指出值字段长度=2
18、字节0 0 0 0 0 0 1 01 0 0 0 0 0 1 00 0 0 0 0 0 0 10 0 0 0 0 1 1 0单字节的长度字段指出值字段长度=262 字节多字节的长度字段指出后续字节数=2后续字节数=212.2.1 管理信息结构(续6)30nSMI对数据的编码格式(续2)编号类别格式位215标记长度可变可变1字节值值V(可变)。该字段按照BER规则对数据的值进行编码。n举例1:写出INTEGER 15的编码。先查表12-2,得标记字段是02。再查表12-1,得 INTEGER 类型要用4字节编码。最后得编码为 02 04 00 00 00 0F。n举例2:写出IPAddress
19、192.1.2.3的编码。先查表12-2,得标记字段是40。再查表12-1,得IPAddressV 类型需要4字节表示。因此得出 IPAddress 192.1.2.3 的编码是 40 04 C0 01 02 03。12.2.2 管理信息库n“管理信息”是指管理器能够管理的所有被管对象的集合。n被管理对象必须维持可供管理程序读写的若干控制和状态信息。被管对象的这些信息都保存在虚拟的管理信息库中。每一个代理都有它自己的MIB2。n管理程序使用MIB中的这些信息的值对网络进行管理(如读取或重新设置这些信息)。n在MIB2中的对象分成10个不同的组,表12-3列出了前8个组的含义。n对MIB变量的访
20、问,可参见图12-2,按部分对象标识树结构进行访问。3112.2.3 SNMP报文和协议数据单元nSNMP的操作只有两种:一种是读操作,用get报文来检测各个被管对象的状况;另一种是写操作,用set报文来控制各个被管对象的状况。n这两种基本功能都是通过探询来实现的,即SNMP 管理进程定时向被管理设备周期性地发送探询信息。探询的好处:可使系统相对简单。能限制通过网络所产生的管理信息的通信量。n但探询管理协议不够灵活,而且所能管理的设备数目不能太多。探询系统的开销也较大。如探询频繁而并未得到有用的报告,则通信线路和计算机的 CPU 周期就被浪费了。3212.2.3 SNMP报文和协议数据单元(续
21、1)陷阱(trap)nSNMP 不是完全的探询协议,它允许不经过询问就能发送某些信息。这种信息称为陷阱(其参数是受限制的),表示它能够捕捉“事件”。n当被管对象的代理检测到有事件发生时,就检查其门限值。代理只向管理进程报告达到某些门限值的事件(即过滤)。过滤的好处:仅在严重事件发生时才发送陷阱;陷阱信息很简单且所需字节数很少。3312.2.3 SNMP报文和协议数据单元(续2)有效的网络管理协议SNMPn使用探询(至少是周期性地)以维持对网络资源的实时监视,同时也采用陷阱机制报告特殊事件,使得 SNMP成为一种有效的网络管理协议。nSNMP使用无连接的UDP,因此在网络上传送 SNMP报文的开
22、销较小。但不保证可靠交付。n在运行代理程序的服务器端用熟知端口161来接收 get或set报文和发送响应报文(与熟知端口通信的客户端使用临时端口)。n运行管理程序的客户端则使用熟知端口162来接收来自各代理的trap报文。3412.2.3 SNMP报文和协议数据单元(续3)SNMP报文的格式35版本,现在的版本为第3版。首部,包含报文标识、报文最大长度、报文标志以及报文安全模型。定全参数,用来产生报文摘要。数据部分,包含SNMP协议数据单元PDU。如果数据是加密的,那么在该PDU前面还要有上下文引擎ID和上下文名两个有关加密信息的字段。上下文引擎 ID 上下文名 PDU 类型 请求 ID 差错
23、状态 差错索引 名 值 名 值 UDP 数据报IP 数据报SNMP 报文 IP 首部UDP 首部数据部分 版本首部20 字节 8 字节安全参数有关加密信息的字段SNMP PDU首部变量绑定12.2.3 SNMP报文和协议数据单元(续4)SNMP定义的PDU的类型36编号名 称功 能0GetRequest管理器(客户)向代理(服务器)读取一个或一组变量的值1GetNextRequest管理器向代理读取MIB树上的下一个变量的值,此操作可反复进行2Response代理向管理器发送5种请求报文的响应,并提供管理器所请求的变量的值3SetRequest管理器发送给代理,用来设置变量的值5GetBulk
24、Request管理器发送给代理,用来读取大量的数据(如大型列表的值)6InformRequest管理器发送给另一个远程管理器,用来读取该管理器控制的代理中的变量值7Trap(SNMPv2)代理向管理器报告代理中发生的异常事件8Report在管理器之间报告某些类型的差错,现尚未定义12.2.3 SNMP报文和协议数据单元(续5)PDU各字段的定义n请求标识符(request ID)。是一个序号(4B)。管理进程在向代理发送请求读取变量值的SNMP报文中要用到此请求ID,代理进程在发送响应报文也要返回此请求ID。n差错状态(error status)。只用于响应报文中,给出代理响应报告的差错类型。
25、例如,0表示无差错,1表示响应太大无法装入报文等。n差错索引(error index)。只用于响应报文中,代理进程设置一个整数,指明有差错的变量在变量列表中的偏移。3712.2.3 SNMP报文和协议数据单元(续6)PDU各字段的定义(续)n变量绑定表(varriable-bindings)。这是管理器希望读取或设置的一组具有相应值的变量。在GetRequest和GetNextRequest报文中其值忽略。n非转发器(non-repeaters)和最大重复(max-repetition)。该两个字段仅用于GetBulkRequest中,分别用来替代差错状态字段和差错索引字段。383912.2.
26、3 SNMP报文和协议数据单元(续7)nSNMPv1已是现今最流行的网络管理协议,优点是:简单、易于实现;得到广泛的使用和支持;扩展性好。不足是:不可能提供整体性的网络管理策略;安全性不够完善;未考虑到异构网互连环境。nSNMPv2对SNMPv1作了改进。SNMPv3则在安全特性(鉴别、保密和存取控制)作了较大的改进。40第12章 内容提纲12.1 计算机网络的管理12.2 简单网络管理协议SNMP12.3 计算机网络的安全12.4 加密模型和密码体制12.5 网络安全策略12.6 因特网的安全协议12.3 计算机网络的安全n随着计算机网络的发展,人们在看到计算机网络巨大作用的同时,也要注意到
27、它的负面影响。n因为个别不法分子正要利用计算机网络,非法窃取重要的经济、政治、军事、科技等部门的情报,来自计算机病毒、垃圾邮件、灰色软件等网络公害也日趋严重网络的安全问题也日趋严重。因此,网络安全形势十分严峻,受到人们的普遍关注。n本节讨论计算机网络面临的安全性威胁、安全的内容和一般的数据加密模型。414212.3.1 计算机网络面临的安全威胁计算机网络面临的安全威胁分为两大类n被动攻击 被动攻击试图从系统中窃取信息为主要目的,但不会造成系统资源的破坏。名 称含 义窃取信息通信双方传送的报文中可能含有敏感的或机密的信息,当这些报文通过信道(特别是无线信道)传输时,窃取其内容,可从中了解报文的有
28、用信息。侦收信号搜集各种通信信号的频谱、特征和参数,为电子战做准备。密码破译对加密信息进行密码破译,从中获取有价值的情报信息。口令嗅探使用协议分析器等捕获口令,以达到非授权使用的目的。协议分析因为许多通信协议是不加密的,对通信协议进行分析,可获知许多有价值的信息,供伪造、重放等到主动攻击使用。通信量分析指敌方通过判断通信主机的位置以及身份,观察被交换的报文的频率以及长度,对其进行猜测,从而分析正在进行通信的种类及特点。12.3.1 计算机网络面临的安全威胁(续1)n主动攻击 除了窃取信息,还试图破坏对方的计算机网络为目标,竭力使其不能正常工作,甚至瘫痪。43名 称含 义篡改对传输数据进行篡改,
29、破坏其完整性,以造成灾难性的后果。重放攻击者监视并截获合法用户的身份鉴别信息,事后向网络原封不动地传送截获到的信息,以达到未经授权假冒合法用户入侵网络的目的。假冒假冒者伪装成合法用户的身份以欺骗系统中其他合法用户,获取系统资源的使用权。伪造伪造合法数据、文件、审计结果等,以欺骗合法用户。未授权访问攻击者未授权使用系统资源,以达到攻击目的。抵赖实体在实施行为之后又对实施行为这一过程予以否认。这种攻击常发自其他合法实体,而不是来自未知的非法实体。恶意代码施放恶意代码(如计算机病毒),以达到攻击计算机网络的目的。协议缺陷攻击者通信协议存在的缺陷来欺骗用户或重定向通信量。报文更改对原始报文中的某些内容
30、进行更改,或者将报文延迟或重新排序,以达到未经授权的效果。拒绝服务攻击者向因特网上的某个服务器不停地发送大量分组,阻止或禁止正常用户访问,使网络瘫痪或超载,达到降低网络性能的目的。若从因特网上的成百成千个网站集中攻击一个网站,则称为分布式拒绝服务,有时也称为网络带宽攻击或连通性攻击。4412.3.1 计算机网络面临的安全威胁(续2)一种特殊的主动攻击恶意程序 计算机病毒 可插入正常程序的可执行代码中的代码序列。计算机蠕虫 一种进行自我复制的程序,它可以通过磁盘或邮件等传输机制进行自我复制和激活运行。木马 一种可执行未授权行为的恶意软件。逻辑炸弹 一种编程代码,当运行环境满足某种特定条件时执行其
31、他特殊的功能。僵尸 一种秘密获取因特网联网计算机控制权的程序。陷门(后门)一种秘密的程序入口,允许知晓陷门的恶意对手绕过通常的安全访问规程直接获得访问权。4512.3.1 计算机网络面临的安全威胁(续3)被动攻击和主动攻击窃听分析篡改伪装拒绝服务被动攻击目的站源站源站源站源站目的站目的站目的站主 动 攻 击计算机网络安全的目标:防止析出报文内容;防止通信量分析;检测拒绝报文服务;检测更改报文流;检测伪造报文。4612.3.1 计算机网络面临的安全威胁(续4)如何对付安全威胁n被动攻击通常难以检测,因为它们并没有引起数据的任何改变。可采取各种数据加密技术。对付被动攻击应重在防范而不是检测。n防范
32、主动攻击则相当困难,因为必须对所有通信设施和路径进行全天候的物理保护。对付主动攻击需将加密技术和适当兵鉴别技术相结合,应重在检测和恢复。完全防范主动攻击必须对所有通信设施和路径进行全天候的物理保护。n计算机网络通信安全的目标:防止析出报文内容和流量分析。防止恶意程序。检测更改报文流和拒绝服务。12.3.2 计算机网络的安全性需求计算机网络安全性需求 保密性(confidentiality)指计算机网络中的信息只准许被授权者访问。完整性(integrity)指属于某个计算机网络的资源只能被授权者所更改。有效性(availability)指属于某个计算机网络的资源可以提供给授权者使用。真实性(au
33、thenticity)指计算机网络能够验证一个用户的标识。4748第12章 内容提纲12.1 计算机网络的管理12.2 简单网络管理协议SNMP12.3 计算机网络的安全12.4 加密模型和密码体制12.5 网络安全策略12.6 因特网的安全协议4912.4 加密模型和密码体制12.4.1 数据加密通信的模型数据加密通信的一般模型因特网主机A主机B明文P密文C密文C明文P截获或篡改截取者加密算法E运算解密算法D运算加密密钥Ke解密密钥KdC=Eke(P)Dk(C)=Dkd(Eke(P)=P用户用户 A 向向 B 发送明文发送明文 P,在发送端在发送端通过加密算法通过加密算法 E 运算得运算得到
34、到密文密文C。密文密文C通过因特网传送到目的端,经解密算法通过因特网传送到目的端,经解密算法D运算恢复成明文,送往主机运算恢复成明文,送往主机B。12.4.1 数据加密通信的模型(续1)50n加密和解密用的密钥K(key)是一串秘密的字符串(即比特串)。n发送端将明文通过加密算法E运算和加密密钥 K变成密文:n接收端利用解密算法 D 运算和解密密钥 K 解出明文 X。解密算法是加密算法的逆运算。C EKe(P)(12-1)DKd(C)DKd(EKe(P)P (12-2)l加密加密密密钥钥Ke和和解密解密密钥密钥Kd可可以以一样一样,也,也可以不一样可以不一样。l密钥通常是由密钥中心提密钥通常是
35、由密钥中心提供供的的。l当当密钥需要向远地传送时,一定要通过另一个安全信道。密钥需要向远地传送时,一定要通过另一个安全信道。12.4.1 数据加密通信的模型(续2)一些重要概念n密码编码学(cryptography)是密码体制的设计学,而密码分析学(cryptanalysis)则是在未知密钥的情况下从密文推演出明文或密钥的技术。密码编码学与密码分析学合起来即为密码学(cryptology)。n如果不论截取者获得了多少密文,但在密文中都没有足够的信息来惟一地确定出对应的明文,则这一密码体制称为无条件安全的,或称为理论上是不可破的。但在无任何限制的条件下,目前几乎所有实用的密码体制均是可破的,所以
36、人们关心的是研制出在计算上(而不是在理论上)不可破译的密码体制。515212.4.1 数据加密通信的模型(续3)一些重要概念(续)n如果一个密码体制中的密码不能被目前可使用的计算资源所破译,则认为这一密码体制在计算上是安全的。n完成加密和解密的算法称为密码体制。n加密或破密还与经济有着密切的关系。5312.4.2 对称密钥密码体制n对称密钥密码体制 指加密密钥和解密密钥相同的密码体制,又称常规密码体制。这种加密系统称为对称密钥系统。明文明文 P 密文密文 C加密密钥加密密钥 Ke明文明文 P密文密文 CABE 运算运算加密算法加密算法D 运算运算解密算法解密算法互联网互联网解密密钥解密密钥 K
37、d密钥相同密钥相同12.4.2 对称密钥密码体制(续1)1、典型加密方法 早期的对称密钥密码体制的加密方法很多,但本质上可分为两大类:换位密码 不改变明文中字符本身,仅按照某种模式将其重新排列构成密文的加密方法。典型的有列换位、按样本换位和分组换位。列换位法把明文按行顺序写入二维矩阵,再按列顺序读出来构成密文。545512.4.2 对称密钥密码体制(续2)n换位密码(列换位)举例 CIPHER145326attackbeginsatfour密钥顺序明文根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E
38、 为第 2,H 为第 3,,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。5612.4.2 对称密钥密码体制(续3)n换位密码(列换位)举例CIPHER145326attackbeginsatfour密钥顺序明文根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。57CIPHER145326attackbeginsatfour密钥顺序明文根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的
39、每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。12.4.2 对称密钥密码体制(续4)n换位密码(列换位)举例58CIPHER145326attackbeginsatfour密钥顺序明文根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。12.4.2 对称密钥密码体制(续5)n换位密码(列换位
40、)举例5912.4.2 对称密钥密码体制(续6)CIPHER145326attackbeginsatfour密钥顺序明文根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。n换位密码(列换位)举例6012.4.2 对称密钥密码体制(续7CIPHER145326attackbeginsatfour密钥顺序明文根据英文字母在 26 个字母中的先后顺序,我们可以得出密钥中的每一个字母的相对先后顺序。因为密钥中没有 A 和
41、 B,因此 C 为第 1。同理,E 为第 2,H 为第 3,,R 为第 6。于是得出密钥字母的相对先后顺序为 145326。n换位密码(列换位)举例6112.4.2 对称密钥密码体制(续8)CIPHER145326attackbeginsatfour密钥顺序明文先读顺序为 1 的明文列,即 aba 密文的得出62CIPHER145326attackbeginsatfour密钥顺序明文再读顺序为 2 的明文列,即 cnu 12.4.2 对称密钥密码体制(续9)密文的得出63CIPHER145326attackbeginsatfour密钥顺序明文再读顺序为 3 的明文列,即 aio 12.4.2
42、对称密钥密码体制(续10)密文的得出64CIPHER145326attackbeginsatfour密钥顺序明文再读顺序为 4 的明文列,即 tet 12.4.2 对称密钥密码体制(续11)密文的得出6512.4.2 对称密钥密码体制(续12)CIPHER145326attackbeginsatfour密钥顺序明文再读顺序为 5 的明文列,即 tgf 密文的得出6612.4.2 对称密钥密码体制(续13)CIPHER145326attackbeginsatfour密钥顺序明文最后读顺序为 6 的明文列,即 ksr 因此密文就是:abacnuaiotettgfksr 密文的得出6712.4.2
43、对称密钥密码体制(续14)CIPHER145326attackbeginsatfour密钥顺序明文先写下第 1 列密文 aba 收到的密文:abacnuaiotettgfksr 接收端收到密文后按列写下6812.4.2 对称密钥密码体制(续15)CIPHER145326attackbeginsatfour密钥顺序明文再写下第 2 列密文 cnu 收到的密文:abacnuaiotettgfksr 接收端收到密文后按列写下6912.4.2 对称密钥密码体制(续16)CIPHER145326attackbeginsatfour密钥顺序明文再写下第 3 列密文 aio 收到的密文:abacnuaiot
44、ettgfksr 接收端收到密文后按列写下7012.4.2 对称密钥密码体制(续17)CIPHER145326attackbeginsatfour密钥顺序明文再写下第 4 列密文 tet 收到的密文:abacnuaiotettgfksr 接收端收到密文后按列写下7112.4.2 对称密钥密码体制(续18)CIPHER145326attackbeginsatfour密钥顺序明文再写下第 5 列密文 tgf 收到的密文:abacnuaiotettgfksr 接收端收到密文后按列写下7212.4.2 对称密钥密码体制(续19)CIPHER145326attackbeginsatfour密钥顺序明文最
45、后写下第 6 列密文 ksr 收到的密文:abacnuaiotettgfksr 接收端收到密文后按列写下7312.4.2 对称密钥密码体制(续20)CIPHER145326attackbeginsatfour密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr 接收端从密文解出明文7412.4.2 对称密钥密码体制(续21)CIPHER145326attackbeginsatfour密钥顺序明文最后按行读出明文收到的密文:abacnuaiotettgfksr 接收端从密文解出明文7512.4.2 对称密钥密码体制(续22)CIPHER145326attackbegins
46、atfour密钥顺序明文最后按行读出明文接收端从密文解出明文CIPHER145326attackbeginsatfour密钥顺序明文最后按行读出明文CIPHER145326attackbeginsatfour密钥顺序明文最后按行读出明文得出的明文:attackbeginsatfour收到的密文:abacnuaiotettgfksr7612.4.2 对称密钥密码体制(续23)替代密码 分为简单替代、多名替代、多表替代和区位替代4种:例:简单替代是把明文中的每个字符都用它右边 第k个字母,并认为Z后面又是A。其映射关系可表示为 )()(kaafnmod7712.4.2 对称密钥密码体制(续24)n
47、替代密码举例(密钥是 3)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABC明文密文caesar cipherF明文 c 变成了密文 F7812.4.2 对称密钥密码体制(续25)abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesar cipherFD明文密文明文 a 变成了密文 D7912.4.2 对称密钥密码体制(续26)由于英文字母中各字母出现的频率早已有人进行过统计,所以根据字母频度表可以很容易对这种替代密码进行破译。目前替代密码只作为复杂编码过程中的个中间步骤。abcd
48、efghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABC明文密文caesar cipherFDH明文 e 变成了密文 Hcaesar cipherFDHVDU FLSKHU明文 r 变成了密文 U8012.4.2 对称密钥密码体制(续27)按照密文序列的结构,有序列密码密码体制和分组密码密码体制。n序列密码密码体制将明文看成是连续的比特流(或字符流)P1P2P3,并且用密码序列K=K1K2K3 中的第i个元素Ki对明文中的第i个元素Pi进行加密,所得密文为 Ck(P)=Ck1(P1)Ck2(P2)Ck3(P3)该体制的安全性取决于密钥的随机性。如密钥是真
49、正的随机数,又称一次一密乱码本体制。8112.4.2 对称密钥密码体制(续28)在发送端,开始工作时种子 I0 对密钥序列产生器进行初始化。按照模 2 进行运算,得出:yE(x)xkikiiii密钥序列产生器种子 I0发端ki密钥序列产生器种子 I0收端ki密文序列明文序列明文序列xixiyiyi序列密码体制 8212.4.2 对称密钥密码体制(续29)密钥序列产生器种子 I0发送端ki密钥序列产生器种子 I0接收端ki密文序列明文序列明文序列xixiyiyi在接收端,对 yi 的解密算法为:D(y)yk(xk)kxkiiiiiiii序列密码又称为密钥流密码。序列密码体制(续)12.4.2 对
50、称密钥密码体制(续30)序列密码体制的保密性n序列密码体制的保密性完全在于密钥的随机性。n如果密钥是真正的随机数,则这种体制在理论上是不可破的。因此又称为一次一密乱码本体制。n严格的一次一密乱码本体制所需的密钥量不存在上限,但很难实用化。n密码学家试图模仿这种一次一密乱码本体制。目前常使用伪随机序列作为密钥序列。关键是序列的周期要足够长,且序列要有很好的随机性(这是很难寻找的)。838412.4.2 对称密钥密码体制(续31)n分组密码密码体制是将明文划分成固定位数的数据组,并以组为单位,在密钥控制下进行一系列线性或非线性的变换(一次变换一组数据)来形成密文。n分组密码算法的特点:分组密码与序
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。