存儲器中存儲數據的安全刪除的制作方法
【專利摘要】根據一些實施方式,存儲器的粒度,例如塊,可采用一種使曾經能夠訪問該塊的闖入者也難以訪問的方式刪除。此外,該刪除以足夠有效的方式且不過分拖累用戶的方式來完成。在一些實施例中,存儲器的粒度(例如,塊)的加密可完全在存儲器中進行處理。這樣,由于其在存儲設備內自動完成,加密過程不能從外部訪問,且用戶不必被加密序列拖累。
【專利說明】存儲器中存儲數據的安全刪除
【背景技術】
[0001 ] 本發明一般涉及電子存儲器中存儲數據的刪除。
[0002]通常,如果用戶試圖刪除存儲在半導體存儲器中的數據,用戶認為已被完全從系統中移除的數據仍然存在并且可被提取。由于機密數據可能會被通過獲得物理設備或是通過遠程訪問設備能夠訪問用戶計算機的闖入者利用,這帶來了安全隱患。
[0003]為限制訪問存儲器中被刪除的存儲數據,一種方式是嘗試反復覆蓋數據。但是這往往是耗時的,而且很容易出錯,因為重復的寫操作可能無法完全覆蓋數據,允許部分數據仍然可被訪問。
[0004]另一種方式是將存儲器中的每個文件加密,并將加密密鑰存儲在另一個文件中。但這種方法通常是對用戶可見的,因此給用戶帶來一些開銷。此外,由于加密密鑰存儲在可被攻擊者訪問的文件中,它可能會帶來安全隱患。因此,從用戶的角度出發,刪除過程需要用戶的關注。
【專利附圖】
【附圖說明】
[0005]結合以下的附圖描述一些實施例:
圖1是根據本發明的平臺的一個實施例的示意圖;
圖2是根據本發明一個實施例的讀取塊的序列;
圖3是根據本發明一個實施例的寫入塊的序列;
圖4是根據本發明一個實施例的刪除塊的序列;
圖5是本發明一個實施例的剖視圖;
圖6是根據一個實施例,大致沿圖5中的線6-6截取的剖視圖。
【具體實施方式】
[0006]如本文所使用的,刪除是指用于限制在將來訪問存儲信息的任何動作。
[0007]根據一些實施方式,可采用一種使曾經能夠訪問該塊的闖入者也難以訪問的方式刪除存儲器的粒度,例如塊。此外,該刪除可以用足夠有效的方式且不過分拖累用戶的方式來完成。在一個實施例中,塊是最小的可尋址存儲粒度。也可使用大于一個塊的其它粒度。
[0008]在一些實施例中,存儲器的粒度(例如,塊)的加密可完全在存儲器中進行處理。這樣,由于其在存儲設備內自動完成,加密過程不能從外部訪問,且用戶不必被加密序列拖累。
[0009]根據本發明的實施例中可實現的存儲設備的類型,其中包括半導體、磁性和光學存儲器。通常,這些存儲器包括一些板上(onboard)處理能力的類型,其有利的是從存儲器外部無法進行訪問。因此,外部軟件無法干擾存儲器的粒度(例如塊)的加密過程以及刪除過程。
[0010]因此參照圖1,平臺10可包括一個或多個耦合到輸入/輸出設備14的處理器12。典型的輸入/輸出設備例如包括鍵盤、打印機、監視器或顯示器、鼠標以及觸摸屏作為小部分例子提出。
[0011]該處理器可被耦合到存儲設備16,存儲設備可以是任何類型的電子存儲裝置。它可包括存儲器陣列18,存儲器陣列由任何傳統或未來存儲器技術的行和列單兀構成。在一個實施例中,該陣列中的一個區域,可用于存儲加密密鑰庫(store) 20,但在其它實施例中,加密密鑰可被存儲在存儲設備16內的一個獨立的存儲器中。
[0012]該陣列18可以通過板上控制器17來控制,控制器為能夠執行指令的基于處理器的設備。它可以執行存儲器的粒度例如塊的讀取、寫入和刪除中一個或多個操作的序列。因此,它能夠執行用于存儲器部分的刪除的操作,而不受外部實體的干擾。控制器17可以是封裝內的集成電路,該封裝包圍所述存儲器陣列的集成部件。在一個實施例中,存儲器陣列和控制器形成在同一個集成電路芯片上。
[0013]在一個實施例中,通過簡單地改變用于對目標存儲器部分中的數據進行加密的加密密鑰,控制器可以擦除部分陣列或整個陣列。那么,即使數據被闖入者訪問,因為不能找到加密密鑰,它也不能被解密。此外,當闖入者試圖訪問數據時,該數據以錯誤的密鑰被解密。在這種情況下,不是實際從每個存儲器單元中物理地移除存儲狀態,而是通過簡單地使所述加密密鑰不可訪問從而防止任何人讀取其內編碼的信息使存儲器的一部分可整體被擦除。
[0014]用于讀取、寫入和擦除的多個不同序列22、30和40可存儲在陣列中。在其它實施例中,序列可以用硬件或固件來實現。
[0015]在一些實施方式中,序列可通過存儲在一個或多個非臨時性計算機可讀介質,如磁、光和/或半導體存儲器中的計算機執行指令來實現。在一個實施例中,計算機執行指令可完全由存儲設備16內的控制器17實現,該控制器從存儲設備16的外部基本上或完全不能被訪問。
[0016]存儲設備16通常以固定尺寸的塊組織。每次軟件在一個塊上執行。更高水平提供更好的粒度。
[0017]寄存器陣列可被定義在存儲設備中,例如,一個用于在所述加密密鑰庫20中的每個塊。用于塊N的寄存器包含一個用于加密塊N的加密密鑰。在一些實施例中,從存儲設備16的外部無法訪問密鑰寄存器。相反,寄存器被存儲設備16單獨用來執行其操作。
[0018]加密過程本身對儲裝置16外部的用戶可以是透明的。存儲設備16使用所述塊的加密密鑰自動加密和解密數據。僅當存儲設備16從平臺10移除,以及通過其它裝置讀出時,加密數據能被看到。
[0019]當軟件要刪除塊或其它粒度時,則在加密密鑰存儲裝置20的寄存器中為該塊生成新的加密密鑰,覆蓋舊的密鑰。在一些實施方式中,新的密鑰由控制器17生成。
[0020]當存儲器陣列18上所存儲的數據仍未被修改時,它被刪除之后,由于解碼數據所必須的唯一密鑰已有效地被破壞或擦除,它對任何攻擊者來說變得毫無價值。
[0021]任何通過存儲設備16訪問已刪除數據的嘗試將導致自動的、徒勞的解密嘗試,該嘗試采用錯誤的加密密鑰,產生不可破譯的資料。
[0022]由于保存密鑰的寄存器無法從外部訪問,在一些實施方式中不能存在它的拷貝。在一些實施方式中,由于存儲器陣列18上的數據被自動加密和解密,除了存儲設備16被物理移除時,在存儲器16的外部,原始加密數據通常是不可見的。
[0023]在一個實施例中,當存儲設備16斷電時,它可以簡單地丟失所有數據,確保最高級別的安全性。這在設備持有臨時數據或存儲的數據高度敏感的情況下可能是有用的。在其它實施例中也可使用熟知的技術,以避免間歇性的斷電。
[0024]根據另一個實施例,密鑰陣列可被寫入到存儲設備16內的內部持久性存儲器中。密鑰陣列可用于使用預定義的設備特定密鑰來加密密鑰。當接通電源時,存儲設備可重新加密數據,從而致使內部持久性存儲器中的密鑰陣列的拷貝無效。在又一實施例中,其它技術可用于安全地刪除密鑰陣列的拷貝。在這種情況下,從安全地刪除整個存儲盤到安全地刪除一個比較小的存儲介質,該問題已經減少。
[0025]根據另一個實施例,密鑰陣列可以寫入到一個外部的可拆卸存儲介質中。
[0026]在一個實施例中,密鑰陣列可使用預先定義的設備,特定密鑰或使用用戶定義的密鑰進行加密。這種加密允許用戶從存儲設備中移除密鑰陣列,致使其內容對攻擊者來說毫無價值。在一些實施例中,無論是加密密鑰,還是其加密處理的數據,攻擊者均不能遠程訪問。使用Linux dd指令來規避加密的嘗試,使用錯誤的密鑰解密被刪除的數據,致使數據對攻擊者無用。
[0027]參考圖2,為讀取存儲器中的塊或其它粒度,序列讀取塊22可由軟件、固件和/或硬件來實現。在一個實施例中它可由控制器17來實現。在軟件和固件的實施方式中,它可由存儲在一個或多個非臨時性計算機可讀介質,例如磁、半導體和/或光存儲器中的計算機執行指令來實現。
[0028]首先在塊24中,通過控制器17,一個存儲器塊從存儲介質中讀出。然后,控制器17利用如塊26所示的該塊自身的加密密鑰解密該塊。最后,控制器17將已解密的數據塊28傳送到處理器12 (圖1)。
[0029]為了將一個塊寫入到存儲器陣列,可使用圖3中的序列30。序列30可由固件、硬件和/或軟件來執行。在軟件和固件的實施方式中,它可由存儲在一個或多個非臨時性計算機可讀介質,例如磁、半導體和/或光存儲器中的計算機執行指令來實現。在一個實施例中它可由控制器17來實現。
[0030]如塊32所示,要寫入的數據可從例如處理器12獲得。隨后,如塊34所示,數據由控制器17利用塊加密密鑰進行加密。因此,如塊36所示,加密的數據實際上由控制器17存儲在陣列18中。
[0031]如圖4所示的一個刪除塊序列40可由軟件、固件和/或硬件來實現。在軟件和固件的實施方式中,它可由存儲在一個或多個非臨時性計算機可讀介質,例如磁、光和/或半導體存儲器中的計算機執行指令來實現。在一個實施例中它可以由控制器17來實現。
[0032]在塊42中,序列由產生一個新的加密密鑰開始。然后將新的加密密鑰寫入到該塊的密鑰寄存器,并覆蓋先前的加密密鑰,如塊44所示。這具有防止訪問存儲裝置的結果,至少無需從平臺10的其余部分移除所述存儲裝置。
[0033]參照圖5,存儲設備16可被安裝在電路板50上。在一些實施例中,電路板50可被用于實現一個平臺,諸如個人計算機。但它也可以與多種基于處理器的設備來連接使用,包括例如筆記本電腦,蜂窩電話,移動互聯網設備,平板電腦和臺式計算機作為小部分例子提出。
[0034]電路板50可通過其封裝46固定到存儲設備16,該封裝可具有適當的互連件,如焊球、引腳等(未示出)。在一個實施例中,封裝46內可為單個集成電路48,但在其它實施例中,封裝內可提供多于一個的集成電路。例如,在一些實施例中,可為控制器17和存儲器陣列18提供單獨的集成電路。在這種情況下,控制器和存儲器陣列可以使用互連件,如通孔、電線或其它互連設備進行連接。
[0035]如圖6所示,在一些實施例中,單個集成電路48可包括用于控制器17的部分和用于存儲器陣列18的部分,因此,在一些實施例中,一單個集成電路集成了控制器和存儲器陣列。在一些實施例中,這是經濟的并使尺寸相對小。
[0036]以下條款和/或例子涉及進一步的實施例:
一個示例性的實施例是一種方法,包括使用加密密鑰來加密要存儲在存儲器中的數據;并且通過擦除加密密鑰刪除存儲器中的塊,使得如果已刪除的塊被訪問,則使用錯誤的加密密鑰將它自動解密。該方法可包括從存儲器內部加密。該方法可包括使用所述存儲器內部的控制器以刪除所述塊。該方法可包括防止對所述控制器的外部訪問。該方法可包括執行用于刪除所述存儲器內的所述塊的指令。該方法可包括在存儲器中存儲多個塊,以及為所述存儲器中的每個塊存儲加密密鑰。該方法還可包括使用將所述存儲器包圍在內的封裝內的控制器,從所述存儲器寫入和讀出。該方法可包括使用集成在同一芯片上的存儲器和控制器。該方法可包括使用戶無法訪問所述加密密鑰。該方法還可包括使加密數據在刪除后不可讀。
[0037]一個示例性的實施例可以是一種非臨時性計算機可讀介質,其存儲有使控制器執行序列的指令,該序列包括使用加密密鑰對要存儲在存儲器中的數據加密,并通過擦除加密密鑰刪除存儲器的單元,使得如果訪問被刪除的單元被訪問,則錯誤的加密密鑰被用來試圖解密。該介質還可包括從存儲器內部加密。該介質可包括使用所述存儲器內部的控制器以刪除所述單元。該介質可包括防止對所述控制器的外部訪問。該介質可包括執行用于刪除所述存儲器內的所述單元的指令。該介質還可包括在存儲器中存儲多個存儲單元,以及為所述存儲器中的每個單元存儲加密密鑰。該介質還可包括使用存儲器封裝內的控制器從所述存儲器寫入和讀出。
[0038]另一示例性的實施例是一種存儲器,包括存儲器陣列和連接到所述陣列的控制器,用于使用加密密鑰對要存儲在存儲器中的數據加密,并通過擦除加密密鑰刪除存儲器的塊,使得如果刪除的數據塊被訪問,則使用錯誤加密密鑰將它自動解密。該存儲器還可包括在所述存儲器內部的所述控制器。該存儲器可包括位于包圍所述存儲器陣列的封裝內部的所述控制器。該存儲器可包括從存儲器內部進行加密的所述控制器。該存儲器可包括防止外部訪問所述控制器的所述控制器。該存儲器可包括執行用于刪除所述存儲器內所述塊的指令的所述控制器。該存儲器可包括多個存儲器塊,并為所述存儲器內的每個塊存儲加密密鑰。該存儲器可包括集成在同一芯片上的所述控制器和所述存儲器陣列。
[0039]一個示例性的實施例是一個系統,包括處理器和連接到所述處理器的存儲器,用于使用加密密鑰對要存儲在存儲器中的數據加密,并通過擦除加密密鑰刪除存儲器塊,使得如果刪除的數據塊被訪問,使用錯誤加密密鑰將它自動解密。該系統還可包括在所述存儲器內部的所述處理器。該系統可包括從所述存儲器內部進行加密的所述處理器。該系統可包括防止外部訪問所述處理器的所述處理器。該系統還可包括執行用于刪除所述存儲器內所述塊的指令的所述處理器。
[0040]貫穿本說明書所提及的“一個實施例”或“實施例”意味著結合實施例描述的一個特定的特征、結構或特性是包含在本發明所包括的至少一種實施方式中。因此,短語“一個實施例”或“在一個實施例中”的出現不一定都指同一個實施例。此外,特定的特征、結構或特性可由所示的特定實施例之外的其它合適的形式實現,所有這樣的形式均被本申請的權利要求覆蓋。
[0041]雖然利用相對有限數量的實施例描述了本發明,本領域的技術人員將由此意識到多種的修改和變化。所附權利要求旨在覆蓋本發明的真正精神和范圍內所有這些修改和變化。
【權利要求】
1.一種方法,包括: 使用加密密鑰加密要存儲在存儲器中的數據;以及 通過擦除加密密鑰來刪除存儲器的塊,使得如果已刪除的塊被訪問,則使用錯誤的加密密鑰將它自動解密。
2.如權利要求1所述的方法,包括從存儲器內部加密。
3.如權利要求2所述的方法,包括使用所述存儲器內部的控制器刪除所述塊。
4.如權利要求3所述的方法,包括防止對所述控制器的外部訪問。
5.如權利要求4所述的方法,包括執行用于刪除所述存儲器內的所述塊的指令。
6.如權利要求1所述的方法,包括在存儲器中存儲多個塊,并為所述存儲器中的每個塊存儲加密密鑰。
7.如權利要求1所述的方法,包括使用位于包圍所述存儲器的封裝中的控制器,從所述存儲器寫入和讀出。
8.如權利要求3所述的方法,包括使用集成在同一芯片上的存儲器和控制器。
9.如權利要求1所述的方法,包括使用戶無法訪問所述加密密鑰。
10.如權利要求1所述的方法,包括使加密數據在刪除后不可讀。
11.一種或多種非臨時性計算機可讀介質,其存儲有使控制器執行如權利要求1-10所述方法的指令。
12.—種存儲器包括: 存儲器陣列;以及 耦合到所述陣列的控制器,用于使用加密密鑰對要存儲在存儲器中的數據加密,并通過擦除加密密鑰刪除存儲器的塊,使得如果已刪除的塊被訪問,則使用錯誤的加密密鑰將它自動解密。
13.如權利要求12所述的存儲器,其中,所述控制器位于所述存儲器內部。
14.如權利要求13所述的存儲器,其中,所述控制器位于包圍所述存儲器陣列的封裝內部。
15.如權利要求12所述的存儲器,所述控制器從存儲器內部進行加密。
16.如權利要求12所述的存儲器,所述控制器防止對所述控制器的外部訪問。
17.如權利要求15所述的存儲器,所述控制器執行用于刪除所述存儲器內所述塊的指令。
18.如權利要求12所述的存儲器,包括多個存儲器塊,并為所述存儲器內的每個塊存儲加密密鑰。
19.如權利要求12所述的存儲器,所述控制器和所述存儲器陣列集成在同一芯片上。
【文檔編號】G06F12/14GK104205070SQ201380004608
【公開日】2014年12月10日 申請日期:2013年9月3日 優先權日:2012年9月4日
【發明者】M·T·梅茨格爾 申請人:英特爾公司