CN110912689A - 一种唯一值的生成、验证方法及系统 - Google Patents
一种唯一值的生成、验证方法及系统 Download PDFInfo
- Publication number
- CN110912689A CN110912689A CN201911044467.5A CN201911044467A CN110912689A CN 110912689 A CN110912689 A CN 110912689A CN 201911044467 A CN201911044467 A CN 201911044467A CN 110912689 A CN110912689 A CN 110912689A
- Authority
- CN
- China
- Prior art keywords
- unique value
- client
- identification information
- value
- verifying
- 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 65
- 238000012795 verification Methods 0.000 claims abstract description 42
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 41
- 238000004458 analytical method Methods 0.000 claims description 47
- 230000015654 memory Effects 0.000 claims description 20
- 238000004364 calculation method Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 102100036790 Tubulin beta-3 chain Human genes 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000000926 separation method Methods 0.000 description 3
- 230000002265 prevention Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 101000713575 Homo sapiens Tubulin beta-3 chain Proteins 0.000 description 1
- 101000713585 Homo sapiens Tubulin beta-4A chain Proteins 0.000 description 1
- 102100036788 Tubulin beta-4A chain Human genes 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种唯一值的生成、验证方法及系统,其中,唯一值的生成方法包括:获取客户端发送的唯一值请求,唯一值请求用于请求唯一值;解析唯一值请求,得到用于唯一表示客户端的标识信息;获取本地当前的系统时间和计数值,其中,计数值为本地每次接收到访问请求后累加计数的数值;利用预设算法对标识信息、系统时间和计数值进行计算,生成用于对客户端身份进行验证的唯一值。保证生成的唯一值具有更高的安全性,进而保证了应用唯一值的安全与可靠,为后续服务器对访问请求的安全验证提供了基础,避免了非法访问服务器的信息资源造成的安全隐患,扩大了唯一值在信息安全领域的应用范围。
Description
技术领域
本发明涉及信息安全技术领域,具体涉及一种唯一值的生成、验证方法及系统。
背景技术
唯一值的生成与验证在计算机信息安全领域中的应用越来越广泛,当客户端向服务器发送访问请求时,服务器会生成一个唯一值反馈给客户端,当客户端将携带有该唯一值的数据包发送至服务器时,服务器会通过对该唯一值进行验证的方式来检查客户端的合法性,进而保证客户端访问信息的安全性,而现有技术中服务器所生成的唯一值往往就是一个随机数,且随机性也不能得到保证,此唯一值可能仅仅是利用随机数生成器生成的随机数,而这类随机数往往存在一定的生成规律,存在安全问题,容易成为服务器的安全漏洞,造成安全隐患,因此如何得到一个安全性更高的唯一值,进而为下一步实现对生成的唯一值进行验证,在信息安全领域有着重要意义。
发明内容
有鉴于此,本发明实施例提供了一种唯一值的生成、验证方法及系统,以解决现有技术中服务器生成的唯一值较为简单,安全系数低,容易造成访问请求存在安全隐患的问题。
根据第一方面,本发明实施例提供了一种唯一值的生成方法,包括:获取客户端发送的唯一值请求,所述唯一值请求用于请求唯一值;解析所述唯一值请求,得到用于唯一表示所述客户端的标识信息;获取本地当前的系统时间和计数值,其中,所述计数值为本地每次接收到访问请求后累加计数的数值;利用预设算法对所述标识信息、所述系统时间和所述计数值进行计算,生成用于对所述客户端身份进行验证的唯一值。
可选地,所述利用预设算法对所述标识信息、所述系统时间和所述计数值进行计算,生成用于对所述客户端身份进行验证的唯一值,包括:采用第一预设算法,对所述标识信息、所述系统时间和所述计数值进行编码,生成第一参数;获取当前的密钥参数,并根据第二预设算法对所述密钥参数和所述第一参数进行摘要运算,生成第二参数;将所述第一参数和所述第二参数进行拼接,得到所述唯一值。
根据第二方面,本发明实施例提供了一种唯一值的验证方法,包括:接收客户端发送的访问请求,所述访问请求中携带有所述客户端的标识信息和所述唯一值;对所述访问请求进行解析,获得所述唯一值和所述客户端的第一标识信息;对所述唯一值进行解析,生成解析结果;对所述解析结果和所述客户端的标识信息进行验证。可选地,所述对所述唯一值进行解析,生成解析结果,包括:对所述唯一值按照预设字节数进行分离,得到所述唯一值对应的第一分量和第二分量;获取当前的密钥参数,并根据预设摘要算法对所述第一分量和所述密钥参数进行摘要运算,得到计算分量;按照预设字节数将所述第一分量分离为第二标识信息、系统时间和计数值。
可选地,所述对所述解析结果和所述客户端的标识信息进行验证,包括:判断所述第一标识信息与第二标识信息是否一致;当所述第一标识信息与第二标识信息不一致时,则判定所述客户端验证不通过。
可选地,当所述第一标识信息与第二标识信息一致时,获取当前系统时间,判断所述当前系统时间与解析到的系统时间的时间差是否大于预设超时时间;当所述当前系统时间与解析到的系统时间的时间差不大于预设超时时间时,判断本地记录的计数值与解析得到的计数值是否一致;当本地记录的计数值与解析得到的计数值一致时,判断所述第二分量和所述计算分量是否一致;当所述第二分量与所述计算分量一致时,则判定所述客户端验证通过。
可选地,当所述当前系统时间与解析到的系统时间的时间差大于预设超时时间,或者,本地记录的计数值与解析得到的计数值不一致,或者,本地记录的计数值与解析得到的计数值不一致,或者,所述第二分量与所述计算分量不一致时,判定所述客户端验证不通过。
根据第三方面,本发明实施例提供了一种唯一值的生成系统,包括:获取模块,用于获取用户发送的访问请求;请求解析模块,用于解析所述访问请求,生成与所述访问请求对应的数据信息;唯一值生成模块,用于根据预设算法对所述数据信息进行计算,生成唯一值。
根据第四方面,本发明实施例提供了一种唯一值的验证系统,获取模块,用于获取用户发送的唯一值,所述唯一值为根据用户的访问请求采用第三方面及任意一种可选方式的唯一值的生成系统生成的唯一值;解析结果生成模块,用于根据预设解析算法对所述唯一值进行解析,生成解析结果;验证模块,用于根据所述解析结果,生成所述唯一值验证结果。
本发明实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令被处理器执行时实现本发明第一方面及任意一种可选方式所述的唯一值的生成方法,或者,实现本发明第二方面及任意一种可选方式所述的唯一值的验证方法。
本发明实施例还提供了一种电子设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行本发明第一方面及任意一种可选方式所述的唯一值的生成方法,或者,执行本发明第二方面及任意一种可选方式所述的唯一值的验证方法。
本发明技术方案,具有如下优点:
1.本发明实施例提供了一种唯一值的生成方法,通过解析用户的唯一值请求,生成与请求对应的数据,然后采用预设算法对数据进行计算,生成所需的唯一值,解决了现有技术中在访问服务器资源的过程中返回的唯一值通常是一个随机数的问题,使生成的唯一值具有更高的安全性,进而保证了应用唯一值的安全与可靠,为后续服务器对访问请求的安全验证提供了基础,避免了非法访问服务器的信息资源造成的安全隐患,扩大了唯一值在信息安全领域的应用范围。
2.本发明实施例提供了一种唯一值的验证方法,通过对返回的唯一值进行解析计算,得到解析结果,当各信息验证全部通过后才提供相应的服务,也保证了可自验证生成的唯一值是否为本机产生,保证了唯一值的可验证性和有效性,防止被非法客户端使用,进而保证了服务器中信息资源的安全性。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中唯一值的生成方法的流程图;
图2为本发明实施例中唯一值的生成过程的示意图;
图3为本发明实施例中唯一值的验证方法的流程图;
图4为本发明实施例中唯一值的验证过程的示意图;
图5为本发明实施例中唯一值的生成系统的示意图;
图6为本发明实施例中唯一值的验证系统的示意图;
图7为本发明实施例中的电子设备的结构示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
本发明实施例提供了一种唯一值的生成方法,如图1所示,该唯一值的生成方法具体包括:
步骤S1:获取客户端发送的唯一值请求,唯一值请求用于请求唯一值。在实际应用中,客户端发送的唯一值请求实际上也是客户端请求访问,可以包括:登录请求、软件访问、加密访问、修改参数等操作,服务器会根据用户的请求以及其自身的特有信息进行后续的相关操作,增加生成的唯一值的不确定性,保证数据信息的安全。需要说明的是,该客户端发送的唯一值请求可以根据具体的实际需要自行设置,本发明并不以此为限。
步骤S2:解析唯一值请求,得到用于唯一表示客户端的标识信息。在实际应用中,服务器接收到客户端发送的唯一值请求时,就对请求进行相应的解析操作,通过解析请求,把唯一值请求中所包含的用户信息、访问等级以及访问目的等信息解析出来,生成与访问请求相对应的数据,这些数据也对生成的唯一值起到了决定作用,避免了只是一个随机数充当唯一值的问题,保证生成的唯一值的随机性,由于同时考虑了多个信息,共同作用下保证了唯一值的唯一性。需要说明的是,解析过程可以依据访问请求、访问请求对应的信息和客户端等多重因素,因此解析方法也是根据需要选择,本发明并不以此为限。
步骤S3:获取本地当前的系统时间和计数值,其中,计数值为本地每次接收到访问请求后累加计数的数值。当服务器接收到客户端发送过来的请求时,服务器就获取本地当前的系统时间和计数值,其中,此计数值是根据每次接收到的请求后,进行累计叠加,设初始值为1。需要说明的是,此处的系统时间和计数值的初始值都是根据实际需要进行设定的,本发明并不以此为限。
步骤S4:利用预设算法对标识信息、系统时间和计数值进行计算,生成用于对客户端身份进行验证的唯一值。服务器根据一定的算法计算标识信息、系统时间和计数值,计算结果就是用于对客户端身份进行验证的唯一值。需要说明的是,此处计算的标识信息、系统时间和计数值等数据的预设算法是根据实际数据的需要进行选择的,本发明并不以此为限。
具体地,在一实施例中,上述的步骤S4,具体包括如下步骤:
步骤S41:采用第一预设算法,对标识信息、系统时间和计数值进行编码,生成第一参数。在实际应用中,服务器接收到客户端发送过来的请求,会提取出客户端的标识信息,然后对客户端的标识信息、系统时间和计数值等数据信息进行编码,如图2所示,其中客户端标识信息、系统时间和计数值分别记作:IP、Time和Counter,服务器进程会为每一个客户端连接维护一个递增的计数值counter,初始值为1,每次收到客户端请求后计数值都会加1,当计数值溢出后重新从1开始计数。本发明实施例中第一预设算法采用base64编码,其中base64编码是一种基于64个可打印字符来表示二进制数据的表示方法,需要说明的是,对这些数据信息进行编码过程中,也可选择其他算法、计数值的相关操作,本发明并不以此为限。对数据信息进行编码生成第一参数可以通过如下公式表示:
R1=Base64(IP+Time+Counter) (1)
其中,R1表示第一参数,Base64编码表示第一预设算法,IP表示标识信息,Time表示系统时间,Counter表示计数值。
步骤S42:获取当前的密钥参数,并根据第二预设算法对密钥参数和第一参数进行摘要运算,生成第二参数。在服务器设备启动时,系统进程就自动生成一个密钥参数,记作:Key,服务器进程重启后该Key会重新生成,用来增加要生成的唯一值的随机性,获取到当前的密钥参数后,根据第二预设算法对此密钥参数和第一参数进行摘要操作,得到第二参数。
其中,第二预设算法可以选择SM3算法(国产哈希算法)进行摘要计算,SM3是中华人民共和国政府采用的一种密码散列函数标准,由国家密码管理局发布,在商用密码体系中,SM3主要用于数字签名及验证、消息认证码生成及验证、随机数生成等,其算法是公开的,需要说明的是,本发明实施例中举例说明选用SM3算法,在实际应用中也可以选择其他算法进行摘要计算,本发明并不以此为限。对密钥参数和第一参数进行摘要操作生成第二参数可以通过如下公式表示:
R2=SM3(R1+Key) (2)
其中,R2表示第二参数,SM3算法表示第二预设算法,R1表示第一参数,Key表示密钥参数。
步骤S43:将第一参数和第二参数进行拼接,得到唯一值。通过上述计算,得到了第一参数和第二参数,将这两个参数进行拼接,得到唯一值,如图2所示,此唯一值记作:Rsend。需要说明的是,在实际应用中,也可以还有其他参数参与运算,本发明并不以此为限。对第一参数和第二参数进行拼接得到唯一值可以通过如下公式表示:
Rsend=R1+R2 (3)
其中,Rsend表示唯一值,R1表示第一参数,R2表示第二参数。
本发明实施例中,如图2所示,唯一值的生成过程中,客户端发送一个请求,服务器对请求进行解析,生成相应的数据信息,包括提取客户端的标识信息,例如对客户端的唯一标识的IP地址,获取服务器的当前系统时间,以及初始化一个计数值,并且在服务器服务启动后,获取服务器进程产生的密钥参数,这些参数都保证了生成的唯一值的随机性。然后根据相应的算法,生成中间参数,对这些参数进行拼接,得到唯一值,然后服务器将此唯一值返回给客户端。这些参数都使得最后得到的唯一值更加的随机和不可预测,增加了唯一值的安全性,可以有效预防服务器的安全漏洞。
通过上述步骤S1至步骤S4,本发明实施例提供了一种唯一值的生成方法,通过解析用户的唯一值请求,生成与请求对应的数据,然后采用预设算法对数据进行计算,生成所需的唯一值,解决了现有技术中在访问服务器资源的过程中返回的唯一值通常是一个随机数的问题,使生成的唯一值具有更高的安全性,进而保证了应用唯一值的安全与可靠,为后续服务器对访问请求的安全验证提供了基础,避免了非法访问服务器的信息资源造成的安全隐患,扩大了唯一值在信息安全领域的应用范围。
本发明实施例还提供了一种唯一值的验证方法,如图3所示,该唯一值的验证方法具体包括:
步骤SS1:接收客户端发送的访问请求,访问请求中携带有客户端的标识信息和唯一值。在实际应用中,服务器将生成的唯一值发送给客户端后,客户端也会对此唯一值进行额外的算,组成包含额外信息和唯一值的数据包在返回给服务器,但就唯一值的验证而言没有涉及其他信息,在此处就不过多叙述,此额外运算也就是采用现有技术进行计算与组合。
步骤SS2:对访问请求进行解析,获得唯一值和客户端的第一标识信息。在实际应用中,服务器接收到客户端返回的唯一值后,会对此唯一值进行验证,目的是为了进一步确定客户端身份,保证信息的安全性。
步骤SS3:对唯一值进行解析,生成解析结果。对生成的唯一值进行解析,生成对应的解析结果。
具体地,在一实施例中,上述的步骤SS3,具体包括如下步骤:
步骤SS31:对唯一值按照预设字节数进行分离,得到唯一值对应的第一分量和第二分量。服务器对接收到的唯一值进行分离,分离时按照一定的字节数进行操作,例如,由于Split划分算法具有快速收敛的能力并且有简单性与灵活性,因此在本发明实施例中可以对此唯一值按照Split划分算法进行分离,目的是保证分离出的数据的正确性与一致性,如图4所示,最后分离此唯一值对应的第一分量和第二分量,分别记作:R1recv和R2recv。
步骤SS32:获取当前的密钥参数,并根据预设摘要算法对第一分量和密钥参数进行摘要运算,得到计算分量。先获取系统当前的密钥参数,然后把唯一值分离出来第一分量和磁密钥参数进行摘要操作,此摘要操作同时也可以选在上述SM3摘要算法,最后得到计算分量。需要说明的是,摘要操作也可选择其他摘要算法,只要能够实现相同的效果即可,本发明并不以此为限。
步骤SS33:按照预设字节数将第一分量分离为第二标识信息、系统时间和计数值。将上述唯一值分离出来的第一分量按照预设字节数,例如,由ORACLE公司所提供的特有函数计算方式,DECODE函数,是以其简洁的运算方式,可控的数据模型和灵活的格式转换而被广泛应用,因此预设字节数可以选择Decode函数来实现对第一分量的分离。如图4所示,分离为第二标识信息、系统时间和计数值,分别记作:IP2、Time2和Counter2,最后分离出的这几个数值分量就是此解析结果,后续对这些解析结果进行验证。需要说明的是,上述预设的字节数可以根据实际需要进行调节,为了对唯一值进行验证,就需要按照上述获取的几个数据信息的字节数进行分离计算,预设字节数分离以及最后的分离数值可以根据实际需要已经数据信息进行选择,本发明并不以此为限。
步骤SS4:对解析结果和客户端的标识信息进行验证。对客户端返回的唯一值进行解析后,得到了第二标识信息、系统时间和计数值,目的是和最开始服务器获取的这些参数进行比对验证,如果其中有一个值与之前的参数不对应,则验证失败,只有当所有值都一致后才能通过验证,需要说明的是,唯一值验证通过后,后续会再有别的信息的验证,验证通过后系统会为客户端提供与访问请求对应的访问服务,本发明并不以此为限。
具体地,在一实施例中,上述的步骤SS4,具体包括如下步骤:
步骤SS41:判断第一标识信息与第二标识信息是否一致。
步骤SS42:当第一标识信息与第二标识信息不一致时,则判定客户端验证不通过。如果第一标识信息与第二标识信息不一致,则服务器拒绝提供服务,其中,此处的标识信息用IP地址来举例说明,两个IP地址不同,则说明是服务器发出的唯一值被其他客户端截获或误发后,被其他非法用户或者客户端向服务器发送处理后的唯一值,此时两个IP地址就不同,因此表示唯一值的验证失败。
步骤SS5:当第一标识信息与第二标识信息一致时,获取当前系统时间,判断当前系统时间与解析得到的系统时间的时间差是否大于预设超时时间。当两个标识信息验证一致后,继续判断当前系统时间与解析到的系统时间的时间差是否大于预设超时时间,如果当前系统时间与解析到的系统时间的时间差大于预设超时时间,则说明解析分离出来的系统时间参数已经超时,当服务器接收到客户端发送的数据包后,服务器会同时获取当前系统时间,记作:Timerecv,如图4所示,系统默认自动设置的一个超时时间,记作:Timetimeout。
当Timerecv-Time2>Timetimeout时,则认为收到的数据包已经超时,时间长度适度的减短有助于对信息安全的进一步保证,但是时间也不宜设置过短,因为可能受传输速度的影响客户端接收与发送时间会过长,时间过长可能是信息被截获后其他客户端进一步伪造客户端IP地址等重要的验证信息,此超时时间可以根据被访问的系统或数据的保密程度以及安全要求或者经验进行设置,本发明并不以此为限。
步骤SS6:当当前系统时间与解析得到的系统时间的时间差不大于预设超时时间时,判断本地记录的计数值与解析得到的计数值是否一致。当标识信息和时间参数都验证通过后,继续验证本地记录的计数值与解析得到的计数值是否一致,验证两个计数值是否一致是为了防止唯一值被截获后攻击者伪装客户端IP地址进行重放攻击,如果两个计数值不一致,则服务器拒绝提供相应的服务,其中,计数值的设置和其溢出设置,都可以根据实际需要进行设置。例如,设置计数器为1个字节,一共8位的数值,其取值为:00000000到11111111,第一个00000001和溢出后的00000001之间相隔很多次请求,而且一般不会允许一个客户端短时间的高频访问,此外超时时间也会预防这种问题,对应一个客户端来说,此时服务器端的计数值为00000011,此时收到此客户端的请求,计数值变为00000100,验证阶段验证收到此客户端发送的数据信息中的计数值与第二计数值是否一致,需要说明的是,本发明实施例中举例说明计数值的字节数,其中计数值也可以是其他长度的数值,本发明并不以此为限。
步骤SS7:当本地记录的计数值与解析得到的计数值一致时,判断第二分量和计算分量是否一致。如果解析分离出来的第二分量与计算分量不一致,就证明第二分量发生了变化,也就是后面返回的唯一值发生了变化或者解析过程中发生了错误,则唯一值验证失败。
步骤SS8:当第二分量与计算分量一致时,则判定客户端验证通过。当上述解析得到的第二标识信息、系统时间、计数值和第二分量都与标识信息、系统时间和计数值一致时,才能够判定解析结果与对应的数据信息一致。需要说明的是,本发明实施例中举例说明了这几个验证信息,在实际应用中也可以根据其他需要添加或包含其他验证信息,本发明并不以此为限。当所有比对结果都相同,则通过唯一值的验证,并判定唯一值验证通过,作为后续为用户提供与访问请求对应的访问服务的重要基础,保证了生成的唯一值可以自行进行验证,验证所有可能信息都相同后才通过验证是为了进一步保证数据的安全性,对于重放攻击、恶意攻击等都能有一定的预防效果。
步骤SS9:当当前系统时间与解析得到的系统时间的时间差大于预设超时时间,或者,本地记录的计数值与解析得到的计数值不一致,或者,本地记录的计数值与解析得到的计数值不一致,或者,第二分量与计算分量不一致时,判定客户端验证不通过。。如果有任意一个信息验证不通过时,此时证明此唯一值不是本机产生的唯一值,则验证失败,服务器就拒绝为用户提供与访问请求对应的访问服务。
本发明实施例中,如图4所示,唯一值的验证过程中,服务器接收到客户端返回的数据包后,对数据包中的唯一值进行解析,解析出两个分量,对第一分量进行分离,得出待验证的第二标识信息、系统时间和计数值,然后将第二分量与密钥参数进行运算,得出计算分量。最后分别将上述各解析计算结果与基准数据信息进行逐一比对验证,任意一项验证不通过就拒绝访问请求,只有当所有信息都验证通过后,或者会后续验证其他信息,全部通过后才为客户端提供相应的访问,并为客户端返回请求数据。
客户端发送一个请求,服务器对请求进行解析,生成相应的数据信息,包括提取客户端的标识信息,例如唯一标识客户端的IP地址,获取服务器的当前系统时间,以及初始化一个计数值,并且在服务器服务启动后,获取服务器进程产生的密钥参数,这些参数都保证了生成的唯一值的随机性。然后根据相应的算法,生成中间参数,对这些参数进行拼接,得到唯一值,然后服务器将此唯一值返回给客户端。这些参数都使得最后得到的唯一值更加的随机和不可预测,为服务器的安全漏洞问题进行了一定的预防。
通过上述步骤SS1至步骤SS9,本发明实施例提供了一种唯一值的验证方法,通过对返回的唯一值进行解析计算,得到解析结果,当各信息验证全部通过后才提供相应的服务,也保证了可自验证生成的唯一值是否为本机产生,保证了唯一值的可验证性和有效性,同时由于引入了计数值和系统时间保证了每次产生的唯一值的唯一值,能有效的验证发送端IP,防止被非法客户端使用,同时可以根据时间验证保证唯一值的有效性,进一步避免了唯一值被截获后非法客户端伪装有效IP地址等信息进行重放攻击,进而保证了信息资源的安全性,从而对信息系统的安全性有了进一步的提高。
本发明实施例还提供了一种唯一值的生成系统,如图5所示,包括:
获取模块1,用于获取客户端发送的唯一值请求,唯一值请求用于请求唯一值。详细内容参见上述方法实施例中步骤S1的相关描述。
请求解析模块2,用于解析唯一值请求,得到用于唯一表示客户端的标识信息。详细内容参见上述方法实施例中步骤S2的相关描述。
获取系统信息模块3,用于获取本地当前的系统时间和计数值,其中,计数值为本地每次接收到访问请求后累加计数的数值。详细内容参见上述方法实施例中步骤S3的相关描述。
唯一值生成模块4,用于利用预设算法对标识信息、系统时间和计数值进行计算,生成用于对客户端身份进行验证的唯一值。详细内容参见上述方法实施例中步骤S4的相关描述。
通过上述各个组成部分的协同合作,本发明实施例提供了一种唯一值的生成系统,通过解析用户的访问请求,生成与请求对应的数据信息,然后采用预设算法对数据信息进行计算,生成所需的唯一值,解决了现有技术中在访问服务器资源的过程中返回的唯一值通常是一个随机数的问题,使生成的唯一值具有更高的安全性,使唯一值对固定客户端IP地址有效,并且增加毫秒级的系统时间和计数值来确保此生成的唯一值的唯一性和随机性,进而保证了应用唯一值的安全与可靠,为后续服务器对访问请求的安全验证提供了基础,避免了非法访问服务器的信息资源造成的安全隐患,扩大了唯一值在信息安全领域的应用范围。
本发明实施例还提供了一种唯一值的验证系统,如图6所示,包括:
获取模块A,用于接收客户端发送的访问请求,访问请求中携带有客户端的标识信息和唯一值。详细内容参见上述方法实施例中步骤SS1的相关描述。
解析模块B,用于对访问请求进行解析,获得唯一值和客户端的第一标识信息。详细内容参见上述方法实施例中步骤SS2的相关描述。
解析结果生成模块C,用于对唯一值进行解析,生成解析结果。详细内容参见上述方法实施例中步骤SS3的相关描述。
验证模块D,用于对解析结果和客户端的标识信息进行验证。详细内容参见上述方法实施例中步骤SS4的相关描述。
通过上述各个组成部分的协同合作,本发明实施例提供了一种唯一值的验证系统,通过各解析结果与基准数据信息进行比对,各信息验证全部通过后才提供相应的服务,也保证了生成的唯一值可自验证是否为本机产生,由于引入了计数值和系统时间保证了每次产生的唯一值的唯一值,能有效的验证发送端IP,防止被非法客户端使用,同时可以根据时间验证保证唯一值的有效性,进一步避免了唯一值被截获后非法客户端伪装有效IP地址等信息进行重放攻击。
本发明实施例还提供了一种电子设备,如图7所示,该电子设备可以包括处理器901和存储器902,其中处理器901和存储器902可以通过总线或者其他方式连接,图7中以通过总线连接为例。
处理器901可以为中央处理器(Central Processing Unit,CPU)。处理器901还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器902作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的方法所对应的程序指令/模块。处理器901通过运行存储在存储器902中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法。
存储器902可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器901所创建的数据等。此外,存储器902可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器902可选包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至处理器901。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
一个或者多个模块存储在存储器902中,当被处理器901执行时,执行上述方法。
上述电子设备具体细节可以对应参阅上述方法实施例中对应的相关描述和效果进行理解,此处不再赘述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-StateDrive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。
Claims (11)
1.一种唯一值的生成方法,其特征在于,包括:
获取客户端发送的唯一值请求,所述唯一值请求用于请求唯一值;
解析所述唯一值请求,得到用于唯一表示所述客户端的标识信息;
获取本地当前的系统时间和计数值,其中,所述计数值为本地每次接收到访问请求后累加计数的数值;
利用预设算法对所述标识信息、所述系统时间和所述计数值进行计算,生成用于对所述客户端身份进行验证的唯一值。
2.根据权利要求1所述的唯一值的生成方法,其特征在于,所述利用预设算法对所述标识信息、所述系统时间和所述计数值进行计算,生成用于对所述客户端身份进行验证的唯一值,包括:
采用第一预设算法,对所述标识信息、所述系统时间和所述计数值进行编码,生成第一参数;
获取当前的密钥参数,并根据第二预设算法对所述密钥参数和所述第一参数进行摘要运算,生成第二参数;
将所述第一参数和所述第二参数进行拼接,得到所述唯一值。
3.一种唯一值的验证方法,其特征在于,包括:
接收客户端发送的访问请求,所述访问请求中携带有所述客户端的标识信息和所述唯一值;
对所述访问请求进行解析,获得所述唯一值和所述客户端的第一标识信息;
对所述唯一值进行解析,生成解析结果;
对所述解析结果和所述客户端的标识信息进行验证。
4.根据权利要求3所述的唯一值的验证方法,其特征在于,所述对所述唯一值进行解析,生成解析结果,包括:
对所述唯一值按照预设字节数进行分离,得到所述唯一值对应的第一分量和第二分量;
获取当前的密钥参数,并根据预设摘要算法对所述第一分量和所述密钥参数进行摘要运算,得到计算分量;
按照预设字节数将所述第一分量分离为第二标识信息、系统时间和计数值。
5.根据权利要求4所述的唯一值的验证方法,其特征在于,所述对所述解析结果和所述客户端的标识信息进行验证,包括:
判断所述第一标识信息与第二标识信息是否一致;
当所述第一标识信息与第二标识信息不一致时,则判定所述客户端验证不通过。
6.根据权利要求4所述的唯一值的验证方法,其特征在于,
当所述第一标识信息与第二标识信息一致时,获取当前系统时间,判断所述当前系统时间与解析得到的系统时间的时间差是否大于预设超时时间;
当所述当前系统时间与解析得到的系统时间的时间差不大于预设超时时间时,判断本地记录的计数值与解析得到的计数值是否一致;
当本地记录的计数值与解析得到的计数值一致时,判断所述第二分量和所述计算分量是否一致;
当所述第二分量与所述计算分量一致时,则判定所述客户端验证通过。
7.根据权利要求6所述的唯一值的验证方法,其特征在于,
当所述当前系统时间与解析得到的系统时间的时间差大于预设超时时间,或者,本地记录的计数值与解析得到的计数值不一致,或者,本地记录的计数值与解析得到的计数值不一致,或者,所述第二分量与所述计算分量不一致时,判定所述客户端验证不通过。
8.一种唯一值的生成系统,其特征在于,包括:
获取模块,用于获取客户端发送的唯一值请求,所述唯一值请求用于请求唯一值;
请求解析模块,用于解析所述唯一值请求,得到用于唯一表示所述客户端的标识信息;
获取系统信息模块,用于获取本地当前的系统时间和计数值,其中,所述计数值为本地每次接收到访问请求后累加计数的数值;
唯一值生成模块,用于利用预设算法对所述标识信息、所述系统时间和所述计数值进行计算,生成用于对所述客户端身份进行验证的唯一值。
9.一种唯一值的验证系统,其特征在于,包括:
获取模块,用于接收客户端发送的访问请求,所述访问请求中携带有所述客户端的标识信息和所述唯一值;
解析模块,用于对所述访问请求进行解析,获得所述唯一值和所述客户端的第一标识信息;
解析结果生成模块,用于对所述唯一值进行解析,生成解析结果;
验证模块,用于对所述解析结果和所述客户端的标识信息进行验证。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令被处理器执行时实现如权利要求1-2中任一项所述的唯一值的生成方法,或实现如权利要求3-7中任一项所述的唯一值的验证方法。
11.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如权利要求1-2中任一项所述的唯一值的生成方法,或执行如权利要求3-7中任一项所述的唯一值的验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911044467.5A CN110912689A (zh) | 2019-10-30 | 2019-10-30 | 一种唯一值的生成、验证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911044467.5A CN110912689A (zh) | 2019-10-30 | 2019-10-30 | 一种唯一值的生成、验证方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110912689A true CN110912689A (zh) | 2020-03-24 |
Family
ID=69815014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911044467.5A Pending CN110912689A (zh) | 2019-10-30 | 2019-10-30 | 一种唯一值的生成、验证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110912689A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112242994A (zh) * | 2020-09-07 | 2021-01-19 | 西安电子科技大学 | 一种实体间的位置检查方法和数字内容保护系统 |
CN112383555A (zh) * | 2020-11-17 | 2021-02-19 | 宏图智能物流股份有限公司 | 一种物流网络中的网络请求有效性验证方法 |
CN113221009A (zh) * | 2021-05-26 | 2021-08-06 | 东莞市盟大塑化科技有限公司 | 一种邀请码生成方法、装置、设备及存储介质 |
CN114024871A (zh) * | 2022-01-04 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 一种芯片验证方法、系统、计算机设备及可读存储介质 |
CN114155010A (zh) * | 2021-12-06 | 2022-03-08 | 广州繁星互娱信息科技有限公司 | 一种产品标识码生成方法、装置、电子设备及存储介质 |
CN114416106A (zh) * | 2022-03-31 | 2022-04-29 | 云账户技术(天津)有限公司 | 更新编译计数值的方法、系统、电子设备以及存储介质 |
CN116629804A (zh) * | 2023-06-06 | 2023-08-22 | 河北华正信息工程有限公司 | 一种信访督查跟踪管理系统及管理方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105915537A (zh) * | 2016-05-27 | 2016-08-31 | 努比亚技术有限公司 | 一种token生成、校验方法及验证服务器 |
CN106027228A (zh) * | 2016-07-20 | 2016-10-12 | 努比亚技术有限公司 | 一种网页标识的加解密方法及其加解密系统 |
CN106713327A (zh) * | 2016-12-29 | 2017-05-24 | 上海众人网络安全技术有限公司 | 一种验证码安全加固的认证方法及系统 |
CN107579991A (zh) * | 2017-09-28 | 2018-01-12 | 北京奇安信科技有限公司 | 一种对客户端进行云端防护认证的方法、服务器和客户端 |
CN109150910A (zh) * | 2018-10-11 | 2019-01-04 | 平安科技(深圳)有限公司 | 登录令牌生成及验证方法、装置及存储介质 |
CN109347835A (zh) * | 2018-10-24 | 2019-02-15 | 苏州科达科技股份有限公司 | 信息传输方法、客户端、服务器以及计算机可读存储介质 |
-
2019
- 2019-10-30 CN CN201911044467.5A patent/CN110912689A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105915537A (zh) * | 2016-05-27 | 2016-08-31 | 努比亚技术有限公司 | 一种token生成、校验方法及验证服务器 |
CN106027228A (zh) * | 2016-07-20 | 2016-10-12 | 努比亚技术有限公司 | 一种网页标识的加解密方法及其加解密系统 |
CN106713327A (zh) * | 2016-12-29 | 2017-05-24 | 上海众人网络安全技术有限公司 | 一种验证码安全加固的认证方法及系统 |
CN107579991A (zh) * | 2017-09-28 | 2018-01-12 | 北京奇安信科技有限公司 | 一种对客户端进行云端防护认证的方法、服务器和客户端 |
CN109150910A (zh) * | 2018-10-11 | 2019-01-04 | 平安科技(深圳)有限公司 | 登录令牌生成及验证方法、装置及存储介质 |
CN109347835A (zh) * | 2018-10-24 | 2019-02-15 | 苏州科达科技股份有限公司 | 信息传输方法、客户端、服务器以及计算机可读存储介质 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112242994A (zh) * | 2020-09-07 | 2021-01-19 | 西安电子科技大学 | 一种实体间的位置检查方法和数字内容保护系统 |
CN112242994B (zh) * | 2020-09-07 | 2021-10-08 | 深圳数字电视国家工程实验室股份有限公司 | 一种实体间的位置检查方法和数字内容保护系统 |
CN112383555A (zh) * | 2020-11-17 | 2021-02-19 | 宏图智能物流股份有限公司 | 一种物流网络中的网络请求有效性验证方法 |
CN112383555B (zh) * | 2020-11-17 | 2022-06-03 | 宏图智能物流股份有限公司 | 一种物流网络中的网络请求有效性验证方法 |
CN113221009A (zh) * | 2021-05-26 | 2021-08-06 | 东莞市盟大塑化科技有限公司 | 一种邀请码生成方法、装置、设备及存储介质 |
CN114155010A (zh) * | 2021-12-06 | 2022-03-08 | 广州繁星互娱信息科技有限公司 | 一种产品标识码生成方法、装置、电子设备及存储介质 |
CN114024871A (zh) * | 2022-01-04 | 2022-02-08 | 苏州浪潮智能科技有限公司 | 一种芯片验证方法、系统、计算机设备及可读存储介质 |
CN114024871B (zh) * | 2022-01-04 | 2022-03-22 | 苏州浪潮智能科技有限公司 | 一种芯片验证方法、系统、计算机设备及可读存储介质 |
CN114416106A (zh) * | 2022-03-31 | 2022-04-29 | 云账户技术(天津)有限公司 | 更新编译计数值的方法、系统、电子设备以及存储介质 |
CN114416106B (zh) * | 2022-03-31 | 2022-08-02 | 云账户技术(天津)有限公司 | 更新编译计数值的方法、系统、电子设备以及存储介质 |
CN116629804A (zh) * | 2023-06-06 | 2023-08-22 | 河北华正信息工程有限公司 | 一种信访督查跟踪管理系统及管理方法 |
CN116629804B (zh) * | 2023-06-06 | 2024-01-09 | 河北华正信息工程有限公司 | 一种信访督查跟踪管理系统及管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110912689A (zh) | 一种唯一值的生成、验证方法及系统 | |
CN107483509B (zh) | 一种身份验证方法、服务器及可读存储介质 | |
US8869258B2 (en) | Facilitating token request troubleshooting | |
JP2018501567A (ja) | 装置検証方法及び機器 | |
US11316681B2 (en) | User identity authentication method and device, readable storage medium and computer equipment | |
CN106470184B (zh) | 安全认证方法、装置及系统 | |
CN110099048B (zh) | 一种云存储方法及设备 | |
WO2016029595A1 (zh) | 开放平台的调用方法、装置、设备及非易失性计算机存储介质 | |
CN112711759A (zh) | 一种防重放攻击漏洞安全防护的方法及系统 | |
CN109379193B (zh) | 一种动态防重放攻击认证方法及装置 | |
CN107517194B (zh) | 一种内容分发网络的回源认证方法和装置 | |
CN110175448B (zh) | 一种可信设备登录认证方法及具有认证功能的应用系统 | |
WO2019001083A1 (zh) | 一种视频流地址鉴权方法及装置 | |
CN104836784A (zh) | 一种信息处理方法、客户端和服务器 | |
CN113225351B (zh) | 一种请求处理方法、装置、存储介质及电子设备 | |
CN111800262A (zh) | 数字资产的处理方法、装置和电子设备 | |
CN108449568A (zh) | 用于视频会议的身份认证方法及装置 | |
JP6392985B2 (ja) | 検知システム、検知装置、検知方法及び検知プログラム | |
CN107770183B (zh) | 一种数据传输方法与装置 | |
CN111371811B (zh) | 一种资源调用方法、资源调用装置、客户端及业务服务器 | |
CN110890979A (zh) | 堡垒机自动部署方法、装置、设备及介质 | |
CN113225348B (zh) | 请求防重放校验方法和装置 | |
CN112217632B (zh) | 一种基于智能合约和哈希链的身份认证方法及装置 | |
CN111817860B (zh) | 一种通信认证方法、装置、设备及存储介质 | |
CN110011992B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200324 |