一种动态检测认证系统及其方法与流程

文档序号:23727743发布日期:2021-01-26 17:49阅读:110来源:国知局
一种动态检测认证系统及其方法与流程

[0001]
本申请涉及计算机领域,尤其涉及一种动态检测认证系统及其方法。


背景技术:

[0002]
用户在使用网络应用之前往往需要首先向身份认证系统提供身份凭证以证明自己的身份,因此身份认证的安全是应用安全的基础。为了保证身份认证的安全,在不同的身份认证系统中提供了很多种认证方式,包括用户名/口令、数字证书、生物特征和动态口令等认证方法。
[0003]
但是上述认证方式均存在潜在的安全威胁,即攻击者伪造或者窃取用户的身份凭证实施登录,从而可以绕过现有的认证方式,实施成功的攻击。
[0004]
为了保证登录认证的安全,现有技术基本上有两种解决方法,一种是加强认证因子的强度,另一种是编写规则根据认证请求的环境因素推导出风险级别,再根据风险级别采取措施。
[0005]
不同的认证因子有不同的认证强度。用户名口令的认证强度最低,最容易被攻破;在生物特征中,指静脉的认证强度高于指纹,因为指纹可以被贴膜复制。为了提高认证强度,身份认证系统还采用多因子组合认证的方式,比如数字证书和指纹的双因子认证。
[0006]
单纯提高认证强度只是增加了冒用身份凭证的难度,在攻击者冒用了身份凭证之后,认证强度就不再起作用了。单纯提高认证强度并不能解决身份凭证被冒用后的风险,既不能识别出身份凭证被冒用,更不能因为识别出风险而采用进一步的防护措施。
[0007]
静态的固定的规则虽然能够识别登录过程中身份冒用的可能性,并提供额外的保护,但是它不能自适应地因人而异地确定风险等级,比如一个经常旅行的人,在不同地点登录应用系统是很正常的行为,不应被视为风险;另一个很少旅行的人,偶尔的更换登录地点本身蕴含着很大的风险。


技术实现要素:

