[發(fā)明專利]一種內(nèi)存數(shù)據(jù)加解密的方法有效
| 申請(qǐng)?zhí)枺?/td> | 201710657407.5 | 申請(qǐng)日: | 2017-08-03 |
| 公開(公告)號(hào): | CN107563228B | 公開(公告)日: | 2021-04-20 |
| 發(fā)明(設(shè)計(jì))人: | 許海波;應(yīng)志偉;杜朝暉 | 申請(qǐng)(專利權(quán))人: | 海光信息技術(shù)股份有限公司 |
| 主分類號(hào): | G06F21/79 | 分類號(hào): | G06F21/79;G06F21/60;G06F3/06 |
| 代理公司: | 北京超凡宏宇專利代理事務(wù)所(特殊普通合伙) 11463 | 代理人: | 李青 |
| 地址: | 300143 天津市華苑產(chǎn)業(yè)區(qū)*** | 國(guó)省代碼: | 天津;12 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 內(nèi)存 數(shù)據(jù) 解密 方法 | ||
本發(fā)明提供一種內(nèi)存數(shù)據(jù)加解密的方法,屬于數(shù)據(jù)加密處理技術(shù)領(lǐng)域。所述方法包括S1、處理器模塊發(fā)送密鑰更新請(qǐng)求至加密模塊,所述加密模塊收到請(qǐng)求后產(chǎn)生新的密鑰;S2、對(duì)內(nèi)存中的每一個(gè)被加密的內(nèi)存頁(yè),加密模塊用舊密鑰對(duì)與之對(duì)應(yīng)的內(nèi)存頁(yè)數(shù)據(jù)解密,并使用所述新密鑰分別對(duì)每一個(gè)解密后的頁(yè)面數(shù)據(jù)重新加密。通過使用本發(fā)明提供的一種內(nèi)存數(shù)據(jù)加解密的方法,不僅可以有效地降低針對(duì)SME技術(shù)加密密鑰保持不變帶來的惡意攻擊,從而顯著提高內(nèi)存加密的安全性;而且提供了安全方案的靈活性,用戶和系統(tǒng)可以根據(jù)需要?jiǎng)討B(tài)更新加解密的密鑰。
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)加密技術(shù)領(lǐng)域,具體涉及一種內(nèi)存數(shù)據(jù)加解密的方法。
背景技術(shù)
隨著現(xiàn)代計(jì)算機(jī)系統(tǒng)的復(fù)雜性越來越高,以及最近幾年出現(xiàn)的云計(jì)算和大數(shù)據(jù)等新興技術(shù)對(duì)計(jì)算環(huán)境安全性要求的提高,業(yè)界普遍意識(shí)到需要從計(jì)算機(jī)系統(tǒng)的底層硬件上完全支持?jǐn)?shù)據(jù)的加密功能。其中,美國(guó)的CPU設(shè)計(jì)和制造廠商超威半導(dǎo)體公司提出了安全內(nèi)存加密(SME)技術(shù)(具體參見[1]AMD Memory Encryption White Paper;[2]處理系統(tǒng)中信息的密碼保護(hù)(專利:CN106062768A))。這種技術(shù)在現(xiàn)有CPU硬件的基礎(chǔ)上加入了內(nèi)存加密模塊,從而使得數(shù)據(jù)被加密后再寫到內(nèi)存中;當(dāng)CPU需要讀取數(shù)據(jù)時(shí),加密模塊自動(dòng)將加密的數(shù)據(jù)進(jìn)行解密,整個(gè)過程對(duì)上層的軟件來說是完全透明的。這種方法可以有效地抵御針對(duì)存儲(chǔ)器的物理攻擊、因軟件缺陷導(dǎo)致的隔離失效等引起的數(shù)據(jù)泄露問題。但是,這種方法由于加密的安全密鑰在系統(tǒng)上運(yùn)行后一直保持不變,所以容易導(dǎo)致惡意攻擊者針對(duì)加密方法的弱點(diǎn)實(shí)施密碼攻擊與破解。作為SEV([1]AMD Memory Encryption Whi te Paper)方案的基礎(chǔ),SME存在的上述安全風(fēng)險(xiǎn)在SEV的使用場(chǎng)景中顯得尤其明顯。
圖1給出了傳統(tǒng)SME方案的結(jié)構(gòu)圖,通過在內(nèi)存模塊存取路徑中采用硬件加密模塊2將安全信息隔離。其中加密模塊2位于內(nèi)存控制模塊3中,并且向處理器模塊1提供針對(duì)每個(gè)存取是否是安全存取的指示。圖中的加密密鑰是在系統(tǒng)上電時(shí)自動(dòng)生成的,并且在整個(gè)系統(tǒng)運(yùn)行過程中保持不變,這就容易導(dǎo)致惡意攻擊者針對(duì)加密方法的弱點(diǎn)實(shí)施密碼攻擊與破解。
發(fā)明內(nèi)容
本發(fā)明提供了一種內(nèi)存數(shù)據(jù)加解密的方法,解決了加密密鑰保持不變而導(dǎo)致的惡意攻擊的問題。
本發(fā)明提供一種內(nèi)存數(shù)據(jù)加解密的方法,所述方法包括:
S1、處理器模塊發(fā)送密鑰更新請(qǐng)求至加密模塊,所述加密模塊收到請(qǐng)求后產(chǎn)生新的密鑰;
S2、對(duì)內(nèi)存中的每一個(gè)被加密的內(nèi)存頁(yè),加密模塊用舊密鑰對(duì)與之對(duì)應(yīng)的內(nèi)存頁(yè)數(shù)據(jù)解密,并使用所述新密鑰分別對(duì)每一個(gè)解密后的頁(yè)面數(shù)據(jù)重新加密。
其中,步驟S1之前還包括:操作系統(tǒng)檢查處理器模塊當(dāng)前狀態(tài),如果所述處理器模塊忙則直接退出;
如果處理器模塊處于空閑狀態(tài),則將操作系統(tǒng)掛起,不接受任何其他進(jìn)程的輸入輸出操作,并執(zhí)行上述步驟S1和S2。
此外,上述步驟成功執(zhí)行后,操作系統(tǒng)返回“成功”;如果上述步驟有錯(cuò)誤出現(xiàn),操作系統(tǒng)返回“錯(cuò)誤”并結(jié)束更新過程。
其中,步驟S1還包括加密模塊將新密鑰保存至內(nèi)存控制器模塊中的寄存器或其內(nèi)部EEPROM中。
其中,步驟S1中處理器模塊通過密鑰更新接口實(shí)現(xiàn)發(fā)送密鑰更新請(qǐng)求至加密模塊。
優(yōu)選地,步驟S1中處理器模塊通過新的機(jī)器指令,或者控制器固件(FW)提供新的應(yīng)用程序編程接口實(shí)現(xiàn)發(fā)送密鑰更新請(qǐng)求至加密模塊。
通過使用本發(fā)明提供的一種內(nèi)存數(shù)據(jù)加解密的方法,不僅可以有效地降低針對(duì)SME技術(shù)加密密鑰保持不變帶來的惡意攻擊,從而顯著提高內(nèi)存加密的安全性;而且提供了安全方案的靈活性,用戶和系統(tǒng)可以根據(jù)需要?jiǎng)討B(tài)更新加解密的密鑰。
附圖說明
圖1為傳統(tǒng)SME方案的結(jié)構(gòu)示意圖;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于海光信息技術(shù)股份有限公司,未經(jīng)海光信息技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710657407.5/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)裝置
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 解密引擎以及解密方法
- 一種處理多解密機(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ù)讀寫分離的方法和裝置
- 一種手機(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ì)





