TWI407745B - 安全與重播受保護之記憶儲存 - Google Patents

安全與重播受保護之記憶儲存 Download PDF

Info

Publication number
TWI407745B
TWI407745B TW095141241A TW95141241A TWI407745B TW I407745 B TWI407745 B TW I407745B TW 095141241 A TW095141241 A TW 095141241A TW 95141241 A TW95141241 A TW 95141241A TW I407745 B TWI407745 B TW I407745B
Authority
TW
Taiwan
Prior art keywords
data
key
protected
keys
mik
Prior art date
Application number
TW095141241A
Other languages
English (en)
Other versions
TW200805978A (en
Inventor
Rolf Blom
Christian Gehrmann
Original Assignee
Ericsson Telefon Ab L M
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ericsson Telefon Ab L M filed Critical Ericsson Telefon Ab L M
Publication of TW200805978A publication Critical patent/TW200805978A/zh
Application granted granted Critical
Publication of TWI407745B publication Critical patent/TWI407745B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/86Secure or tamper-resistant housings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Description

安全與重播受保護之記憶儲存
本發明係關於一種裝置(例如行動裝置)及方法,其用於機密性並完整性保護儲存於一可覆寫可公開存取記憶體內之資料。
行動裝置經常具有一處理系統,其具有一可信賴平台,該可信賴平台使用受保護軟體及受保護硬體以幫助保證儲存資料之機密性及完整性。現今有數種不同技術可用於在一處理器系統內機密性並完整性保護資料。該些現有技術之某些技術如下:.防篡改記憶體及處理。此類記憶體可能係一處理器晶片之一整體部分且限制該記憶體之讀寫操作,使得其係僅經由該處理器系統來執行。該記憶體還可以係受某些防篡改技術保護而無法實體存取的一外部記憶體。
.一次性唯寫記憶體。此類記憶體通常用於儲存不需要保密但應不可能更改的資料。
.密鑰儲存於完整性及機密性受保護記憶體內的處理系統。然後將此密鑰用以加密並完整性保護儲存於可覆寫可公開存取記憶體內的資料。
伴隨上述第三彈下之思路的技術問題在於攻擊者可能使用較早時間記錄的資料來替換當前記憶體資料。此攻擊類型從早期電話卡起便為人所熟知,最近已出現在使用者預付帳號中儲存使用者當前數量的用戶身份模組(SIM)卡上。大體上,當正好已將表示一給定數量之預付服務的一新值載入SIM卡時,攻擊者會記錄記憶體資料。然後,在已經使用該SIM卡之後,攻擊者將當前記錄的記憶體資料覆寫成更早記錄的記憶體資料,使得該SIM卡現在似乎具有一未使用的值。
另一範例係數位權利管理(DRM)受保護資料,其經常限制允許使用者檢視/播放的次數。在此情況下,必須儲存並完整性保護一DRM計數器。類似於SIM卡情況,該DRM計數器對於攻擊者使用在更早時間記錄的一更大DRM計數器值替換一更小當前DRM計數器值之重播攻擊較為敏感。因此,需防止企圖藉由使用先前記錄的有效記憶體資料替換當前記憶體資料來更改資訊之人的重播攻擊。本發明解決此問題及其他問題。
本發明係關於一種裝置(例如行動裝置)及方法,其可藉由使用一完整性密鑰及一加密密鑰來加密/解密儲存於一可覆寫可公開存取記憶體內之資料,經由一MAC計算來完整性保護該資料,並驗證該資料,來保護該資料不受重播攻擊。在一具體實施例中,該方法包括以下步驟:(a)驗證舊資料之完整性,該資料係使用一或多個當前密鑰(例如完整性密鑰MIK_n及可能需要的一加密密鑰MCK_n)而當前儲存於該可覆寫可公開存取記憶體內;(b)計算一或多個新密鑰(MIK_n+1及可能需要的MCK_n+1),其中各新密鑰(MIK_n+1且可能需要的MCK_n+1)係藉由使用一偽隨機函數(PRF)、一密鑰(PK)及加一的一計數器值(n+1)來計算;(c)使用該一或多個新密鑰(MIK_n+1及可能需要的MCK_n+1)保護該經驗證的舊資料及可能存在的新資料;(d)將該受保護的舊資料及可能存在的該受保護的新資料儲存於該可覆寫可公開存取記憶體內;(e)遞增一單調暫存器以具有一計數器值(n+1);及(f)從該可覆寫可公開存取記憶體抹除在步驟(a)驗證過的該舊資料。
為了對抗當前記憶體資料被舊記憶體資料替換之攻擊,需由處理系統將舊記憶體資料識別為過時。若舊記憶體資料受到完整性保護且可能使用當前保護密鑰外的密鑰加密保護,則處理系統將能夠偵測到覆寫。因而,本解決方案之基本思路涉及如下:1.可將用於產生一資料序列的一機制及控制用於鍵控目的。如何使用資料取決於所選擇的特定安全解決方案。在本文所論述之安全解決方案中,將鍵控資料分成多個部分,一部分用於產生機密性/加密保護用的密鑰而另一部分用於產生完整性保護用的密鑰。此機制及控制需要以一方式產生該資料序列,使得無法重新產生舊密鑰。
2.一種使用完整性密鑰與加密密鑰(可選)保護儲存於一可覆寫可公開存取記憶體之資料之機制。
在一具體實施例中,用於產生完整性密鑰及加密密鑰之機制係實施於一防篡改模組內。此點將保證用於產生該等密鑰的所有變數均受到保護。該等密鑰係使用一偽隨機函數(PRF)、一密鑰PK(裝置專用且儲存於該防篡改模組內)、及一單調序列(例如一計數器值)來產生。一可信賴程序控制該單調序列之步進。
使用該等密鑰來加密/解密受保護資料及完整性保護(經由一MAC計算及驗證)受保護資料係藉由可信賴軟體及可信賴硬體在一防篡改模組內執行。較佳的係在用於產生該等密鑰的相同防篡改模組內完成該些操作。否則,當在該等防篡改模組之間傳送該等密鑰時,應機密性保護該等密鑰。接著針對圖1,提供關於可實施本解決方案之裝置100之一詳細說明及關於裝置100可保護資料之方法的一逐步說明。
參見圖1,存在裝置100(例如行動裝置100)之一方塊圖,裝置100具有一防篡改模組102及一處理器104,防篡改模組102及處理器104用於機密性並完整性保護儲存於一可覆寫可公開存取記憶體108內的資料106。如所示,防篡改模組102(可信賴模組102)具有一平台密鑰儲存器110,其持有一平台密鑰(PK)、及一單調暫存器(MR)112,其持有一計數器值(n)。該PK及計數器值(n)用於在一共用PRF113(或兩個專用PRF)幫助下計算一記憶體機密性密鑰(MCK)及一記憶體完整性密鑰(MIK)。此計算如下:MCK_n=PRFc(PK,n) MIK_n=PRFi(PK,n)
在計算MCK及MIK之後,防篡改模組102實施一適當加密方法114,其使用該MCK(加密密鑰)來機密性保護資料106。此外,防篡改模組102實施一適當訊息認證碼(MAC)方法116,其使用該MIK(完整性密鑰)來完整性保護先前加密的資料,然後將該資料儲存於可覆寫可公開存取記憶體108內。一範例性MAC方法係使用SHA-1的HMAC(用於訊息認證之鍵控雜湊),其中HMAC定義如何將密鑰導入計算中。或者,可僅使用MAC方法116及MIK來完整性保護未受保護資料106且不加密將儲存於可覆寫可公開存取記憶體108內的資料。在另一替代方案中,可使用加密方法114及MCK(加密密鑰)來機密性保護已受完整性保護之資料。本文所述之範例基於資料在將其儲存於可覆寫可公開存取記憶體108內之前受到加密保護資料並然後受到完整性保護之情形。
接著提供一逐步說明來說明本解決方案可用於在一DRM_counter上防止重播攻擊之一方法。該逐步說明如下:1.防篡改模組102接收需要受保護並儲存於可覆寫可公開存取記憶體108內的未受保護資料106,在此範例中該資料係一DRM計數器(值x)。如將會瞭解的,需保護之資訊通常非DRM內容本身,而係指示允許讀取/播放DRM內容之數目的DRM計數器。
2.一旦有某些觸發事件(例如啟動、受控斷電、更新關鍵安全參數),便驗證當前儲存於可覆寫可公開存取記憶體108內之舊資料以確保其非一重播攻擊之主體。為了驗證該舊資料,防篡改模組102(使用處理器104及唯讀記憶體(ROM)碼)使用基於當前MR計數器值n的密鑰MIK_n及MCK_n來檢查受保護舊資料之MAC值(或多個值)。此時,假定驗證該舊資料之完整性。
3.防篡改模組102藉由使用當前計數器值n+1來計算新密鑰MIK_n+1及MCK_n+1。應注意,此時還未遞增MR 112。
4.防篡改模組102使用新密鑰MIK_n+1及MCK_n+1來加密/完整性保護該DRM_counter(值x)。此外,防篡改模組102使用MIK_n+1及MCK_n+1重新加密/完整性保護該經驗證的舊資料(參見步驟2)。
5.防篡改模組102將受密鑰MIK_n+1及MCK_n+1保護的舊資料儲存於可覆寫可公開存取記憶體108內。此外,將該受保護DRM_counter(值x)在可覆寫可公開存取記憶體108內儲存為DRM_counter_n+1。
6.防篡改模組102在MR 112將n遞增為n+1。一旦已遞增n,則再也沒有任何方法來擷取並使用值比當前n更小的密鑰。
7.防篡改模組102藉由使用密鑰MIK_n及MCK_n來抹除在步驟2中驗證過的舊版資料。可看出,當驗證/保護資料時,本解決方案僅允許參照「當前密鑰」(例如MIK_n及MCK_n)與「下一密鑰」(例如MIK_n+1及MCK_n+1)。如此,本解決方案之一重要方面在於使用「當前密鑰」及「下一密鑰」來執行操作且在遞增MR 112並抹除舊版受保護資料之前完成所有驗證/機密性處理。
8.攻擊者記錄加密/受完整性保護的DRM_counter_n+1。
9.因為使用者已存取DRM內容,故將DRM_counter遞減至值x-1。
10.一旦有某些觸發事件(例如啟動、受控斷電、更新關鍵安全參數),便驗證在步驟5期間儲存於可覆寫可公開存取記憶體108之舊資料以確保其非一重播攻擊之主體。為了驗證該舊資料,防篡改模組102(使用處理器104及唯讀記憶體(ROM)碼)使用基於當前MR計數器值n+1的密鑰MIK_n+1及MCK_n+1來檢查受保護舊資料之MAC值(或多個值)。此時,假定驗證該舊資料之完整性。
11.防篡改模組102藉由使用當前計數器值n+2來計算新密鑰MIK_n+2及MCK_n+2。同時應注意,此時未遞增MR112。
12.防篡改模組102使用新密鑰MIK_n+2及MCK_n+2來加密/完整性保護該DRM_counter(值x-1)。此外,防篡改模組102使用MIK_n+2及MCK_n+2加密/完整性保護該經驗證的舊資料(參見步驟10)。
13.防篡改模組102將受密鑰MIK_n+2及MCK_n+2保護的舊資料儲存於可覆寫可公開存取記憶體108內。此外,將該受保護的DRM_counter(值x-1)作為取代前者DRM_counter_n+1的DRM_counter_n+2儲存於可覆寫可公開存取記憶體108內。
14.防篡改模組102將MR 112從n+1遞增至n+2。一旦已遞增MR 112,則再也沒有任何方法來擷取並使用值比當前n+2更小的密鑰。
15.防篡改模組102藉由使用密鑰MIK_n+1及MCK_n+1來抹除在步驟10中驗證過的舊版資料。
16.攻擊者將經加密/受完整性保護的DRM_counter_n+1插入可覆寫可公開存取記憶體108內。然後,刪除加密/受完整性保護的DRM_counter_n+2。
17.一旦有某些觸發事件(例如啟動、受控斷電、更新關鍵安全參數),便驗證當前儲存於可覆寫可公開存取記憶體108之舊資料以確保其非一重播攻擊之主體。為了驗證該舊資料,防篡改模組102(使用處理器104及唯讀記憶體(ROM)碼)使用基於當前MR計數器值n+2的密鑰MIK_n+2及MCK_n+2來檢查該受保護舊資料之MAC值(或多個值)。此時,該完整性檢查失敗,因為該欺騙加密/受完整性保護的DRM_counter_n+1沒有正確的MAC。而且,若該完整性檢查針對全部記憶體108或其部分失敗,則抹除對應舊資料(在此情況下其係DRM_counter_n+1)或將其標記為無效。
本解決方案之重要部分係實現MR 112。以下係可用於實現MR 112之數個不同選項之一列表:.可將計數器n儲存於在防篡改模組102上的一受實體保護快閃記憶體、可抹除可程式化唯讀記憶體(EPROM)或電可抹除可程式化唯讀記憶體(EEPROM)內。若裝置100係一行動電話,則防篡改模組102可位於一基帶晶片上而儲存計數器n之受實體保護快閃記憶體、EPROM或EEPROM還可位於該基帶晶片上。
.可藉由向一電子熔絲/一次性寫入記憶體內寫入一值更新計數器n。
.可將計數器n儲存於一外部安全源內並從其擷取,然後受保護(加密並完整性保護)地發送至防篡改模組102。
參見圖2,提供一流程圖,其說明依據本發明用於保護儲存於可覆寫可公開存取記憶體108內之資料之一方法200之基本步驟。一有觸發事件,防篡改模組102便藉由使用當前MIK_n及可能需要的當前MCK_n來驗證儲存於可覆寫可公開存取記憶體108內的舊資料之完整性(參見步驟202)。若該完整性檢查失敗,則防篡改模組102抹除該舊資料或將該舊資料標注為無效,因為無法信賴當前儲存於可覆寫可公開存取記憶體108內的舊資料(參見步驟204)。
若通過該完整性檢查,則防篡改模組102計算一新密鑰MIK_n+1及可能需要的MCK_n+1(步驟206)。每個新密鑰MIK_n+1及可能需要的MCK_n+1係藉由使用一PRF、一密鑰(PK)及加一的一計數器值(n+1)來計算。然後防篡改模組102使用新密鑰MIK_n+1及可能需要的MCK_n+l保護該經驗證的舊資料及可能存在的新資料(步驟208)。隨後,防篡改模組102將該受保護的舊資料及可能存在的新資料儲存於可覆寫可公開存取記憶體108內(步驟210)。
防篡改模組102然後遞增/步進MR 112,使其具有一計數器值(n+1)(步驟212)。最後的計數器更新應直到已驗證該記憶體資料才發生,因為考慮到只有直到所有受保護記憶體資料在新密鑰MIK_n+1/MCK_n+1下均已受到正確保護時才可讓舊密鑰MIK_n/MCK_n過時。然後,防篡改模組102將該先前驗證的舊資料(參見步驟202)從可覆寫可公開存取記憶體108抹除掉(步驟214)。
此時,可使用一特定硬體信號來鎖定防篡改模組102,以防止任何對完整性密鑰的進一步讀取並防止對MAC的任何新計算,直到下一開機時機或下一MR更新時機(步驟216)。然而,仍可在任何需要的時候添加新資料,但需要使用該(等)當前密鑰來添加新資料。當然,需要定義解鎖當前密鑰所需的事件。否則,可能觸發一MR更新,其執行檢查舊資料有效性、添加新資料、遞增MR並保護上述所有資料。
參見圖3,存在一裝置100'(例如行動裝置100')之一方塊圖,裝置100'具有一防篡改模組102,其依據本發明之另一具體實施例機密性並完整性保護要儲存於一可覆寫可公開存取記憶體108內的資料。此裝置100'之組件與圖1所示之裝置100所使用之組件相同,包括處理器104、平台密鑰持有者110、MR 112、PRF 113、加密方法114及MAC方法116。但是,此裝置100'係設計以藉由以下方法來使管理更加簡單:按上述保護一特定資料部分,然後將該特定受保護資料部分以及所使用的MR密鑰號一起儲存於可覆寫可公開存取記憶體108內。
在此具體實施例中,防篡改模組102藉由針對每個個別受保護資料部分計算一MAC來完整性保護所有此類記憶體部分,然後其藉由在與所有受保護個別資料部分一起儲存的該等MAC上計算一MAC(顯示為MACK n 4 )來完整性保護所有受保護資料。依此方式,防篡改模組102不需要重新計算所有MAC,然後在一MR更新發生時重新加密所有資料。而且未更改的資料仍保持其舊保護。為了致動驗證,防篡改模組102需要瞭解其在最初保護該資料部分所使用的密鑰號MR,以便推導相關密鑰。而且,防篡改模組102還需驗證沒有任何資料部分曾被攻擊者交換成某些其他受保護資料。為了完成此點,防篡改模組102可計算並驗證用於完整性保護所有個別資料部分之MAC(顯示為MACK n 4 )。在此擴展形式中,應實施一政策以引導可產生哪個密鑰,例如可僅允許在一給定窗口內小於當前計數器值的密鑰。
下列係本解決方案之某些額外特徵及優點:1.該防篡改模組應係一晶片之一部分,該晶片包含記憶體及難以探查之處理能力。其應難以探查,因此難以靜態或在處理期間擷取資訊。
2.受保護的資料可讓一計數器包含一記錄,其指示認為資料有效之更新之數目。若如此情況,則在各更新期間減小此計數器值且若該值等於零,則將抹除對應的資料或標記為無效。當受保護資料係僅針對一特定數目的MR更新有效時,可使用此點。
3.本解決方案可用於輔助一韌體行動裝置軟體升級。例如,可通過空氣將行動裝置升級軟體下載到行動裝置。若當該行動裝置之使用者正在使用行動裝置時他/她不想讓升級發生,因為升級需要完全重新開機並重建行動裝置軟體。則該使用者可推遲升級以在下班時間(例如夜晚時間)發生。若此情況發生,則為了重新啟動該行動裝置,其通常需要某些秘密發信輸入,例如一PIN(個人識別號碼)。然後必須預先將該升級觸發發信值提供給該行動裝置,以便使該行動裝置在下一開機事件時進入升級模式。因此,需要將該觸發發信儲存並保護於該行動裝置非揮發性記憶體內。在此情況下,該受保護的儲存發信應僅一次(即在該行動裝置之下一啟動時)有效。
4.應瞭解,本文所述之處理器104可藉由使用專用電路或電路系統(例如互連以執行一專用功能之離散邏輯閘極)、程式指令或二者之一組合來依據本解決方案執行各種動作。
儘管附圖及前述詳細說明中已說明本發明之二具體實施例,但應明白本發明不限於所揭示的該等具體實施例,而可具有許多重新配置、修改及取代而不脫離隨附申請專利範圍所界定並所述之本發明之範疇。
100...裝置/行動裝置
100'...裝置/行動裝置
102...防篡改模組/可信賴模組
104...處理器
106...資料
108...可覆寫可公開存取記憶體
110...平台密鑰儲存器/平台密鑰持有者
112...單調暫存器(MR)
113...PRF
114...加密方法
116...訊息認證碼(MAC)方法
200...方法
結合該等附圖,參考上面詳細說明可更全面地理解本發明,其中:圖1係一裝置(例如行動裝置)之一方塊圖,該裝置具有一防篡改模組,其依據本發明機密性並完整性保護儲存於一可覆寫可公開存取記憶體內之資料;圖2係依據本發明用於保護儲存於一可覆寫可公開存取記憶體內之資料之一方法之基本步驟之一流程圖;以及圖3係一裝置(例如行動裝置)之一方塊圖,該裝置具有一防篡改模組,其依據本發明之另一具體實施例機密性並完整性保護儲存於一可覆寫可公開存取記憶體內之資料。
100...裝置/行動裝置
102...防篡改模組/可信賴模組
104...處理器
106...資料
108...可覆寫可公開存取記憶體
110...平台密鑰儲存器/平台密鑰持有者
112...單調暫存器(MR)
113...PRF
114...加密方法
116...訊息認證碼(MAC)方法

