Blog

智能卡与COS技术简析

2014-12-03 10:14:04 明申科技 1207

 IC卡也叫集成电路卡(Integrated Circuit Card),是将一个专用的集成电路芯片 镶嵌于塑料基片中,封装成卡。

根据嵌入芯片类型的不同,IC卡可分为不同类型,包括存储卡、逻辑加密卡、智能卡等。不同的卡片造价不同,其功能也不同。

存储器卡,卡内的集成电路是电擦除可编程只读存储器EEPROM,它仅有数据存储功能,没有数据处理能力;存储卡本身不提供硬件加密功能,只能存储通过系统加密过的数据,很容易被破解。

逻辑加密卡,卡内的集成电路包括加密逻辑电路和电擦除可编程只读存储器EEPROM,加密逻辑电路在一定程度上保护着卡和卡中数据的安全,但只是低层次的防护,无法防止恶意的攻击。

CPU卡,只有带微处理器的IC卡才是严格意义上的智能卡。卡内的集成电路包括中央处理器CPU、电擦除可编程只读存储器EEPROM、随机存储器RAM以及固化卡操作系统COS(Chip Operating System)的只读存储器ROM。智能卡相当于一台没有显示器和键盘的微型 计算机。

智能卡最基本的用途可归纳为:身份认证、数据载体、支付工具。随着技术的发展和应用的普及,智能卡的用途会更加广阔,比如可作为一些设备的嵌入模块,可作为一些场合的专用模块等。

智能卡属于信息安全产品,其特点是体积小,便于携带;安全性好,存储的信息难以非法读取。相对而言,软磁盘同样是信息载体,在便携性方面体积大、易损坏且不说,在安全性方面就明显不同了,别人拿到手很容易读出其中的信息,甚至不拿到手的情况下也可通过网络采取黑客等手段取得磁盘中的信息。而智能卡内存放的信息,只有通过COS的安全控制,才能够读出,有的信息甚至在任何时候都不允许读出。

智能卡是由硬件和软件两部分构成,智能卡的硬件部分是集成电路,集成电路的外在形式是芯片,内部组成是各种功能的集成部件,包括CPU、RAM、EEPROM、ROM、等,不同的芯片,其硬件配置不同,功能也不同。智能卡的软件部分是COS, COS是用户的应用程序与卡的交互界面,是卡内各硬件部件的总调度师,是卡的安全卫士,是实现各相关国际标准的基础。COS通常都有自己的安全体系,它的安全性能通常是衡量COS的重要技术指标。

COS的功能包括:传输管理、文件管理、安全体系、命令解释,这是内部机理。在外部使用来看就只是有触点的智能卡。

COS的开发,首先的解决传输管理问题,即I/O问题,智能卡通过触点(非接触卡是通过场与读写设备交换数据的,遵循的国际标准是14443)和读写设备交换数据的,就是对国际标准ISO7816-3的实现。

然后是文件管理,对各种类型的文件都要有一种访问机制,以存储用户数据,既要高效,又要安全。COS的安全体系,是COS中的重要部分,是以密码算法为基础的,通过密码算法,控制用户的权限,什么情况下允许外部对智能卡进行什么操作。命令解释是对行业规范中的命令和智能卡专用命令的实现,一条命令有时是多种功能的综合体,命令解释部分要对命令作出解释,根据权限满足情况,控制各种功能的实现。

COS的评判,一方面是看功能实现情况,有没有按照应用行业的标准或规范,实现规定的指令,在功能方面是否存在隐患。另一方面是看安全性,安全性是智能卡的重要方面,如果留有明显的安全漏洞,则COS是失败的。一个好的COS还要有较高的运行效率。

安全性是COS的关键环节,COS创建一种安全体系,把这种体系的控制权以安全的方式移交给客户,不留任何后门,客户将利用这种安全体系保护用户数据。一旦移交安全控制权,COS的开发商也和别人一样,对智能卡上的数据智能靠合法权限进行操作,别无其他办法。那么COS开发的难点就是这种提供客户使用的安全体系。如果有人能够找到突破口,对智能卡内的数据进行非授权访问,则COS是失败的。

密码技术应用,是智能卡领域必然提及的问题。密码算法不是信息安全的全部,但绝对是信息安全的重要基础之一,没有安全的密码算法,就绝不会有信息安全。运用密码技术,可保护数据的机密性、完整性、可认证性、不可否认性。所谓密码,就是利用一种算法,用特定的密钥对叫做明文的用户数据进行变形处理,这个变换的过程叫做加密,经加密的数据是不可识别的,称为密文,只有在合法情况下,用特定的密钥,以规定的算法对密文进行逆向变换,才可恢复出明文,逆变换的过程叫做解密。现代密码学中,算法是公开的,需要保密的是密钥。

机密性的意思是,信息以密码的方式存储和传输,未被授权者看不懂其中的任何内容。而得到合法授权者,必然拥有相应的密钥,可以用密钥经密码运算得到信息明文。

完整性的意思是,密码信息的各部分是相互关联的,具有不可篡改的特点,这是通过密码应用中的协议或校验实现的。如果密码信息被篡改,则解密验证的过程中必然就会发现问题,就知道密文已经不可靠了。

