基于用户行为的数据验证方法及装置的制造方法

文档序号:10618217阅读:831来源:国知局
基于用户行为的数据验证方法及装置的制造方法
【专利摘要】本申请提供了基于用户行为的数据验证方法及装置,所述方法包括:响应于接收用户触发的与账户信息关联的业务请求,获取所述用户的验证信息;其中,所述验证信息包括所述账户信息;依据预先设置的用户行为数据集中与所述验证信息相关的用户行为数据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和与所述基础行为数据关联的深度扩展数据;将所述验证问题和候选答案按照预设展示方式进行渲染以供向用户展示;响应于用户针对所述验证问题和候选答案触发的反馈信息,对所述用户进行数据验证。在本申请实施例中,可以提高数据验证的安全性,降低用户账户的安全隐患。
【专利说明】
基于用户行为的数据验证方法及装置
技术领域
[0001] 本申请设及互联网数据处理技术领域,特别设及一种基于用户行为的数据验证方 法及装置,W及,一种基于用户行为的数据推送方法及装置。
【背景技术】
[0002] 随互联网发展,网站系统越来越多的受到自动化(半自动化)程序攻击,可能会影 响正常的网站运营。例如,程序批量尝试登陆大量帐号密码来盗取账户信息,使用脚本强抢 红包(优惠券),12306上抢购火车票,或者,网站上的垃圾注册等。
[0003] 现有技术中,为了对恶意的一些登录信息进行验证,一般情况下采用基于验证码 的数据验证,具体为:在用户的账户信息和密码信息都校验通过之后,还需要向用户弹出图 形验证码,让用户辨识图片上的文字或数字等,待用户向系统提交的验证码也正确无误时, 才允许该用户的访问。

【发明内容】

[0004] 但是发明人在研究过程中发现,现有技术中基于验证码进行数据验证的方式,由 于验证码本身是通用的,即便针对不同用户也有可能返回相同的图片验证码,只要对图像 进行识别还是可W获取到验证码的信息,因此,现有技术还是无法避免恶意登录等安全隐 患,使得现有技术的数据验证方法的安全性较低。 阳〇化]本申请所要解决的技术问题是提供一种基于用户行为的数据验证方法,和,一种 基于用户行为的数据推送方法,用W尽量解决现有技术中图片验证码可W通过图像识别技 术来获取导致的安全性较低的问题。
[0006] 本申请还提供了一种基于用户行为的数据验证装置和数据推送装置,用W保证上 述方法在实际中的实现及应用。
[0007] 为了解决上述问题,本申请公开了一种基于用户行为的数据验证方法,包括:
[0008] 响应于接收用户触发的与账户信息关联的业务请求,获取所述用户的验证信息; 其中,所述验证信息包括所述账户信息;
[0009] 依据预先设置的用户行为数据集中与所述验证信息相关的用户行为数据,确定所 述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和与所述基 础行为数据关联的深度扩展数据;
[0010] 将所述验证问题和候选答案按照预设展示方式进行擅染W供向用户展示;
[0011] 响应于用户针对所述验证问题和候选答案触发的反馈信息,对所述用户进行数据 验证。
[0012] 本申请还公开了一种基于用户行为的信息推送方法,包括:
[0013] 响应于用户在客户端上触发的与账户信息关联的验证请求,获取用户的账户信 息;
[0014] 依据预先设置的用户行为数据集中与所述账户信息相关的用户行为数据,确定所 述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和与所述基 础行为数据关联的深度扩展数据;
[0015] 将所述验证问题和候选答案发送至所述客户端,W便所述客户端调用应用程序展 示所述验证问题和候选答案。
[0016] 本申请公开了一种基于用户行为的数据验证装置,包括:
[0017] 获取信息模块,用于响应于接收用户触发的与账户信息关联的业务请求,获取所 述用户的验证信息;其中,所述验证信息包括所述账户信息;
[0018] 确定模块,用于依据预先设置的用户行为数据集中与所述验证信息相关的用户行 为数据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数 据和与所述基础行为数据关联的深度扩展数据;
[0019] 擅染模块,用于将所述验证问题和候选答案按照预设展示方式进行擅染W供向用 户展示;
[0020] 验证模块,用于响应于用户针对所述验证问题和候选答案触发的反馈信息,对所 述用户进行数据验证。
[0021] 本申请公开了一种基于用户行为的数据推送装置,包括:
[0022] 获取信息模块,用于响应于用户在客户端上触发的与账户信息关联的验证请求, 获取用户的账户信息;
[0023] 确定模块,用于依据预先设置的用户行为数据集中与所述账户信息相关的用户行 为数据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数 据和与所述基础行为数据关联的深度扩展数据;
[0024] 推送模块,用于将所述验证问题和候选答案发送至所述客户端,W便所述客户端 调用应用程序展示所述验证问题和候选答案。
[00巧]与现有技术相比,本申请包括W下优点:
[00%] 在本申请实施例中,基于用户操作建立了用户行为数据集,该用户行为数据集中 还包括了基础行为数据,和与基础行为数据相关的深度扩展数据,因此,基于该用户行为数 据集而生成的验证问题就与用户曾经的操作行为密切相关,如果不是用户本人进行账户信 息的相关操作,就无法得知验证问题的正确答案,而且即便采用图像识别技术也无法得知 与某个用户行为有关的相关数据,从而使得本申请的数据验证方法能够基于用户实现,从 而提高了数据验证的安全性,降低了用户账户的安全隐患。
[0027] 当然,实施本申请的任一产品并不一定需要同时达到W上所述的所有优点。
【附图说明】
[002引为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可W根据运些附图获得其 他的附图。
[0029] 图1是本申请的生成用户行为数据集的流程图;
[0030] 图2是本申请的关联扩展树的示例性的界面示意图;
[0031] 图3是本申请的基于用户行为的数据验证方法实施例的流程图;
[0032] 图4是本申请的一个验证问题的示例性界面示意图;
[0033] 图5是本申请的候选答案九宫格的一个示例性示意图;
[0034] 图6是本申请的基于用户行为的数据推送方法实施例的流程图;
[0035] 图7是本申请的一种基于用户行为的数据验证装置实施例的结构框图;
[0036] 图8是本申请的一种基于用户行为的数据推送装置实施例的结构框图。
【具体实施方式】
[0037] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于 本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本申请保护的范围。
[003引本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务 器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括W上任何装置或设备 的分布式计算环境等等。
[0039] 本申请可W在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序 模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组 件、数据结构等等。也可W在分布式计算环境中实践本申请,在运些分布式计算环境中,由 通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可W 位于包括存储设备在内的本地和远程计算机存储介质中。
[0040] 在介绍本申请实施例之前,为了方便本领域技术人员对本申请中的用户行为数据 集有清楚的了解,下面首先介绍用户行为数据集的采集过程。用户行为数据集是本申请中 验证问题的基础,用户行为数据集的来源主要是用户操作产生的基础行为数据,和由基础 行为数据通过关联关系获取的深度扩展数据。参考图1,为用户行为数据集的采集流程图, 该用户行为数据集可W通过W下步骤生成:
[0041] 步骤101 :获取用户操作时的操作信息,所述操作信息包括:时间、地点、人物、操 作内容和目标对象。
[0042] 在本申请实施例中,用户在网站(例如淘宝网)上操作时,网站服务器可W对用户 的操作信息进行记录,并通过采集用户的操作信息,来形成用户的基础行为数据。例如,有 一条操作信息为:在2014年12月21号(时间),张 Ξ (用户)在杭州(地点)购买了一 本书《二国演义》。
[0043] 步骤102 :依据所述操作信息生成所述用户的基础行为数据。 W44] 根据步骤101的记录,可W将基础行为数据度时归结为如下格式:{时间度R. t), 地点度R. 1),人物度R. U),做了什么操作度R. a),目标对象度R. 〇)}。
[0045] 再例如,2014年10月12日,张 Ξ在杭州登陆了淘宝网页,并下单购买了一本《Ξ 国演义》,那么将在淘宝网的后台服务器中将会产生如表1所示的两条基础行为数据:
[0046] 表 1
[0047]