Claims (16)

  1. 一種用於避免儲存於一可覆寫可公開存取記憶體內之資料遭受一重播攻擊(replay attack)之方法,該方法包含以下步驟:產生一或多個密鑰(MIK_n);使用該一或多個密鑰(MIK_n)來保護該資料;將該受保護資料儲存於該可覆寫可公開存取記憶體內;以及該產生步驟進一步包括:藉由使用一偽隨機函數(PRF)、一密鑰(PK)及一單調暫存器計數器值(n),在一防篡改模組內產生每個密鑰(MIK_n);以及在該防篡改模組內產生每個密鑰(MIK_n),使得僅可能產生對應於該單調暫存器之該當前計數器值(n)之該一或多個密鑰及對應於該單調暫存器之一隨後計數器值之一或多個新密鑰。
  2. 如請求項1之方法,其中該一或多個密鑰包括:一完整性密鑰(MIK_n),其係藉由使用該偽隨機函數(PRF)、該密鑰(PK)及該單調暫存器計數器值(n)來產生;以及一加密密鑰(MCK_n),可能需要時其係藉由使用相同偽隨機函數(PRF)或一不同偽隨機函數(PRF)、該密鑰(PK)及該單調暫存器計數器值(n)來產生。
  3. 如請求項1之方法,其中該保護步驟包括:藉由使用該一或多個新密鑰向該資料應用一訊息認證碼 (MAC)方法來完整性保護該資料。
  4. 如請求項3之方法,其中該資料係加密資料。
  5. 如請求項1之方法,其中該保護步驟包括:藉由使用該一或多個密鑰(MIK_n)向該資料應用一加密方法來機密性保護該資料。
  6. 如請求項1之方法,其中該儲存步驟包括將該單調暫存器計數器值(n)與該受保護資料一起儲存。
  7. 一種用於避免儲存於一可覆寫可公開存取記憶體內之資料遭受一重播攻擊之方法,該方法包含以下步驟:藉由使用一或多個當前密鑰(MIK_n),驗證儲存於該可覆寫可公開存取記憶體內之舊資料之完整性其中該一或多個當前密鑰(MIK_n)係藉由使用一偽隨機函數(PRF)、一密鑰(PK)及一單調暫存器之一當前計數器值(n)來計算;計算一或多個新密鑰,其中每個新密鑰係藉由使用一偽隨機函數(PRF)、一密鑰(PK)及加一的一計數器值來計算;使用該一或多個新密鑰保護該經驗證的舊資料及可能存在的新資料;將該受保護的舊資料及可能存在的新資料儲存於該可覆寫可公開存取記憶體內;隨後遞增該單調暫存器以具有一加一的計數器值;以及從該可覆寫可公開存取記憶體內抹除該經驗證的舊資料。
  8. 如請求項7之方法,其中若無法驗證該舊資料之完整性,則: 抹除該舊資料;或標記該舊資料為無效。
  9. 如請求項7之方法,其中該一或多個新密鑰包括:一完整性密鑰(MIK_n),其係藉由使用該偽隨機函數(PRF)、該密鑰(PK)及該加一的計數器值來產生;以及一加密密鑰(MCK_n),可能需要時其係藉由使用相同偽隨機函數(PRF)或一不同偽隨機函數(PRF)、該密鑰(PK)及該加一的計數器值(n+1)來產生。
  10. 如請求項7之方法,其中該保護步驟包括:藉由使用該一或多個新密鑰向該資料應用一訊息認證碼(MAC)方法,以完整性保護該舊資料及可能存在的新資料。
  11. 如請求項10之方法,其中該受保護資料係加密資料。
  12. 如請求項7之方法,其中該保護步驟包括:藉由使用該一或多個當前密鑰(MIK_n)向該資料應用一加密方法,機密性保護該舊資料及可能存在的新資料。
  13. 如請求項7之方法,其中該受保護資料包含一DRM計數器及/或一SIM卡預付數量。
  14. 一種資料保護裝置,其包含:一防篡改模組;一可覆寫可公開存取記憶體;且該防篡改模組包括一處理器及受保護軟體,該軟體經調適以執行如請求項7至12中任一項之方法中之該等步驟。
  15. 如請求項14之裝置,其中該防篡改模組在一受實體保護記憶體、一EPROM、一EEPROM或一電子熔絲內儲存該 單調暫存器。
  16. 一種資料保護裝置,其包含:一防篡改模組;一可覆寫可公開存取記憶體;以及該防篡改模組包括一處理器及受保護軟體,該軟體經調適以執行如請求項1之方法中之該等步驟。
