移动互联网身份认证解决

移动互联网身份认证解决

 

常见移动环境下身份认证技术方案身份认证技术是在互联网中为确认操作者身份而产生的解决方法。移动互联网中一切信息包括用户身份信息都是用一组特定的数据来表示的,如何保证以数字身份进行操作的操作者就是这个数字身份的合法拥有者,也就是说保证操作者的物理身份与数字身份相对应,身份认证技术就是为了解决这个问题。为确保身份认证的真实有效,对于身份认证技术有以下几项基本的安全需求。   ⑴保密性:确保交易过程中涉及的大量保密数据在公开网络的传输过程中不被窃取。   ⑵完整性:保证交易信息在传输过程中不会被篡改或通过重复发送进行虚假交易。   ⑶双向认证:基于单向认证的第二代移动网络安全机制己经导致多种利用协议漏洞的攻击出现,如中间人攻击等,因此保证交易双方身份的正确性尤为重要。   ⑷不可抵赖性:确保交易完成后,交易的任何一方都无法否认已经发生的交易。   目前移动互联网中常用的身份认证技术有多种,它们具有不同的操作方式,具备不同的安全等级,可以适用于不同的应用场景。   基于硬件安全模块的PKI身份认证技术方案文件数字证书在安全等级上是最高的,同时具备双向认证机制及不可抵赖性,是一种较为适合高安全互联网应用的认证方式。这种方式的问题在于,使用文件方式存储数字证书,难以阻止非授权的访问,一旦文件被破译,就会造成用户密钥的泄漏,从而导致业务信息被破解。网银目前最普遍使用的USBKEY认证也是一种通过数字证书进行安全认证的方式,与文件数字证书方式相比,其证书及用户的密钥都采用硬件进行存储,因此能够避免非法的访问。能否在移动终端上引入专用的安全硬件完成类似计算机上USBKEY的功能,成为一种很自然的想法。   为此我们研究并提出了一种基于硬件安全模块(SecureElement,SE,本文中的安全模块均指通过硬件方式实现)的PKI身份认证技术,就是将数字证书、用户密钥存储在专用的安全模块中,并由安全模块完成各种加/解密及签名/验签运算,从而保证用户数据的安全。   2.1网络总体结构   本方案的网络结构如图1所示,其中主要的功能实体包括PKI安全模块、手机终端、业务系统平台、CA中心。   2.1.1PKI安全模块   PKI安全模块是集成在移动终端中的专用安全设备,能安全地存储用户密钥和数字证书,可实现公私密钥对生成、数字证书存储及访问、对称(非对称)加/解密、生成/验证数字签名等功能。为提高非对称运算的速度和效率,通常会在安全模块中集成专用的RSA协处理器用以快速完成密钥对生成及各种RSA相关的加/解密、签名/验签运算(对于使用ECC算法进行认证的业务,可集成ECC协处理器)。   2.1.2手机终端   手机终端是操作系统和客户端软件的运行载体。 操作系统提供了底层的硬件驱动支持,为应用软件提供了对安全模块的访问接口。 客户端软件向用户提供了业务交互的界面,它一方面通过调用操作系   统提供的安全模块访问接口来实现各种安全运算,另一方面则通过移动网络与业务系统平台进行业务交互,在安全模块与后台系统之间建立了一条实时交互的通道。   2.1.3CA中心   CA中心是PKI体系的核心,它是证书的签发机构,是保证业务交易的权威性、可信任性和公正性的第三方机构,负责生成、分发和撤销数字证书。此外CA中心还承担公钥体系中公钥合法性检验的责任,验证用户身份的真实性。   2.1.4业务系统平台   业务系统平台负责实际处理用户的交易请求,并通过与CA中心的交互,协助完成用户证书管理、签名验证等功能。2.2功能层次架构由于业务系统的设计实现较为成熟,本文将集中对手机客户端的功能层次架构进行说明。手机客户端分为应用层、安全应用接口层、手机操作系统层和物理硬件层4个层次。 应用层:客户端软件,通过调用安全应用接口层提供的标准接口,完成具体业务功能。    安全应用接口层:安全应用中间件是连接安装在移动终端上的客户端软件与安全模块之间的桥梁。   安全应用中间件屏蔽了底层手机操作系统、安全模块的差异,向应用层提供了标准的PKI运算接口,称为安全应用接口,具体包括密钥对生成、数字证书访问和管理、加/解密、签名/验签等。由于不同终端的操作系统和安全模块驱动并不统一,因此安全应用中间件需要根据终端进行适配,工作量非常大。为此需要针对目前主流的手机操作系统,包括Android、iOS、Symbian等,制定安全模块驱动接口标准,推动终端厂商遵循,减轻安全应用中间件的适配工作量。    终端操作系统层:手机终端与智能卡设备之间的访问接口简称为机卡接口。终端厂商在手机操作系统层对机卡接口进行技术实现,并向上层应用提供标准的安全模块访问接口。   对于SD卡方式,具备SD卡的终端都支持标准的SD卡访问接口。为区分对SD卡的普通存储访问和安全模块访问,一般可以采用专用文件读写方式实现:⑴安全应用中间件调用SD卡写入接口,将请求指令写入到SD卡上的专用输入文件中;⑵控制芯片判断是对专用文件的写入,认为这是安全模块访问指令,进入业务处理流程;⑶验证业务请求的合法性,确保是由合法的系统后台发出(可通过签名验证等方式);⑷验证通过后进行运算处理,并将处理后的结果经过加密、签名后放到专用输出文件中;⑸安全应用中间件在发送访问请求后,对输出文件进行定时查询,直至取得返回结果。   对于SIM卡方式,手机终端操作系统目前对SIM卡的访问是通过“RIL(RadioInterfaceLayer,无线接口层)→基带芯片(BasebandProcessor)→SIM卡”的通路实现的,由于SIM卡方式的机卡接口实现技术较为复杂,具体方案在下文中进行专门讨论。 #p#分页标题#e#   硬件层:安全模块,完成用户数据的安全存储及PKI运算。   2.3交易流程   为进一步阐述基于安全模块的PKI身份认证技术的工作方式,我们将结合一个典型的交易流程对认证鉴权方式进行说明,业务流程如图2所示。从上述交易流程我们可以看到,安全模块与业务系统平台之间通过数字签名互相进行了认证,并对传输信息进行了安全加密,确保了整个交易流程的保密性、完整性、双向认证及不可抵赖性,很好地保证了交易流程的安全。   2.4机卡接口技术   目前手机终端对SIM卡的访问过程如下:⑴应用层通过操作系统的Framework向RIL发起SIM卡访问指令;⑵RIL将访问指令转换为对应的AT命令(调制解调器命令语言)发送到终端的基带芯片;⑶基带芯片将AT命令转换为对应的APDU(ApplicationProtocolDataUnit,应用协议数据单元)指令发送到SIM卡;⑷SIM卡接收到APDU指令进行处理并返回处理结果。   这种方式的问题在于,目前终端基带芯片支持的AT命令是有限的,一般只能支持一些固定的SIM卡访问命令,如读写SIM卡短信/电话本、STK应用等,难以灵活扩展,因此如果要定义新的安全命令对安全模块进行访问,通过现有的机卡接口很难实现。   对于这个问题目前有两种解决方案,扩展现有协议指令方案和扩展新的AT命令方案。   2.5安全应用接口   上文我们提出需要在应用层与操作系统层之间增加一个安全应用接口层,其功能是为应用层提供标准化的安全应用接口,这是非常必要的。   为了满足不同类型安全应用的需求,安全应用接口的标准制定应该遵循以下原则: 使用UML语言进行描述,以便于在不同操作系统、使用不同编程语言实现;    既需要包含通用指令传输接口(可以向SIM卡传输任意的APDU指令),也应该包括根据各类安全应用需求抽象出来的专用接口,如加/解密、文件管理、认证、安全存储、安全模块识别及选择、证书管理等,以满足不同类型应用的需要; 安全应用接口不做安全访问控制,任何应用程序都可以对安全应用接口进行访问。由于安全应用接口是由终端软件实现,容易被破解,安全等级不高,并且不专属于某个应用,而是能够为所有应用共同使用,因此不应由安全应用接口进行访问鉴权,而是由安全模块本身通过访问权限授权、签名验证、MAC校验等方式完成安全访问控制。   目前有两个可以参考的技术标准,公开密钥加密标准(PKCS#11)和开放移动终端接口规范(OpenMobileAPI)。前者由RSA实验室提出,定义了一套非常强大的接口功能供应用程序使用,可以满足绝大部分安全应用的需要;而后者由SIMalliance(全球SIM卡制造商协会)提出,设计为允许应用提供商在一个与互联网连接的移动设备上,通过访问SIM卡或其他嵌入式安全模块,实现更为安全的双因素安全认证,以满足NFC、移动支付和身份认证等业务的需要。   应用前景展望   随着移动互联网的发展,高安全应用需求越来越普遍,传统的移动环境身份认证技术已经不能够满足用户的安全要求,因此基于安全模块的PKI身份认证技术有着非常广阔的应用前景。未来的应用场景可以归结为以下几类。    手机金融。使用SIM卡取代USBKEY,在手机终端上完成手机银行、手机证券、第三方支付等金融服务,使得用户可以在手机终端上放心地进行转账、汇款、支付、理财等业务。    移动办公。通过SIM卡的鉴权及签名,在手机终端上安全地完成政府、企业的OA公文流转及审批、邮件收发、日程管理等。    行业应用。目前国家在推行居民健康卡的过程中有这样的需求,随着居民健康档案的电子化后,无论是医生还是居民自身要查看健康档案都必须得到居民的授权,使用我们的方案对居民而言就是一种非常便利的方式。另外,像警务通等业务也有类似需求。   为满足不同应用场景的需要,我们所提出方案具备几种不同形式,能够很好地适应不同业务运营方、不同手机终端、不同应用领域的要求,使得所有用户都能选择合适的方案。    SD卡方案由于终端不需要改造,推广较为方便,因此受到非运营商的业务运营方的青睐。目前国内部分银行已将该方案应用于手机银行领域,但这种方式的缺点是不适用于不支持SD卡的手机,尤其是目前非常普及的iPhone。    SIM卡方案由于可以通过SIM卡实现用户的绑定,同时运营商具备终端定制的能力,因此更受运营商的欢迎,更多应用于运营商主导的应用领域。目前中国电信已经在进行相关产品的原型开发,并准备在翼支付等业务领域进行试点,实现手机终端的安全支付应用。    终端集成安全芯片方案方面,目前国外在NFC全终端方案上正在进行试点,与NFC业务结合完成手机支付、酒店自助入住、自助租车等。此外还有一些变种方案,例如在iPhone上通过在音频口(Square方案)或数据口(iCarte)的专用外设集成安全芯片,实现安全支付等。   随着高安全技术的引入,移动安全环境的建立,用户的移动数字生活必将更加丰富多彩。   结束语   本文创新性地提出了一种高安全的身份认证技术方案,通过专用智能卡安全硬件进行用户私密数据运算及存储,并通过机卡接口实现客户端软件对于安全模块的访问,很好地满足了身份认证技术在机密性、完整性、双向认证、不可抵赖性等方面的要求,在功能、性能等各方面都能很好地适应移动互联网环境下各种高安全要求应用业务的需要。   上述方案的提出,对移动环境下的高安全身份认证技术进行了完善,为运营商和移动业务应用方提供更多的选择。#p#分页标题#e#