CN114650169A - 一种Token生成及校验方法 - Google Patents
一种Token生成及校验方法 Download PDFInfo
- Publication number
- CN114650169A CN114650169A CN202210140460.9A CN202210140460A CN114650169A CN 114650169 A CN114650169 A CN 114650169A CN 202210140460 A CN202210140460 A CN 202210140460A CN 114650169 A CN114650169 A CN 114650169A
- Authority
- CN
- China
- Prior art keywords
- token
- key
- user
- client
- information
- 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
- 238000012795 verification Methods 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000003993 interaction Effects 0.000 abstract description 2
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/108—Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time
-
- 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/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- 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/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
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)
- Telephonic Communication Services (AREA)
Abstract
本发明涉及客户端与服务端交互技术领域,具体涉及一种Token生成及校验方法,包含获取客户端的账号信息、手机的唯一标识码,设定token的有效时间,生成数据集合,数据集合包括账号信息、手机的唯一标识码以及有效期;后端定期颁布一串加密密匙,服务器端对数据集合附带加密密匙通过加密算法形成token返回给客户端。本发明通过特定的token生成方法,将token验证的任务由现有技术的存储服务器转移到业务服务器,解决了现有技术中存储服务器因验证token常常发生故障的问题。
Description
技术领域
本发明涉及客户端与服务端交互技术领域,尤其涉及一种Token生成及校验方法。
背景技术
基于token的鉴权机制类似于http协议也是无状态的,它不需要在服务端去保留用户的认证信息或会话信息。这也就意味着基于token认证机制的应用不需要去考虑用户在哪一台服务器登陆了,这就为应用的扩展提供了便利。
为了保证token的安全性通常的做法是生成一个唯一的字符串存储在服务器端,然后每次客户端请求时通过查询存储的token来进行比较token是否一致。这种做法容易在用户上传伪造的token时对服务器资源造成较大的压力,拖慢整个业务系统,此外,因存储服务器不易扩展,容易造成单点故障。
发明内容
本发明的目的在于提供一种Token生成及校验方法,旨在解决现有技术中用户上传伪造的token时对服务器资源造成较大的压力,拖慢整个业务系统,容易造成单点故障的技术问题。
为实现上述目的,本发明提供了一种Token生成方法,包括如下步骤:
获取用户登录的用户信息和手机唯一标识;
服务器端收集整理获取到的用户信息,并添加token的有效时间;
服务器端生成加密密匙,并添加密匙的保存时间;
服务器端通过收集的用户信息、手机唯一标识、token有效期、服务器端的密匙进行加密生成token并颁布给客户端。
其中,在获取用户登录的用户信息和手机唯一标识的步骤中:用户打开app时,客户端获取用户信息和手机唯一标识;用户通过客户端登录时,客户端传递用户的id和手机唯一标识至服务器端。
其中,在服务器端生成加密密匙,并添加密匙的保存时间的步骤中:服务器端生成加密密匙,密匙可通过时间加随机字母加密生成;服务器端保留两个版本的密匙进行token验证,密匙更换的时间和token的有效时间,密匙的保存时间为token的有效时间的两倍。
其中,在服务器端生成加密密匙,并添加密匙的保存时间的步骤中:
所述加密密匙包括新密匙和旧密匙,通过所述旧密匙对合法性进行验证。
本发明提供一种Token校验方法,包括如下步骤:
客户端请求接口时将token通过传参的方式传给服务器端;
服务器端收到客户端的token后通过服务器端保存的密匙及解密算法对token进行解密;
解密后比较token有效时间、手机唯一标识码、用户的信息的完整性,如果验证通过则放行接口的请求,否则直接返回错误信息。
其中,在解密后比较token有效时间、手机唯一标识码、用户的信息的完整性,如果验证通过则放行接口的请求,否则直接返回错误信息的步骤中:
当token经过新密钥信息验证不通过时,通过老密钥信息再次验证所述token的合法性,如果验证通过,则判定所述客户端token合法,如果验证不通过,则判客户端token不合法。
本发明的一种Token生成及校验方法,获取用户登录的用户信息和手机唯一标识;服务器端收集整理获取到的用户信息,并添加token的有效时间;服务器端生成加密密匙,并添加密匙的保存时间;服务器端通过收集的用户信息、手机唯一标识、token有效期、服务器端的密匙进行加密生成token并颁布给客户端;通过特定的token生成方法,将token验证的任务由现有技术的存储服务器转移到业务服务器,解决了现有技术中存储服务器因验证token常常发生故障的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的一种Token生成方法的步骤流程图。
图2是本发明提供的一种Token校验方法的步骤流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
请参阅图1,本发明提供一种Token生成方法,包括如下步骤:
S1:获取用户登录的用户信息和手机唯一标识;
S2:服务器端收集整理获取到的用户信息,并添加token的有效时间;
S3:服务器端生成加密密匙,并添加密匙的保存时间;
S4:服务器端通过收集的用户信息、手机唯一标识、token有效期、服务器端的密匙进行加密生成token并颁布给客户端。
其中,在步骤S1中,用户打开app时,客户端获取用户信息和手机唯一标识;用户通过客户端登录时,客户端传递用户的id和手机唯一标识至服务器端。
在步骤S2中,用户信息包括用户现场标识和MAC地址。
在步骤S3中,服务器端生成加密密匙,密匙可通过时间加随机字母加密生成;服务器端保留两个版本的密匙进行token验证,密匙更换的时间和token的有效时间,密匙的保存时间为token的有效时间的两倍用所述加密密匙包括新密匙和旧密匙,通过所述旧密匙对合法性进行验证。
在步骤S4中,通过用户现场标识和MAC(MediaAccessControl或者MediumAccessControl)地址,MAC地址可以是00:1d:d8:b7:1e:2。基于AES加密算法对用户现场标识和MAC地址进行加密,生成加密数据,采用MD5算法对所述加密数据进行处理,生成摘要数据,所述摘要数据是不可还原,且客户端与所述摘要数据一一对应,作为客户端token;通过采集用户信息,加密所述用户信息,生成加密数据。
在本实施方式中,用户信息是通过预先安装好的客户端程序所采集的,客户端程序是服务平台下发给用户的程序,用户信息是通过预先安装好的客户端程序所采集的,客户端程序是服务平台下发给用户的程序。客户端程序主要用于查询和搜集服务平台数据;客户端程序主要用于查询和搜集服务平台数据将加密数据处理后生成摘要数据,可以使得无论输入多长的数据,经过摘要处理后输出的数据的大小是固定的。从而使得请求包大小不受客户端信息影响,进而有效提高请求效率。并且通过对用户信息采用AES、MD5加密,进一步保证用户信息安全,从而有效解决了现有技术中存在的在每次请求都post客户端信息,导致信息泄露带来安全隐患的技术问题,实现了有效提高用户信息安全性的技术效果。并且通过将所述摘要数据作为客户端Token以及将所述客户端Token与所述用户信息发送至服务端进行存储,可以使得服务端再次收到客户端发送携带有Token请求时,能够实现对客户端的行为进行准确追踪。
请参阅图2,本发明提供一种Token校验方法,包括如下步骤:
S1:客户端请求接口时将token通过传参的方式传给服务器端;
S2:服务器端收到客户端的token后通过服务器端保存的密匙及解密算法对token进行解密;
S3:解密后比较token有效时间、手机唯一标识码、用户的信息的完整性,如果验证通过则放行接口的请求,否则直接返回错误信息。
在本实施方式中,当token经过新密钥信息验证不通过时,通过老密钥信息再次验证所述token的合法性,如果验证通过,则判定所述客户端token合法,如果验证不通过,则判客户端token不合法;通过特定的token生成方法,将token验证的任务由现有技术的存储服务器转移到业务服务器,解决了现有技术中存储服务器因验证token常常发生故障的问题。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (6)
1.一种Token生成方法,其特征在于,包括如下步骤:
获取用户登录的用户信息和手机唯一标识;
服务器端收集整理获取到的用户信息,并添加token的有效时间;
服务器端生成加密密匙,并添加密匙的保存时间;
服务器端通过收集的用户信息、手机唯一标识、token有效期、服务器端的密匙进行加密生成token并颁布给客户端。
2.如权利要求1所述的一种Token生成方法,其特征在于,在获取用户登录的用户信息和手机唯一标识的步骤中:
用户打开app时,客户端获取用户信息和手机唯一标识;用户通过客户端登录时,客户端传递用户的id和手机唯一标识至服务器端。
3.如权利要求2所述的一种Token生成方法,其特征在于,在服务器端生成加密密匙,并添加密匙的保存时间的步骤中:
服务器端生成加密密匙,密匙可通过时间加随机字母加密生成;服务器端保留两个版本的密匙进行token验证,密匙更换的时间和token的有效时间,密匙的保存时间为token的有效时间的两倍。
4.如权利要求3所述的一种Token生成方法,其特征在于,在服务器端生成加密密匙,并添加密匙的保存时间的步骤中:
所述加密密匙包括新密匙和旧密匙,通过所述旧密匙对合法性进行验证。
5.一种Token校验方法,采用如权利要求4所述的Token生成方法,其特征在于,包括如下步骤:
客户端请求接口时将token通过传参的方式传给服务器端;
服务器端收到客户端的token后通过服务器端保存的密匙及解密算法对token进行解密;
解密后比较token有效时间、手机唯一标识码、用户的信息的完整性,如果验证通过则放行接口的请求,否则直接返回错误信息。
6.如权利要求5所述的一种Token校验方法,其特征在于,在解密后比较token有效时间、手机唯一标识码、用户的信息的完整性,如果验证通过则放行接口的请求,否则直接返回错误信息的步骤中:
当token经过新密钥信息验证不通过时,通过老密钥信息再次验证所述token的合法性,如果验证通过,则判定所述客户端token合法,如果验证不通过,则判客户端token不合法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210140460.9A CN114650169A (zh) | 2022-02-16 | 2022-02-16 | 一种Token生成及校验方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210140460.9A CN114650169A (zh) | 2022-02-16 | 2022-02-16 | 一种Token生成及校验方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114650169A true CN114650169A (zh) | 2022-06-21 |
Family
ID=81993730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210140460.9A Pending CN114650169A (zh) | 2022-02-16 | 2022-02-16 | 一种Token生成及校验方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114650169A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8775810B1 (en) * | 2009-09-30 | 2014-07-08 | Amazon Technologies, Inc. | Self-validating authentication token |
CN105391549A (zh) * | 2015-12-10 | 2016-03-09 | 四川长虹电器股份有限公司 | 客户端与服务器之间通信动态密钥实现方法 |
CN105915537A (zh) * | 2016-05-27 | 2016-08-31 | 努比亚技术有限公司 | 一种token生成、校验方法及验证服务器 |
CN107645512A (zh) * | 2017-10-20 | 2018-01-30 | 国信嘉宁数据技术有限公司 | 一种身份验证的方法、装置及服务器 |
CN112202705A (zh) * | 2020-08-21 | 2021-01-08 | 上海微亿智造科技有限公司 | 一种数字验签生成和校验方法、系统 |
-
2022
- 2022-02-16 CN CN202210140460.9A patent/CN114650169A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8775810B1 (en) * | 2009-09-30 | 2014-07-08 | Amazon Technologies, Inc. | Self-validating authentication token |
CN105391549A (zh) * | 2015-12-10 | 2016-03-09 | 四川长虹电器股份有限公司 | 客户端与服务器之间通信动态密钥实现方法 |
CN105915537A (zh) * | 2016-05-27 | 2016-08-31 | 努比亚技术有限公司 | 一种token生成、校验方法及验证服务器 |
CN107645512A (zh) * | 2017-10-20 | 2018-01-30 | 国信嘉宁数据技术有限公司 | 一种身份验证的方法、装置及服务器 |
CN112202705A (zh) * | 2020-08-21 | 2021-01-08 | 上海微亿智造科技有限公司 | 一种数字验签生成和校验方法、系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8689339B2 (en) | Method, system and apparatus for game data transmission | |
US8196186B2 (en) | Security architecture for peer-to-peer storage system | |
CN101051904B (zh) | 一种保护网络应用程序使用账号密码进行登录的方法 | |
JP5395372B2 (ja) | 通信装置、鍵サーバ及びデータ | |
CN105491001A (zh) | 一种安全通讯方法和装置 | |
CN107612889B (zh) | 防止用户信息泄露的方法 | |
CN109510802B (zh) | 鉴权方法、装置及系统 | |
CN101964791A (zh) | 客户端与web应用的通讯认证系统及认证方法 | |
CN109873819B (zh) | 一种防止非法访问服务器的方法及系统 | |
CN104168262A (zh) | 登录第三方站点的方法和服务器 | |
CN101860540A (zh) | 一种识别网站服务合法性的方法及装置 | |
CN110661817B (zh) | 资源访问方法、装置及服务网关 | |
CN105227680A (zh) | 一种智能设备文件下载有效性控制方法 | |
CN112822258B (zh) | 银行开放系统接入方法及系统 | |
CN105516135A (zh) | 用于账号登录的方法和装置 | |
CN111884811A (zh) | 一种基于区块链的数据存证方法和数据存证平台 | |
CN113395282A (zh) | 一种阻止第三方访问服务端资源的方法及系统 | |
CN114143082A (zh) | 一种加密通信方法、系统及装置 | |
JP4637612B2 (ja) | 識別情報生成管理装置およびシステムならびにプログラム | |
CN114124441A (zh) | 一种基于jwt的客户端认证方法及系统 | |
JP4998314B2 (ja) | 通信制御方法および通信制御プログラム | |
JP5142599B2 (ja) | 情報処理装置及びその制御方法、コンピュータプログラム | |
CN114650169A (zh) | 一种Token生成及校验方法 | |
CN114726606A (zh) | 一种用户认证方法、客户端、网关及认证服务器 | |
CN112787821A (zh) | 非对称加密Token验证方法、服务器、客户端及系统 |
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 |