密钥管理技术改.ppt
《密钥管理技术改.ppt》由会员分享,可在线阅读,更多相关《密钥管理技术改.ppt(64页珍藏版)》请在三一文库上搜索。
1、第3章 密钥管理技术,3.1 密钥的管理内容 3.2 密钥的分配技术 3.3 公钥密码 3.4 RSA算法 3.5 椭圆曲线密码体制,3.1 密钥的管理内容,密钥是加密算法中的可变部分,利用加密手段对大量数据的保护归结为对密钥的保护,而不是对算法或硬件的保护。密码体制可以公开, 密码设备可能丢失,但密码机仍可以使用。然而一旦密钥丢失或出错,不但合法用户不能获取信息,而且可能使非法用户窃取信息,因此,网络系统中密钥的保密和安全管理问题就成为首要的核心问题。,密钥管理是处理密钥自产生到最终销毁整个过程中的有关问题,包括密钥的设置、生成、分配、验证、 启用/停用、 替换、 更新、 保护、 存储、 备
2、份/恢复、丢失、销毁等等。密钥管理方法实质上因所使用的密码体制(对称密码体制和公钥密码体制)而异, 所有的这些工作都围绕一个宗旨,即确保使用中的密码是安全的。,1. 密钥设置协议 目前流行的密钥管理方案中一般采用层次的密钥设置,目的在于减少单个密钥的使用周期,增加系统的安全性。总体上密钥分两大类: 数据加密密钥(DK)和密钥加密密钥(KK)。前者直接对数据进行操作,后者用于保护密钥,使之通过加密而安全传递。,2. 密钥生成 算法的安全性依赖于密钥,密钥的产生首先必须考虑具体密码系统的公认的限制, 如果用一个弱的密钥生成方法,那么整个体制是弱的。因为能破译密钥生成算法,所以就不需要去破译加密算法
3、了。减少的密钥空间,易受到穷举攻击。如果采用姓名等的弱密钥选择也易受到穷举的字典攻击。因此, 好的密钥应该是随机密钥, 但为了便于记忆, 密钥不能选得过长,不能选完全随机的数串, 要选自己易记而别人难以猜中的密钥,要做到这些可采用密钥揉搓或碾碎技术。可见密钥的生成是困难的,特别对公钥密码体制来说,生成密钥更加困难,因为密钥必须满足某些数学特征(必须是素数的,是二次剩余的,等等)。,3. 密钥的分配 主要研究密码系统中密钥的发送、 验证等传送中的问题, 在3.2节中进一步介绍。,4. 密钥的保护 密钥从产生到终结的整个生存期中,都需要加强安全保护。 密钥决不能以明文的形式出现,所有密钥的完整性也
4、需要保护, 因为一个攻击者可能修改或替代密钥,从而危机机密性服务。 另外, 除了公钥密码系统中的公钥外,所有的密钥需要保密。 在实际中,存储密钥的最安全的方法是将其放在物理上安全的地方。当一个密钥无法用物理的办法进行安全保护时,密钥必须用其它的方法来保护,可通过机密性(例如,用另一个密钥加密)或完整性服务来保护。在网络安全中,用最后一种方法可导致密钥的层次分级保护。,5. 密钥的存储 密钥存储时必须保证密钥的机密性、认证性、完整性、防止泄露和修改。 最不复杂的的密钥存储问题是单用户的密钥存储,用户加密文件以备以后用。因为只涉及他一个人,且只有他一人对密钥负责。一些系统采用简单方法:密钥存放在用
5、户的脑子中, 而决不放在系统中,用户只需记住密钥,并在需要对文件加密或解密时输入。在某些系统中用户可直接输入64 bit密钥,或输入一个更长的字符串,系统自动通过密钥碾碎技术从这个字符串生成64 bit密钥。,其它解决方案有:将密钥储存在磁卡、ROM密钥卡或智能卡中,用户先将物理标记插入加密箱上或连在计算机终端上的特殊读入装置中, 然后把密钥输入到系统中。当用户使用这个密钥时,他并不知道它,也不能泄露它。使储存和保护它更加地直观。把密钥平分成两部分,一半存入终端, 一半存入ROM密钥使得这项技术更加安全。 美国政府的STU-III 保密电话就是用的这种方法。丢失了ROM密钥并不能使加密密钥受到
6、损害换掉它一切就正常如初。丢失终端密钥情况也如此。这样,两者之一被损害都不能损害整个密钥。,可采用类似于密钥加密密钥的方法对难以记忆的密钥进行加密保存。例如,一个RSA私钥可用DES(数据加密标准)密钥加密后存在磁盘上,要恢复密钥时,用户只需把DES密钥输入到解密程序中即可。如果密钥是确定性地产生的(使用密码上安全的伪随机序列发生器),每次需要时从一个容易记住的口令产生出密钥会更加简单。,6. 密钥的备份/恢复 密钥的备份是非常有意义的,在密钥主管发生意外的情况下, 以便恢复加密的信息,否则加密的信息就会永远地丢失了。 有几种方法可避免这种事情发生。最简单的方法称密钥托管方案,它要求所有雇员将
7、自己的密钥写下来交给公司的安全官, 由安全官将文件锁在某个地方的保险柜里(或用主密钥对它们进行加密)。 当发生意外情况时, 可向安全官索取密钥。,一个更好的方法是采用一种秘密共享协议,即将密钥分成若干片,然后,每个有关的人员各保管一部分,单独的任何一部分都不是密钥, 只有将所有的密钥片搜集全,才能重新把密钥恢复出来。,7. 密钥的泄露与撤销 密钥的安全是所有的协议、技术、算法安全的基本条件, 如果密钥丢失、被盗、出现在报纸上或以其它方式泄露,则所有的保密性都失去了,惟一补救的办法是及时更换新密钥。 如果对称密码体制泄露了密钥,必须更换密钥,并希望实际损失最小。如果是一个私钥,问题就大了,公钥或
8、许就在所有网络的服务器上。如果其他人得到了泄露的私钥,这个人就可以在网络上冒名顶替,读加密邮件、对信件签名、签合同等等。,私钥泄露的消息通过网络迅速蔓延是最致命的。任何公钥数据库必须立即声明一个特定私钥被泄露,以免怀疑有人用该泄露的密钥加密消息。 如果用户知道他的密钥是何时泄密的,并且KDC(密钥分配中心)正在管理密钥,用户应该通知KDC密钥已经泄露。 如果没有KDC, 就要通知所有可能接收到用户消息的人。 如果用户不知道他的密钥泄露的确切时间,问题就复杂了, 用户要求撕毁合同,因为偷密钥者可能冒名代替他签了其它合同, 这将引起争执而由法律、 公证机构裁决。,8. 密钥的有效期 没有哪个加密密
9、钥能无限期使用, 其原因如下: (1) 密钥使用时间越长,它泄露的机会就越大。人们会写下密钥,也会丢失,偶然事件也会发生的。 (2) 如果密钥已泄露,那么密钥使用越久,损失就越大。 如果密钥仅用于加密一个文件服务器上的单个预算文件,它的丢失仅意味着该文件的丢失。如果密钥用来加密文件服务器上所有预算信息,那么,损失就大得多。,(3) 密钥使用越久,人们花费精力破译它的诱惑力就越大甚至采用穷举攻击法。破译了两个军事单位使用一天的共享密钥, 就会使某人能阅读当天两个单位之间的通信信息。破译所有军事机构使用一年的共享密钥,就会使同样的人获取和伪造通行全球一年的信息。 (4) 对用同一密钥加密的多个密文
10、进行密码分析一般比较容易。,对任何密码应用,必须有一个密钥的有效期。不同密钥应有不同有效期,如电话就是把通话时间作为密钥有效期,当再次通话时就启用新的密钥。专用通信信道就不这么明显了,密钥应当有相对较短的有效期,这主要依赖数据的价值和给定时间里加密数据的数量。 密钥加密密钥无需频繁更换,因为它们只是偶尔地用作密钥交换,只是给密钥破译者提供了很少的密文分析,且相应的明文也没有特殊的形式。然而,如果密钥加密密钥泄露,那么其潜在损失将是巨大的,因为,所有的通信密钥都经其加密。在某些应用中,密钥加密密钥一般是一月或一年更换一次。,用来加密保存数据文件的加密密钥不能经常地变换。在人们重新使用文件前,文件
11、可以加密储藏在磁盘上数月或数年, 每天将它们解密, 再用新的密钥进行加密, 这无论如何都不能加强其安全性,这只是给破译者带来了更多的方便。一种解决方法是每个文件用惟一的密钥加密,然后再用密钥加密密钥把所有密钥加密,密钥加密密钥要么被记忆下来,要么被保存在一个安全地点,或在某个地方的保险柜中。当然,丢失该密钥意味着丢失了所有的文件加密密钥。,公开密钥密码应用中的私钥的有效期是根据应用的不同而变化的。用作数字签名和身份识别的私钥必须持续数年(甚至终身), 用作抛掷硬币协议的私钥在协议完成之后就应该立即销毁。即使期望密钥的安全性持续终身,两年更换一次密钥也是要考虑的。许多网络中的私钥仅使用两年,此后
12、用户必须采用新的私钥。旧密钥仍需保密,以防用户需要验证以前的签名, 但是新密钥将用作新文件签名,以减少密码分析者所能攻击的签名文件数目。,9. 控制密钥使用 控制密钥使用是为了保证密钥按预定的方式使用,在一些应用中控制怎样使用密钥是有意义的,有的用户需要控制密钥或许仅仅是为了加密,有的或许是为了解密。可以赋予密钥的控制信息的有:密钥的主权人、密钥合法使用期限、 密钥识别符、 密钥预定的用途、密钥限定的算法、密钥预定使用的系统、密钥授权用户、 在密钥生成、 注册、证书有关的实体名字等。 运用这些限制的一个方案是在密钥后面附加一个控制向量(CV, Control Vector)用它来标定密钥的使用
13、和限制。对CV取单向Hash运算,然后与主密钥异或,把得到的结果作为密钥对密钥进行加密,再把合成的加密了的密钥跟CV存在一起。恢复密钥时,对CV取Hash运算再与主密钥异或,最后用结果进行解密。,10. 密钥的销毁 如果密钥必须定期替换,旧密钥就必须销毁。 旧密钥是有价值的,即使不再使用,有了它们,攻击者就能读到由它加密的一些旧消息。 密钥必须安全地销毁。如果密钥是写在纸上的那么必须切碎或烧掉; 如果密钥存在EEPROM硬件中,密钥就应进行多次重写;如果密钥存在EPROM或PROM硬件中,芯片就应被打碎成小碎片;如果密钥保存在计算机磁盘里,就应多次重写覆盖磁盘存储的实际位置或将磁盘切碎。,3.
14、2 密钥的分配技术,3.2.1 密钥分配实现的基本方法 1 基于对称加密算法的, 建立安全信道 要使通信的双方保密通信,他们就需要同一密钥,这种密钥可当面分发或通过可靠信使传递,传统的方法是通过邮政或通信员传送密钥。这种方法的安全性取决于信使的忠诚和素质, 该方法成本高,适用于高安全级密钥。为了既安全又减少费用, 可采用分层方式传送,通信员仅传送密钥加密密钥,而不去传送大量的数据加密密钥,这既减少了通信员的工作量,又克服了用一个密钥加密过多数据的问题。,对密钥分发问题的另一个方法是将密钥分成许多不同的部分, 然后用不同的并行信道发送出去,有的通过电话,有的通过邮寄等等。即使截获者能收集到密钥,
15、但缺少某一部分,他仍然不知道密钥是什么,所以该方法一般用于除个别特殊情况外的任何场合。 对称加密体制中对密钥分配还可以采用多级层次结构来实现, 即将密钥分成两类:初始密钥和密钥加密密钥。初始密钥用于保护数据, 密钥加密密钥用于保护初始密钥。初始密钥有时也被称做会话密钥,密钥加密密钥有时也被称做主密钥。用主密钥对会话密钥加密以后,可通过公用网传送,或用双钥密钥体制分配来实现,如果采用的加密系统足够安全,则可将其看成是一种安全通道。如ANSI X9.17标准中规定了该种密钥的分配方法。,2基于双钥体制的,利用数学上求逆的困难性,建立安全信道 Newman等在1986年提出的SEEK(Secure
16、Electronic Exchange of Keys)密钥分配体制系统,采用的是Diffie-Hellman和Hellman-Pohlig密码体制,这一方法已被用于美国Cylink公司的密码产品中,在小型网络中,每对用户可以很好地使用密钥加密密钥。 如果网络变大,每对用户必须交换密钥,n个人的网络总的交换次数为n(n-1)/2。1000人网络则需近500 000次,在这种情况下, 建造一个密钥管理中心进行密钥分配,会使操作更加有效。,3 基于量子密码建立安全信道 密码学的信息理论研究指出,通信双方A到B可通过先期精选、信息协调、保密增强等密码技术使A和B共享一定的密码信息。,3.2.2 密钥
17、分配实现的基本工具 认证技术和协议技术是分配密钥的基本工具,认证技术是安全分配密钥的保障,协议技术是实现认证必须遵守的流程。,3.2.3 密钥分配系统实现的基本模式 密钥分配系统实现的基本模式有两种,一种是对小型网络, 由于用户人数较少,每对用户之间可采用共享一个密钥的方法, 如图3.1所示。 图中k表示A和B之间共享的密钥。,图 3.1,另一种是在一个大型网络中,如由n个用户组成的系统中,希望相互之间保密通信,则需要生成n(n-1)/2 个密钥进行分配和存储, 这样密钥的分配问题就变得复杂,因此为了解决这一问题, 常采用密钥中心管理方式。在这种结构中,每个用户和密钥中心共享一个密钥,保密通信
18、的双方之间无共享密钥。 密钥中心机构有两种形式:密钥分配中心(KDC)和密钥传送中心(KTC)。在KDC中,当A向KDC请求发放与B通信用的密钥时,KDC生成一个密钥k传给A, 并通过A传给B,如图3.2(a)所示。 或者利用A和B与KDC共享密钥,由KDC直接传送给B,如图3.2(b)所示。,图 3.2,密钥传送中心(KTC)和密钥分配中心(KDC)十分相似,主要区别在于由通信方的一方产生需求的密钥,而不是由中心来产生。当A希望和B通信时,它产生密钥k并将密钥发送给KTC, KTC再通过A转送给B,如图3.3(a)所示,或直接送给B,如图3.3(b)所示。 利用A与B和KTC的共享密钥来实现
19、。,图 3.3,3.2.4 密钥的验证 在密钥分配过程中,需要对密钥进行验证,以确保准确无误地传送给指定的用户,防止伪装信使用假密钥套取信息,并防止密钥分配中的错误。当你收到密钥时,如何知道这是对方传送的而不是其他人传送的呢?如果是对方亲自递给你的,那自然简单;如果通过可靠的信使传送密钥,必须相信信使,并需要对密钥进行确认, 例如采用指纹法。而让信使传送加密密钥可能更安全。如果密钥由密钥加密,必须相信只有对方才拥有那个加密密钥;如果运用数字签名协议来给密钥签名,那么当验证签名时就必须相信公开密钥数据库;如果某个密钥分配中心(KDC)在对方的公钥上签名, 则必须相信KDC的公开密钥副本不曾被篡改
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 密钥 管理 技术
链接地址:https://www.31doc.com/p-2363343.html