信息安全概论 课件6.ppt

上传人:1595****071 文档编号:71310584 上传时间:2023-02-02 格式:PPT 页数:59 大小:722KB
返回 下载 相关 举报
信息安全概论 课件6.ppt_第1页
第1页 / 共59页
信息安全概论 课件6.ppt_第2页
第2页 / 共59页
点击查看更多>>
资源描述

《信息安全概论 课件6.ppt》由会员分享,可在线阅读,更多相关《信息安全概论 课件6.ppt(59页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、密钥管理华中科技大学 刘开军ups_6 密钥管理1.简介 保密系统的关键在于密钥的保护,因为公认安全性好的加密算法都是公开的。密钥管理综合了密钥的生成、分配、存储、销毁等环节中的保密措施,核心目的是:确保使用中的密钥是安全的。目前流行的密钥管理方案中一般采用层次密钥设置,目的在于减少单个密钥的使用周期,增加系统的安全性。6 密钥管理 从概念上讲,密钥分为两大类:n数据加密密钥(DK)。一般是对称密钥体制的密钥,用来加密数据明文;n加密密钥(KK)。一般是公钥密码体制的密钥,用来加密DK数据,起到保护密钥的作用。在密钥管理体制中,密钥的分配是最棘手的问题。6 密钥管理2.密钥长度 总的来说,密钥

2、长度越长,密文越难破解,但是过长的密钥会导致加/解密时间过长。决定密钥长度时应考虑以下因素:n计算机的计算能力的发展;n加密算法的发展;n需要保密的时间;n数据价值;n攻击者的资源情况;6 密钥管理6 密钥管理 对DES密码体制来说,1995年的专用密码机破解56位密钥平均只要3.5小时,最多不超过7小时。一般认为,56位的DES密码是不够安全的,普通商业信息应该使用100位以上的密钥。6 密钥管理 公钥密码系统通常依赖于某个数学难题,例如RSA算法体系等价于大整数分解问题。如果对应的数学难题的解法获得突破,那么公钥密码将很容易破解。对普通个人用户来说,1024位以上的RSA密钥是比较安全的。

3、6 密钥管理6 密钥管理3.密钥生成 理论上说,用户可以自己选择密钥,尤其是在对称密钥体制中。人们在选择密钥时通常喜欢选择容易记忆的、有规律的密钥,但这类密钥被猜中的可能性也较大。对公钥密码体制来说,生成密钥更加困难,因为密钥必须满足某些数学特征(例如必须是素数等)。6 密钥管理 最理想的密钥是在密钥空间中随机挑选,但真正的“随机”无法用软件实现。一个比较简单的生成随机密钥的办法是用一个单向的Hash函数处理一个易记的短语,如果这个短语足够长,那么输出的结果就可以认为的随机的,可以作为密钥或作为产生密钥的种子。计算机上使用的“随机”密钥都是借助伪随机数实现的。产生伪随机数列的方法:线性同余法、

4、基于加密算法的随机数列生成器、BBS生成器.6 密钥管理6 密钥管理评价线性同余算法的性能采用以下标准:n迭代函数应是整周期的,即数列中的数这重复之前应产生0到m之间的所有数;n产生的数列能满足随机性检验;n迭代函数能有效地运用32位/64位运算来实现。6 密钥管理6 密钥管理 采用上面的参数生成的伪随机数列虽然具有良好的性质,但实际上只有种子X0的选择具有随机性,生成的数列是确定的。如果攻击者能够确定数列中连续的三个值就可以解出所有参数。针对这种攻击,可以通过利用系统时钟修改随机数列来改进。一种方法是每产生N个数后利用当前的时钟值模m作为新种子;另一种方法是直接把当前时钟值模m加到每个随机数

5、上。6 密钥管理使用加密算法也可以产生随机数列(1)循环加密 如果要生成56位DES密钥,可以使用周期为256的计数器,每生成一个密钥后计数器加1,这样得到的是整周期的随机数列。使用的加密算法可以任意选择。6 密钥管理(2)DES的OFB模式 DES的OFB模式产生的密钥能用于流加密。实际使用时,可以用系统中断向量等生成DES密钥,用系统时钟等生成初始化向量,用外部数据作为明文输入。6 密钥管理(3)ANSI X9.17密钥生成器 适合产生会话密钥或伪随机数,是密码强度最高的伪随机数生成器之一。6 密钥管理 ANSI X9.17密钥生成器使用了三个加密器,每个加密器都是三重DES加密。所谓三重

6、DES加密是指用两个密钥K1和K2对明文M进行三次加密:先用K1对M加密产生密文C1,再用K2对C1加密产生密文C2,最后再用K1对C2加密产生密文C。ANSI X9.17密钥生成器的工作原理可以表示为6 密钥管理 其中EK表示用密钥K=(K1,K2)进行三重DES加密,V0是一个保密的64位种子,Ti是时间戳。因为每个输出的随机数Ri经过加密后才产生新种子Vi+1,所以密码分析者无法得到新种子,也就无法推测到新的随机数Ri+1。这样生成的密钥强度很高。6 密钥管理6 密钥管理4.密钥分配 密钥分配研究要解决两个问题:n引进自动密钥分配机制,减轻负担,提高系统的效率;n尽可能减少系统中驻留的密

7、钥量,提高安全性 对称密钥体制和公钥密码体制的密钥分配方法有所不同。6 密钥管理 目前典型的有自动密钥分配途径:n集中式方案 是指利用网络中的密钥中心(KDC)来集中管理系统中的密钥,密钥方可中心接收系统中用户的请求,为用户提供安全的分配密钥的服务。n分布式方案 是指网络中各主机具有相同的地位,它们之间的密钥分配取决于它们自己的协商,不受任何其他方面的的限制。6 密钥管理 此外,还可以采取两种方法的混合:主机采用分布式分配方案,而主机对于终端或它所属的通信子网中的密钥可采用集中方式分配。下面分别讲述对称密钥体制和公钥体制的密钥分配方法。6 密钥管理4.1 对称密钥的分配 通常有以下四种方法:密

8、钥由A选取并通过物理手段发送给A和B;密钥由第三方选取带通过物理手段发送给A和B如果A、B事先已有一密钥,则其中一方选取新密钥后,用已有的密钥加密新密钥并发送给另一方;如果A和B与第三方C分别有一保密信道,则C为A、B选取密钥后,分别在两个保密信道上发送给A、B。6 密钥管理 前两种方法称为人工发送。在采用网络链路时,密钥的人工发送是可行的;在网络的端端加密方式中,密钥的人工发送是不可行的,因为所需的密钥量太大。第三种方法在链路加密和端端加密方式下都是可行的。第四种方法广泛用于端到端加密时的密钥分配,其中的第三方通常是一个负责为用户(包括主机、人、程序等)分配密钥的中心。6 密钥管理对称密钥集

9、中式分配 两个用户A和B希望秘密通信,他们都信任密钥分配中心KDC。A和KDC有事先共享的主密钥KA,B和KDC也有事先共享的主密钥KB。借助KDC完成对称密钥分配的过程如下:6 密钥管理6 密钥管理1A向KDC发出会话密钥请求。请求消息由两个数据项组成:A和B的身份,此次业务的惟一识别符N1。2KDC对A发出的请求给出回答。应答是用KA加密的消息,内容包括:nKDC生成的A和B会话的密钥KS;nA在第一步发出的请求(A和B的身份、N1);n用KB加密的消息(内容包括:KS和A的身份)。6 密钥管理3A将EKB(KS,IDA)发送给B。B用KB解密后得到与A会话的密钥KS。至此,会话密钥已经安

10、全地分配给了A和B。但为了防止重放攻击,还需要进行下面两步:4B用会话密钥KS解密一个随机数N2,将密文发给A;5A以f(N2)作为应答发送给B,其中f()可以是A和B共享的任意变换。这样,B就可以通过验证f(N2),确认第三步收到的不是一个重放消息。6 密钥管理 如果网络中的用户数量非常多,一个KDC就难以负担所有用户的密钥分配任务。解决的方法是采用分层的KDC结构,即第一层KDC负责第二层KDC之间的密钥分配,第二层KDC负责第三层KDC之间的密钥分,最底层的KDC负责本范围内的用户之间的密钥分配。分层结构的好处是可减少主密钥的分布,因为大多数主密钥是在本地KDC和本地用户之间共享。另外,

11、分层结构还可将虚假KDC的危害限制在一个局部范围内。6 密钥管理集中式密钥分配的自动实现 上述密钥分配原理在实际中是自动实现的,不需要用户的手工干预。使用面向连接的协议,可以在网络层和传输层实现端到端加密对终端用户透明,密钥分配工作由主机的前端处理器(FEP)代理,这也称为透明实施方案。工作流程如下:6 密钥管理6 密钥管理1主机A向其FEPA发出希望与主机B连接的请求2FEPA向区域内的KDC发出请求;3如果KDC同意A和B建立连接,则在KDC辅助下,会话密钥分配给FEPA和FEPB。4主机A和B通过各自的FEP进行保密通信。这个方案的好处是对终端系统的影响很小,通过FEP隐藏了密钥分配的细

12、节。6 密钥管理对称密钥分布式分配 集中式分配方案的前提是进行通信的用户都信任KDC,KDC是整个系统的安全中心。分布式分配方案不需要KDC,整个系统没有中心,每个端系统都能和自己想与之建立联系的另一端安全地通信。实现分布式分配的前提是A和B之间有一个事先共享的密钥,他们需要分配的是每次会话的密钥。由于要求每两个用户之间都有共享密钥,因此分布式分配不适合大范围网络。6 密钥管理6 密钥管理1A向B发出建立会话密钥的请求和一个一次性随机数N1;2B用与A共享的主密钥Km对消息加密,消息内容包括:会话密钥Ks、A的请求、N1、B的身份、一次性随机数N2;3A用会话密钥Ks加密f(N2)发送给B。前

13、两步是为了分配密钥,第三步是为了防止重放攻击。6 密钥管理4.2 公钥密码的分配 公钥的分配有以下四种:公开发布 指用户将自己的公钥发给其他用户,或向一个团体广播。这种方法很简单易行,但是无法解决身份验证,可能有冒充发生,即B假冒A的身份,将PKB发布为PKA,以骗取A应得的信息。6 密钥管理公用目录表 指建立一个公用的公钥动态目录表,该表的建立、维护以及公钥的发布由某个可信的实体或组织(管理员)承担。公用目录表的建立过程如下:1管理员为每个用户都在目录表中建立一个目录,两有两个数据项:用户名、用户的公钥;2每个用户都亲自或以某种安全的认证通信在管理员处注册自己的公钥;6 密钥管理3用户可以随

14、时用新的公钥替换现有的公钥;4管理员定期公布或定期更新目录表;5用户可以通过电子手段访问目录表,这是从管理员到用户必须有安全的认证通信。这种方式的安全性高于公开发布的安全性,但易受到攻击。6 密钥管理公钥管理机构 这种方式是对公用目录表方法的改进,它需要引入一个公钥管理机构(AU)来为各用户建立、维护和控制动态的公钥目录。实现该系统要求:n公钥管理机构(AU)可信任;n每个用户知道AU的公钥,只有AU知道自己的私钥;6 密钥管理公钥分配步骤:6 密钥管理1A向AU发送一个带时间戳的请求,申请获取用户B的当前公钥;2AU用其私钥加密消息发给A,消息内容为:B的公钥、A先前发出的请求、A先前的时间

15、戳;3A用B的公钥加密消息发给B,消息内容为:A的身份、一次性随机数N1;4B以同样的定式获得A的公钥。至此,A和B都有了对方的公钥,但还没有进行身份验证。6 密钥管理5B用A的公钥加密消息发给A,消息内容为:随机数N1、另一个随机数N2;A解密消息看到N1,即可确认对方是B;6A用B的公钥对N2加密后发送给B;B解密消息看到N2,即可确认对方是A。至此,A和B都获得了对方的公钥,并且完成了身份验证。6 密钥管理公钥证书 公钥管理机构分配公用公钥的缺点主要在于:由于每个人的通信都需要求助于公钥管理机构,所以管理机构有可能成为系统的瓶颈,而且由管理机构维护的公钥目录表也容易被攻击。一种改进方法是

16、使用公钥证书,用户通过互换公钥证书而不需和公钥管理机构联系。6 密钥管理 公钥证书由证书管理机构(CA)为用户建立,其中的数据项包括:n用户的身份信息;n用户的公钥;n证书的有效期;这些数据经CA用自己的私钥加密后发给用户。6 密钥管理 当B需要和A通信时,A可将自己的公钥证书发送给B。B用CA的公钥加密证书,验证证书确是CA所颁发。从A的公钥证书中即可获得A的身份信息、A的公钥,以及公钥的有效期。同样,A也可以通过B的公钥证书获得B的公钥和身份信息。6 密钥管理4.3 用公钥加密分配对称密钥 一般来说,公钥密码的分配要比对称密钥的分配容易且安全,但公钥体制加密速度慢,只适合加密小量数据。比较

17、好的方法是:A和B先交换公钥,然后通过公钥来确定一个对称密钥,在会话过程中用对称密钥加密。6 密钥管理简单分配 通过以下步骤建立会话密钥:1A计数出一对公钥体制密钥PKA,SKA,把其中的私钥SKA和A的身份信息发送给B;2B随机选择一个对称体制密钥Ks作为会话密钥,用SKA加密后发送给A;3A用PKA解密后得到会话密钥Ks;4A销毁密钥PKA,SKA。这样,A和B就可以用Ks来通信了。6 密钥管理 这种密钥分配方式的好处在于:双方在通信前后都没有存储密钥,密钥泄露的可能性很小。但是这种协议容易受到自动攻击,基本原理是:攻击者E在A和B通信前就接入信道,然后将自己插入A、B之间,转发A、B之间

18、的信息。6 密钥管理6 密钥管理Diffie-Hellman密钥交换 Diffie-Hellman密钥交换算法的惟一目的是使得两个用户能够安全地交换密钥,得到一个共享的会话密钥,算法本身不能用于加/解密。该算法的安全性基于求离散对数的困难性的基础上。6 密钥管理6 密钥管理5.密钥的保护 密钥有效期密钥有效期 实际使用的加密算法都只是计算上安全的,因此要保证密钥的安全,除了选择随机性强的密钥外,还应该定期更换密钥。会话密钥 会话密钥更新地越频繁,系统的安全性越高,但更换太频繁将使通信交互时延增大,同时还造成网络负担。6 密钥管理 对面向连接的协议,在竞技未建立前或断开后,会话密钥的有效期可以很

19、长;而每次建立连接时,都应使用新的会话密钥。无连接协议无法明确地决定更换密钥的有效期,为安全起见,用户每次通信之前,都应该使用新会话密钥。避免频繁更换密钥的一种解决办法是从旧密钥中产生新密钥,称为密钥更新。6 密钥管理密钥加密密钥 密钥加密密钥无需频繁更换,因为可以获得的密文量有限,破译的可能性很小,但它们必须保存安全地点。公钥体制中的私钥 私钥的有效期是根据应用的不同而变化的。6 密钥管理存储密钥存储密钥 存储密钥的常用方法包括:n密钥碾碎技术n通过物理手段存储n将密钥分割后以不同方式存放n用密钥加密密钥对密钥加密后存放n记住密钥生成信息 最重要的是建立严格的保密制度。6 密钥管理销毁密钥销毁密钥 密钥到期或被更换后,旧密钥必须销毁,删除所有有关记录、文件和介质。备份密钥备份密钥 通常使用密钥托管协议进行。6 密钥管理密钥托管密钥托管 密钥托管的目的是在缺少密钥(如密钥丢失、损坏)时,通过密钥托管技术恢复出密钥。密钥托管的实现手段通常是把加密的数据和数据恢复密钥联系起来,数据恢复密钥不是直接解密的密钥,但是由它可以得到解密密钥。数据恢复密钥由政府、法院或有契约的私人组织等可信任的委托人持有,或分拆由多个委托人持有。6 密钥管理

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