具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例提供的一种用户认证方法的流程图。如图1所示,该方法包括:
步骤S101:获取目标客户端发送的设备信息。
设备信息具体为在进行用户身份认证信息认证过程中用户所使用的设备(即目标客户端)的对应信息。例如,设备信息可以为用户所使用的目标客户端的设备型号、系统版本号等类似的设备信息。获取的设备信息可用于在后续步骤中(对应步骤S102)初步检测应用所在设备是否存在安全风险。
获取目标客户端发送的设备信息的方式有多种,可以预先向目标客户端发送对应的设备信息请求,以接收目标客户端根据上述设备信息请求反馈的设备信息,等等。本发明对获取目标客户端发送的设备信息的方式不作限定。
步骤S102:判断设备信息是否在设备指纹网籍库的黑名单中。
设备指纹网籍库的黑名单中存储有存在安全风险的对应设备的设备信息。因此在本步骤中,判断步骤S101中获取的设备信息是否在设备指纹网籍库的黑名单中,若判断结果为上述设备信息在设备指纹网籍库的黑名单中,则说明设备信息存在安全风险,则对目标客户端的当前应用执行对应的关闭或者禁用等操作,保护用户的身份认证信息以防其被泄露。若判断结果为设备信息不在设备指纹网籍库的黑名单中,则执行步骤S103。
步骤S103:接收目标客户端发送的应用基础信息。
其中,若设备信息不在设备指纹网籍库的黑名单中,则说明用户目前使用的目标客户端是安全的,则进一步接收目标客户端发送的应用基础信息,以用于在后续步骤中(对应步骤S104)对目标客户端中的应用是否存在安全风险进行检测。应用基础信息具体可以为涉及应用基本信息、应用所在系统基本信息、应用运行环境信息、应用运行状态信息和/或应用入侵攻击信息等涉及到应用以及应用所在系统相关的各类信息。
步骤S104:监测应用基础信息中是否存在恶意攻击信息。
对接收的应用基础信息中是否存在恶意攻击信息进行监测。例如,监测应用基本信息是否被篡改或者二次打包,或者监测应用入侵攻击信息中是否存在so注入信息、Dex注入信息、动态调试信息或者界面劫持信息等类似的恶意攻击信息,等等。若监测到应用基础信息中存在恶意攻击信息,则说明目标客户端的当前应用存在安全风险,则对目标客户端的当前应用执行对应的安全保护操作,例如关闭或者禁用目标客户端的当前应用,或者向目标客户端发送安全提醒消息,例如“设备存在安全风险,请勿输入重要身份认证信息”等类似的提醒消息。安全保护操作用于提醒用户当前设备存在安全风险,保护用户的身份认证信息以防其被泄露。若监测结果为应用基础信息中不存在恶意攻击信息,则说明目标客户端以及目标客户端中的当前应用是安全的,则执行步骤S105。
步骤S105:接收目标客户端发送的身份认证信息以进行用户认证。
由于上述步骤中(对应步骤S101-步骤S104)已经对目标客户端的设备信息以及应用基础信息的安全性进行了检测,并且检测结果为安全,则接收目标客户端发送的身份认证信息以进行用户认证,从而有效保障用户身份认证信息的安全。
由此可见,在本发明提供的用户认证方法中,可以根据获取的目标客户端发送的设备信息是否在设备指纹网籍库的黑名单中来确定目标客户端设备信息的安全性,当设备信息不在设备指纹网籍库的黑名单中时,则进一步接收目标客户端发送的应用基础信息,并通过监测应用基础信息中是否存在恶意攻击信息来确定目标客户端中的应用是否存在安全风险,当监测到应用基础信息中不存在恶意攻击信息时,则接收目标客户端发送的身份认证信息以进行用户认证。由此可见,本发明能够解决在用户进行身份认证信息的认证过程中,由于无法检测客户端应用中存在的安全风险进而导致用户身份认证信息泄露的问题。本发明能够在用户进行身份认证信息认证过程中对当前客户端应用中存在的安全风险进行检测,从而有效保障用户身份认证信息的安全。
图2示出了根据本发明另一个实施例提供的一种用户认证方法的流程图。如图2所示,该方法包括:
步骤S201:获取目标客户端发送的设备信息。
本步骤与步骤S101的执行过程相同,具体可参见步骤S101中的相关描述,此处不再赘述。
步骤S202:判断设备信息是否在设备指纹网籍库的黑名单中。
本步骤与步骤S102的执行过程相同,具体可参见步骤S102中的相关描述,此处不再赘述。
步骤S203:若判断结果为是,则对目标客户端的当前应用执行关闭操作。
具体地,若步骤S202中的判断结果为是,即设备信息在设备指纹网籍库的黑名单中,则对目标客户端的当前应用执行关闭操作,例如强制关闭目标客户端中全部的应用,以防止用户的身份认证信息被不法分子盗取。其中,上述身份认证信息可以包括用户的姓名、用户身份证信息(例如用户身份证中的文字信息和照片信息)、活体信息(例如用户指纹、面部特征等信息)和/或用户银行卡信息(例如用户银行卡号、与用户银行卡绑定的设备的相关信息)等相关信息。
步骤S204:若判断结果为否,则通过集成威胁感知软件开发工具包来获取目标客户端的当前应用的应用基础信息。
应用基础信息可以为目标客户端的当前应用的相关信息,例如目标客户端当前应用的应用基本信息、应用所在系统基本信息、应用运行环境信息、应用运行状态信息、和/或应用入侵攻击信息等。
具体地,应用基本信息可以包括:当前应用的发行者、包名、证书、以及签名信息等信息,其可以用于检测当前应用本身的安全性,例如检测上述应用基本信息是否被篡改或二次打包等,以确定应用基本信息是否安全。应用所在系统基本信息可以包括当前应用所在系统的系统版本号、系统机型等信息,以用于针对不同系统中的应用进行针对性检测。例如获取系统的系统版本号可以针对不同系统版本的特点监测系统以及系统中的应用可能存在的安全威胁;获取系统机型可以用于:由于不同的手机厂商在原生系统的基础上自主定制了ROM(只读内存镜像),而自主定制的ROM不同可能导致客户端应用存在的安全威胁也不相同,因此获取系统机型可用于根据不同系统机型的ROM信息个性化识别不同系统机型中应用可能存在的不同的安全威胁,从而在识别应用的安全威胁上更具针对性和准确性。另外,上述系统基本信息也能够唯一标识终端设备(即目标客户端),因此上述系统基本信息也可以作为终端设备的标识信息用于在后续步骤(对应步骤S205)中接收对应的服务端发送的监测分析结果。应用运行环境信息可以包括目标客端内安装的第三方应用列表等相关信息,以检测当前应用所在系统中是否安装有仿冒应用或者恶意应用等存在安全风险的应用。应用运行状态信息可以包括当前应用的运行是否受到攻击等相关信息,以用于及时给出安全反馈信息和防御警示。应用入侵攻击信息可以包括监测到的应用程序中存在的so注入信息、Dex注入信息、动态调试信息以及界面劫持信息等类似的针对应用的入侵攻击信息。具体实施中,应用基础信息包括但不限于上述列举的各类信息,应用基础信息可以涉及到与应用以及应用所在系统相关的各类信息。
其中,若步骤S202中的判断结果为否,即设备信息不在设备指纹网籍库的黑名单中,则说明当前应用所在的设备信息是安全的,则进一步通过集成威胁感知SDK(SoftwareDevelopment Kit,软件开发工具包)获取目标客户端的当前应用的应用基础信息,以供在后续步骤中(对应步骤S205)对上述应用基础信息是否存在安全风险进行检测。
步骤S205:监测应用基础信息中是否存在恶意攻击信息。
具体地,在应用界面的跳转过程中,根据应用基础信息监测当前应用在界面的跳转过程中的程序运行栈顶包名是否准确,若监测结果为否,即监测到当前应用在界面的跳转过程中的程序运行栈顶包名不准确,也就是说应用的程序运行栈顶包名可能被覆盖或篡改,则说明应用基础信息中存在恶意攻击信息并具有安全风险,则生成与上述恶意攻击信息对应的攻击情况的反馈信息,并将上述反馈信息反馈给目标客户端。其中,上述反馈信息至少包括:攻击情况分析报告信息、攻击行为提醒消息信息、和/或攻击行为保护措施信息。其中,攻击情况分析报告信息可以是对目前监测到的安全风险生成的对应的分析报告,例如可以包括安全风险所在位置、类型以及危险级别等信息;攻击行为提醒消息信息可以为向目标客户端发送的弹窗提示等信息,例如将“存在安全隐患,建议手机查杀病毒”的消息发送至目标客户端;攻击行为保护措施信息可以为针对上述恶意攻击信息产生的对应的防御信息,例如强制终止当前应用程序的运行等。上述反馈信息能够有效提醒用户当前设备存在安全风险,保护用户的身份认证信息安全以防其被泄露。
若监测结果为是,即监测到当前应用在界面的跳转过程中的程序运行栈顶包名准确,则说明应用基础信息中不存在恶意攻击信息,应用基础信息是安全的,则执行步骤S206。
具体实施中,还可以将上述应用基础信息上传至服务端的数据库,以通过服务端的分析引擎对上述应用基础信息中是否存在恶意攻击信息进行分析,从而得到针对上述应用基础信息中是否存在恶意攻击信息的监测结果。
步骤S206:接收目标客户端发送的身份认证信息以进行用户认证。
其中,目标客户端发送的身份认证信息可以包括:用户身份证信息(例如用户身份证中的文字信息和照片信息)、活体信息(例如用户指纹、面部特征等信息)和/或用户银行卡信息(例如用户银行卡号、与用户银行卡绑定的设备的相关信息)。由于上述步骤中(对应步骤S201-步骤S205)已经对目标客户端的设备信息以及应用基础信息的安全性进行了检测,并且检测结果为安全,则接收目标客户端发送的身份认证信息以进行用户认证,从而有效保障用户身份认证信息的安全。
在进行用户认证时,首先获取身份认证信息中的待识别信息(例如获取待识别的用户身份证信息、活体信息和/或用户银行卡信息),然后将待识别信息发送至对应的数据中心。其中,上述数据中心具体可以为中国第三方机构的身份证信息查询服务中心,例如互联网平台中的各身份证信息查询服务中心等。上述数据中心中记录并存储有全国公民的姓名、用户身份证信息、活体信息、和/或用户银行卡信息等相关类别的数据信息。
在将待识别信息发送至数据中心之后,根据数据中心中存储的数据信息,将待识别信息与数据中心中存储的对应信息进行比对并生成比对结果,判断上述比对结果是否满足预设条件,若判断结果为是,则用户认证成功;若判断结果为否,则用户认证不成功。
具体地,在一种优选的方式中,根据数据中心中存储的数据信息,将待识别信息与数据中心中存储的对应信息进行比对并生成比对结果具体可以为:计算待识别信息与数据中心中对应的网纹图中的信息的相似度指数,将计算所得相似度指数作为比对结果。判断比对结果是否满足预设条件具体可以为:判断上述相似度指数是否大于预设阈值,若是,则用户认证成功;若否,则用户认证不成功。其中,相似度指数用于表明待识别信息与数据中心中对应的网纹图中的信息的相似程度,其取值范围为0-1。当相似度指数为0时,则表明二者完全不同;当相似度指数为1时,则表明二者完全相同。相似度指数越大,则对应表明待识别信息与数据中心中对应的网纹图中的信息越相似,因此预设阈值具体可以为保证待识别信息与数据中心中对应的网纹图中的信息为同一数据的最小相似度指数。具体实施中,上述预设阈值优先0.7。
以用户身份证信息为例,可以采用OCR(Optical Character Recognition,光学字符识别)技术识别用户身份证中的文字信息和照片信息,然后将上述文字信息和照片信息发送至对应的数据中心,通过对比上述数据中心的网纹图中的文字信息以及照片信息,确定OCR技术识别的用户身份证中的文字信息和照片信息与数据中心的网纹图中的文字信息以及照片信息的相似度指数,然后判断上述相似度指数是否大于0.7,若是,用户认证成功;若否,则用户认证不成功。
由此可见,本发明能够解决在用户进行实名认证过程中,由于无法检测客户端应用中存在的安全风险进而导致用户身份认证信息泄露的问题。本发明能够在用户进行身份认证信息认证过程中首先对目标客户端的设备信息进行检测,当发现设备信息存在安全风险时及时对当前应用执行关闭操作;在检测到设备信息安全情况下,进一步通过监测当前应用在界面的跳转过程中的程序运行栈顶包名是否准确对目标客户端中应用可能存在的安全风险进行监测,从而准确获取目标客户端的应用是否存在安全风险的相关信息,并及时对存在安全风险的应用采取相关的安全保护操作,从而有效保障用户身份认证信息的安全。
图3示出了根据本发明一个实施例提供的一种用户认证装置的结构框图。如图3所示,该装置包括:获取模块31、判断模块32、接收模块33、监测模块34、以及认证模块35。
获取模块31用于获取目标客户端发送的设备信息。
判断模块32用于判断设备信息是否在设备指纹网籍库的黑名单中。
接收模块33用于若判断设备信息不在设备指纹网籍库的黑名单中,则获取目标客户端发送的应用基础信息。
监测模块34用于监测应用基础信息中是否存在恶意攻击信息。
认证模块35用于若监测应用基础信息中不存在恶意攻击信息,则接收目标客户端发送的身份认证信息以进行用户认证。
上述各个模块的具体结构和工作原理可参照方法实施例中相应步骤的描述,此处不再赘述。
由此可见,在本发明提供的用户认证装置中,可以通过获取模块31获取的目标客户端发送的设备信息,并通过判断模块32判断设备信息是否在设备指纹网籍库的黑名单中来确定目标客户端设备信息的安全性,当设备信息不在设备指纹网籍库的黑名单中时,通过接收模块33进一步接收目标客户端发送的应用基础信息,并通过监测模块34监测应用基础信息中是否存在恶意攻击信息来确定目标客户端中的应用是否存在安全风险,当监测到应用基础信息中不存在恶意攻击信息时,则通过认证模块35接收目标客户端发送的身份认证信息以进行用户认证。由此可见,本发明能够解决在用户进行身份认证信息认证过程中,由于无法检测客户端应用中存在的安全风险进而导致用户身份认证信息泄露的问题。本发明能够在用户进行身份认证信息认证过程中对当前客户端应用中存在的安全风险进行检测,从而有效保障用户身份认证信息的安全。
图4示出了根据本发明另一个实施例提供的一种用户认证装置的结构框图。如图4所示,该装置包括:获取模块41、判断模块42、接收模块43、监测模块44、认证模块45、关闭操作模块46、反馈模块47。
获取模块41用于获取目标客户端发送的设备信息。
判断模块42用于判断设备信息是否在设备指纹网籍库的黑名单中。
接收模块43用于若判断设备信息不在设备指纹网籍库的黑名单中,则获取目标客户端发送的应用基础信息。应用基础信息至少包括:目标客户端中当前应用的应用基本信息、应用所在系统基本信息、应用运行环境信息、应用运行状态信息、和/或应用入侵攻击信息,则接收模块43具体用于:通过集成威胁感知软件开发工具包来获取目标客户端的当前应用的应用基础信息。
监测模块44用于监测应用基础信息中是否存在恶意攻击信息。
具体地,监测模块44用于在应用界面的跳转过程中根据应用基础信息监测当前应用的程序运行栈顶包名是否准确;若是,则应用基础信息中不存在恶意攻击信息;若否,则应用基础信息中存在恶意攻击信息。
认证模块45用于若监测到应用基础信息中不存在恶意攻击信息,则接收目标客户端发送的身份认证信息以进行用户认证。具体地,认证模块45首先获取身份认证信息中的待识别信息,并将待识别信息发送至数据中心,将待识别信息与数据中心中对应的网纹图中的信息进行比对,生成比对结果,然后判断比对结果是否满足预设条件,若判断结果为是,则用户认证成功;若判断结果为否,则用户认证不成功。
具体地,在一种优选的方式中,根据数据中心中存储的数据信息,将待识别信息与数据中心中存储的对应信息进行比对并生成比对结果具体可以为:计算待识别信息与数据中心中对应的网纹图中的信息的相似度指数,将计算所得相似度指数作为比对结果。判断比对结果是否满足预设条件具体可以为:判断上述相似度指数是否大于预设阈值,若是,则用户认证成功;若否,则用户认证不成功。
关闭操作模块46用于若判断模块42的判断结果为设备信息在设备指纹网籍库的黑名单中,则对目标客户端的当前应用执行关闭操作。
反馈模块47用于若监测到应用基础信息中存在恶意攻击信息,则生成与恶意攻击信息对应的攻击情况的反馈信息,并将反馈信息反馈给目标客户端。其中,反馈信息至少包括:攻击情况分析报告信息、攻击行为提醒消息信息、和/或攻击行为保护措施信息。
上述各个模块的具体结构和工作原理可参照方法实施例中相应步骤的描述,此处不再赘述。
由此可见,本发明能够解决在用户进行实名认证过程中,由于无法检测客户端应用中存在的安全风险进而导致用户身份认证信息泄露的问题。本发明能够在用户进行身份认证信息认证过程中首先对目标客户端的设备信息进行检测,当发现设备信息存在安全风险时及时当前应用执行关闭操作;同时,在检测到设备信息安全情况下,进一步通过监测当前应用在界面的跳转过程中的程序运行栈顶包名是否准确以对目标客户端中应用可能存在的安全风险进行监测,从而准确获取目标客户端的应用是否存在安全风险的相关信息,并及时对存在安全风险的应用采取相关的安全保护操作,从而有效保障用户身份认证信息的安全。
本发明提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的用户认证方法。
可执行指令具体可以用于使得处理器执行以下操作:
获取目标客户端发送的设备信息;
判断设备信息是否在设备指纹网籍库的黑名单中;
若设备信息不在设备指纹网籍库的黑名单中,接收目标客户端发送的应用基础信息;
监测应用基础信息中是否存在恶意攻击信息;
若应用基础信息中不存在恶意攻击信息,则接收目标客户端发送的身份认证信息以进行用户认证。
在一种可选的方式中,可执行指令还使处理器执行以下操作:
若设备信息在设备指纹网籍库的黑名单中,则对目标客户端的当前应用执行关闭操作。
在一种可选的方式中,应用基础信息包括以下至少之一:目标客户端中当前应用的应用基本信息、应用所在系统基本信息、应用运行环境信息、应用运行状态信息、和/或应用入侵攻击信息;
则可执行指令进一步使处理器执行以下操作:
通过集成威胁感知软件开发工具包来获取目标客户端的当前应用的应用基础信息。
在一种可选的方式中,可执行指令进一步使处理器执行以下操作:
在应用界面的跳转过程中根据应用基础信息监测当前应用的程序运行栈顶包名是否准确;
若是,则应用基础信息中不存在恶意攻击信息;若否,则应用基础信息中存在恶意攻击信息。
在一种可选的方式中,可执行指令还使处理器执行以下操作:
若应用基础信息中存在恶意攻击信息,则生成与恶意攻击信息对应的攻击情况的反馈信息,并将反馈信息反馈给目标客户端;
其中,反馈信息至少包括:攻击情况分析报告信息、攻击行为提醒消息信息、和/或攻击行为保护措施信息。
在一种可选的方式中,可执行指令进一步使处理器执行以下操作:
获取身份认证信息中的待识别信息;
将待识别信息发送至数据中心,将待识别信息与数据中心中对应的网纹图中的信息进行比对,生成比对结果;
判断比对结果是否满足预设条件,若判断结果为是,则用户认证成功;若判断结果为否,则用户认证不成功。
在一种可选的方式中,可执行指令进一步使处理器执行以下操作:
计算待识别信息与数据中心中对应的网纹图中的信息的相似度指数;
判断相似度指数是否大于预设阈值,若是,则用户认证成功;若否,则用户认证不成功。
图5示出了根据本发明的一种计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图5所示,该计算设备可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。通信接口504,用于与其它设备比如客户端或其它服务器等的网元通信。处理器502,用于执行程序510,具体可以执行上述用户认证方法实施例中的相关步骤。
具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序510具体可以用于使得处理器502执行以下操作:
获取目标客户端发送的设备信息;
判断设备信息是否在设备指纹网籍库的黑名单中;
若设备信息不在设备指纹网籍库的黑名单中,接收目标客户端发送的应用基础信息;
监测应用基础信息中是否存在恶意攻击信息;
若应用基础信息中不存在恶意攻击信息,则接收目标客户端发送的身份认证信息以进行用户认证。
在一种可选的方式中,程序510还用于使得处理器502执行以下操作:
若设备信息在设备指纹网籍库的黑名单中,则对目标客户端的当前应用执行关闭操作。
在一种可选的方式中,应用基础信息包括以下至少之一:目标客户端中当前应用的应用基本信息、应用所在系统基本信息、应用运行环境信息、应用运行状态信息、和/或应用入侵攻击信息;
则程序510进一步用于使得处理器502执行以下操作:通过集成威胁感知软件开发工具包来获取目标客户端的当前应用的应用基础信息。
在一种可选的方式中,程序510进一步用于使得处理器502执行以下操作:
在应用界面的跳转过程中根据应用基础信息监测当前应用的程序运行栈顶包名是否准确;
若是,则应用基础信息中不存在恶意攻击信息;若否,则应用基础信息中存在恶意攻击信息。
在一种可选的方式中,程序510还用于使得处理器502执行以下操作:
若应用基础信息中存在恶意攻击信息,则生成与恶意攻击信息对应的攻击情况的反馈信息,并将反馈信息反馈给目标客户端;
其中,反馈信息至少包括:攻击情况分析报告信息、攻击行为提醒消息信息、和/或攻击行为保护措施信息。
在一种可选的方式中,程序510进一步用于使得处理器502执行以下操作:
获取身份认证信息中的待识别信息;
将待识别信息发送至数据中心,将待识别信息与数据中心中对应的网纹图中的信息进行比对,生成比对结果;
判断比对结果是否满足预设条件,若判断结果为是,则用户认证成功;若判断结果为否,则用户认证不成功。
在一种可选的方式中,程序510进一步用于使得处理器502执行以下操作:
计算待识别信息与数据中心中对应的网纹图中的信息的相似度指数;
则判断比对结果是否满足预设条件具体为:判断相似度指数是否大于预设阈值,若是,则用户认证成功;若否,则用户认证不成功。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应该被理解和认定为覆盖了所有这些其他变型或修改。
本领域技术人员应当理解,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。此外,本发明也不针对任何特定编程语言,应当明白,可以利用各种编程语言实现本发明描述的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
需要注意的是,尽管在上面的说明中详细描述了一种用户认证装置的若干模块,但是这种划分仅仅是示例性的,并非是强制性的。本领域的技术人员可以理解,实际上,可以对实施例中的模块进行自适应性地改变,将实施例中的多个模块组合成一个模块,也可将一个模块划分成多个模块。
此外,尽管在附图中以特定顺序描述了本发明实施操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。可以省略某些步骤,将多个步骤合并为一个步骤执行,或者将一个步骤分成多个步骤执行。
综上所述,本发明能够解决在用户进行实名认证过程中,由于客户端应用中存在的安全风险导致用户身份认证信息泄露的问题。本发明能够在用户进行身份认证信息认证过程中首先对目标客户端的设备信息进行检测,当发现设备信息存在安全风险时及时对当前应用执行关闭操作;在检测到设备信息安全情况下,进一步通过监测当前应用在界面的跳转过程中的程序运行栈顶包名是否准确对目标客户端中应用可能存在的安全风险进行监测,从而准确获取目标客户端的应用是否存在安全风险的相关信息,并及时对存在安全风险的应用采取相关的安全保护操作,从而有效保障用户身份认证信息的安全。
以上对本发明的方法和具体实施方法进行了详细的介绍,并给出了相应的实施例。当然,除上述实施例外,本发明还可以有其它实施方式,凡采用等同替换或等效变换形成的技术方案,均落在本发明所要保护的范围之内。
本发明公开了:A1.一种用户认证方法,其特征在于,包括:
获取目标客户端发送的设备信息;
判断所述设备信息是否在设备指纹网籍库的黑名单中;
若所述设备信息不在所述设备指纹网籍库的黑名单中,接收目标客户端发送的应用基础信息;
监测所述应用基础信息中是否存在恶意攻击信息;
若所述应用基础信息中不存在恶意攻击信息,则接收所述目标客户端发送的身份认证信息以进行用户认证。
A2.根据A1所述的方法,其特征在于,所述方法还包括:
若所述设备信息在所述设备指纹网籍库的黑名单中,则对所述目标客户端的当前应用执行关闭操作。
A3.根据A1或A2所述的方法,其特征在于,所述应用基础信息包括以下至少之一:所述目标客户端中当前应用的应用基本信息、应用所在系统基本信息、应用运行环境信息、应用运行状态信息、和/或应用入侵攻击信息;
所述接收目标客户端发送的应用基础信息具体为:通过集成威胁感知软件开发工具包来获取所述目标客户端的当前应用的应用基础信息。
A4.根据A1所述的方法,其特征在于,所述监测所述应用基础信息中是否存在恶意攻击信息具体为:
在应用界面的跳转过程中根据所述应用基础信息监测当前应用的程序运行栈顶包名是否准确;
若是,则应用基础信息中不存在恶意攻击信息;若否,则应用基础信息中存在恶意攻击信息。
A5.根据A1或A4所述的方法,其特征在于,所述方法还包括:若所述应用基础信息中存在恶意攻击信息,则生成与所述恶意攻击信息对应的攻击情况的反馈信息,并将所述反馈信息反馈给所述目标客户端;
其中,所述反馈信息至少包括:攻击情况分析报告信息、攻击行为提醒消息信息、和/或攻击行为保护措施信息。
A6.根据A1所述的方法,其特征在于,所述接收所述目标客户端发送的身份认证信息以进行用户认证具体为:
获取所述身份认证信息中的待识别信息;
将所述待识别信息发送至数据中心,将所述待识别信息与所述数据中心中对应的网纹图中的信息进行比对,生成比对结果;
判断所述比对结果是否满足预设条件,若判断结果为是,则用户认证成功;若判断结果为否,则用户认证不成功。
A7.根据A6所述的方法,其特征在于,所述将所述待识别信息与所述数据中心中对应的网纹图中的信息进行比对,生成比对结果具体为:计算所述待识别信息与所述数据中心中对应的网纹图中的信息的相似度指数;
则所述判断所述比对结果是否满足预设条件具体为:判断所述相似度指数是否大于预设阈值,若是,则用户认证成功;若否,则用户认证不成功。
本发明还公开了:B8.一种用户认证装置,其特征在于,包括:
获取模块,用于获取目标客户端发送的设备信息;
判断模块,用于判断所述设备信息是否在设备指纹网籍库的黑名单中;
接收模块,用于若判断所述设备信息不在设备指纹网籍库的黑名单中,则接收目标客户端发送的应用基础信息;
监测模块,用于监测所述应用基础信息中是否存在恶意攻击信息;
认证模块,用于若监测所述应用基础信息中不存在恶意攻击信息,则接收所述目标客户端发送的身份认证信息以进行用户认证。
B9.根据B8所述的装置,其特征在于,所述装置还包括:
关闭操作模块,用于若判断所述设备信息在设备指纹网籍库的黑名单中,则对所述目标客户端的当前应用执行关闭操作。
B10.根据B8或B9所述的装置,其特征在于,所述应用基础信息包括以下至少之一:所述目标客户端中当前应用的应用基本信息、应用所在系统基本信息、应用运行环境信息、应用运行状态信息、和/或应用入侵攻击信息;
所述接收模块具体用于:通过集成威胁感知软件开发工具包来获取所述目标客户端的当前应用的应用基础信息。
B11.根据B8所述的装置,其特征在于,所述监测模块具体用于:
在应用界面的跳转过程中根据所述应用基础信息监测当前应用的程序运行栈顶包名是否准确;
若是,则应用基础信息中不存在恶意攻击信息;若否,则应用基础信息中存在恶意攻击信息。
B12.根据B8或B11所述的装置,其特征在于,所述装置还包括:反馈模块,用于若监测所述应用基础信息中存在恶意攻击信息,则生成与所述恶意攻击信息对应的攻击情况的反馈信息,并将所述反馈信息反馈给所述目标客户端;
其中,所述反馈信息至少包括:攻击情况分析报告信息、攻击行为提醒消息信息、和/或攻击行为保护措施信息。
B13.根据B8所述的装置,其特征在于,所述认证模块具体用于:
获取所述身份认证信息中的待识别信息;
将所述待识别信息发送至数据中心,将所述待识别信息与所述数据中心中对应的网纹图中的信息进行比对,生成比对结果;
判断所述比对结果是否满足预设条件,若判断结果为是,则用户认证成功;若判断结果为否,则用户认证不成功。
B14.根据B13所述的装置,其特征在于,所述认证模块进一步用于:
计算所述待识别信息与所述数据中心中对应的网纹图中的信息的相似度指数;
判断所述相似度指数是否大于预设阈值,若是,则用户认证成功;若否,则用户认证不成功。
本发明还公开了:C15.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如A1-A7中任一项所述的用户认证方法对应的操作。
本发明还公开了:C16.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如A1-A7中任一项所述的用户认证方法对应的操作。