智能卡芯片技术
文章出处:http://www.singbon.com 作者:技术 人气: 发表时间:2011年09月09日
[文章内容简介]:智能卡芯片技术
存储器IC卡芯片技术
今天,飞速发展的半导体技术可以在相同大小的硅片上集成越来越多的功能。因此,可以在不增加芯片体积并且满足有关标准要求的同时,扩大IC卡的存储容量和处理能力,从而大大促进了存储器IC卡技术的发展。存储器IC卡可以分为以下两种。
通用存储器IC卡
一般均采用通用存储器芯片,不完全符合或支持有关IC卡国际标准,没有或很少安全控制功能。
智能存储器IC卡
采用智能存储器芯片(也称为专用IC卡芯片),符合或支持有关IC卡国际标准,具有较为完善的安全控制功能。
目前,这两种存储器IC卡均有较大的应用,尤以智能存储器IC卡的应用量最大、应用领域最广。
本章将较为详细地介绍以上两种存储器IC卡用芯片技术的分类、特点及主要应用等。
一般存储IC卡技术特点
通用存储器IC卡芯片主要具有以下特点:
一般无安全控制逻辑,即存储器中存储的有关信息可以任意存取、没有逻辑安全性;
在存储器芯片制造上没有或很少安全保护措施;
多采用EEPROM存储器技术;
不完全符合或支持ISO/IEC 7816等有关IC卡的国际标准,如不支持ATR(自动复位响应)协议等;
一般并非为IC卡应用专门设计(即非IC卡专用芯片);
该类芯片的通用性较强,已经或正在大量用于有关的工商业产品中。
目前,此类芯片的通讯协议多采用较为通用的两线串行链接协议(I2C)及三线串行链接协议,尤以前者为多。此类芯片的典型逻辑结构见图1。
国际上生产此类芯片的半导体制造商有多家,有关芯片也有多种。其中应用较多的有美国ATMEL公司的AT24系列(两线串行链接协议)及AT93系列(三线串行链接协议)芯片等。
由于此类芯片没有安全控制逻辑,所以在对安全性有一定要求的场合中很少应用。正因为其功能简单、价格较为便宜、较好的通用性等使其具有易于开发、使用方便等优点,比较适合于IC卡的初期推广应用及较为简单的应用场合,如食堂售饭卡等。
逻辑加密卡技术特点
智能存储器IC卡具有较高的安全性和(或)较大的存储容量,这一特性则完全取决于其所采用的智能存储器芯片。智能存储器芯片主要由安全控制逻辑及非易失存储器两部分组成。此外,为进一步加强其安全性,在智能存储器芯片的制造及运输(指从芯片制造商将IC卡芯片递交到IC卡制造商等用户的过程)中也提供了较好的安全保护措施。与通用存储器IC卡芯片比较,智能存储器IC卡芯片主要具有以下特点:
具有安全控制逻辑(即存储器中存储的有关信息不可任意存取,具有较高的逻辑安全性);
在存储器芯片制造上提供有较好的安全保护措施;
同时采用ROM、PROM、EEPROM等存储器技术;
较好地符合或支持ISO/IEC 7816等有关IC卡的国际标准,如支付ATR(自动复位响应)协议;
一般为IC卡应用专门设计(即IC卡专用芯片);
该类芯片的专用性较强,因而种类较多。
此类芯片的逻辑结构见图。
目前,带有智能存储器芯片的IC卡具有十分广泛的应用,根据不同的应用背景所产生且被采用的智能存储器芯片也具有不同的结构和性能。同时,每种类型的智能存储器芯片均具有不同的技术特点。
逻辑加密卡存储区域
根据对智能存储器IC卡的不同应用需求,存储器空间可以分成以下四种功能区域。
制造商代码区域
制造商代码区域存储不可更改的芯片制造商、IC卡制造商及IC卡发行商等的代码数据。
为加强IC卡的防伪、识伪措施,根据不同的应用类型,对存储器提供不同的安全保护机制。其中之一就是每一种芯片在有关区域中均包含不可更改的标识数据,如制造、发行和应用代码等。该数据用于识别、跟踪有关制造商所提供的芯片、IC卡以及有关用户的应用情况,为在管理上增强安全性提供了可能性。有关区域的类型、特点见表1。
有关制造商代码区域的类型、特点
区域 用途 存储器种类
芯片制造商区域 存储芯片制造商标识数据 ROM等
IC卡制造商区域 存储IC卡制造商标识数据 PROM、EEPROM等
IC卡发行商区域 存储IC卡发行商标识数据 PROM、EEPROM等
这种分类方法可由芯片制造商在制造芯片时决定,也可以由IC卡发行商或有关应用开发商在编程时决定(多以有关芯片制造商决定)。
个人化区域
个人化区域是与应用相关的区域。
个人化区域中的有关数据控制对该芯片的个人化过程,并对个人化操作提供安全保证。有的芯片仅限一次使用,则个人化区域控制此过程为不可逆过程;有的芯片可多次重复使用。则个人化区域控制此过程的次数等。
安全区域
安全区域存放不可读取的有关安全数据(如个人密码等)。
应用区域
应用区域用于存储有关应用数据信息。
这种划分方法只是一个总的原则。在不同的智能存储器芯片中,依据其技术特点将可能有不同的划分,如存储区域可能划分得更多、更细,也可能划分得更少、更粗。甚至有的智能存储器芯片将不同的存储区域的功能在相同的物理存储位置实现(即在不同的阶段该区域具有不同的功能),这种情况将在本章下面介绍。
就具体功能实现而言,智能存储器中的应用区域还有两种不同的实现方法:一种为将应用相关区域做成计数器形式,如电话卡(Telephone Card);另一种为存储器形式,主要用于数据信息的存取,如健康保险卡等。其中,面向计数的存储器主要面向位操作,而存储器形式主要面向字节操作。为方便讨论,本章及以下章节主要分为面向位操作的智能存储器芯片及面向字节操作的智能存储器芯片,把计数器形式存储器包含在面向位的智能存储器芯片中。此种分类见图。
智能存储器IC卡芯片分类
从技术角度而言,利用特殊的工艺技术或硬件逻辑将ROM、PROM、EEPROM等组合在一起并将它分成不同的区域,虽然成本略有上升,但不失为一种更灵活、更方便的产品,可为智能存储器IC卡提供较高程度的安全保护措施。
逻辑加密卡举例
1、不可重载计数器
不可重载计数器是指智能存储器芯片中的应用区域的实现方法为计数器形式,并且该计数器仅限一次使用。这类芯片的主要特点及应用领域为:
·一般具有传输安全控制逻辑(如传输码);
·具有不同的有关制造商区域;
·一次性使用;
·价格较为便宜;
·典型应用为:一次性电话卡。
SLE4406是这种芯片的典型代表。它只有104位的计数器式存储器,该计数器的计数单元一旦用尽,就不可再用。德国电信就利用这种芯片的改进型作为IC电话卡。该芯片存储器区域分配见图4。该芯片的存储区域的有关特性及功能见表。
存储区域的特性及功能
区域 技术特性 功能
制造商编码 ROM 存储芯片制造商编码
制造商数据 EEPROM 存储有关制造商编码数据
个人化区域 PROM 个人化控制数据
应用区域 EEPROM 应用标识数据
安全区域 EEPROM 安全控制数据及应用数据
存储区域结构及配置
在个人化位P没有置位的时候,该芯片由一个3字节传输码(Transport Code)来保护,只有掌握该传输码的用户才可使用该芯片。在这个阶段,32位的EEPROM被用于存储不可读的传输码和一个可读可写的存取计数器。在进行任何存取操作之前,必须在规定的试探次数内正确输入传输码,否则芯片将不可再用。
正确地输入传输码后,安全区域就变成一个32位的8进制计数单元,此时可将应用标识数据写入应用区域,依不同的应用对8进制计数单元进行初始化。该操作授权将一直保持到芯片断电。设置个人化位P之后将保护存储区域不被修改,并使传输码逻辑失效,该操作不可重复。对应用方面来讲,有关单元被一位一次记入,将EEPROM用作可进位计数器,用32位可以实现20,000个计数单元;如果所有的单元被用尽,该芯片将不能再用。如果在一次性的IC电话卡中,一个技术单元代表1分钟通话时间,那么20,000个技术单元便可通话20 000分钟。
2、可重载计数器
可重载计数器是指智能存储器芯片中的应用区域的实现方法为计数器形式,并且该计数器可以重复多次使用。这类芯片的主要特点及应用领域为:
一般具有安全控制逻辑(如个人密码);
具有不同的制造商区域;
计数器式应用存储区域;
多次重复使用;
价格较为便宜;
典型应用为:储蓄卡、通行控制等。
SLE4404就是一种典型的可重载计数器芯片。它具有416位的存储器容量和适应较大应用范围的灵活结构。SLE4404的存储器结构见图5。其中不同存储区域的主要功能特点见表。
存储区域的功能特点
区域 技术特性 主要功能
制造商代码 ROM 存储芯片制造商数据
个人化数据 ROM 存储有关制造、发行商数据
安全码 EEPROM 存储个人密码
存取控制计数器 EEPROM 个人密码安全控制
便签式存储器 EEPROM 存储应用说明,可读可写
用户存储器 PROM 存储用户数据,其存取特性可由用户编程控制,如可编程为只读或可读可写等
系统码 ROM 系统存取计数器控制密码
系统存取计数器 PROM 用户等区域可重载次数计数器
存储器结构
因为可重载计数器可以重复使用,因此其安全性就较为重要,一般均需提供个人密码,即只有正确输入个人密码才可以对其中的数据进行存取。该类芯片在由芯片制造商传递给有关用户的过程中,这一个人密码也同样起着传输码的作用。在一次连续的个人密码输入过程中,存储控制计数器控制允许的密码错误输入次数,超过次数将导致芯片自锁。
整个用户存储区域的内容可以被重载的次数由系统存取计数器控制。对系统存取控制计数器的设置及修改,必须在正确输入一个系统码之后才可进行。
3、带有灵活写保护的1K字节智能存储器
上述两种类型的智能存储器芯片适于登记和计数类应用,并且是面向位的。而SLE4418/4428系列则是一种通用的、面向字节的1KB智能存储器,其逻辑结构见图6。其中,SLE4428具有一个2字节的个人密码及最大到8次不正确输入的存取计数器来提供额外的保护。该类芯片由2段区域组成:数据存储器和写保护存储器。存取计数器和安全码是SLE4428数据存储器的一部分。
自动复位相应ATR简介
ATR(Answer To Reset)即为自动复位响应,在IFD对ICC进行上电复位时由ICC(支持ATR协议)自动将自己的有关信息(如通讯参数等)传递给IFD,以便使IFD正确识别IC卡的类型并对其进行相应的操作。ATR协议在IC卡技术中具有十分重要的意义。
1 ATR的结构及内容
按ISO/IEC 7816标准,ATR的主要结构及内容见表。
ATR的主要结构及内容
代码 名称 主要功能
备注
TS 初始化字符 提供位同步及有关字符格式定义 必备
T0 格式化字符 定义以下响应信息的格式结构 必备
TAi TBi 接口字符 包含该卡的有关通讯协议类型及其它参数等 可选
TCi TDi
T1T2…Tk 历程字符 包含卡制造过程中的有关标识信息,如卡制造商、卡种芯片的制造商、卡的生命周期等“生命”历程信息 可选
TCK 检查字符 T0~TCK的检查和条件
在有关ISO/IEC 7816-3标准中较为详细地定义了ATR物理过程,该过程时序在有关时序图中也有详细约定。
2 ATR的改进
由于智能存储器IC卡得到越来越广泛的应用,目前使用较普遍的16位编码已不能满足有关应用的需求。德国标准学院(DIN)发明了一种新的ATR编码方案(德国DIN NI-17.4),非常灵活,可与已经存在的编码共同使用,并且有可能成为新的国际标准。2种编码体制的比较见图。
在有关ISO/IEC 7816-3标准中较为详细地定义了ATR物理过程,该过程时序在有关时序图中也有详细约定。
2 ATR的改进
由于智能存储器IC卡得到越来越广泛的应用,目前使用较普遍的16位编码已不能满足有关应用的需求。德国标准学院(DIN)发明了一种新的ATR编码方案(德国DIN NI-17.4),非常灵活,可与已经存在的编码共同使用,并且有可能成为新的国际标准。2种编码体制的比较见图。
16位体制和32位体制在同步传输中的ATR比较
这两种编码方案可以由头2位来区别,即作为结构识别码。所有的编码开始于一个字符化的16位方案。在其第一个字节含有芯片类型,第二个字节有芯片制造厂家和应用代码。32位的ISO体制被分成4个字节,H1到H4,其中H1指定协议类型,H2指定协议参数。在第一个字节H1 中的位组合10表明了扩展的结构和能应用于医疗保险卡。被ISO采纳的体制将会有位组合00。4个位用于协议类型,有关参数被保存在第2个字节中,这包括数据单元和长度。下面2个字节在ISO 7816-4中被分配做目录指示器及将来数据的参考。
这个头后跟芯片制造商、芯片类型和卡制造商的详细信息,在ATR数据中,这主要用于唯一性识别。DIR数据区域,其开始地址被存于头的第4个字节之中,含有国家码和应用码。数据以ASN.1规范实现,ASN代表“Abstrat System Natation”(抽象语法注释)。它通过一个标志和长度表示来指明数据区域,后跟实际信息。这个结构更为精益求精,但是极其灵活。根据需要,有关内容可以被增加、减少,而不会导致不同卡应用之间的不兼容。作为一个参考,下图显示了当前用于德国医疗保险卡的ATR体制的情况。
德国健康保险卡同步传输协议ATR体制
一步因为技术和历史等原因,16位体制被保留用于较小的芯片类型如SLE 4404、SLE4406及它们的后继者。扩展体制将被用于所有其它类型(在一个过渡期间的)。
有关ATR的详细内容请参阅有关ISO/IEC 7816标准。
有关通讯传输协议简介
通讯传输协议就是ICC和IFD之间进行相互通讯时所执行的信息传输规范。在有关ISO/IEC 7816标准中定义或保留的传输协议有多种,见表。
在ISO/IEC国际标准中定义或保留的传输协议
协议类型 协议名称 说明
T=0 异步半双工字符传输协议 目前正在使用
T=1 异步半双工块传输协议 目前正在使用
T=2、3 保留用于将来的全双式通讯
T=4 保留用于加强异步半双工字符传输协议
T=5、13 保留
T=14 保留用于非ISO标准协议 目前正在应用
T=15 保留用于将来扩展
协议类型T=0等名称来源于ISO/IEC 7816标准中的ATR结构及内容的定义。在该定义中的接口字符参数中有一TDi字符,该字符的低4位定义为协议类型,共有0-15编码,分别对应不同的通讯协议类型,在ATR过程中用以通知IFD该ICC所采用的通讯协议。
在IC卡芯片中进行信息通讯传输电路的就是通讯接口,通讯接口只能以硬件方式实现,并且应尽可能保持简单及成本低廉。不同类型的IC卡特别是智能存储器IC卡,其通讯接口的功能及组成有较大的区别。
按ISO/IEC 7816标准中的ATR过程,IFD(此处指通用读写设备,即支持多种通讯协议类型等)在ICC插入之后识别卡的类型,并且调用相应的通讯协议进行通讯处理等。从这一角度出发,较大的容量的智能存储器,如SLE4418一般面向字节操作;而较小容量的智能存储器,如SLE 4406一般面向位操作。从技术及经济原因来讲,对这两种智能存储器的通讯应当用不同的协议类型来处理。
基于较大容量的面向字节寻址的智能存储器应用,已经开发出一种所谓S=10协议。S=10协议具有独立于芯片类型的特殊结构,SLE4432/4442是采用此协议的第一种芯片。
CPU卡芯片技术特点
智能IC卡具有很高的数据处理能力、计算能力及较大的存储容量,尤其是智能IC卡完善的安全技术体制及面向应用编程良好的适应性及灵活性,自出现以来就受到有关应用部门(领域)的极大关注及青睐。
智能IC卡非常适合于对数据安全性及可靠性要求十分敏感的应用,目前,金融领域的信用卡、电信领域的SIM卡(移动电话身份识别卡)等已成为智能IC卡应用的几个最大领域。此外,由智能IC卡支持并代表的一卡多用(多功能卡)概念越来越受到人们的重视。在我国,随着金卡工程等一系列卡基应用工程的快速实施,智能IC卡必将在其中扮演极为重要的角色。展望未来,智能IC卡的发展及应用必将深入社会生活的各个领域,人们必将不断感悟并享受到智能IC卡带来的便利、安全、快捷的一系列优质服务。
智能IC卡采用的就是智能IC芯片,智能IC芯片的性能指标在很大程度上决定了智能IC卡的性能特点。
智能IC芯片内部集成有MPU(微处理器)、ROM、RAM、EEPROM、安全逻辑、密码运算协处理器等一系列功能部件,智能IC芯片的功能大部分决定于这此功能部件的设置(是/否)及其功能的强弱。从这一角度出发,智能IC芯片可以分为以下三种类型。
普通智能IC芯片
内部仅设置一此通用标准部件如MPU、ROM、RAM、EEPROM,简单的安全逻辑等,并且每一部件的功能也较为简单。此种IC芯片的安全性适中、价格相对便宜,应用开发较为简单,比较适合于中等安全规模的智能IC卡的应用。
增强智能IC芯片
内部除设置一般通用标准部件外,还设置密码运算协处理器(CAU)及增强功能的安全逻辑等,其余部件的功能也有相应的加强,其中CAU多支持如DES的对称密码算法。另外,此种芯片在制造上也采取了一些硬件安全保护措施。此种IC芯片的安全性较高、价格相对较贵,应用开发较为复杂,比较适合于安全性要求较高的智能IC卡的应用。
高级智能IC芯片
内部除设置一般通用标准部件外,还设置高性能的CAU及安全逻辑等,其余部件的功能也经专门设计而有很大提高,其中CAU多支持如RSA的非对称密码算法。另外,此种芯片在制造上采取了较高的硬件安全保护措施,并且在安全生产管理上也十分周密、严格,即使很小缺陷的芯片也必须进行登记、销毁等处理。可以认为,此种芯片在软(管理等)硬(设计、制造)两方面条件的保证下,具有十分高的安全性、可靠性等技术性能。当然,其价格也较贵,应用开发更为复杂,十分适合于高安全性的应用领域。
这三种类型芯片在智能IC卡上均有所应用。
目前,国际上多家著名的芯片制造商生产了多种智能IC卡芯片,下面对其中几种在技术上较具代表性、应用较广的智能IC芯片作简单介绍。对其中83C852芯片作较为详细的介绍,目的在于加深对智能IC卡芯片的理解。
本文关键词:智能卡芯片技术
上一篇:JAVA 卡与 APPLET[ 09-09 ]
下一篇:智能卡数字加密技术[ 09-09 ]