TW095141241A 2005-12-01 2006-11-08 安全與重播受保護之記憶儲存 TWI407745B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/275,015 US7681050B2 (en) 2005-12-01 2005-12-01 Secure and replay protected memory storage

Publications (2)

Publication Number Publication Date
TW200805978A TW200805978A (en) 2008-01-16
TWI407745B true TWI407745B (zh) 2013-09-01

Family

ID=38024437

Family Applications (1)

Application Number Title Priority Date Filing Date
TW095141241A TWI407745B (zh) 2005-12-01 2006-11-08 安全與重播受保護之記憶儲存

Country Status (5)

Country Link
US (1) US7681050B2 (zh)
EP (1) EP1958114B1 (zh)
JP (1) JP2009517939A (zh)
TW (1) TWI407745B (zh)
WO (1) WO2007062941A2 (zh)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2895608B1 (fr) * 2005-12-23 2008-03-21 Trusted Logic Sa Procede pour la realisation d'un compteur securise sur un systeme informatique embarque disposant d'une carte a puce
US8769311B2 (en) 2006-05-31 2014-07-01 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8626726B2 (en) 2006-05-31 2014-01-07 International Business Machines Corporation Method and system for transformation of logical data objects for storage
US8209550B2 (en) * 2007-04-20 2012-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for protecting SIMLock information in an electronic device
US20100005317A1 (en) * 2007-07-11 2010-01-07 Memory Experts International Inc. Securing temporary data stored in non-volatile memory using volatile memory
AU2008203802A1 (en) * 2007-08-20 2009-03-12 Aristocrat Technologies Australia Pty Limited A method of gaming, a gaming system and a game controller
IL187036A0 (en) * 2007-10-30 2008-02-09 Sandisk Il Ltd Re-flash protection for flash memory
US9418220B1 (en) 2008-01-28 2016-08-16 Hewlett Packard Enterprise Development Lp Controlling access to memory using a controller that performs cryptographic functions
FR2930065A1 (fr) * 2008-04-11 2009-10-16 Thales Sa Procede de securisation de donnees d'une carte a puce
CN101729675B (zh) * 2009-12-24 2014-01-01 中兴通讯股份有限公司 基于彩信业务的适配方法及适配器装置
JP5159849B2 (ja) * 2010-09-24 2013-03-13 株式会社東芝 メモリ管理装置及びメモリ管理方法
US8468365B2 (en) * 2010-09-24 2013-06-18 Intel Corporation Tweakable encryption mode for memory encryption with protection against replay attacks
EP2450817A1 (en) * 2010-11-08 2012-05-09 Thomson Licensing Electronic component with time-limited use
EP2503482A1 (en) * 2011-03-23 2012-09-26 ST-Ericsson SA Electronic device with flash memory component
US8819448B2 (en) * 2011-04-29 2014-08-26 Georgetown University Method and system for managing information on mobile devices
KR101577886B1 (ko) * 2011-06-29 2015-12-15 인텔 코포레이션 무결성 검사 및 리플레이 공격들에 대한 보호를 이용하는 메모리 암호화를 위한 방법 및 장치
US8819455B2 (en) * 2012-10-05 2014-08-26 Intel Corporation Parallelized counter tree walk for low overhead memory replay protection
US9076018B2 (en) * 2012-12-19 2015-07-07 Clevx, Llc Encryption key generation in encrypted storage devices
US9992017B2 (en) 2013-06-28 2018-06-05 Telefonaktiebolaget L M Ericsson (Publ) Encrypting and storing data
US9501668B2 (en) * 2013-09-25 2016-11-22 Intel Corporation Secure video ouput path
FR3012234B1 (fr) * 2013-10-23 2017-02-24 Proton World Int Nv Protection de l'execution d'un algorithme contre des attaques par canaux caches
FR3016064B1 (fr) 2013-12-30 2017-03-31 Thales Sa Procede d'acces a des donnees stockees de maniere securisee dans une memoire non securisee, avec protection en integrite temporelle desdites donnees
US10230531B2 (en) 2014-10-23 2019-03-12 Hewlett Packard Enterprise Development Lp Admissions control of a device
US10715332B2 (en) 2014-10-30 2020-07-14 Hewlett Packard Enterprise Development Lp Encryption for transactions in a memory fabric
US10699031B2 (en) 2014-10-30 2020-06-30 Hewlett Packard Enterprise Development Lp Secure transactions in a memory fabric
US10042780B2 (en) * 2014-11-07 2018-08-07 Synopsys, Inc. Integrity protection for data storage
WO2016071743A1 (en) * 2014-11-07 2016-05-12 Elliptic Technologies Inc. Integrity protection for data storage
US9852301B2 (en) * 2014-12-24 2017-12-26 Intel Corporation Creating secure channels between a protected execution environment and fixed-function endpoints
JP6420176B2 (ja) * 2015-02-26 2018-11-07 ルネサスエレクトロニクス株式会社 通信システムおよび通信装置
US10185842B2 (en) 2015-03-18 2019-01-22 Intel Corporation Cache and data organization for memory protection
US9710675B2 (en) 2015-03-26 2017-07-18 Intel Corporation Providing enhanced replay protection for a memory
US9798900B2 (en) 2015-03-26 2017-10-24 Intel Corporation Flexible counter system for memory protection
US9792229B2 (en) * 2015-03-27 2017-10-17 Intel Corporation Protecting a memory
US9934412B2 (en) * 2015-06-23 2018-04-03 Microsoft Technology Licensing, Llc Implementing replay protected storage
DE102016205289A1 (de) * 2016-03-31 2017-10-05 Siemens Aktiengesellschaft Verfahren, Prozessor und Gerät zur Integritätsprüfung von Nutzerdaten
US10126960B2 (en) 2016-05-10 2018-11-13 Qualcomm Incorporated Fuse-based anti-replay mechanism
US10528485B2 (en) * 2016-09-30 2020-01-07 Intel Corporation Method and apparatus for sharing security metadata memory space
US10880082B2 (en) 2017-10-19 2020-12-29 Hewlett Packard Enterprise Development Lp Rekeying keys for encrypted data in nonvolatile memories
US11082231B2 (en) * 2017-12-29 2021-08-03 Intel Corporation Indirection directories for cryptographic memory protection
US10838773B2 (en) * 2018-03-30 2020-11-17 Intel Corporation Techniques for dynamic resource allocation among cryptographic domains
US11088846B2 (en) * 2019-03-28 2021-08-10 Intel Corporation Key rotating trees with split counters for efficient hardware replay protection
US11575521B2 (en) 2019-06-28 2023-02-07 Intel Corporation Fast XMSS signature verification and nonce sampling process without signature expansion
US11218320B2 (en) 2019-06-28 2022-01-04 Intel Corporation Accelerators for post-quantum cryptography secure hash-based signing and verification
US11860999B2 (en) * 2021-03-31 2024-01-02 Microsoft Technology Licensing, Llc Fuse based replay protection with aggressive fuse usage and countermeasures for fuse voltage cut attacks
US11302411B1 (en) 2021-03-31 2022-04-12 Microsoft Technology Licensing, Llc Fuse based replay protection with dynamic fuse usage and countermeasures for fuse voltage cut attacks

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757919A (en) * 1996-12-12 1998-05-26 Intel Corporation Cryptographically protected paging subsystem
TW589820B (en) * 2001-06-13 2004-06-01 Corrent Corp Apparatus and method for a hash processing system using multiple hash storage areas
TW595183B (en) * 2003-03-14 2004-06-21 Acer Labs Inc Crypto-system with an inverse key evaluation circuit
TWI224455B (en) * 2001-01-19 2004-11-21 Mitake Data Co Ltd End-to-end encryption procedure and module of M-commerce WAP data transport layer
TWI225355B (en) * 2001-06-13 2004-12-11 Corrent Corp Method and apparatus for creating a message digest using a multiple round one-way hash algorithm

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07191836A (ja) * 1993-12-27 1995-07-28 Canon Inc 基本動作プログラムのアップバージョンチェック装置
US7194092B1 (en) * 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
DE10010497B4 (de) 1999-03-03 2020-06-10 Sony Corporation Wiedergabegerät und Wiedergabeverfahren
US7162452B1 (en) 1999-03-25 2007-01-09 Epstein Michael A Key distribution via a memory device
EP1063811B1 (en) 1999-06-22 2008-08-06 Hitachi, Ltd. Cryptographic apparatus and method
EP1076279A1 (en) 1999-08-13 2001-02-14 Hewlett-Packard Company Computer platforms and their methods of operation
JP3644320B2 (ja) * 1999-09-17 2005-04-27 日本電気株式会社 制御コード読み込みシステム
WO2001033317A1 (en) 1999-10-29 2001-05-10 Koninklijke Philips Electronics N.V. Assuring data integrity via a secure counter
US6836853B1 (en) * 1999-12-31 2004-12-28 Intel Corporation Non-volatile memory based monotonic counter
AU2001241972A1 (en) * 2000-03-02 2001-09-12 Tivo, Inc. Conditional access system and method for prevention of replay attacks
US7043636B2 (en) * 2000-09-26 2006-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Data integrity mechanisms for static and dynamic data
US6832317B1 (en) * 2001-05-10 2004-12-14 Advanced Micro Devices, Inc. Personal computer security mechanism
WO2002095748A2 (en) * 2001-05-22 2002-11-28 Koninklijke Philips Electronics N.V. Record carrier with hidden channel
JP2003032244A (ja) * 2001-07-18 2003-01-31 Nec Corp ストリーム暗号装置
US20030093695A1 (en) 2001-11-13 2003-05-15 Santanu Dutta Secure handling of stored-value data objects
US7421579B2 (en) * 2002-06-28 2008-09-02 Microsoft Corporation Multiplexing a secure counter to implement second level secure counters
US7624272B2 (en) * 2003-03-31 2009-11-24 Intel Corporation Platform information for digital signatures
AU2004258523B2 (en) 2003-07-07 2009-12-10 Irdeto B.V. Reprogrammable security for controlling piracy and enabling interactive content
US7421079B2 (en) * 2003-12-09 2008-09-02 Northrop Grumman Corporation Method and apparatus for secure key replacement
US20050228993A1 (en) * 2004-04-12 2005-10-13 Silvester Kelan C Method and apparatus for authenticating a user of an electronic system
US7364087B2 (en) * 2004-06-24 2008-04-29 Intel Corporation Virtual firmware smart card
JP4490192B2 (ja) * 2004-07-02 2010-06-23 株式会社エヌ・ティ・ティ・ドコモ マルチタスク実行システム
US20060198515A1 (en) * 2005-03-03 2006-09-07 Seagate Technology Llc Secure disc drive electronics implementation
US20060271796A1 (en) * 2005-05-25 2006-11-30 Kaimal Biju R Method and system for protecting information stored in an electronic device against backup and restore attack
US8806224B2 (en) * 2005-06-28 2014-08-12 Intel Corporation Low cost trusted platform
US7809957B2 (en) * 2005-09-29 2010-10-05 Intel Corporation Trusted platform module for generating sealed data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757919A (en) * 1996-12-12 1998-05-26 Intel Corporation Cryptographically protected paging subsystem
TWI224455B (en) * 2001-01-19 2004-11-21 Mitake Data Co Ltd End-to-end encryption procedure and module of M-commerce WAP data transport layer
TW589820B (en) * 2001-06-13 2004-06-01 Corrent Corp Apparatus and method for a hash processing system using multiple hash storage areas
TWI225355B (en) * 2001-06-13 2004-12-11 Corrent Corp Method and apparatus for creating a message digest using a multiple round one-way hash algorithm
TW595183B (en) * 2003-03-14 2004-06-21 Acer Labs Inc Crypto-system with an inverse key evaluation circuit

