CN112328986A - 一种用户身份验证方法、装置、服务器及存储介质 - Google Patents
一种用户身份验证方法、装置、服务器及存储介质 Download PDFInfo
- Publication number
- CN112328986A CN112328986A CN202011354780.1A CN202011354780A CN112328986A CN 112328986 A CN112328986 A CN 112328986A CN 202011354780 A CN202011354780 A CN 202011354780A CN 112328986 A CN112328986 A CN 112328986A
- Authority
- CN
- China
- Prior art keywords
- user
- browser
- page
- dynamic
- verification code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 69
- 230000002159 abnormal effect Effects 0.000 claims abstract description 40
- 238000012795 verification Methods 0.000 claims description 128
- 238000004364 calculation method Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本公开提供一种用户身份验证方法、装置、服务器及存储介质,涉及信息安全技术领域,能够解决采用现有技术难以区分异常脚本用户和正常用户,存在一定的安全风险的问题。具体技术方案为:接收浏览器发送的页面访问请求;根据页面访问请求向浏览器发送身份验证信息收集指令,身份验证信息收集指令是经过混淆且按照预设加密算法加密的;根据动态参数以及动态算法计算得到第一动态口令;若在第一预设时长内接收到浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户;确定用户为正常用户后,向浏览器发送用户待访问的页面。本发明用于准确确定用户的身份,提高安全性。
Description
技术领域
本公开涉及信息安全领域,尤其涉及一种用户身份验证方法、装置、服务器及存储介质。
背景技术
随着网络的日益发展与完善,网络的安全也逐渐得到重视,网站用户的身份验证就显得尤为重要,身份验证又称“验证”、“鉴权”,是指通过一定的手段,完成对用户身份的确认。
现有技术中,服务器在对用户进行身份验证时,通常通过核对用户的身份验证信息例如用户名以及密码、数字证书等,对用户进行身份验证。但是,采用现有技术,若非法用户(异常脚本用户)例如黑客在通过编写脚本盗取正常用户的身份验证信息,即可冒充正常用户进行身份验证。因此,采用现有技术难以区分异常脚本用户和正常用户,存在一定的安全风险。
发明内容
本公开实施例提供一种用户身份验证方法、装置、服务器及存储介质,能够解决采用现有技术难以区分异常脚本用户和正常用户,存在一定的安全风险。所述技术方案如下:
根据本公开实施例的第一方面,提供一种用户身份验证方法,应用于服务器,方法包括:
接收浏览器发送的页面访问请求,所述页面访问请求是用户在浏览器上输入的,所述页面访问请求包括用户待访问的页面的标识信息;
根据所述页面访问请求向所述浏览器发送身份验证信息收集指令,所述身份验证信息收集指令是经过混淆且按照预设加密算法加密的,所述身份验证信息收集指令包括动态参数以及动态算法;
根据所述动态参数以及所述动态算法计算得到第一动态口令;
若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户,所述第一预设条件为所述第二动态口令与所述第一动态口令一致,所述第二动态口令是所述浏览器在接收到所述身份验证信息收集指令后根据所述动态算法以及所述动态参数计算得到的;
确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
本公开实施例提供的用户身份验证方法,能够接收浏览器发送的页面访问请求;根据该页面访问请求向该浏览器发送身份验证信息收集指令,该身份验证信息收集指令是经过混淆且按照预设加密算法加密的,该身份验证信息收集指令包括动态参数以及动态算法;根据该动态参数以及该动态算法计算得到第一动态口令;由于异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问服务器时,无法在短时间内向服务器发送与第一动态口令相同的第二动态口令,因此若服务器在第一预设时长内接收到该浏览器发送的第二动态口令且该第二动态口令与该第一动态口令一致,则确定该用户为正常用户,并在确定用户为正常用户后,向该浏览器发送用户待访问的页面,以便该浏览器向用户展示该用户待访问的页面,能够准确的确定用户的身份,提高安全性。
在一个实施例中,所述方法还包括:
若在所述第一预设时长内接收到所述浏览器发送的第二动态口令,且所述第二动态口令与所述第一动态口令不一致,则生成第一验证码以及第一提示信息,所述第一提示信息用于指示用户输入所述第一验证码;
向所述浏览器发送第一验证码以及第一提示信息,以便所述浏览器根据所述第一验证码以及第一提示信息生成验证码输入界面并向包括验证码输入提示信息向用户展示所述验证码输入页面,所述验证码输入页面包括所述第一验证码以及所述第一提示信息;
若在第二预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码一致,确定用户为正常用户;
确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
在一个实施例中,所述方法还包括:
若在所述第一预设时长内未接收到所述浏览器发送的第二动态口令,则生成所述第一验证码以及所述第一提示信息。
通过在第一预设时长内接收到浏览器发送的第二动态口令,且第二动态口令与所述第一动态口令不一致,或在第一预设时长内未接收到浏览器发送的第二动态口令时,则生成第一验证码以及第一提示信息,能够避免网络传输时延导致服务器未在第一预设时长内接收到第二动态口令或者数据传输过程中丢失导致服务器在第一预设时长内接收到的第二动态口令与第一动态口令不一致的情况,并在生成该第一验证码以及第一提示信息后,向浏览器发送第一验证码以及第一提示信息,以便浏览器根据该第一验证码以及第一提示信息生成验证码输入界面并向包括验证码输入提示信息向用户展示该验证码输入页面。正常用户可以看到用户展示的验证码输入页面并在该验证码输入页面上输入与该第一验证码相同的第二验证码。浏览器接收到用户输入的第二验证码后将该第二验证码发送至服务器。即服务器若在第二预设时长内接收到该浏览器发送的第二验证码,且该第二验证码与该第一验证码一致,确定用户为正常用户,能够进一步确定用户的身份,提高了用户访问服务器时的安全性。
在一个实施例中,所述方法还包括:
若在所述第一预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码不一致,确定用户为异常脚本用户;
确定用户为异常脚本后,向所述浏览器发送第二提示信息,以便所述浏览器向用户展示所述第二提示信息,所述第二提示信息用户提示用户无权限访问所述待访问页面。
通过向浏览器发送第二提示信息,以便浏览器向用户展示第二提示信息,能够提高用户体验。
在一个实施例中,所述接收浏览器发送的页面访问请求后,所述方法还包括:
生成身份验证页面,所述身份验证页面包括验证提示信息;
向所述浏览器发送所述身份验证页面,以便所述浏览器向用户展示所述身份验证页面,所述验证提示信息用于提示用户正在进行身份验证。
通过接收到浏览器发送的页面访问请求后,生成身份验证页面,该身份验证页面包括验证提示信息;向浏览器发送该身份验证页面,以便该浏览器向用户展示该身份验证页面,该验证提示信息用于提示用户正在进行身份验证。即在服务器进行身份验证的过程中,用户可以通过身份验证页面包括验证提示信息得知正在进行身份验证,提高了用户体验。
在一个实施例中,所述身份验证信息收集指令还用于指示收集所述浏览器的第一标识信息,所述若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户包括:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息和所述第二动态口令,且满足所述第一预设条件和第二预设条件,则确定用户为正常用户,所述第二预设条件为所述服务器中预先存储的浏览器的标识信息列表中存在所述第一标识信息。
由于异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问时,也无法在短时间内向服务器发送第一标识信息,或者向服务器发送的该第一标识信息在预选存储的浏览器的标识信息列表中不存在,因此,服务器若在第一预设时长内接收到所述浏览器发送的第一标识信息和所述第二动态口令,且满足所述第一预设条件和第二预设条件,即可确定用户为正常用户,能够准确的验证用户的身份。
在一个实施例中,所述身份验证信息收集指令还用于指示收集客户端的第二标识信息,所述客户端为运行所述浏览器的客户端,所述第二标识信息是所述浏览器在接收到身份验证信息收集指令后从所述客户端获取的,所述若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户包括:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息、所述第二动态口令以及所述第二标识信息,且满足所述第一预设条件、所述第二预设条件以及第三预设条件,则确定用户为正常用户,所述第三预设条件为所述服务器预先存储的客户端标识信息列表中存在所述第二标识信息。
由于异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问时,也无法在短时间内向服务器发送第二标识信息,或者向服务器发送的该第二标识信息在预选存储的客户端的标识信息列表中不存在,因此,服务器若在第一预设时长内接收到所述浏览器发送的第一标识信息、第二动态口令以及第二标识信息,且满足第一预设条件、第二预设条件以及第三预设条件,即可确定用户为正常用户,能够准确的验证用户的身份。
根据本公开实施例的第二方面,提供一种用户身份验证装置,应用于服务器,包括:
页面访问请求接收模块,用于接收浏览器发送的页面访问请求,所述页面访问请求是用户在浏览器上输入的,所述页面访问请求包括用户待访问的页面的标识信息;
身份验证信息收集指令发送模块,用于根据所述页面访问请求向所述浏览器发送身份验证信息收集指令,所述身份验证信息收集指令是经过混淆且按照预设加密算法加密的,所述身份验证信息收集指令包括动态参数以及动态算法;
第一动态口令获取模块,用于根据所述动态参数以及所述动态算法计算得到第一动态口令;
正常用户确定模块,用于若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户,所述第一预设条件为所述第二动态口令与所述第一动态口令一致,所述第二动态口令是所述浏览器在接收到所述身份验证信息收集指令后根据所述动态算法以及所述动态参数计算得到的;
待访问页面发送模块,用于确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
在一个实施例中,所述装置还包括:
第一验证码生成模块,用于若在第一预设时长内接收到所述浏览器发送的第二动态口令,且所述第二动态口令与所述第一动态口令不一致,则生成第一验证码以及第一提示信息,所述第一提示信息用于指示用户输入所述第一验证码;
第一验证码发送模块,用于向所述浏览器发送第一验证码以及第一提示信息,以便所述浏览器根据所述第一验证码以及第一提示信息生成验证码输入界面并向包括验证码输入提示信息向用户展示所述验证码输入页面,所述验证码输入页面包括所述第一验证码以及所述第一提示信息;
第二验证码接收模块,用于若在第二预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码一致,确定用户为正常用户;
待访问页面发送模块还用于,确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
在一个实施例中,所述第一验证码生成模块还用于:
若在所述第一预设时长内未接收到所述浏览器发送的第二动态口令,则生成所述第一验证码以及所述第一提示信息。
在一个实施例中,所述装置还包括:
异常脚本用户确定模块,用于:
若在所述第一预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码不一致,确定用户为异常脚本用户;
第二提示信息发送模块,用于确定用户为异常脚本后,向所述浏览器发送第二提示信息,以便所述浏览器向用户展示所述第二提示信息,所述第二提示信息用户提示用户无权限访问所述待访问页面。
在一个实施例中,所述装置还包括:
身份验证页面生成模块,用于生成身份验证页面,所述身份验证页面包括验证提示信息;
身份验证页面发送模块,用于向所述浏览器发送所述身份验证页面,以便所述浏览器向用户展示所述身份验证页面,所述验证提示信息用于提示用户正在进行身份验证。
在一个实施例中,所述身份验证信息收集指令还用于指示收集所述浏览器的第一标识信息,所述正常用户确定模块用于:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息和所述第二动态口令,且满足所述第一预设条件和第二预设条件,则确定用户为正常用户,所述第二预设条件为所述服务器中预先存储的浏览器的标识信息列表中存在所述第一标识信息。
在一个实施例中,所述身份验证信息收集指令还用于指示收集客户端的第二标识信息,所述客户端为运行所述浏览器的客户端,所述第二标识信息是所述浏览器在接收到身份验证信息收集指令后从所述客户端获取的,所述正常用户确定模块用于:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息、所述第二动态口令以及所述第二标识信息,且满足所述第一预设条件、所述第二预设条件以及第三预设条件,则确定用户为正常用户,所述第三预设条件为所述服务器预先存储的客户端标识信息列表中存在所述第二标识信息。
根据本公开实施例的第三方面,提供一种服务器,所述服务器包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现第一方面中任一项所述的用户身份验证方法中所执行的步骤。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现第一方面中任一项所述的用户身份验证方法中所执行的步骤。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种用户身份验证***的结构示意图;
图2是本公开实施例提供的一种用户身份验证方法的流程图;
图3是本公开实施例提供的一种用户身份验证装置的结构示意图一;
图4是本公开实施例提供的一种用户身份验证装置的结构示意图二;
图5是本公开实施例提供的一种服务器的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是本公开实施例提供的一种用户身份验证***的结构示意图。如图1所示,该***包括:
服务器101和浏览器102。其中,服务器101和浏览器102之间可以进行通信连接。
浏览器102可以接收用户输入的页面访问请求,该页面访问请求中包括用户待访问的页面的标识信息。该用户访问请求可以是正常用户通过手动在浏览器上输入的,也可以是异常脚本用户通过运行脚本在浏览器上输入的。浏览器接102接收到该页面访问请求后,将该页面访问请求发送至服务器101。
服务器101接收到浏览器102发送的该页面访问请求后,根据该页面访问请求向浏览器102发送身份验证信息收集指令,该身份验证信息收集指令是经过混淆且按照预设加密算法加密的,该身份验证信息收集指令包括动态参数以及动态算法,同时服务器根据该动态参数以及该动态算法计算得到第一动态口令。
服务器101向浏览器102发送经过混淆且按照预设加密算法加密的身份验证信息收集指令,浏览器102可以直接解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,进而根据该动态算法以及该动态参数计算得到第二动态口令,且该第二动态口令与第一动态口令相同,并向服务器101发送该第二动态指令。服务器101若在第一预设时长接收到该第二动态指令,且确定该第二动态口令与第一动态口令相同,则确定该用户为正常用户,并向浏览器102发送用户待访问的页面,以便浏览器101向用户展示该用户待访问的页面。
而异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析的且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问时,无法在短时间内向服务器发送与第一动态口令相同的第二动态口令。即服务器若在在第一预设时长接收到没有接收到第一动态口令相同的第二动态指令,则确定用户为异常脚本用户。
下面结合图2实施例,对本公开实施例提供的用户身份验证***如何进行用户身份验证进行说明。
图2是本公开实施例提供的一种用户身份验证方法的流程图,该方法应用于服务器。如图2所示,该方法包括:
S201、接收浏览器发送的页面访问请求,该页面访问请求是用户在浏览器上输入的,该页面访问请求包括用户待访问的页面的标识信息。
浏览器可以接收用户输入的页面访问请求,该页面访问请求中包括用户待访问的页面的标识信息。该用户访问请求可以是正常用户通过手动在浏览器上输入的,也可以是异常脚本用户通过运行脚本在浏览器上输入的。浏览器接收到用户输入的页面访问请求后,向服务器发送该页面访问请求。
S202、根据该页面访问请求向浏览器发送身份验证信息收集指令,该身份验证信息收集指令是经过混淆且按照预设加密算法加密的,该身份验证信息收集指令包括动态参数以及动态算法;
S203、根据该动态参数以及该动态算法计算得到第一动态口令。
服务器接收到浏览器发送的该页面访问请求后,根据该页面访问请求向浏览器发送身份验证信息收集指令,该身份验证信息收集指令是经过混淆且按照预设加密算法加密的,该身份验证信息收集指令包括动态参数以及动态算法,同时服务器根据该动态参数以及该动态算法计算得到第一动态口令。
例如,该动态参数可以为1和2,该动态算法可以为加法,则服务器根据该动态参数以及该动态算法计算得到第一动态口令为1+2,即为3。
S204、若在第一预设时长内接收到该浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户,该第一预设条件为该第二动态口令与所述第一动态口令一致,该第二动态口令是该浏览器在接收到该身份验证信息收集指令后根据该动态算法以及该动态参数计算得到的;
S205、确定用户为正常用户后,向该浏览器发送用户待访问的页面,以便该浏览器向用户展示该用户待访问的页面。
服务器向浏览器发送经过混淆且按照预设加密算法加密的身份验证信息收集指令,浏览器可以直接解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,进而根据该动态算法以及该动态参数计算得到第二动态口令,且该第二动态口令与第一动态口令相同,并向服务器发送该第二动态指令。
例如,浏览器发送经过混淆且按照预设加密算法加密的身份验证信息收集指令,浏览器可以直接解析并且按照与该预设加密算法对应的解密算法解密得到该动态参数为1和2,该动态算法为加法,则浏览器根据该动态参数以及该动态算法计算得到第二动态口令为1+2,即为3,并向服务器发送该第二动态指令3。
服务器若在第一预设时长接收到该第二动态指令,且确定该第二动态口令与第一动态口令相同,则确定该用户为正常用户,并向浏览器发送用户待访问的页面,以便浏览器向用户展示该用户待访问的页面。
异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问时,无法在短时间内向服务器发送与第一动态口令相同的第二动态口令。即服务器若在第一预设时长内接收到该浏览器发送的第二动态口令,且第二动态口令与第一动态口令不一致,或若在预设时长内未接收到该浏览器发送的第二动态口令,则确定用户为异常脚本用户。
示例性地,为避免网络传输时延导致服务器未在第一预设时长内接收到第二动态口令,或者数据在传输过程中丢失导致服务器在第一预设时长内接收到第二动态口令与第一动态口令不一致,服务器还可以在第一预设时长后生成第一验证码以及第一提示信息,该第一提示信息用于指示用户输入该第一验证码。
生成该第一验证码以及第一提示信息后,向浏览器发送第一验证码以及第一提示信息,以便浏览器根据该第一验证码以及第一提示信息生成验证码输入界面并向包括验证码输入提示信息向用户展示该验证码输入页面,该验证码输入页面包括该第一验证码以及该第一提示信息。正常用户可以看到用户展示的验证码输入页面并在该验证码输入页面上输入与该第一验证码相同的第二验证码。浏览器接收到用户输入的第二验证码后将该第二验证码发送至服务器。即服务器若在第二预设时长内接收到该浏览器发送的第二验证码,且该第二验证码与该第一验证码一致,确定用户为正常用户。确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便该浏览器向用户展示该用户待访问的页面。
异常脚本用户通过脚本远程访问服务器时,无法在验证码输入页面上输入与该第一验证码相同的第二验证码,服务器也无法接收异常脚本用户在第二预设时长内发送的该第二验证码,因此,服务器通过生成该第一验证码以及第一提示信息后并浏览器发送第一验证码以及第一提示信息;并在第二预设时长内接收到该浏览器发送的第二验证码,且该第二验证码与该第一验证码一致,即可进一步确定用户为正常用户,提高了用户访问服务器时的安全性。
示例性地,若在第二预设时长内接收到浏览器发送的第二验证码或在第二预设时长内接收到浏览器发送的第二验证码第一验证码不一致,确定用户为异常脚本用户。确定用户为异常脚本后,向浏览器发送第二提示信息,以便浏览器向用户展示第二提示信息,该第二提示信息用户提示用户无权限访问该待访问页面。
示例性地,服务器接收到浏览器发送的页面访问请求后,还可以生成身份验证页面,该身份验证页面包括验证提示信息;向浏览器发送该身份验证页面,以便该浏览器向用户展示该身份验证页面,该验证提示信息用于提示用户正在进行身份验证。即在服务器进行身份验证的过程中,用户可以通过身份验证页面包括验证提示信息得知正在进行身份验证,提高了用户体验。
在一个实施例中,该身份验证信息收集指令还用于指示收集浏览器的第一标识信息,该第一标识信息为浏览器的版本信息以及属性信息。同样地,若服务器在第一预设时长内接收到该浏览器发送的该第一标识信息和该第二动态口令,且满足第一预设条件和第二预设条件,则确定用户为正常用户,该第二预设条件为该服务器中预先存储的浏览器的标识信息列表中存在该第一标识信息。
异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问时,也无法在短时间内向服务器发送第一标识信息,或者向服务器发送的该第一标识信息在预选存储的浏览器的标识信息列表中不存在。
在另一个实施例中,该身份验证信息收集指令还用于指示收集客户端的第二标识信息,该客户端为运行该浏览器的客户端,该第二标识信息是该浏览器在接收到身份验证信息收集指令后从该客户端获取的。同样地,若服务器在第一预设时长内接收到浏览器发送的第一标识信息、第二动态口令以及所述第二标识信息,且满足第一预设条件、第二预设条件以及第三预设条件,则确定用户为正常用户,该第三预设条件为该服务器预先存储的客户端标识信息列表中存在该第二标识信息,该第二标识信息可以为该客户端的设备指纹。
异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问时,也无法在短时间内向服务器发送第二标识信息,或者向服务器发送的该第二标识信息在预先存储的客户端标识信息列表中不存在。
本公开实施例提供的用户身份验证方法,能够接收浏览器发送的页面访问请求;根据该页面访问请求向该浏览器发送身份验证信息收集指令,该身份验证信息收集指令是经过混淆且按照预设加密算法加密的,该身份验证信息收集指令包括动态参数以及动态算法;根据该动态参数以及该动态算法计算得到第一动态口令;由于异常脚本用户通过脚本远程访问服务器时,需要通过脚本解析并且按照与该预设加密算法对应的解密算法解密得到该身份验证信息收集指令,由于该身份验证信息收集指令是经过混淆的,异常脚本用户很难通过脚本解析该身份验证信息收集指令,因此,若异常脚本用户若通过脚本访问服务器时,无法在短时间内向服务器发送与第一动态口令相同的第二动态口令,因此若服务器在第一预设时长内接收到该浏览器发送的第二动态口令且该第二动态口令与该第一动态口令一致,则确定该用户为正常用户,并在确定用户为正常用户后,向该浏览器发送用户待访问的页面,以便该浏览器向用户展示该用户待访问的页面,能够准确的确定用户的身份,提高安全性。
上述对应的实施例中所描述的用户身份验证方法,下述为本公开装置实施例,可以用于执行本公开方法实施例。图3是本公开实施例提供的一种用户身份验证装置的结构示意图一,该装置服务器。如图3所示,该装置30包括:
页面访问请求接收模块301,用于接收浏览器发送的页面访问请求,所述页面访问请求是用户在浏览器上输入的,所述页面访问请求包括用户待访问的页面的标识信息;
身份验证信息收集指令发送模块302,用于根据所述页面访问请求向所述浏览器发送身份验证信息收集指令,所述身份验证信息收集指令是经过混淆且按照预设加密算法加密的,所述身份验证信息收集指令包括动态参数以及动态算法;
第一动态口令获取模块303,用于根据所述动态参数以及所述动态算法计算得到第一动态口令;
正常用户确定模块304,用于若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户,所述第一预设条件为所述第二动态口令与所述第一动态口令一致,所述第二动态口令是所述浏览器在接收到所述身份验证信息收集指令后根据所述动态算法以及所述动态参数计算得到的;
待访问页面发送模块305,用于确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
在一个实施例中,如图4所示,所述装置30还包括:
第一验证码生成模块306,用于若在第一预设时长内接收到所述浏览器发送的第二动态口令,且所述第二动态口令与所述第一动态口令不一致,则生成第一验证码以及第一提示信息,所述第一提示信息用于指示用户输入所述第一验证码;
第一验证码发送模块307,用于向所述浏览器发送第一验证码以及第一提示信息,以便所述浏览器根据所述第一验证码以及第一提示信息生成验证码输入界面并向包括验证码输入提示信息向用户展示所述验证码输入页面,所述验证码输入页面包括所述第一验证码以及所述第一提示信息;
第二验证码接收模块308,用于若在第二预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码一致,确定用户为正常用户;
待访问页面发送模块305还用于,确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
在一个实施例中,所述第一验证码生成模块306用于:
若在所述第一预设时长内未接收到所述浏览器发送的第二动态口令,则生成所述第一验证码以及所述第一提示信息。
在一个实施例中,所述装置30还包括:
异常脚本用户确定模块309,用于:
若在所述第一预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码不一致,确定用户为异常脚本用户;
第二提示信息发送模块310,用于确定用户为异常脚本后,向所述浏览器发送第二提示信息,以便所述浏览器向用户展示所述第二提示信息,所述第二提示信息用户提示用户无权限访问所述待访问页面。
在一个实施例中,所述装置30还包括:
身份验证页面生成模块311,用于生成身份验证页面,所述身份验证页面包括验证提示信息;
身份验证页面发送模块312,用于向所述浏览器发送所述身份验证页面,以便所述浏览器向用户展示所述身份验证页面,所述验证提示信息用于提示用户正在进行身份验证。
在一个实施例中,所述身份验证信息收集指令还用于指示收集所述浏览器的第一标识信息,所述正常用户确定模块304用于:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息和所述第二动态口令,且满足所述第一预设条件和第二预设条件,则确定用户为正常用户,所述第二预设条件为所述服务器中预先存储的浏览器的标识信息列表中存在所述第一标识信息。
在一个实施例中,所述身份验证信息收集指令还用于指示收集客户端的第二标识信息,所述客户端为运行所述浏览器的客户端,所述第二标识信息是所述浏览器在接收到身份验证信息收集指令后从所述客户端获取的,所述正常用户确定模块304用于:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息、所述第二动态口令以及所述第二标识信息,且满足所述第一预设条件、所述第二预设条件以及第三预设条件,则确定用户为正常用户,所述第三预设条件为所述服务器预先存储的客户端标识信息列表中存在所述第二标识信息。
本公开实施例提供的用户身份装置,其实现过程和技术效果可以参见上述图2实施例,在此不再赘述。
图5是本公开实施例提供的一种服务器的结构示意图,如图5所示,该服务器50包括:
处理器501和存储器502,所述存储器502中存储有至少一条计算机指令,所述指令由所述处理器501加载并执行以实现图2对应的实施例所述的用户身份验证方法中所执行的步骤。
基于上述图2对应的实施例中所描述的用户身份验证方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read Only Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图2对应的实施例中所描述的用户身份验证方法,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
Claims (10)
1.一种用户身份验证方法,其特征在于,应用于服务器,包括:
接收浏览器发送的页面访问请求,所述页面访问请求是用户在浏览器上输入的,所述页面访问请求包括用户待访问的页面的标识信息;
根据所述页面访问请求向所述浏览器发送身份验证信息收集指令,所述身份验证信息收集指令是经过混淆且按照预设加密算法加密的,所述身份验证信息收集指令包括动态参数以及动态算法;
根据所述动态参数以及所述动态算法计算得到第一动态口令;
若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户,所述第一预设条件为所述第二动态口令与所述第一动态口令一致,所述第二动态口令是所述浏览器在接收到所述身份验证信息收集指令后根据所述动态算法以及所述动态参数计算得到的;
确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若在所述第一预设时长内接收到所述浏览器发送的第二动态口令,且所述第二动态口令与所述第一动态口令不一致则生成第一验证码以及第一提示信息,所述第一提示信息用于指示用户输入所述第一验证码;
向所述浏览器发送第一验证码以及第一提示信息,以便所述浏览器根据所述第一验证码以及第一提示信息生成验证码输入界面并向包括验证码输入提示信息向用户展示所述验证码输入页面,所述验证码输入页面包括所述第一验证码以及所述第一提示信息;
若在第二预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码一致,确定用户为正常用户;
确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若在所述第一预设时长内未接收到所述浏览器发送的第二动态口令,则生成所述第一验证码以及所述第一提示信息。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若在所述第一预设时长内接收到所述浏览器发送的第二验证码,且所述第二验证码与所述第一验证码不一致,确定用户为异常脚本用户;
确定用户为异常脚本后,向所述浏览器发送第二提示信息,以便所述浏览器向用户展示所述第二提示信息,所述第二提示信息用户提示用户无权限访问所述待访问页面。
5.根据权利要求1所述的方法,其特征在于,所述接收浏览器发送的页面访问请求后,所述方法还包括:
生成身份验证页面,所述身份验证页面包括验证提示信息;
向所述浏览器发送所述身份验证页面,以便所述浏览器向用户展示所述身份验证页面,所述验证提示信息用于提示用户正在进行身份验证。
6.根据权利要求1所述的方法,其特征在于,所述身份验证信息收集指令还用于指示收集所述浏览器的第一标识信息,所述若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户包括:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息和所述第二动态口令,且满足所述第一预设条件和第二预设条件,则确定用户为正常用户,所述第二预设条件为所述服务器中预先存储的浏览器的标识信息列表中存在所述第一标识信息。
7.根据权利要求6所述的方法,其特征在于,所述身份验证信息收集指令还用于指示收集客户端的第二标识信息,所述客户端为运行所述浏览器的客户端,所述第二标识信息是所述浏览器在接收到身份验证信息收集指令后从所述客户端获取的,所述若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户包括:
若在所述第一预设时长内接收到所述浏览器发送的所述第一标识信息、所述第二动态口令以及所述第二标识信息,且满足所述第一预设条件、所述第二预设条件以及第三预设条件,则确定用户为正常用户,所述第三预设条件为所述服务器预先存储的客户端标识信息列表中存在所述第二标识信息。
8.一种用户身份验证装置,其特征在于,应用于服务器,包括:
页面访问请求接收模块,用于接收浏览器发送的页面访问请求,所述页面访问请求是用户在浏览器上输入的,所述页面访问请求包括用户待访问的页面的标识信息;
身份验证信息收集指令发送模块,用于根据所述页面访问请求向所述浏览器发送身份验证信息收集指令,所述身份验证信息收集指令是经过混淆且按照预设加密算法加密的,所述身份验证信息收集指令包括动态参数以及动态算法;
第一动态口令获取模块,用于根据所述动态参数以及所述动态算法计算得到第一动态口令;
正常用户确定模块,用于若在第一预设时长内接收到所述浏览器发送的第二动态口令且满足第一预设条件,则确定用户为正常用户,所述第一预设条件为所述第二动态口令与所述第一动态口令一致,所述第二动态口令是所述浏览器在接收到所述身份验证信息收集指令后根据所述动态算法以及所述动态参数计算得到的;
待访问页面发送模块,用于确定用户为正常用户后,向所述浏览器发送用户待访问的页面,以便所述浏览器向用户展示所述用户待访问的页面。
9.一种服务器,其特征在于,所述服务器包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现权利要求1至权利要求7任一项所述的用户身份验证方法中所执行的步骤。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现权利要求1至权利要求7任一项所述的用户身份验证方法中所执行的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011354780.1A CN112328986A (zh) | 2020-11-26 | 2020-11-26 | 一种用户身份验证方法、装置、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011354780.1A CN112328986A (zh) | 2020-11-26 | 2020-11-26 | 一种用户身份验证方法、装置、服务器及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112328986A true CN112328986A (zh) | 2021-02-05 |
Family
ID=74309177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011354780.1A Pending CN112328986A (zh) | 2020-11-26 | 2020-11-26 | 一种用户身份验证方法、装置、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112328986A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114048449A (zh) * | 2022-01-11 | 2022-02-15 | 北京顶象技术有限公司 | 一种结合缓存信息提升验证码安全性的方法及装置 |
CN115225341A (zh) * | 2022-06-28 | 2022-10-21 | 西安四叶草信息技术有限公司 | 一种网站访问方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101427510A (zh) * | 2006-03-09 | 2009-05-06 | 威斯科数据安全国际有限公司 | 用于网络功能描述的数字通行 |
CN104468099A (zh) * | 2013-09-12 | 2015-03-25 | 全联斯泰克科技有限公司 | 基于cpk的动态口令生成和验证方法及装置 |
CN106453802A (zh) * | 2016-11-30 | 2017-02-22 | 努比亚技术有限公司 | 一种密码验证方法及装置、终端 |
CN106534122A (zh) * | 2016-11-17 | 2017-03-22 | 陕西玉航电子有限公司 | 一种电子钥匙的动态口令 |
-
2020
- 2020-11-26 CN CN202011354780.1A patent/CN112328986A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101427510A (zh) * | 2006-03-09 | 2009-05-06 | 威斯科数据安全国际有限公司 | 用于网络功能描述的数字通行 |
CN104468099A (zh) * | 2013-09-12 | 2015-03-25 | 全联斯泰克科技有限公司 | 基于cpk的动态口令生成和验证方法及装置 |
CN106534122A (zh) * | 2016-11-17 | 2017-03-22 | 陕西玉航电子有限公司 | 一种电子钥匙的动态口令 |
CN106453802A (zh) * | 2016-11-30 | 2017-02-22 | 努比亚技术有限公司 | 一种密码验证方法及装置、终端 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114048449A (zh) * | 2022-01-11 | 2022-02-15 | 北京顶象技术有限公司 | 一种结合缓存信息提升验证码安全性的方法及装置 |
CN114048449B (zh) * | 2022-01-11 | 2022-05-13 | 北京顶象技术有限公司 | 一种结合缓存信息提升验证码安全性的方法及装置 |
CN115225341A (zh) * | 2022-06-28 | 2022-10-21 | 西安四叶草信息技术有限公司 | 一种网站访问方法及装置 |
CN115225341B (zh) * | 2022-06-28 | 2024-05-31 | 西安四叶草信息技术有限公司 | 一种网站访问方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109005155B (zh) | 身份认证方法及装置 | |
EP3343831A1 (en) | Identity authentication method and apparatus | |
CN112000951B (zh) | 一种访问方法、装置、***、电子设备及存储介质 | |
US11838421B2 (en) | Systems and methods for enhanced mobile device authentication | |
CN109145628B (zh) | 一种基于可信执行环境的数据采集方法及*** | |
CN112261012A (zh) | 一种浏览器、服务器以及网页访问方法 | |
CN109842616B (zh) | 账号绑定方法、装置及服务器 | |
CN111143822A (zh) | 一种应用***访问方法及装置 | |
CN112328986A (zh) | 一种用户身份验证方法、装置、服务器及存储介质 | |
CN106302606A (zh) | 一种跨应用访问方法及装置 | |
CN111460410A (zh) | 服务器登录方法、装置、***与计算机可读存储介质 | |
CN109697163B (zh) | 程序测试方法及设备 | |
CN108900595B (zh) | 访问云存储服务器数据的方法、装置、设备及计算介质 | |
CN104837159A (zh) | Android平台OAuth协议误用安全检测方法 | |
JP4998314B2 (ja) | 通信制御方法および通信制御プログラム | |
CN110807210B (zh) | 一种信息处理方法、平台、***及计算机存储介质 | |
KR100976040B1 (ko) | Usb 저장장치를 이용한 사용자 인증 방법과 시스템 | |
CN112118209B (zh) | 车辆设备的账号操作方法及装置 | |
CN108429621B (zh) | 一种身份验证方法及装置 | |
CN113992353B (zh) | 登录凭证的处理方法、装置、电子设备及存储介质 | |
CN109428869B (zh) | 钓鱼攻击防御方法和授权服务器 | |
CN106533685B (zh) | 身份认证方法、装置及*** | |
CN114944921A (zh) | 登录认证方法、装置、电子设备及存储介质 | |
CN113271306B (zh) | 数据请求、发送方法、设备以及*** | |
CN115174181B (zh) | 一种单点登录的实现方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |