ESAM安全模块及其在智能卡表上的应用 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

ESAM安全模块及其在智能卡表上的应用

来源:北京握奇智能科技有限公司  作者:王耀  发布时间:2011-05-05 11:56:56  字体:[ ]

关键字:ESAM  安全模块  卡表  

摘   要:本文论述了ESAM安全模块的功能和特点及其在智能卡表等方面的技术优势和应用模式,分析了产品开发和系统应用在安全性和可操作性方面需要考虑的因素,给出了相关应用设计举例和说明,同时给出了有关产品的技术参数和指标。

  1、 什么是ESAM安全模块?

  ESAM(Embedded Secure Access Module)嵌入式安全控制模块系列产品,是握奇公司经过多年技术开发和应用实践研制出的具有普遍应用价值的嵌入式数据安全产品。

  ESAM硬件平台采用亿恒科技(原西门子半导体)和飞利浦等半导体公司智能卡专用保密微控制器,具有安全的 ROM和 EEPROM 安全控制、真随机数发生器RNG(可选)、DES/3DES加速器和高级加密协处理器ACE(可选)等安全结构,硬件安全性能达到ITSEC E4级标准,具有防检测、抗攻击、自毁等硬件安全特性。

  ESAM芯片操作系统采用握奇公司自主开发的TimeCOS/ESAM嵌入式安全操作系统,具有安全的文件密钥存储、完善的安全机制、标准的加密算法等特点。ESAM系列产品完全符合ISO7816标准和中国人民银行金融IC卡规范,通过中国人民银行金融卡认证和北京市科委软件产品认证,并获得了国家密码管理委员会的安全认证和生产销售许可,目前在国内发行使用的数量超过300万片。

  ESAM特殊的安全属性使它可以嵌入到其他任何具有安全要求的智能设备中,完成文件和密钥的安全存储、数字签名、数据加密解密、双向身份认证、内部分散密钥、电子钱包、通讯线路保护等多种功能。

  2、 ESAM安全模块功能概述

  ESAM安全模块的应用是和各种专用或通用智能设备相关的,对于所有需要身份认证、数据加/解密、安全存储、通讯保密等较高数据安全要求的产品和应用系统,ESAM嵌入式安全控制模块都可以发挥其独到的安全控制作用。

  1)身份双向认证;2)数据加密解密;3)数字签名;4)分散密钥导出;5)内部分散密钥;6)传输线路保护;7)电子钱包;8)安全数据存储

  3、 ESAM安全模块的应用领域

  握奇智能公司现已成功地将ESAM模块应用如下产品中。
  智能卡表:智能卡电表、水表、燃气表、热力表等
  通信设备:加密Modem、加密传真机、加密多路复用器
  金融设备:加密密码键盘、金融POS机、支付密码器、银行密码箱
  税控设备:税控出租车计价器、税控加油机、税控收款机
  交通收费:停车咪表、公共汽车收费终端、车载路桥收费终端设备
  条件接收:电视机顶盒(STB)、PC接收卡、加解扰前端/终端设备
  网络安全:局域网管理、登录、文件夹加密、软件保护
  其他设备:智能卡饮水机、智能卡收费空调、网络电视等其他设备

  4、 智能卡表应用为什么要使用ESAM安全模块

  对于象智能卡表一样规模较大的系统工程项目,系统运行的安全性和稳定性是至关重要的。采用CPU卡作为数据信息的传输介质后,密钥的安全使用是关键。以往的管理系统存在的弊端是由于卡表是由生产厂家提供,不论是密码认证还是密钥认证都是由用户卡和卡表中的微控制器之间完成的,而微控制器程序的设计不是由运行单位控制而是由表厂技术人员或委托的第三方设计人员完成的,在编程过程中,设计人员显然要知道运行系统的密码或密钥以及安全认证算法才能编制正确的程序。这样当系统投入运行后,由于除管理方之外还有其他渠道掌握系统安全的核心内容,一旦泄露,后果是严重的。即使管理得当,由于生产方知道密钥内容,就可以不经运行管理方的授权在现场对运行表计的数据进行修改,或者未经许可更换现场故障表。这种操作对小区物业系统影响不大,但对于针对城市的管理系统就很容易造成现场表计与后台管理系统数据库数据不同而产生混乱,从而造成系统运行故障和不稳定。

  解决如上问题有两种方法,一是运行管理方统一卡表内微控制器的程序,将编程好的微控制器芯片提供给表厂生产。这样就能够保证系统的安全性全部掌握在运行管理方。但这种方法操作较难,因为微控制器程序除了安全认证部分外,更多的程序是关于表计计量、控制、显示以及功能操作的内容,表厂设计人员很容易处理好这些内容,并且会随着技术的发展不断创新和完善,而运行管理方却很难作好这部分程序,这样提供的芯片功能不一定领先,并且阻碍了卡表技术的发展和创新。

  另外一种解决办法就是采用ESAM安全模块(即嵌入式安全控制模块),这种模块只负责完成安全认证和数据的存储,此模块可以在运行管理方设置完毕后,提供给表厂安装在卡式卡表中。今后的数据存取以及密钥的安全认证过程都在用户卡与卡表中的ESAM模块之间进行,与表中的微控制器无关,微控制器仍然由表厂负责设计,完成卡表的功能。这样既实现了系统的安全性由运行管理方控制,又不妨碍表厂继续发展和完善卡表的功能和性能。是一种较理想的方案。

  因此,可以得出结论,在较大的管理系统中,为保证系统运行的安全性和稳定性,应该使用ESAM安全模块技术。
