[發明專利]一種令牌生成方法、系統及裝置在審
| 申請號: | 202111364570.5 | 申請日: | 2021-11-17 |
| 公開(公告)號: | CN114139177A | 公開(公告)日: | 2022-03-04 |
| 發明(設計)人: | 劉碩 | 申請(專利權)人: | 鄭州云海信息技術有限公司 |
| 主分類號: | G06F21/60 | 分類號: | G06F21/60;G06F21/64 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 王曉芬 |
| 地址: | 450018 河南省鄭州市*** | 國省代碼: | 河南;41 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 令牌 生成 方法 系統 裝置 | ||
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算法對所述輸入參數解密得到所述待加密數據,且按照所述字節數目去掉所述待加密數據后面填充的字節,得到原始的待加密數據,以在原始的所述待加密數據未被篡改的情況下基于所述用戶請求向對應用戶返回請求數據。
6.如權利要求1所述的令牌生成方法,其特征在于,將所述第三數據按照預設編碼算法進行編碼,得到編碼數據,包括:
將所述第三數據的每三個字節劃分為一組,得到多個包含24個比特位的第一組;
將每個所述第一組的比特位平均劃分為4組,得到多個包含6個比特位的第二組;
在每個所述第二組前面添加兩個0,以將每個所述第一組擴展成包含32個比特位的第一組;
根據base64的表格將擴展后的每個所述第一組替換為base64編碼,并將替換得到的所有所述base64編碼組合得到所述編碼數據。
7.如權利要求1-6任一項所述的令牌生成方法,其特征在于,基于系統當前的項目名稱和待下發令牌的用戶名稱構造預設SM4算法的密鑰,包括:
利用所述SM3算法計算所述用戶名稱的UUID的第一摘要信息,并將所述第一摘要信息平均分為4份,且每份取首字符,得到4個第一字符;
利用所述SM3算法計算所述項目名稱的ID的第二摘要信息,并將所述第二摘要信息平均分為4份,且每份取首字符,得到4個第二字符;
將所述第一字符和所述第二字符均轉換為比特位,并將二者轉換的比特位組合得到比特數據;
將所述比特數據隨機填充至所述SM4算法的密鑰長度,并將填充后的所述比特數據作為所述SM4算法的密鑰。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于鄭州云海信息技術有限公司,未經鄭州云海信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111364570.5/1.html,轉載請聲明來源鉆瓜專利網。





