技术知识◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇◇

 

CPU卡基础知识


一、 CPU卡简介
1、 IC卡定义
IC卡是集成电路卡(Integrated Circuit Card)的简称,是镶嵌集成电路芯片的塑料卡片,其外形和尺寸都遵循国际标准(ISO)。芯片一般采用不易挥发性的存储器(ROM、EEPROM)、保护逻辑电路、甚至带微处理器CPU。
2、 IC卡的分类
按照嵌入集成电路芯片类型的不同IC卡大致可分为:
       非加密存储器卡
(1)存储器卡
       逻辑加密存储器卡
(2)CPU卡
非加密存储器卡:卡内的集成电路芯片主要是EEPROM,具有数据存储功能,不具有数据处理功能和硬件加密功能。
逻辑加密存储器卡:在非加密存储器卡的基础上增加了加密逻辑电路,加密逻辑电路通过校验密码方式来保护卡内的数据对于外部访问是否开放,但只是低层次的安全保护,无法防范恶意性的攻击。
CPU卡:也称智能卡,卡内的集成电路中带有微处理器CPU、存储单元(包括随机存储器RAM、程序存储器ROM(FLASH)、用户数据存储器EEPROM)以及芯片操作系统COS。装有COS的CPU卡相当于一台微型计算机,不仅具有数据存储功能,同时具有命令处理和数据安全保护等功能。


存储器卡内部结构 CPU卡内部结构
3、 CPU卡的特点(与存储器卡相比较)
(1)芯片和COS的安全技术为CPU卡提供了双重的安全保证
(2)自带操作系统的CPU卡对计算机网络系统要求较低,可实现脱机操作;而存储器卡必须在完善的网络环境下使用。
(3)可实现真正意义上的一卡多应用,每个应用之间相互独立,并受控于各自的密钥管理系统。
(4)存储容量大,可提供1K-64K字节的数据存储间
(5)使用寿命长,数据存储时间可达十年以上
4、 CPU卡的主要功能
n 身份认证
-- 对持卡人、卡终端、和卡片三方的合法身份做认证
n 支付和结算工具
--电子钱包和电子存折的支付手段,可避免携带大量现金和找零的不便,提高交易效率
n 安全保密模块
-- 使用相应的密钥实现加密、解密以及交易处理,从而完成与用户卡之间的安全认证。
n 数据载体
-- CPU卡可做为个人档案或重要数据的安全载体,数据可至少保存10年以上。

CPU卡基础知识
一、为什么用CPU卡
IC卡从接口方式上分,可以分为接触式IC卡、非接触式IC卡及复合卡。从器件技术上分,可分为非加密存储卡、加密存储卡及CPU卡。非加密卡没有安全性,可以任意改写卡内的数据,加密存储卡在普通存储卡的基础上加了逻辑加密电路,成了加密存储卡。逻辑加密存储卡由于采用密码控制逻辑来控制对EEPROM的访问和改写,在使用之前需要校验密码才可以进行写操作,所以对于芯片本身来说是安全的,但在应用上是不安全的。它有如下不安全性因素:
1、密码在线路上是明文传输的,易被截取;
2、对于系统商来说,密码及加密算法都是透明的。
3、逻辑加密卡是无法认证应用是否合法的。例如,假设有人伪造了ATM,你无法知道它的合法性,当您插入信用卡,输入PIN的时候,信用卡的密码就被截获了。再如INTENET网上购物,如果用逻辑加密卡,购物者同样无法确定网上商店的合法性。
正是由于逻辑加密卡使用上的不安全因素,促进了CPU卡的发展。CPU卡可以做到对人、对卡、对系统的三方的合法性认证。
二、 CPU卡的三种认证
CPU卡具有三种认证方法:
持卡者合法性认证——PIN校验
卡合法性认证——内部认证
系统合法性认证——外部认证
持卡者合法性认证:
通过持卡人输入个人口令来进行验证的过程。
系统合法性认证(外部认证)过程:
系统 卡,
送随机数X
[用指定算法、密钥]对随机数加密

[用指定算法、密钥]解密Y,得结果Z
比较X,Z,如果相同则表示系统是合法的;
卡的合法性认证(内部认证)过程:
系统 卡
送随机数X
用指定算法、密钥]对随机数加密
[用指定算法、密钥]解密Y,得结果Z
比较X,Z,如果相同则表示卡是合法的;
在以上认证过程中,密钥是不在线路上以明文出现的,它每次的送出都是经过随机数加密的,而且因为有随机数的参加,确保每次传输的内容不同。如果截获了没有任何意义。这不单单是密码对密码的认证,是方法认证方法,就象早期在军队中使用的密码电报,发送方将报文按一定的方法加密成密文发送出去,然后接收方收到后又按一定的方法将密文解密。
通过这种认证方式,线路上就没有了攻击点,同时卡也可以验证应用的合法性;
但是因为系统方用于认证的密钥及算法是在应用程序中,还是不能去除系统商的攻击性。
在此,我们引进了SAM卡的概念。
SAM卡是一种具有特殊性能的CPU卡,用于存放密钥和加密算法,可完成交易中的相互认证、密码验证和加密、解密运算,一般用作身份标志。
由于SAM卡的出现,我们有了一种更完整的系统解决方案。
在发卡时,我们将主密钥存入SAM卡中,然后由SAM卡中的主密钥,对用户卡的特征字节(如:应用序列号)加密生成子密钥,将子密钥注入用户卡中。由于应用序列号的唯一性,使每张用户卡内的子密钥都不同。
密钥一旦注入卡中,则不会在卡外出现。在使用时,由SAM卡的主密钥生成子密钥存放在RAM区中,用于加密、解密数据。
上述的认证过程就成为如下形式:
系统合法性认证(外部认证)过程:
SAM卡 系统 卡
送随机数X
SAM卡生成子密钥对随机数加密

解密Y,得结果Z
比较X,Z,如果相同则表示系统是合法的;
卡的合法性认证(内部认证)过程:
SAM卡 系统 卡
送随机数X
用指定算法、密钥]对随机数加密
SAM卡解密Y,得结果Z
比较X,Z,如果相同则表示卡是合法的;
这样在应用程序中的密钥,就转移到了SAM卡中,认证成为卡——卡的认证,系统商不再存在责任。
三、 线路保护
卡与外界进行数据传输时,若以明文方式传输,数据易被载获和分析。同时,也可以对传输的数据进行窜改,要解决这个问题,CPU卡提供了线路保护功能。
线路保护分为两种,一是将传输的数据进行DES加密,以密文形式传输,以防止截获分析。二是对传输的数据附加MAC(安全报文鉴别码),接收方收到后首先进行校验,校验正确后才予以接收,以保证数据的真实性与完整性。
四、 硬件结构图

EEPROM用于存放用户数据;ROM中用于存放COS操作系统,而RAM区中用于存放COS运行时的中间变量。
COS(chip operation system),就是芯片操作系统,类似于DOS和WINDWOS,没有COS的CPU卡就象没有DOS和WINDOWS的PC机一样无法使用。
COS是在芯片出厂时由芯片供应商固化到ROM区的,这个过程就称之为掩膜。
COS是CPU卡的核心部分,它和硬件一起实现CPU卡的安全性。

 

版权所有:北京华大智宝电子系统有限公司
最佳分辨率:1024*768  
adfas