一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于确定基于知识的认证问题的系统和方法与流程

2023-03-08 09:20:20 来源:中国专利 TAG:

用于确定基于知识的认证问题的系统和方法
1.相关申请的交叉引用
2.本技术要求获得2020年6月29日提交的第16/915,342号美国专利申请的优先权,其公开内容通过引用全部并入本文。
技术领域
3.本公开涉及用于确定基于知识的认证问题的系统和方法。


背景技术:

4.关于用户的信息可能被恶意行为者破坏或滥用的方式有很多。例如,账户可能被入侵,密码问题的答案可能被泄露。在另一个示例中,用户可能自己泄露了这些信息。因此,数据可能被用户或用户以外的行为者泄露。由于这些或其他原因,要认证用户的身份变得很困难。这种情况会带来更多的安全风险,而传统上已知的静态挑战响应机制会导致不可靠的验证。
5.这些缺陷和其他缺陷是存在的。因此,有必要克服这些问题,以安全、可靠和动态的方式认证用户,而不是认证一个欺诈性的用户,而不损害数据或用户完整性。


技术实现要素:

6.本发明实施例提供一种认证系统,包括一个或多个服务器,每个服务器包括一个或多个处理器。一个或多个处理器可以被配置为验证从应用接收的认证信息,所述应用包括用于在设备上执行的指令。一个或多个处理器可以被配置为在验证所述认证信息之后向所述应用发送对第一组信息的请求。一个或多个处理器可以被配置为从所述应用接收包括所述第一组信息的响应。一个或多个处理器可被配置为通过扫描一个或多个网站,使用一个或多个基于模板的算法解析所述第一组信息,以确定与用户相关联的公开可用信息。一个或多个处理器可以被配置为将一个或多个解析结果与第二组信息进行比较,所述一个或多个结果与所述第二组信息的比较产生与用户相关联的泄露信息。一个或多个处理器可以被配置为基于比较消除所述第二组信息的一个或多个部分。一个或多个处理器可以被配置为基于所述第二组信息的一个或多个部分的消除并通过用第四组信息补充所述第一组信息,向所述应用呈现第三组信息以认证用户。一个或多个处理器可以被配置为如果所述第三组信息未能达到预定阈值数量,则呈现第五组信息以认证用户。
7.本公开的实施例提供了一种对用户进行认证的方法。该方法可以包括验证认证信息。该方法可以包括在验证所述认证信息之后请求社交媒体句柄。该方法可包括通过扫描一个或多个网站,使用一个或多个基于模板的算法解析与所述社交媒体句柄相关联的社交媒体账户,以确定与用户相关联的公开可用信息。该方法可包括将解析结果与第一组基于知识的认证问题中的多个问题进行比较,所述一个或多个结果与所述第一组基于知识的认证问题中的多个问题的比较产生与用户相关联的泄露信息。该方法可以包括基于所述比较,消除所述基于知识的认证问题中的一个或多个问题。该方法可以包括呈现第二组基于
知识的认证问题,所述第二组基于知识的问题包括基于被消除的一个或多个问题的所述第一组基于知识的认证问题的修改版本。该方法可包括确定所述第二组基于知识的认证问题是否达到预定阈值数量,以及如果所述第二组基于知识的认证问题未能达到预定阈值数量,则呈现附加的基于知识的认证问题。该方法可以包括接收对所述第二组基于知识的认证问题的一个或多个响应,以认证用户。
8.本公开的实施例提供了一种计算机可读非暂时性介质,该介质包括计算机可执行指令,该指令在处理器上执行,并包括以下步骤:验证认证信息;在验证认证信息后获得第一组信息;通过扫描一个或多个网站,使用一个或多个基于模板的算法解析所述第一组信息,以确定与用户相关联的公开可用信息;将一个或多个解析结果与第二组信息进行比较,所述一个或多个结果与所述第二组信息的比较产生与用户相关联的泄露信息;基于所述比较,消除所述第二组信息的一个或多个部分;基于所述第二组信息的一个或多个部分的消除并通过用第四组信息补充所述第一组信息,向应用呈现第三组信息;如果所述第三组信息未能达到预定阈值数量,则呈现第五组信息以认证用户;以及接收对所述第三组信息的一个或多个响应,以认证用户。
附图说明
9.本公开的各种实施例,连同进一步的目的和优点,可以通过参考以下结合附图进行的描述而得到最好的理解。
10.图1描绘了根据示例性实施例的认证系统。
11.图2描绘了根据示例性实施例的用户认证方法。
12.图3描绘了根据示例性实施例的确定泄露的基于知识的认证问题的方法。
13.图4描绘了根据示例性实施例的使泄露的基于知识的认证问题无效的方法。
14.图5描绘了根据示例性实施例的创建用户注册的方法。
15.图6描绘了根据示例性实施例的认证系统。
具体实施方式
16.实施例的以下描述提供了附图标记的非限制性代表性示例,以具体描述本发明的不同方面的特征和教导。所描述的实施例应该被认为能够从实施例的描述中单独或与其他实施例组合实施。本领域技术人员在审查实施例的描述时,应该能够学习和理解本发明的不同描述方面。对实施例的描述应有助于对本发明的理解,以使未具体涵盖但在阅读了对实施例的描述的本领域技术人员的知识范围内的其他实现将被理解为与本发明的应用一致。
17.图1图示了认证系统100。认证系统100可以包括客户端设备105、网络110、服务器115和数据库120。尽管图1图示了系统100的组件的单个实例,但是系统100可以包括任何数量的组件。
18.系统100可以包括客户端设备105。客户端设备105可以包括一个或多个处理器102和存储器104。存储器104可以包括一个或多个应用106。客户端设备105可以与系统100的任意数量的组件进行数据通信。例如,客户端设备105可以通过网络110向服务器115发送数据。客户端设备105可以通过网络110向数据库120发送数据。没有限制,客户端设备105可以
是启用网络的计算机。如本文所提及的,启用网络的计算机可以包括但不限于计算机设备或通信设备,包括例如服务器、网络设备、个人计算机、工作站、电话、手持式pc、个人数字助理、非接触式卡、瘦客户端、胖客户端、互联网浏览器或其他设备。客户端设备105也可以是移动设备;例如,移动设备可能包括的iphone、ipod、ipad或运行apple操作系统的任何其他移动设备、运行microsoft的mobile操作系统的任何设备、运行google的操作系统的任何设备,和/或任何其他智能手机、平板电脑或类似的可穿戴移动设备。
19.客户端设备105可以包括处理电路并且可以包含附加组件,包括处理器、存储器、错误和奇偶校验/crc校验器、数据编码器、防冲突算法、控制器、命令解码器、安全原语和防篡改硬件,这是执行这里描述的功能所必需的。客户端设备105还可以包括显示和输入设备。显示器可以是用于呈现视觉信息的任何类型的设备,例如计算机显示器、平板显示器和移动设备屏幕,包括液晶显示器、发光二极管显示器、等离子面板和阴极射线管显示器。输入设备可以包括任何用于向用户设备输入信息的设备,这些设备是用户设备可以使用和支持的,如触摸屏、键盘、鼠标、光标控制设备、触屏、麦克风、数码相机、录像机或摄像机。这些设备可用于输入信息并与本文所述的软件和其他设备交互。
20.系统100可以包括网络110。在一些示例中,网络110可以是无线网络、有线网络或无线网络和有线网络的任何组合中的一个或多个,并且可以被配置为连接到系统100的任何一个组件。例如,客户端设备105可以被配置为经由网络110连接到服务器115。在一些示例中,网络110可以包括以下中的一个或多个:光纤网络、无源光网络、电缆网络、因特网网络、卫星网络、无线局域网(lan)、全球移动通信系统、个人通信服务、个人区域网络、无线应用协议,多媒体消息服务、增强消息服务、短消息服务、基于时分复用的系统、基于码分多址的系统、d-amps、wi-fi、固定无线数据、ieee 802.11b、802.15.1、802.11n和802.11g、蓝牙、nfc、射频识别(rfid)、wi-fi等。
21.此外,网络110可包括但不限于电话线、光纤、ieee以太网902.3、广域网、无线个人区域网、lan或全球网络,例如因特网。此外,网络110可支持因特网网络、无线通信网络、蜂窝网络等或其任何组合。网络110还可以包括一个网络或任何数量的上述示例性类型的网络,作为独立网络运行或相互协作。网络110可以利用与其通信耦合的一个或多个网络元件的一个或多个协议。网络110可以转换成其他协议或从其他协议转换成网络设备的一个或多个协议。尽管网络110被描述为单个网络,但应当理解,根据一个或多个示例,网络110可以包括多个互连网络,例如因特网、服务提供商的网络、有线电视网络、企业网络,例如信用卡协会网络和家庭网络。
22.系统100可以包括一个或多个服务器115。在一些示例中,服务器115可以包括耦合到存储器119的一个或多个处理器117。服务器115可以被配置为中央系统、服务器或平台以在不同时间控制和调用各种数据以执行多个工作流动作。服务器115可以被配置为连接到客户端设备105。服务器115可以与应用106进行数据通信。例如,服务器115可以通过一个或多个网络110与应用106进行数据通信。客户端设备105可以经由一个或多个网络110与一个或更多个服务器115通信,并且可以作为与服务器115的相应前端到后端对来操作。客户端设备105可以例如从在其上执行的应用106向服务器115发送一个或多个请求。一个或多个
请求可以与从服务器115检索数据相关联。服务器115可以从客户端设备105接收一个或多个请求。基于来自应用106的一个或多个请求,服务器115可以被配置为检索所请求的数据。服务器115可以被配置为将接收到的数据发送到应用106,接收到的数据响应于一个或多个请求。
23.服务器115可以包括应用,该应用包括用于在其上执行的指令。例如,该应用可以包括用于在服务器115上执行的指令。该应用可以与系统100的任何组件通信。例如,服务器115可以执行一个或多个应用,例如能够与系统100的一个或多个组件进行网络和/或数据通信,并发送和/或接收数据。非限制性地,服务器115可以是启用网络的计算机。如本文所提及的,启用网络的计算机可以包括但不限于计算机设备或通信设备,包括例如服务器、网络设备、个人计算机、工作站、电话、手持式pc、个人数字助理、非接触式卡、瘦客户端、胖客户端、互联网浏览器或其他设备。服务器115也可以是移动设备;例如,移动设备可能包括的iphone、ipod、ipad或运行apple操作系统的任何其他移动设备、运行microsoft的mobile操作系统的任何设备、运行google的操作系统的任何设备,和/或任何其他智能手机、平板电脑或类似的可穿戴移动设备。
24.服务器115可以包括处理电路并且可以包含附加组件,包括处理器、存储器、错误和奇偶校验/crc校验器、数据编码器、防冲突算法、控制器、命令解码器、安全原语和防篡改硬件,这是执行这里描述的功能所必需的。服务器115还可以包括显示和输入设备。显示器可以是用于呈现视觉信息的任何类型的设备,例如计算机显示器、平板显示器和移动设备屏幕,包括液晶显示器、发光二极管显示器、等离子面板和阴极射线管显示器。输入设备可以包括任何用于向用户设备输入信息的设备,这些设备是用户设备可以使用和支持的,如触摸屏、键盘、鼠标、光标控制设备、触屏、麦克风、数码相机、录像机或摄像机。这些设备可用于输入信息并与本文所述的软件和其他设备交互。
25.系统100可以包括一个或多个数据库120。数据库120可以包括关系数据库、非关系数据库或其他数据库,以及它们的任意组合实现,包括多个关系数据库和非关系数据库。在一些示例中,数据库120可以包括桌面数据库、移动数据库或内存数据库。此外,数据库120可以由客户端设备105或服务器115内部托管,或者数据库120可以在客户端设备105和服务器115外部托管,由基于云的平台托管,或者在与客户端设备105与服务器115进行数据通信的任何存储设备中托管。在一些示例中,数据库120可以与系统100的任何数量的组件进行数据通信。例如,服务器115可以被配置为从由处理器106发送的应用120中检索所请求的数据。服务器115可以被配置为通过网络110将接收到的数据从数据库120发送到应用106,接收到的数据响应于发送的一个或多个请求。在其他示例中,应用106可以被配置为经由网络110从数据库120发送对所请求数据的一个或多个请求。
26.在一些示例中,可以通过处理装置和/或计算装置(例如,计算机硬件装置)来执行根据本文描述的本公开的示例性程序。这样的处理/计算装置可以例如是计算机/处理器的全部或一部分,或者包括但不限于计算机/处理器,该计算机/处理器可以包括例如一个或多个微处理器,并使用存储在计算机可访问介质(例如ram、rom、硬盘或其他存储设备)上的指令。例如,计算机可访问介质可以是客户端设备105、服务器115和/或数据库120或其他计算机硬件装置的存储器的一部分。
27.在一些示例中,可以提供计算机可访问介质(例如,如上文所述,诸如硬盘、软盘、
记忆棒、cd-rom、ram、rom之类的存储设备,或其集合)(例如,与处理装置通信)。计算机可访问介质可以在其上包含可执行指令。此外或替代地,可以与计算机可访问介质分开提供存储装置,其可以向处理装置提供指令,以便将处理装置配置为执行某些示例性程序、过程和方法,例如,如本文所述。
28.一个或多个处理器117可以被配置为验证从应用106接收的认证信息。例如,应用106可以被配置为向一个或多个处理器117发送认证信息以进行验证。不限于此,认证信息可以包括从登录凭证、账户信息、安全信息、生物特征信息和/或其任意组合的组中选择的至少一个(例如,输入用户名、密码、帐号、安全码、一次性密码、安全问题答案、指纹、面部扫描、视网膜扫描、语音识别。)例如,应用106可以被配置为向一个或多个处理器117发送密码和安全码。一个或多个处理器117可以被配置为接收密码和安全码,并与参考认证信息进行比较,以便拒绝或允许对应用106的访问权限。通过这种方式,一个或多个处理器可以被配置为验证从应用106接收的认证信息。
29.一个或多个处理器117可以被配置为在验证认证信息之后向所述应用106发送对第一组信息的请求。在一些示例中,第一组信息可以包括与用户相关联的社交媒体信息。例如,社交媒体信息可以包括从社交媒体句柄、社交媒体用户名或登录名、社交媒体密码的组中选择的至少一个。不限于此,社交媒体句柄可以包括与社交媒体网络(例如等)相关联的任何句柄或标识符。例如,这可能包括用户名前面的“@”符号。因此,一个或多个处理器117、应用106和/或数据库120可以连接到这些社交媒体网络中的任何一个以获得第一组信息。不限于此,社交媒体用户名或登录可以包括与社交媒体帐户或简档相关联的任何名称或标识符。不限于此,社交媒体密码可以与社交媒体帐户、社交媒体句柄和/或社交媒体用户名或登录相关联。不限于此,社交媒体简档可以产生用户或用户以外的其他人发布的帖子,以及用户参与的帖子(包括但不限于点赞、转发、评论)。在一些示例中,可能希望用户通过应用106选择性地选择加入以向应用106提供社交媒体信息,使得用户可以选择性地决定社交媒体账户的哪些内容可以被共享和/或禁止共享。
30.在一些示例中,一个或多个处理器117可以被配置为从应用106检索第一组信息。例如,应用106可以被配置为显示一个或多个提示,以响应来自一个或多个处理器117的要求输入第一组信息的请求。在一些示例中,应用106可以响应于请求来发送和接收输入。例如,应用106可以被配置为显示社交媒体句柄的提示。应用106可以被配置为接收输入,包括但不限于语音输入、文本输入、图像输入和/或其任何组合,其包括第一组信息。在其他示例中,一个或多个处理器117可以被配置为经由一个或多个请求从数据库,例如数据库120,检索第一组信息。例如,一个或多个处理器117可以被配置为基于注册信息来匹配用户。不限于此,注册信息可以包括选自姓名、邮寄地址、电子邮件、生日、用户名、密码、帐号、信用卡号、借记卡号和/或其任意组合的组中的至少一项。
31.一个或多个处理器117可以被配置为从应用106接收包括所述第一组信息的响应。例如,应用106可以被配置成发送响应于来自一个或多个处理器117的请求的响应。应用106可以被配置为基于请求呈现用于输入第一组信息的显示。在一些示例中,应用106可以响应于请求来发送和接收输入。例如,应用106可以被配置为显示社交媒体句柄的提示。应用106可以被配置为接收输入,包括但不限于语音输入、文本输入、图像输入和/或其任何组合,其
包括第一组信息,例如社交媒体句柄。以这种方式,应用106可以被配置为发送包括第一组信息的一个或多个响应。
32.一个或多个处理器117可被配置为通过扫描一个或多个网站,使用一个或多个基于模板的算法解析所述第一组信息,以确定与用户相关联的公开可用信息。例如,一个或多个处理器117可以被配置为针对与第一组信息相关联的每种类型的网站,基于一个或多个基于模板的算法来验证一个或者多个解析结果。在一些示例中,针对一个网站的一个基于模板的算法可以不同于针对另一个网站的基于模板的算法。根据网站的类型,页面上可能存在已知的数据元素,在该数据元素中搜索泄露的信息。在一些示例中,页面可以包括具有特定类或标识符的文档对象模型(dom)元素,其可以指示该元素属于与用户相关联的公开可见帖子。具有其他标识符的其他数据元素可以指示发送给用户的帖子。这些数据元素可以包括文本,其包括消息本身的内容。在另一示例中,dom元素可以指示与用户相关联的其他个人或实体。这些可以包括但不限于用户关注或订阅的朋友和/或实体。应当理解,除了帖子之外,具有相应标识符的其他数据元素可以指示帖子、推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等,和/或其任何组合也可以与用户相关联。
33.在一些示例中,一个或多个处理器117可以被配置为利用从应用编程接口和网络爬虫的组中选出的至少一项来解析第一组信息。例如,一个或多个处理器117可以被配置为利用应用编程接口来解析第一组信息。以这种方式,可以通过一个或多个处理器117的一个或多个函数调用,调用一个或多个应用设计接口,以接收数据。例如,应用编程接口调用的响应可以包括列表,该列表包括用户发布的不同信息、这些信息是否是公开的、以及它们是什么时候发布的。在另一个示例中,应用编程接口调用的响应可以包括所有信息的列表,包括不同的信息和发布它们的用户。以这种方式,响应可以被选择性地过滤,以包括与有关用户相关联的消息。
34.在另一个示例中,一个或多个处理器117可以被配置为利用网络爬虫来解析第一组信息。例如,网络爬虫可被配置为通过互联网搜索与用户相关联的任何信息。在一些示例中,与用户相关联的信息可以是通过互联网公开提供的任何信息。网络爬虫可以寻找一个或多个单词和/或短语,例如在一个网站上,然后在与该网站相关的整个文本体内进行搜索。例如,网络爬虫可以被配置为导航到一个搜索引擎,输入信息,并启动搜索。不限于此,输入的信息可以包括任何用户的公共信息,如他们的名字或首字母、中间的首字母或中间的名字、他们的姓氏和/或其任何组合,以及任何和所有这些信息可以被部分地编辑。网络爬虫可以被配置为解析与启动的搜索相关的响应,并识别其中的一个或多个链接。一个或多个处理器117可以被配置为加载一个或多个链接中的每一个,然后在从该一个或多个链接中的每一个加载的各自网站的主体内搜索与该一个或多个基于知识的认证问题有关的任何信息。
35.可以理解的是,第一组信息不限于社交媒体信息或社交媒体账户。第一组信息可以包括注册信息。此外,其他网站或账户可以作为社交媒体信息或社交媒体账户的补充或替代而被包括。例如,可以扫描一个或多个网站以确定与用户相关联的公开可用信息。在一个示例中,与用户相关联的公开可用信息可以从与用户相关联的学校网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的雇主网站获得。在另一个示
例中,与用户相关联的公开可用信息可以从与用户相关联的非营利性网站或志愿者组织网站获得。在又一个示例中,与用户相关联的公开可用信息可以从列出与用户相关联的许可证的政府机构网站获得。
36.一个或多个处理器117可以被配置为将一个或多个解析结果与第二组信息进行比较。在一些示例中,一个或多个处理器117可被配置为将来自应用编程接口调用过程的解析结果与第二组信息进行比较。在另一个示例中,一个或多个处理器117可以被配置为将来自网络爬虫进程的解析结果与第二组信息进行比较。来自任何一个解析过程的一个或多个结果与第二组信息的比较可以产生与用户相关联的泄露信息。
37.例如,第二组信息可以包括基于知识的认证信息。在一些示例中,一个或多个处理器117可以被配置为生成第二组信息。在一些示例中,基于知识的认证信息可以包括一个或多个基于知识的认证问题。如本文所述,基于知识的认证问题可以是为了认证用户而请求或以其他方式获得的任何类型的信息所产生的任何问题。不限于此,基于知识的认证问题可以包括要求或以其他方式涉及出生月份或出生年份、母亲的婚前姓名、最喜欢的颜色、第一只宠物的名字、用户昵称、第一次买车或拥有汽车的时间、居住的第一个城市的名称、学校吉祥物、最喜欢的运动队、最喜欢的食物或饮料项目、最喜欢的书、最喜欢的老师、主管或老板的名字、最喜欢的音乐家、街道名称或任何其他地址信息、最喜欢的电影或电视节目、电子邮件地址、帐户号码、移动设备号码,或类似问题。可以理解的是,这些问题是示范性的基于知识的认证问题,第一问题可以由第二问题、第三问题、第四问题等替代,最喜欢的问题可以由不喜欢的问题替代,等等。可以进一步理解的是,这些问题可以要求任何部分(例如,年份的最后两位数而不是年份的完整四位数;电子邮件地址的最后四个字符而不是完整的电子邮件地址);而且名字不限于此(例如,母亲的婚前姓名可以由另一个人和/或中间名字代替;最喜欢的汽车或书籍可以由任何物品代替)。
38.在一个示例中,一个或多个处理器117可以被配置为产生关于用户的泄露信息,例如其吉祥物的名称,该吉祥物是作为解析过程的结果被识别的。例如,一个或多个处理器117可以被配置为通过第一组信息来确定,用户参加了一个特定的学校或大学或学术机构。不限于此,这第一组信息可以作为推文、转发、标签、照片说明、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等发布,如用户在特定时间内参加了该学校。基于该第一组信息,一个或多个处理器可以被配置为识别其学校吉祥物的名称,作为解析过程的结果,从而导致泄露信息。
39.在另一个示例中,一个或多个处理器117可以被配置为产生关于用户的泄露信息,例如他们母亲的婚前姓名,该信息被确定为解析过程的结果。例如,一个或多个处理器117可以被配置为通过第一组信息确定用户的母亲的婚前姓名,该母亲的婚前姓名被发布为推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目或类似内容。基于该第一组信息,一个或多个处理器117可以被配置为作为解析过程的结果来识别母亲的婚前姓名,从而导致泄露信息。
40.泄露信息可以包括一个或多个处理器117的一个或多个匹配,这些匹配关联于,但不限于从姓名、生日、吉祥物、学校、宠物、地点、汽车、娱乐偏好(例如,最喜欢的电视节目、电影、音乐、游戏、运动队、演员/女演员、音乐家、运动员)、家庭和/或其任何组合的组选择的至少一项,这可能与用户和任何数量的基于知识的认证问题相关联。一个或多个处理器
117可以被配置为基于比较消除所述第二组信息的一个或多个部分。这种消除过程可能会导致确定所提出的基于知识的认证问题的有效性或无效性,如下文所述。
41.可以理解的是,仅仅向社交媒体账户提供信息并不一定等同于提供泄露信息。例如,即使向提供了出生日期,也不等于提供了可与相应的基于知识的认证问题相匹配的泄露信息,因为如果不显示出生日期,那么该信息就不会被视为公开可用。在一些示例中,公开可用的信息可能包括用户向社交媒体账户或网站提供的任何信息,也包括允许发布此类信息的谅解或协议。
42.在上述说明性示例中,一个或多个处理器117可以被配置为基于与学校吉祥物、母亲的婚前姓名和/或其任何组合的一个或多个匹配,从第二组信息中消除一个或多个基于知识的认证问题。以这种方式,与这些类型的泄露信息中的每一个相关的第二组信息将由一个或多个处理器117基于各自的匹配从一组基于知识的认证问题中消除。因此,与泄露信息相关的基于知识的认证问题被阻止呈现,因为在某种程度上,泄露信息是公开的,并且可以呈现附加的基于知识的认证问题来代替被消除的基于知识的认证问题。以这种方式,泄露的基于知识的认证问题被识别、失效,并避免为用户的认证而呈现。举例来说,即使只有一个基于知识的认证问题从一组四个基于知识的认证问题中被淘汰,这代表了25%的改进,因为那个特定的泄露的基于知识的认证问题,无论多么明显或微小,都是无效的,并且是重要的,因为它不被用作用户认证的一部分。
43.一个或多个处理器117可以被配置为向所述应用106呈现第三组信息,以基于所述第二组信息的一个或多个部分的消除并通过用第四组信息补充所述第一组信息来认证用户。在一些示例中,第三组信息可以包括第二组信息的子集。例如,第二组信息可以包括第一数量的基于知识的认证问题,例如2个或更多个。第三组信息可以包括第二数量的基于知识的认证问题。第二数量可能比第一数量小。例如,第二组信息可以包括5个基于知识的认证问题,而第三组信息可以包括3个基于知识的认证问题。
44.在一些示例中,第四组信息可以包括与用户相关联的注册信息。不限于此,注册信息可以包括选自姓名、邮寄地址、电子邮件、生日、用户名、密码、帐号、信用卡号、借记卡号和/或其任意组合的组中的至少一项。例如,一个或多个处理器117可以被配置为通过用注册信息补充社交媒体信息来认证用户。在一些示例中,如果先前没有创建匹配的账户,注册信息可用于向用户注册账户。在其他示例中,注册信息也可用于选择用户访问应用106。在其他示例中,如果用户忘记了他们的登录名和/或密码,注册信息也可用于向用户注册账户。
45.一个或多个处理器117可以被配置为从应用106接收一个或多个附加响应,以便认证用户,所述一个或多个响应是对第三组信息的响应。例如,应用106可以被配置为向一个或多个处理器117发送一个或多个附加响应,以认证用户。以这种方式,第二数量的基于知识的认证问题可用于认证用户,并响应于来自一个或多个处理器117的一个或更多个附加请求。
46.一个或多个处理器117可以被配置为如果所述第三组信息未能达到预定阈值数量,则呈现第五组信息以认证用户。第五组信息可以包括补充到第二组信息的附加信息。附加信息可以包括第二组信息中包括的一个或多个附加的基于知识的认证问题,例如原始的一组基于知识认证问题。例如,如果第三组信息未能达到任何阈值,例如4,则可以呈现第五
组信息来认证用户。关于阈值,如果一个或多个处理器117确定没有足够的基于知识的认证问题被询问和/或没有足够的响应被接收或以其他方式响应于基于知识的验证问题,一个或多个处理器117可以被配置为呈现与第三组信息中呈现的那些不同的附加的基于知识的认证问题。因此,第三组信息的基于知识的认证问题或对其的响应可能无法达到4,在这种情况下,呈现第五组信息的一个或多个附加的基于知识认证问题,以便作为多因素认证过程的一部分来认证用户。
47.图2示出了用户认证的方法。方法200参考了认证系统100的相同或类似组件,如上文关于图1所解释的。
48.在框210,方法200可以包括验证认证信息。例如,服务器的一个或多个处理器可以被配置为验证从应用接收的认证信息。应用可以包括用于在客户端设备上执行的指令。例如,应用可以被配置为向一个或多个处理器发送认证信息以进行验证。不限于此,认证信息可以包括从登录凭证、账户信息、安全信息、生物特征信息和/或其任意组合的组中选择的至少一个(例如,输入用户名、密码、帐号、安全码、一次性密码、安全问题答案、指纹、面部扫描、视网膜扫描、语音识别。)例如,应用可以被配置为向一个或多个处理器发送密码和安全码。一个或多个处理器可以被配置为接收密码和安全码,并与参考认证信息进行比较,以便拒绝或允许对应用的访问权限。通过这种方式,一个或多个处理器可以被配置为验证从应用接收的认证信息。
49.一个或多个处理器可以被配置为在验证认证信息之后向所述应用发送对第一组信息的请求。在一些示例中,第一组信息可以包括与用户相关联的社交媒体信息。例如,社交媒体信息可以包括从社交媒体句柄、社交媒体用户名或登录名、社交媒体密码的组中选择的至少一个。不限于此,社交媒体句柄可以包括与社交媒体网络(例如等)相关联的任何句柄或标识符。例如,这可能包括用户名前面的“@”符号。因此,一个或多个处理器、应用和/或数据库可以连接到这些社交媒体网络中的任何一个以获得第一组信息。不限于此,社交媒体用户名或登录可以包括与社交媒体帐户或简档相关联的任何名称或标识符。不限于此,社交媒体密码可以与社交媒体帐户、社交媒体句柄和/或社交媒体用户名或登录相关联。不限于此,社交媒体简档可以产生用户或用户以外的其他人发布的帖子,以及用户参与的帖子(包括但不限于点赞、转发、评论)。在一些示例中,可能希望用户通过应用选择性地选择加入以向应用提供社交媒体信息,使得用户可以选择性地决定社交媒体账户的哪些内容可以被共享和/或禁止共享。
50.在框220,方法200可以包括请求社交媒体句柄。例如,一个或多个处理器可以被配置为从应用检索第一组信息。在一些示例中,应用可以被配置为显示一个或多个提示,以响应来自一个或多个处理器的要求输入第一组信息的请求。在一些示例中,应用可以响应于请求来发送和接收输入。例如,应用可以被配置为显示社交媒体句柄的提示。应用可以被配置为接收输入,包括但不限于语音输入、文本输入、图像输入和/或其任何组合,其包括第一组信息。在其他示例中,一个或多个处理器可以被配置为经由一个或多个请求从数据库检索第一组信息。例如,一个或多个处理器可以被配置为基于注册信息来匹配用户。不限于此,注册信息可以包括选自姓名、邮寄地址、电子邮件、生日、用户名、密码、帐号、信用卡号、借记卡号和/或其任意组合的组中的至少一项。
51.一个或多个处理器可以被配置为从所述应用接收包括所述第一组信息的响应。例如,应用可以被配置成发送响应于来自一个或多个处理器的请求的响应。应用可以被配置为基于请求呈现用于输入第一组信息的显示。在一些示例中,应用可以响应于请求来发送和接收输入。例如,应用可以被配置为显示社交媒体句柄的提示。应用可以被配置为接收输入,包括但不限于语音输入、文本输入、图像输入和/或其任何组合,其包括第一组信息,例如社交媒体句柄。以这种方式,应用可以被配置为发送包括第一组信息的一个或多个响应。
52.在框230,方法200可以包括解析与社交媒体句柄相关联的社交媒体帐户信息。例如,一个或多个处理器可被配置为通过扫描一个或多个网站,使用一个或多个基于模板的算法解析所述第一组信息,以确定与用户相关联的公开可用信息。例如,一个或多个处理器可以被配置针对与第一组信息相关联的每种类型的网站,基于一个或多个基于模板的算法来验证一个或者多个解析结果。在一些示例中,用于网站的一个基于模板的算法可以不同于用于另一个网站的基于模板的算法。根据网站的类型,页面上可能存在已知的数据元素,在该数据元素中搜索泄露的信息。在一些示例中,页面可以包括具有特定类或标识符的dom元素,其可以指示该元素属于与用户相关联的公开可见帖子。具有其他标识符的其他数据元素可以指示发送给用户的帖子。这些数据元素可以包括文本,其包括消息本身的内容。在另一示例中,dom元素可以指示与用户相关联的其他个人或实体。这些可以包括但不限于用户关注或订阅的朋友和/或实体。应当理解,除了帖子之外,具有相应标识符的其他数据元素可以指示帖子、推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等,和/或其任何组合也可以与用户相关联。
53.在一些示例中,一个或多个处理器可以被配置为利用从应用编程接口和网络爬虫的组中选出的至少一项来解析第一组信息。例如,一个或多个处理器可以被配置为利用应用编程接口来解析第一组信息。以这种方式,可以通过一个或多个处理器的一个或多个函数调用,调用一个或多个应用设计接口,以接收数据。例如,应用编程接口调用的响应可以包括列表,该列表包括用户发布的不同信息、这些信息是否是公开的、以及它们是什么时候发布的。在另一个示例中,应用编程接口调用的响应可以包括所有信息的列表,包括不同的信息和发布它们的用户。以这种方式,响应可以被选择性地过滤,以包括与有关用户相关联的消息。
54.在另一个示例中,一个或多个处理器可以被配置为利用网络爬虫来解析第一组信息。例如,网络爬虫可被配置为通过互联网搜索与用户相关联的任何信息。在一些示例中,与用户相关联的信息可以是通过互联网公开提供的任何信息。网络爬虫可以寻找一个或多个单词和/或短语,例如在一个网站上,然后在与该网站相关的整个文本体内进行搜索。例如,网络爬虫可以被配置为导航到一个搜索引擎,输入信息,并启动搜索。不限于此,输入的信息可以包括任何用户的公共信息,如他们的名字或首字母、中间的首字母或中间的名字、他们的姓氏和/或其任何组合,以及任何和所有这些信息可以被部分地编辑。网络爬虫可以被配置为解析与启动的搜索相关的响应,并识别其中的一个或多个链接。一个或多个处理器可以被配置为加载一个或多个链接中的每一个,然后在从该一个或多个链接中的每一个加载的各自网站的主体内搜索与该一个或多个基于知识的认证问题有关的任何信息。
55.可以理解的是,第一组信息不限于社交媒体信息或社交媒体账户。第一组信息可以包括注册信息。此外,其他网站或账户可以作为社交媒体信息或社交媒体账户的补充或
替代而被包括。例如,可以扫描一个或多个网站以确定与用户相关联的公开可用信息。在一个示例中,与用户相关联的公开可用信息可以从与用户相关联的学校网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的雇主网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的非营利性网站或志愿者组织网站获得。在又一个示例中,与用户相关联的公开可用信息可以从列出与用户相关联的许可证的政府机构网站获得。
56.在框240,方法200可以包括将解析结果与基于知识的认证问题进行比较。例如,一个或多个处理器可以被配置为将一个或多个解析结果与第二组信息进行比较。在一些示例中,一个或多个处理器可被配置为将来自应用编程接口调用过程的解析结果与第二组信息进行比较。在另一个示例中,一个或多个处理器可以被配置为将来自网络爬虫进程的解析结果与第二组信息进行比较。来自任何一个解析过程的一个或多个结果与第二组信息的比较可以产生与用户相关联的泄露信息。
57.例如,第二组信息可以包括基于知识的认证信息。在一些示例中,一个或多个处理器可以被配置为生成第二组信息。在一些示例中,基于知识的认证信息可以包括一个或多个基于知识的认证问题。如本文所述,基于知识的认证问题可以是为了认证用户而请求或以其他方式获得的任何类型的信息所产生的任何问题。
58.在一个示例中,一个或多个处理器可以被配置为产生关于用户的泄露信息,例如其吉祥物的名称,该吉祥物是作为解析过程的结果被识别的。例如,一个或多个处理器可以被配置为通过第一组信息来确定,用户参加了一个特定的学校或大学或学术机构。不限于此,这第一组信息可以作为推文、转发、标签、照片说明、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等发布,如用户在特定时间内参加了该学校。基于该第一组信息,一个或多个处理器可以被配置为识别其学校吉祥物的名称,作为解析过程的结果,从而导致泄露信息。
59.在另一个示例中,一个或多个处理器可以被配置为产生关于用户的泄露信息,例如他们母亲的婚前姓名,该信息被确定为解析过程的结果。例如,一个或多个处理器可以被配置为通过第一组信息确定用户的母亲的婚前姓名,该母亲的婚前姓名被发布为推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目或类似内容。基于该第一组信息,一个或多个处理器可以被配置为作为解析过程的结果来识别母亲的婚前姓名,从而导致泄露信息。
60.泄露信息可以包括一个或多个处理器的一个或多个匹配,这些匹配关联于,但不限于从姓名、生日、吉祥物、学校、宠物、地点、汽车、娱乐偏好、家庭和/或其任何组合的组选择的至少一项,这可能与用户和任何数量的基于知识的认证问题相关联。一个或多个处理器可以被配置为基于比较消除所述第二组信息的一个或多个部分。这种消除过程可能会导致确定所提出的基于知识的认证问题的有效性或无效性,如下文所述。
61.可以理解的是,仅仅向社交媒体账户提供信息并不一定等同于提供泄露信息。例如,即使向提供了出生日期,也不等于提供了可与相应的基于知识的认证问题相匹配的泄露信息,因为如果不显示出生日期,那么该信息就不会被视为公开可用。在一些示例中,公开可用的信息可能包括用户向社交媒体账户或网站提供的任何信息,也包括允许发布此类信息的谅解或协议。
62.在框250,方法200可以包括消除泄露的基于知识的认证问题。例如,一个或多个处理器可以被配置为基于与学校吉祥物、母亲的婚前姓名和/或其任何组合的一个或多个匹配,从第二组信息中消除一个或多个基于知识的认证问题。以这种方式,与这些类型的泄露信息中的每一个相关的第二组信息将由一个或多个处理器基于各自的匹配从一组基于知识的认证问题中消除。因此,与泄露信息相关的基于知识的认证问题被阻止呈现,因为在某种程度上,泄露信息是公开的,并且可以呈现附加的基于知识的认证问题来代替被消除的基于知识的认证问题。以这种方式,泄露的基于知识的认证问题被识别、失效,并避免为用户的认证而呈现。举例来说,即使只有一个基于知识的认证问题从一组四个基于知识的认证问题中被淘汰,这代表了25%的改进,因为那个特定的泄露的基于知识的认证问题,无论多么明显或微小,都是无效的,并且是重要的,因为它不被用作用户认证的一部分。
63.在框260处,方法200可以包括呈现未泄露的基于知识的认证问题。例如,一个或多个处理器可以被配置为基于所述第二组信息的一个或多个部分的消除并通过用第四组信息补充所述第一组信息,向所述应用呈现第三组信息以认证用户。在一些示例中,第三组信息可以包括第二组信息的子集。例如,第二组信息可以包括第一数量的基于知识的认证问题,例如2个或更多个。第三组信息可以包括第二数量的基于知识的认证问题。第二数量可能比第一数量小。例如,第二组信息可以包括5个基于知识的认证问题,而第三组信息可以包括3个基于知识的认证问题。
64.在一些示例中,第四组信息可以包括与用户相关联的注册信息。不限于此,注册信息可以包括从姓名、邮寄地址、电子邮件、生日、用户名、密码、帐号、信用卡号、借记卡号和/或其任意组合的组中选择的至少一项。例如,一个或多个处理器可以被配置为通过用注册信息补充社交媒体信息来认证用户。在一些示例中,如果先前没有创建匹配的账户,注册信息可用于向用户注册账户。在其他示例中,注册信息还可以用于选择用户使用应用。在其他示例中,如果用户忘记了他们的登录名和/或密码,注册信息也可用于向用户注册账户。
65.在框270,方法200可以包括基于阈值呈现附加的基于知识的认证问题。例如,一个或多个处理器可以被配置为如果所述第三组信息未能达到预定阈值数量,则呈现第五组信息以认证用户。第五组信息可以包括补充到第二组信息的附加信息。附加信息可以包括第二组信息中包括的一个或多个附加的基于知识的认证问题,例如原始的一组基于知识认证问题。例如,如果第三组信息未能达到任何阈值,例如4,则可以呈现第五组信息来认证用户。关于阈值,如果一个或多个处理器确定没有足够的基于知识的认证问题被询问和/或没有足够的响应被接收或以其他方式响应于基于知识的验证问题,一个或多个处理器可以被配置为呈现与第三组信息中呈现的那些不同的附加的基于知识的认证问题。因此,第三组信息的基于知识的认证问题或对其的响应可能无法达到4,在这种情况下,呈现第五组信息的一个或多个附加的基于知识认证问题,以便作为多因素认证过程的一部分来认证用户。
66.在框280,方法200可以包括接收一个或多个响应以认证用户。例如,一个或多个处理器可以被配置为从应用接收一个或多个附加响应,以便认证用户,所述一个或多个响应是对第三组信息的响应。例如,应用可以被配置为向一个或多个处理器发送一个或多个附加响应,以认证用户。以这种方式,第二数量的基于知识的认证问题可用于认证用户,并响应于来自一个或多个处理器的一个或更多个附加请求。
67.图3描绘了确定基于知识的认证问题的方法300。图3可以参考图1的认证系统100
和图2的方法200的相同或类似组件。
68.在框310,方法300可以包括通过扫描一个或多个网站来确定与用户相关联的公开可用信息。例如,服务器的一个或多个处理器可以被配置为扫描一个或更多个网站,以使用一个或一个以上基于模板的算法来确定与用户相关联的公开可用信息。例如,一个或多个处理器可以被配置为针对与第一组信息相关联的每种类型的网站,基于一个或多个基于模板的算法来验证一个或者多个扫描结果。在一些示例中,针对一个网站的一个基于模板的算法可以不同于针对另一个网站的基于模板的算法。根据网站的类型,页面上可能存在已知的数据元素,在该数据元素中搜索泄露的信息。在一些示例中,页面可以包括具有特定类或标识符的dom元素,其可以指示该元素属于与用户相关联的公开可见帖子。具有其他标识符的其他数据元素可以指示发送给用户的帖子。这些数据元素可以包括文本,其包括消息本身的内容。在另一示例中,dom元素可以指示与用户相关联的其他个人或实体。这些可以包括但不限于用户关注或订阅的朋友和/或实体。应当理解,除了帖子之外,具有相应标识符的其他数据元素可以指示帖子、推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等,和/或其任何组合也可以与用户相关联。
69.在一些示例中,一个或多个处理器可以被配置为利用从应用编程接口和网络爬虫的组中选择的至少一项来扫描第一组信息。例如,一个或多个处理器可以被配置为利用应用编程接口来扫描第一组信息。以这种方式,可以通过一个或多个处理器的一个或多个函数调用,调用一个或多个应用设计接口,以接收数据。例如,应用编程接口调用的响应可以包括列表,该列表包括用户发布的不同信息、这些信息是否是公开的、以及它们是什么时候发布的。在另一个示例中,应用编程接口调用的响应可以包括所有信息的列表,包括不同的信息和发布它们的用户。以这种方式,响应可以被选择性地过滤,以包括与有关用户相关联的消息。
70.在另一个示例中,一个或多个处理器可以被配置为利用网络爬虫来扫描第一组信息。例如,网络爬虫可被配置为通过互联网搜索与用户相关联的任何信息。在一些示例中,与用户相关联的信息可以是通过互联网公开提供的任何信息。网络爬虫可以寻找一个或多个单词和/或短语,例如在一个网站上,然后在与该网站相关的整个文本体内进行搜索。例如,网络爬虫可以被配置为导航到一个搜索引擎,输入信息,并启动搜索。不限于此,输入的信息可以包括任何用户的公共信息,如他们的名字或首字母、中间的首字母或中间的名字、他们的姓氏和/或其任何组合,以及任何和所有这些信息可以被部分地编辑。网络爬虫可以被配置为解析与启动的搜索相关的响应,并识别其中的一个或多个链接。一个或多个处理器可以被配置为加载一个或多个链接中的每一个,然后在从该一个或多个链接中的每一个加载的各自网站的主体内搜索与该一个或多个基于知识的认证问题有关的任何信息。
71.可以理解的是,第一组信息不限于社交媒体信息或社交媒体账户。第一组信息可以包括注册信息。此外,其他网站或账户可以作为社交媒体信息或社交媒体账户的补充或替代而被包括。例如,可以扫描一个或多个网站以确定与用户相关联的公开可用信息。在一个示例中,与用户相关联的公开可用信息可以从与用户相关联的学校网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的雇主网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的非营利性网站或志愿者组织网站获得。在又一个示例中,与用户相关联的公开可用信息可以从列出与用户相关联的许可
证的政府机构网站获得。
72.在框320,方法300可以包括将扫描结果与一组基于知识的认证问题进行比较。例如,一个或多个处理器可以被配置为将一个或多个扫描结果与第二组信息进行比较。在另一个示例中,一个或多个处理器可以被配置为将来自网络爬虫进程的扫描结果与第二组信息进行比较。来自任何一个扫描过程的一个或多个结果与第二组信息的比较可以产生与用户相关联的泄露信息。
73.例如,第二组信息可以包括基于知识的认证信息。在一些示例中,一个或多个处理器可以被配置为生成第二组信息。在一些示例中,基于知识的认证信息可以包括一个或多个基于知识的认证问题。如本文所述,基于知识的认证问题可以是为了认证用户而请求或以其他方式获得的任何类型的信息所产生的任何问题。
74.在框330,方法300可以包括识别扫描结果与一组基于知识的认证问题之间的一个或多个匹配。例如,一个或多个处理器可以被配置为产生关于用户的泄露信息,例如其吉祥物的名称,该吉祥物是作为扫描过程的结果被识别的。例如,一个或多个处理器可以被配置为通过第一组信息来确定,用户参加了一个特定的学校或大学或学术机构。不限于此,这第一组信息可以作为推文、转发、标签、照片说明、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等发布,如用户在特定时间内参加了该学校。基于该第一组信息,一个或多个处理器可以被配置为识别其学校吉祥物的名称,作为扫描过程的结果,从而导致泄露信息。
75.在另一个示例中,一个或多个处理器可以被配置为产生关于用户的泄露信息,例如他们母亲的婚前姓名,该信息被确定为扫描过程的结果。例如,一个或多个处理器可以被配置为通过第一组信息确定用户的母亲的婚前姓名,该母亲的婚前姓名被发布为推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目或类似内容。基于该第一组信息,一个或多个处理器可以被配置为作为扫描过程的结果来识别母亲的婚前姓名,从而导致泄露信息。
76.可以理解的是,仅仅向社交媒体账户提供信息并不一定等同于提供泄露信息。例如,即使向提供了出生日期,也不等于提供了可与相应的基于知识的认证问题相匹配的泄露信息,因为如果不显示出生日期,那么该信息就不会被视为公开可用。在一些示例中,公开可用的信息可能包括用户向社交媒体账户或网站提供的任何信息,也包括允许发布此类信息的谅解或协议。
77.在框340,方法300可以包括基于对一个或多个匹配的识别来确定一个或多个泄露的基于知识的认证问题。例如,泄露的基于知识的认证问题可以包括由一个或多个处理器进行的一个或多个匹配,这些匹配与但不限于至少一个选自姓名、生日、吉祥物、学校、宠物、地点、汽车、娱乐偏好、家庭和/或其任何组合的可能与用户和任何数量的基于知识的认证问题相关联。
78.图4描绘了根据示例性实施例的使泄露的基于知识的认证问题无效的方法。图4可以参考图1的系统100、图2的方法200和图3的方法300的相同或类似组件。
79.在框410,方法400可以包括确定泄露的基于知识的认证问题。例如,服务器的一个或多个处理器可以被配置为确定一个或多个泄露的基于知识的认证问题,如上面参考图3所解释的。
80.在框420,方法400可以包括使泄露的基于知识的认证问题无效。例如,一个或多个处理器可以被配置为基于与从姓名、生日、吉祥物、学校、宠物、位置、汽车、娱乐偏好、家庭和/或任何组合的组中选择的至少一项的一个或更多个匹配,使来自第二组信息的一个或者更多个基于知识的认证问题无效。
81.在框430,方法400可以包括移除无效的泄露的基于知识的认证问题。例如,与这些类型的泄露信息中的每一个相关的第二组信息将由一个或多个处理器基于各自的匹配从一组基于知识的认证问题中移除。因此,与泄露信息相关的基于知识的认证问题不被呈现用于认证,因为在某种程度上,泄露信息是公开可用的,并且可以呈现附加的基于知识的认证问题来代替被消除的基于知识的认证问题。以这种方式,泄露的基于知识的认证问题被识别、失效,并避免为用户的认证而呈现。举例来说,即使只有一个基于知识的认证问题从一组四个基于知识的认证问题中被淘汰,这代表了25%的改进,因为那个特定的泄露的基于知识的认证问题,无论多么明显或微小,都是无效的,并且是重要的,因为它不被用作用户认证的一部分。
82.在框440处,方法400可以包括呈现未泄露的基于知识的认证问题。例如,一个或多个处理器可以被配置为基于所述第二组信息的一个或多个部分的移除并通过用第四组信息补充所述第一组信息,向所述应用呈现第三组信息以认证用户。在一些示例中,未泄露的基于知识的认证问题排除了泄露的基于信息的认证。
83.在一些示例中,第三组信息可以包括第二组信息的子集。例如,第二组信息可以包括第一数量的基于知识的认证问题,例如2个或更多个。第三组信息可以包括第二数量的基于知识的认证问题。第二数量可能比第一数量小。例如,第二组信息可以包括5个基于知识的认证问题,而第三组信息可以包括3个基于知识的认证问题。
84.在一些示例中,第四组信息可以包括与用户相关联的注册信息。不限于此,注册信息可以包括选自姓名、邮寄地址、电子邮件、生日、用户名、密码、帐号、信用卡号、借记卡号和/或其任意组合的组中的至少一项。例如,一个或多个处理器可以被配置为通过用注册信息补充社交媒体信息来认证用户。在一些示例中,如果先前没有创建匹配的账户,注册信息可用于向用户注册账户。在其他示例中,注册信息还可以用于选择用户使用应用。在其他示例中,如果用户忘记了他们的登录名和/或密码,注册信息也可用于向用户注册账户。
85.一个或多个处理器可以被配置为从应用接收一个或多个附加响应,以便认证用户,所述一个或多个响应是对第三组信息的响应。例如,应用可以被配置为向一个或多个处理器发送一个或多个附加响应,以认证用户。以这种方式,第二数量的基于知识的认证问题可用于认证用户,并响应于来自一个或多个处理器的一个或更多个附加请求。
86.一个或多个处理器可以被配置为如果所述第三组信息未能达到预定阈值数量,则呈现第五组信息以认证用户。第五组信息可以包括补充到第二组信息的附加信息。附加信息可以包括第二组信息中包括的一个或多个附加的基于知识的认证问题,例如原始的一组基于知识的认证问题。例如,如果第三组信息未能达到任何阈值,例如4,则可以呈现第五组信息来认证用户。关于阈值,如果一个或多个处理器确定没有足够的基于知识的认证问题被询问和/或没有足够的响应被接收或以其他方式响应于基于知识的验证问题,一个或多个处理器可以被配置为呈现与第三组信息中呈现的那些不同的附加的基于知识的认证问题。因此,第三组信息的基于知识的认证问题或对其的响应可能无法达到4,在这种情况下,
呈现第五组信息的一个或多个附加的基于知识认证问题,以便作为多因素认证过程的一部分来认证用户。
87.图5描绘了根据示例性实施例的创建用户注册的方法500。图5可以参考图1的认证系统100、图2的方法200、图3的方法300和图4的方法400的相同或类似组件。
88.在框510,方法500可以包括请求用户注册。在一些示例中,用户注册可以与帐户相关联。在一些示例中,用户注册可用于安全网站。例如,可以经由包括用于在设备上执行的指令的应用来提示用户注册帐户或网站。
89.在框520,方法500可以包括提供社交媒体信息。例如,可以经由应用从用户提供社交媒体信息。应用可以包括用于在客户端设备上执行的指令。在另一示例中,社交媒体信息可以从除应用之外的源(例如服务器或数据库)提供。如上所述,提供给服务器的一个或多个处理器的信息不限于社交媒体信息。
90.在一些示例中,第一组信息可以包括与用户相关联的社交媒体信息。例如,社交媒体信息可以包括从社交媒体句柄、社交媒体用户名或登录名、社交媒体密码的组中选择的至少一个。不限于此,社交媒体句柄可以包括与社交媒体网络(例如等)相关联的任何句柄或标识符。例如,这可能包括用户名前面的“@”符号。因此,一个或多个处理器、应用和/或数据库可以连接到这些社交媒体网络中的任何一个以获得第一组信息。不限于此,社交媒体用户名或登录可以包括与社交媒体帐户或简档相关联的任何名称或标识符。不限于此,社交媒体密码可以与社交媒体帐户、社交媒体句柄和/或社交媒体用户名或登录相关联。不限于此,社交媒体简档可以产生用户或用户以外的其他人发布的帖子,以及用户参与的帖子(包括但不限于点赞、转发、评论)。在一些示例中,可能希望用户通过应用选择性地选择加入以向应用提供社交媒体信息,使得用户可以选择性地决定社交媒体账户的哪些内容可以被共享和/或禁止共享。
91.在一些示例中,一个或多个处理器可以被配置为从应用检索第一组信息。例如,应用可以被配置为显示一个或多个提示,以响应来自一个或多个处理器的要求输入第一组信息的请求。在一些示例中,应用可以响应于请求来发送和接收输入。例如,应用可以被配置为显示社交媒体句柄的提示。应用可以被配置为接收输入,包括但不限于语音输入、文本输入、图像输入和/或其任何组合,其包括第一组信息。在其他示例中,一个或多个处理器可以被配置为经由一个或多个请求从数据库检索第一组信息。例如,一个或多个处理器可以被配置为基于注册信息来匹配用户。不限于此,注册信息可以包括选自姓名、邮寄地址、电子邮件、生日、用户名、密码、帐号、信用卡号、借记卡号和/或其任意组合的组中的至少一项。
92.一个或多个处理器可以被配置为从所述应用接收包括所述第一组信息的响应。例如,应用可以被配置成发送响应于来自一个或多个处理器的请求的响应。应用可以被配置为基于请求呈现用于输入第一组信息的显示。在一些示例中,应用可以响应于请求来发送和接收输入。例如,应用可以被配置为显示社交媒体句柄的提示。应用可以被配置为接收输入,包括但不限于语音输入、文本输入、图像输入和/或其任何组合,其包括第一组信息,例如社交媒体句柄。以这种方式,应用可以被配置为发送包括第一组信息的一个或多个响应。
93.在框530,方法500可以包括搜索社交媒体信息以收集与用户相关联的公共信息。例如,一个或多个处理器可以被配置为搜索社交媒体信息以收集与用户相关联的公共信
息。一个或多个处理器可以被配置为搜索社交媒体简档以收集关于用户的任何可用信息。
94.用户可以直接或间接地获得该信息。在一些示例中,用户可以直接获得信息。例如,用户可能发布了一张照片或评论,在照片或评论中他们透露了可用于确定潜在泄露信息的信息。在一个示例中,用户可能在社交媒体帖子上发表了评论,表示他们期待参加高中同学会。在另一个示例中,用户可能已经标记了他们高中的照片或他们高中朋友的照片。即使用户没有明确指出其高中的名称,或者甚至没有在其社交媒体简档中包括关于其高中的任何信息,或者在其社交网络简档中以其他方式指出,该信息仍然可以被视为公开的。在另一个示例中,如果用户计划参加高中同学会,则用户可能会回复墙上的帖子,在回复关于他们对高中同学会的兴趣或可用性的帖子或评论时使用“是”或“计划在那里”等示例性短语,“一次是狮子,永远是狮子”,或“狮子2000”,从而暗示或以其他方式确认这确实是他们就读的高中,但不限于,与高中和/或就读年份标识的吉祥物名称。在一些示例中,这些短语可能不明确包括高中的名字。
95.在另一示例中,信息可以由用户以外的其他人提供,例如间接提供。例如,用户可能在一篇帖子或照片中被标记为他们是高中的一部分。例如,另一个连接或朋友可能已经确定该用户参加了该高中。在另一个示例中,一个帖子或评论可能暗示了用户曾就读的高中,使用示范性的短语,如“很快见”、“下个月和我的朋友一起去聚会”或“期待重访我的大一同学”。在这些示例中,不要求明确指出高中的名称,以便收集关于用户的高中的公共信息。可以理解的是,这些示例是说明性的,其他信息可以从社交媒体资料中收集。
96.该信息可以通过扫描一个或多个网站,使用一个或多个基于模板的算法进行搜索,以确定与用户相关联的公开信息。例如,一个或多个处理器可以被配置为针对与第一组信息相关联的每种类型的网站,基于一个或多个基于模板的算法来验证一个或者多个搜索结果。在一些示例中,用于网站的一个基于模板的算法可以不同于用于另一个网站的基于模板的算法。根据网站的类型,页面上可能存在已知的数据元素,在该数据元素中搜索泄露的信息。在一些示例中,页面可以包括具有特定类或标识符的dom元素,其可以指示该元素属于与用户相关联的公开可见帖子。具有其他标识符的其他数据元素可以指示发送给用户的帖子。这些数据元素可以包括文本,其包括消息本身的内容。在另一示例中,dom元素可以指示与用户相关联的其他个人或实体。这些可以包括但不限于用户关注或订阅的朋友和/或实体。应当理解,除了帖子之外,具有相应标识符的其他数据元素可以指示帖子、推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等,和/或其任何组合也可以与用户相关
97.在一些示例中,一个或多个处理器可以被配置为利用从应用编程接口和网络爬虫的组中选出的至少一项来搜索第一组信息。例如,一个或多个处理器可以被配置为利用应用编程接口来搜索第一组信息。以这种方式,可以通过一个或多个处理器的一个或多个函数调用,调用一个或多个应用设计接口,以接收数据。例如,应用编程接口调用的响应可以包括列表,该列表包括用户发布的不同信息、这些信息是否是公开可用的、以及它们是什么时候发布的。在另一个示例中,应用编程接口调用的响应可以包括所有信息的列表,包括不同的信息和发布它们的用户。以这种方式,响应可以被选择性地过滤,以包括与有关用户相关联的消息。
98.在另一个示例中,一个或多个处理器可以被配置为利用网络爬虫来搜索第一组信
息。例如,网络爬虫可被配置为通过互联网搜索与用户相关联的任何信息。在一些示例中,与用户相关联的信息可以是通过互联网公开提供的任何信息。网络爬虫可以寻找一个或多个单词和/或短语,例如在一个网站上,然后在与该网站相关的整个文本体内进行搜索。例如,网络爬虫可以被配置为导航到一个搜索引擎,输入信息,并启动搜索。不限于此,输入的信息可以包括任何用户的公共信息,如他们的名字或首字母、中间的首字母或中间的名字、他们的姓氏和/或其任何组合,以及任何和所有这些信息可以被部分地编辑。网络爬虫可以被配置为解析与启动的搜索相关的响应,并识别其中的一个或多个链接。一个或多个处理器可以被配置为加载一个或多个链接中的每一个,然后在从该一个或多个链接中的每一个加载的各自网站的主体内搜索与该一个或多个基于知识的认证问题有关的任何信息。
99.可以理解的是,第一组信息不限于社交媒体信息或社交媒体账户。第一组信息可以包括注册信息。此外,其他网站或账户可以作为社交媒体信息或社交媒体账户的补充或替代而被包括。例如,可以扫描一个或多个网站以确定与用户相关联的公开可用信息。在一个示例中,与用户相关联的公开可用信息可以从与用户相关联的学校网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的雇主网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的非营利性网站或志愿者组织网站获得。在又一个示例中,与用户相关联的公开可用信息可以从列出与用户相关联的许可证的政府机构网站获得。
100.在框540处,方法500可以包括基于公共信息确定哪些基于知识的认证问题被泄露。例如,一个或多个处理器可以被配置为基于所收集的公开可用信息和包括所收集的公共信息在内的基于知识的认证问题相对应、暗示或以其他方式相关的基于知识的认证问题之间的一个或更多个匹配来确定泄露的基于知识的认证问题。例如,服务器的一个或多个处理器可以被配置为确定一个或更多个基于知识的认证问题,如上面参考图3所解释的。
101.返回到前面的示例,可以识别高中吉祥物,其可以与通过上述直接或间接方式提供的高中名称相关联。因此,如果基于知识的认证问题中的任何问题与包括但不限于高中的名称和/或吉祥物的名称和(或)高中出勤率和/或高中所在地的问题相匹配,则可以确定该问题被泄露。
102.在框550,方法500可以包括消除泄露的基于知识的认证问题。例如,在基于公共信息确定哪些基于知识的认证问题被泄露之后,可以消除该特定问题。例如,请求回答高中名称、吉祥物名称、高中入学时间、高中位置或任何其他暗示高中的信息和/或其任何组合的基于知识的认证问题可以被消除,不呈现给用户进行认证。举例来说,一组基于知识的认证问题可以包括关于最喜欢的颜色、高中吉祥物、高中和母亲的婚前姓名的问题。在这种情况下,基于高中吉祥物知识的认证问题和基于高中知识的验证问题可能会被消除,因为它们被认为已被泄露。
103.在框560,方法500可以包括请求从剩余的未被泄露的一组基于知识的认证问题中选择基于知识的认证问题。例如,在被泄露的基于知识的认证问题被消除后,可以允许用户选择性地识别剩余的未泄露的基于指示的认证问题中的哪一个要响应。在另一示例中,所述一个或多个处理器可以被配置为选择性地识别要回答剩余的未泄露的基于知识的认证中的哪一个。响应于选择性识别的请求,应用可以被配置为发送一个或多个响应,该响应响应于选择性地识别剩余的未泄露的基于知识的认证问题中的哪一个要回答的请求。作为示
例,应用可以被配置为选择性地识别最喜欢的颜色和/或母亲的婚前姓名基于知识的认证问题,因为被泄露的高中吉祥物和基于高中知识的认证问题将被视为被泄露和消除。
104.在框570,方法500可以包括接收基于知识的认证问题的选择。例如,应用可以被配置为接收基于知识的认证问题的定制选择。在一些示例中,应用可以被配置为接收一个或多个响应,所述响应响应于从剩余的一组未泄露的基于知识的认证问题中对任意数量的基于知识认证问题的请求选择。一个或多个响应可以包括经由所述应用对每个基于知识的认证问题的回答,所述认证问题仍然是未泄露的。作为示例,应用可以被配置为响应于选择性地识别的基于知识的认证问题中的每一个,并且在这种情况下,识别最喜欢的颜色和/或基于母亲的婚前姓名知识的验证问题。
105.在框580,方法500可以包括完成用户注册。例如,一个或多个处理器可以被配置为在其通过验证从应用收到的一个或多个响应中的每一个来认证用户后,完成用户对账户或网站的注册。
106.图6示出了根据示例性实施例的认证系统600。认证系统600可以包括爬虫服务器605、网络610、服务器615、客户端设备620和数据库625。尽管图6图示了系统600的组件的单个实例,但是系统600可以包括任何数量的组件。图6可以参考图1的认证系统100、图2的方法200、图3的方法300、图4的方法400和图5的方法500的相同或类似组件。
107.服务器605可以包括爬虫服务器。服务器605可以包括处理器602和存储器604。存储器604可以包括包含用于在服务器605上执行的指令的应用606。应用606可以与系统600的任何组件通信。例如,服务器605可以执行一个或多个应用,这些应用例如能够与系统600的一个或多个组件进行网络和/或数据通信,并发送和/或接收数据。非限制性地,服务器605可以是启用网络的计算机。如本文所提及的,启用网络的计算机可以包括但不限于计算机设备或通信设备,包括例如服务器、网络设备、个人计算机、工作站、电话、手持式pc、个人数字助理、非接触式卡、瘦客户端、胖客户端、互联网浏览器或其他设备。服务器605也可以是移动设备;例如,移动设备可能包括的iphone、ipod、ipad或运行apple 操作系统的任何其他移动设备、运行microsoft的mobile操作系统的任何设备、运行google的操作系统的任何设备,和/或任何其他智能手机、平板电脑或类似的可穿戴移动设备。
108.服务器605可以包括处理电路并且可以包含附加组件,包括处理器、存储器、错误和奇偶校验/crc校验器、数据编码器、防冲突算法、控制器、命令解码器、安全原语和防篡改硬件,这是执行这里描述的功能所必需的。服务器605还可以包括显示和输入设备。显示器可以是用于呈现视觉信息的任何类型的设备,例如计算机显示器、平板显示器和移动设备屏幕,包括液晶显示器、发光二极管显示器、等离子面板和阴极射线管显示器。输入设备可以包括任何用于向用户设备输入信息的设备,这些设备是用户设备可以使用和支持的,如触摸屏、键盘、鼠标、光标控制设备、触屏、麦克风、数码相机、录像机或摄像机。这些设备可用于输入信息并与本文所述的软件和其他设备交互。
109.系统600可以包括网络610。在一些示例中,网络610可以是无线网络、有线网络或无线网络和有线网络的任何组合中的一个或多个,并且可以被配置为连接到系统600的任何一个组件。例如,客户端设备620可以被配置为经由网络610连接到服务器605。在一些示
例中,网络610可以包括以下中的一个或多个:光纤网络、无源光网络、电缆网络、因特网网络、卫星网络、无线局域网(lan)、全球移动通信系统、个人通信服务、个人区域网络、无线应用协议,多媒体消息服务、增强消息服务、短消息服务、基于时分复用的系统、基于码分多址的系统、d-amps、wi-fi、固定无线数据、ieee 802.11b、802.15.1、802.11n和802.11g、蓝牙、nfc、射频识别(rfid)、wi-fi等。
110.此外,网络610可包括但不限于电话线、光纤、ieee以太网902.3、广域网、无线个人区域网、lan或全球网络,例如因特网。此外,网络610可支持因特网网络、无线通信网络、蜂窝网络等或其任何组合。网络610还可以包括一个网络或任何数量的上述示例性类型的网络,作为独立网络运行或相互协作。网络610可以利用与其通信耦合的一个或多个网络元件的一个或多个协议。网络610可以转换成其他协议或从其他协议转换成网络设备的一个或多个协议。尽管网络610被描述为单个网络,但应当理解,根据一个或多个示例,网络610可以包括多个互连网络,例如因特网、服务提供商的网络、有线电视网络、企业网络,例如信用卡协会网络和家庭网络。
111.系统600可以包括一个或多个服务器615。在一些示例中,服务器615可以包括耦合到存储器619的一个或多个处理器617。服务器615可以被配置为中央系统、服务器或平台以在不同时间控制和调用各种数据以执行多个工作流动作。服务器615可以被配置为连接服务器605、客户端设备615和/或数据库625,并且可以与服务器605和/或客户端设备615进行数据通信。服务器605可以经由一个或多个网络610与一个或更多个服务器615通信,并且可以作为与服务器615的相应前端到后端对来操作。服务器605可以例如从在其上执行的应用606向服务器615发送一个或多个请求。一个或多个请求可以与从服务器615检索数据相关联。服务器615可以从服务器605接收一个或多个请求。基于来自应用606的一个或多个请求,服务器615可以被配置为检索所请求的数据。服务器615可以被配置为将接收到的数据发送到应用606,接收到的数据响应于一个或多个请求。
112.服务器615可以包括应用621,该应用包括用于在其上执行的指令。例如,应用621可以包括用于在服务器615上执行的指令。应用可以与系统600的任何组件通信。例如,服务器615可以执行一个或多个应用,这些应用例如能够与系统600的一个或多个组件进行网络和/或数据通信,并发送和/或接收数据。非限制性地,服务器615可以是启用网络的计算机。如本文所提及的,启用网络的计算机可以包括但不限于计算机设备或通信设备,包括例如服务器、网络设备、个人计算机、工作站、电话、手持式pc、个人数字助理、非接触式卡、瘦客户端、胖客户端、互联网浏览器或其他设备。服务器615也可以是移动设备;例如,移动设备可能包括的iphone、ipod、ipad或运行apple操作系统的任何其他移动设备、运行microsoft的mobile操作系统的任何设备、运行google的操作系统的任何设备,和/或任何其他智能手机、平板电脑或类似的可穿戴移动设备。
113.服务器615可以包括处理电路并且可以包含附加组件,包括处理器、存储器、错误和奇偶校验/crc校验器、数据编码器、防冲突算法、控制器、命令解码器、安全原语和防篡改硬件,这是执行这里描述的功能所必需的。服务器615还可以包括显示和输入设备。显示器可以是用于呈现视觉信息的任何类型的设备,例如计算机显示器、平板显示器和移动设备屏幕,包括液晶显示器、发光二极管显示器、等离子面板和阴极射线管显示器。输入设备可以包括任何用于向用户设备输入信息的设备,这些设备是用户设备可以使用和支持的,如
触摸屏、键盘、鼠标、光标控制设备、触屏、麦克风、数码相机、录像机或摄像机。这些设备可用于输入信息并与本文所述的软件和其他设备交互。
114.系统600可以包括客户端设备620。客户端设备620可以包括一个或多个处理器622和存储器624。存储器624可以包括一个或多个应用626。客户端设备620可以与系统600的任意数量的组件进行数据通信。例如,客户端设备620可以通过网络610向服务器605发送数据。客户端设备620可以通过网络610向数据库625发送数据。没有限制,客户端设备620可以是启用网络的计算机。如本文所提及的,启用网络的计算机可以包括但不限于计算机设备或通信设备,包括例如服务器、网络设备、个人计算机、工作站、电话、手持式pc、个人数字助理、非接触式卡、瘦客户端、胖客户端、互联网浏览器或其他设备。客户端设备620也可以是移动设备;例如,移动设备可能包括的iphone、ipod、ipad或运行apple操作系统的任何其他移动设备、运行microsoft的mobile操作系统的任何设备、运行google的操作系统的任何设备,和/或任何其他智能手机、平板电脑或类似的可穿戴移动设备。
115.客户端设备620可以包括处理电路并且可以包含附加组件,包括处理器、存储器、错误和奇偶校验/crc校验器、数据编码器、防冲突算法、控制器、命令解码器、安全原语和防篡改硬件,这是执行这里描述的功能所必需的。客户端设备620还可以包括显示和输入设备。显示器可以是用于呈现视觉信息的任何类型的设备,例如计算机显示器、平板显示器和移动设备屏幕,包括液晶显示器、发光二极管显示器、等离子面板和阴极射线管显示器。输入设备可以包括任何用于向用户设备输入信息的设备,这些设备是用户设备可以使用和支持的,如触摸屏、键盘、鼠标、光标控制设备、触屏、麦克风、数码相机、录像机或摄像机。这些设备可用于输入信息并与本文所述的软件和其他设备交互。
116.系统600可以包括一个或多个数据库625。数据库625可以包括关系数据库、非关系数据库或其他数据库,以及它们的任意组合实现,包括多个关系数据库和非关系数据库。在一些示例中,数据库625可以包括桌面数据库、移动数据库或内存数据库。此外,数据库625可以由客户端设备620或服务器605、615内部托管,或者数据库625可以在客户端设备620或服务器605、615外部托管,由基于云的平台托管,或者在与客户端设备625与服务器605、615进行数据通信的任何存储设备中托管。在一些示例中,数据库625可以与系统600的任何数量的组件进行数据通信。例如,服务器605、615或客户端设备620可以被配置为从数据库625检索由应用606、621或626发送的所请求的数据。服务器605可以被配置为通过网络610将接收到的数据从数据库625发送到应用606,接收到的数据响应于发送的一个或多个请求。在其他示例中,应用606、621、626可以被配置为经由网络610从数据库625发送对所请求数据的一个或多个请求。
117.在一些示例中,可以通过处理装置和/或计算装置(例如,计算机硬件装置)来执行根据本文描述的本公开的示例性程序。这样的处理/计算装置可以例如是计算机/处理器的全部或一部分,或者包括但不限于计算机/处理器,该计算机/处理器可以包括例如一个或多个微处理器,并使用存储在计算机可访问介质(例如ram、rom、硬盘或其他存储设备)上的指令。例如,计算机可访问介质可以是服务器605、服务器615、客户端设备620和/或数据库625或其他计算机硬件布置的存储器的一部分。
118.在一些示例中,可以提供计算机可访问介质(例如,如上文所述,诸如硬盘、软盘、记忆棒、cd-rom、ram、rom之类的存储设备,或其集合)(例如,与处理装置通信)。计算机可访问介质可以在其上包含可执行指令。此外或替代地,可以与计算机可访问介质分开提供存储装置,其可以向处理装置提供指令,以便将处理装置配置为执行某些示例性程序、过程和方法,例如,如本文所述。
119.爬虫服务器605可以被配置为执行一个或多个过程以认证用户。例如,一个或多个处理器602可被配置为通过扫描一个或多个网站,使用一个或多个基于模板的算法解析所述第一组信息,以确定与用户相关联的公开可用信息。例如,一个或多个处理器602可以被配置为针对与第一组信息相关联的每种类型的网站,基于一个或多个基于模板的算法来验证一个或者多个解析结果。在一些示例中,针对一个网站的一个基于模板的算法可以不同于针对另一个网站的基于模板的算法。根据网站的类型,页面上可能存在已知的数据元素,在该数据元素中搜索泄露的信息。在一些示例中,页面可以包括具有特定类或标识符的dom元素,其可以指示该元素属于与用户相关联的公开可见帖子。具有其他标识符的其他数据元素可以指示发送给用户的帖子。这些数据元素可以包括文本,其包括消息本身的内容。在另一示例中,dom元素可以指示与用户相关联的其他个人或实体。这些可以包括但不限于用户关注或订阅的朋友和/或实体。应当理解,除了帖子之外,具有相应标识符的其他数据元素可以指示帖子、推文、转发、标签、照片标题、照片标签、评论、共同的朋友、朋友、建议的联系人、帖子、博客条目等,和/或其任何组合也可以与用户相关联。
120.在一些示例中,一个或多个处理器602可以被配置为利用从应用编程接口和网络爬虫的组中选出的至少一项来解析第一组信息。例如,一个或多个处理器602可以被配置为利用应用编程接口来解析第一组信息。以这种方式,可以通过一个或多个处理器602的一个或多个函数调用,调用一个或多个应用设计接口,以接收数据。例如,应用编程接口调用的响应可以包括列表,该列表包括用户发布的不同信息、这些信息是否是公开可用的、以及它们是什么时候发布的。在另一个示例中,应用编程接口调用的响应可以包括所有信息的列表,包括不同的信息和发布它们的用户。以这种方式,响应可以被选择性地过滤,以包括与有关用户相关联的消息。
121.在另一个示例中,一个或多个处理器602可以被配置为利用网络爬虫来解析第一组信息。例如,网络爬虫可被配置为通过互联网搜索与用户相关联的任何信息。在一些示例中,与用户相关联的信息可以是通过互联网公开提供的任何信息。网络爬虫可以寻找一个或多个单词和/或短语,例如在一个网站上,然后在与该网站相关的整个文本体内进行搜索。例如,网络爬虫可以被配置为导航到一个搜索引擎,输入信息,并启动搜索。不限于此,输入的信息可以包括任何用户的公共信息,如他们的名字或首字母、中间的首字母或中间的名字、他们的姓氏和/或其任何组合,以及任何和所有这些信息可以被部分地编辑。网络爬虫可以被配置为解析与启动的搜索相关的响应,并识别其中的一个或多个链接。一个或多个处理器602可以被配置为加载一个或多个链接中的每一个,然后在从该一个或多个链接中的每一个加载的各自网站的主体内搜索与该一个或多个基于知识的认证问题有关的任何信息。
122.任何类型的信息都可以由服务器615、客户端设备620和/或数据库625托管,以便通过服务器605认证用户。例如,在示例性认证过程中,爬虫服务器605可以被配置为向客户
端设备620发送一个或多个请求以获得和/或验证用户的社交媒体帐户信息,并且向数据库625发送一个或多个请求以获得和/或验证用户认证信息。
123.在接收到响应于一个或多个请求中的任何一个的信息之后,爬虫服务器605还可以被配置为将该信息与任何数量的基于知识的认证问题进行比较。继续上面的示例,爬虫服务器605可以被配置为从客户端设备620接收用户的社交媒体帐户信息、从服务器615接收公开可用信息以及从数据库625接收用户认证信息。例如,爬虫服务器605可以被配置为用一个或多个基于知识的认证问题来识别这些类型的信息中的每一个之间的任何匹配。一旦爬虫服务器605已经识别出一个或多个匹配,爬虫服务器605可以被配置为将匹配的基于知识的认证问题分类为泄露的基于知识的认证问题。以这种方式,爬虫服务器605可以被配置为当其呈现未泄露的基于知识的认证问题时使任何数量的泄露的基于认证问题无效和/或消除。
124.在其他示例中,任何其他组件可以执行爬虫服务器605执行的任何数量的操作。可以理解,这些操作中的任何一个都可以由不同类型的设备执行,如图6所示。还应当理解,这些操作中的任何一个都可以由任何数量的任何组件完全或部分地执行,包括但不限于由处理器602、617、622经由应用606、621、626执行,如图6所示。例如,服务器615、客户端设备625和/或数据库630可以被配置为单独地或集体地或部分地执行以下任一操作,和/或其任意组合:发送一个或多个请求;接收所述一个或多个请求;解析第一类型的信息;将解析结果与任意数量的基于知识的认证问题进行比较;识别任意数量的泄露的基于知识的认证问题;使所述泄露的基于知识的认证问题无效并消除;呈现未泄露的基于知识的认证问题,不包括已识别的泄露的基于知识的认证问题;确定所呈现的一组基于知识的认证问题是否达到预定阈值数量;如果所呈现的一组基于知识的认证问题未能达到预定阈值数量,则呈现附加的基于知识的认证问题。
125.可以理解的是,第一组信息不限于社交媒体信息或社交媒体账户。第一组信息可以包括注册信息。此外,其他网站或账户可以作为社交媒体信息或社交媒体账户的补充或替代而被包括。例如,可以扫描一个或多个网站以确定与用户相关联的公开可用信息。在一个示例中,与用户相关联的公开可用信息可以从与用户相关联的学校网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的雇主网站获得。在另一个示例中,与用户相关联的公开可用信息可以从与用户相关联的非营利性网站或志愿者组织网站获得。在又一个示例中,与用户相关联的公开可用信息可以从列出与用户相关联的许可证的政府机构网站获得。如前所述,爬虫服务器605、服务器615、客户端设备625和/或数据库630可以被配置成这些操作中的任一项。
126.不限于此,认证信息可以包括从登录凭证、账户信息、安全信息、生物特征信息和/或其任意组合的组中选择的至少一项(例如,输入用户名、密码、帐号、安全码、一次性密码、安全问题答案、指纹、面部扫描、视网膜扫描、语音识别。)
127.所公开的系统和方法的益处包括改进的安全性和数据保护,减轻或减少泄露信息和使用泄露信息的可能性,以及为用户体验提供更有效的流程,从而在不损害数据或用户完整性的情况下实现更安全、可靠和动态的方式。以这种方式,泄露的基于知识的认证问题被识别、失效,并避免为用户的认证而呈现。举例来说,即使只有一个基于知识的认证问题从一组四个基于知识的认证问题中被淘汰,这代表了25%的认证改进,因为该特定识别的
基于知识的身份验证问题被泄露,无论多么明显或多么微小,都已无效,这很重要,因为它已从用户身份认证的一部分中消除。
128.还应注意,本文描述的系统和方法可以有形地体现在多个物理介质之一中,例如但不限于压缩盘(cd)、数字多功能盘(dvd)、软盘、硬盘驱动器、只读存储器(rom)、随机存取存储器(ram)以及其他能够存储数据的物理介质。例如,数据存储可以包括随机存取存储器(ram)和只读存储器(rom),它们可以被配置为访问和存储数据和信息以及计算机程序指令。数据存储还可以包括存储介质或其他适当类型的存储器(例如,ram、rom、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、磁盘、光盘、软盘、硬盘、可移动盒、闪存驱动器、任何类型的有形和非暂时性存储介质),其中可以存储包括操作系统、包括例如网络浏览器应用、电子邮件应用和/或其他应用的应用以及数据文件。支持网络的计算机系统的数据存储可以包括以各种方式存储的电子信息、文件和文档,包括例如平面文件、索引文件、分层数据库、关系数据库,例如用例如公司的软件创建和维护的数据库、excel文件、access文件、固态存储设备,其中可以包括闪存阵列、混合阵列或服务器端产品,企业存储,其中可以包括在线或云存储,或任何其他存储机制。此外,图中分别说明了各种组件(例如,服务器、计算机、处理器等)。描述为在各个组件上执行的功能可以在其他组件上执行,并且各个组件可以组合或分离。还可以进行其他修改。
129.在前述说明书中,已经参考附图描述了各种实施例。然而,显而易见的是,可以对其进行各种修改和改变,并且可以实现附加的实施例,而不脱离如下面的权利要求所述的本发明的更广泛范围。因此,说明书和附图应被视为说明性的而非限制性的。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献