[發(fā)明專利]SM4加解密方法及電路有效
| 申請(qǐng)?zhí)枺?/td> | 201810229969.4 | 申請(qǐng)日: | 2018-03-20 |
| 公開(kāi)(公告)號(hào): | CN110311771B | 公開(kāi)(公告)日: | 2022-07-22 |
| 發(fā)明(設(shè)計(jì))人: | 高獻(xiàn)龍 | 申請(qǐng)(專利權(quán))人: | 北京小米松果電子有限公司 |
| 主分類號(hào): | H04L9/06 | 分類號(hào): | H04L9/06 |
| 代理公司: | 北京英創(chuàng)嘉友知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11447 | 代理人: | 曾堯;魏嘉熹 |
| 地址: | 100085 北京市*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | sm4 解密 方法 電路 | ||
本公開(kāi)是關(guān)于一種SM4加解密方法及電路,所述方法包括:基于SM4密鑰擴(kuò)展算法,對(duì)輸入的加密密鑰進(jìn)行多輪密鑰擴(kuò)展,在每一輪密鑰擴(kuò)展得到加密輪密鑰后,基于SM4加密算法利用該加密輪密鑰對(duì)輸入的明文數(shù)據(jù)進(jìn)行加密變換,以得到密文數(shù)據(jù);保存針對(duì)所述加密密鑰進(jìn)行的最后四輪密鑰擴(kuò)展得到的加密輪密鑰;在對(duì)所述密文數(shù)據(jù)進(jìn)行解密時(shí),對(duì)保存的最后四輪加密輪密鑰進(jìn)行多輪密鑰逆向擴(kuò)展,并在每一輪密鑰逆向擴(kuò)展得到解密輪密鑰后,基于SM4解密算法利用該解密輪密鑰對(duì)所述密文數(shù)據(jù)進(jìn)行解密變換,以得到所述明文數(shù)據(jù)。通過(guò)本公開(kāi)的技術(shù)方案,可以避免存儲(chǔ)全部的輪密鑰,從而減小占用的存儲(chǔ)資源。
技術(shù)領(lǐng)域
本公開(kāi)涉及信息安全技術(shù)領(lǐng)域,尤其涉及一種SM4加解密方法及電路。
背景技術(shù)
SM4算法是國(guó)家密碼管理局發(fā)布的分組密碼算法,是我國(guó)官方公布的第一個(gè)商用密碼算法,其廣泛應(yīng)用于無(wú)線通信、物聯(lián)網(wǎng)傳感節(jié)點(diǎn)以及智能數(shù)據(jù)卡等領(lǐng)域。
SM4算法包括密鑰擴(kuò)展算法和加密算法,兩者均采用32輪非線性迭代結(jié)構(gòu),其加密過(guò)程為:將128比特的密鑰按照32比特一組進(jìn)行分組,然后根據(jù)密鑰擴(kuò)展算法進(jìn)行32輪密鑰擴(kuò)展,在每一輪密鑰擴(kuò)展產(chǎn)生輪密鑰后,將128比特明文數(shù)據(jù)也按照32比特一組進(jìn)行分組,利用該輪密鑰進(jìn)行一輪加密變換,經(jīng)過(guò)32輪加密變換后得到與明文數(shù)據(jù)對(duì)應(yīng)的密文數(shù)據(jù)。
在對(duì)密文數(shù)據(jù)進(jìn)行解密時(shí),解密算法與加密算法相同,僅是輪密鑰的使用順序與之相反??梢?jiàn),在解密過(guò)程中需要將32輪密鑰擴(kuò)展得到的32個(gè)輪密鑰全部存儲(chǔ),這就需要消耗32×32比特的存儲(chǔ)資源,從而將導(dǎo)致所應(yīng)用的芯片中的大量資源被占用。
發(fā)明內(nèi)容
為克服相關(guān)技術(shù)中存在的問(wèn)題,本公開(kāi)提供一種SM4加解密方法及電路。
根據(jù)本公開(kāi)實(shí)施例的第一方面,提供一種SM4加解密方法,包括:
基于SM4密鑰擴(kuò)展算法,對(duì)輸入的加密密鑰進(jìn)行多輪密鑰擴(kuò)展,在每一輪密鑰擴(kuò)展得到加密輪密鑰后,基于SM4加密算法利用該加密輪密鑰對(duì)輸入的明文數(shù)據(jù)進(jìn)行加密變換,以得到密文數(shù)據(jù);
保存針對(duì)所述加密密鑰進(jìn)行的最后四輪密鑰擴(kuò)展得到的加密輪密鑰;
在對(duì)所述密文數(shù)據(jù)進(jìn)行解密時(shí),對(duì)保存的最后四輪加密輪密鑰進(jìn)行多輪密鑰逆向擴(kuò)展,并在每一輪密鑰逆向擴(kuò)展得到解密輪密鑰后,基于SM4解密算法利用該解密輪密鑰對(duì)所述密文數(shù)據(jù)進(jìn)行解密變換,以得到所述明文數(shù)據(jù)。
可選地,所述對(duì)保存的最后四輪加密輪密鑰進(jìn)行多輪密鑰逆向擴(kuò)展,包括:
根據(jù)如下公式對(duì)對(duì)保存的最后四輪加密輪密鑰進(jìn)行多輪密鑰逆向擴(kuò)展:
RKi-4=RKi⊕T'(RKi-3⊕RKi-2⊕RKi-1⊕CKi),i=31,30,...,0
其中,RKi表示第i輪加密輪密鑰;CKi表示固定參數(shù)且CKi為字;⊕表示異或運(yùn)算;T'表示合成置換運(yùn)算,由非線性變換τ和線性變換L'復(fù)合而成,即T'(·)=L'(τ(·))。
可選地,所述非線性變換τ的輸入表示為A=(a0,a1,a2,a3),則τ(A)=(Sbox(a0),Sbox(a1),Sbox(a2),Sbox(a3)),其中,a0,a1,a2,a3均為8比特;Sbox(·)表示固定的8比特輸入8比特輸出的置換。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京小米松果電子有限公司,未經(jīng)北京小米松果電子有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810229969.4/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 一種智能卡SM4算法的DPA攻擊與密鑰還原方法及系統(tǒng)
- 針對(duì)SM4密碼算法的可擴(kuò)展流水線電路及其實(shí)現(xiàn)方法
- 密碼算法抗功耗分析的實(shí)現(xiàn)方法及裝置
- 一種針對(duì)SM4密碼算法中間5輪的約減輪故障分析的方法
- 一種針對(duì)SM4密碼算法后4輪的約減輪故障分析的方法
- 一種針對(duì)SM4密碼算法前4輪的約減輪故障分析的方法
- 國(guó)密SM4分組密碼算法的檢測(cè)方法
- 在并行操作模式中優(yōu)化SM4加密和解密的方法及處理器
- 一種SM4算法的分析方法、系統(tǒng)以及設(shè)備
- 支付密鑰的加密和解密方法、支付認(rèn)證方法及終端設(shè)備
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 解密引擎以及解密方法
- 一種處理多解密機(jī)PC端解密任務(wù)的方法
- 一種加解密服務(wù)器和實(shí)現(xiàn)數(shù)據(jù)加解密的方法及裝置
- 一種硬件解密方法、裝置、系統(tǒng)及解密設(shè)備
- 解密裝置、方法及片上系統(tǒng)
- SSL解密裝置、解密系統(tǒng)、解密方法
- 一種數(shù)據(jù)加解密方法、裝置及電子設(shè)備
- 自動(dòng)加解密裝置、方法、設(shè)備和存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





