认证异常判断方法及装置与流程

文档序号:12887331阅读:222来源:国知局
认证异常判断方法及装置与流程
本发明涉及通信
技术领域
,尤其涉及一种认证异常判断方法及装置。
背景技术
:随着科学技术的发展,互联网技术给人们的生产和生活都带来了极大了的便利。然而,在现实生活中,人们做任何一件事都存在风险,只是事情不同面对的风险大小不同而已,因而做一件事情之前,往往都需要对其进行风险控制。例如,针对一种新品种,在决定生产该新产品之前,对其能够带来收益进行风险控制。又如,进行数据传输之前,对数据传输过程中的安全性能进行风险控制等。目前,风控技术主要从大数据的角度结合风控模型来识别异常用户,风控模型一般是采用分类、聚类等模型,效果的好处很大部分取决于如何提取业务特征,并且对数据有要求,比如:分类模型要求数据带标签,操作起来较为繁琐甚至很难实现。技术实现要素:本发明的目的是提供一种认证异常判断方法及装置,有效解决现有风险控制方法操作繁琐等技术问题。本发明提供的技术方案如下:一种认证异常判断方法,包括:获取多次正常认证产生的历史认证数据;根据所述多次历史认证数据得到正常认证过程中出现的频繁序列;获取当前用户的认证数据;计算所述当前用户的认证数据与频繁序列之间的相似度;根据所述相似度判断当前用户认证是否出现异常。在本技术方案中,使用正常认证过程中产生的历史认证数据对当前用户的认证是否出现异常进行判断,快速锁定认证异常操作,无需额外增加硬件,也无需改变用户的认证过程中的操作步骤,大大提升了用户体验,同时提高了异常判断的准确率。进一步优选地,在所述步骤根据所述多次历史认证数据得到正常认证过程中出现的频繁序列中,包括:将所述多次历史认证数据进行划分得到单次认证数据;将单次认证数据按照时间顺序进行排列得到一次认证操作序列;根据各认证操作序列得到正常认证过程中出现的频繁序列。在本技术方案中,将正常认证过程中产生的历史认证数据进行分类及排序得到单次有效认证过程中的认证操作序列,并以此得到多次认证过程中的频繁序列,便于进一步判断认证过程是否出现异常,帮助用户进行风险控制。进一步优选地,在步骤根据各认证操作序列得到正常认证过程中出现的频繁序列中,具体为:使用prefixspan算法挖掘各认证操作序列中的频繁序列。在本技术方案中,将对历史认证数据进行分类、排序得到单次有效认证过程中的认证操作序列输入该prefixspan算法挖掘出认证过程中用户操作行为中的频繁序列,有效克服现有分类/聚类模型的缺点,无需其他操作,对任意具备通用性的认证过程都具备通用性。进一步优选地,在步骤计算所述当前用户的认证数据与频繁序列之间的相似度中,包括:按照时间顺序对当前用户的认证数据进行排列得到认证操作序列;利用移动窗口函数,找到当前用户的认证操作序列与频繁序列中相同的元素;根据所述相同元素的数量及当前用户的认证操作序列/频繁序列的长度得到相似度。在本技术方案中,通过移动窗口函数计算当前用户的认证操作序列与频繁序列中相同的元素,以此根据进一步根据相似度计算公式计算出相似度,相比于现有的相似度计算方法,大大提高了准确性和可信度。进一步优选地,在步骤根据所述相似度判断当前用户认证是否出现异常中,包括:将相似度与预设阈值进行比对,判断其所属阈值区间;根据所述阈值区间判断所属异常等级。在本技术方案中,通过将计算出来的相似度与预设阈值进行比较的方法判断出当前用户认证所属的异常等级,便于用户根据判断出来的异常等级采取相应措施,减少损失。本发明还提供了一种认证异常判断装置,包括:处理器,用于处理各指令;及存储器,用于存储多条指令,指令适用于处理器加载并执行;多条指令中包括:获取多次正常认证产生的历史认证数据;根据所述多次历史认证数据得到正常认证过程中出现的频繁序列;获取当前用户的认证数据;计算所述当前用户的认证数据与频繁序列之间的相似度;根据所述相似度判断当前用户认证是否出现异常。在本技术方案中,使用正常认证过程中产生的历史认证数据对当前用户的认证是否出现异常进行判断,快速锁定认证异常操作,无需额外增加硬件,也无需改变用户的认证过程中的操作步骤,大大提升了用户体验,同时提高了异常判断的准确率。进一步优选地,在指令根据所述多次历史认证数据得到正常认证过程中出现的频繁序列中,包括:将所述多次历史认证数据进行划分得到单次认证数据;将单次认证数据按照时间顺序进行排列得到一次认证操作序列;根据各认证操作序列得到正常认证过程中出现的频繁序列。在本技术方案中,将正常认证过程中产生的历史认证数据进行分类及排序得到单次有效认证过程中的认证操作序列,并以此得到多次认证过程中的频繁序列,便于进一步判断认证过程是否出现异常,帮助用户进行风险控制。进一步优选地,在指令根据各认证操作序列得到正常认证过程中出现的频繁序列中,具体为:使用prefixspan算法挖掘各认证操作序列中的频繁序列。在本技术方案中,将对历史认证数据进行分类、排序得到单次有效认证过程中的认证操作序列输入该prefixspan算法挖掘出认证过程中用户操作行为中的频繁序列,有效克服现有分类/聚类模型的缺点,无需其他操作,对任意具备通用性的认证过程都具备通用性。进一步优选地,在指令计算所述当前用户的认证数据与频繁序列之间的相似度中,包括:按照时间顺序对当前用户的认证数据进行排列得到认证操作序列;利用移动窗口函数,找到当前用户的认证操作序列与频繁序列中相同的元素;根据所述相同元素的数量及当前用户的认证操作序列/频繁序列的长度得到相似度。在本技术方案中,通过移动窗口函数计算当前用户的认证操作序列与频繁序列中相同的元素,以此根据进一步根据相似度计算公式计算出相似度,相比于现有的相似度计算方法,大大提高了准确性和可信度。进一步优选地,在指令根据所述相似度判断当前用户认证是否出现异常中,包括:将相似度与预设阈值进行比对,判断其所属阈值区间;根据所述阈值区间判断所属异常等级。在本技术方案中,通过将计算出来的相似度与预设阈值进行比较的方法判断出当前用户认证所属的异常等级,便于用户根据判断出来的异常等级采取相应措施,减少损失。附图说明下面将以明确易懂的方式,结合附图说明优选实施方式,对倒置定量气雾剂阀门的上述特性、技术特征、优点及其实现方式予以进一步说明。图1是本发明中认证异常判断方法一种实施方式流程示意图;图2是本发明中认证异常判断方法一种实施方式流程示意图;图3是本发明中认证异常判断方法一种实施方式流程示意图;图4是本发明中认证异常判断装置示意图。附图标号说明:100-认证异常判断装置,110-处理器,120-存储器。具体实施方式为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。为使图面简洁,各图中的只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。如图1所示为本发明提供的认证异常判断方法一种实施方式流程示意图,从图中可以看出,在该认证异常方法中包括:s10获取多次正常认证产生的历史认证数据;s20根据多次历史认证数据得到正常认证过程中出现的频繁序列;s30获取当前用户的认证数据;s40计算当前用户的认证数据与频繁序列之间的相似度;s50根据相似度判断当前用户认证是否出现异常。在本实施方式中,由对于同一种认证来说,正常认证过程中产生的认证数据相似度非常高,异常认证过程中产生的认证数据同样有共同点,以此这里采用算法对多次正常认证过程产生的认证数据进行挖掘得到频繁序列,进而根据该频繁序列对当前认证的认证数据是否异常进行判断,快速锁定认证异常操作,大大提升了用户体验,提高了异常判断的准确率。在一实例中,采用使用prefixspan算法挖掘各认证数据中的频繁序列,在其他实例中,还可以采用其他算法,如gsp(generalizedsequentialpatternminingalgorithm)算法等,原则上来说,只要能够实现目的从多组认证数据中挖掘中频繁序列的算法,都包括在本实施方式中。此外,使用到的历史认证数据可以为多个用户进行认证产生的认证数据,也可以为同一用户在不同时间段内进行认证产生的认证数据,或者两者都有,不做具体限定。对于历史认证数据的数据量,根据实际情况进行选定,如可以选用20次正常认证产生的认证数据,也可以选用5次、10次、30次等,原则上来说,选用的次数越多挖掘出来的频繁序列越准确,但是次数过多会加大处理器的负担,故在选用时需适量。最后,本实施方式中提及的认证过程,可以为现有任意的认证过程,如,登录系统时对用户的身份进行认证的身份认证过程;又如,数据发送过程中,对数据进行加密传输过程中的认证过程;再入,用户支付过程中使用的认证过程等。在一实例中,该认证过程为实用了sotp(strongone-timepassword,加强型动态口令)密码技术的认证过程,该密码技术具体为一种多因素动态可重构的确定真实性认证技术,实现了算法与用户密钥的紧密融合,能够保证支付便捷性的同时提高安全性。在使用过程中,只需用户对sotp插件进行申请、更新、解绑等操作,就会产生一系列的关于该插件的认证数据。之后,采用上述认证异常判断方法对认证数据进行分析锁定异常用户,在使用sotp算法保证安全性能的同时,使用该认证异常方法进行异常评估,大大降低互联网认证的风险。对上述实施方式进行改进得到本实施方式,如图2所示,在本实施方式中,该认证异常方法中包括:s10获取多次正常认证产生的历史认证数据;s21将多次历史认证数据进行划分得到单次认证数据;s22将单次认证数据按照时间顺序进行排列得到一次认证操作序列;s23根据各认证操作序列得到正常认证过程中出现的频繁序列;s30获取当前用户的认证数据;s40计算当前用户的认证数据与频繁序列之间的相似度;s50根据相似度判断当前用户认证是否出现异常。在本实施方式中,由于要完成一次认证过程,通常会对app(application,应用程序)进行多次操作,相应地也会产生多条不同的日志记录。以此,在这里,对多次正常认证过程中产生的日志数据进行统计分析,将用户前后操作时间间隔小于一定时间,如30分钟的日志记录划分在一次会话中,并相应的将用户id改为会话id,具体在用户id后面加上日期和第几次会话得到会话id。如,用户id为13041276768,则对应的会话id为13041276768_2016_11_31_01,其中,13041276768为用户id,2016_11_31为日期,01表示第一次会话。将认证过程产生的日志信息进行分类之后,针对一次会话中的日志信息按照时间顺序进行排列得到一次认证操作序列。在一实例中,获取sotp插件多次认证过程中产生的交易日志信息之后对其进行分类,将不同的日志记录划分到不同的会话中;之后,在不同认证过程一次会话内按时间顺序收集sotp插件日志信息,并称一次会话内sotp插件日志信息记录为一次有序sotp认证操作序列。具体,若两次认证过程中产生的交易日志信息(会话数据)如表1所示,包括13041276768和13041276769两个用户,分别于2016.11.31进行了基于sotp技术的认证过程,其中,用户13041276768产生的sotp插件信息的日志包括2016:11:31:12:10产生的zrauth.plugin.apply和2016:11:31:12:11产生的zrauth.plugin.apply.auth;用户13041276769产生的sotp插件信息的日志包括2016:11:31:12:10产生的zrauth.plugin.apply和2016:11:31:12:11产生的zrauth.plugin.getdevlist,则对其根据时间先后进行排列,将一次认证过程内的操作按照时间顺序进行排列得到一次有序sotp操作序列信息,如表2所示。表1:会话数据会话id时间sotp插件信息的日志13041276768_2016_11_31_012016:11:31:12:10zrauth.plugin.apply13041276768_2016_11_31_012016:11:31:12:11zrauth.plugin.apply.auth13041276769_2016_11_31_012016:11:31:12:10zrauth.plugin.apply13041276769_2016_11_31_012016:11:31:12:11zrauth.plugin.getdevlist表2:不同用户的一次有序sotp操作序列信息会话id一次有序sotp操作序列13041276768_2016_11_31_01zrauth.plugin.apply,zrauth.plugin.apply.auth13041276769_2016_11_31_01zrauth.plugin.apply,zrauth.plugin.getdevlist由于正常的用户的一次有序sotp操作序列很相似,而异常用户的一次有序sotp操作序列有共同点,因此,得到多次有序sotp操作序列信息之后,采用prefixspan算法挖掘对应的频繁序列。以下,对prefixspan算法(根据输入的序列数据集s和支持度阈值αα,输出所有满足支持度要求的频繁序列集)挖掘频繁序列的一般过程进行描述:1)在序列数据集s中找出所有长度为1的前缀和对应的投影数据库;2)对长度为1的前缀进行计数,将支持度低于阈值αα的前缀对应的项从数据集s删除,同时得到所有的频繁1项序列,i=1;3)对于每个长度为i满足支持度要求的前缀进行递归挖掘;a)找出前缀所对应的投影数据库;如果投影数据库为空,则递归返回。b)统计对应投影数据库中各项的支持度计数;如果所有项的支持度计数都低于阈值αα,则递归返回。c)将满足支持度计数的各个单项和当前的前缀进行合并,得到若干新的前缀。d)令i=i+1,前缀为合并单项后的各个前缀,分别递归执行第3步。具体,这里序列数据集s为统计得到的多次有序sotp操作序列信息,支持度阈值αα根据实际需求进行设定,如设定为2、3等,以此得到频繁序列,便于后续进行相似度计算。对上述实施方式进行改进得到本实施方式,如图3所示,在本实施方式中,该认证异常方法中包括:s10获取多次正常认证产生的历史认证数据;s21将多次历史认证数据进行划分得到单次认证数据;s22将单次认证数据按照时间顺序进行排列得到一次认证操作序列;s23根据各认证操作序列得到正常认证过程中出现的频繁序列;s30获取当前用户的认证数据;s41按照时间顺序对当前用户的认证数据进行排列得到认证操作序列;s42利用移动窗口函数,找到当前用户的认证操作序列与频繁序列中相同的元素;s43根据相同元素的数量及当前用户的认证操作序列/频繁序列的长度得到相似度;s50根据相似度判断当前用户认证是否出现异常。在本实施方式中,得到多次正常认证过程的频繁序列之后,采用循环相似度计算的方法计算当前用户的认证操作序列与历史用户的频繁序列的相似度,并将其与预设阈值进行比对,判断其所属阈值区间,进而根据阈值区间判断所属异常等级。具体,相似度得分越高表示当前用户的认证操作序列与历史用户的频繁序列的相似度越大。这样就可以利用阈值和风险预估算法实时得出用户的风险得分,保证及时反映用户操作行为是否异常。假定当前用户的认证操作序列为a,频繁序列为b,则在相似度计算过程中,首先令相似数s=0,之后利用移动窗口函数,设置窗长为1,选定较长的序列进行长度的调整,具体,若序列a和序列b中序列a的长度较长,则对序列a的长度进行调整(根据序列b的长度,在序列a末尾添加相应长度的0),之后序列b从左向右移动,当序列b中有某一元素与序列a中相同,则s+=1,并将该元素从序列b和a中筛掉,以此往复,直到找不到相同的元素结束。之后,通过以下公式对相似度得分corr_score进行计算:corr_score=s/max(a.length,b.length)其中,a.length表示序列a的长度,b.length表示序列b的长度,s表示序列a和序列b中相同元素的个数。在一实例中,假定序列c=[a,a,v,b,b],序列d=[a,a,b,b],则采用上述方法,序列c中包含5个元素,序列d中包含4个元素,因而对序列c的长度进行调整得到c=[a,a,v,b,b,0,0,0,0],之后序列d从左向右移动,当序列d中有某一元素与序列c中相同,则s+=1,并将该元素从序列b和a中筛掉,以此往复,直到找不到相同的元素结束,统计得到s=4,之后,根据相似度计算公式计算相似度分数corr_score=0.8,其中,max(a.length,b.length)为5。此外,为了更准确的预测异常等级/风险等级,在进行认证异常判断之前,对判断阈值进行设定,计算得到相似度分数之后,判断其所属的阈值区间,进而确定异常等级/风险等级。如,在一实例中,设定两个阈值,分别为0.5和0.8,并配置:相似度分数小于0.5时,认证出现严重异常,提醒用户注意,风险等级高;相似度分数在0.5到0.8之间时,认证可能出现异常,体用用户注意;相似度分数大于0.8,认证正常。这样,当计算出相似度分数为0.81,则确定用户当前认证安全,不存在异常;若计算出相似度分数为0.45,则发出警告,提醒用户出现认证异常。以上仅示例性的给出阈值的取值,在其他实例中,根据实际情况对阈值进行设定,包括阈值设定的个数、数值等,这里均不作具体限定。本发明还提供了一种认证异常判断装置,如图4所示,从图中可以看出,在该认证异常判断装置100中包括:处理器110,用于处理各指令;及存储器120,用于存储多条指令,指令适用于处理器加载并执行。在一种实施方式中,该多条指令中包括:获取多次正常认证产生的历史认证数据;根据多次历史认证数据得到正常认证过程中出现的频繁序列;获取当前用户的认证数据;计算当前用户的认证数据与频繁序列之间的相似度;根据相似度判断当前用户认证是否出现异常。在本实施方式中,由对于同一种认证来说,正常认证过程中产生的认证数据相似度非常高,异常认证过程中产生的认证数据同样有共同点,以此这里采用算法对多次正常认证过程产生的认证数据进行挖掘得到频繁序列,进而根据该频繁序列对当前认证的认证数据是否异常进行判断,快速锁定认证异常操作,大大提升了用户体验,提高了异常判断的准确率。在一实例中,采用使用prefixspan算法挖掘各认证数据中的频繁序列,在其他实例中,还可以采用其他算法,如gsp(generalizedsequentialpatternminingalgorithm)算法等,原则上来说,只要能够实现目的从多组认证数据中挖掘中频繁序列的算法,都包括在本实施方式中。此外,使用到的历史认证数据可以为多个用户进行认证产生的认证数据,也可以为同一用户在不同时间段内进行认证产生的认证数据,或者两者都有,不做具体限定。对于历史认证数据的数据量,根据实际情况进行选定,如可以选用20次正常认证产生的认证数据,也可以选用5次、10次、30次等,原则上来说,选用的次数越多挖掘出来的频繁序列越准确,但是次数过多会加大处理器的负担,故在选用时需适量。最后,本实施方式中提及的认证过程,可以为现有任意的认证过程,如,登录系统时对用户的身份进行认证的身份认证过程;又如,数据发送过程中,对数据进行加密传输过程中的认证过程;再入,用户支付过程中使用的认证过程等。在一实例中,该认证过程为实用了sotp(strongone-timepassword,加强型动态口令)密码技术的认证过程,该密码技术具体为一种多因素动态可重构的确定真实性认证技术,实现了算法与用户密钥的紧密融合,能够保证支付便捷性的同时提高安全性。在使用过程中,只需用户对sotp插件进行申请、更新、解绑等操作,就会产生一系列的关于该插件的认证数据。之后,采用上述认证异常判断方法对认证数据进行分析锁定异常用户,在使用sotp算法保证安全性能的同时,使用该认证异常方法进行异常评估,大大降低互联网认证的风险。对上述实施方式进行改进得到本实施方式,在本实施方式中,该多条指令中包括:获取多次正常认证产生的历史认证数据;将多次历史认证数据进行划分得到单次认证数据;将单次认证数据按照时间顺序进行排列得到一次认证操作序列;根据各认证操作序列得到正常认证过程中出现的频繁序列;获取当前用户的认证数据;计算当前用户的认证数据与频繁序列之间的相似度;根据相似度判断当前用户认证是否出现异常。在本实施方式中,由于要完成一次认证过程,通常会对app进行多次操作,相应地也会产生多条不同的日志记录。以此,在这里,对多次正常认证过程中产生的日志数据进行统计分析,将用户前后操作时间间隔小于一定时间,如30分钟的日志记录划分在一次会话中,并相应的将用户id改为会话id,具体在用户id后面加上日期和第几次会话得到会话id。如,用户id为13041276768,则对应的会话id为13041276768_2016_11_31_01,其中,13041276768为用户id,2016_11_31为日期,01表示第一次会话。将认证过程产生的日志信息进行分类之后,针对一次会话中的日志信息按照时间顺序进行排列得到一次认证操作序列。对上述实施方式进行改进得到本实施方式,在本实施方式中,该多条指令中包括:获取多次正常认证产生的历史认证数据;将多次历史认证数据进行划分得到单次认证数据;将单次认证数据按照时间顺序进行排列得到一次认证操作序列;根据各认证操作序列得到正常认证过程中出现的频繁序列;获取当前用户的认证数据;按照时间顺序对当前用户的认证数据进行排列得到认证操作序列;利用移动窗口函数,找到当前用户的认证操作序列与频繁序列中相同的元素;根据相同元素的数量及当前用户的认证操作序列/频繁序列的长度得到相似度;根据相似度判断当前用户认证是否出现异常。在本实施方式中,得到多次正常认证过程的频繁序列之后,采用循环相似度计算的方法计算当前用户的认证操作序列与历史用户的频繁序列的相似度,并将其与预设阈值进行比对,判断其所属阈值区间,进而根据阈值区间判断所属异常等级。具体,相似度得分越高表示当前用户的认证操作序列与历史用户的频繁序列的相似度越大。这样就可以利用阈值和风险预估算法实时得出用户的风险得分,保证及时反映用户操作行为是否异常。假定当前用户的认证操作序列为a,频繁序列为b,则在相似度计算过程中,首先令相似数s=0,之后利用移动窗口函数,设置窗长为1,对序列a的长度进行调整,之后序列b从左向右移动,当序列b中有某一元素与序列a中相同,则s+=1,并将该元素从序列b和a中筛掉,以此往复,直到找不到相同的元素结束。之后,通过以下公式对相似度得分corr_score进行计算:corr_score=s/max(a.length,b.length)其中,a.length表示序列a的长度,b.length表示序列b的长度,s表示序列a和序列b中相同元素的个数。此外,为了更准确的预测异常等级/风险等级,在进行认证异常判断之前,对判断阈值进行设定,计算得到相似度分数之后,判断其所属的阈值区间,进而确定异常等级/风险等级。如,在一实例中,设定两个阈值,分别为0.5和0.8,并配置:相似度分数小于0.5时,认证出现严重异常,提醒用户注意,风险等级高;相似度分数在0.5到0.8之间时,认证可能出现异常,体用用户注意;相似度分数大于0.8,认证正常。这样,当计算出相似度分数为0.81,则确定用户当前认证安全,不存在异常;若计算出相似度分数为0.45,则发出警告,提醒用户出现认证异常。以上仅示例性的给出阈值的取值,在其他实例中,根据实际情况对阈值进行设定,包括阈值设定的个数、数值等,这里均不作具体限定。应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1