具体实施方式
为更进一步阐述本发明为实现预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明的具体实施方式、结构、特征及其功效,详细说明如后。
本发明实施例所提供的用户帐号的保护方法可应用于如图1所示的应用环境中,实现对用户帐号的保护。如图1所示,用户终端100、服务器200位于无线网络或有线网络中,通过该无线网络或有线网络,用户终端100与服务器200进行数据交互。
用户终端100可以包括智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机、台式机计算机、车载电脑、一体机等等。
图2示出了一种服务器的结构框图。如图2所示,服务器200包括:存储器201、处理器202以及网络模块203。
可以理解,图2所示的结构仅为示意,服务器200还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。另外,本发明实施例中的服务器还可以包括多个具体不同功能的服务器。
存储器201可用于存储软件程序以及模块,如本发明实施例中的用户帐号的保护方法及装置对应的程序指令/模块,处理器202通过运行存储在存储器201内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现本发明实施例中的用户帐号的保护方法。存储器201可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器201可进一步包括相对于处理器202远程设置的存储器,这些远程存储器可以通过网络连接至服务器200。进一步地,上述软件程序以及模块还可包括:服务模块221以及操作系统222。其中操作系统222,例如可为LINUX、UNIX、WINDOWS,其可包括各种用于管理系统任务(例如内存管理、存储设备控制、电源管理等)的软件组件和/或驱动,并可与各种硬件或软件组件相互通讯,从而提供其他软件组件的运行环境。服务模块221运行在操作系统222的基础上,并通过操作系统222的网络服务监听来自网络的请求,根据请求完成相应的数据处理,并返回处理结果给客户端。也就是说,服务模块221用于向客户端提供网络服务。
网络模块203用于接收以及发送网络信号。上述网络信号可包括无线信号或者有线信号。在一个实例中,上述网络信号为有线网络信号。此时,网络模块203可包括处理器、随机存储器、转换器、晶体振荡器等元件。
第一实施例
图3为本发明第一实施例提供的用户帐号的保护方法的流程图。如图3所示,本实施例的用户帐号的保护方法包括以下步骤:
步骤S11,当服务器接收用户终端发送的包含用户帐号的登录请求时,服务器根据所述用户帐号,获取预置的检测周期内所述用户帐号所进行的所有行为的特征信息及次数。
具体的,服务器200接收用户终端100发送的登录请求,该登录请求中包含用于登录的用户帐号及密码,服务器200根据该登录请求验证用户终端100的身份,同时发起对该用户帐号异常状态的检测。其中,用户帐号可为用户终端的浏览器或应用程序客户端的用户账号,例如:用户终端中的即时通信应用程序客户端的用户登录帐号。在用户第一次使用该帐号信息时,用户终端会将帐号信息以及用户终端的基本信息上报给服务器,服务器会将其记录在帐号列表中,帐号列表中记录了与每个帐号信息对应的所有用户终端的基本信息。可以理解的,服务器200也可根据预置的检测规则,定期(例如:每周)对用户帐号进行异常状态的检测。
服务器200在发起对该用户帐号异常状态的检测后,可根据预置的检测规则,收集登录请求中的用户帐号在预置的检测周期内所进行的所有行为的特征信息,统计该用户帐号所进行的所有行为的总次数。其中,该用户账号的所有行为的特征信息是符合该检测规则规定的检测标准的所有行为的特征信息,例如:如果检测标准为该用户帐号在检测周期内的登录行为,则所有行为的特征信息可包括:该用户帐号每次登录的登录地;如果检测标准为该用户帐号在检测周期内的使用预置客户端程序进行登录的行为,则所有行为的特征信息可包括:用于登录的预置客户端程序的版本号;如果检测标准为该用户帐号在检测周期内的登录后获取业务的行为,则所有行为的特征信息可包括:登录后获取的业务的类型;如果检测标准为该用户帐号在检测周期内的通过不同的用户终端进行登录的行为,则所有行为的特征信息可包括:用于登录的用户终端的设备标识等等。其中设备标识可包括:用户终端的机器码、MAC(Media Access Control,介质访问控制)地址等。可以理解的,除上述几种特征信息外,还可包括其他与上述几种特征信息相类似的特征信息。
于本实施例一具体实施方式中,服务器200也可根据预置的检测规则,收集登录请求中的用户帐号在本次登录前的有记录的所有行为的特征信息。
步骤S12,根据所述行为的特征信息及次数,计算所述用户帐号状态存在异常的概率。
可以理解的,通常一个用户帐号被合法用户使用时,其行为轨迹一般具有规律性,而当该用户帐号被非法用户盗用后,非法用户为了追求利益的最大化并尽可能的逃避法律的制裁,其行为轨迹会呈现出一种无序化,比较突出的体现在登录地上,例如:在A地窥探他人隐私、B地非法侵占财产、C地向他人发送广告、D地从事色情等等。
因此,服务器200可通过对收集的用户帐号在预置的检测周期内所进行的所有行为的特征信息及次数进行分析,获取用户帐号行为轨迹及其有序度,并进而根据该有序度计算出该用户帐号状态存在异常的概率。其中用户帐号行为轨迹是用户账户多个行为的离散序列。
步骤S13,根据所述概率,确定所述用户帐号的异常指数。
步骤S14,根据所述异常指数对应的预置处理规则,对所述用户帐号进行保护处理。
于本实施例一具体实施方式中,可根据计算出的用户帐号状态存在异常的概率值的大小,在服务器200中预置不同的异常指数及其对应的处理规则。服务器200根据计算出的概率值确定对应的异常指数及其对应的处理规则,并按照该处理规则,对用户帐号进行保护处理。
本发明实施例提供的用户帐号的保护方法,通过当服务器接收用户终端发送的包含用户帐号的登录请求时,根据该用户帐号,获取预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数,根据行为的特征信息及次数,计算该用户帐号状态存在异常的概率,根据概率,确定该用户帐号的异常指数,根据异常指数对应的预置处理规则,对该用户帐号进行保护处理,由于是根据预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数计算该用户帐号状态存在异常的概率,因此可有效避免恶意用户通过拨号、代理IP等手段绕开检测,从而可提高用户帐号的保护效率。
第二实施例
图4为本发明第二实施例提供的在用户终端内进行用户帐号的保护方法的流程图。如图4所示,本实施例的用户帐号的保护方法包括以下步骤:
步骤S21,当服务器接收用户终端发送的包含用户帐号的登录请求时,服务器根据所述用户帐号,获取预置的检测周期内所述用户帐号所进行的所有行为的特征信息及次数。
本步骤具体可参考第一实施例的相关内容,此处不再赘述。
步骤S22,根据所述行为的特征信息及次数,计算所述用户帐号的行为轨迹熵。
具体的,如图5所示,本步骤包括以下步骤:
步骤S221,根据所述特征信息对所述所有行为进行分类,并分别统计所述检测周期内的不同类型的行为各自出现的次数。
具体的,服务器200可根据预置的分类规则以及行为特征信息,对检测周期内用户帐号所进行的所有行为进行分类,并分别统计不同类型的行为各自出现的次数。举例来说,如果所有行为的特征信息为该用户帐号每次登录的登录地,则根据登录地对所有的行为进行分类,将在同一个登录地登录的行为视为一类;如果所有行为的特征信息为用于登录的预置客户端程序的版本号,则根据版本号对所有的行为进行分类,将通过同一个版本号的客户端程序进行登录的行为视为一类;如果所有行为的特征信息为登录后获取的业务的类型,则根据业务类型对所有的行为进行分类,将获取同一业务的行为视为一类;如果所有行为的特征信息为用于登录的用户终端的设备标识,则根据设备标识对所有的行为进行分类,将通过相同设备标识的设备进行登录的行为视为一类。
步骤S222,根据所述所有行为的次数以及所述不同类型的行为各自出现的次数,分别计算所述不同类型的行为各自在所述检测周期内的出现概率。
具体的,服务器可根据以下公式1分别计算不同类型的行为各自在检测周期内的出现概率。
公式1:某一类型的行为在检测周期内出现的概率P(x)=某一类型的行为在检测周期内的出现次数S(x)/所有行为的总出现次数S
以登录地为例,假设服务器200获取用户帐号的16次登录中有8次是在A地方登录、4次在B地方登录、2次在C地方登录、2次在D地方登录,则根据上述公式1,可计算获得该用户帐号分别在A、B、C、D四地登录的行为各自的出现概率分别为:
登录地A出现的概率P(A)=登录地A出现次数/总登录次数=8/16;
登录地B出现的概率P(B)=登录地B出现次数/总登录次数=4/16;
登录地C出现的概率P(C)=登录地C出现次数/总登录次数=2/16;
登录地D出现的概率P(D)=登录地D出现次数/总登录次数=2/16。
步骤S223,根据所述出现概率,分别计算所述不同类型的行为各自的信息熵。
信息熵是信息论中用于度量信息量的一个概念。一个系统越是有序,信息熵就越低,反之,一个系统越是混乱,信息熵就越高。所以,信息熵也可以说是系统有序化程度的一个度量。于本实施例一具体实施方式中,服务器200可通过计算用户帐号的行为轨迹熵,获取该用户帐号状态存在异常的概率。
具体的,可先根据步骤S222中计算的不同类型的行为的出现概率,通过以下公式2分别计算该等不同类型的行为各自的信息熵。
公式2:信息熵H(x)=-P(x)log(2,P(x))
仍以上述步骤S222中所举的登录地为例,根据在步骤S222计算获得的该用户帐号在A、B、C、D四地登录的出现概率,可通过上述公式2,分别计算获得该用户帐号在A、B、C、D四地登录的行为各自的信息熵为:
H(A)=-P(A)log(2,P(A))=-(1/2)log(2,(1/2))=1/2;
H(B)=-P(B)log(2,P(B))=-(1/4)log(2,(1/4))=1/2;
H(C)=-P(C)log(2,P(C))=-(1/8)log(2,(1/8))=3/8;
H(D)=-P(D)log(2,P(D))=-(1/8)log(2,(1/8))=3/8。
步骤S224,根据所述信息熵,计算所述用户帐号的行为轨迹熵,以获取所述用户帐号状态存在异常的概率。
具体的,可根据步骤S223中计算的不同类型的行为各自的信息熵,通过以下公式3计算用户帐号的行为轨迹熵,以获取该用户帐号状态存在异常的概率。
公式3:行为轨迹熵
仍以上述步骤S222与步骤S223中所举的登录地为例,根据在步骤S223计算获得的该用户帐号在A、B、C、D四地登录的行为各自的信息熵,可通过上述公式3,计算出该用户帐号的行为轨迹熵为:
步骤S23,将所述行为轨迹熵的值与预置的多个数值区间进行匹配,根据所述行为轨迹熵的值与所述多个数值区间的匹配情况,确定所述用户帐号的异常指数。
具体的,服务器200中可预置多个数值区间,每个数值区间与一个异常指数相对应。服务器200将计算的行为轨迹熵的值分别与预置的多个数值区间进行匹配,根据该行为轨迹熵的值与多个数值区间的匹配情况,确定用户帐号的异常指数。
步骤S24,根据所述异常指数对应的预置处理规则,对所述用户帐号进行保护处理。
具体的,服务器200中可预置记载了异常指数及其对应的预置处理规则的处理表。于本实施例一具体实施方式中,服务器可根据该处理表,当异常指数为第一异常指数时,根据第一异常指数对应的预置处理规则,向用户终端发送提示信息,以提示用户修改密码。当异常指数为第二异常指数时,根据第二异常指数对应的预置处理规则,强制用户终端退出登陆,并通过与用户预约的联系方式向用户发送验证码,提示用户在用户终端中输入验证码并进行再次登陆。当异常指数为第三异常指数时,根据第三异常指数对应的预置处理规则,强制用户终端退出登陆,并向与用户预约的手机号码发送短信,提示用户通过短信验证以完成再次登陆。当异常指数为第四异常指数时,根据第四异常指数对应的预置处理规则,强制用户终端退出登陆,并向用户终端发送提示信息,提示用户修改密码后使用修改后,在用户终端中输入修改后的密码并进行再次登陆。当异常指数为第五异常指数时,根据第五异常指数对应的预置处理规则,禁止通过用户帐号进行任何操作。由于根据预置的异常指数对应的预置处理规则,将用户帐号进行保护处理,可针对用户帐号的具体安全状态,为用户帐号提供不同层次的保护,从而可提高用户帐号的保护效率。
可以理解的,如上述所举的例子,用户帐号的行为是多种多样的,于本实施例一具体实施方式中,在一次检测中,服务器200可只收集上述例举的多种行为中的一种行为的特征信息,统计该种行为在检测周期内的次数,并根据收集的数据以及统计的次数对用户帐号是否存在状态异常进行检测。
于本实施例其他具体实施方式中,在一次检测中,服务器200可收集上述例举的多种行为中的某几种行为的特征信息,分别统计这几种行为在检测周期内各自出现的次数,并根据收集的数据以及统计的次数分别计算用户帐号的不同种类行为各自的行为轨迹熵,并根据预置的权值,将多个行为轨迹熵进行权值计算,然后根据计算后的数值来判断用户账号的状态是否存在异常。例如:服务器可首先分别收集用户帐号的登录行为、登录后的业务获取行为的特征信息,分别统计登录行为与业务获取行为各自的次数;其次,根据登录地对登录行为进行分类,并分别统计在不同登录地进行登录的登录行为各自出现的次数,根据业务类型对业务获取行为进行分类,并分别统计获取不同类型业务的业务获取行为各自出现的次数;再次,根据收集的登录行为的特征信息以及统计的各类登录行为出现的次数计算获取登录行为的行为轨迹熵,根据收集的业务获取行为的特征信息以及统计的各类业务获取行为出现的次数计算获取业务获取行为的行为轨迹熵;然后,根据预置的权值,对登录行为的行为轨迹熵和业务获取行为的行为轨迹熵做加权计算,并将计算后的值与预置的多个数值区间进行匹配,根据行为轨迹熵的值与多个数值区间的匹配情况,确定用户帐号的异常指数;最后根据异常指数对应的预置处理规则,对用户帐号进行保护处理。
可以理解的,本实施例也可应用于如图6所示的应用环境中。如图6所示,用户终端100、接入服务器210、检测服务器集群220、以及异常帐号处理服务器230位于无线或有线网络中。上述四种设备通过无线或有线的方式进行数据交互。接入服务器210接收用户终端100的登录请求,同时将该用户终端的用户帐号发送给检测服务器集群220。检测服务器集群220根据该用户帐号收集该用户帐号在预置的检测周期内进行的各种行为的特征信息,统计该用户帐号在检测周期内的进行各种行为的次数,并根据收集的特征信息及统计的次数,计算该用户帐号的行为轨迹熵,然后将用户帐号及其行为轨迹熵发送给异常帐号处理服务器230。异常帐号处理服务器230根据接收的行为轨迹熵及其对应的预置处理规则,对接收的用户帐号进行保护处理。
本发明实施例提供的用户帐号的保护方法,通过根据用户帐号,获取预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数,根据行为的特征信息及次数,计算该用户帐号状态存在异常的概率,根据概率,确定该用户帐号的异常指数,根据异常指数对应的预置处理规则,对该用户帐号进行保护处理,由于是根据预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数计算该用户帐号状态存在异常的概率,因此可有效避免恶意用户通过拨号、代理IP等手段绕开检测,从而可提高用户帐号的保护效率。
第三实施例
图7为本发明第三实施例提供的用户帐号的保护装置的结构示意图。本实施例提供的用户帐号的保护装置可以用于上述实施例中的用户帐号的保护方法。如图7所示,用户帐号的保护装置30包括:获取模块31、概率计算模块32、异常指数确定模块33、以及处理模块34。
其中,获取模块31,用于接收用户终端发送的包含用户帐号的登录请求时,服务器根据所述用户帐号,获取预置的检测周期内所述用户帐号所进行的所有行为的特征信息及次数。
概率计算模块32,用于根据所述获取模块31获取的所述行为的特征信息及次数,计算所述用户帐号状态存在异常的概率。
异常指数确定模块33,用于根据所述概率计算模块32计算的所述概率,确定所述用户帐号的异常指数。
处理模块34,用于根据所述异常指数确定模块33确定的所述异常指数对应的预置处理规则,对所述用户帐号进行保护处理。
以上各模块可以是由软件代码实现,此时,上述的各模块可存储于存储器201内,如图8所示。以上各模块同样可以由硬件例如集成电路芯片实现。
本实施例对用户帐号的保护装置30的各功能模块实现各自功能的具体过程,请参见上述图1至图6所示实施例中描述的具体内容,此处不再赘述。
本发明实施例提供的用户帐号的保护装置,通过当接收用户终端发送的包含用户帐号的登录请求时,根据该用户帐号,获取预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数,根据行为的特征信息及次数,计算该用户帐号状态存在异常的概率,根据概率,确定该用户帐号的异常指数,根据异常指数对应的预置处理规则,对该用户帐号进行保护处理,由于是根据预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数计算该用户帐号状态存在异常的概率,因此可有效避免恶意用户通过拨号、代理IP等手段绕开检测,从而可提高用户帐号的保护效率。
第四实施例
图9为本发明第四实施例提供的在用户终端内进行用户帐号的保护装置的结构示意图。本实施例提供的用户帐号的保护装置可以用于上述实施例中的用户帐号的保护方法。如图9所示,用户帐号的保护装置40包括:获取模块41、概率计算模块42、异常指数确定模块43、以及处理模块44。
其中,获取模块41,用于接收用户终端发送的包含用户帐号的登录请求时,服务器根据所述用户帐号,获取预置的检测周期内所述用户帐号所进行的所有行为的特征信息及次数。
概率计算模块42,用于根据所述获取模块41获取的所述行为的特征信息及次数,计算所述用户帐号状态存在异常的概率。如图10所示,所述概率计算模块42包括:统计单元421、出现概率计算单元422、信息熵计算单元423、以及行为轨迹熵计算单元424。其中,统计单元421,用于根据所述特征信息对所述所有行为进行分类,并分别统计所述检测周期内的不同类型的行为各自出现的次数;出现概率计算单元422,用于根据所述所有行为的次数以及所述不同类型的行为各自出现的次数,分别计算所述不同类型的行为各自在所述检测周期内的出现概率;信息熵计算单元423,用于根据所述出现概率计算单元计算的所述出现概率,分别计算所述不同类型的行为各自的信息熵;以及行为轨迹熵计算单元424,用于根据所述信息熵计算单元计算的所述信息熵,计算所述用户帐号的行为轨迹熵,以获取所述用户帐号状态存在异常的概率。
异常指数确定模块43,用于根据所述概率计算模块42计算的所述概率,确定所述用户帐号的异常指数。如图11所示,所述异常指数确定模块43包括:匹配单元431、以及确定单元432。其中,匹配单元431,用于将所述行为轨迹熵的值与预置的多个数值区间进行匹配;确定单元432,用于根据所述行为轨迹熵的值与所述多个数值区间的匹配情况,确定所述用户帐号的异常指数。
处理模块44,用于根据所述异常指数确定模块43确定的所述异常指数对应的预置处理规则,对所述用户帐号进行保护处理。如图12所示,所述处理模块44包括:第一处理单元441、第二处理单元442、第三处理单元443、第四处理单元444、以及第五处理单元445。其中,第一处理单元441,用于当所述异常指数为所述第一异常指数时,根据所述第一异常指数对应的预置处理规则,向所述用户终端发送提示信息,以提示所述用户修改密码。第二处理单元442,用于当所述异常指数为所述第二异常指数时,根据所述第二异常指数对应的预置处理规则,强制所述用户终端退出登陆,并通过与所述用户预约的联系方式向所述用户发送验证码,提示所述用户在用户终端中输入所述验证码并进行再次登陆。第三处理单元443,用于当所述异常指数为所述第三异常指数时,根据所述第三异常指数对应的预置处理规则,强制所述用户终端退出登陆,并向与所述用户预约的手机号码发送短信,提示所述用户通过短信验证以完成再次登陆。第四处理单元444,用于当所述异常指数为所述第四异常指数时,根据所述第四异常指数对应的预置处理规则,强制所述用户终端退出登陆,并向所述用户终端发送提示信息,提示所述用户修改密码后使用修改后,在所述用户终端中输入修改后的密码并进行再次登陆。第五处理单元445,用于当所述异常指数为所述第五异常指数时,根据所述第五异常指数对应的预置处理规则,禁止通过所述用户帐号进行任何操作。
优选地,所述特征信息包括以下信息中的任一种:登录地、用于登录的预置客户端程序的版本号、登录后获取的业务的类型、以及用于登录的用户终端的设备标识。
本实施例对用户帐号的保护装置40的各功能模块实现各自功能的具体过程,请参见上述图1至图6所示实施例中描述的具体内容,此处不再赘述。
本发明实施例提供的用户帐号的保护装置,通过根据用户帐号,获取预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数,根据行为的特征信息及次数,计算该用户帐号状态存在异常的概率,根据概率,确定该用户帐号的异常指数,根据异常指数对应的预置处理规则,对该用户帐号进行保护处理,由于是根据预置的检测周期内该用户帐号所进行的所有行为的特征信息及次数计算该用户帐号状态存在异常的概率,因此可有效避免恶意用户通过拨号、代理IP等手段绕开检测,从而可提高用户帐号的保护效率。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者装置中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容做出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。