令牌生成和验证方法以及设备技术

技术编号:10484196 阅读:126 留言:0更新日期:2014-10-03 14:46
本发明专利技术的实施方式公开了令牌生成和验证方法以及设备。该令牌生成方法包括生成随机字符串作为密钥;将令牌中将要包含的信息和该密钥拼装成第一字符串,并且通过对第一字符串进行加密得到令牌签名;以及将该信息和该令牌签名按照可拆解的模式拼装成第二字符串作为令牌。本发明专利技术的实施方式提出的令牌生成和验证方法以及设备能够提供较高安全性的互联网应用服务访问。

【技术实现步骤摘要】
令牌生成和验证方法以及设备
本专利技术的实施方式涉及计算机网络
,更具体地涉及令牌生成和验证方法以及设备。
技术介绍
随着互联网技术的发展和普及,各种web应用服务已经遍及人们日常生活的方方面面,例如购物、电子邮件、新闻浏览、论坛等。然而,web应用存在安全隐患。为了保障访问的安全性,常常需要对用户身份进行认证。 目前,在三种主流的web服务实现方案中,因为表征状态转移(REST)模式的web服务与复杂的简单对象访问协议(SOAP)和可扩展标记语言-远端程序呼叫(XML-RPC)相比更加简洁,所以越来越多的web服务开始采用REST风格设计和实现。REST没有通用的安全标准,REST web服务提供商通常使用私有的安全令牌来进行认证。 在一种现有的REST web用户验证方法中,应用服务器生成并存储用于各用户的令牌,并且将生成的令牌通知相应用户。用户在调用应用服务器处的REST应用程序接口(API)时,在调用请求中携带令牌,应用服务器接收到该令牌后,将其与自身存储的对应令牌进行比较,从而进行认证。然而,这种方式不但安全性差,而且占用了服务器端大量的存储资源。
技术实现思路
因此,本专利技术的目的在于,提供一种令牌生成和验证方法以及设备。 根据本专利技术的一个方面,提供了一种令牌生成方法,该方法包括:生成随机字符串作为密钥;将令牌中将要包含的信息和该密钥拼装成第一字符串,并且通过对第一字符串进行加密得到令牌签名;以及将该信息和该令牌签名按照可拆解的模式拼装成第二字符串作为令牌。 在一个实施方式中,根据使用该信息计算的键值对生成的密钥进行存储。 根据本专利技术的另一方面,提供了一种令牌验证方法,该方法包括:对令牌进行拆解以得到其中包含的信息和第一令牌签名;将拆解出的信息和存储的密钥拼装成字符串,并且通过对该字符串进行加密得到第二令牌签名;以及将第一令牌签名和第二令牌签名进行比较,并且基于比较结果进行令牌验证。 在一个实施方式中,根据使用拆解出的信息计算的键值读取存储的密钥。 根据本专利技术的又一方面,提供了一种令牌生成设备,该设备包括:密钥生成装置,被配置为生成随机字符串作为密钥;签名生成装置,被配置为将令牌中将要包含的信息和该密钥拼装成第一字符串,并且通过对第一字符串进行加密得到令牌签名;以及令牌生成装置,被配置为将该信息和该令牌签名按照可拆解的模式拼装成第二字符串作为令牌。 在一个实施方式中,该设备还包括存储装置,该存储装置被配置为根据使用该信息计算的键值对生成的密钥进行存储。 根据本专利技术的另一方面,提供了一种令牌验证设备,该设备包括:签名获取装置,被配置为对令牌进行拆解以得到其中包含的信息和第一令牌签名;签名生成装置,被配置为将拆解出的信息和存储的密钥拼装成字符串,并且通过对该字符串进行加密得到第二令牌签名;以及验证装置,被配置为对第一令牌签名和第二令牌签名进行比较,并且基于比较结果进行令牌验证。 在一个实施方式中,该设备还包括读取装置,该读取装置被配置为根据使用拆解出的信息计算的键值读取存储的密钥。 本专利技术的实施方式提出的令牌生成和验证方法以及设备能够提供较高安全性的互联网应用服务访问。 【附图说明】 通过对结合附图所示出的实施方式进行详细说明,本专利技术的上述以及其他特征将更加明显,附图中相同的标号表示相同或相似的元素。在附图中: 图1示出了根据本专利技术一个实施方式的令牌生成方法100的流程图; 图2示出了根据本专利技术一个实施方式的令牌验证方法200的流程图; 图3示出了根据本专利技术的一个实施方式的令牌生成设备300的框图;以及 图4示出了根据本专利技术的一个实施方式的令牌验证设备400的框图。 【具体实施方式】 以下结合附图对本专利技术的实施方式进行更详细的解释和说明。应当理解的是,本专利技术的附图及实施方式仅用于示例性作用,并非用于限制本专利技术的保护范围。 附图中的流程图和框图,图示了按照本专利技术各种实施方式的方法和设备可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以利用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。 下面结合附图以示例的方式详细描述本专利技术的各种实施方式。 图1示出了根据本专利技术一个实施方式的令牌生成方法100的流程图。 如图1所示,方法100在开始之后,在步骤S101,生成随机字符串作为密钥。 然后,在步骤S102,将令牌中将要包含的信息和密钥拼装成第一字符串,并且通过对第一字符串进行加密得到令牌签名。 在一个实施方式中,令牌可以包括创建时间、过期时间或有效期等信息。此外,令牌还可以包括与用户相关的信息,例如用户名或密码。 在一个实施方式中,可以按照字典升序排序的模式进行上述拼装。可替换地,也可以按照其他排序模式来进行拼装,例如,降序排序或预定义的其他排序模式。 在一个实施方式中,可以使用消息摘要算法5 (MD5)来进行加密。可替换地,也可以使用其他常用的加密算法,例如安全哈希算法SHA-1。 接下来,在步骤S103,将令牌中将要包含的信息和令牌签名按照可拆解的模式拼装成第二字符串作为令牌。 在一个实施方式中,可以使用减号对各信息组成进行分割。 根据本专利技术的实施方式的令牌生成方法能够提供较高安全性的互联网应用服务访问。 此外,在一个实施方式中,可以根据使用令牌中将要包含的信息计算的键值对生成的密钥进行存储。 在本专利技术的实施方式中,可以在服务器中执行上述令牌生成方法。生成密钥后,月艮务器根据计算的键值存储生成的密钥,并且将生成的令牌发送给相应的客户端。 通过这种方式,不但增加了互联网应用服务访问的安全性,而且节省了服务器端的存储资源。 下面,参照图2描述根据本专利技术一个实施方式的令牌验证方法200。 如图2所示,方法200在开始之后,在步骤S201,对令牌进行拆解以得到其中包含的信息和第一令牌签名。 然后,在步骤S202,将拆解出的信息和存储的密钥拼装成字符串,并且通过对字符串进行加密得到第二令牌签名。 接下来,在步骤S203,将第一令牌签名和第二令牌签名进行比较,并且基于比较结果进行令牌验证。 例如,如果第一令牌签名和第二令牌签名相同,则验证通过;否则,验证不通过。 在方法200中,令牌中包含的信息、拼装模式和加密算法与令牌生成方法100中描述的类似,此处不再赘述。 同样,根据本专利技术的实施方式的令牌验证方法能够提供较高安全性的互联网应用服务访问。 此外,在一个实施方式中,可以根据使用拆解出的信息计算的键值读取存储的密钥。 类似地,在本专利技术的实施方式中,可以在服务器中执行上述令牌验证方法。服务器在接收到令牌后对令牌进行拆解本文档来自技高网...