概括而言,ESAM安全模块具有如下特点:
  1) ESAM安全模块具有更高的硬件安全性
   ITSEC E4级高端智能卡专用微处理器平台 (可选)
   ROM 和 EEPROM 安全存储
   真随机数发生器 RNG(可选)
   DES 加速器及RSA协处理器(可选)
   高频/低频以及高压/低压检测
   程序数据加密及内部地址串扰
   软硬件防止DPA/SPA攻击

  2) ESAM具有更好的软件安全性
   通过中国人民银行认证
   通过国家商密委认证
   通过软件版权登记
   通过软件产品认证

  3) 面向服务商管理的安全机制,产品研发、生产与应用安全隔离
  4) 标准开放,支持多用合一,良好的兼容性、灵活性和可扩展性
  5) 稳定的多过一家的产品供应,有竞争力的价格和售前售后服务
  6) 批量生产和众多成功的应用保证产品稳定、可靠
  7) 产品供应的连续性保证系统更长的生命周期
  8) 及时、周到、深入的技术支持、方便开发使用

  5、 安全性方面的考虑

安全性方面的考虑可以分为三个方面:卡片的安全性、表计生产过程的安全性、运行管理的安全性。

  卡片的安全性:

  由于用户群体庞大,并且表计安装后IC卡数据向表计传递管理系统无法监控,因此必须要求用户卡片具有较高的安全性。应选用带有密钥控制的CPU卡。并且在CPU卡的设计过程中,应该考虑与金融业务的兼容性,选择PBOC(中国人民银行)金融卡规范。用户卡中的密钥如果可能,尽量使用3-DES算法,在卡片的发行过程中,应该对用户卡中的密钥进行分散处理,最大限度地减少被黑客攻击破译系统密钥的可能性。同时在用户卡中传递的关键数据最好进行线路加密保护处理,以防止非法篡改数据的可能性。

  概括而言,智能卡比逻辑加密卡有如下优势:
  1)智能卡比逻辑加密卡具有更高的安全性:智能卡的安全性是建立在专用、安全的微处理器硬件平台和安全、可靠的软件操作系统基础之上。逻辑加密卡只靠逻辑电路实现简单的数据保护。智能卡除了能实现一般逻辑加密卡的密码校验之外,还有建立在密钥和安全算法 基础上更为安全的认证机制,认证过程以随机数为载体,认证码无法重复和跟踪。智能卡的密码校验、密钥认证以及文件操作可以在线加密或加认证码,防止通过 在线测试对相关数据进行分析、篡改和重放。一般逻辑加密卡的密码校验过程没有随机性,密码传输过程是明文的,可以在测试并分析出卡片的密码。智能卡支持非常灵活的密钥系统设计,可以根据需求设计多种逻辑组合的文件访问权限设计,例如对于电子钱包,很容易把消费和充值由不同的密钥系统控制。一般的逻辑加密卡如果用来做电子钱包,消费和充值可能由一个密码保护,安全性很差。
  2)智能卡比逻辑加密具有更大的灵活性:智能卡由操作系统管理芯片硬件资源,可以根据需求,自由设计不同的应用文件的密钥系统。在逻辑上和物理上保证一卡多用在安全性和方便性方面的要求。
  3)智能卡比逻辑加密卡具有更好的标准性:智能卡在通讯协议、文件和命令等方面有深入、全面的国际标准可以遵循。而且其外部特性可以通过操作系统进行扩充和修改,实现更好的兼容性和功能扩展性。逻辑加密在通讯协议、读写特性和存储区划分等方面没有严格的标准,不同型号的产品不同通用,限制了产品的选择空间和产品供应的连续性,在很大程度上缩短了系统的生命周期。 

  表计生产过程的安全性:

  严格区分表计的生产过程和运行管理过程,保证卡表一旦安装运行,对卡表中任何数据的修改都应该在运行管理系统的控制下进行,坚决杜绝生产厂家或管理部门工作人员持有特殊工具卡可以不经管理系统对卡表数据进行改写的行为。要保证这一点,就应该在卡表中安装ESAM安全模块,该模块用来存储表中的数据和安全密钥,在运行过程中由用户卡和ESAM安全模块进行安全认证和数据传输,ESAM安全模块由运行管理系统发行并提供给表计生产厂商安装。在卡表生产完毕测试合格后再用管理系统提供的修改密钥卡将ESAM安全模块中的密钥修改为运行密钥,这样未经授权,任何人都不可以对表里的数据进行修改。

  运行管理的安全性:

  在CPU卡表系统中,系统的安全主要取决于密钥的发行和管理,因此必须有一套合适的卡片以及ESAM安全模块密钥发行和传递方式。由于系统的组成环节中有银行、水/电/气/热管理部门、表厂、卡片供应商和系统集成商,这几个环节都可能涉及的密钥管理,如果密钥在传递过程中被窃取,系统的安全性将受到极大影响。建议成立卡片发行和密钥管理机构,密钥发行传递采用总控卡、母卡、应用卡的三级方式,每一级在向下传递时采用密文线路保护方式或密钥密文导出方式。

  6、 可操作性方面的考虑

  可操作性方面的考虑体现在四个方面:用户卡开户过程、用户卡操作过程、补卡过程、故障表维护过程。

  用户卡开户过程:

  用户卡开户过程要完成用户信息、卡表信息以及用户卡的对应。这个过程应尽量流程简便,以避免用户在银行和行业管理部门之间的多次往返。由于卡片可能是银行发行,考虑到银行的使用对象是个人,而卡表的使用对象是户,为方便用户,应该考虑支持一表多卡的情况。如果仅从方便性来讲,可以取消户号,在用户卡中也用钱包文件存储采购量,用户可以根据自己的需要,将采购量输入到任何一块表中;如果考虑表计信息回传或补卡需要,可以设置户号,但允许一户中多个成员使用一个户号以便任何人都可以持卡购水/电/气。在用户卡上用钱包文件存储采购量的好处是可以根据限制条件一次或多次将采购量输入到卡表中,从而有效防止用户囤积。用户户号由行业管理部门编制,通过开户单传给用户,每一个用户中的成员都可以持开户单到银行申请办理用户卡业务并进行购水/电/气的操作,在银行数据库中,以户号为索引为每个成员分别建立帐务信息。

  用户卡操作过程:

  考虑到用户使用过程中,插拔用户卡的随意性,应该尽量使用户卡与卡表进行数据交换的时间降到最短,以避免由于用户在数据处理过程中将卡拔出而造成的数据错误,给用户采购过程造成不方便。从这个角度来讲,应尽量减少数据项(尤其是从表中返传的数据项),并尽可能地将数据一次读取或一次写入。用户在使用过程中,如果由于采购量用完造成不能继续使用,而当时用户又不能方便地采购,应该允许用户采用应急赊欠的方式暂时继续使用,可以根据需要设定赊欠门限,在用户下次采购时将赊欠值扣除。考虑到卡表在应用过程中存在参数修改的可能性,可以将某些参数通过用户卡进行传递,在用户采购过程中对卡表进行修改。

  补卡过程:

  当用户卡遗失后,应该能够重新给用户补发用户卡。最简单的方式是直接补给用户一张卡片,对用户遗失卡片中的采购数据不再补发,损失部分用户自己负责,这样用户补完卡就同时可以进行下次采购。如果要为用户将遗失卡片的采购数据补回,则需要用户补完卡后将卡插入卡表,根据带回的数据进行运算,补写上次采购量并同时进行本次采购。这样操作流程则复杂一些,需要用户跑两次。折衷一点的方案是用户补完卡后就进行下次采购,不核算补写采购量,等用户再次采购时,由于用户卡已经将卡表中数据带回,这时再替用户核算补写采购量并进行新的采购水/电/气交易。

  故障表维护过程:

  在卡表安装过程或在运行时由于某种原因都有可能造成需要对现场卡表中的数据进行修改,这时需要有工具卡对卡表进行操作,这种操作应该有别于卡表生产厂家在生产过程中修改卡表数据的操作。要杜绝生产卡未经授权可以在运行现场使用。应该设计一种现场数据设置卡,这种卡使用运行密钥,里面的设置参数可以灵活设置,插卡一次就应该将卡表数据修改完毕。

  7、 ESAM安全模块文件结构及密钥管理系统设计举例

  ESAM安全模块由于安装在卡表中,是一个专用芯片,只负责完成密钥安全认证和表中数据存储,因此可以选择较小容量的芯片。 


  说明:
  ESAM模块建议设置三种类型的文件,一种是钱包文件,用来存储控制卡表中的剩余采购量,此数据为卡表控制收费的重要数据,其格式和操作方式应该统一,并具有较高的安全属性。

  第二种文件是二进制文件,用来存储卡表中基本参数信息,如报警量、赊欠量门限、限购量、打压限量以及超大、超小使用门限等数据,这些数据都可能对卡表的运行起到不同的控制作用,数据一旦被修改,会导致卡表状态异常或失控,因此该文件也应该具有一定的安全属性,对可以确定应用的数据格式应该有统一的规定,同时预流一部分空间用于表厂根据自己的情况扩展其它参数信息。

  第三种文件也是二进制文件,用来存储卡表中的通用数据信息。该文件中的数据内容不作统一规定,由卡表厂根据各自的情况自行规定。

  对于剩余采购量文件和卡表基本参数信息文件分别用卡表剩余采购量外部认证密钥和卡表基本参数信息外部认证密钥进行控制。密钥线路保护密钥和卡表密钥修改外部认证密钥用来控制对ESAM模块中所有密钥的装载和更新。系统内部认证主密钥和卡表运行信息外部认证主密钥用来和用户卡配对进行相应的安全认证。

  8、 用户卡文件结构及密钥管理系统设计举例

  用户卡由于要通过银行完成采购交易,并有可能和银行联名发卡,因此可以考虑选择容量较大的卡片,并预留较大的空间拓展其它应用。 


  说明:
  用户卡建议将主文件MF开放给银行,只将卡表应用作为一个子目录应用,这样就很容易在一张卡片上拓展多种应用。同时在MF下建立公共信息文件和应用索引文件,公共信息文件用来存储用户姓名、身份证、电话、住址等所有应用都可能涉及到的公用信息,该文件在卡片发行时一次写入,今后只能读取其内容但不能修改。索引文件用来存储记录用户卡中开通的应用的类型,在使用时,通过简单的查询就可确定卡片上开通的应用,该文件内容可以自由读取,在卡片增加应用或取消应用时通过认证可对其内容进行改写。

  在卡表应用目录文件中,建议设置二到三种文件,第一种是二进制文件,用来存储用户的采购信息如户号、采购次数、采购时间以及设置参数如报警量、赊欠量门限、限购量等数据,如果不考虑分多次将采购量输入表内,也可以将采购量放入此文件中,该文件内容可以自由读取,修改时必须通过密钥认证并以加密写入的方式进行。

  第二种是钱包文件,用来存储用户每次的采购量,并可以通过多次扣减的方式传递到卡表中,扣减时可以立即进行,增加时需要通过认证,这种文件可以根据需要进行取舍。

  第三种文件是二进制文件,用来存储卡表中的运行数据,如累计采购量、累计使用量以及12个月使用量等数据信息,此文件由卡表通过认证后将数据写入,管理系统将内容读入后将其内容清空。

  对于采购信息文件和卡表运行信息文件分别用采购信息外部认证密钥和卡表运行信息外部认证密钥进行控制,用文件线路保护密钥控制采购信息文件的写入,采购量钱包文件用采购量外部认证密钥进行控制,应用主控密钥用来控制卡表应用中所有密钥的装载和修改过程,系统内部认证主密钥、卡表基本参数信息外部认证密钥和卡表剩余采购量外部认证密钥用来和ESAM模块配对进行相应的安全认证。

  9、 智能卡表应用总结

  智能卡水/电/气/热表以智能卡产品与技术为核心,在传统表计的单一计量功能的基础上,增加付费、控制和信息反馈功能,有效地杜绝费用拖欠和流失现象,防止恶意攻击和欺诈行为,完成用户销售和供应过程的可靠性、安全性和智能化管理。

  握奇智能公司自主开发的智能卡和ESAM嵌入式安全控制模块在智能卡表方面得到了广泛的应用。包括北京市9950工程智能卡电表项目,握奇智能公司在智能卡表项目上交付使用的智能卡和ESAM嵌入式安全控制模块的数量超过了450万片。除了北京智能卡电表项目作为样板工程之外,握奇智能公司的智能卡水/电/气/热表相关产品和解决方案在山东、江苏、浙江、河北、陕西等省市和地区得到广泛应用。

  几年来的系统可靠运行实践表明:采用智能卡和ESAM嵌入式安全控制模块的卡表解决方案,很好地兼顾了系统安全性、技术先进性、标准兼容性、应用可扩展性和经济实用性,具有较高的性能价格比,创造了可观的经济和社会效益。

  握奇智能公司与众多的表计生产厂家、行业公司以及政府职能部门广泛合作,提供系列配套产品和技术支持,最终到达双赢和多赢的合作目标。

  配合ESAM安全模块的应用,握奇智能公司提供如下配套组件:

  单片微处理器、应用软件、电路版图:固化典型应用程序,完整实现卡表所要求的全部功能,大大简化了表计生产厂家的开发工作。

  ESAM嵌入式安全控制模块:具有极高的安全特性,完成安全数据存储、智能卡双向认证、数据加/解密、通讯线路保护等功能。

  智能卡及单机版管理系统:通过银行认证,保证应用系统的安全性和功能扩展性,配套提供通用卡片发行管理系统应用软件。

  电表尖峰平谷数码显示模块:结构紧凑、工作稳定、接口方便、价格合理。

  IC卡接口抗攻击模块:无需外部元件的精巧型集成化设计、具有快速响应的自恢复功能、性能稳定、抗攻击范围广。

  典型的智能卡表硬件电路图,表计生产厂家可以参考制作电路板并进行后续的产品化工作。

  技术支持与系统解决方案:
  产品技术支持、用户产品合作开发以及应用系统综合解决方案。

  10、 智能卡及ESAM安全模块技术性能 

 

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