[0008]
基于此,本申请提供一种动态检测认证系统及其方法,实现动态地、因人而异地、根据认证请求的环境参数识别出认证因子被冒用的风险,并根据风险实现进一步的管控措施。
[0009]
本申请提出一种动态检测认证方法,包括如下步骤:响应于用户的认证请求,获取环境参数;将环境参数输入预先构建的风险识别引擎,输出认证结果;根据认证结果认证用户。
[0010]
优选的,其中,响应于用户的认证请求,获取环境参数包括如下子步骤:从用户的认证请求中抽取待认证参数;对所述待认证参数进行数据预处理,以得到所述待认证用户的环境参数,所述预处理包括参数量化。
[0011]
优选的,其中参数量化包括使用如下公式对认证错误次数t进行量化:
;;;其中q为用户的认证错误次数t累计认证次数,t
q
为认证错误次数t的第q次数据,r为参数t的量化结果。
[0012]
优选的,其中还包括预先创建风险识别引擎的步骤,具体包括如下子步骤:获取用户数据库;从用户数据库中提取用户认证请求数据;对认证请求数据进行预处理,获取环境参数;将未存在于用户数据库中的环境参数添加到用户数据库中;使用用户数据库中的数据进行训练,获得风险识别引擎。
[0013]
优选的,其中环境参数包括发起认证的时间、发起认证的地点、发起认证的设备和准备接入的应用、认证错误次数量化值。
[0014]
本申请还提供一种动态监测认证系统,包括客户端和认证服务器,其中:客户端接收用户的认证请求,并将所述认证请求发送到认证服务器;认证服务器执行以下步骤:响应于用户的认证请求,获取环境参数;将环境参数输入预先构建的风险识别引擎,输出认证结果;根据认证结果认证用户。
[0015]
优选的,其中,响应于用户的认证请求,获取环境参数包括如下子步骤:从用户的认证请求中抽取待认证参数;对所述待认证参数进行数据预处理,以得到所述待认证用户的环境参数,所述预处理包括参数量化。
[0016]
优选的,其中参数量化包括使用如下公式对认证错误次数t进行量化:;
其中q为用户的认证错误次数t累计认证次数,t
q
为认证错误次数t的第q次数据,r为参数t的量化结果。
[0017]
优选的,其中还包括预先创建风险识别引擎的步骤,具体包括如下子步骤:获取用户数据库;从用户数据库中提取用户认证请求数据;对认证请求数据进行预处理,获取环境参数;将未存在于用户数据库中的环境参数添加到用户数据库中;使用用户数据库中的数据进行训练,获得风险识别引擎。
[0018]
优选的,其中环境参数包括发起认证的时间、发起认证的地点、发起认证的设备和准备接入的应用、认证错误次数量化值。
[0019]
本申请实现的有益效果如下:采用本申请提供的动态检测认证系统和方法能够实现预先为用户建模,根据不同的用户因人而异的确定风险等级,从而提供更加安全的认证环境。
附图说明
[0020]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0021]
图1是本申请的一种动态检测认证系统示意图;图2是实施例一提供的一种动态检测认证方法流程图;图3是实施例二提供的一种预先创建风险识别引擎的方法流程图。
具体实施方式
[0022]
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0023]
如图1所示,本申请实施例一提供一种动态检测认证系统,包括用户110,客户端120和认证服务器130,其中,客户端120接收用户110的认证请求,并将所述认证请求发送到认证服务器130,认证服务器130执行下述动态检测认证方法。
[0024]
实施例一本申请提供一种动态检测认证方法,如图2所示,包括:步骤210、响应于用户的认证请求,获取环境参数;
用户110从客户端120输入认证请求,并将所述认证请求通过网络发送到认证服务器130。认证服务器130响应于用户的认证请求,获取环境参数。其中环境参数包括发起认证的时间、发起认证的地点、发起认证的设备和准备接入的应用、认证错误次数量化值等等。
[0025]
其中,响应于用户的认证请求,获取环境参数包括如下子步骤:步骤2101、从用户的认证请求中抽取待认证参数;其中待认证参数包括发起认证的时间、发起认证的地点、发起认证的设备和准备接入的应用、发起认证请求前的认证错误次数等等。其中发起认证前的认证错误次数,包括该用户在发次此次认证之前,历次认证时输入的错误次数,如果在认证请求中未携带,则使用认证请求中携带的用户id,从认证服务器中保存的用户数据库中抽取。
[0026]
步骤2102、对所述待认证参数进行数据预处理,以得到所述待认证用户的环境参数,所述预处理包括参数量化。
[0027]
其中参数量化包括使用如下公式对认证错误次数t进行量化:;;;其中q为用户的认证错误次数t累计认证次数,t
q
为认证错误次数t的第q次数据,r为参数t的量化结果。
[0028]
步骤220、将环境参数输入预先构建的风险识别引擎,输出认证结果;将获得的环境参数输入到风险识别引擎中,输出认证结果,认证结果包括无风险、低风险、中风险和高风险。
[0029]
其中风险识别引擎可使用实施例二中的方法构建,进一步的,也可以使用公知的引擎构建,只需可以执行用户识别即可。
[0030]
步骤230、根据认证结果认证用户。
[0031]
根据认证结果,认证服务器130通知客户端120采用不同的管控手段,包括但不限于:延迟认证、增加认证因子、在一段时间内拒绝认证、拒绝认证等。
[0032]
实施例二在使用该动态检测认证系统执行动态检测认证之前,还包括预先创建风险识别引擎的步骤,如图3所示,具体包括如下子步骤:步骤310、获取用户数据库;用户数据库中包括多个用户的认证请求数据和认证结果。
[0033]
步骤320、从用户数据库中提取用户认证请求数据;
其中用户认证请求数据包括发起认证的时间、发起认证的地点、发起认证的设备和准备接入的应用、认证错误次数等数据。
[0034]
步骤330、对认证请求数据进行预处理,获取环境参数;所述预处理包括参数量化。
[0035]
其中参数量化包括使用如下公式对认证错误次数t进行量化:;;;其中q为用户的认证错误次数t累计认证次数,t
q
为认证错误次数t的第q次数据,r为参数t的量化结果。
[0036]
环境数据包括发起认证的时间、发起认证的地点、发起认证的设备和准备接入的应用、认证错误次数量化值。
[0037]
步骤340、将未存在于用户数据库中的环境参数添加到用户数据库中;将未存在于用户数据库中的环境参数添加到用户数据库中,例如认证错误次数量化值。
[0038]
步骤350、使用用户数据库中的数据进行训练,获得风险识别引擎。
[0039]
其中风险识别模型使用如下公式构建:其中u和σ待优化参数,x为用户数据库中的数据。
[0040]
进一步的,可以根据认证结果构建风险等级列表,即风险识别引擎输出的认证结果处于某一区间内为无风险、低风险、中风险或高风险,该风险等级列表可人为指定区间,或者对用户数据库中的认证结果进行分析后形成风险等级列表。
[0041]
实施例三进一步的,实施例二中步骤350还可以如下所述步骤构建:步骤3501、将用户数据库中的数据划分为训练集和测试集;按照用户认证次数划分训练集和测试集,例如认证次数超过一定数量的数据划分为训练集,其他划分为测试集。
[0042]
步骤3502、采用所述训练集训练初步风险识别引擎,并在训练完成后,采用所述测试集对所述初步风险识别引擎进行验证,得到风险识别引擎。
[0043]
可选用现有的识别模型作为初步风险识别引擎,例如最大隶属度识别模型,二项分布模型等等。
[0044]
在训练完成后,采用所述测试集对所述初步风险识别引擎进行验证,得到风险识别引擎。
[0045]
实施例四在实施例三中,可以构造多个初步风险识别引擎,使用测试集对所述多个初步风险识别引擎进行验证,获得具有最优效果的初步风险识别引擎,作为风险识别引擎。
[0046]
优选的,还包括在认证用户时,风险识别引擎使用如下公式实施标准化处理:其中u和σ为风险识别引擎中优化后的参数,x为认证结果。
[0047]
其中风险等级列表如下所示:表
ꢀꢀ
风险等级列表 在风险识别模型输出计算结果后,风险识别模型将其与风险等级列表中的数据进行比较,输出风险等级。
[0048]
以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特殊进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1