[發明專利]一種內存數據完整性保護方法、裝置及電子設備有效
| 申請號: | 202011643495.1 | 申請日: | 2020-12-30 |
| 公開(公告)號: | CN112651054B | 公開(公告)日: | 2022-10-14 |
| 發明(設計)人: | 顧海華;應志偉 | 申請(專利權)人: | 海光信息技術股份有限公司 |
| 主分類號: | G06F21/64 | 分類號: | G06F21/64;G06F21/60 |
| 代理公司: | 北京市廣友專利事務所有限責任公司 11237 | 代理人: | 張仲波 |
| 地址: | 300000 天津市濱海新區天津華苑*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 內存 數據 完整性 保護 方法 裝置 電子設備 | ||
本申請實施例公開一種內存數據完整性保護方法、裝置及電子設備,涉及內存數據保護技術領域,能夠有效地對內存中的數據進行完整性保護。所述內存數據完整性保護方法,包括:把待寫入數據分割成數據塊;根據數據塊的寫入地址確定所述寫入地址所對應的存儲單元;根據所述存儲單元以及預先建立的校驗樹,確定校驗路徑;從所述校驗樹的根節點開始,沿所述校驗路徑,依次對各節點進行校驗;在依次對所述校驗路徑上的各節點校驗通過后,對所述數據塊進行數據校驗,若校驗通過,則將所述數據塊寫入所述存儲單元;基于所述數據塊在所述存儲單元中的寫入,更新所述校驗樹。本申請實施例適用于內存數據的完整性保護。
技術領域
本發明涉及內存數據保護技術領域,尤其涉及一種內存數據完整性保護方法、裝置及電子設備。
背景技術
研究表明,攻擊者可以讀取或修改內存中的數據。為了保護內存中數據的機密性、完整性,并防御重放攻擊,提出了內存加密引擎(MEE,Memory Encryption Engine),并給出了相應的擴展指令集SGX。通常情況下,CPU需要的數據是由內存控制器(MC,MemoryController)來操作,但涉及到被保護數據時,就需要由MEE來控制。
當數據寫入內存前,MEE中的加密模塊會把數據加密;當加密數據從內存中讀出時,MEE中的解密模塊會把數據解密,然后送到緩存,供CPU核使用。即便內存中的數據是密文存儲,但有可能被修改或替換,為此需要對內存數據進行完整性保護。
發明內容
有鑒于此,本發明實施例提供一種內存數據完整性保護方法、裝置及電子設備,能夠有效地對內存中的數據進行完整性保護。
第一方面,本發明實施例提供一種內存數據完整性保護方法,包括:把待寫入數據分割成數據塊;根據一數據塊的寫入地址,確定所述寫入地址所對應的存儲單元;其中,所述數據塊為所述待寫入數據分割后形成的兩個以上的數據塊中的其中一個數據塊,所述存儲單元位于內存中的數據保護存儲區,所述數據保護存儲區中的每個存儲單元分配有一局部計數器,每N個局部計數器分配有一全局計數器;N為大于等于2的自然數;根據所述存儲單元以及預先建立的校驗樹,確定校驗路徑;其中,所述校驗樹的每個節點具有一全局計數器和N個局部計數器,每個節點與上一層節點中的一局部計數器相對應,每個末節點的N個局部計數器與所述數據保護存儲區中的N個存儲單元一一對應;從所述校驗樹的根節點開始,沿所述校驗路徑,依次對各節點進行校驗;在依次對所述校驗路徑上的各節點校驗通過后,對所述數據塊進行數據校驗,若校驗通過,則將所述數據塊寫入所述存儲單元;基于所述數據塊在所述存儲單元中的寫入,更新所述校驗樹。
根據本發明實施例中的一具體實現方式,所述從所述校驗樹的根節點開始,沿所述校驗路徑,依次對各節點進行校驗,包括:從所述校驗樹的根節點開始,沿一條校驗路徑,依次對各節點進行校驗;所述從所述校驗樹的根節點開始,沿一條校驗路徑,依次對各節點進行校驗,包括:獲取第i個節點的全局計數器和第j個局部計數器的值,結合第i-1個節點的全局計數器和各局部計數器的值,計算一節點校驗值,將計算的節點校驗值與第i-1個節點中存儲的節點校驗值進行比較,若二者一致,則對第i-1個節點校驗成功;其中,所述第i個節點和第i-1個節點為所述校驗路徑上兩個相鄰的節點,所述第i-1個節點與所述第i個節點的第j個局部計數器相對應;其中,2≤i≤M,1≤j≤N,M為校驗樹的最大層數。
根據本發明實施例中的一具體實現方式,所述對所述數據塊進行數據校驗,包括:獲取至少兩個存儲單元所存儲的數據,結合該至少兩個存儲單元所對應的局部計數器和全局計數器的值,計算出一數據校驗值;其中,所述至少兩個存儲單元包括所述寫入地址所對應的存儲單元;將計算出的所述數據校驗值,與預先存儲的數據校驗值進行比較;其中,所述預先存儲的數據校驗值,預先根據所述至少兩個存儲單元所存儲的數據,結合所述至少兩個存儲單元所對應的局部計數器和全局計數器的值計算得出;若計算出的所述數據校驗值與所述預先存儲的數據校驗值一致,則對所述數據塊的數據校驗通過。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于海光信息技術股份有限公司,未經海光信息技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011643495.1/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