可认证性是说,用户接收的信息后,能够确认信息来源。

不可否认性的意义在于,当发送者用某种密码发送出一份信息后,就已经无法否认他曾经发出该信息。

密码算法是多种多样的,主要有两大类密码算法,一类是对称密钥密码算法,如DES,IDEA,AES等,另一类是非对称密码算法,如RSA,DSA等。

智能卡的安全性,在于COS中对密码算法的使用,比如持卡人在卡终端上使用卡片,为了保护业主和持卡人双方的利益,应用系统中可设置双向认证过程,终端方面要检查卡片是否合法,卡片方面也要检查终端是否合法,这种检查过程叫做认证,在认证过程中就可以使用密码算法。智能卡对终端的认证步骤可以是这样的,智能卡把一组随机数传送给终端,同时保存这组随机数,终端对随机数进行加密,把密文传送给智能卡,智能卡对密文进行解密,把得到的结果和保存的随机数进行比较,若一致,就可认定终端是合法的,若不一致,就可认定终端是非法的。这里面的道理是,合法的终端是知道认证所用的密钥的,这是应用系统约定好的,于是才可验证一致,而非法的终端没有得到授权,不知道认证密钥,认证不会通过。

这里有一个原理,即密码算法的单向性,已知算法、密钥、明文,计算密文很容易。但是反过来计算就很难了,已知算法、明文、密文,是计算不出密钥的。

智能卡的资源很有限,远比不上PC机的处理能力,要在智能卡内部实现各种密码算法和相关协议,需要细致的优化,否则运算效率太低或根本没有可用性。

智能卡是如何生产的,由谁生产的?这可以从智能卡的生产过程中知道。

智能卡生产中的过程之一就是芯片制造,芯片制造是半导体厂家在集成电路生产线上通过特定的制造工艺进行大批量的芯片生产,生产出的是未定型的芯片。芯片的制造,意味着巨额资金的投入、尖端技术的应用、风险的承担。

COS开发商从半导体厂家订制智能卡芯片的过程,是把半导体厂商生产的芯片和COS开发商生产的COS结合起来的过程,这个过程叫做掩膜,是在半导体厂家完成的,就是把COS代码批量烧进芯片中集成的ROM中。生产出来的是定型了的产品。所以在智能卡领域,半导体厂商是芯片的供应商,半导体厂商的直接用户是COS开发商。半导体厂商提供的芯片是智能卡的硬件部分。而COS开发商是智能卡产品的供应商,提供给用户的是智能卡产品。

智能卡供应商还要把定型了的芯片封装成模块,这个过程叫做模块封装,是在模块封装厂完成的。有的COS开发商有自己的模块封装厂,有的COS开发商要委托选定的模块封装厂进行模块封装。根据ISO7816标准,用于卡片产品的模块有8个触点。制卡是智能卡生产的又一个步骤,是按客户的要求印制塑料基片,即卡基,然后把模块镶嵌到卡基上,制成智能卡,制卡是在卡厂完成的。之后还要进行卡片初始化,卡片初始化是设置卡片的基本参数及安装卡片传输密钥,这是根据客户的需要进行的。

智能卡供应商的直接客户是发卡机构、运营商或业主、系统集成商,他们集成自己的应用系统,形成一定规模的智能卡应用环境,向智能卡供应商定购智能卡,把智能卡做个人化处理,然后发放到持卡人手里,投入使用,智能卡的最终用户是持卡人。

那么,谁来开发COS呢?

COS的研发是复杂的工程,非专业厂家无需自行开发COS,即使是大的智能卡用户、系统集成商、芯片供应商,也是一样。

原因在于:

 

  1. COS属于系统软件,从开发到投放市场,需要长期的测试、修改完善过程,还得通过权威机构的认证;在我国,推出智能卡产品首先需要应用行业的测试认可,比如中石化的加油卡、银行的金融卡等都有专门的行业标准,而且还需要国家密码管理委员会办公室的安全认证,被认可为定点生产或定点销售的单位,才可进行智能卡的生产或销售。

     

  2. COS的体系结构和智能卡的安全性直接相关,在具有稳定的开发团队和多年的经验积累条件下,才能够开发出合格的COS,其中包括各种攻击和反攻击的经验积累以及抵抗攻击的措施。

     

  3. 正式的智能卡产品必须是硬掩膜的,每种容量、每个版本都需要做掩膜,费用不菲。智能卡芯片技术的不断发展要求COS也要不断升级,不是专业开发商则难以跟踪潮流。

     

  4. 智能卡行业是典型的规模型高科技产业,每年没有数千万张以上的销量,开发COS得不偿失。世界著名的半导体厂商一般都不推广自己的COS,而是依靠COS开发商将其智能卡芯片推向市场。

因此目前,国内只有介入智能卡行业较早的专业开发商因为经验积累丰富,产品成熟稳定,市场份额较大,才能在技术上达到国际先进水平,与国外的COS相抗衡。

首页
产品
新闻
联系