版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基本概念 明文:没有经过加密的消息。 密文:使用某种方法被加密的消息。 加密:用某种方法伪装消息以隐藏它的内容的过程。 解密:把密文转变为明文的过程。现代密码学 密码学 -研究密码技术的学科,是数学的一个分支,包括密码编码学和密码分析学。密码编码学-信息隐蔽使消息保密的技术和科学。密码分析学-破译密码破译密文的科学和技术。密码学的主要目的 提供机密性保密 鉴别:消息的接收者应该能够确认消息的来源;完整性:消息的接受者能够验证在传送过程中消息没有被修改; 抗抵赖 :消息的发送者在消息发送后无法否认其发送过消息。请注意密码学的目的,这也就是我们使用加密的原因,同时课程的核心也是围绕如何实现这个过程
2、展开的。密码学的主要目的密码学的主要目的 机密性:数据保密机密性:数据保密 鉴别:消息的接收者应该能够确认消息的来源;鉴别:消息的接收者应该能够确认消息的来源;完整性:消息的接受者能够验证在传送过程中完整性:消息的接受者能够验证在传送过程中消息没有被修改;消息没有被修改; 抗抵赖抗抵赖 :消息的发送者在消息发送后无法否认:消息的发送者在消息发送后无法否认其发送国消息。其发送国消息。传统的密码学传统的密码学 传统的密码学,使用密码算法,一般是一些数学函数。(一般使用两个函数,一个加密函数一个解密函数),电影风语者中的密码员使用的就是典型的传统密码方法。 传统密码学的缺陷: 1、受限制,只能在一个
3、组织内使用。大家必须知道相应的加解密算法。 2、对人要求过高,一旦一个用户离开组织就会使保密荡然无存。(这就是为什么风语者中:为什么要保护密码员,为什么当密码员被抓的时候,宁可杀死他也不能落到敌人手里的原因。) 3、受限制的密码算法不可能进行质量控制或者标准化。现代密码系统模型及其特点现代密码系统模型及其特点现代密码学:使用密钥(KEY)来进行数据加密,加密和解密都使用同一个密钥,运算 都依赖于密钥。算法可以公开,算法的安全性是基于密钥的安全性。现代密码学:由算法、明文、密文和密钥组成。 特点特点加密算法足够强大:仅知密文很难破译出明文。 基于密钥的安全性,而不是基于算法的安全性:知道密文和加
4、/解密算法,很难破译出明文。 算法开放性:开放算法,便于实现和标准化。密码体制对称密码体制 加密密钥及解密密钥相同,所以又叫单钥密码。 著名密码算法:DES非对称密码体制 加密密钥及解密密钥不同 ,而且解密密钥不能根据加密密钥计算出来,所以又叫双钥密码。 著名密码算法:RSA对称密码对称密码 :加密密钥及解密密钥相同。优点是: 安全性高 加解密速度快缺点是: 随着网络规模的扩大,密钥管理成为一个难点; 无法解决消息确认问题;(不过可以采用一些业务方法弥补,如:商户号终端号等方式但对内部人员无效) 缺乏自动检测密钥泄露的能力。 举例:21.80.66.254 /usr/btssrc/twb/en
5、crypt非对称密码非对称密码 :加密密钥及解密密钥不同 ,而且解密密钥不能根据加密密钥计算出来。优点是:不需要安全信道来传送密钥 。缺点是:算法复杂,加解密速度慢,一般比单钥密码慢1000倍。攻击分类攻击分类被动攻击被动攻击窃听窃听获取消息内容获取消息内容流量分析流量分析主动攻击主动攻击中断中断修改修改伪造伪造破坏可用性破坏可用性破坏完整性破坏完整性 破坏真实性破坏真实性算法的安全性 根据被破译的难易程度,不同的密码算法具有不同的安全等级。从理论上来说,所有的密码算法总是可以被破译的,那么,算法的安全性怎么判断呢?一般来说:如果破译算法的代价大于加密数据的价值,那么你可能是安全的。如果破译算
6、法所需的时间比加密数据保密的时间更长,那么你可能是安全的。如果用单密钥加密的数据量比破译需要的数据量少得多,那么你可能是安全的。1.如果一个算法用(现在或将来)可得到的资源都不能破译,这个算法可被认为在计算上是安全的。加密方式:硬件加密 硬件加解密是商业或军事上的主流 (1)速度问题:不占用主机处理器资源。 (2)安全性:可进行物理保护。 (3)易于安装:不需使用计算机的电话、传真、数据线路;计算机环境下,使用硬件加密可对用户透明,软件实现,需要在操作系统深层安装,不容易实现。加密方式:软件加密 缺点:安全性差、速度慢、造价高。 优点:使用灵活、修改方便、可移植性好。 采用软件加密时,密钥管理
7、的手段必须可靠,通常对管理人员的要求较高。(特别对软件开发人员)银行卡网络系统的安全需求 保证用户密码(PIN)的安全。国际信用卡组织在信用卡业务安全规范中有相当明确的要求:“PINPIN不允许以明码的形式出现在网不允许以明码的形式出现在网络系统中的任何地方!络系统中的任何地方!”。所以,PIN在生成、存储、传输过程中必须全程保密。保证交易信息在传输、交换过程中的完整性。安全的密钥管理。这是保证上述两点的必要条件。 银行网络解决之道 建立基于硬件加密设备的安全体系,是解决银行卡网络系统安全的有效办法。 现在的银行卡网络安全系统采用的是基于DES/3DES算法的对称密码体制。DES算法 DES算
8、法来自IBM。 DES被NBS(美国国家标准局)采用。 DES被NSA(美国国家安全局)密密修改过,安全性有很大幅度降低。(原DES密钥采用112位,NSA将其修改为56位)。 经过修改的DES算法成为美国联邦标准。 IBM持有专利,但同意其他公司在制造、实现和使用中使用他们的知识产权。 由于DES被NSA修改过,是否存在后门,一直是一个难解的密团。 DES设计之初定义为硬件实现从而实现国家垄断,但由于DES算法的细节被NBS对外公布,最终被程序员利用软件实现了DES算法,NSA认为DES算法的出现是他们20世纪最大的错误。(或许说标准对外的公布)DES算法描述 DES算法是一个分组加密算法,
9、它以64位为分组对数据加密。64位一组的明文从算法的一端输入,64位的密文从另一端输出。DES算法是一个对称算法:加密和解密用的是同一算法。 DES算法的密钥通常为64位,通常用16个16进制的数表示,但每个16进制数的第8位都用作奇偶校验,所以密钥的实际长度是56位,如:6D969D8710FAAE83 DES将密钥作用于明文,经过16轮计算得到密文 DES算法流程图 DES的解密算法和加密算法相同,二者不同的是48位子密钥输入的顺序不同,加密是k1k16的顺序,解密是K16.K1的顺序。三级密钥体制 银行卡网络安全系统采用了三级密钥管理体制,从上而下依次是主密钥、密钥交换密钥、数据密钥。上
10、级密钥用于加密下级密钥,具体来说:主密钥用于加密密钥交换密钥和数据密钥作本地存储;密钥交换密钥用于加密数据密钥作网络传输;1. 数据密钥用于对数据进行加解密。 三级密钥体制示意图三级密钥体制三级密钥体制说明 第一层,LMK为本地主密钥, 共有50对不同的LMK,它是采用双倍标准的DES密钥(长达112位),它是存放在HSM机内的,它的作用是对所有在本地存放的其它密钥和加密数据进行加密,不同对的LMK用于加密不同的数据或密钥。由于本地存放的其它密钥和加密数据,都是在LMK加密之下。因此,LMK是最重要的密钥。 第二层,通常称为密钥加密密钥或传输密钥(Key-encrypting key),包括T
11、MK、ZMK等密钥。它的作用是加密在通讯线上需要传递的数据密钥。从而实现数据密钥的自动分配。在本地或共享网络中。不同的两个通讯网点使用不同的密钥加密密钥(KEK),从而实现密钥的分工管理,它在本地存放时,处于本地LMK的加密之下。 第三层,通常称为数据加密密钥或工作密钥。包括TPK、TAK、 ZPK、ZAK、PVK、 CVK等密钥,它的作用是加密各种不同的数据。从而实现数据的保密,信息的认证,以及数字签名的功能,这些数据密钥在本地存放时,处于本地LMK的加密之下。 LMK本地主密钥 本地主密钥是存入在HSM机内的50对LMK的集合。在HSM机器以外的地方不会以明文形式存放,它采用双倍标准DES
12、密钥(长达112位)实现三重数据加密。所有的密钥和加密数据存放在本地时都必须经过LMK进行加密。 HSM投入运行时,必须先产生和装载LMK。 LMK的产生需要银行三位主要的管理人员参及产生,每人输入三组数据(二组十六位的十六进制数,一组八位的十进制数)。HSM利用这三组数据通过一定的运算产生50对LMK存放在HSM机内的EPROM里供HSM使用。HSM在运行的过程中一旦被打开,这时机内所有LMK就会自动销毁,HSM允许LMKS可改变,但改变后所有通过LMKS进行加密的密钥和数据,需要解密后使用新的LMKS进行加密。更换LMK是一件风险极高的工作,一旦出错,会造成整个银行加密体系的失效。 LMK
13、本地主密钥 产生过程ZONE MASTER KEY (ZMK) 区域主密钥区域主密钥 Zone Master Key (ZMK)是处于三级密钥体系的第二级是加密密钥用的密钥,适用于广域网网络中,同一个广域网网络中任何两个通讯网点之间均共用不同的ZMK。ZMK用于加密底层需要传送的数据密钥(ZPK),这样远地密钥就能自动进行交换(无须人工干预)。该密钥可以长期不更改,通常二年更新一次 。本地存储时,ZMK是通过LMK04-05进行加密的。 区域主密钥区域主密钥(ZMK)的产生的产生 在产生ZMK的时候存在交换中心和成员行的概念,如果在中行网络里,总行就是交换中心,我行就是其中的成员行,在银联网络
14、里银联就是交换中心,中行就是其成员行了。 ZMK的产生,是由交换中心提供两组或者三组16位16进制的明文给各成员行,各成员行收到后,由成员行两名或三名业务主管分别持有,输入本行的加密机,加密机产生被LMK加密后的ZMK密文和CHECK VALUES,将密文抄下,保存到主机数据库里。CHECK VALUES用于及交换中心进行核对明文输入是否输入正确。 什么是CHECK VALUES? 由于LMK和ZMK以及TMK的产生都是由两组或者三组由不同人持有的明文输入加密机后产生的,但如果在输入过程中一旦输入错误会造成整个密钥体系无法正常工作,如何避免这种问题呢? CHECK VALUES就是起到校验输入
15、的明文是否正确的作用,它通过一个加密机通用的算法对明文进行计算得出的一个值,交换中心提供明文时一般会提供相应的CHECK VALUES,或者让成员行将自己加密机产生的CHECK VALUES发给交换中心,由它确定明文是否正确。 需要了解的是:只要明文是一致的CHECK VALUES一定是一样的。CHECK VALUES一致表示输入的明文是正确的,由此产生的相应密文才是正确的。ZONE PIN KEY(ZPK) 区域工作密钥区域工作密钥 区域PIN密钥是一个数据加密密钥,适用于共享网络,它通过ZMK加密在两个(或多个)通讯网点之间进行自动分配(交换密钥),ZPK用于加密两个通讯网点之间需传输的P
16、IN,这样就实现了PIN的保密。ZPK需要经常性地定期更改,在本地存储时(本地指交换中心),它是通过LMK06-07进行加密的。 TERMINAL MASTER KEY (TMK) 终端主密钥终端主密钥 终端主密钥是一个加密密钥用的密钥,(处于三级密钥体系的哪一层?)使用于局域网络中。可以人工地或自动地在以前安装过TMK的基础上分配给通讯的双方且保持双方之间的对称性,它用于在局域网内对新产生的底层的数据加密用的密钥加密(TPK),然后由主机端传输到ATM或POS或其它相似的终端。TMK可以长期不作改动,通常一到二年更换一次,本地存储时通过一对LMK14-15进行加密。 注意TMK和ZMK的区别
17、。TERMINAL PIN KEY (TPK) 终端终端PIN密钥密钥 (终端工作密钥)终端工作密钥) 终端PIN密钥是一个数据加密用的密钥,(处于三层密钥体系的第三层)适用于局域网络中,它是在局域网内通过TMK加密,由终端数据受理者自动分配到终端且保持通讯双方之间的对称性。TPK用于加密在局域网内终端和终端数据受理者之间传送的PIN。本地存储时通过一对LMK14-15进行加密的。TPK需要经常性地定期更换,通常每天更换一次。 TERMINAL AUTHENTICATION KEY (TAK) 终端认证密钥终端认证密钥 (MAC KEY) 终端认证密钥是一个数据加密用的密钥,适用于局域网内。它
18、在局域网内通过TMK加密由终端数据受理者自动分配到终端,TAK用于局域网内终端及终端数据受理者之间传送信息时,生成和校验一个信息认证代码(Message Authentication Code),从而达到信息认证的目的。TAK需要经常性地更换,通常每天更换一次,本地存储时通过一对LMK16-17进行加密。 (MAC算法在后面介绍)PIN VERIFICATIONE KEY (PVK) PIN 校验密钥校验密钥 PIN 校验密钥是一个数据加密密钥,用于生成和校验PIN校验数据,同时校验一个PIN的可靠性。传送时PVK通过TMK或ZMK加密;存放本地时,它通过一对LMK加密。 CARD VERIF
19、ICATION KEY (卡校验密钥卡校验密钥) 卡校验密钥(CVK)类似于PIN校验密钥,仅仅是用卡的信息取代了PIN。其主要作用就是校验卡的磁道信息的即通常所说的CVV校验。 实现PIN的安全 发卡过程中发卡过程中PIN的产生的产生PIN的修改过程的修改过程 交易过程中交易过程中PIN的保护的保护 发卡时客户密码生成过程示意图(FOR AS400) PIN明 文PIN密 文PINPIN的生成过程(的生成过程(AS400)AS400)主机向密码机发送产生并打印用户PIN的指令;密码机接到指令后,在内部用随机数自动产生一个PIN值;密码机在内部用PVK密钥加密PIN,把PIN的密文输出送给主机
20、,主机将PIN的密文存入用户数据库中;同时密码机将PIN的明码直接输出到专用打印机上,打印在密码信封之内用户拆开密码信封,得到卡密码。需要注意的是密码的生成和校验的过程有许多不同的方法,我行AS400的加密方法和SBS的加解密的方法就不相同。AS400 PINAS400 PIN的生成过程的生成过程 AS400加密方式使用的是IBM3624方法 该方法产生PIN的基本要素为一个A/C (16位的十进制的客户帐号或卡号,如A/C不足十六位,则可由银行自行决定如何填充,使其达到十六位)和一个PVK (产生PIN的密钥), 一个A/C和一个PVK通过DES算法, 即得出一个16位的十六进制数位的十六进
21、制数, 根据不同银行的要求来规定PIN的长度, 例如6位PIN则取前六位数。用DECIMALISATION十进制表将该6位十六进制数转为6位十进制数, 即得到一个六位十进制的原始密码PIN(即发卡时卡的原始密码)。但原始PIN是不存放在主机的数据库中的, 在数据库中只存放A/C、PVK和偏移量。 需要注意的是: 1、我行传送的16位A/C是使用信用卡卡号的倒数第二位开始向前数12位帐号后补4个0来实现的。 2、只要帐号不变生成的原始密码是不变的。我行A/C帐号的组成 5183766500009205 使用信用卡卡号的倒数第二位开始向前数12位帐号:376650000920 后补0000,最后得
22、到的16位A/C是: 3766500009200000偏移量的作用 由于采用IBM3624的加密方法计算出来的原始密钥是不变的,但客户需要改密的时候该如何实现呢?偏移量( OFFSET)为此引入这种加密方法,OFFSET 为一个六位(或者7位)十进制的中间数, 它的作用为客户更改密码时, 通过OFFSET 的变化来保证NATURAL PIN不变, 工作原理是PIN+OFFSET得出客户现在的PIN, 在这个加法中每一位是对应相加的, 但不进位。OFFSET存放在主机的数据库中。其实客户改密只是改变的存放在数据库中的偏移量。 SBS个人PIN的产生过程 SBS借记卡的加密过程非常简单,它直接调用
23、加密机的BA指令,将一个客户输入的6位的明文密码和借记卡帐号(12位的)使用加密机LMK02-LMK03进行加密产生密文,将密文存放在数据库内。 调用的函数说明SBS借记卡借记卡PIN的修改过程的修改过程将借记卡插入本行的ATM,并输入旧密码PIN-OLD和新密码PIN-NEW。 ATM终端用PIN密钥TPK加密PIN-OLD和PIN-NEW,并将加密后的PIN组成消息,发往SBS主机;SBS得到交易消息,命令加密机在内部,用及ATM约定的PIN密钥TPK解密PIN-OLD,再将主机从用户数据库中提取的该客户PIN-OLD的密文用PVK密钥解密;之后,比较这两个PIN,如果相同,则用PVK加密
24、PIN-NEW,将PIN-NEW的密文返回给主机,同时返回正确应答,客户修改密码成功;否则,密码修改错误应答,客户修改密码失败。 PINBLOCK的计算 PINBLOCK就是个人PIN在网络传输过程中加密后一种结构。 PINBLOCK的产生有许多的算法(1)国际格式ISO DP/9564/1FORMAT 0或ANSI X98 (2) DOCUTEL格式 (3) IBM格式(4) NCR格式我行采用的是ANSIX98标准。PINBLOCK ANSI98算法 首先把PIN(P1。Pn),其长度(n 一般是46之间)PIN及填补值(F)合成一组16位的字串,再以帐号(除校验位)最后12位数字(A1。
25、A12)和以“0”填补右边的一组数字异或(EOR),便得到一串16位的十六进制的数据。使用TPK进行DES运算得到PINBLOCKPINBLOCK产生示意图PINBLOCK及验密(以SBS后台为例)使用比较法验证终端PIN int verify_pin_tpk_lmk(char *tpk_lmk, char *pin_block, char *pin_fmt, char *pan, char *epin); 输入: tpk_lmk 为本地主密钥LMK14-15加密下的终端PIN密钥TPK pin_block TPK加密下的PIN BLOCK pin_fmt PIN BLOCK格式 pan 主帐
26、号(HSM使用主帐号的最右12字节不包含校验字节) epin 为本地主密钥LMK02-03加密下的PIN 密文 输出: 返回值: 0 函数正常返回 -1 函数返回错误 调用加密机指令: BC/BD 交易过程中PIN保护示意图 假设成员行(发卡行)的客户,将信用卡插入成员行(受理行)的ATM,并输入个人密码PIN。 ATM终端用PIN密钥TPK加密PIN,并用加密后的PIN组成消息,发往受理行的主机; 受理行主机识别出不是本行的卡后,命令加密机在内部用及ATM约定的密钥TPK解密PIN,再用交换中心下发的PIN密钥ZPK1重新加密PIN,送出交给主机。主机组成新的消息发往交换中心 交换中心识别出
27、是行的卡,先命令加密机在内部用及行(受理行)约定的PIN密钥ZPK1解密PIN,再用及行(发卡行)约定的PIN密钥ZPK2重新加密PIN,送出交给主机。主机组成新的消息发往行;行得到交易消息,命令加密机在内部,用及交换中心约定的PIN密钥ZPK2解密PIN,再将主机从用户数据库中提取的该客户PIN的密文用PVK密钥解密;之后,比较两个PIN,相同则返回正确应答,允许行受理此次交易,否则,返回拒绝受理的应答,通常客户PIN的校验方式及PIN的存储方式有关。 消息完整性鉴别 (MAC的运用) 为了防止数据在网络传输中被篡改,保证数据的完整性,使得有意或无意地篡改信息后可以被发现,这些都必须通过信息
28、的认证来实现。信息认证的过程就是MAC产生和校验的过程,信息认证处理支持ANSIX9.9或ISO8730或ISO8731标准,采用DES算法生成32 bits MAC(有时要求64 bits现在一般都采用64bits) ,MAC不需要隐含,直接附加在一个信息报文的后面,随报文一起传送,下面将具体描述产生和校验MAC的方法。 MAC的产生产生MAC 的算法,首先将需要传输的消息按8字节进行分组,在结尾不足8字节的做补0处理,然后进行分组加密,加密结果及下一分组异或,作为下次加密的输入。当主机收到完整数据后,将除去MAC的数据进行及1相同的运算得出MAC及送上来的MAC进行比较,如果相等则数据没有
29、被修改。如果消息在传送过程中被改动,不论是删除、插入、替换、换序,都会导致消息鉴别码MAC的改变。MAC产生的示意图 64bit 64bit 49bit 11bit0 0 0 0 0 0. .DESDESDES EXOR EXORK密文MAC(8 个 16 进制数字) 64bit32bit密文MAC的计算过程 MAC鉴别过程 假设成员行(发卡行)的客户,将信用卡插入成员行(受理行)的ATM,并输入个人密码PIN。 ATM终端组织交易消息,并用TAK对消息进行MAC运算,得到MAC1,然后将消息和MAC1一起发往受理行的主机; 受理行主机收到交易消息后,命令密码机用TAK计算消息的MAC值,并及
30、收到的MAC1进行比较,如果比较结果不同,则中止交易。否则,受理行主机识别出不是本行的卡后,命令加密机用交换中心下发的ZAK1重新计算消息的MAC值,得到MAC2,送出交给主机。主机将交易消息和MAC2发往交换中心; 同样,交换中心调用密码机,先用ZAK1验证MAC2的正确性,验证通过后,再用及行(发卡行)约定的ZAK2重新计算消息的MAC值,得到MAC3,送出交给主机。主机将交易消息和MAC3发往行;行得到交易消息,调用密码机,先用ZAK2验证MAC3的正确性,验证通过后才允许交易继续,否则,中止交易。 我行现有的银行卡网络结构我行各种KEY的产生过程 获得工作密钥的过程数据加解密的过程 我行银行卡网络加密传输的过程密钥的安全管理 密钥的产生密钥的产生 密钥分发密钥分发 密钥的验证密钥的验证 密钥的存储密钥的存储 密钥的使用范围密钥的使用范围 密钥有效
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人工智能基础与应用第二版教师课件:项目一
- 医联体政策下合规协同机制
- 2025年实验室安全使用培训课件
- 2025年燃气安全规范培训课件
- 医疗预测模型开发中的患者隐私保护技术
- 医疗隐私保护国际化人才培养战略
- 医疗资源整合:优化患者就医体验的路径
- 浙江省金华市2026年中考历史模拟试卷附答案
- 医疗质量数字化监控投入与不良事件减少
- 急救护理质量控制
- 【新教材】人教PEP版(2024)四年级下册英语 Unit 1 Class rules A Lets talk 教案
- 2026年非煤矿山三级安全教育培训考核试题(及答案)
- 2026年包头职业技术学院单招职业技能测试题库附答案详解(考试直接用)
- 2026海南三亚市吉阳区机关事业单位编外聘用人员、村(社区)工作人员储备库(考核)招聘200人(第1号)考试备考试题及答案解析
- 2026年春季小学信息科技(清华版·贵州)四年级下册教学计划及进度表
- 2025-2026学年下学期初三春季开学第一课
- 聚焦实战破局!零碳园区建设实战指南与路径规划
- 2.1 依宪治国 同步课件 2025-2026学年统编版道德与法治八年级下册
- CRC培训教学课件
- 移动客服培训课件
- 【人卫课件耳鼻喉9版】鼻科学第十一章 儿童和婴幼儿鼻腔、鼻窦炎症性疾病
评论
0/150
提交评论