王 健,彭新光
(太原理工大学计算机科学与技术学院,山西 太原 030024)
责任编辑:许 盈
目前国内的手机银行发展前景广阔,已有多家银行先后推出了手机银行业务。手机银行作为银行重要的金融服务渠道之一,不仅可与PC网上银行、柜面渠道发挥同等作用,还能够提供更具价值的增值服务,是3G时代稳定和竞争零售银行用户的利器。通过与其他渠道协同,手机银行可以把银行金融产品低成本、高效率、无缝隙地传递到用户手中。
目前国内手机银行仍存在一个主要的不利因素严重制约了用户对手机银行品牌的选择与使用,即为“安全性”。安全性是大多数用户选择手机银行品牌时都会关注的因素,目前手机银行普遍使用的WAP技术已经落后,虽然有其巨大的移动设备兼容性,但由于移动设备硬件设备渐渐发展完备,廉价的智能型移动设备开始在广大用户手中普及,广大用户在“能用”的基础上开始关心“安全性”问题。
PKI(Public Key Infrastructure)是遵循一系列标准的利用公钥加密技术为基础的一整套安全基础设施的通称。
PKI身份认证机制以数字证书为核心,综合采用对称加密算法、非对称加密算法、数字签名技术等确保网络中实体身份的真实性、信息的保密性、信息传输的完整性以及不可否认性,从而保障网络应用的安全性。
数字证书是各类实体(持卡人/个人、商户/企业、网关/银行等)在网上进行信息交流及商务活动的身份证明,在电子交易的各个环节,交易的各方都需验证对方证书的有效性,从而解决相互间的信任问题。简言之,数字证书是一段包含用户身份信息、用户公钥信息以及身份验证机构数字签名的数据。身份验证机构的数字签名可以确保证书信息的真实性,证书格式及证书内容遵循X.509标准。
目前,国内大部分银行认为:手机银行+短信通道模式是安全的[1-3],所以短信认证被大面积使用[4]。国内现有几家银行已上线iPhone版和Android版的手机银行,在做付款和转账等业务时,使用6位密码口令以及4位或6位短信交易口令,比如建行、招行。
与传统的移动终端相比,现今用户基本都在使用智能移动终端。如果安装应用时不注意应用权限(大多数用户都不注意),则某些恶意应用可注册手机的短信接收功能,并会完全替代系统的短信程序[5]。这样当用户手机接收到短信时,会先交由此恶意程序应用处理,如果此应用不再抛给系统的短信程序,则用户不会发觉收到短信。
对于利用短信认证码的方式对用户进行身份认证,一旦用户手机被恶意软件侵入,则可拦截并转发短信认证码,给用户造成很大的经济损失。同时当用户的移动终端遗失,不用恶意软件侵入,便可轻易获得短信口令;另一方面,6位密码口令和4位或6位短信口令,总位数都不过多位,可使用穷举法等进行破解,安全级别可想而知。
在科研领域,因为传统PC网上交易中一直使用数字证书来进行加密和身份认证。且根据电子签名法要求,移动终端也需要一个支持电子签名的设备,实现对网上交易的加密和身份认证,所以移动终端中数字证书的应用研究得到了极大的重视。传统PC中,因PC皆含有统一的USB接口,因而UsbKey数字证书的应用方式已经非常成熟,得到了广泛的应用。但是在移动终端上因为便携式的要求,大多数没有提供标准的USB接口,所以无法使用成熟的UsbKey装置,从而无法保障用户网上交易的安全性。
综上可知,阻碍移动终端中数字证书的应用最大的问题是,在保证安全性的前提下需要统一的接口方式和存储方式。目前移动终端中数字证书的应用研究根据存储方式主要集中在3方面:一为文件存储[6-7];二为智能Secure Digital(简 称 SD)卡 存 储[8-10];三 为 SIM 卡存储[11-12]。
1)文件存储:即数字证书存放在手机内部存储空间,再利用手机内置的密码算法实现对用户身份的认证以及对信息进行加密。
2)智能SD卡存储:智能SD卡是一种具有SD接口的智能卡,它内置硬件加解密模块,能够独立实现加解密、数字签名等功能;具有安全存储区域,可用于存储私钥、数字证书等秘密信息。
3)SIM卡存储:使用SIM卡作为数字证书的硬件存储设备,SIM卡直接插入移动设备的SIM卡卡槽中,卡片中包含数字证书私钥、加密运算CPU和普通SIM卡存储空间3部分。
但以上3种方式,皆有其不足之处:
1)安全性
文件存储的数字证书在使用时,将手机存储空间中的数字证书私钥解密到内存中使用。这种方式存在一定的风险,当黑客等不法分子入侵、截取或复制设备内存等时,可以获得数字证书的私钥等信息。SD卡和SIM卡一直放在移动终端内部,一直处于连接状态,因此给黑客等不法分子穷举法、破解SD卡、窃取SIM卡提供了充分的时间和机会,一旦口令等得以破解,伪造身份将很容易。
2)分离性
3种方式有个共同的不足之处是未达到数字证书和移动终端的分离,从而未达到传统PC中UsbKey应用时即插、应用完毕即拔的安全性。一旦手机遗失,将使得数字证书及移动终端都暴露在不法分子手中,将会更快速地造成损失。
3)应用繁琐性
文件证书存放于移动终端内部存储空间,所以只能使用相应的移动终端证书发放系统,但需保证发放过程的安全性,成熟的方案即是利用数字证书进行加密和认证,但手机应用中数字证书的应用安全性还存在问题。另一方面,如需应用智能SD卡,则需更换带处理算法功能的智能SD设备,且还需拷贝本机原有SD卡中的所有资料,如应用智能SIM卡还需专门更换智能SIM卡。
使用单独的耳机key作为数字证书的硬件存储设备,耳机key直接插入手机设备的音频接口上。手机设备和耳机key单独保存,使用时连接,使用完毕断开,能够有效地保证数字证书的安全性,保证手机银行的资金安全不会受到手机病毒及木马的威胁。
虽然手机银行领域一直在研究数字证书的存储问题,但其都未达到手机与数字证书的分离,安全程度不如耳机key。
耳机key的组成模块以及各模块的主要功能如图1所示。
图1 组成模块及模块功能
1)移动终端模块
证书API模块负责对应用程序提供数字证书操作功能,比如可以对某个操作进行签名;COS指令接口按接口规范实现UsbKey处理模块的逻辑处理,类似驱动层;音频通信接口负责发送签名操作和获得返回结果,同时会进行数字信号和音频信号的转换。
2)耳机key模块
ADC处理模块负责模拟信号和数字信号的转换处理;USB协议处理模块封装解析USB协议数据;UsbKey处理模块获得存储的数字证书,并进行加密运算,从而完成签名操作和一般的UsbKey内部模块相似。
耳机key的工作流程如下:
(1)移动终端的证书API模块,先调用内部COS指令模块,生成UsbKey处理模块可识别的COS指令数据,通过调用音频通信接口指令发起签名操作。
(2)耳机key接收到音频通信接口的指令后,由内部模数处理,转换指令为数字信号,发送到USB协议处理模块。
(3)USB协议处理模块将接收到的数字信号通过USB协议封装,转换成UsbKey处理模块可以识别的USB协议数据,并发送给UsbKey处理模块。
(4)UsbKey处理模块根据接收到的USB协议数据,通过获得数字证书和加密运算来进行签名操作,生成签名数据,并将签名数据以USB协议封装数据的格式发送给USB协议处理模块。
(5)USB协议处理模块将USB协议封装数据转换为数字信号,再通过模数处理模块,转换为音频信号。
(6)移动终端获得音频信号后,通过模数转换为二进制数字信号,再通过COS指令模块转换为证书API可以识别的签名结果数据格式。
因为UsbKey加密及身份认证原理有其标准规范,所以本文不详细讨论其设计问题。
另外,在步骤1)中,所述证书API模块响应来自于上层系统的功能调用,并根据功能对所述COS指令模块进行调用;所述COS指令模块响应来自于证书API模块的调用,生成相应的UsbKey COS指令数据,并调用音频通信模块进行指令数据的传递;对COS指令层的调用属于接口调用;所述音频通信模块调用移动终端操作系统API将指令数据生成音频,并利用音频播放方式使指令数据通过音频口传输;对所述音频通信模块的调用属于接口调用。
具体流程如图2和图3所示。
手机耳机key优势为:
1)接口及存储方式统一性
现有科研领域中阻碍数字证书应用研究的最大问题,即在保证安全性的前提下无统一的接口方式和存储方式。使用耳机key便可解决此问题,因为现有智能移动终端基本都是用3.5 mm耳机接口,所以接口方式统一为耳机接口方式,存储方式统一为耳机key存储。
2)平台多样性
现有智能移动终端基本都是用3.5 mm耳机接口,同时PC机也是3.5 mm耳机口。耳机key不但能够用于大部分智能移动终端,同样也适用于传统的PC终端。
3)便捷性
移动设备上即插即用,无需安装多余的软件。
4)安全性
安全性为耳机key的最大优势。由于移动终端和耳机key单独保存,不会发生移动终端丢失,数字证书也丢失的情况。且使用后即拔出,即使黑客等不法分子入侵,也无充分的时间破解或拷贝数字证书中的私钥等信息。这种双通道模式大大增加了用户数字证书的使用安全。
同时,耳机key和应用于普通PC端网银的UsbKey内部均使用USB协议等技术,安全程度等同于传统PC端的UsbKey。
1)易用性
手机银行数字证书的应用目的是方便网银用户在移动终端上使用网银服务,由于移动终端的特殊条件,移动终端上的网银服务要简单、易用。
2)安全性
建立SSL加密通道来保证数据传输安全;利用耳机key中的数字证书对敏感业务数据进行电子签名,保证数据信息的完整性、不可抵赖性。
3)兼容性
系统设计采用标准化和模块化的原则,与现有的PC端证书体系和系统尽量兼容。
数字证书应用拓扑图如图4所示。
图4 数字证书应用拓扑图
4.3.1 数字证书签发流程
为了达到兼容性及易用性的目的,网银数据库不做变动,用户可以从银行领取一张同DN,但保存于耳机key的数字证书。这样网银系统不会因为使用手机银行业务而对自身的系统做大的改动。
4.3.2 用户登录网银验证流程
因传统PC网银使用的单向SSL通信,且单向SSL比双向SSL的响应速度会有明显提升,为了达到兼容性和不会过大影响响应速度的目的,所以选择单向SSL通信。同时,增加身份认证功能达到安全性的目的。
1)加密通道建立阶段
手机银行用户端和服务器建立单向SSL,使传输的所有数据都必须经过加密。
2)用户身份验证阶段
(1)手机银行用户端在与服务器建立连接后,用户端调用证书API模块,使用耳机key中的用户证书对服务器指定的字符串做数字签名,并提交到服务器。
(2)手机银行服务器验证用户签名,并验证用户公钥证书,包括是否为权威第三方机构签发,是否在有效期内,并通过CRL文件验证证书是否被吊销。
(3)证书验证通过后,手机银行服务端从公钥证书中提取用户登录数字证书的DN。
(4)手机银行查询该DN在网银记录中对应的用户信息。
(5)确认信息是否与网银应用中的用户信息一致,确定是否允许用户登录网银。
3)交易签名验签阶段
(1)对于关键的交易,调用证书API模块,使用耳机key中的数字证书对指定内容进行签名。
(2)签名结果、签名原文及耳机key中的公钥证书自动上传到服务器后台进行验签。
(3)验签通过后,系统进行后续的操作,同时保存签名结果。
如表1所示,耳机key手机银行方案与传统短信验证码手机银行方案相比,在安全性方面有明显的优势。耳机key手机银行方案不仅在登录及交易过程中更加安全,而且可以保证分离性,即使手机遗失也不会对自己的财产造成影响。
在实现方式上,和传统短信验证码手机银行方案相同之处是,都需要开发相应的手机银行客户端和服务端。不同之处是,耳机key手机银行方案客户端和服务端包含SSL通道加密、签名并验证是否为当前用户DN登录、交易中对敏感信息进行签名(以保证完整性和不可抵赖性);还需要耳机key中的数字证书(其中耳机key根据3.2节耳机key技术原理即可完成提供)来表明为当前用户的用户信息,同时用其私钥进行签名认证操作。
3G时代、智能手机时代的到来,使得手机银行的应用更加普遍,如何保证手机银行的安全性,也是当今时代研究的热点。为了保证用户在使用手机银行时的个人利益,为了使得用户用的放心,手机中数字证书变得至关重要。本文提出的这种基于耳机key的手机银行数字证书方案具备良好的安全性和实用性。
表1 方案比较分析
[1]NARENDIRAN C,RABARA S A,RAJENDRAN N.Performance evaluation on end-to-end security architecture for mobile banking system[C]//Proc.WD '08.1st IFIP.[S.l.]:IEEE Press,2008:1-4.
[2]HARB H,FARAHAT H,EZZ M.SecureSMSPay:secure SMS mobile payment model[C]//Proc.2nd International conference on Anti-counterfeiting,Security and Identification.[S.l.]:IEEE Press,2008:11-17.
[3]NARENDIRAN C,RABARA S,RAJENDRAN N.Public key infrastructure for mobile banking security[C]//Proc.2009 Global Mobile Congress.[S.l.]:IEEE Press,2009:1-6.
[4]刘人杰.手机短信安全与应用研究.硅谷,2012(6):91-92.
[5]张丽娜,何远.基于用户意愿的智能手机安全监控方法研究[J].电视技术,2012,36(18):44-46.
[6]郑智鹏.基于NFC及MOBILE KEY的ATM验证系统[D].广州:中山大学,2010.
[7]FANG,ZHAN.Online banking authentication using mobile phones[C]//Proc.5th International Conference on Future Information Technology.[S.l.]:IEEE Press,2010:1-5.
[8]王四军,茹昭.一种使移动终端无缝接入传统网银系统的方案[J].计算机应用与软件,2011(12):102-104.
[9]赵正元.基于加密SD卡的移动终端安全接入方案的研究[D].南京:东南大学,2010.
[10]邢诒俊.移动身份认证服务系统的设计与开发[D].北京:北京邮电大学,2008.
[11]马志.手机银行遭遇安全瓶颈 PKI-SIM或成突围利器[J].通信世界,2008(25):29-30.
[12]YIN Xue,ZOU Junwei.An improved dynamic identity authentication scheme based on PKI- SIM card[C]//Proc.International Conference on Wireless Communications, Networking and Mobile Computing.[S.l.]:IEEE Press,2009:1-4.