[0048] 当然,表1仅仅是实际应用中的一个简单示例。其他的基础行为数据可W参考表 1的格式进行记录,也可W采用其他类似的格式进行记录。
[0049] 步骤103 :依据所述基础行为数据和预先设置的关联关系,生成深度扩展数据;其 中,所述关联关系表示所述基础行为数据与所述深度扩展数据之间的数据关系。
[0050] 然后再W基础行为数据为基础,通过关联关系进行深度扩展,获取大量的深度扩 展数据。而每个基础行为数据,依据数据的类型不同,可W拥有不同的关联关系,关联关系 表示所述基础行为数据与所述深度扩展数据之间的数据关系,而通过不同的关联关系可W 产生相关的深度扩展数据,深度扩展数据同样可W根据关联关系来产生新的深度扩展数 据。例如:基础行为数据中的地点"杭州"可W通过关联关系"所属的省份"而得到"浙江", 并且,"浙江"又可W通过关联关系"拥有的景点"而得到"西湖","灵隐寺","千岛湖",等。 其中的"浙江"、"西湖"、"灵隐寺"和"千岛湖"均为深度扩展数据。
[0051] 步骤104 每个所述基础行为数据为根节点,所述深度扩展数据为节点,所述关 联关系为关联路径,生成多个关联扩展树。
[0052] 在本申请实施例中,深度扩展数据同基础行为数据一起形成用户的行为数据集。 为了表示基础行为数据和深度扩展数据之间的关联关系,可W采用关联扩展树(RT)。例如, 可W由基础行为数据中的地点或目标对象度R. 1或者BR.O)为根节点,关联关系作为各个 节点间的关联路径,和深度扩展数据构成一个多叉的关联扩展树。多叉树为一种数据结构, 由η个节点组成的有层次关系的集合(从根节点开始定义起,根节点为第1层,根节点的子 节点为第2层,W此类推)。多叉树的满足条件可W为:每个节点有零或多个子节点,没有 父节点的节点为根节点,每个非根节点只有一个父节点。
[0053] 其中,每个深度扩展数据的关系路径指,由用户行为记录R的关联扩展树的根节 点通过多层关联关系r、r'和r"关联到某一个深度扩展数据Ε0,而用户行为记录R的扩展 对象E0的关联路径就为:r+r' +r"。而在深度扩展树中,各个节点在该深度扩展树中的深 度称为关联深度(d)。例如:上述张 Ξ购买《Ξ国演义》的基础行为数据的记录R中,R. 1为 杭州,R. 0为《Ξ国演义》;当关联关系r为所属省份时,可W关联出深度扩展数据巧0)为 浙江。因此,深度扩展数据"浙江"的深度为2,值为浙江。对于深度扩展数据浙江,又根据 关联关系r'为"拥有的著名景点",可关联出深度扩展数据为:西湖、千岛湖和雷峰塔,运些 深度扩展数据的关联深度则为3。而根据关联关系r"为"今日头条新闻",又可W关联出"1 号线地铁通车"、"高新科技园奠基"等深度扩展数据。上述关联过程可W参考图2所示,图 2为表1中的基础行为数据"杭州"和"Ξ国演义"进行扩展得到两个关联扩展树的界面示 意图。当然,图2仅仅是针对表1中具体数据的示例性说明,本领域技术人员不应将其理解 为本申请的限定。
[0054] 其中,本领域技术人员可W知悉,对于关联关系r,本领域技术人员有很多种实现 方式,例如:可W通过网络爬虫获取数据,从口户网站爬取头条新闻,或者从旅游网站爬取 景点信息等;也可W通过RSS订阅方式获取,比如从气象网站订阅天气信息等;还可W基于 预置知识(如内部系统,百科等)的系统,如内部的商品类目数据,地图地理信息数据等。 阳化5] 在本申请实施例中,用户的基础行为数据和深度扩展数据共同组成了用户行为数 据集,作为生成验证问题和候选答案的候选空间。针对一个有η次操作记录的用户(其中, η〉= 1且η为整数,因为该用户至少有当前一次操作),一个支持t种类型的用户行为数据 且每个类型的用户行为数据有r种关联关系的用户行为数据集,当关联深度为d时,理论上 该候选空间的容量大小如公式一所示:
[0056] Size 巧时=η* (t*rrd ;公式(一)
[0057] 再假设该用户行为数据集一共支持5种类型数据(例如:地点、产品、天气、事件和 人物),每个类型默认有20个关联关系,关联深度为4时,对于运样的用户行为数据集,其 候选空间的大小为:η*(5*2〇Γ4= lOOOOOOOOn(其中η〉= 1)。可W看出,运种量级的候选 空间中的很难被穷举,且随关联深度的增长,空间的大小也成指数级增长,所W在实际应用 中,本申请实施例中的用户行为数据集完全能够支持基于用户行为的数据验证。
[0058] 参考图3,示出了本申请一种基于用户行为的数据验证方法实施例的流程图,本实 施例可W包括W下步骤:
[0059] 步骤301 :响应于接收用户触发的与账户信息关联的业务请求,获取所述用户的 验证信息;其中,所述验证信息包括所述账户信息。
[0060] 在本申请实施例中,该基于用户行为的数据验证方法可W应用于服务器侧。该 服务器可W对用户的操作行为进行记录,并接收用户触发的与账户信息关联的业务请求, 并从业务请求中获取到该用户的验证信息。例如该用户曾经在服务器注册过的账户信息 "zhangsan"。可W理解的是,在实际应用中,服务器可W根据用户触发的业务操作类型来确 定是否需要执行步骤301。例如,用户触发的业务请求可能是浏览产品信息等操作,那么在 运种情况下,服务器可W不触发对用户的验证信息的获取。而如果用户触发的业务请求是 敏感业务操作,即,设及账户信息(例如修改登录密码)和用户账户安全(例如使用该用户 账户进行付款操作)的业务操作,服务器再执行步骤301获取该用户的验证信息从而触发 后续的数据验证过程。
[0061] 可选的,在实际应用中,在业务请求中还可W携带用户需要生成的验证问题的候 选难度,该候选难度可W采用难度等级表示。例如A级、B级和C级,其中A级难度最高,而 C级难度最低。还可W表示成0级、1级、2级的方式,其中,0级的难度最低,而2级的难度 最高。当然,候选难度还可W采用别的方式标识,只需要预先在服务器进行定义即可。
[0062] 步骤302 :依据预先设置的用户行为数据集中与所述验证信息相关的用户行为数 据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和 与所述基础行为数据关联的深度扩展数据。
[0063] 服务器接收到账户信息之后,再从基于用户行为产生行为数据集中,筛选出一个 该账户信息相关的验证问题和候选答案。其中,候选答案包括正确答案和混淆答案。其中, 正确答案为针对该验证问题的正确回答,例如:《Ξ国演义》;对于验证问题对应多个正确 回答的情况,则会有多个正确答案。混淆答案是与正确答案近似的错误答案,例如,《水稱 传》。再例如,若验证问题为:3天前您购买商品的城市所属省份?那么对应的正确答案为: 浙江,而混淆答案可W为江苏和福建等。
[0064] 在实际应用中,验证问题可W采用不同的方式展示给用户。验证问题可W包含四 个基本元素:正确答案个数(例如,1个还是2个),时间,操作,和,目标对象。可W参考图 4所示,为一个验证问题的示例性界面示意图。当然,本领域技术人员可W毫无疑义的确定, 图4中仅仅为一个非常具体的示例,不应将其理解为本申请的限定。 阳0化]可W理解的是,在实际应用中,验证信息还可W包括:候选难度,该候选难度表示 用户需要的验证问题的难度。在本申请实施例中,候选难度可W按照如下所示的公式(二) 进行计算:
[0066] Comp (P) = c*d* (now-t) A 公式(二)
[0067] 其中,"c"为正确答案个数(例如:1,2,3,4) ;"d"为关联深度,即,验证问题的正确 答案对应的混淆答案在扩展关联树中的深度,例如1,2,或,3 (表示两个几点之间有几层); "now"表示当前时间,"t"表示用户操作的发生时间,即,该验证问题的目标对象所属操作的 操作发生时间;"h"为出现频率,表示验证问题的正确答案在历史验证过程中已出现过的 次数,初始情况下出现频率为1,而同一个验证问题每出现一次将该值加1,服务器会记录 每一个正确答案的出现频率h的数值。
[0068] 在验证信息还包括了候选难度的情况下,则步骤302具体可W包括:
[0069] 步骤A1 :从用户行为数据集中筛选出与所述账户信息相关的基础行为数据和与 之相关的多个关联扩展树。
[0070] 在本申请实施例中,从用户行为数据集中查询该账户信息所有基础行为数据,W 此确定出与基础行为数据相关的多个关联扩展树,该关联扩展树中包括基础行为数据和深 度扩展数据W及两者之间的关联关系。
[0071] 步骤A2:针对每一个关联扩展树中的每一个当前节点,执行确定验证问题和候选 答案流程,所述确定验证问题和候选答案流程包括预处理子流程和生成问题和答案子流 程。
[0072] 接着,遍历步骤A1中得到的每个关联扩展树中的每个节点,针对每个当前节点, 都执行确定问题和候选答案流程,从而得到候选问题和候选答案。 阳07引其中,步骤A2又可W包括:
[0074] 步骤B1 :执行预处理子流程,包括:计算根节点到所述当前节点的关联深度,与该 当前节点相同关系的兄弟节点个数,该当前节点所属的基础行为数据的操作时间与当前时 间的时间差,W及,该当前节点可构建的最大难度。其中,在扩展关联树中具有相同父节点 的节点互称为兄弟节点。
[0075] 首先,针对当前节点,执行预处理子流程,具体的,就是计算根节点到当前节点的 关联深度d,计算该当前节点相同关系的兄弟节点个数C (假设正确答案个数为4个,那么该 兄弟个数大于4的情况下也取4,与正确答案个数相等),计算当前节点所属的基础行为数 据的操作时间与当前时间的时间差t' = now-t,W及,该当前节点可构建验证问题的最大 难度:C = d*c*(now-t) A。其中,h可W从服务器中的记录中查询得到。
[0076] 步骤B2 :判断所述可构建的最大难度是否大于候选难度,如果是,则进入步骤B3, 如果否,则进入步骤B4。
[0077] 接着判断计算得到的可构建的最大难度是否大于候选难度,即,C是否大于用户需 要的候选难度。
[0078] 步骤B3 :执行生成问题和答案子流程,所述生成问题和答案子流程包括:依据根 节点到当前节点的关联路径生成验证问题的目标对象,并将所述兄弟节点个数确定为正确 答案的个数,所述时间差确定为验证问题的时间范围,所述基础行为数据的操作确定为验 证问题的操作类型,W生成初始验证问题;将所述当前节点和相同关系的兄弟节点对应的 节点数据确定为所述验证问题的初始候选答案。
[0079] 如果可构建的最大难度大于候选难度,说明当前节点所生成的验证问题能够符合 用户对验证问题的难度需求,因此,执行生成问题和答案子流程。具体的,先计算由根节点 到当前节点D的关联路径,然后针对该关联路径从根节点向当前节点进行拼接,形成验证 问题的目标对象。而步骤B1中计算得到的C作为验证题目的正确答案的个数,时间差t' 作为验证问题的时间范围,而当前记录的操作则作为验证问题的操作类型,再拼接目标对 象、正确答案的个数、时间范围和操作类型从而形成验证问题,并将该当前节点和所有相同 关联关系的兄弟节点作为该问题的正确答案,当兄弟节点个数大于4的情况下,随即选取4 个即可,并将该验证问题和对应的正确答案作为初始验证问题和对应的初始候选答案。其 中,初始验证问题和初始候选答案可W放置于预先构建的空候选集合中。
[0080] 步骤B4:将所述可构建的最大难度确定为候选难度,并执行所述生成问题和答案 子流程W生成最大难度的难度验证问题和难度候选答案。
[0081] 而如果可构建的最大难度小于候选难度,则说明该当前节点所生成的验证问题不 符合用户的难度需求,因此,直接将可构建的最大难度确定为候选难度,并生成当前节点的 最大难度的难度验证问题和难度候选答案。
[0082] 可W理解的是,在步骤A2中的循环中,每一次执行B4步骤,都会将候选难度进行 更新,因为每一次在步骤B2中计算的最大难度根据节点不同也会有所不同,所W最终会得 到所有节点中最大难度对应的难度验证问题和难度候选答案。也即,难度验证问题,代表了 在步骤A1中所查询出所有扩展关联树所能构建出的最大难度的验证问题。在本实施例中, 可W把扩展关联树中所能构建出的最大难度初始化为零,每执行一次步骤B4,就更新一次 最大难度,最终得到的难度验证问题和难度候选答案也就表示了扩展关联树中所能构建出 的最大难度的问题和答案。
[0083] 需要说明的是,采用步骤B4的目的,是为了避免用户所需要的候选难度比用户行 为数据所能构建的最大难度还要大从而无法为用户生成验证问题的情况。例如,假设用户 需要的候选难度为10级,而用户行为数据所能构建的最大难度为9级,那么执行完步骤A2 之后,将不存在初始验证问题和初始候选答案,而难度验证问题则为难度为9级的问题。而 如果用户需要的候选难度为10级,而用户行为数据所能构建的最大难度为15级,那么执行 完步骤A2之后,将初始验证问题将包括难度为10-15级别的各个问题,而难度验证问题则 是难度为15级的问题。
[0084] 接着进入步骤A3 :在相关的多个关联扩展树中的所有节点的确定验证问题和候 选答案流程都执行完毕的情况下,判断所述初始验证问题集是否为空,如果否,则进入步骤 A4 ;如果是,则进入步骤A5。
[00化]在步骤A2的循环执行完毕之后,判断初始验证问题集是否为空,即,判断是否不 存在满足用户的候选难度的初始验证问题。
[0086] 步骤A4 :从所述初始验证问题集中选择任意一个初始验证问题作为目标验证问 题,该选择的初始验证问题对应的候选答案确定为正确答案。
[0087] 如果存在满足用户的候选难度的初始验证问题,则从初始验证问题集中选择任意 一个初始验证问题作为目标验证问题,并将该选择的初始验证问题对应的候选答案确定为 正确答案。
[0088] 步骤A5 :将所述难度验证问题和难度候选答案分别确定为目标验证问题和正确 答案。
[0089] 而如果不存在满足用户的候选难度的初始验证问题,则将所述难度验证问题和难 度候选答案分别确定为目标验证问题和正确答案。
[0090] 步骤A6:从排除所述正确答案后的关联扩展树对应的节点数据中随机选择预设 个数的目标数据作为混淆答案。
[0091] 然后从关联扩展树对应的节点数据中排除正确答案,在剩余的节点数据中选择预 设个数的目标数据作为混淆答案。例如,假设正确答案个数为4个,而需要向用户返回9个 答案来供其选择,那么本步骤就选择9-4 = 5个混淆答案。
[0092] 步骤A7:将所述目标验证问题、正确答案和混淆答案确定为用户的验证问题和候 选答案。
[0093] 最终将目标验证问题、正确答案和混淆答案确定为用户的验证问题和候选答案。
[0094] 接着返回图3,进入步骤303 :将所述验证问题和候选答案按照预设展示方式进行 擅染W供向用户展示。
[0095] 将步骤302生成的验证问题和候选答案W选择题的方式擅染并展现给用户。可W 理解的是,在候选答案为9个的情况下,可W W九宫格的方式展示给用户。具体的,步骤303 可W包括:
[0096] 步骤C1 :将若干个候选答案分别擅染至相同大小的若干个答案图片上。
[0097] 在本实施例中,W候选答案为9个为例,将候选答案通过图像擅染技术擅染到相 同大小的9个图片上。
[0098] 步骤C2 :将所述验证问题和答案图片按照预设展示方式展示给用户。
[0099] 再通过浏览器JS技术,将9个图片放置到1个9宫格中,供用户进行点击选择。参 考图5所示,为实际应用中候选答案擅染为9宫格的一个示例性示意图。当然,本领域技术 人员也可W毫无疑义的确定,图5仅仅为实际中一个具体实例,不应将其理解为本申请的 限定。
[0100] 步骤304 :响应于用户针对所述验证问题和候选答案触发的反馈信息,对所述用 户进行数据验证。 阳101] 然后再参考用户针对验证问题和候选答案触发的反馈信息,对用户进行数据验 证。具体的,可W当用户错误次数达到预设的一个次数阀值时,再拒绝用户访问;否则,就重 新生成一个验证问题,并生成正确答案和混淆答案来和用户重新进行交互,直至用户回答 正确或达到预设的次数阔值时拒绝用户访问。具体实现过程可W包括: 阳102] 步骤D1 :响应于用户针对所述验证问题和候选答案第一次触发的反馈信息,判断 所述反馈信息中用户选择的候选答案是否为正确答案,如果是,则进入步骤D5 ;如果否,贝U 进入步骤D2。 阳103] 首先,用户在自己打开的网页上看到候选问题后,通过鼠标点击来勾选答案并向 服务器提交,服务器判断用户提交的答案是否正确,而对于答案为多个的多选题,需要用户 提交的答案集合与正确答案完全相等才通过。
[0104] 步骤D2 :判断当前是否达到预设的反馈次数,如果达到,则进入步骤D4,如果未达 到,则进入步骤D3。 阳105] 如果用户第一次回答不正确,优选的,可W不需要直接拒绝用户访问,因为用户可 能经过一段时间之后忘记了自己的操作,为了避免第一次回答不正确就直接拒绝正确用户 的访问的情况,在用户第一次回答不正确的时候先判断当前用户提交答案的次数是否达到 了预设的反馈次数,如果达到了再拒绝用户访问,而如果未达到,则进入步骤D3。
[0106] 步骤D3 :从所述初始验证问题集中重新选择一个验证问题作为目标验证问题,将 该选择的初始验证问题对应的候选答案确定为正确答案,并执行从排除所述正确答案后的 关联扩展树对应的节点数据中随机选择预设个数的目标数据作为混淆答案的步骤。
[0107] 在本步骤中,即,重新从初始验证问题集中重新选择一个验证问题作为目标验证 问题,将该选择的初始验证问题对应的候选答案确定为正确答案,并为正确答案确定相应 的混淆答案,从而将重新选择的验证问题、正确答案和混淆答案返回给用户。
[0108] 步骤D4 :拒绝所述用户的访问请求。
[0109] 步骤D5:验证通过。
[0110] 可见,在本申请实施例中,基于用户操作建立了用户行为数据集,该用户行为数据 集中还包括了基础行为数据,和与基础行为数据相关的深度扩展数据,因此,基于该用户行 为数据集而生成的验证问题就与用户曾经的操作行为密切相关,如果不是用户本人进行账 户信息的相关操作,就无法得知验证问题的正确答案,而且即便采用图像识别技术也无法 得知与某个用户行为有关的相关数据,从而使得本申请的数据验证方法能够基于用户实 现,从而提高了数据验证的安全性,降低了用户账户的安全隐患。 阳111] 参考图6,示出了本申请一种基于用户行为的数据推送方法实施例的流程图,本实 施例可W包括W下步骤:
[0112] 步骤601 :响应于用户在客户端上触发的与账户信息关联的验证请求,获取用户 的账户信息。
[0113] 在本实施例中,对应于数据验证方法实施例,本步骤的实现方式可W与步骤301 相同。具体实现过程可W参考步骤301的介绍。其中,客户端可W是用户手持的智能移动 终端等便携设备,也可W是个人计算机、台式电脑或平板电脑等终端。
[0114] 步骤602 :依据预先设置的用户行为数据集中与所述账户信息相关的用户行为数 据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和 与所述基础行为数据关联的深度扩展数据。
[0115] 在本步骤中,用户行为数据集可W和数据验证方法实施例中的相同,实现过程也 可W参考步骤302。
[0116] 步骤603 :将所述验证问题和候选答案发送至所述客户端,W便所述客户端调用 应用程序展示所述验证问题和候选答案。
[0117] 在本实施例中,服务器可W直接将验证问题和候选答案推送给客户端,并将验证 问题和候选答案的展示方式,例如是否按照九宫格进行擅染等,一起推送给客户端,由客户 端根据服务器发送的验证问题和候选答案,W及,预设的展示方式,将验证问题和候选答案 进行擅染,并展示给用户。具体的实现过程也可W参考步骤303的介绍,在此不再寶述。
[0118] 本实施例中,服务器根据用户行为数据集生成的验证问题和候选答案,是与用户 行为密切相关的,因此,基于该用户行为数据集而生成的验证问题就与用户曾经的操作行 为密切相关,如果不是用户本人进行账户信息的相关操作,就无法从候选答案中确定出正 确答案,而且即便采用图像识别技术也无法得知与某个用户行为有关的相关数据,从而使 得本申请的数据推送方法能够很好的规避现有技术的问题,降低了用户账户的安全隐患。
[0119] 对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是 本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些 步骤可W采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述 的实施例均属于优选实施例,所设及的动作和模块并不一定是本申请所必须的。
[0120] 与上述本申请一种基于用户行为的数据验证方法实施例所提供的方法相对应,参 见图7,本申请还提供了一种基于用户行为的数据验证装置实施例,在本实施例中,该装置 可W包括: 阳121] 获取信息模块701,用于响应于接收用户触发的与账户信息关联的业务请求,获取 所述用户的验证信息;其中,所述验证信息包括所述账户信息。
[0122] 确定模块702,用于依据预先设置的用户行为数据集中与所述验证信息相关的用 户行为数据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据可W包括:基 础行为数据和与所述基础行为数据关联的深度扩展数据。 阳123] 其中,用户行为数据集通过W下方式生成:获取用户操作时的操作信息,所述操作 信息包括:时间、地点、任务、操作内容和目标对象;依据所述操作信息生成所述用户的基 础行为数据;依据所述基础行为数据和预先设置的关联关系,生成深度扩展数据;其中,所 述关联关系表示所述基础行为数据与所述深度扩展数据之间的数据关系;W每个所述基础 行为数据为根节点,所述深度扩展数据为节点,所述关联关系为关联路径,生成多个关联扩 展树。
[0124] 其中,验证信息还可W包括:候选难度;所述候选答案包括正确答案和混淆答案; 则所述确定模块,包括:筛选子模块,用于从用户行为数据集中筛选出与所述账户信息相关 的基础行为数据和与之相关的多个关联扩展树;第一触发子模块,用于针对每一个关联扩 展树中的每一个当前节点,执行确定验证问题和候选答案流程,所述确定验证问题和候选 答案流程包括预处理子流程和生成问题和答案子流程;其中,所述预处理子流程包括:计 算根节点到所述当前节点的关联深度,与该当前节点相同关系的兄弟节点个数,该当前节 点所属的基础行为数据的操作时间与当前时间的时间差,W及,该当前节点可构建的最大 难度;判断所述可构建的最大难度是否大于候选难度,如果是,则执行生成问题和答案子流 程,所述生成问题和答案子流程包括:依据根节点到当前节点的关联路径生成验证问题的 目标对象,并将所述兄弟节点个数确定为正确答案的个数,所述时间差确定为验证问题的 时间范围,所述基础行为数据的操作确定为验证问题的操作类型,W生成初始验证问题;将 所述当前节点和相同关系的兄弟节点对应的节点数据确定为所述验证问题的初始候选答 案;如果否,则将所述可构建的最大难度确定为候选难度,并执行所述生成问题和答案子流 程W生成最大难度的难度验证问题和难度候选答案;第一判断子模块,用于在相关的多个 关联扩展树中的所有节点的确定验证问题和候选答案流程都执行完毕的情况下,判断所述 初始验证问题集是否为空;第一选择子模块,用于在所述第一判断子模块的结果为否的情 况下,从所述初始验证问题集中选择任意一个初始验证问题作为目标验证问题,该选择的 初始验证问题对应的候选答案确定为正确答案;第一确定子模块,用于在所述第一判断子 模块的结果为是的情况下,将所述难度验证问题和难度候选答案分别确定为目标验证问题 和正确答案;第二选择子模块,用于从排除所述正确答案后的关联扩展树对应的节点数据 中随机选择预设个数的目标数据作为混淆答案;和,第二确定子模块,用于将所述目标验证 问题、正确答案和混淆答案确定为用户的验证问题和候选答案。
[01巧]擅染模块703,用于将所述验证问题和候选答案按照预设展示方式进行擅染W供 向用户展示。 阳126] 其中,所述擅染模块703具体可W包括:擅染子模块,将若干个候选答案分别擅染 至相同大小的若干个答案图片上;展示子模块,用于将所述验证问题和答案图片按照预设 展示方式展示给用户。 阳127] 验证模块704,用于响应于用户针对所述验证问题和候选答案触发的反馈信息,对 所述用户进行数据验证。
[0128] 其中,所述验证模块704具体可W包括:第二判断子模块,用于响应于用户针对所 述验证问题和候选答案第一次触发的反馈信息,判断所述反馈信息中用户选择的候选答案 是否为正确答案;验证通过子模块,用于在所述判断子模块的结果为是的情况下,验证通 过;第Ξ判断子模块,用于在所述第二判断子模块的结果为否的情况下,判断当前是否达到 预设的反馈次数;拒绝访问子模块,用于在所述第Ξ判断子模块的结果为是的情况下,拒绝 所述用户的访问请求;重新选择子模块,用于在所述第Ξ判断子模块的结果为否的情况下, 从所述初始验证问题集中重新选择一个验证问题作为目标验证问题,将该选择的初始验证 问题对应的候选答案确定为正确答案,并执行从排除所述正确答案后的关联扩展树对应的 节点数据中随机选择预设个数的目标数据作为混淆答案的步骤。
[0129] 在本实施例中,基于用户操作建立了用户行为数据集,该用户行为数据集中还包 括了基础行为数据,和与基础行为数据相关的深度扩展数据,因此,基于该用户行为数据集 而生成的验证问题就与用户曾经的操作行为密切相关,如果不是用户本人进行账户信息的 相关操作,就无法得知验证问题的正确答案,而且即便采用图像识别技术也无法得知与某 个用户行为有关的相关数据,从而使得本申请的数据验证方法能够基于用户实现,从而提 高了数据验证的安全性,降低了用户账户的安全隐患。
[0130] 与上述本申请一种基于用户行为的数据推送方法实施例所提供的方法相对应,参 见图8,本申请还提供了一种基于用户行为的数据推送装置实施例,在本实施例中,该装置 可W集成于服务器上,该装置可W包括: 阳131] 获取信息模块801,用于响应于用户在客户端上触发的与账户信息关联的验证请 求,获取用户的账户信息。
[0132] 确定模块802,用于依据预先设置的用户行为数据集中与所述账户信息相关的用 户行为数据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行 为数据和与所述基础行为数据关联的深度扩展数据。
[0133] 推送模块803,用于将所述验证问题和候选答案发送至所述客户端,W便所述客户 端调用应用程序展示所述验证问题和候选答案。
[0134] 本实施例中,数据推送装置根据用户行为数据集生成的验证问题和候选答案,是 与用户行为密切相关的,因此,基于该用户行为数据集而生成的验证问题就与用户曾经的 操作行为密切相关,如果不是用户本人进行账户信息的相关操作,就无法从候选答案中确 定出正确答案,而且即便采用图像识别技术也无法得知与某个用户行为有关的相关数据, 从而使得本申请的数据推送方法能够很好的规避现有技术的问题,降低了用户账户的安全 隐患。
[0135] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重 点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。 对于装置类实施例而言,由于其与方法实施例基本相似,所W描述的比较简单,相关之处参 见方法实施例的部分说明即可。
[0136] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示运些实体或操作 之间存在任何运种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体 意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括 那些要素,而且还包括没有明确列出的其他要素,或者是还包括为运种过程、方法、物品或 者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并 不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0137] W上对本申请所提供的基于用户行为的数据验证方法及装置、基于用户行为的数 据推送方法及装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进 行了阐述,W上实施例的说明只是用于帮助理解本申请的方法及其核屯、思想;同时,对于本 领域的一般技术人员,依据本申请的思想,在【具体实施方式】及应用范围上均会有改变之处, 综上所述,本说明书内容不应理解为对本申请的限制。
【主权项】
1. 一种基于用户行为的数据验证方法,其特征在于,该方法包括: 响应于接收用户触发的与账户信息关联的业务请求,获取所述用户的验证信息;其中, 所述验证信息包括所述账户信息; 依据预先设置的用户行为数据集中与所述验证信息相关的用户行为数据,确定所述用 户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和与所述基础行 为数据关联的深度扩展数据; 将所述验证问题和候选答案按照预设展示方式进行渲染以供向用户展示; 响应于用户针对所述验证问题和候选答案触发的反馈信息,对所述用户进行数据验 证。2. 根据权利要求1所述的方法,其特征在于,所述用户行为数据集通过以下方式生成: 获取用户操作时的操作信息,所述操作信息包括:时间、地点、任务、操作内容和目标对 象; 依据所述操作信息生成所述用户的基础行为数据; 依据所述基础行为数据和预先设置的关联关系,生成深度扩展数据;其中,所述关联关 系表示所述基础行为数据与所述深度扩展数据之间的数据关系; 以每个所述基础行为数据为根节点,所述深度扩展数据为节点,所述关联关系为关联 路径,生成多个关联扩展树。3. 根据权利要求2所述的方法,其特征在于,所述验证信息还包括:候选难度;所述候 选答案包括正确答案和混淆答案;则所述依据预先设置的用户行为数据集中与所述验证信 息相关的用户行为数据,确定所述用户的验证问题和候选答案,包括: 从用户行为数据集中筛选出与所述账户信息相关的基础行为数据和与之相关的多个 关联扩展树; 针对每一个关联扩展树中的每一个当前节点,执行确定验证问题和候选答案流程,所 述确定验证问题和候选答案流程包括预处理子流程和生成问题和答案子流程;其中, 所述预处理子流程包括:计算根节点到所述当前节点的关联深度,与该当前节点相同 关系的兄弟节点个数,该当前节点所属的基础行为数据的操作时间与当前时间的时间差, 以及,该当前节点可构建的最大难度; 判断所述可构建的最大难度是否大于候选难度,如果是,则执行生成问题和答案子流 程,所述生成问题和答案子流程包括:依据根节点到当前节点的关联路径生成验证问题的 目标对象,并将所述兄弟节点个数确定为正确答案的个数,所述时间差确定为验证问题的 时间范围,所述基础行为数据的操作确定为验证问题的操作类型,以生成初始验证问题;将 所述当前节点和相同关系的兄弟节点对应的节点数据确定为所述验证问题的初始候选答 案;如果否,则将所述可构建的最大难度确定为候选难度,并执行所述生成问题和答案子流 程以生成最大难度的难度验证问题和难度候选答案; 在相关的多个关联扩展树中的所有节点的确定验证问题和候选答案流程都执行完毕 的情况下,判断所述初始验证问题集是否为空,如果否,则从所述初始验证问题集中选择任 意一个初始验证问题作为目标验证问题,该选择的初始验证问题对应的候选答案确定为正 确答案;如果是,则将所述难度验证问题和难度候选答案分别确定为目标验证问题和正确 答案; 从排除所述正确答案后的关联扩展树对应的节点数据中随机选择预设个数的目标数 据作为混淆答案; 将所述目标验证问题、正确答案和混淆答案确定为用户的验证问题和候选答案。4. 根据权利要求3所述的方法,其特征在于,所述响应于用户针对所述验证问题和候 选答案触发的反馈信息,对所述用户进行数据验证,包括: 响应于用户针对所述验证问题和候选答案第一次触发的反馈信息,判断所述反馈信息 中用户选择的候选答案是否为正确答案,如果是正确答案,则验证通过; 如果不是正确答案,则判断当前是否达到预设的反馈次数,如果达到,则拒绝所述用户 的访问请求; 如果未达到,则从所述初始验证问题集中重新选择一个验证问题作为目标验证问题, 将该选择的初始验证问题对应的候选答案确定为正确答案,并执行从排除所述正确答案后 的关联扩展树对应的节点数据中随机选择预设个数的目标数据作为混淆答案的步骤。5. 根据权利要求1所述的方法,其特征在于,所述将所述验证问题和候选答案按照预 设展示方式进行渲染以供向用户展示,包括: 将若干个候选答案分别渲染至相同大小的若干个答案图片上; 将所述验证问题和答案图片按照预设展示方式展示给用户。6. -种基于用户行为的信息推送方法,其特征在于,包括: 响应于用户在客户端上触发的与账户信息关联的验证请求,获取用户的账户信息; 依据预先设置的用户行为数据集中与所述账户信息相关的用户行为数据,确定所述用 户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和与所述基础行 为数据关联的深度扩展数据; 将所述验证问题和候选答案发送至所述客户端,以便所述客户端调用应用程序展示所 述验证问题和候选答案。7. -种基于用户行为的数据验证装置,其特征在于,包括: 获取信息模块,用于响应于接收用户触发的与账户信息关联的业务请求,获取所述用 户的验证信息;其中,所述验证信息包括所述账户信息; 确定模块,用于依据预先设置的用户行为数据集中与所述验证信息相关的用户行为数 据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和 与所述基础行为数据关联的深度扩展数据; 渲染模块,用于将所述验证问题和候选答案按照预设展示方式进行渲染以供向用户展 示; 验证模块,用于响应于用户针对所述验证问题和候选答案触发的反馈信息,对所述用 户进行数据验证。8. 根据权利要求7所述的装置,其特征在于,所述用户行为数据集通过以下方式生成: 获取用户操作时的操作信息,所述操作信息包括:时间、地点、任务、操作内容和目标对 象; 依据所述操作信息生成所述用户的基础行为数据; 依据所述基础行为数据和预先设置的关联关系,生成深度扩展数据;其中,所述关联关 系表示所述基础行为数据与所述深度扩展数据之间的数据关系; 以每个所述基础行为数据为根节点,所述深度扩展数据为节点,所述关联关系为关联 路径,生成多个关联扩展树。9. 根据权利要求8所述的装置,其特征在于,所述验证信息还包括:候选难度;所述候 选答案包括正确答案和混淆答案;则所述确定模块,包括: 筛选子模块,用于从用户行为数据集中筛选出与所述账户信息相关的基础行为数据和 与之相关的多个关联扩展树; 第一触发子模块,用于针对每一个关联扩展树中的每一个当前节点,执行确定验证问 题和候选答案流程,所述确定验证问题和候选答案流程包括预处理子流程和生成问题和答 案子流程;其中, 所述预处理子流程包括:计算根节点到所述当前节点的关联深度,与该当前节点相同 关系的兄弟节点个数,该当前节点所属的基础行为数据的操作时间与当前时间的时间差, 以及,该当前节点可构建的最大难度; 判断所述可构建的最大难度是否大于候选难度,如果是,则执行生成问题和答案子流 程,所述生成问题和答案子流程包括:依据根节点到当前节点的关联路径生成验证问题的 目标对象,并将所述兄弟节点个数确定为正确答案的个数,所述时间差确定为验证问题的 时间范围,所述基础行为数据的操作确定为验证问题的操作类型,以生成初始验证问题;将 所述当前节点和相同关系的兄弟节点对应的节点数据确定为所述验证问题的初始候选答 案;如果否,则将所述可构建的最大难度确定为候选难度,并执行所述生成问题和答案子流 程以生成最大难度的难度验证问题和难度候选答案; 第一判断子模块,用于在相关的多个关联扩展树中的所有节点的确定验证问题和候选 答案流程都执行完毕的情况下,判断所述初始验证问题集是否为空; 第一选择子模块,用于在所述第一判断子模块的结果为否的情况下,从所述初始验证 问题集中选择任意一个初始验证问题作为目标验证问题,该选择的初始验证问题对应的候 选答案确定为正确答案; 第一确定子模块,用于在所述第一判断子模块的结果为是的情况下,将所述难度验证 问题和难度候选答案分别确定为目标验证问题和正确答案; 第二选择子模块,用于从排除所述正确答案后的关联扩展树对应的节点数据中随机选 择预设个数的目标数据作为混淆答案; 第二确定子模块,用于将所述目标验证问题、正确答案和混淆答案确定为用户的验证 问题和候选答案。10. 根据权利要求9所述的装置,其特征在于,所述验证模块包括: 第二判断子模块,用于响应于用户针对所述验证问题和候选答案第一次触发的反馈信 息,判断所述反馈信息中用户选择的候选答案是否为正确答案; 验证通过子模块,用于在所述判断子模块的结果为是的情况下,验证通过; 第三判断子模块,用于在所述第二判断子模块的结果为否的情况下,判断当前是否达 到预设的反馈次数; 拒绝访问子模块,用于在所述第三判断子模块的结果为是的情况下,拒绝所述用户的 访问请求; 重新选择子模块,用于在所述第三判断子模块的结果为否的情况下,从所述初始验证 问题集中重新选择一个验证问题作为目标验证问题,将该选择的初始验证问题对应的候选 答案确定为正确答案,并执行从排除所述正确答案后的关联扩展树对应的节点数据中随机 选择预设个数的目标数据作为混淆答案的步骤。11. 根据权利要求7所述的装置,其特征在于,所述渲染模块包括: 渲染子模块,将若干个候选答案分别渲染至相同大小的若干个答案图片上; 展示子模块,用于将所述验证问题和答案图片按照预设展示方式展示给用户。12. -种基于用户行为的信息推送方法,其特征在于,包括: 获取信息模块,用于响应于用户在客户端上触发的与账户信息关联的验证请求,获取 用户的账户信息; 确定模块,用于依据预先设置的用户行为数据集中与所述账户信息相关的用户行为数 据,确定所述用户的验证问题和候选答案;其中,所述用户行为数据包括:基础行为数据和 与所述基础行为数据关联的深度扩展数据; 推送模块,用于将所述验证问题和候选答案发送至所述客户端,以便所述客户端调用 应用程序展示所述验证问题和候选答案。
【文档编号】G06F21/45GK105989256SQ201510067931
【公开日】2016年10月5日
【申请日】2015年2月9日
【发明人】姜博, 向涛
【申请人】阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1