来源:中国一卡通网 作者:王俊清 发布时间:2013-12-17 10:12:49 字体:[大 中 小]
摘 要:在USIM卡上加载金融应用是当前的热门话题,但由于电信卡本身因为多角色带来的安全性管理fq题,联通目前的USlM卡互操作性与理想状态还有一定距离。无论是对前期的资源节约还是对后期的升级扩展和管理都带来了一定的困难和挑战。本文从规范、技术和管理几方面入手,分析联通金融USIM卡多应用加载的安全性和互操作性现状,并针对存在的问题提出了一些可供参考的解决办法。
主安全域,作为中国联通对卡片内容进行管理时的操作代理,联通多应用框架SIM卡必须实现此安全域应用。中国联通可以利用主安全域授权程序加载、安装、迁移、删除中国联通或其他应用提供方的应用。
辅助安全域可以被动态创建、删除和更新。
安全域对用户不可见,安全域的创建只能由平台发起。安全域就是一个个独立的黑匣子,将各种应用安全存放,使得各个应用彼此完全独立。安全域密钥作为访问控制权限的一种表现方式,可以在安全域创建的时候设置好, 也可以在必要的时候动态更新。密钥更新操作只能由平台主动发起。遵循GP规范的安全域拥有安全级别。
3.3 联通金融USIM卡互操作性现状分析及建议
3.3.1 联通金融USIM卡互操作性现状分析
互操作性差,不仅加大发卡商对卡片的管理难度,还会使得后续应用开发成本加大, 当卡片到用户手中后,就更不利于扩展应用的加载。
鉴于联通智能卡是拥有GP标准平台的java卡,我们可以分析一下导致同一个金融应用不能在各家卡上兼容的原因:
(1)JAVA卡规范、GP规范、SWP规范、HCI规范、NFC API规范,版本众多,彼此不统一。任何一个规范版本的差异都将带来相应产品实现的差别并造成卡片的互操作性问题。
联通规范的制定从时间上落后于卡商产品的开发,版本确定往往也没有采纳制定规范时相应的国际规范最高版本。卡商产品的版本五花八门:一些国外卡商的产品成熟度高,但是因为内部机制以及本地化研发不足造成响应速度较慢; 一些国内卡商虽是后起之秀并且所遵循的版本也高但缺乏成熟度。紧急状况时,可供采购的卡遵循的规范版本或高于联通规范或低于联通规范。甚至还可能出现多次采购不同批次的卡遵行不同的版本规范。总之, 规范的版本和实际采购情况的不吻合不仅为产品检测带来困难, 更为未来卡的管理和标准应用的编写以及后加载带来挑战,成为卡片互操作性的隐患。
(2)一些NATIVE指令造成了兼容性问题:私有指令不是必须的,而是为了编程的简单和快捷,所以卡商根据自己的硬件性能等扩展了一些对应用编程更容易实现的API, 从而造成了含有私有API的应用程序在各家卡上不兼容或根本无法装载成功。
(3) 为了满足客户应用的特殊需求:每个JAVA APPLET之间有防火墙,需要由shareable interface在不同的APPLET间进行沟通和数据共享, 所以当需要业务需求一个STK程序同时完成查询卡上的几家银行账户或电子现金余额时,统一的shareable接口函数是必须的,但是卡商在实现时却常使用私有的接口函数来完成,这便带来了不兼容隐患。为了满足应用在各家卡上的互操作,宜制定联通的规范来完成这部分功能。这样既能最大限度的保证安全性也能确保满足现有的应用需求。
(4)硬件性能差异造成应用程序兼容性差:由于芯片内存大小、CPU运算速度差异、一些加密算法是硬件运算还是软件运算等造成了同样的JAVA卡应用程序在性能差的芯片上难以正常运行, 性能差的卡不仅带来可能的兼容性问题,还造成很差的用户体验,甚至会因为耗电增加减少手机的待机时间,给用户带来频繁更换电池的损失。(比如运行同样的 IMSI!it置脚本, 使用不同芯片的卡用时分别为20.2秒和163.3秒, 速度相差近8倍)。
3.3.2 提升卡互操作性建议
3.3.2.I 互操作性良好所需条件
联通金融USIM卡到底需要怎样的条件才能拥有好的互操作性呢?
首先,互操作性好的智能卡都要遵照相同版本的规范:如联通金融USIM卡遵循的JAVA规范、GP规范、SWP规范、HCI规范、NFC API规范的版本一定要一致。其次,卡片的应用一定是使用规范
描述的标准API写成的标准应用。最后,芯片硬件处理能力也应有最低指标要求,对于关键算法和核 OAPI的性能设定统一的参考基准。
3.3.2.2保证卡片互操作性良好的手段
需要怎样的手段来保证卡片的互操作性良好呢?
第一,加强检测,在卡片一致性检测脚本中,增加检~PBOC应用是否为标准应用的测试项(目前的卡片一致性检测脚本中只有JCPM(Java Card PortalModule)、OTA(Over The Air)应用预置菜单的检验)。
第二,强化第三方认证测试作用,使其严格遵循标准规范流程。为保证卡商提交给银行卡检测中心的卡和最终提交给联通的卡为相同的卡,并且避免由于加载项增多后造成的问题, 联通应抽检购买的成品卡并再次委托银行卡检测中心进行PBOC全功能检测。
第三,强制开发联通规范支持的标准的JAVA卡应用,在业务定义和确定应用需求环节尽量参照标准的API,避免开发标准API不能实现的功能。
第四,在卡片采购中增加对芯片硬件性能指标的要求,并将对厂家的芯片性能测试结果列入招投标项目中,按照一定权重参与评分。
第五, 综合考虑卡商的相关产品的技术稳定性和版本的先进性, 如果稳定性大同小异, 版本就高不就低。不到万不得己,不宜轻易升级卡的软件版本。
第六, 当用户的需求超过了现有标准卡的处理能力, 而一些卡商的卡所具备的非标准能力可以实现用户需求时,要综合考虑商业利益和互操作性之间的平衡!(作者简介:王俊清,联通兴业通信技术有限公司工程师,主要从事智能卡COS编写工作。)
推荐文章
论坛热帖