1 概述
北京燃气集团现有人工煤气和天然气管道家庭用户180万,其中IC逻辑加密卡燃气表约20万户左右。目前每年新增用户约9万户。随着首都现代化的发展、人民生活的不断提高及燃气事业的发展等多方面的需求,北京燃气集团依照统一规划,按区域成片集中实施的方式对现有民用普通燃气表进行改造,预计10年内完成CPU卡燃气表更新改造工作。最终智能化燃气表用户数可能达到200多万户。民用燃气表的数字化、智能化、信息化正在成为当前与今后一个较长时期内发展的一个主流方向,并有可能逐步取代目前普通燃气表的主导地位。采用科技手段,改变传统的收费方式是解决目前查表收费中存在的一些难题,如查表人户不便,收费困难,人工费用投入高,收费单据处理流程中环节多且工作量大效率低等问题的一种较好的可行方式。
CPU卡燃气表项目是一个综合了计算机软硬件技术、网络通讯技术、智能卡技术、卡表生产制造、密钥保密安全技术等多个技术领域的系统工程项目。项目的目标是提升计量、收费、维修服务等管理水平;提高数据真实性、完整性、可靠性、及时性;增强查询、统计分析能力。现将从7个方面简述如下。
2 简述IC卡
2.1 IC卡分类
IC卡又称集成电路卡(Integrated Circuit Card)。从数据信息传输接口方式划分,有接触式和非接触式两种;从卡的界面划分,有单界面和双界面两种形式;按卡的内部结构划分为三类,存储器卡:存储器卡是电擦除可编程只读存储器E2PROM,它仅有数据存储功能;逻辑加密卡:逻辑加密卡是由内低层次逻辑加密读写保护电路和电擦除可编程只读存储器E2PROM构成;智能卡(Smart Card):俗称CPU卡,卡内包括中央微处理器、电擦除可编程只读存储器E2PROM、随机存储器RAM以及固化在芯片内的操作系统COS(Chip Operating System)。存储器又可以分成若干应用区,各分区可设置各自独立的访问权限,相互隔离,便于一卡多用。接触式IC卡主要遵循的国际标准为ISO-7816系列。非接触IC卡主要遵循的国际标准为ISO-14443系列。
CPU卡内COS操作系统(Chip Operating System)由传输管理、文件管理、安全体系、命令解释4个功能模块组成。读写操作、密钥管理都是通过卡内芯片操作系统COS监控、管理和执行,并受发卡方对卡片个人化时向卡内加载的密钥及安全认证机制的控制。
上述各种类型的IC卡有各自不同的作用和功能,不同场合不同的应用条件,应选用相应的IC卡。
2.2 IC逻辑加密卡表存在的问题
目前IC卡表多数IC为逻辑加密卡表,无论是表具还是应用系统的密钥算法安全级别低,且均未经过权威部门认证,产品供应商的密钥算法不向应用方公开,即使向应用方公开密钥算法,应用方的系统安全也永远系于厂家及厂家有关个别人员身上,无法实现应用单位的安全与开发生产企业完全脱钩,无法独自掌握核心安全,安全性只能被动的依赖厂家。IC逻辑加密卡不同型号芯片的互不兼容,不同厂商的芯片更不易兼容,应用方在使用多家卡表时会带来多种密钥及密钥算法管理上的复杂化,且密钥更新困难。IC逻辑加密卡因自身无法识别读写和存储的数据正确与否,因不规范的插拔易造成数据混乱,引发与用户的纠纷同时也增大了维护工作量。对IC逻辑加密卡应用的后台发卡售气系统一般都设计有非正常用户的监测管理程序,虽然该监测的功能可以向管理者提示用户购气出现异常。但并不能从根本上解决或杜绝伪卡流通,这在技术和实践都是可证且有其先例的。制造一张伪卡的成本3元—6元,而售出一张伪卡则可获得几十倍甚至上百倍的高额利润。对于大中型城市,燃气管网用户达到几十万户以上时,高额利润的诱导下,一旦出现伪卡或加密失效,因伪卡的传播扩散较为隐蔽,更新密钥及密钥算法困难,而很难得到及时有效控制。这将会给燃气经营企业造成巨大的经济损失。同时还将严重的影响到IC卡表的继续使用,会使整个IC卡表项目的前期巨大投资失败。因此在应用IC逻辑加密卡表(水、电、气)时,特别注意以下几点:(1)应采取使用几个不同厂商的卡表;(2)在一定的范围或区域内控制同种类卡表使用的数量,尽量提高应用分布的离散度或混合程度;(3)在卡的使用上,构筑起一个流通市场狭小或不畅的环境,不利于伪卡大面扩散。(4)应用规模不宜太大。但这并不能从根本上解决实质问题,同时将会使系统多样化、离散化以及不兼容性带给系统复杂化及管理不便。因此管理者将面临一个如何制止或杜绝伪卡、解决现存或已经流通的伪卡等非常复杂的局面。因此在大范围推广使用比逻辑加密卡表时一定要十分慎重。应用部门在对卡型的选择和加密的管理上应引起极高的重视。
2.3 我们选用CPU卡的一些考虑
通过以上IC卡的对比,IC逻辑加密的方式来保护卡内数据信息的安全可靠受到了卡特性的限制,易受到某些特殊方式的攻击。IC逻辑加密卡的安全等级较安装有ESAM安全认证模块的CPU卡表安全等级低很多。根据我们燃气集团的应用规模,高新技术应用环境等方面的实际情况,为确保卡表所涉及巨额资金的长期交易安全,我们摒弃逻辑加密卡。为确保安全性,我们从整体上,包括IC卡、卡表、软硬件及网络系统、信息传输交流、组织管理、规章制度等各方面,全面的考虑和设计。
我们严格限制IC逻辑加密卡表大规模应用,同时确定与银行合作,采用银行发行的金融卡CPU卡为主要发展方向。其一、能够在符合人民银行金融卡的规范标准条件下,基本保证我们这个项目与未来发展的大方向和主流趋势同步且一致,保证今后我们能够较长期稳定的发展,克服了一些CPU卡无法实现其金融功能的制约与限制问题;其二、银行发行具有金融功能的CPU卡,有高级别的安全等级,具有权威机构认证的安全机制,同时可增强对非法攻击IC卡的威慑力,保证长期交易中资金安全可靠;其三、可避免独立发行多功能卡所带来的一些其他环节上审批协调的工作,加快我们该项目的工作进程;其四、智能卡的成本虽高于逻辑加密卡,但性能价格比远高于逻辑加密卡,使用银行发行的金融CPU卡,使我们成为金融卡中多项应用的一个中介应用项,真正实现了一卡多用这一智能卡最独特的功能,并因多项综合应用而分摊了卡的应用成本。CPU卡成本将随着技术的发展逐年下降。其五、由于我们为银行方面推广CPU卡项目提供了理想切人点,有效的推动银行自身的发展,为银行方面拓展了在该行业及其它相关行业领域的业务能力或模式;同时可为银行带来可观的潜在的客户群体和大量的沉淀资金,使我们可以充分利用银行现有的网络系统,减免收费网点及网络建设以及CPU卡的发行费用。
我们采用银行发行的金融卡CPU卡,第一个在国内金融CPU卡上率先实现了多功能应用。金融CPU卡是由银行发行的符合有关标准和金融规范,具有存储及消费电子钱包功能的CPU卡。卡的密钥及文件结构既要符合人民银行PBOC规范,保证金融卡的金融应用功能及安全特性,同时在PBOC规范的基本原则或框架范围内保证金融与中介业务分开,相互独立互不于涉,使银行的金融业务和各种(如水、电、气、热等)中介收费服务业务正常运行。在金融业务的基础上开展中介业务,使CPU卡实现一卡多用功能,这是一个重大突破。
虽然金融CPU卡与非金融CPU卡都可实现一卡多用,但在多个行业部门或不同企业之间使用同一个CPU卡时,金融CPU卡主发行商以及密钥与各应用方的密钥及发行管理较容易确定和实施,一卡多用中卡本身出现的一些问题也较容易解决,而一卡多用非金融CPU卡的主发行商如何确定,如何协调主密钥与各应用方的密钥及发行管理,一卡多用的非金融CPU卡在使用过程中卡本身出现的一些问题如何解决等,目前都尚未有统一的政策规范,还都有待政策明确或探讨。
目前通行采用单界面CPU卡。双界面形式的CPU卡大致可分为CPU与磁条复合界面卡、两面均为接触式CPU的双界面CPU卡、一面接触式与另一面为非接触式的双界面CPU卡这三种形式的双界面CPU卡模式。考虑到目前银行终端设备大多数是磁卡读写终端设备,要使终端设备具有CPU卡接口,需要一定改造时间周期,从实际出发的一种过度形式,我们与银行合作采用的是复合界面CPU卡,即CPU与磁条复合界面卡(有信息表明2005年起欧洲的银行磁条卡将转为IC卡)。只要银行终端设备接口支持CPU卡,有关金融应用将通过CPU卡接口完成。
2.4 CPU卡应用种类
我们在方案中采用开放性设计,兼容所有符合《中国金融集成电路(1C)卡规范》的卡片。
我们将卡的应用分为3类,简述如下:
a、种子卡、主控卡、母卡、密钥传输卡;
b、应用卡:用户卡、应急卡、ESAM模块;
c、功能卡:设置卡、转移卡、操作员卡、PSAM卡、检测卡等,主要用于生产、检测、安装、日常运行及维护维修等过程中的需要。
3 CPU卡燃气表
3.1 CPU卡与CPU卡表的对应关系
CPU卡将CPU卡表、后台系统、生产、维护及管理相互之间紧密的联系起来,构成一个大系统。在CPU卡与CPU卡表的对应关系上,我们确定一台CPU卡表对应三张CPU卡,一张CPU卡依然只对应一台CPU卡表。这是一种全新的不同于原逻辑加密卡表,与持卡人个体无关、卡表与逻辑加密卡一表一卡的对应关系。采用银行发行的金融卡后,卡与持卡人的关联度随着持卡人金融应用程度的提高而大大提高,所持金融CPU卡的个性化、个人化大大增强,因此原来只对应于家庭,一台卡表只对应一张卡的关系发生了变化,可能需要一台卡表对应多张卡。以解决家庭某一成员在异地持有金融CPU卡时,保证其他家庭成员购买燃气的需要。
3.2 CPU卡燃气表内的ESAM模块
CPU卡是CPU卡燃气表与计量收费管理系统之间唯一的数据信息交换传递媒介,为确保使用中所涉及巨额资金长期交易的安全,使用CPU卡后,CPU卡燃气表内应有一个相对应的ESAM安全认证模块。卡表内ESAM安全认证模块的主要功能是实现卡表与卡之间的相互认证,并按照规定的不同安全等级存储或传输数据信息。
ESAM模块中装载有燃气经营企业自己的多个密钥。燃气经营企业把由自己密钥系统生成的生产过程密钥载人ESAM模块,并发行给CPU卡燃气表生产制造商,由生产制造商将ESAM模块安装在表内。在卡表安装到用户后,进行通气验收时,燃气经营企业将卡表内的生产过程密钥更新成运行密钥。这样既保证了卡表厂商的生产、检测等工艺过程的需要,又保证了卡表内的密钥与卡表商无关。
3.3 CPU卡燃气表内密钥的更新
密钥有约定的使用有效期限,不能无限长期使用。CPU卡燃气表是长期脱机独立运行终端机,为保证CPU卡燃气表及整个系统长期运行的安全可靠,CPU卡燃气表的ESAM模块内的密钥,在使用到规定期限后需通过某种方式更换。CPU卡燃气表因脱机独立运行,没有联机网络,无法通过网络系统进行更新。CPU卡燃气表密钥更新方式,完全不同于目前广泛应用的POS终端机通过联机的网络系统及时进行密钥更新。我们经过多次反复充分对密钥更新技术及一整套实施解决方案深入细致的研究分析,最终解决了如何安全有效、方便易行且经济的对千家万户在用CPU卡燃气表内密钥更新这一技术难题,实现了CPU卡燃气表内密钥更新技术重大突破。保证了卡表及系统运行的长期安全性。
3.4 CPU卡燃气表结构
CPU卡表结构:①基表、②计量信息采集传感器、③微处理器操作控制系统、④安全认证模块、⑤阀门及阀门控制驱动电路、⑥LED显示、⑦电源电路、⑧声光报警电路、⑨卡座等构成。(图略)
3.5 CPU卡民用膜式燃气表应主要考虑的几个方面
基表计量准确稳定可靠;
传感器和卡座性能稳定可靠,满足使用寿命以及控制系统的要求;
阀门及执行机构在安全性(防爆抗攻击)、气密性、压力损失、开关阀门稳定可靠性;
IC卡的不规范插拔是否会造成数据的丢失或混乱;
整机的电磁辐射及抗电磁干扰能力;
满足使用环境要求(温度、湿度);
静态功耗和动态功耗要小;
电源电池更换方便。
卡表的基本功能(略)
4 建立售气站点或服务窗口
基本原则和总体规划要认真考虑以下问题:方便用户,设立站点和分布服务网点,降低投资额,便于日常运营和管理,提高效率和效益,是否建立计算机网络系统,采用何种计算机网络系统,建立怎样的组织管理体系。
4.1 具体考虑和做法
从宏观经济角度或企业经济效益角度去观察思考。依靠银行现有终端及网络系统进行收费结算,是有效合理配置资源的一种方式,可避免行业及部门间各自分别设立终端及相关网络所造成资源配置的重复投资或不合理。若与银行合作,CPU卡燃气表使用由银行发行的金融CPU卡,直接纳入并充分利用现有的银行系统,大大减少自身售气网点建设投资、日常运营、管理维护、窗口服务成本及人工费用。直接纳入规定的银行系统,进人指定的银行帐号,缩短现金交易及流通环节。较好的解决在收费结算、现金保管及储运等一系列实际具体问题。
利用银行网络及系统,虽然解决了售气网点问题,但仍需建立与银行网络及系统相应自己的计量收费管理及计算机网络系统。该系统的中央系统将与银行的中央系统之间建立点对点专用网络,用于安全认证、时实数据和非时实数据的传输。
4.2 项目的组织与实施
计量收费管理系统,在对各项需求经过多方论证分析的基础上,充分考虑和保证设计的前瞻性,以成熟先进、稳定可靠安全、易用易扩展、贴近实际为原则。满足以下基本功能要求:计量与收费管理、数据信息传输、数据流量及处理能力等特性。
整个项目主体框架分为卡表、操作管理系统软硬件、密钥系统这三大部分,涉及卡表、卡、计算机、网络、系统、密钥安全和软件等多方面的专业技术,相互间彼此交叉渗透融合,使项目具有一定难度。我们为保证整个项目质量,将该项目作为一个系统工程,分解成几个部分,由几个在专项技术领域方面相互独立,但各自更具专业水平的不同参与方来承担系统的专项工作,各司其职,彼此之间相互检验和监督,有利于系统内在隐性问题的及时发现和解决,保证系统未来运营的稳定可靠。我们负责统一组织协调好各方的工作,重点是将相关行业相关专业间有机的联接起来,组织好参与各方进行细致深入分析研究,遵循或参照现有规范标准及有关草案,拟订需要各方共同遵守统一的技术标准、协议或规范,并尽量使之标准化、规范化,保证最大限度的兼容性或通用性。在确定协议及规范标准的基础上依照目标和功能要求对实施过程中对各部分的核心或要点进行把关,保证各方任务的实施和完成。
4.3 项目投资
目前项目已进行到试运行阶段。我集团项目一期配套投资预计约160万元左右,主要包含调研、需求分析、方案论证与规划、技术支持、大系统检测审核、密钥系统开发、DDN/ISDN/PSDN线路、机房、相应配套设备及工程等。
5 计量收费管理系统
5.1 网络和计算机系统平台
如图1所示,网络和计算机系统平台分为燃气集团和银行两个部分。其中燃气集团的平台分为三级:集团、销售分公司和下属管理所/站。
5.2 系统组成和功能
在已经建立的银行网络和计算机系统平台基础上,银行内部网络及系统能够有效支持下属各个网点的信息实时上传汇总到银行自己的信息中心。合作行将针对燃气集团的CPU卡燃气表计量收费管理项目,负责对其内部系统、网络及前台终端的软硬件进行相应的更新改造。保证满足银行与燃气集团之间数据信息定时或实时传输的要求。
燃气集团的计算机网络平台构建在ISDN/PSTN/DDN/帧终继等基础通信设施之上,为计算机系统提供基础的通信平台。燃气集团的计算机系统平台包括计算机硬件和系统软件两部分。计算机系统硬件设备主要包括:WEB/应用服务器、数据库服务器、防火墙、加密机、网络及安全管理服务器以及PC终端等。系统软件主要包括:操作系统、数据库系统、WEB/应用服务器软件、开发工具、计量收费管理软件、安全认证软件、防火墙软件、网管软件以及防病毒软件等。
从物理分布看,CPU卡燃气表计量收费管理系统是一个覆盖燃气集团、分公司、管理所/站以及银行的各级机构的网络信息管理系统。从系统功能看,CPU卡燃气表计量收费管理系统主要包含以下子系统,而每个子系统同样是由分布在多个结点上的子模块构成。
(1)银行收费管理子系统
(2)燃气用户信息管理子系统
(3)燃气集团计量收费管理子系统
(4)维修管理子系统(由二期工程根据实际进一步补充完善)
(5)手持POS机子系统(由二期工程实施)
(6)系统维护和帮助子系统(其中包含用户查询系统由二期工程补充完善)
(7)密钥及管理系统(应急卡和ESAM模块发行系统由二期工程进一步完善)
6密钥系统
6.1系统概述
科学完善的安全机制应是密钥管理系统设计的指导思想。密钥贯穿于整个系统,密钥的安全控制和管理是保证北京市燃气集团CPU卡燃气表计量收费管理系统安全性的关键,是数据信息安全的保证。密钥管理系统的安全性将直接影响整个系统的安全,密钥系统也因此必然成为整个大系统的核心。
北京市燃气集团CPU卡燃气表计量收费管理系统所采用的密钥管理体制完全符合中国人民银行发布的《中国金融集成电路(IC)卡安全管理规范》的要求,设立北京市燃气集团CPU卡燃气表计量收费管理系统密钥管理中心,统一进行密钥的生成、传递、分发和使用的监管,使各种应用功能CPU卡、ESAM模块、后台系统加密机内密钥认证和应用管理系统等整个系统完全置于企业的安全控制和有效监管之下,保证其过程的可靠性和安全性,防止恶意攻击和欺诈行为,实现对整个燃气销售的安全控制和管理的目的。
6.1.1密钥系统平台
燃气集团密钥管理系统见图2。
计量收费管理系统主要是实现CPU卡燃气表和收费管理的功能,而密钥安全管理系统主要是保证计量收费管理系统中交易信息的安全,它是一个建立在计量收费管理系统基础之上运行的涉及交易数据安全保障的系统,是根据燃气集团的运营特点,由燃气集团对整个MIS系统进行安全制约和管理控制的独立系统。
计量收费管理系统和密钥安全管理系统这两大系统均作用于用户卡和燃气卡表,最终实现收费交易的安全可靠。
加密机是构成该系统的核心。应具备以下几个基本特征:加密算法由硬件实现;支持DES、3DES、RSA或经过权威组织机构认证其它标准算法;算法不可读出,密钥保存在加密机内部,密钥无明文输出,防止数据被非法窃取或篡改,能确保产生真随机数;具有防检测抗攻击,内部电磁辐射不可侦听,自身有防拆、防撬、密钥自毁等特性,任何人无法用物理手段或逻辑手段来获取密钥。
6.1.2系统总体结构
见图3。
6.2系统安全策略
安全机制是整个密钥管理系统的核心,从系统的整体性上考虑其安全策略,并以此来制约密钥的使用和操作权限受到严格的控制。在充分保证密钥系统安全性的基础上,实现密钥的生成、注入、导出、备份、恢复、更新、服务等功能,实现密钥的安全管理。
6.2.1密钥管理中心主密钥的安全产生
在密钥管理中心。种子密钥以密钥卡和密码信封的形式分别安全保管,以备将来更新或恢复主密钥时使用。加密算法的选择由密钥管理中心决定。
6.2.1.1生成密钥
种子密钥:在密钥管理中心,由大于两个的特定或主管人员分别输入一组或N组种子数值,通过密钥生成系统的加密算法软件对特定代码Ni处理,生成所需的根密钥或种子密钥——中心主密钥。
主密钥:由种子密钥和特定的离散因子通过密钥生成系统进行加密运算生成主密钥组。一个主密钥组由各种不同功能用途的主密钥构成。
密钥:由主密钥与离散因子通过加密算法离散后得到相应功能用途的密钥。不同密钥由不同主密钥离散后生成。
密钥种类:主控、外部认证、内部认证、钱包圈存密钥、线路保护、密钥更新等8种密钥。
6.2.1.2传递密钥
在整个密钥系统中,为保证系统的安全性,密钥的导入、导出传递均要采用安全报文传输的方式,即密文+MAC的方式,密钥卡中用于主密钥导入、导出的密钥可以不同,必要时在一些特定环境使用密钥传输卡,以提高密钥传递或下载的安全性。
6.2.2主密钥卡和主密钥控制卡配合使用
主密钥卡由主密钥控制卡保护,使用主密钥卡前,必须用控制卡对主密钥卡进行外部认证,只有外部认证成功后,主密钥卡才能被正常使用。主密钥卡和主密钥卡控制卡要分别严格保管,这是保证密钥系统安全性重要关键环节。
6.2.3存储和备份密钥
密钥管理系统中密钥采用密钥卡或硬件加密机的形式存储,而备份采用密钥卡和密码信封的形式进行密钥备份,并分别安全存放在不同的地点。
6.2.4更新密钥
确定密钥版本和索引有效使用期和更换条件,在用各种卡的密钥版本或索引将根据需要随时更新。
密钥系统由密钥的生成、发行及管理三部分构成。密钥涉及CPU卡燃气表内程序、ESAM安全模块、用户卡、各种不同功能CPU卡、卡表的生产流程、计量收费管理系统、后台安全认证、新表安装、旧表维护更换及日常应用等诸多方面,是涉及整个系统收费安全的核心。从安全特性上考虑,要求密钥必须独立设计,系统开发商及卡表生产商不直接参与密钥系统设计。密钥的安全特性要基本保持在同一个安全等级水平,否则将因某一部分的安全问题发生木桶效应而使整体安全特性下降。安全机制要保证在一个合理适当水平上,在同一安全特性条件下尽量降低综合成本。不要追求过高的安全机制,这将会大大提高成本。
6.2.5建章立制
我们针对密钥系统拟订了相应配套的规章管理制度。在发行CPU卡初始化时,由企业自己的密钥发行系统将相应的母卡内的密钥如:主控密钥、外部认证、内部认证、线路保护密钥等载入CPU卡和ESAM模块及其它功能卡中,发行给有关单位部门或人员使用。发行数量、种类及过程由密钥管理系统进行管理。
7 管理框架及业务基本流程
(1)由燃气集团建立统一计量收费管理中心。用户燃气集团CPU卡燃气表计量收费管理系统与银行计算机中央系统的CPU卡燃气表计量收费系统子系统间建立相应的连接,负责与银行间数据信息交换及办理日常业务工作。
(2)两个销售分公司下属所、站将新发展用户和更新改造用户的有关信息录入并传送至CPU卡表计量收费管理中心(隶属用户计量收费管理中心),同时向用户开具发卡通知。
(3)CPU卡表计量收费管理中心将有关信息传送至银行。银行根据新发展用户和更新改造用户等有关信息,向持有开卡凭证的客户发用户卡和首次收费,并负责以后收费。银行将用户领卡、付费及卡内的相关信息传送至燃气集团CPU卡表计量收费管理中心,进行校核结算(银行与客户交易过程始终处于我们的加密机认证体系控制之下进行)。
(4)CPU卡表计量收费管理中心将相关信息分别反馈给有关销售分公司。下属的管理所(或营业站)可在销售分公司获取相关信息。
(5)用户用气实行预收费,先持卡在银行购气,再将已购气的卡插入CPU卡燃气表,表与卡相对应一卡一表(但一表三卡),不可互换。CPU卡表自动检测识别卡,下载卡内购气量和有关数据,并将表内有关数据信息写入卡内后CPU卡可与表相互脱离,燃气表即能自动开阀,正常用气。插卡时燃气表内有关的运行状态信息可反馈到卡内,银行在售气的同时,可将所要的卡内关于燃气表运行状态信息传送到燃气集团用户管理系统,以方便管理用户。
(6)用户向管理所申请卡表的维护维修业务。换表/变更、卡表故障,经管理人员确认,并上传信息至系统或银行。涉及银行方面业务可到银行办理相关手续。
(7)管理所负责接收燃气表故障申报,上门维修,将维修报告上传到管理系统。