基于安全參數(shù)的工作安全密鑰的產(chǎn)生的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明大體上涉及電子設(shè)備,且更具體來說,涉及用于在電子裝置上提供安全性的技術(shù)。
【背景技術(shù)】
[0002]電子裝置(例如,蜂窩電話或智能手機)通?;诳刂蒲b置上的硬件的操作且支持裝置的各種功能的軟件來操作。安全機制(例如,安全啟動)可用于確保僅已授權(quán)用于裝置的軟件可在裝置上執(zhí)行。然而,在激活裝置上的安全機制之前,裝置可易受到惡意攻擊(例如,在制造期間)。在此易受損時間段期間,未經(jīng)授權(quán)的軟件可被惡意地加載到裝置上并且通過裝置執(zhí)行以訪問裝置上的安全信息(例如,安全密鑰)及/或使用安全信息操縱數(shù)據(jù)。.
【發(fā)明內(nèi)容】
[0003]本文揭示用于提高電子裝置的安全性的技術(shù)。在本發(fā)明的方面中,裝置的安全性可通過基于所述裝置的硬件秘密密鑰及至少一個安全參數(shù)產(chǎn)生工作密鑰來提高。所述工作密鑰(而不是所述硬件秘密密鑰)可用于在裝置上執(zhí)行安全功能(例如,對數(shù)據(jù)進行加密及解密)。
[0004]在示例性設(shè)計中,可基于裝置的至少一個安全參數(shù)及秘密密鑰(例如)通過密鑰導出函數(shù)產(chǎn)生工作密鑰。所述至少一個安全參數(shù)可與將在所述裝置上認證的軟件及/或所述裝置的安全性的其它方面有關(guān)??苫诠ぷ髅荑€對所述裝置執(zhí)行至少一個安全功能。舉例來說,所述工作密鑰可用于對所述裝置的數(shù)據(jù)進行加密、標志、解密或驗證。所述工作密鑰可由所述軟件直接或間接用于所述至少一個安全功能。
[0005]所述至少一個安全參數(shù)可控制所述裝置的安全性的各個方面。舉例來說,所述至少一個安全參數(shù)可確定是否授權(quán)所述軟件在所述裝置上執(zhí)行、是否對所述軟件授權(quán)至少一個操作功能等。在一個設(shè)計中,所述至少一個安全參數(shù)可包含用于確定是否授權(quán)所述軟件用于所述裝置的公共密鑰。所述公共密鑰可對應(yīng)于用于標志所述軟件的私有密鑰。所述至少一個安全參數(shù)還可包括其它類型的信息。
[0006]下文進一步描述本發(fā)明的各種方面及特征。
【附圖說明】
[0007]圖1展示無線裝置的方框圖。
[0008]圖2展示無線裝置的示范性制造過程。
[0009]圖3A展示用于存儲關(guān)于無線裝置的安全信息的過程。
[0010]圖3B展示用于執(zhí)行無線裝置的安全啟動的過程。
[0011]圖4展示基于硬件秘密密鑰對數(shù)據(jù)進行加密及解密的過程。
[0012]圖5展示基于工作密鑰對數(shù)據(jù)進行加密及解密的過程。
[0013]圖6展示用于提供裝置的安全性的過程。
【具體實施方式】
[0014]本文中揭示的安全密鑰產(chǎn)生技術(shù)可用于各種電子裝置,例如,無線通信裝置、手持式裝置、游戲裝置、計算裝置、消費型電子裝置、計算機等。為了清楚起見,下文描述用于無線通信裝置的技術(shù)。
[0015]圖1展示能夠?qū)嵤┍疚闹薪沂镜陌踩荑€產(chǎn)生技術(shù)的無線通信裝置100的示范性設(shè)計的方框圖。無線裝置100可為蜂窩電話、智能手機、平板計算機、無線調(diào)制解調(diào)器、個人數(shù)字助理(PDA)、手持式裝置、膝上型計算機、智能本、上網(wǎng)本、無繩電話、無線本地環(huán)路(WLL)站、藍牙裝置等。無線裝置100可支持與一或多個無線通信系統(tǒng)的雙向通信。
[0016]對于數(shù)據(jù)發(fā)射,數(shù)字模塊120可處理(例如,編碼及調(diào)制)待發(fā)射的數(shù)據(jù)并且向發(fā)射器(TMTR) 114提供輸出基帶信號。發(fā)射器114可放大、過濾及上變頻輸出基帶信號以產(chǎn)生可經(jīng)由天線112發(fā)射到基站的輸出射頻(RF)信號。
[0017]對于數(shù)據(jù)接收,天線112可從基站及/或其它發(fā)射器站接收信號并且可向接收器(RCVR) 116提供接收到的RF信號。接收器116可將接收到的RF信號從RF下變頻至基帶、過濾及放大經(jīng)下變頻信號并且向數(shù)字模塊120提供輸入基帶信號。數(shù)字模塊120可處理(例如,解調(diào)及解碼)輸入基帶信號以恢復發(fā)送到無線裝置100的數(shù)據(jù)。
[0018]數(shù)字模塊120可包含各種處理、接口及存儲器單元以支持無線裝置100的數(shù)字處理。在圖1中展示的設(shè)計中,數(shù)字模塊120包含調(diào)制解調(diào)器處理器122、中央處理單元(CPU)/精簡指令集計算機(RISC)處理器124、主控制器126、內(nèi)部存儲器130、安全存儲器140、存儲器控制器148,及輸入/輸出(I/O)控制器158,所有這些裝置可經(jīng)由一或多個數(shù)據(jù)總線160彼此通信。
[0019]調(diào)制解調(diào)器處理器122可執(zhí)行對數(shù)據(jù)發(fā)射及接收的處理,例如,編碼、調(diào)制、解調(diào)、解碼等。CPU/RISC處理器124可對無線裝置100執(zhí)行通用處理,例如,對音頻、視頻、圖形及/或其它應(yīng)用程序的處理。主控制器126可指導數(shù)字模塊120內(nèi)的各種單元的操作。內(nèi)部存儲器130可存儲由數(shù)字模塊120內(nèi)的處理器及控制器使用的軟件132及/或數(shù)據(jù)。存儲器130可實施有靜態(tài)隨機存取存儲器(SRAM)或其它類型的存儲器。
[0020]安全存儲器140可存儲安全密鑰142、安全參數(shù)144、啟動代碼146及/或其它安全信息。安全密鑰142可用于無線裝置100上的安全功能,例如,以對無線裝置100發(fā)送的數(shù)據(jù)進行加密、對發(fā)送待無線裝置100的經(jīng)加密數(shù)據(jù)進行解密、認證被加載到內(nèi)部存儲器130中的軟件等。安全參數(shù)144可控制與無線裝置100的安全性有關(guān)的各個方面。啟動代碼146可執(zhí)行安全啟動以認證被加載到無線裝置100上的軟件。存儲器140可實施有只讀存儲器(R0M)、一次性可編程(OTP)元件,及/或其它類型的存儲器。
[0021]存儲器控制器148可促進數(shù)據(jù)在外部存儲器150與數(shù)字模塊120之間的傳送。夕卜部存儲器150可為數(shù)字模塊120內(nèi)的處理單元提供大容量存儲裝置。舉例來說,存儲器150可存儲可被加載到數(shù)字模塊120中用于執(zhí)行的軟件152、數(shù)據(jù)等。存儲器150可包括(i)大容量非易失性存儲器,例如,NAND閃存及/或NOR閃存存儲器、(ii)大容量易失性存儲器,例如,同步動態(tài)隨機存取存儲器(SDRAM)或動態(tài)隨機存儲器(DRAM),及/或(iii)其它類型的存儲器。I/O控制器158可允許無線裝置100與安全服務(wù)器及/或其它實體通信。
[0022]圖1展示數(shù)字模塊120的示范性設(shè)計。一般來說,數(shù)字模塊120可包含任何數(shù)目的處理、接口及存儲器單元。數(shù)字模塊120還可實施有一或多個數(shù)字信號處理器(DSP)、微處理器、RISC處理器等。可在一或多個專用集成電路(ASIC)及/或其它集成電路(IC)上實施數(shù)字模塊120。
[0023]電子裝置,例如,無線裝置100通常經(jīng)過一系列制造步驟。在一或多個制造步驟期間電子裝置可易受安全攻擊。
[0024]圖2展示用于無線裝置100 (或任何電子裝置)的示范性制造過程200。密鑰提供實體可安全地提供無線裝置100上的硬件(Hff)秘密密鑰(步驟I)。密鑰提供實體可為用于無線裝置100 (如圖2中展示)中的IC芯片(例如,ASIC)的集成電路(IC)芯片產(chǎn)品或一些其它實體??蓪⒂布孛苊荑€存儲在無線裝置100上的安全存儲器140中。
[0025]裝置制造商可能在對所制造裝置的接入無法僅限于可信員工的不安全制造環(huán)境中制造或構(gòu)建無線裝置100。裝置制造商可為原始裝置制造商(ODM)(如圖2中展示)、原始設(shè)備制造商(0ΕΜ),或構(gòu)建、組裝及提供無線裝置100的任何實體。裝置制造商通常加載軟件、加載安全參數(shù)及啟用無線裝置100上的安全功能(步驟2)。
[0026]安全服務(wù)器可使用硬件秘密密鑰提供具有秘密數(shù)據(jù)的無線裝置100 (步驟3)。通常在安全設(shè)施中執(zhí)行安全數(shù)據(jù)提供以將秘密數(shù)據(jù)加載到無線裝置100上。對于安全數(shù)據(jù)提供,安全服務(wù)器可使用硬件秘密密鑰與無線裝置100安全地交換數(shù)據(jù)??蓪⑺峁┑拿孛軘?shù)據(jù)存儲在無線裝置100上的安全存儲器140中。
[0027]如圖2中展示,在制造過程期間可將安全參數(shù)加載到無線裝置100上。安全參數(shù)可控制無線裝置100上的安全性的各個方面并且可包含以下項中的一或多者:
[0028]?與裝置的信任根(RoT)有關(guān)的信息,
[0029]籲控制哪個軟件可在裝置上執(zhí)行及/或軟件