Also Published As

Publication number Publication date
EP1958114A2 (en) 2008-08-20
JP2009517939A (ja) 2009-04-30
US7681050B2 (en) 2010-03-16
EP1958114B1 (en) 2017-12-06
WO2007062941A2 (en) 2007-06-07
WO2007062941A3 (en) 2007-07-26
US20070130470A1 (en) 2007-06-07
TW200805978A (en) 2008-01-16

Similar Documents

Publication Publication Date Title
TWI407745B (zh) 安全與重播受保護之記憶儲存
EP2115655B1 (en) Virtual secure on-chip one time programming
TWI468971B (zh) 安全軟體下載
US11018847B2 (en) Device keys protection
KR100851631B1 (ko) 보안 모드 제어 메모리
US9390264B2 (en) Hardware-based stack control information protection
CN111819561B (zh) 集成电路数据保护
CN101308538B (zh) 检查固件完整性的方法和设备
CN1795471B (zh) 安全性密钥生成方法
JP2004295271A (ja) カード及びパスコード生成器
JP2008072717A (ja) 埋込認証を有するハードディスク・ストリーミング暗号操作
JP2003536154A (ja) 電子チップ搭載システム、特にチップカードのメモリ内での敏感データの安全化保存方法と、その方法を実施する搭載システム
JP2005260676A (ja) セキュリティ装置、情報処理装置、セキュリティ装置の制御方法、情報処理装置の制御方法、該制御方法を実行させるための装置実行可能なプログラムおよびチケット・システム
TW200404209A (en) Protection against memory attacks following reset
US6101605A (en) Method and apparatus for performing a secure operation
US9805186B2 (en) Hardware protection for encrypted strings and protection of security parameters
JP2008033512A (ja) セキュリティチップ及びプラットフォーム
KR102466866B1 (ko) 데이터의 검증 방법
US20060075254A1 (en) Smart card functionality from a security co-processor and symmetric key in ROM
US20170149561A1 (en) Method and system for identifying manipulation of data records
US20240080193A1 (en) Counter integrity tree
KR101054075B1 (ko) 보호키 사용 제한 방법 및 장치
JP2006107305A (ja) データ記憶装置
Goh et al. A trusted platform module based anti-forensics system
JP4580030B2 (ja) セキュアデバイス

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees