技术文章

浅谈基于CPU卡的流量计功能要求及设计方案

来源:仪表网

2012/2/16 15:08:22 1510

  摘要:IC卡是一种半导体卡,已被越来越多的运用到了信息自动化,即人们的生活中,但是它也有本身的一些不足,由于逻辑加密卡的技术所限,产品供应商的密钥不能向应用方(燃气公司)公开,因此应用方无法掌握核心安全,系统安全取决于产品供应商,并且不同型号的逻辑加密卡互不兼容,导致不同厂商的芯片数据存储方案也不兼容,应用方在使用多家卡表时会带来多种密钥和密钥算法管理上的复杂化。文章就给大家论述了设计时的一些要求。


        引言
  
  IC卡是一种半导体卡,其采用微电子技术进行信息的存储、处理。自1970年诞生*张IC卡以来,IC卡经历了一般存储卡、加密存储卡、CPU卡和超级智能卡4个时代。IC卡是多学科技术综合发展的结果,它的应用已成为一个国家科技发展水平的标志之一。
  
  IC卡在城市燃气流量计量上的应用越来越广泛。在CPU卡流量计之前,大量使用的是逻辑加密卡。由于逻辑加密卡的技术所限,产品供应商的密钥不能向应用方(燃气公司)公开,因此应用方无法掌握核心安全,系统安全取决于产品供应商,并且不同型号的逻辑加密卡互不兼容,导致不同厂商的芯片数据存储方案也不兼容,应用方在使用多家卡表时会带来多种密钥和密钥算法管理上的复杂化。
  
  CPU卡又称智能卡,卡片内自带CPU,程序容量和数据容量大,且带加、解密算法协处理器,运算速度快。采用CPU卡,并且制定一种统一的技术规范,燃气公司能*掌握CPU卡流量计的技术核心及密钥算法,保证燃气准确计量、实现先购气再用气、防止用户偷气。由此可见,CPU卡工业流量计成功应用的关键是设计完善的CPU卡密钥系统。
  
  1、CPU卡流量计的功能要求
  
  目前,新型的CPU卡流量计是集计量基表、电子表头和控制阀于一体的流量计。此前,CPU卡流量计通常是集成商将流量计和IC卡控制阀通过电气连接而成,流量计在计量一定的量(通常为1m3)时输出一个脉冲给IC卡控制阀,IC卡控制阀进行扣减,当扣减超过允许透支量时,控制阀关闭。对于这种方式,电气连接的可靠性是关键,经常出现的情况是扣减不同步,流量计运行的量与IC卡控制阀扣减的量不尽相同,造成计量纠纷。
  
  所以,从CPU卡流量计功能上讲,一体化流量计是发展的趋势。燃气贸易中,用户通过CPU卡购气后充值到流量计中,燃气公司通过CPU卡达到管理用户用气的目的,CPU卡起着用户和燃气公司的关键作用。另外,当上游气价浮动时,燃气公司能及时通过CPU卡或其他方式调整气价。
  
  综上所述,CPU卡应至少保存如下信息:用户信息、燃气公司标志、购气量和购气次数,以及为安全需要而设计的密钥组、不同功能卡的卡标志。为避免异常操作造成卡内数据丢失,还可以在卡文件中记录主要操作过程,异常操作后再次插卡能恢复继续进行正常的操作。
  
  2、密钥体系总体设计
  
  本密钥体系设计采用三级分散四级密钥方式,从根密钥逐级分散,到zui终的应用卡片密钥,如图1所示。

  

  图1密钥体系图

  
  2.1密钥的管理
  
  由图1可见,在密钥体系中,各应用卡处在体系的zui底层,其密钥是根据上一级母卡和分散因子进行密钥分散得到的。因此,必须加强对母卡的管理。为防止各级母卡在应用中不可预料的物理性损坏,必须对各级母卡进行备份并根据单位需要设置管理权限。
  
  2.2密钥分散
  
  在进行密码运算时,可根据密钥长度选择数据加密标准(dataencryptionstandard,DES),或3DES算法。一般而言,密钥长度为8B用DES,16B用3DES算法。这两种算法的逻辑框图如图2所示。

  

  图2运算逻辑框图

  
  2.3DES算法
  
  DES算法为一种对称密码体制,它是IBM公司于1975年研究成功并公开发表的,开创了公开全部算法的先例。DES算法的基本技巧是把每一位明文的影响尽可能迅速地作用到较多位输出密文中去;同时把每一位密钥的影响尽可能扩散到较多位输出密文中,以隐蔽明文的统计特性。
  
  DES主要采用替换和移位的方法,用56位密钥(密钥为64位,其中8位是奇偶校验位,所以实际上密钥为56位)对64位二进制数据块进行加密。每次加密可对64位的输入数据进行16轮编码,经一系列替换和移位后,输入的64位输入数据被转换成*不同的64位的输出数据。
  
  DES是在DES的基础上采用三重DES,即用两个56位的密钥K1、K2进行加密与解密。发送方用K1加密、K2解密,再使用K1加密;接收方使用K1解密、K2加密,再使用K1解密,其效果相当于密钥长度加倍。[6]
  
  3、CPU卡密钥类型及应用
  
  所有CPU卡的密钥类型如下。在实际应用中,可以根据系统要求适当删减。
  
  DES加密密钥,用于进行DES加密运算的密钥,在内部认证操作时使用。
  
  DES解密密钥,用于进行DES解密运算的密钥,在内部认证操作时使用。
  
  DES&MAC密钥,用于进行报文鉴别代码(messageauthenticationcode,MAC)运算的密钥,在内部认证操作时使用。
  
  内部密钥,用于产生消费、取现和圈存交易中使用的交易验证码(transactionauthenticationcode,TAC),涉及圈存、圈提、消费/取现、修改透支限额操作命令。
  
  维护密钥,用于在以安全报文方式访问文件时,产生安全报文的密钥。它涉及读/写文件/记录、存款、扣款、卡片锁定、应用锁定和应用解锁操作命令。

猜你喜欢

提示

请选择您要拨打的电话: