密钥管理规定目录1.目的和适用范围.......................................................................................................11.1.1.2.目的....................................................................................................................1适用范围............................................................................................................12.3.角色和职责...............................................................................................................1管理要求...................................................................................................................13.1.3.2.3.3.3.4.3.5.安全数据的产生................................................................................................1密钥的形成与分发............................................................................................2根密钥明文数据的保存....................................................................................4其他密钥数据的保存........................................................................................4人员管理............................................................................................................44.相关记录...................................................................................................................5公司内部资料注意保密角色职责各部门信息安全负责人监督产品设计开发及委托生产中密钥使用的过程;发生因密钥损坏或泄露,及时向所在部门负责人报告,并填写安全事故报告向信息安全管理委员会汇报。IT部负责管理密钥存储设备;各部门负责保管本部门使用的密钥管理密钥管理规定1.目的和适用范围1.1.目的规范公司产品开发及生产过程中密钥使用的保密要求,以防止因不当操作发生信息泄露。1.2.适用范围本规定适用于公司产品设计开发及生产过程中密钥使用的管理。2.角色和职责3.管理要求3.1.安全数据的产生开始进行个人化之前,必须创建相应的加密密钥,必须按本部分的规定进行。至少应生成以下的密钥:a)发卡行主密钥(KMC):用来派生KMAC、KENC和KDEK三个密钥。●KMAC——用来锁闭中国金融集成电路(IC)卡的应用区,并对个人化过程中装载到卡片的个人化数据进行检验,证实它们完整无损,且没有被修改;●KENC——用来生成IC卡密文和验证主机密文;公司内部资料注意保密第1页密钥管理规定●KDEK——用来加密在个人化过程中写入卡片的保密数据。KMC对每个发卡行是独有的,而KMAC、KENC和KDEK对每张卡是独有的。b)主密钥(MDK)——用来导出:UDK——用于联机的卡认证和发卡行认证。就每个BIN(银行标识码)而言,MDK通常是唯一的,而UDK对每张卡都必须是唯一的。c)发卡行公私钥对——通常由发卡行生成,公钥应传输给中国金融集成电路(IC)卡认证机构,供其创建发卡行公钥证书。私钥被保存在发卡行的HSM(主机加密模块)内。d)密钥交换密钥(KEK)——用来对发卡行个人化输入文件中的机密数据进行加密,每个发卡行的KEK必须是唯一的。e)传输密钥(TK)——用来对数据准备系统向个人化系统传送的发卡行个人化输入文件中的机密数据进行加密。作为选择,也可以用发卡行公私钥对生成这些密钥。f)ICC公私钥对——IC卡利用这一对密钥执行DDA和CDA/AC密文生成算法。其中,公钥须经过发卡行私钥的签名,才能获得发卡行公钥证书。每张卡的ICC公私钥对必须是独一无二的。g)MDKENC——用来导出:UDKENC——用来加密发卡行的脚本机密信息。h)MDKMAC——用来校验发卡行的脚本信息。3.2.密钥的形成与分发不同类型的加密算法支持《EMV卡个人化规范:2003》中的不同功能。然而,当加密算法没有得到正确实施时,加密算法的预定作用将受到负面的影响。一种安全的实施将取决于规范所需的不同密钥被签发者管理的好坏程度。以下材料的目的是提供不同算法类型所扮演的加密角色的一个概述,以及提出安全地管理密钥所必需的基本要求。a)非对称(SM2/RSA)密钥管理IC卡的安全性取决于私钥(签名)的保护。不能保证用来对静态或动态数据元签名的私钥的安全性将使IC卡面临被伪造的风险。私钥面临的主要风险包括:——成功地解决ECDLP问题,以及成功地分解RSA模数;——私钥自身的泄漏。为了限制这些风险所代表的潜在的泄露问题,我们推荐使用以下发卡行要求。私钥(签名)的安全性取决于许多因素,包括:——SM2/RSA密钥模数位的长度,例如:256或者1024和1152;——组成公钥/私钥模数的主要数字的质量;——用来从物理上保障(保护)私钥(签名)不受未经授权的访问和暴露/危害的影响的方法,特别是当IC卡或其它安全加密设备(SCD)使用它们时为密钥提供的保护。SM2/RSA密钥生成当生成SM2/RSA公私钥对时,推荐在一台物理安全的设备的受保护内存中完成这个过程。这种设备必须包含一个随机或伪随机数字生成器,执行原始校验例程,并支持篡改响应机制。——SM2/RSA私钥(签名)可能对物理安全设备而言是暂时性的;——密钥生成将利用一个随机或伪随机过程,以使得不可能预测出任何密钥或者确定密钥空间中的某些密钥比其它任意密钥可能性更大;——个人计算机或其它类似的不安全设备,即不被信任的设备,将永远不能用来生成SM2/RAS公私钥对。公司内部资料注意保密第2页密钥管理规定密钥传输和存储为了保护公私钥对的完整性,对发卡行而言,确保这种密钥数据使用以下步骤非常重要:——公钥应能被确保安全以及用一种能够保证它们完整性的方式来传输。推荐公钥始终在诸如一个证书之类的数据结构中传输,或者可以跟一个报文鉴别码(MAC)来保证完整性,这个报文鉴别码是由一个仅用于该用途的密钥按照ISO9807定义的算法应用于公钥和相关数据而得。也推荐使用双重控制技巧来确保公钥的接收方有办法验证它的发送方和完整性,即通过公钥上的一个校验值的单独和独立的传输来实现这一点;——私钥必须用一种能够保证它们的完整性和私密的方式来保障安全和传输。传输机制可能包括:●●●一台安全加密设备;利用至少与加密相等力量的对称算法来对被保护密钥的私钥进行解密;作为几个部分(在IC卡上保障安全),并使用一个对称算法来进行解密。对称密钥管理JR/T0025中的对称密钥用于特殊的事务功能。对称密钥是在个人化期间从一个主导出密钥(MasterDerivationKey)中导出的。最终的卡片级密钥是唯一的。发卡行主密钥包括:——发卡行主导出密钥(IDKAC):用来导出卡片密钥,该密钥用于生成称为应用密文(AC)的MAC;——发卡行安全报文主密钥(IMKSMCIMKSMI):用来导出卡片密钥,这些卡片密钥用在卡片和验证系统之间的安全报文中,即卡片锁定、应用锁定/解锁、更新卡片特定数据和修改PIN。密钥生成发卡行将使用以下原则来使密钥数据在创建期间泄漏的机会最小化:——在生成密钥时,它们必须要么在一台由篡改响应机制保护的物理安全的设备中生成,要么必须由授权的工作人员以一部分一部分的形式生成(见下文)。设备必须包含一个随机或伪随机的数字生成器;——任何时候一个未被保护的密钥都不能存在于一台物理安全的设备的被保护内存之外。任何时候物理安全的设备都不能输出纯文本的密钥,除非作为密码或者以两个或更多部分的形式输出;——当密钥由授权工作人员通过一个将各部分组合的过程来生成时,必须要求每一方生成一个和要生成的密钥一样长的部分。密钥组合过程在一个物理安全的设备内部进行。此外,组合各部分的方法应当是,知道了各部分的任何一个子集也无法知道密钥值。分开的密钥由一个管理机构掌握,至少应有一个部分持有人是发卡行的一名员工;——应当为实际密钥的全部计算校验位;——个人电脑或类似的不安全设备永远不能用来生成密钥资料;——如果发现任何密钥存在于一个物理安全的设备之外,或者密钥的各个部分被人所知,或者有被单个人掌握的嫌疑,那么该密钥将被认为已被泄漏,并且必须用一个新的密钥来替换它。密钥传输和存储对称密钥可能需要被传输和存储。例如包括将对称密钥从发卡行的站点传输给一个第三方的处理商或卡片个性化供应商。当对称密钥正被传输或存储时,以下措施将限制数据泄漏的潜在危险:——对称密钥可以被安全地转移到一块安全令牌或智能卡的保护之下,以进行传输和存储;——对称密钥只能以以下方式在安全令牌或智能卡的受保护内存之内进行传输或存储:公司内部资料注意保密第3页密钥管理规定利用双重控制和分持机密的原则,以两个或更多部分的形式作为密码,密码是用一个由各方安全地建立的传输或存储密钥来创建的。3.3.根密钥明文数据的保存根密钥明文数据的保存要求如下:a)一旦接收到密钥资料,负责的密钥管理人员必须立即检查邮包是否篡改,并且必须验证内容;b)如果接收的管理人员对密钥数据的完整性有任何不确定的地方,必须立即通知发送方。发送方与接收方商议决定密钥数据将来的状况。关于继续使用密钥资料的任何决定的基础必须记录在案并由双方保留;c)如果硬拷贝数据要保留任意一段时间,那么各个硬拷贝组成部分、安全令牌或智能卡必须保存在一个序列化的保密信封中;d)这个序列化的保密信封必须持续保存在一个物理安全的容器中,这个容器仅能由指定的密钥管理人员或预备人员访问。每次对密钥数据的访问都必须记入日志,包括时间、日期、信封序列号、目的和签名。这些日志将可以向任何相应的请求机构提供;e)密钥资料永远不能在超过任务所需的访问必需的时间之后保留在保密信封和它们的物理安全的环境之外。3.4.其他密钥数据的保存下面给出了关于密钥存储问题的一些一般的指导,它适用于非对称和对称密钥存储:a)PC板的使用一块向主机提供加密服务的PC板可以看作是HSM的一种形式和类似的期望保护级别。注:使用加密安全设备的主要原因是保护密钥。如果使用HSM主机的系统自身是不安全的,那么攻击者将更容易危害系统的软件功能,而忽略HSM。b)访问控制所有在卡外和HSM外保存的密钥都应当保持在至少双重的控制之下。c)HSM和IC安全内存一般而言,HSM将包含单独的存储和处理设备,而密钥资料将跨内部硬件总线传送。由于这个原因,当检测到了危害时,HSM清除(或归零)它的内存是很重要的。此外,HSM的硬件设计解决电磁辐射的问题也很重要。HSM一般设计位于一个安全的环境之中。3.5.人员管理负责管理加密密钥和密钥要素及其它密钥数据设备的人员必须由技术