[發(fā)明專利]一種數(shù)據(jù)加密方法、裝置、設(shè)備和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202011219232.8 | 申請(qǐng)日: | 2020-11-04 |
| 公開(公告)號(hào): | CN112035866B | 公開(公告)日: | 2021-07-23 |
| 發(fā)明(設(shè)計(jì))人: | 于永慶;楊帆 | 申請(qǐng)(專利權(quán))人: | 湖北芯擎科技有限公司 |
| 主分類號(hào): | G06F21/60 | 分類號(hào): | G06F21/60 |
| 代理公司: | 深圳紫藤知識(shí)產(chǎn)權(quán)代理有限公司 44570 | 代理人: | 遠(yuǎn)明 |
| 地址: | 430056 湖北省武漢市經(jīng)濟(jì)技術(shù)開發(fā)區(qū)神龍大道18*** | 國(guó)省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù) 加密 方法 裝置 設(shè)備 計(jì)算機(jī) 可讀 存儲(chǔ) 介質(zhì) | ||
本申請(qǐng)涉及數(shù)據(jù)加解密領(lǐng)域,提供了數(shù)據(jù)加密方法、裝置、設(shè)備和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。所述方法包括:主機(jī)將主指令包拆分為n個(gè)子指令包后發(fā)送至加解密引擎,其中,n為大于或等于2的整數(shù);主機(jī)控制n個(gè)子指令包中每個(gè)子指令包被加解密引擎執(zhí)行加密的進(jìn)度;在主機(jī)對(duì)每個(gè)子指令包加密進(jìn)行進(jìn)度的控制下,加解密引擎對(duì)每個(gè)子指令包執(zhí)行加密;加解密引擎以共享加解密引擎內(nèi)部IP核提供的內(nèi)存的方式,緩存每個(gè)子指令包的中間加密結(jié)果;當(dāng)完成n個(gè)子指令包的加密后,加解密引擎將主指令包的完整加密結(jié)果返回至主機(jī)。本申請(qǐng)?zhí)峁┑募夹g(shù)方案無需由主機(jī)每次獲得一個(gè)子指令包的中間結(jié)果,從而節(jié)省了主機(jī)CPU的資源,提升了數(shù)據(jù)處理的整體性能。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)加解密領(lǐng)域,特別涉及一種數(shù)據(jù)加密方法、裝置、設(shè)備和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù)
在數(shù)據(jù)加解密領(lǐng)域,國(guó)密SM3、SM4等算法性能較低,CPU不支持指令優(yōu)化,同時(shí),由于硬件資源的有限性,通過硬件電路實(shí)現(xiàn)的國(guó)密算法并不能支持大包數(shù)據(jù)的運(yùn)算,一般需要通過主機(jī)(Host)對(duì)數(shù)據(jù)進(jìn)行分包處理,然后循環(huán)調(diào)用硬件引擎實(shí)現(xiàn)加解密運(yùn)算。
具體而言,現(xiàn)有的一種數(shù)據(jù)加解密為:主機(jī)每發(fā)出一個(gè)指令包給加解密引擎,在加解密引擎對(duì)這些指令執(zhí)行加解密后,則向主機(jī)返回一個(gè)加密或解密的結(jié)果。對(duì)于較長(zhǎng)的指令包,主機(jī)首先將其進(jìn)行拆分為多個(gè)子指令包,分別下發(fā)至加解密引擎。加解密引擎每執(zhí)行一次對(duì)一個(gè)子指令包的加解密,則向主機(jī)返回該子指令包的加解密的結(jié)果,待所有子指令包加解密完成后,主機(jī)將這些子指令包的加解密的結(jié)果組裝成整個(gè)指令包的加解密的結(jié)果。
然而,這種方案占用了主機(jī)的CPU資源,影響數(shù)據(jù)運(yùn)算的整體性能。
發(fā)明內(nèi)容
本申請(qǐng)?zhí)峁┮环N數(shù)據(jù)加密方法、裝置、設(shè)備和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),以減小對(duì)主機(jī)CPU資源的占用,并且提升加密的整體運(yùn)算性能。
一方面,本申請(qǐng)?zhí)峁┝艘环N數(shù)據(jù)加密方法,包括:
主機(jī)將主指令包拆分為n個(gè)子指令包后發(fā)送至加解密引擎,所述n為大于或等于2的整數(shù);
所述主機(jī)控制所述n個(gè)子指令包中每個(gè)子指令包被所述加解密引擎執(zhí)行加密的進(jìn)度;
在所述主機(jī)對(duì)每個(gè)子指令包加密進(jìn)行進(jìn)度的控制下,所述加解密引擎對(duì)所述每個(gè)子指令包執(zhí)行加密;
所述加解密引擎將首次加密結(jié)果緩存至加解密引擎內(nèi)部IP核提供的內(nèi)存,所述首次加密結(jié)果為所述加解密引擎從所述加解密引擎內(nèi)部IP核提供的內(nèi)存讀取加密參數(shù)對(duì)所述n個(gè)子指令包的首子指令包進(jìn)行加密得到的結(jié)果;
對(duì)于所述首子指令包的后續(xù)各個(gè)子指令包,所述加解密引擎均從所述加解密引擎內(nèi)部IP核提供的內(nèi)存讀取前一個(gè)子指令包的加密結(jié)果,以用于對(duì)當(dāng)前子指令包進(jìn)行加密;
所述加解密引擎將所述當(dāng)前子指令包的加密結(jié)果緩存至所述加解密引擎內(nèi)部IP核提供的內(nèi)存,以供后續(xù)子指令包進(jìn)行加密使用;
當(dāng)完成所述n個(gè)子指令包的加密后,所述加解密引擎將所述主指令包的完整加密結(jié)果返回至所述主機(jī)。
另一方面,本申請(qǐng)?zhí)峁┝艘环N數(shù)據(jù)加密裝置,包括主機(jī)和加解密引擎,所述主機(jī)包括指令拆分模塊和進(jìn)度控制模塊,所述加解密引擎包括加解密模塊、緩存模塊和結(jié)果輸出模塊;
所述指令拆分模塊,用于將主指令包拆分為n個(gè)子指令包后發(fā)送至加解密引擎,所述n為大于或等于2的整數(shù);
所述進(jìn)度控制模塊,用于控制所述n個(gè)子指令包中每個(gè)子指令包被所述加解密引擎執(zhí)行加密的進(jìn)度;
所述加解密模塊,用于在所述主機(jī)對(duì)每個(gè)子指令包加密進(jìn)行進(jìn)度的控制下,對(duì)所述每個(gè)子指令包執(zhí)行加密;
該專利技術(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/202011219232.8/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F21-00 防止未授權(quán)行為的保護(hù)計(jì)算機(jī)或計(jì)算機(jī)系統(tǒng)的安全裝置
G06F21-02 .通過保護(hù)計(jì)算機(jī)的特定內(nèi)部部件
G06F21-04 .通過保護(hù)特定的外圍設(shè)備,如鍵盤或顯示器
G06F21-06 .通過感知越權(quán)操作或外圍侵?jǐn)_
G06F21-20 .通過限制訪問計(jì)算機(jī)系統(tǒng)或計(jì)算機(jī)網(wǎng)絡(luò)中的節(jié)點(diǎn)
G06F21-22 .通過限制訪問或處理程序或過程
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 加密裝置、加密系統(tǒng)、加密方法以及加密程序
- 移動(dòng)終端和方法
- 再加密方法、再加密系統(tǒng)以及再加密裝置
- 加密終端遠(yuǎn)程管理的方法、加密終端及管理器
- 數(shù)據(jù)加密的方法及裝置
- 流媒體數(shù)據(jù)加密、解密方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 加密裝置、加密系統(tǒng)和數(shù)據(jù)的加密方法
- 文件加密、解密方法、裝置、設(shè)備和存儲(chǔ)介質(zhì)
- 一種車聯(lián)網(wǎng)數(shù)據(jù)加密方法及系統(tǒng)
- 一種服務(wù)數(shù)據(jù)共享云平臺(tái)的數(shù)據(jù)加密方法及系統(tǒng)
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(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ì)





