CN114301683B - 一种保证令牌安全性的方法与系统 - Google Patents
一种保证令牌安全性的方法与系统 Download PDFInfo
- Publication number
- CN114301683B CN114301683B CN202111632194.3A CN202111632194A CN114301683B CN 114301683 B CN114301683 B CN 114301683B CN 202111632194 A CN202111632194 A CN 202111632194A CN 114301683 B CN114301683 B CN 114301683B
- Authority
- CN
- China
- Prior art keywords
- check code
- token
- digital
- data request
- digital check
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000012795 verification Methods 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 20
- 230000001502 supplementing effect Effects 0.000 claims description 3
- 239000013589 supplement Substances 0.000 abstract 1
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种保证令牌安全性的方法与终端;浏览器端在收到验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;浏览器端生成包含令牌的数据请求,在数据请求中补入数字校验码后发送至认证网关,同时对本地存储的数字校验码进行变化处理;认证网关接收数据请求,对令牌进行有效性校验,若有效性校验通过,则由认证网关判断本地是否存储有对应令牌的令牌校验码,若是,则根据所令牌校验码以及预设规则对数字校验码进行校验,若校验通过,则更新令牌校验码为数字校验码,并放行数据请求,否则存储数字校验码为令牌校验码并放行数据请求;通过数字校验码,在低成本下保证了令牌的安全性。
Description
技术领域
本发明涉及互联网应用技术领域,特别涉及一种保证令牌安全性的方法与系统。
背景技术
目前的BS架构(Browser/Server Architecture,即浏览器和服务器的结构模式)的web应用大多采用前后端分离技术,为了实现这个架构,一般采用token(令牌)的方式进行身份的识别,实现的思路是用户在进入web应用系统前做个身份认证,一般是在登录页面通过账号密码的方式进行登录,服务端收到登录请求进行用户验证,验证通过后生成一个token返回到前端,接下来在token的有效期内,浏览器跟服务端进行接口交互都会带上这个token进行用户身份的鉴别,服务端通过鉴别这个token来识别用户身份进行操作合法性的验证。
用token进行用户信息的认证具有一定的安全性,但是没有考虑token的泄露问题,由于token不是一次性消费的方式,一般是在用户登录后一定时间都是有效的,造成黑客可以通过网络劫持获取到token后,在token的有效期内就可以使用这个token伪造用户请求。以往为了避免网络劫持会采用https(超文本传输安全协议)的方式进行数据传输,但是这样的方式需要采购域名和SSL(Secure Sockets Layer,安全套接字协议)证书,并且得进行备案开放443端口,操作复杂、成本高,很多小型系统无法达到这个条件。
发明内容
本发明所要解决的技术问题是:提供一种保证令牌安全性的方法与系统,能够以更加简单且低成本的方式保证令牌的安全性。
为了解决上述技术问题,本发明采用的技术方案为:
一种保证令牌安全性的方法,包括步骤:
S1、认证网关接收浏览器端的用户登录请求,对所述用户登录请求中的信息进行认证,若认证通过,则返回令牌和验证通过结果至浏览器端;
S2、浏览器端在收到所述验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;
S3、浏览器端生成包含所述令牌的数据请求,在所述数据请求中补入所述数字校验码后发送至认证网关,同时对本地存储的所述数字校验码进行变化处理;
S4、认证网关接收所述数据请求,对所述令牌进行有效性校验,若所述有效性校验通过,则进入步骤S5;
S5、认证网关判断本地是否存储有对应所述令牌的令牌校验码,若是,则根据所令牌校验码以及预设规则对所述数字校验码进行校验,若校验通过,则更新所述令牌校验码为所述数字校验码,并放行所述数据请求,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求。
为了解决上述技术问题,本发明采用的另一种技术方案为:
一种保证令牌安全性的系统,包括认证网关以及浏览器端,所述认证网关包括第一处理器、第一存储器以及存储在所述第一存储器中并可在所述第一处理器上运行的第一计算机程序,所述浏览器端包括第二处理器、第二存储器以及存储在所述第二存储器中并可在所述第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:
S1、接收浏览器端的用户登录请求,对所述用户登录请求中的信息进行认证,若认证通过,则返回令牌和验证通过结果至浏览器端;
S4、接收所述数据请求,对所述令牌进行有效性校验,若所述有效性校验通过,则进入步骤S5;
S5、判断本地是否存储有对应所述令牌的令牌校验码,若是,则根据所令牌校验码以及预设规则对所述数字校验码进行校验,若校验通过,则更新所述令牌校验码为所述数字校验码,并放行所述数据请求,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
所述第二处理器执行所述第二计算机程序时实现以下步骤;
S2、在收到所述验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;
S3、生成包含所述令牌的数据请求,在所述数据请求中补入所述数字校验码后发送至认证网关,同时对本地存储的所述数字校验码进行变化处理。
本发明的有益效果在于:本发明的一种保证令牌安全性的方法与系统,在浏览器端登录认证通过后返回令牌,由浏览器端随机生成一校验码,并在登录成功后的第一次请求后存储至认证网关,并在认证网关每次收到请求后自动更新,检验码按照预设的变化规则动态变化,且由认证网关根据预设的校验规则进行校验,结合校验码保证令牌的安全性,且由于校验码动态变化,即使校验码通令牌一同遭到劫持,非法设备也无法基于劫持到的令牌与校验码通过认证网关的校验,在保证令牌安全性的同时步骤更加简单且成本更低。
附图说明
图1为本发明实施例的一种保证令牌安全性的方法的流程图;
图2为本发明实施例的一种保证令牌安全性的系统的结构图;
图3为本发明实施例的一种保证令牌安全性的方法的用户登录过程流程图;
图4为本发明实施例的一种保证令牌安全性的方法的请求生成及校验的流程图;
标号说明:
1、一种保证令牌安全性的系统;2、认证网关;3、浏览器端;4、第一处理器;5、第一存储器;6、第二处理器;7、第二存储器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
请参照图1,一种保证令牌安全性的方法,包括步骤:
S1、认证网关接收浏览器端的用户登录请求,对所述用户登录请求中的信息进行认证,若认证通过,则返回令牌和验证通过结果至浏览器端;
S2、浏览器端在收到所述验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;
S3、浏览器端生成包含所述令牌的数据请求,在所述数据请求中补入所述数字校验码后发送至认证网关,同时对本地存储的所述数字校验码进行变化处理;
S4、认证网关接收所述数据请求,对所述令牌进行有效性校验,若所述有效性校验通过,则进入步骤S5;
S5、认证网关判断本地是否存储有对应所述令牌的令牌校验码,若是,则根据所令牌校验码以及预设规则对所述数字校验码进行校验,若校验通过,则更新所述令牌校验码为所述数字校验码,并放行所述数据请求,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求。
从上述描述可知,本发明的有益效果在于:本发明的一种保证令牌安全性的方法与系统,在浏览器端登录认证通过后返回令牌,由浏览器端随机生成一校验码,并在登录成功后的第一次请求后存储至认证网关,并在认证网关每次收到请求后自动更新,检验码按照预设的变化规则动态变化,且由认证网关根据预设的校验规则进行校验,结合校验码保证令牌的安全性,且由于校验码动态变化,即使校验码通令牌一同遭到劫持,非法设备也无法基于劫持到的令牌与校验码通过认证网关的校验,在保证令牌安全性的同时步骤更加简单且成本更低。
进一步地,所述步骤S3具体包括:
S31、浏览器端生成包含所述令牌的数据请求,判断所述数字校验码是否处于锁定状态,若是,则等待数字校验解锁后进入步骤S32,否则直接进入步骤S32;
S32、将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
S33、向所述认证网关发送所述数据请求,并在所述数据请求发出后解锁所述数字校验码。
由上述描述可知,在对数字校验码进行读取和变化前需要对其进行锁定,使浏览器的其他线程无法在此期间读取数字校验码,在可能存在并发的情况下,保证每个请求线程的所使用数字校验码均不同。
进一步地,所述认证网关存储有预设的私钥,所述浏览器端存储有预设的公钥,所述公钥与所述私钥对应;
所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,使用所述公钥对所述数字校验码进行加密,得到加密校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
所述步骤S4具体为:
认证网关接收所述数据请求,对所述令牌进行有效性校验,仅在所述有效性校验通过后,使用所述私钥对所述数据请求中的所述加密校验码进行解密,得到所述数字校验码,并进入步骤S5。
由上述描述可知,通过在认证网关和浏览器端的公私钥对对数字校验码进行加密,进一步提高了数据的安全性。
进一步地,所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行自增处理。
由上述描述可知,对数字验证码的规则变化采用了自增的变化方式,简单高效地保证了每个请求中数字验证码的差异。
进一步地,所述步骤S5具体包括步骤:
S51、认证网关判断本地是否存储有对应所述令牌的令牌校验码,若是,则计算所述令牌校验码与所述数字校验码的差值,进入步骤S52,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
S52、判断所述差值是否小于预设的偏差阈值且不等于0,若是,则放行所述数据请求,否则对所述令牌进行失效处理,并返回错误信息。
由上述描述可知,处于网络可能存在延迟考虑,对于多个陆续发出的请求可能后发出的请求先到达服务端,因此不要求每个请求中的数字校验码大于令牌校验码,只要其与令牌校验码差值小于偏差阈值,同时由于每个请求的数字校验码均不同,因此不存在差值为0的情况,若差值为0则表示令牌与校验码已被劫持,需要对其无效化。
请参照图2,一种保证令牌安全性的系统,包括认证网关以及浏览器端,所述认证网关包括第一处理器、第一存储器以及存储在所述第一存储器中并可在所述第一处理器上运行的第一计算机程序,所述浏览器端包括第二处理器、第二存储器以及存储在所述第二存储器中并可在所述第二处理器上运行的第二计算机程序,所述第一处理器执行所述第一计算机程序时实现以下步骤:
S1、接收浏览器端的用户登录请求,对所述用户登录请求中的信息进行认证,若认证通过,则返回令牌和验证通过结果至浏览器端;
S4、接收所述数据请求,对所述令牌进行有效性校验,若所述有效性校验通过,则进入步骤S5;
S5、判断本地是否存储有对应所述令牌的令牌校验码,若是,则根据所令牌校验码以及预设规则对所述数字校验码进行校验,若校验通过,则更新所述令牌校验码为所述数字校验码,并放行所述数据请求,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
所述第二处理器执行所述第二计算机程序时实现以下步骤;
S2、在收到所述验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;
S3、生成包含所述令牌的数据请求,在所述数据请求中补入所述数字校验码后发送至认证网关,同时对本地存储的所述数字校验码进行变化处理。
从上述描述可知,本发明的有益效果在于:本发明的一种保证令牌安全性的方法与系统,在浏览器端登录认证通过后返回令牌,由浏览器端随机生成一校验码,并在登录成功后的第一次请求后存储至认证网关,并在认证网关每次收到请求后自动更新,检验码按照预设的变化规则动态变化,且由认证网关根据预设的校验规则进行校验,结合校验码保证令牌的安全性,且由于校验码动态变化,即使校验码通令牌一同遭到劫持,非法设备也无法基于劫持到的令牌与校验码通过认证网关的校验,在保证令牌安全性的同时步骤更加简单且成本更低。
进一步地,所述第二处理器执行所述第二计算机程序时所述步骤S3具体包括:
S31、生成包含所述令牌的数据请求,判断所述数字校验码是否处于锁定状态,若是,则等待数字校验解锁后进入步骤S32,否则直接进入步骤S32;
S32、将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
S33、向所述认证网关发送所述数据请求,并在请求发出后解锁所述数字校验码。
由上述描述可知,由上述描述可知,在对数字校验码进行读取和变化前需要对其进行锁定,使浏览器的其他线程无法在此期间读取数字校验码,在可能存在并发的情况下,保证每个请求线程的所使用数字校验码均不同。
进一步地,所述认证网关存储有预设的私钥,所述浏览器端存储有预设的公钥,所述公钥与所述私钥对应;
所述第二处理器执行所述第二计算机程序时所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,使用所述公钥对所述数字校验码进行加密,得到加密校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
所述第一处理器执行所述第一计算机程序时所述步骤S4具体为:
接收所述数据请求,对所述令牌进行有效性校验,仅在所述有效性校验通过后,使用所述私钥对所述数据请求中的所述加密校验码进行解密,得到所述数字校验码,并进入步骤S5。
由上述描述可知,通过在认证网关和浏览器端的公私钥对对数字校验码进行加密,进一步提高了数据的安全性。
进一步地,所述第二处理器执行所述第二计算机程序时所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行自增处理。
由上述描述可知,对数字验证码的规则变化采用了自增的变化方式,简单高效地保证了每个请求中数字验证码的差异。
进一步地,所述第一处理器执行所述第一计算机程序时所述步骤S5具体包括步骤:
S51、判断本地是否存储有对应所述令牌的令牌校验码,若是,则计算所述令牌校验码与所述数字校验码的差值,进入步骤S52,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
S52、判断所述差值是否小于预设的偏差阈值且不等于0,若是,则放行所述数据请求,否则对所述令牌进行失效处理,并返回错误信息。
由上述描述可知,由于网络可能存在延迟考虑,对于多个陆续发出的请求可能后发出的请求先到达服务端,因此不要求每个请求中的数字校验码大于令牌校验码,只要其与令牌校验码差值小于偏差阈值,同时由于每个请求的数字校验码均不同,因此不存在差值为0的情况,若差值为0则表示令牌与校验码已被劫持,需要对其无效化。
本发明的一种保证令牌安全性的方法与系统,用于BS架构下浏览器在首次登录校验成功后,后续一段时间内与服务端间的通信通过令牌进行身份校验的场景。
请参照图1、图3和图4,本发明的实施例一为:
一种保证令牌安全性的方法,包括步骤:
S1、认证网关接收浏览器端的用户登录请求,对所述用户登录请求中的信息进行认证,若认证通过,则返回令牌和验证通过结果至浏览器端;
本实施例中,我们在业务系统服务端和客户端之间设置了一个认证网关,用来用户认证和token(令牌)认证,用户通过浏览器的登录界面发起登录系统的请求,请求达到服务器的认证网关,进行用户身份的验证,验证通过返回token到浏览器端。其中,同一个用户在多个客户端浏览器登录返回的token是不一样的。
S2、浏览器端在收到所述验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;
本实施例中,浏览器端收到验证通过的结果和token信息,将token存储在浏览器端,一般是存在LocalStroge中,然后调用一个生成数字校验码的方法来生成校验码。
本实施例中,生成数字校验码的方法描述如下:根据浏览器的一些特征值加上随机算法生成一个随机正整数,比如生成的数字是127654,然后存在浏览器上,比如LocalStroge内。在其他等同实施例中,也可以通过其他预设的算法来生成随机正整数得到数字校验码。
S3、浏览器端生成包含所述令牌的数据请求,在所述数据请求中补入所述数字校验码后发送至认证网关,同时对本地存储的所述数字校验码进行变化处理;
所述步骤S3具体包括:
S31、浏览器端生成包含所述令牌的数据请求,判断所述数字校验码是否处于锁定状态,若是,则等待数字校验解锁后进入步骤S32,否则直接进入步骤S32;
S32、将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
所述认证网关存储有预设的私钥,所述浏览器端存储有预设的公钥,所述公钥与所述私钥对应;
所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,使用所述公钥对所述数字校验码进行加密,得到加密校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行自增处理;
S33、向所述认证网关发送所述数据请求,并在所述数据请求发出后解锁所述数字校验码。
本实施例中,预先使用SM2国密算法生成一对公私钥,公钥以静态配置文件方式存放在浏览器端,私钥以静态配置文件放在服务器认证网关上。
本实施例中,当浏览器端需要发起一次数据请求的时候,先将LocalStroge里的数字校验码进行加锁,如果已经被其他线程加锁就进行等待,直到判断没有锁后进入,加锁是为了解决并发的问题。然后取出数字校验码,使用浏览器端存储的公钥对数字校验码进行加密,然后将加密后的数字校验码和token放到请求的头部header中,紧接着对LocalStroge中的数字校验码进行变化处理,本实施例中为将数字校验码进行自增1,比如原来127654,自增1得到127655,再存入LocalStroge,接着解锁LocalStroge里的校验码,同时正式发起本次数据请求。
S4、认证网关接收所述数据请求,对所述令牌进行有效性校验,若所述有效性校验通过,则进入步骤S5;
所述步骤S4具体为:
认证网关接收所述数据请求,对所述令牌进行有效性校验,仅在所述有效性校验通过后,使用所述私钥对所述数据请求中的所述加密校验码进行解密,得到所述数字校验码,并进入步骤S5。
本实施例中,认证网关接收到浏览器端的数据请求后,取出header里的token和加密后的校验码,先验证token的有效性,如果无效就返回错误,验证有效通过后,对收到的加密校验码使用私钥进行解密并尝试转数字,得到数字校验码。
S5、认证网关判断本地是否存储有对应所述令牌的令牌校验码,若是,则根据所令牌校验码以及预设规则对所述数字校验码进行校验,若校验通过,则更新所述令牌校验码为所述数字校验码,并放行所述数据请求,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
所述步骤S5具体包括步骤:
S51、认证网关判断本地是否存储有对应所述令牌的令牌校验码,若是,则计算所述令牌校验码与所述数字校验码的差值,进入步骤S52,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
本实施例中,认证网关取出且解密得到数字校验码后,对比缓存内是否存在以token为key的键值对,如果不存在那么为该token的第一次请求,将token和解密后的校验码127654存入缓存,然后放行请求。否则即缓存内已经存在该token的数字校验码,在浏览器端我们为区分称为令牌校验码。取出缓存内的令牌校验码和浏览器端发送过来的数字校验码进行比对。
S52、判断所述差值是否小于预设的偏差阈值且不等于0,若是,则放行所述数据请求,否则对所述令牌进行失效处理,并返回错误信息。
本实施例中,基于浏览器端是通过自增的方式对数字校验码进行变化,因此我们直接将数字校验码减去认证网关内存储的令牌校验码,并取绝对值,得到数字校验码与令牌校验码的差值。若绝对值小于一个固定值N,即预设的偏差阈值,同时不等于0(等于0的情况下大概率下是被劫持后重放攻击,前端回传的校验码是不可能重复的),那么此次认证通过放行请求,并更新认证网关内的校验码为此次请求的校验码解密后的数字,如果对比失败那么就将该token进行失效处理,直接返回错误信息。
其中,偏差阈值的设定视为了防止并发引起的问题,例如,浏览器端可能在同一个时间发起5个请求,数字校验码是连续的5个编号,例如为11、12、13、14和15,但是由于网络波动的原因,可能13号的请求先被网关接收到并处理,这时候网关缓存内的令牌校验码还是10,按道理后续一个值应该是11,但是13号先到了,如果严格按照自增1的规则那么此次认证是失败了,为了防止此类情况下可以设置一个偏差阈值为10,这样就可以先处理13号请求,此次网关缓存内的校验码更新为13,后续再来11号请求,11-13的绝对值是2,小于我们设置的阈值10,也是可以继续处理的。偏差阈值可以为其他数值,一般是根据系统实际情况设定。
请参照图2,本发明的实施例二为:
一种保证令牌安全性的系统1,包括认证网关2以及浏览器端3,所述认证网关2包括第一处理器4、第一存储器5以及存储在所述第一存储器5中并可在所述第一处理器4上运行的第一计算机程序,所述浏览器端3包括第二处理器6、第二存储器7以及存储在所述第二存储器7中并可在所述第二处理器6上运行的第二计算机程序,所述第一处理器4执行所述第一计算机程序以及所述第二处理器6执行所述第二计算机程序时分别实现以上实施例一中的对应步骤。
本发明的主要原理在于,在令牌的基础上增加了一个动态变化的数字校验码,使每个请求中包含的数字校验码均不同,从而使认证网关能够在令牌认证的基础上再次根据数字校验码对请求进行认证,提高令牌的安全性。
综上所述,本发明提供的一种保证令牌安全性的方法与系统,在浏览器端登录认证通过后返回令牌,由浏览器端随机生成一校验码,并在登录成功后的第一次请求后存储至认证网关,并在认证网关每次收到请求后自动更新,检验码按照预设的变化规则动态变化,且由认证网关根据预设的校验规则进行校验,结合校验码保证令牌的安全性,且由于校验码动态变化,即使校验码与令牌一同遭到劫持,非法设备也无法基于劫持到的令牌与校验码通过认证网关的校验,在保证令牌安全性的同时步骤更加简单且成本更低。同时,通过浏览器端在读取数字校验码前锁定,在数字校验码变化后解锁,以及认证网关设置偏差阈值,从而保证了并发状态下仍能正常运行。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (6)
1.一种保证令牌安全性的方法,其特征在于,包括步骤:
S1、认证网关接收浏览器端的用户登录请求,对所述用户登录请求中的信息进行认证,若认证通过,则返回令牌和验证通过结果至浏览器端;
S2、浏览器端在收到所述验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;
S3、浏览器端生成包含所述令牌的数据请求,在所述数据请求中补入所述数字校验码后发送至认证网关,同时对本地存储的所述数字校验码进行变化处理;
所述步骤S3具体包括:
S31、浏览器端生成包含所述令牌的数据请求,判断所述数字校验码是否处于锁定状态,若是,则等待数字校验解锁后进入步骤S32,否则直接进入步骤S32;
S32、将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行自增处理;
S33、向所述认证网关发送所述数据请求,并在所述数据请求发出后解锁所述数字校验码;
S4、认证网关接收所述数据请求,对所述令牌进行有效性校验,若所述有效性校验通过,则进入步骤S5;
S5、认证网关判断本地是否存储有对应所述令牌的令牌校验码,若是,则根据所述令牌校验码以及预设规则对所述数字校验码进行校验,若校验通过,则更新所述令牌校验码为所述数字校验码,并放行所述数据请求,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求。
2.根据权利要求1所述的一种保证令牌安全性的方法,其特征在于,所述认证网关存储有预设的私钥,所述浏览器端存储有预设的公钥,所述公钥与所述私钥对应;
所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,使用所述公钥对所述数字校验码进行加密,得到加密校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
所述步骤S4具体为:
认证网关接收所述数据请求,对所述令牌进行有效性校验,仅在所述有效性校验通过后,使用所述私钥对所述数据请求中的所述加密校验码进行解密,得到所述数字校验码,并进入步骤S5。
3.根据权利要求1所述的一种保证令牌安全性的方法,其特征在于,所述步骤S5具体包括步骤:
S51、认证网关判断本地是否存储有对应所述令牌的令牌校验码,若是,则计算所述令牌校验码与所述数字校验码的差值,进入步骤S52,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
S52、判断所述差值是否小于预设的偏差阈值且不等于0,若是,则放行所述数据请求,否则对所述令牌进行失效处理,并返回错误信息。
4.一种保证令牌安全性的系统,包括认证网关以及浏览器端,所述认证网关包括第一处理器、第一存储器以及存储在所述第一存储器中并可在所述第一处理器上运行的第一计算机程序,所述浏览器端包括第二处理器、第二存储器以及存储在所述第二存储器中并可在所述第二处理器上运行的第二计算机程序,其特征在于,所述第一处理器执行所述第一计算机程序时实现以下步骤:
S1、接收浏览器端的用户登录请求,对所述用户登录请求中的信息进行认证,若认证通过,则返回令牌和验证通过结果至浏览器端;
S4、接收数据请求,对所述令牌进行有效性校验,若所述有效性校验通过,则进入步骤S5;
S5、判断本地是否存储有对应所述令牌的令牌校验码,若是,则根据所述令牌校验码以及预设规则对数字校验码进行校验,若校验通过,则更新所述令牌校验码为所述数字校验码,并放行所述数据请求,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
所述第二处理器执行所述第二计算机程序时实现以下步骤;
S2、在收到所述验证通过结果和令牌后,保存令牌,同时随机生成并保存一个数字校验码;
S3、生成包含所述令牌的数据请求,在所述数据请求中补入所述数字校验码后发送至认证网关,同时对本地存储的所述数字校验码进行变化处理;
所述步骤S3具体包括:
S31、浏览器端生成包含所述令牌的数据请求,判断所述数字校验码是否处于锁定状态,若是,则等待数字校验解锁后进入步骤S32,否则直接进入步骤S32;
S32、将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行自增处理;
S33、向所述认证网关发送所述数据请求,并在所述数据请求发出后解锁所述数字校验码。
5.根据权利要求4所述的一种保证令牌安全性的系统,其特征在于,所述认证网关存储有预设的私钥,所述浏览器端存储有预设的公钥,所述公钥与所述私钥对应;
所述第二处理器执行所述第二计算机程序时所述步骤S32具体为:
将所述数字校验码进行锁定之后,读取所述数字校验码,使用所述公钥对所述数字校验码进行加密,得到加密校验码,在所述数据请求中补入所述数字校验码,同时对本地存储的所述数字校验码进行变化处理;
所述第一处理器执行所述第一计算机程序时所述步骤S4具体为:
接收所述数据请求,对所述令牌进行有效性校验,仅在所述有效性校验通过后,使用所述私钥对所述数据请求中的所述加密校验码进行解密,得到所述数字校验码,并进入步骤S5。
6.根据权利要求4所述的一种保证令牌安全性的系统,其特征在于,所述第一处理器执行所述第一计算机程序时所述步骤S5具体包括步骤:
S51、判断本地是否存储有对应所述令牌的令牌校验码,若是,则计算所述令牌校验码与所述数字校验码的差值,进入步骤S52,否则存储所述数字校验码为所述令牌校验码并放行所述数据请求;
S52、判断所述差值是否小于预设的偏差阈值且不等于0,若是,则放行所述数据请求,否则对所述令牌进行失效处理,并返回错误信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111632194.3A CN114301683B (zh) | 2021-12-29 | 2021-12-29 | 一种保证令牌安全性的方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111632194.3A CN114301683B (zh) | 2021-12-29 | 2021-12-29 | 一种保证令牌安全性的方法与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114301683A CN114301683A (zh) | 2022-04-08 |
CN114301683B true CN114301683B (zh) | 2024-05-10 |
Family
ID=80971284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111632194.3A Active CN114301683B (zh) | 2021-12-29 | 2021-12-29 | 一种保证令牌安全性的方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114301683B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111711641A (zh) * | 2020-07-10 | 2020-09-25 | 北京亚鸿世纪科技发展有限公司 | 浏览器和服务器架构身份认证令牌的状态控制方法与装置 |
WO2020233033A1 (zh) * | 2019-05-20 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 信息交互方法、装置及存储介质 |
WO2021017128A1 (zh) * | 2019-07-29 | 2021-02-04 | 深圳壹账通智能科技有限公司 | 登录令牌的生成及验证方法、装置和服务器 |
CN112699350A (zh) * | 2020-12-30 | 2021-04-23 | 中国邮政储蓄银行股份有限公司 | 登录验证方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150281227A1 (en) * | 2014-03-31 | 2015-10-01 | Symple ID Inc. | System and method for two factor user authentication using a smartphone and nfc token and for the automatic generation as well as storing and inputting of logins for websites and web applications |
-
2021
- 2021-12-29 CN CN202111632194.3A patent/CN114301683B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020233033A1 (zh) * | 2019-05-20 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 信息交互方法、装置及存储介质 |
WO2021017128A1 (zh) * | 2019-07-29 | 2021-02-04 | 深圳壹账通智能科技有限公司 | 登录令牌的生成及验证方法、装置和服务器 |
CN111711641A (zh) * | 2020-07-10 | 2020-09-25 | 北京亚鸿世纪科技发展有限公司 | 浏览器和服务器架构身份认证令牌的状态控制方法与装置 |
CN112699350A (zh) * | 2020-12-30 | 2021-04-23 | 中国邮政储蓄银行股份有限公司 | 登录验证方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114301683A (zh) | 2022-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110493202B (zh) | 登录令牌的生成及验证方法、装置和服务器 | |
US8667280B2 (en) | Method and apparatus for applying a partial password in a multi-factor authentication scheme | |
CN109347835B (zh) | 信息传输方法、客户端、服务器以及计算机可读存储介质 | |
CN105516195B (zh) | 一种基于应用平台登录的安全认证系统及其认证方法 | |
US7793340B2 (en) | Cryptographic binding of authentication schemes | |
US7992193B2 (en) | Method and apparatus to secure AAA protocol messages | |
EP2020797B1 (en) | Client-server Opaque token passing apparatus and method | |
US20100217975A1 (en) | Method and system for secure online transactions with message-level validation | |
KR101367621B1 (ko) | Otp 기반 인증 시스템 및 방법 | |
US20200036700A1 (en) | Enabling single sign-on authentication for accessing protected network services | |
CN108418691A (zh) | 基于sgx的动态网络身份认证方法 | |
US20030204724A1 (en) | Methods for remotely changing a communications password | |
CN110971593B (zh) | 一种数据库安全网络访问方法 | |
KR20190120899A (ko) | 브라우저 지문을 이용한 싱글 사인온 방법 | |
CN111800378A (zh) | 一种登录认证方法、装置、系统和存储介质 | |
CN110035035B (zh) | 一种单点登录的二次认证方法及系统 | |
CN113872989B (zh) | 基于ssl协议的认证方法、装置、计算机设备和存储介质 | |
Akhmatovich et al. | Improvement of a security enhanced one-time mutual authentication and key agreement scheme | |
CN114944921A (zh) | 登录认证方法、装置、电子设备及存储介质 | |
EP3076584B1 (en) | Hashed data retrieval method | |
CN111291398B (zh) | 基于区块链的认证方法、装置、计算机设备及存储介质 | |
US11431514B1 (en) | Systems for determining authenticated transmissions of encrypted payloads | |
CN112600817A (zh) | 前端应用请求接口时的签名认证方法 | |
CN114301683B (zh) | 一种保证令牌安全性的方法与系统 | |
CN109951319B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |