CPU卡或成主流
佟秋利;张慧琳 2009-06-20 中国教育网络
CPU卡针对不同应用采用不同密钥,如对圈存交易可以使用圈存密钥,消费交易可以使用消费密钥,清算处理可以使用TAC密钥,更新数据可以使用卡片应用维护密钥,卡片个人化过程中可以使用卡片传输密钥、卡片主控密钥、应用主控密钥等,真正做到一钥一用。CPU卡采用的是动态密码,即同一张CPU卡,每次刷卡的认证密码都不相同,这种智能化的认证方式使得系统的安全性得到提高。
在CPU卡密钥注入的过程中,通常都采用安全报文的方式,保证数据和密钥更新的正确性和安全性,而且密钥注入的次序和相互保护的依存关系,也充分体现了密钥的安全设计,比如卡片主控密钥通常被用来保护导入应用主控密钥,应用主控密钥通常被用来保护导入其他应用密钥,比如消费密钥等。一般来说,公钥算法要比私钥算法慢得多,因此在CPU卡应用中,通常利用公钥密码体制来保护和分配(交换)密钥,而利用私钥密码体制加密交易消息。
CPU卡可以保存多个密钥版本,即对于不同批次的用户卡,使用不同版本的密钥在系统中并存使用,达到密钥到期自然淘汰过渡的目的,逐步更替系统中所使用的密钥,防止系统长期使用带来的安全风险。同时,CPU卡还可以使用密钥索引的机制,即对于发行的用户卡,同时支持多组索引的密钥,假如当前使用的密钥被泄漏或存在安全隐患的时候,系统可以紧急激活另一组索引的密钥,而不用回收和更换用户手上的卡片。
CPU卡内部安全控管功能
CPU卡内部安全控制管理的功能主要有两种:一是对数据及功能(如某一命令)的存取执行权限控制;二是对内部静态保密数据(如加密密钥等)的安全管理。
对数据及功能的存取执行权限控制
以CPU卡为中心,在卡的应用中主要存在两种认证授权过程,CPU卡持卡人认证和CPU卡与终端机认证。CPU卡验证持卡人身份的合法性这一过程通过个人识别号(PIN码)来完成;而IC卡和应用终端之间的认证则通过相应的认证过程来完成。CPU卡应用中存在的两种认证授权过程如下:
1.个人识别号(PIN,Personal Identification Number)
PIN是CPU卡中的保密数据。PIN的主要用途是保证只有合法持卡人才能使用该卡或该卡中的某一项或几项功能,以防止拾到该卡的人恶意使用或非法伪造。卡发行部门对每一张CPU卡均初始化生成一个PIN,经安全渠道分发给相应持卡人。持卡人在用卡时(可设定为在超过一定消费限额时),须输入PIN码,若输入的PIN码和该卡中存储的PIN码相同则证明此持卡人合法,可以使用该卡。
2.安全认证
CPU卡和应用终端之间的认证授权的用途就是相互确认合法性,目的在于防止伪造应用终端及相应的CPU卡。它一般有三种认证方式:
内部认证(Internal Authentication):应用终端验证CPU卡的合法性;
外部认证(External Authentication):CPU卡验证应用终端的合法性;
相互认证(Mutual Authentication):CPU卡和应用终端相互验证合法性。
由以上论述可见,在对安全性要求较高的应用(如金融应用))中,只有综合使用PIN和安全认证才能提供较为完善的安全保护。而在一般的IC卡的应用中,可以根据具体情况优化选择各种安全措施,以达到实现较高性价比的目的。
对内部静态保密数据的安全管理
内部静态保密数据主要指存储于IC卡内部的PIN、PUC(Personal Unblocking Code,个人解锁码)、加密密钥、解密密钥等重要数据。称其为内部是因为它们在应用周期(并非整个生存周期)中一旦建立就不会在CPU卡外出现,而只能在卡的内部使用。这样做的目的是为了进一步提高CPU卡的安全性。在CPU卡操作系统中,专门提供ISF(Internal Secret Files,内部保密文件)元文件(主要用于存储实际应用数据和相应的系统管理信息,元文件可以存在于任何一个文件层次上)存储这些保密数据。一般每一文件层次均有一个元文件存储相应层次(相应应用)的有关保密数据。



