[發明專利]一種SM4加密、密鑰擴展方法、裝置、設備及介質有效
| 申請號: | 201910154930.5 | 申請日: | 2019-03-01 |
| 公開(公告)號: | CN109981250B | 公開(公告)日: | 2020-04-07 |
| 發明(設計)人: | 王學進;蔣紅宇;安曉江 | 申請(專利權)人: | 北京海泰方圓科技股份有限公司 |
| 主分類號: | H04L9/06 | 分類號: | H04L9/06 |
| 代理公司: | 北京同達信恒知識產權代理有限公司 11291 | 代理人: | 黃志華 |
| 地址: | 100094 北京市海淀區東北旺西路*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 sm4 加密 密鑰 擴展 方法 裝置 設備 介質 | ||
1.一種SM4加密方法,其特征在于,包括:
利用預先生成的輪密鑰對待加密的128比特的數據進行32次迭代計算,所述迭代計算為:其中,Xi、Xi+1 、Xi+2、Xi+3為第i次迭代的輸入數據,Xi+4為第i次迭代的輸出數據,RKi為預先生成的輪密鑰,表示異或運算,所述T的計算方法為:若T輸入為A,則其中A1、表示16比特的二進制整數;
將32次迭代計算的迭代結果作為加密數據。
2.如權利要求1所述的方法,其特征在于,若加密密鑰則輪密鑰RKi的生成方法為:FK=(FK0,FK1,FK2,FK3)和CK=(CK0,CK1,…,CK31)均為固定常數,T'的計算方法為:若T'輸入為A,則
3.如權利要求1所述的方法,其特征在于,T1[A1]=L1[BigSbox(A1)],T2[A2]=L2[BigSbox(A2)],其中,T1由BigSbox計算和線性變換L1復合計算得出,T2由BigSbox計算和線性變換L2復合計算得出,BigSbox、L1以及L2均為查表計算。
4.如權利要求3所述的方法,其特征在于,若所述BigSbox的輸入為A1,則BigSbox(A1)=B1,其中a0、b0、表示8比特的二進制整數。
5.一種SM4密鑰擴展方法,其特征在于,包括:
若加密密鑰則輪密鑰RKi的生成方法為:FK=(FK0,FK1,FK2,FK3)和CK=(CK0,CK1,…,CK31)均為固定常數,T'的計算方法為:若T'輸入為A,則其中A1、表示16比特的二進制整數。
6.如權利要求5所述的方法,其特征在于,T'1[A1]=L'1[BigSbox(A1)],T'2[A2]=L'2[BigSbox(A2)],其中,T'1由BigSbox計算和線性變換L'1復合計算得出,T'2由BigSbox計算和線性變換L'2復合計算得出,BigSbox、L'1以及L'2均為查表計算。
7.如權利要求6所述的方法,其特征在于,若所述BigSbox的輸入為A1,則BigSbox(A1)=B1,其中a0、b0、表示8比特的二進制整數。
8.一種SM4加密裝置,其特征在于,所述裝置包括:
計算單元,用于利用預先生成的輪密鑰對待加密的128比特的數據進行32次迭代計算,所述迭代計算為:其中,Xi、Xi+1 、Xi+2、Xi+3為第i次迭代的輸入數據,Xi+4為第i次迭代的輸出數據,RKi為預先生成的輪密鑰,表示異或運算,所述T的計算方法為:若T輸入為A,則其中A1、表示16比特的二進制整數;
處理單元,用于將32次迭代計算的迭代結果作為加密數據。
9.如權利要求8所述的裝置,其特征在于,若加密密鑰則所述計算單元采用如下方法生成輪密鑰RKi:FK=(FK0,FK1,FK2,FK3)和CK=(CK0,CK1,…,CK31)均為固定常數,T'的計算方法為:若T’輸入為A,則
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京海泰方圓科技股份有限公司,未經北京海泰方圓科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910154930.5/1.html,轉載請聲明來源鉆瓜專利網。





