一种移动云计算环境下基于otp和用户行为的认证授权方法

文档序号:9379948阅读:752来源:国知局
一种移动云计算环境下基于otp和用户行为的认证授权方法
【技术领域】
[0001]本发明属于云计算安全领域,尤其涉及一种移动云计算环境下基于OTP和用户特征的认证授权方法。
【背景技术】
[0002]自2006年google提出移动云计算概念以来,各类与云计算有关的服务和平台呈现在人们的视野中,由于云服务具有便利性、可扩充性、节约性等特点越来越受到人们的青睐,用户可以将信息的存储和计算放在云端,降低了自身存储和计算资源有限所带来的很多约束。
[0003]随着各种智能终端如智能手机、平板电脑等在人们日常生活中得到了广泛运用,各种基于智能终端的移动云计算服务也相应出现,使得用户可以通过无线网络等使用各种云服务。但是随之而来的云安全的问题也逐渐浮出水面,“云安全”随之成为各界尤为关心的问题。而身份认证作为用户使用云服务的的第一道安全屏障,在“云安全”中具有举足轻重的地位。
[0004]常用的身份认证技术及其优缺点分别如下所述:
[0005]简单口令认证技术:该方法一般以用户名/密码形式来对用户进行认证,只要用户输入了正确的用户名就和密码,就判断为合法用户。但是口令一旦泄露,安全性随即丧失难以抵御重放攻击、猜测攻击和窃听攻击。
[0006]一次性口令认证技术(OTP):通过在认证过程中加入不确定因子,使得每次进行认证口令都不相同,而且每个认证口令只使用一次。OTP认证技术的一次一密的认证方法可以有效保证用户身份的安全性。但是OTP不能有效地抵御小数攻击,并且户的身份标识以明文形式在网络上传输,易被截获,且未实现服务器和客户端的双向认证。
[0007]基于硬件设备的认证技术:指用户通过随身携带身份认证令牌进行身份认证的技术,通常需要与其它身份认证技术一起使用。其提供了更高的安全性,并且能够存储足够大的信息,而且不容易被复制。但要求用户必须随身携带,一旦丢失或损坏则会无法正常登陆,此外该认证技术需要硬件设备,成本较高。
[0008]生物特征识别技术:基于生物特征具有唯一性的生理特性或行为方式做为认证依据,整个认证过程分为四个步骤:生物特征提取、特征模板生成、特征测量与比较和特征匹配。其具有高可靠性和安全性。但该技术目前还不够成熟,且识别设备成本高、稳定性差等问题。

【发明内容】