【技术保护点】
一种令牌生成方法,包括:生成随机字符串作为密钥;将令牌中将要包含的信息和所述密钥拼装成第一字符串,并且通过对所述第一字符串进行加密得到令牌签名;以及将所述信息和所述令牌签名按照可拆解的模式拼装成第二字符串作为所述令牌。

【技术特征摘要】
1.一种令牌生成方法,包括: 生成随机字符串作为密钥; 将令牌中将要包含的信息和所述密钥拼装成第一字符串,并且通过对所述第一字符串进行加密得到令牌签名;以及 将所述信息和所述令牌签名按照可拆解的模式拼装成第二字符串作为所述令牌。2.根据权利要求1所述的方法,还包括: 根据使用所述信息计算出的键值对生成的密钥进行存储。3.一种令牌验证方法,包括: 对令牌进行拆解,以得到其中包含的信息和第一令牌签名; 将拆解出的信息和存储的密钥拼装成字符串,并且通过对所述字符串进行加密得到第二令牌签名;以及 将所述第一令牌签名和所述第二令牌签名进行比较,并且基于比较结果进行令牌验证。4.根据权利要求1所述的方法,还包括: 根据使用所述拆解出的信息计算出的键值读取所述存储的密钥。5.一种令牌生成设备,包括: 密钥生成装置,被配置为生成随机字符串作为密钥; 签名生...

【专利技术属性】
技术研发人员:戴洵
申请(专利权)人:北京千橡网景科技发展有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1