资源预览内容
第1页 / 共66页
第2页 / 共66页
第3页 / 共66页
第4页 / 共66页
第5页 / 共66页
第6页 / 共66页
第7页 / 共66页
第8页 / 共66页
第9页 / 共66页
第10页 / 共66页
亲,该文档总共66页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
为什么要进行数据加密?很简单:为了数据安全!基本概念 明文:没有经过加密的消息。 密文:使用某种方法被加密的消息。 加密:用某种方法伪装消息以隐藏它 的内容的过程。 解密:把密文转变为明文的过程。现代密码学 密码学 -研究密码技术的学科,是数学的一个分支,包括 密码编码学和密码分析学。 密码编码学-信息隐蔽使消息保密的技术和科学。 密码分析学-破译密码破译密文的科学和技术。密码学的主要目的 提供机密性保密 鉴别:消息的接收者应该能够确认消息的来源; 完整性:消息的接受者能够验证在传送过程中消息没有 被修改; 抗抵赖 :消息的发送者在消息发送后无法否认其发送 过消息。请注意密码学的目的,这也就是我们使用加密的原因,同时课程的核心也是 围绕如何实现这个过程展开的。 密码学的主要目的 机密性:数据保密 鉴别:消息的接收者应该能 够确认消息的来源; 完整性:消息的接受者能够 验证在传送过程中消息没有被修改; 抗抵赖 :消息的发送者在消 息发送后无法否认其发送国消息。传统的密码学 传统的密码学,使用密码算法,一般是一些数学函数。 (一般使用两个函数,一个加密函数一个解密函数), 电影风语者中的密码员使用的就是典型的传统密码方法 。 传统密码学的缺陷:1、受限制,只能在一个组织内使用。大家必须知道相 应的加解密算法。2、对人要求过高,一旦一个用户离开组织就会使保密 荡然无存。(这就是为什么风语者中:为什么要保护密 码员,为什么当密码员被抓的时候,宁可杀死他也不能 落到敌人手里的原因。)3、受限制的密码算法不可能进行质量控制或者标准化 。现代密码系统模型及其特点 现代密码学:使用密钥(KEY)来进行数据加密,加密和解密都使用同 一个密钥,运算 都依赖于密钥。算法可以公开,算法的安全性是基 于密钥的安全性。 现代密码学:由算法、明文、密文和密钥组成。特点 加密算法足够强大:仅知密文很难破译出明文。 基于密钥的安全性,而不是基于算法的安全性:知道密文和加/解密算法,很难破译出明文。 算法开放性:开放算法,便于实现和标准化。密码体制对称密码体制 加密密钥与解密密钥相同,所以又 叫单钥密码。 著名密码算法:DES非对称密码体制 加密密钥与解密密钥不同 ,而且解 密密钥不能根据加密密钥计算出来,所以又 叫双钥密码。 著名密码算法:RSA对称密码对称密码 :加密密钥与解密密钥相同。 优点是: 安全性高 加解密速度快 缺点是: 随着网络规模的扩大,密钥 管理成为一个难点; 无法解决消息确认问题;( 不过可以采用一些业务方法弥补,如 :商户号终端号等方式但对内部人员 无效) 缺乏自动检测密钥泄露的能 力。举例:21.80.66.254 /usr/btssrc/twb/encrypt非对称密码非对称密码 :加密密钥与解密密钥不同 ,而且解密密钥不能根据加密密钥计算 出来。优点是:不需要安全信道来传送密钥 。缺点是:算法复杂,加解密速度慢,一 般比单钥密码慢1000倍。攻击分类被动攻击窃听获取消息内容流量分析主动攻击中断修改伪造破坏可用性破坏完整性 破坏真实性算法的安全性 根据被破译的难易程度,不同的密码算法具有不同的安 全等级。从理论上来说,所有的密码算法总是可以被破 译的,那么,算法的安全性怎么判断呢? 一般来说: 如果破译算法的代价大于加密数据的价值,那么你可能 是安全的。 如果破译算法所需的时间比加密数据保密的时间更长, 那么你可能是安全的。 如果用单密钥加密的数据量比破译需要的数据量少得多 ,那么你可能是安全的。 如果一个算法用(现在或将来)可得到的资源都不能破 译,这个算法可被认为在计算上是安全的。加密方式:硬件加密 硬件加解密是商业或军事上的主流 (1)速度问题:不占用主机处理 器资源。 (2)安全性:可进行物理保护。 (3)易于安装:不需使用计算机 的电话、传真、数据线路; 计算机环境下,使用硬件加密可 对用户透明,软件实现,需要在操作系 统深层安装,不容易实现。加密方式:软件加密 缺点:安全性差、速度慢、造价高。 优点:使用灵活、修改方便、可移植 性好。 采用软件加密时,密钥管理的手段必 须可靠,通常对管理人员的要求较高 。(特别对软件开发人员)银行卡网络系统的安全需求 保证用户密码(PIN)的安全。国际信用卡 组织在信用卡业务安全规范中有相当明确的 要求:“PIN不允许以明码的形式出现在网 络系统中的任何地方!”。所以,PIN在生 成、存储、传输过程中必须全程保密。 保证交易信息在传输、交换过程中的完整性 。 安全的密钥管理。这是保证上述两点的必要 条件。 银行网络解决之道 建立基于硬件加密设备的安全体系, 是解决银行卡网络系统安全的有效办 法。 现在的银行卡网络安全系统采用的是 基于DES/3DES算法的对称密码体制。DES算法 DES算法来自IBM。 DES被NBS(美国国家标准局)采用。 DES被NSA(美国国家安全局)密密修改过,安全性有 很大幅度降低。(原DES密钥采用112位,NSA将其修 改为56位)。 经过修改的DES算法成为美国联邦标准。 IBM持有专利,但同意其他公司在制造、实现和使用中 使用他们的知识产权。 由于DES被NSA修改过,是否存在后门,一直是一个难 解的密团。 DES设计之初定义为硬件实现从而实现国家垄断,但由 于DES算法的细节被NBS对外公布,最终被程序员利用 软件实现了DES算法,NSA认为DES算法的出现是他们 20世纪最大的错误。(或许说标准对外的公布)DES算法描述 DES算法是一个分组加密算法,它以64位为分组对 数据加密。64位一组的明文从算法的一端输入,64 位的密文从另一端输出。DES算法是一个对称算法 :加密和解密用的是同一算法。 DES算法的密钥通常为64位,通常用16个16进制的 数表示,但每个16进制数的第8位都用作奇偶校验 ,所以密钥的实际长度是56位,如: 6D969D8710FAAE83 DES将密钥作用于明文,经过16轮计算得到密文 DES算法流程图 DES的解密算法和加密算法相同,二者不同的是48 位子密钥输入的顺序不同,加密是k1k16的顺 序,解密是K16.K1的顺序。三级密钥体制 银行卡网络安全系统采用了三级密钥管理 体制,从上而下依次是主密钥、密钥交换 密钥、数据密钥。上级密钥用于加密下级 密钥,具体来说: 主密钥用于加密密钥交换密钥和数据密钥 作本地存储; 密钥交换密钥用于加密数据密钥作网络传 输; 数据密钥用于对数据进行加解密。 三级密钥体制示意图三级密钥体制三级密钥体制说明第一层,LMK为本地主密钥, 共有50对不同的LMK,它是采用双倍 标准的DES密钥(长达112位),它是存放在HSM机内的,它的作 用是对所有在本地存放的其它密钥和加密数据进行加密,不同对 的LMK用于加密不同的数据或密钥。由于本地存放的其它密钥和 加密数据,都是在LMK加密之下。因此,LMK是最重要的密钥。第二层,通常称为密钥加密密钥或传输密钥(Key-encrypting key),包括TMK、ZMK等密钥。它的作用是加密在通讯线上需要 传递的数据密钥。从而实现数据密钥的自动分配。在本地或共享 网络中。不同的两个通讯网点使用不同的密钥加密密钥(KEK), 从而实现密钥的分工管理,它在本地存放时,处于本地LMK的加 密之下。第三层,通常称为数据加密密钥或工作密钥。包括TPK、TAK、 ZPK、ZAK、PVK、 CVK等密钥,它的作用是加密各种不同的数据 。从而实现数据的保密,信息的认证,以及数字签名的功能,这 些数据密钥在本地存放时,处于本地LMK的加密之下。 LMK本地主密钥 本地主密钥是存入在HSM机内的50对LMK的集合。 在HSM机器以外的地方不会以明文形式存放,它采用 双倍标准DES密钥(长达112位)实现三重数据加密。 所有的密钥和加密数据存放在本地时都必须经过LMK 进行加密。 HSM投入运行时,必须先产生和装载 LMK。 LMK的产生需要银行三位主要的管理人员参与产生, 每人输入三组数据(二组十六位的十六进制数,一组八 位的十进制数)。HSM利用这三组数据通过一定的运 算产生50对LMK存放在HSM机内的EPROM里供HSM 使用。HSM在运行的过程中一旦被打开,这时机内所 有LMK就会自动销毁,HSM允许LMKS可改变,但改 变后所有通过LMKS进行加密的密钥和数据,需要解 密后使用新的LMKS进行加密。更换LMK是一件风险 极高的工作,一旦出错,会造成整个银行加密体系的 失效。 LMK本地主密钥 产生过程ZONE MASTER KEY(ZMK) 区域主密钥 Zone Master Key (ZMK)是处于三级密钥体 系的第二级是加密密钥用的密钥,适用于广 域网网络中,同一个广域网网络中任何两个 通讯网点之间均共用不同的ZMK。ZMK用 于加密底层需要传送的数据密钥(ZPK), 这样远地密钥就能自动进行交换(无须人工 干预)。该密钥可以长期不更改,通常二年 更新一次 。本地存储时,ZMK是通过 LMK04-05进行加密的。 区域主密钥(ZMK)的产生 在产生ZMK的时候存在交换中心和成员行 的概念,如果在中行网络里,总行就是交换 中心,我行就是其中的成员行,在银联网络 里银联就是交换中心,中行就是其成员行了 。 ZMK的产生,是由交换中心提供两组或者 三组16位16进制的明文给各成员行,各成员 行收到后,由成员行两名或三名业务主管分 别持有,输入本行的加密机,加密机产生被 LMK加密后的ZMK密文和CHECK VALUES,将密文抄下,保存到主机数据库 里。CHECK VALUES用于与交换中心进行 核对明文输入是否输入正确。 什么是CHECK VALUES? 由于LMK和ZMK以及TMK的产生都是由两组或者 三组由不同人持有的明文输入加密机后产生的,但 如果在输入过程中一旦输入错误会造成整个密钥体 系无法正常工作,如何避免这种问题呢? CHECK VALUES就是起到校验输入的明文是否正 确的作用,它通过一个加密机通用的算法对明文进 行计算得出的一个值,交换中心提供明文时一般会 提供相应的CHECK VALUES,或者让成员行将自己 加密机产生的CHECK VALUES发给交换中心,由 它确定明文是否正确。 需要了解的是:只要明文是一致的CHECK VALUES一定是一样的。CHECK VALUES一致表 示输入的明文是正确的,由此产生的相应密文才是 正确的。ZONE PIN KEY(ZPK) 区域工作密钥 区域PIN密钥是一个数据加密密钥,适 用于共享网络,它通过ZMK加密在两 个(或多个)通讯网点之间进行自动分配 (交换密钥),ZPK用于加密两个通 讯网点之间需传输的PIN,这样就实现 了PIN的保密。ZPK需要经常性地定期 更改,在本地存储时(本地指交换中 心),它是通过LMK06-07进行加密的 。 TERMINAL MASTER KEY (TMK) 终端主密钥 终端主密钥是一个加密密钥用的密钥,(处 于三级密钥体系的哪一层?)使用于局域网 络中。可以人工地或自动地在以前安装过 TMK的基础上分配给通讯的双方且保持双 方之间的对称性,它用于在局域网内对新产 生的底层的数据加密用的密钥加密(TPK), 然后由主机端传输到ATM或POS或其它相似 的终端。TMK可以长期不作改动,通常一 到二年更换一次,本地存储时通过一对 LMK14-15进行加密。 注意TMK和ZMK的 区别。TERMINAL PIN KEY (TPK) 终端PIN密钥 (终端工作密钥) 终端PIN密钥是一个数据加密用的密钥 ,(处于三层密钥体系的第三层)适 用于局域网络中,它是在局域网内通
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号