[0009]本发明的目的是提供一种移动云计算环境下基于OTP和用户行为的认证授权方法,通过本方法将一次性口令认证和用户行为认证相结合,同时运用ECC公钥密码体制保证了信息传输的安全性。
[0010]为了实现上述目的,本发明是通过以下方案实现的:
[0011]1、一种移动云计算环境下基于OTP和用户行为的认证授权方法,该方法步骤如下:
[0012](I)用户注册阶段:
[0013]I)认证授权服务器S利用椭圆曲线密码体制生自己的公钥Spuk和私钥SpA,用户使用客户端C向S发起密钥申请请求,S产生安全椭圆曲线ECC,并连同自己的公钥Spuk —起发送给客户端,C接收并存储S的公钥Spuk,并根据安全椭圆曲线ECC产生自身的公钥Cpuk和私钥Cprii ;
[0014]2)C向S发起注册请求,填写注册的用户账号UID、用户密码PWD、安全密语SPP和安全手机号码PID,C自动获取设备的唯一标识DID (如MAC地址,頂EI号等)和当前注册时间T。,然后利用SHA-256单向散列函数对UID和PWD进行哈希散列运算HASH (UID I PffD),并存储在本地操作系统的安全区中;
[0015]3)C 用 S 的公钥 3_对1]10、拟3!1(?仰)、拟3!1(3??)、?10、010、(:_和1'。加密运算即ENC(UID, HASH(PffD),HASH(SPP),PID, DID, Cpuk,T0)将得到的结果发送到 SI,然后后 S 利用Sprk解密得到UID、HASH (SPP)、PID、DID、Cpuk和T。,并检查UID是否已被注册,若已注册则通知用户重新注册;否则将解密所得到的各项信息存储到数据库;
[0016]4)S通过计算HASH(DID| |Τ。)生成一次性口令0ΤΡ。,并利用C的公钥认证阶段Cpuk进行加密运算ENC (HASH (DIDl T0))发送给C,C利用私钥Cprii进行解密运算DEC (ENC (HASH (DID T0)))获得HASH (DID T。),存储到操作系统的安全区中;
[0017](2)认证阶段(以第一次登录为列):
[0018]I)用户填写使用客户端C填写UID和PWD,然后计算出HASH(UID I PffD)比较与存储在操作系统安全区中的HASH (UIDl PffD)比较:若安全区中的HASH (UID | PffD)值为空,则代表用户可能使用了新的移动设备,转步骤¢);若不为空且两者相等,则继续进行下面
(2)的认证;若不相等,报告用户用户名或密码错误;
[0019]2) C使用S的公钥Spuk对UID、DID和HASH (DID I T0)和当前登录时间T1进行加密即ENC (UID, DID, HASH (DID | | T0),T1),C暂存T1,并将加密后的信息发送给S,S用自己的私钥 Sprk 对 ENC(UID,DID, HASH (DID T0), T1)进行解密获得 UID、DID、HASH (DID | T0)和 T1,
暂存
[0020]3) S利用解密获得的UID和DID获得存储在数据库中的登录时间T。,并计算HASH (DID I T。),若该值和从客户端解密得到的HASH (DID I T0)不相等,则通知客户端身份认证失败;否则计算HASH (DID I I T1)的值,并利用公钥Cpuk对T。、T1和HASH (DID | | T1)进行加密运算,即 ENC (HASH(DID | | T1),T0, T1),并发送给 C ;
[0021 ] 4) C利用自己的私钥Cprk进行解密运算DEC (ENC (HASH (DID | | T1),T。,T1))获得HASH (DID I I T1)、T。和T1, C将T1和之前暂存的T1比较若相等则完成对服务器身份的验证,并暂存HASH (DID I |!\),C再利用S的公钥Spuk对UID、DID和T。进行加密即ENC (UID,DID,T。),发送给S;
[0022]5) S 利用 Sprii 对 ENC (UID,DID, T0)进行解密获得 UID、DID 和 T。,若 T。与通过 UID和DID获得存储在数据库中的登录时间T。相等,则用T1代替T。存入数据库,完成对客户端的身份验证,发送认证成功的消息给客户端,否则认证失败,C收到认证成功的消息后用HASH (DID T1)代替HASH (DID I T0)存储到系统的安全区中,完成身份认证;
[0023]6) C向S发起密钥申请请求,S产生安全椭圆曲线ECC和公钥Spuk —起发送给客户端,C接收并存储S的公钥Spuk,并根据安全椭圆曲线ECC产生自身的公钥Cpuk和私钥CpA,然后 C 用 S 的公钥 Spuk 对 UID、HASH (PWD)、DID、Cpuk 和 T。进行加密运算即 ENC (UID,HASH (PWD),DID, Cpuk, T0)将得到的结果发送到S ;
[0024]7) S 对 ENC (UID,HASH(PffD),DID, Cpuk, T0)进行解密,S 通过 UID 查询数据库获得HASH(PffD)与解密获得的HASH(PWD)比较,若一致则将该设备的DID、Cpuk和T。存储到数据库,计算HASH (DID I T0)加密后发送给C,C解密获得HASH (DID T0)并和HASH (UID PWD)一起存储到操作系统的安全区中,并转到步骤(I)进行登录验证操作;否则提示客户端用户名或密码错误。
[0025](3)行为认证阶段
[0026]行为认证主要包括对行为状态BS,行为内容BC和习惯BH进行认证,其主要作用是保证用户行为操作的安全性与合法性。其中BS主要包括使用云服务时登录的地点P,登录的时间t ;用户的行为内容即用户主要使用了移动云服务哪些功能e和访问了哪些资源r,H主要包括用户访问移动云服务资源的顺序s和使用移动云服务资源占用的时间At。
[0027]I)用户注册登陆后,移动云计算服务管理中心,将用户的历史行为信息记录到用户行为日志数据库,其中用户的历史行为信息包括上述的P、t、e、r、s和Λ t等。
[0028]2)在用户使用移动云服务满一定期限T后,用户行为特征分析挖掘代理对用户的历史行为进行分析挖掘处理,形成用户的正常行为模式知识库;
[0029]3)对使用期限满T后的用户,当访问云服务时,再通过(2)中所述的身份认证后,进行行为状态BS的再认证,若发现登录的时间地点〈P,t>与知识库中正常模式进行相似度计算后低于阈值V1,则需进行身份再认证转6);否则进行行为内容BC的认证。
[0030]4)若发现用户行为内容未出现在知识库中,则需进行身份再认证转6);否则进行行为习惯BH的认证。
[0031]5)若发现用户调用资源的顺序s与知识库中的相似度低于阈值V2,或者用户访问某一资源的时间与知识库中的时间差值绝对值高一某一阈值V3,则需进行身份再认证转6);
[0032]6)身份认证授权服务器S要求用户输入安全密语SPP,客户端C将HASH(SPP)使用Spuk加密即ENC (HASH(SPP)),然后发送给S,S用S一解密后将其与数据库中的HASH(SPP)比较,若相等,则生成一次性口令P,暂存P,否则报告用户安全密语错误。然后根据用户的UID检索出数据库中用户的安全号码PID,将P以短信的形式发送到用户的安全手机上,用户输入P后,客户端将P使用服务端密钥Spuk加密后发送到服务端,服务端解密后与暂存的相比较,若相等,则通知移动云服务管理中心可以提供服务,否则报告用户动态口令错误,拒绝提供服务。
[0033]本发明与一般身份认证方法相比主要具有以下优点:
[0035]与传统的OTP相比能够有效抵御重放攻击和小数攻击:本方法运用设备的标识信息DID和每次登录时间T1进行散列后生成一次性口令因此口令一次性有效,攻击者截获的信息不可重用。并且由于散列后的信息经过加密处理,拦截者没有客户端的私钥无法对服务器发送的信息进行解密,无法伪装成服务器与客户端通信,解决了经典的OTP算法中S/Key方案的不能抵抗小数攻击的问题。
[0036]可以使用多个移动终端进行登录:用户在某一个移动终端注册一次后,可以在多个移动终端上使用云服务,而不需重新注册账户,当在新终端上使用云服务时,客户端会向服务器申请密钥存于本地,在服务端通过对用户的用户名和密码认证后,用户可以在新的终端上使用云服务。
[0037]实现了服务端与客户端的双向认证:客户端通过暂存本次在该设备登录时间T1,再对服务其发送过来的信息进行解密后,若解密获得的本次登录时间与T1相等,则完成对服务器端的认证;服务器利用上次用户在该设备登录的时间T1 i,在对客户端发送过来的信息进行解密后,若获得的上次用户登录时间与T1 !相等,则完成对客户端的认证。
[0038]对用户的行为进行认证:通过对用户历史行为数据的分析挖掘后,获得用户正常行为模式的知识库,然后根据知识库分别从用户的行为状态、行为内容和行为习惯三个方面进行认证
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1