一种令牌生成方法、系统及装置制造方法及图纸

技术编号:32535815 阅读:31 留言:0更新日期:2022-03-05 11:31
本发明专利技术公开了一种令牌生成方法、系统及装置,基于系统当前的项目名称和待下发令牌的用户名称构造SM4算法的密钥,以基于SM4算法及其密钥加密待加密数据,得到第一数据;将第一数据按照预设数据组合策略进行数据组合,得到第二数据;利用SM3算法计算第二数据的第一特征值,并将第二数据及其第一特征值进行组合,得到第三数据;将第三数据按照预设编码算法进行编码,得到编码数据,并将编码数据作为令牌下发至对应用户。可见,本申请基于系统当前的项目名称和待下发令牌的用户名称构造预设SM4算法的密钥,即将密钥与系统中的用户和项目绑定,降低了密钥泄露的影响范围,提升了安全性;而且,国密SM4算法和SM3算法的安全性较高。国密SM4算法和SM3算法的安全性较高。国密SM4算法和SM3算法的安全性较高。

【技术实现步骤摘要】
一种令牌生成方法、系统及装置


[0001]本专利技术涉及云计算管理平台领域,特别是涉及一种令牌生成方法、系统及装置。

技术介绍

[0002]在openstack(一个开源的云计算管理平台项目)系统中,使用令牌(token)作为用户身份认证的标识。当用户首次登陆openstack系统时,需要注册用户名和密码登陆,此时openstack系统会生成一个令牌给用户,以后用户只需带上这个令牌向openstack系统请求数据即可,无需再带上用户名和密码。
[0003]目前,openstack系统生成令牌的方法是:将待加密数据按照AES(Advanced Encryption Standard,高级加密标准)

CBC(Cipher Block Chaining,密码分组链接模式)算法加密、SHA256(Secure Hash Algorithm,安全散列算法)

HMAC(Hash

based Message Authentication Code,密钥相关的哈希运算消息认证码)算法签名,以将本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种令牌生成方法,其特征在于,包括:基于系统当前的项目名称和待下发令牌的用户名称构造预设SM4算法的密钥,以基于所述SM4算法及其密钥加密待加密数据,得到第一数据;将所述第一数据按照预设数据组合策略进行数据组合,得到第二数据;利用预设SM3算法计算所述第二数据的第一特征值,并将所述第二数据及其第一特征值进行组合,得到第三数据;将所述第三数据按照预设编码算法进行编码,得到编码数据,并将所述编码数据作为令牌下发至对应用户。2.如权利要求1所述的令牌生成方法,其特征在于,在基于所述SM4算法及其密钥加密待加密数据之前,所述令牌生成方法还包括:根据预设填充关系式n

(x%n)确定在所述待加密数据后面预填充的字节数目;其中,x为所述待加密数据的原字节数目;n为预设基本填充字节数目;%为取模运算;按照所述字节数目在所述待加密数据后面填充字节,以基于所述SM4算法及其密钥加密填充字节的所述待加密数据。3.如权利要求2所述的令牌生成方法,其特征在于,基于所述SM4算法及其密钥加密待加密数据,得到第一数据,包括:获取系统当前的第一时间戳,并构造预设长度的随机向量;将所述待加密数据、所述第一时间戳、所述随机向量及所述密钥一起作为所述SM4算法的输入参数,并利用所述SM4算法对所述输入参数加密得到第一数据。4.如权利要求3所述的令牌生成方法,其特征在于,将所述第一数据按照预设数据组合策略进行数据组合,得到第二数据,包括:将所述第一数据、所述第一时间戳及所述随机向量进行组合,得到第二数据。5.如权利要求4所述的令牌生成方法,其特征在于,所述令牌生成方法还包括:在接收到带有所述令牌的用户请求后,获取系统当前的第二时间戳,并利用与所述编码算法对应的解码算法解码所述令牌,得到第一时间戳解码值、第一数据解码值、随机向量解码值及第一特征值解码值;根据所述第二时间戳和预设时间戳有效时间判定所述第一时间戳解码值是否有效;若有效,则将所述第一数据解码值、所述第一时间戳解码值及所述随机向量解码值进行组合,得到第二组合数据,并利用所述SM3算法计算所述第二组合数据的第二特征值,且判断所述第二特征值与所述第一特征值解码值是否相同;若相同,则将所述第一数据解码值、所述第一时间戳解码值、所述随机向量解码值及所述密钥一起作为所述SM4算法的输入参数,以利用所述SM4算法对所述输入参数解密得到所述待加密数据,且按照所述字节数目去掉所述待加密数据后面填充的字节,得到原始的待加密数据,以在原始的所述待加密数据未被篡改的情况下基于所述用...

【专利技术属性】
技术研发人员:刘硕
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:

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

1