基于用户使用移动设备习惯的隐式认证初探
2012-04-29杨建强方磊
杨建强 方磊
摘要: 在移动设备(特别是手机)上输入密码是非常麻烦的。随着越来越多的人使用移动设备访问Internet服务,或者从事移动商务活动,人们希望能够简化身份认证操作。为此,提出一种新的身份认证方法——隐式认证,它直接利用用户使用设备的习惯来认证用户,免除了用户输入密码的麻烦;给出了可用于隐式认证的数据及其来源,探讨了可用于隐式认证的具体方法和隐式认证的系统体系结构。所述技术对于隐式认证的进一步研究和应用具有实际意义。
关键词: 隐式认证; 移动设备; 多模态; 入侵检测方法
中图分类号:TP181文献标志码:A文章编号:1006-8228(2012)03-07-03
Implicit authentication based on user habits of using mobile device
Yang Jianqiang, Fang Lei
(School of Mathematics and Computer Science, Xiangfan University, Xiangfan, Hubei 441053, China)
Abstract: It is very troublesome to enter the password on mobile devices (especially cell phones). As more people use mobile devices to access Internet services, or engage in mobile commerce, people want to simplify the authentication operation. The authors present in this paper an implicit authentication method, which authenticates the user based on the users habits of using their devices, and eliminates the trouble of entering password. In this paper, the data for implicit authentication and their sources are given, the specific methods for implicit authentication and the system architecture are discussed. This paper is significant for further research and practical applications of implicit authentication.
Key words: Implicit Authentication; Mobile Device; Multi-modal; Intrusion Detection Method
0 引言
随着能够访问Internet的移动设备(特别是智能手机)的大规模市场普及,越来越多的人开始使用移动设备上网,访问Internet上的各种服务,或者从事移动商务活动。Internet上的许多服务需要验证用户的身份,比如访问电子邮件、登录博客/空间等。
Internet上目前最常见的认证方法是验证用户名/密码对。这种方法存在着一些弱点,有时并不可靠。因此,在重要的电子商务中通常采用具有高可靠性的认证方法,比如使用具有安全ID的设备并配合密码进行的双要素认证。这种认证方法已经成为业界标准。不管怎样,目前得到广泛采用的认证方法通常都把密码作为一个必要的因素。
我们知道,在桌面电脑上输入密码很容易,但是,在输入界面受到限制的移动设备上输入密码却比较麻烦。根据国外一项对iPhone、BlackBerry手机用户的市场调查,有40%的用户平均每天输入一次密码,在10次密码输入中,有56%的用户至少有一次输入错误。用户发现在移动设备上输入密码甚至比网络覆盖不足、设备屏幕过小以及较差的语音质量更糟糕。因此,随着访问Internet的移动设备的增多,人们希望有一种新的认证方法,它不需要用户的参与或者只需要用户很少的参与就能够完成认证。
本文提出一种新的认证方法,它不需要用户输入密码,而是利用所观察到的用户行为来认证用户,或者说利用用户使用移动设备的习惯来认证用户,我们称这种方法为隐式认证。尽管隐式认证能够应用到任何类型的计算机上,不过我们认为它更适用于移动设备—那些通常具有有限的文字输入能力,却能够访问丰富信息的计算机,比如智能手机。
我们认为,成熟的隐式认证技术将至少有如下三个方面的应用:
⑴ 作为一种基本的认证方法替代常见的密码认证,免除用户输入密码的负担。比如当用户通过移动设备访问在线邮件或登录博客/空间/论坛时,服务器利用隐式认证技术完成对用户身份的确认,用户不再需要输入用户名和密码等登录信息。很明显,隐式认证使得在移动设备上访问这些服务更方便了。另外,随着经常使用的服务不断增多,用户需要记住很多的用户名/密码对,为了减轻记忆负担,许多用户可能在多个服务中使用相同的用户名/密码对,可能选择容易记忆的密码,有时候甚至把密码随便记在纸上。这会大大降低了密码认证的可靠性。因此,在这些场合下使用隐式认证是非常合适的,它免除了用户记忆密码的负担和输入密码的麻烦。另外,在那些使用密码认证的小额购物网站上也可以用隐式认证来替代密码认证。
⑵ 隐式认证可以作为常见的密码认证的补充,使得最终的认证具有双要素认证的效果,更加安全可靠。无论用户使用桌面电脑还是使用移动设备访问Internet上的某些需要认证身份的服务,用户按常规方式输入登录信息(用户名/密码等),服务器同时利用隐式认证技术来进一步确认用户的身份,这就使得用户的身份认证更加可靠。因此这种认证方法,既可以在那些大额购物网站上采用,也可以在移动商务服务,比如手机银行、手机炒股、手机彩票、GPS位置服务、移动OA等移动商务服务上采用。
⑶ 为信用卡业务提供额外的担保,防止欺诈事件的发生。对于信用卡诈骗或者信用卡丢失给用户带来损失的事件,如果用户能够利用信用卡隐式认证作用户身份认证的补充,就可以在很大程度上减少用户的损失。
1 隐式认证的研究现状
实际上,在桌面电脑以及其他一些强调安全的领域(如军事、保密部门),已经出现了一些类似“隐式认证”的技术。比如一些采用生物特征识别技术的认证方法,特别是基于击键力度、节奏和打字模式的识别技术就更可以看成是隐式认证技术[1]。因为这类技术是基于对用户行为的持续观察来认证用户身份的,这与我们提出的观点一致。步态识别也属于“隐式认证”技术。步态识别是一种较新的生物特征识别技术,它根据人们的走路姿势实现对个人身份的识别或生理、病理及心理特征的检测[2]。在诸如军事基地、停车场、机场、高档社区等重要场所,步态识别不需要任何交互性接触就可以实现远距离情况下的身份识别。有些学者尝试综合多种生物特征来识别用户的身份,比如,一些研究工作尝试结合多种生物特征识别结果以产生一个最终的认证分数,并根据认证分数来确定用户身份的真实性程度[3]。所有这些基于生物特征识别技术的认证方法都具有隐式认证的特征—不需要用户的参与或者只需要用户很少的参与就能够完成认证。
并不是所有隐式认证都与生物特征识别技术有关。基于用户的位置来确定访问权限的技术,很多公司或组织的系统采用了这样的技术。如果员工在办公室使用电脑,则允许其访问公司内部数据,而如果员工在家里使用电脑,则禁止访问。这样的系统显然也具有隐式认证的特征。
尽管上述“隐式”认证技术目前在移动设备领域比较少见,不过已经有很多人开始尝试把它们应用到移动领域。比如有学者尝试基于移动设备的位置(GPS)来确定用户对特定资源的访问权限;有学者研究利用步态识别来检测设备是否正在被其主人使用[4];还有学者提出了多模态认证方法,这种方法结合许多不同的、低可信度的生物识别信息流来产生一个持续的、对当前用户身份的正面肯定[5]。对于本文提出的、利用用户使用移动设备的习惯来认证用户的隐式认证方法,目前尚未有人研究。
2 基于用户使用移动设备习惯的隐式认证的技术分析
要进行隐式认证,必须要有用于认证的数据。智能手机是目前使用用户最多的、可访问Internet的移动设备。对于智能手机来说,用于认证的数据可以来自设备自身,也可以来自移动网络运营商,甚至来自Internet。这些数据中,有些数据的来源可能有多个,而有些数据是设备特有的,依赖于特定的硬件类型和使用方式。
来自运营商的数据有:用户设备所选择的基站、用户呼出/呼入的电话号码及通话模式(通话时间、时间间隔等)、用户发送/接收的短消息号码及模式(时间、频度等)、甚至用户的语音数据、用户访问Internet的模式(如果用户通过移动网络访问Internet,运营商可以通过检查他们的DNS请求和网络报文来知道他们的访问模式)。来自设备自身的数据有:用户拨打/接收的电话号码以及发送/收到的短消息号码、闹铃设置时间、用户操作电子邮件的习惯、来自GPS的定位数据(如果设备具有GPS功能)、WiFi/蓝牙连接/配对或USB连接数据(如果设备具有这些功能)、在WiFi中对一个已知的访问点的认证数据、设备与某个已知PC的同步情况、应用程序的使用数据(比如浏览模式和安装的软件)、键盘输入模式或语音数据、触摸屏,获得用户的指纹等等。来自网络的数据有:用户访问网络服务的各种相关数据。
理论上,上述数据都可以作为认证的依据,但认证中考虑所有数据显然是不现实的。另外,设备/用户不同,用户使用设备的习惯、访问网络的行为方式等也会不同。所以,可以用于刻画用户行为特征的数据也不尽相同。因此,实际用于认证的数据最好是带有普遍性的数据,而不是设备或用户或网络所特有的。
隐式认证中可采用的认证方法,我们认为可以从如下两个方面考虑:一是借鉴已有的“隐式认证”技术,比如前面提到的多模态认证方法;二是借鉴入侵检测技术。目前有很多入侵检测方法,有些检测方法比较适合用于隐式认证中。下面我们逐一探讨。
基于多模态认证方法的研究结果,我们初步构想了一个隐式认证方法,它利用前面提到的相关数据,根据用户最近的行为或活动为每个用户计算并维护一个认证分数。该方法根据事件(用户行为)是正面的还是负面的来增加或减少用户的认证分数。正面的事件如习惯性的行为,当监视到习惯性的事件的时候就增加认证分数;负面的事件指那些对于用户来说并不常见的事件,或者与某种常见的攻击行为相关联的事件。当认证分数下降超过了特定事件的阈值,该事件将不再被执行,除非用户显式地、明确地认证他自己,比如输入密码。正确的显式认证是一个正面事件,而失败的显式认证是一个负面事件。图1给出了这种方法中可以采用的机器学习算法框架。
[过去的
行为][学习算法] [评分算法][最近的
行为] [分数] [用户
类型]
图1机器学习算法框架
图1中,用户模型是从用户过去的行为获得的,它能够刻画出用户的个人行为模式。评分算法检查用户模型和用户最近的行为,并输出一个认证分数以指出用户身份真实的可能性。方法中使用一个阈值对应合法用户分数的最低值。阈值也可以因不同的应用而有所不同,这取决于具体的应用是否是安全敏感的。很明显,此处用户模型的正确创建和评分算法的合理设计是获得准确认证分数的关键,当然也是准确确定用户身份是否合法的关键。
另外,隐式认证可以借鉴的是入侵检测技术中的方法。入侵检测采用的方法通常可以分为两类:误用检测和异常检测。误用检测需要首先定义入侵行为特征,然后监视系统中是否出现了这样的行为特征,当监测的用户或系统行为与某个已定义的入侵特征匹配时,就认为发生了入侵;异常检测需要首先定义正常行为特征,当用户活动或系统行为与正常行为有重大偏离时即被认为是入侵。很明显,隐式认证应该采用误用检测方法,不同之处只是把定义入侵行为特征改成定义用户的习惯行为特征。
常用的误用检测方法有基于条件概率的误用入侵检测、基于专家系统的误用入侵检测、基于状态转移的误用入侵检测、基于键盘监控的误用入侵检测,以及基于模型的误用入侵检测等[6]几种。以基于条件概率的误用入侵检测方法为例,该方法将入侵方式对应于一个事件序列,然后通过观测事件发生情况来推测入侵的出现。在隐式认证中可以采用同样的方法,把用户的行为对应于一个事件序列,然后通过观测事件发生情况来推测用户身份的真实性。这种方法的原理是利用外部事件序列,根据贝叶斯定理进行推理判断用户身份的真实性。
令ES表示事件序列,先验概率为P(Authentication),后验概率为P(ES|Authentication),事件出现的概率为P(ES),则
通常可以给出先验概率P(Authentication),对用户行为报告数据进行统计处理得出P(ES|Authentication)和P(ES|-Authentication),于是可以计算出:
因此,可以通过对事件序列的观测推算出P(Authentication|ES),它表示当事件序列ES发生后用户身份真实的可能性。当然,其他误用检测方法也都有应用到隐式认证中的可能。
实际上,即使已有的“隐式认证”技术也或多或少采用了与入侵检测技术相似或相同的方法,所以我们刚才提到的两类可以借鉴的技术并非截然不同,而是存在着重叠或交叉。
3 隐式认证系统体系结构分析
认证包括认证结果的产生(认证决断)和认证结果的使用(认证消费)两个方面。对于我们提出的隐式认证,认证的决断者可以是设备本身,也可以是运营商或者其他可信的第三方。这通常与认证所依赖的数据来源有关,另外,也可能与认证结果的使用者和所采用的特定的隐式认证方法有关。认证的消费者包括:⑴ 移动设备(比如,设备可能需要首先确认用户的身份合法才允许使用某些特定的应用);⑵ 希望认证用户的服务提供者(这是很显然的,如前面提到的电子邮件服务、博客/空间、论坛以及在线银行站点)。如果认证的决断者是设备自身,保障认证结果的完整性是很重要的,特别是当认证的消费者不是设备本身的时候,比如是Internet上的服务。此时,可以借助设备的SIM卡对认证结果签名,随后把签名后的数据发送到希望认证用户身份的服务提供者那里。这种方法既保护了用户的隐私,又能够防止对服务器的欺骗。不过,这种方法不能防止设备被盗时非法用户以合法的方式使用该设备。也就是说,如果设备被盗,存储在设备中的数据以及用户的行为模式信息也可能被盗。非法用户可能利用这些信息来模仿合法用户。
鉴于运营商和移动用户之间的信任关系以及自然的通信能力,运营商很适合作为认证的决断者,给出认证结果。运营商也可能简单地把数据提供给可信的第三方,委托第三方分析数据并做出认证结论,此时第三方就是认证决断者。如果采用把数据报告给可信的第三方的方法,用户的隐私将是一个需要关注的问题。解决这个问题的方法有:⑴从报告的数据中删除可以辨识用户身份的信息及重要数据;⑵使用别名替代真实的称谓,比如,“电话号码A,位置B,区号D”;⑶采用粗粒度数据或汇总数据,而非详细精确的描述。
无论如何,隐式认证的系统体系结构是灵活的,这也决定了隐式认证的应用将是广泛的。
4 结束语
在移动设备上使用隐式认证,可以免除用户记忆密码的负担和输入密码的麻烦,从而使用户可更方便地访问Internet上的服务。隐式认证还可以和常见的密码认证一起使用,使得最终的认证具有双要素认证的效果。隐式认证甚至可以为信用卡业务提供额外的担保。因此,对隐式认证的研究是非常有意义的。本文提出了隐式认证的概念,探讨了可用于隐式认证的具体方法和隐式认证系统的体系结构。目前,对隐式认证的研究也只是刚开始,期待本文能起到抛砖引玉的作用。
参考文献:
[1] 田启川,张润生.生物特征识别综述[J].计算机应用研究,2009.26
(12):4401~4406
[2] 王科俊,侯本博.步态识别综述[J].中国图象图形学报,2007.12(7):1157~1160
[3] J. Bigun, J. Fierrez-Aguilar, J. Ortega-Garcia, and J.
Gonzalez-Rodriguez. Combining biometric evidence for person authentication[J]. Advanced Studies in Biometrics, 2005.
[4] D. Gafurov, K. Helkala, and T. Søndrol. Biometric gait authenti cation using accelerometer sensor. JCP, 1(7):51~59,2006.
[5] R. Greenstadt and J. Beal. Cognitive security for personal devices[C].The First ACM Workshop on AISec,2008.
[6] 段云所,魏仕民,唐礼勇等.信息安全概论[M].高等教育出版社,2003.