国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于硬件重置保護(hù)的方法和裝置的制作方法

      文檔序號(hào):6593114閱讀:212來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):用于硬件重置保護(hù)的方法和裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明通常涉及計(jì)算機(jī)安全的領(lǐng)域。
      背景技術(shù)
      重置是在計(jì)算中使用的機(jī)制,用以通過(guò)受控的方式使計(jì)算設(shè)備進(jìn)入初始狀態(tài)或正 常狀況。出于許多原因,這可能是期望的。例如,計(jì)算設(shè)備的狀態(tài)可能變得未知,計(jì)算設(shè)備 可能變得無(wú)響應(yīng),或者重置是使處理器返回預(yù)定狀態(tài)的有利方法。作為重置的結(jié)果,可以使系統(tǒng)寄存器恢復(fù)到預(yù)定(例如,缺省)狀況。還可以重新 初始化系統(tǒng)時(shí)鐘(例如,本地振蕩器)。重置可以例如由用戶輸入或者通過(guò)附連設(shè)備從外部激活。計(jì)算設(shè)備可以例如,具 有重置引腳或者重置按鈕,可以借助于它們激活外部重置。重置還可以由內(nèi)部機(jī)制發(fā)起。計(jì)算設(shè)備可以通過(guò)軟件支持重置命令。在系統(tǒng)崩潰 或掛起的事件中,看門(mén)狗定時(shí)器可能期滿,觸發(fā)重置。

      發(fā)明內(nèi)容
      具有用于接收外部重置命令的重置端口的微處理器可以具有重置轉(zhuǎn)向電路,其可 以被選擇性地使能。微處理器可以在開(kāi)放模式(例如,缺省狀態(tài))或安全模式下操作。在 安全模式下敏感信息可能被記錄在易受攻擊的存儲(chǔ)區(qū)域中。當(dāng)微處理器在開(kāi)放模式下操作 時(shí),可以禁止重置轉(zhuǎn)向電路,使得外部重置請(qǐng)求立即觸發(fā)硬件重置。當(dāng)微處理器在安全模式 下操作時(shí),重置轉(zhuǎn)向電路可以被使能以使外部重置請(qǐng)求轉(zhuǎn)向中斷,其可以觸發(fā)軟件代碼的 執(zhí)行。該軟件代碼可以例如,執(zhí)行安全系統(tǒng)清理子程序以在重置之前擦除易受攻擊的存儲(chǔ) 區(qū)域。在一些方面,本發(fā)明涉及一種裝置,其包括重置端口、狀態(tài)機(jī)、存儲(chǔ)器和重置轉(zhuǎn)向 電路。重置端口被配置為接收重置信號(hào)。狀態(tài)機(jī)可以在多個(gè)模式中的任何模式下操作,該 多個(gè)模式包括安全模式。存儲(chǔ)器被配置為存儲(chǔ)安全系統(tǒng)清理子程序。當(dāng)狀態(tài)機(jī)將在安全模 式下操作時(shí),重置轉(zhuǎn)向電路被使能。重置轉(zhuǎn)向電路被配置為,當(dāng)在重置端口上接收到重置信 號(hào)時(shí),初始化安全系統(tǒng)清理子程序的執(zhí)行。在另一方面,本發(fā)明涉及一種操作微處理器的方法。該方法包括接收外部重置 命令;以及選擇性地使外部重置命令從觸發(fā)硬件重置轉(zhuǎn)向到觸發(fā)安全系統(tǒng)清理子程序的執(zhí) 行。該轉(zhuǎn)向被選擇為當(dāng)微處理器在需要針對(duì)微處理器資源的安全訪問(wèn)的安全模式下操作時(shí) 被使能,并且轉(zhuǎn)向被選擇為當(dāng)微處理器在開(kāi)放模式下操作時(shí)被禁止。在另一方面,本發(fā)明涉及一種微處理器,其包括重置端口、存儲(chǔ)器區(qū)域、安全系統(tǒng) 清理模塊和重置轉(zhuǎn)向電路。重置端口被配置為接收重置信號(hào)。存儲(chǔ)器區(qū)域被配置為存儲(chǔ)安 全信息。安全系統(tǒng)清理模塊被配置為從存儲(chǔ)器區(qū)域擦除安全信息。重置轉(zhuǎn)向模塊被配置為, 當(dāng)微處理器處于保證對(duì)微處理器資源的安全訪問(wèn)的安全模式時(shí),在使能狀態(tài)下操作。重置 轉(zhuǎn)向模塊被配置為,在使能狀態(tài)下,當(dāng)重置端口接收到重置信號(hào)時(shí),觸發(fā)安全系統(tǒng)清理模塊的執(zhí)行。在又一方面,本發(fā)明涉及一種保護(hù)處理器中的信息的方法。該方法包括如下動(dòng)作 (a)接收硬件重置觸發(fā);(b)在動(dòng)作(a)之后,激活軟件中斷;(c)在動(dòng)作(b)之后,從處理 器的存儲(chǔ)區(qū)域擦除信息;以及(d)在動(dòng)作(C)之后,通過(guò)執(zhí)行處理器的重置來(lái)服務(wù)于硬件重 置觸發(fā)。


      當(dāng)結(jié)合附圖閱讀以下詳細(xì)描述時(shí),將更好地理解本發(fā)明及其實(shí)施例。在附圖中,元 件不一定依比例繪制。通常,多個(gè)圖中出現(xiàn)的相同元件由相同的附圖標(biāo)記表示。在附圖中圖1是根據(jù)一些實(shí)施例的微處理器的框圖;圖2是根據(jù)一些實(shí)施例的微處理器的框圖;圖3是安全狀態(tài)機(jī)的示圖;圖4是根據(jù)一些實(shí)施例的微處理器的功能框圖;圖5A是根據(jù)一些實(shí)施例的方法的框圖;圖5B是根據(jù)一些實(shí)施例的方法的框圖;圖6A是根據(jù)一些實(shí)施例的重置轉(zhuǎn)向電路的邏輯圖;圖6B是根據(jù)一些實(shí)施例的重置轉(zhuǎn)向電路的邏輯圖;圖7A是根據(jù)一些實(shí)施例的嵌入式系統(tǒng)的框圖;圖7B是根據(jù)一些實(shí)施例的連接到微處理器的主機(jī)的框圖;以及圖7C是根據(jù)一些實(shí)施例的連接到嵌入式系統(tǒng)的主機(jī)的框圖。
      具體實(shí)施例方式微處理器的外部重置是可能在操作期間的任何時(shí)間出現(xiàn)的潛在不可控的事件。重 置通常將微處理器恢復(fù)到缺省狀態(tài),例如具有最少的或者不具有安全措施的開(kāi)放操作模 式。當(dāng)消費(fèi)者或用戶的敏感的、機(jī)密的和/或私有的信息可能被存儲(chǔ)在開(kāi)放模式下可以公 共訪問(wèn)的微處理器區(qū)域中時(shí),這帶來(lái)了安全風(fēng)險(xiǎn)。例如,在安全模式下操作的微處理器可以 通過(guò)拒絕外部讀取請(qǐng)求來(lái)保護(hù)存儲(chǔ)在寄存器上的存儲(chǔ)器中的信息。然而,通過(guò)服務(wù)于重置, 微處理器返回開(kāi)放模式,其中這些保護(hù)沒(méi)有就位。惡意實(shí)體可以例如通過(guò)仿真端口(例如, IEEE 1149. 1標(biāo)準(zhǔn)的“JTAG”端口)獲得對(duì)存儲(chǔ)器和寄存器的訪問(wèn)。在該情形中可能危及預(yù) 期應(yīng)保護(hù)的資產(chǎn)。提供了一種方法和裝置以防止這種“重置攻擊”。具有用于接收外部重置命令的微處理器可以具有重置轉(zhuǎn)向電路,其可以被選擇性 地使能。在開(kāi)放模式下,重置轉(zhuǎn)向電路可以被禁止,使得外部重置請(qǐng)求立即觸發(fā)硬件重置。 然而,在安全模式下,當(dāng)敏感信息可能被記錄在易受攻擊的存儲(chǔ)區(qū)域中時(shí),重置轉(zhuǎn)向電路可 以被使能以使任何外部重置請(qǐng)求轉(zhuǎn)向到中斷,這可以觸發(fā)軟件代碼的執(zhí)行。該軟件代碼可 以例如,執(zhí)行安全系統(tǒng)清理子程序以在重置之前擦除易受攻擊的存儲(chǔ)區(qū)域。微處理器圖1示出了微處理器100的實(shí)施例。微處理器100可以具有邏輯單元110、寄存器 120、存儲(chǔ)器130、硬件重置邏輯單元170、重置轉(zhuǎn)向電路180和輸入/輸出(I/O)端口 190。邏輯單元110 (例如,中央處理單元)執(zhí)行微處理器100上的指令??捎蛇壿媶卧獔?zhí)行的指令可以源自一系列可執(zhí)行指令構(gòu)成的軟件(例如,程序、代碼)。存儲(chǔ)器130可以用于存儲(chǔ)可執(zhí)行代碼和/或任何類(lèi)型的數(shù)字?jǐn)?shù)據(jù)。每個(gè)存儲(chǔ)器位 置可以與存儲(chǔ)器地址相關(guān)聯(lián)。存儲(chǔ)器130可以具有一次性可編程(OTP)存儲(chǔ)器、靜態(tài)隨機(jī) 存取存儲(chǔ)器(SRAM)、只讀存儲(chǔ)器(ROM)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)或者任何適當(dāng)?shù)拇鎯?chǔ) 器技術(shù)或者存儲(chǔ)器技術(shù)的組合。在一些實(shí)施例中,“只讀”存儲(chǔ)器可以是可寫(xiě)的,但是可能需 要寫(xiě)入之前的實(shí)質(zhì)的或完全的擦除。微處理器100可以防止部分存儲(chǔ)器130被重寫(xiě)。存儲(chǔ)器130可以包括私人存儲(chǔ)器140區(qū)域和公共存儲(chǔ)器150區(qū)域。私人存儲(chǔ)器 140可以?xún)H在某些操作條件下是可訪問(wèn)的。在一些實(shí)施例中,私人存儲(chǔ)器140是OTP存儲(chǔ)器 的一部分。存儲(chǔ)器130可以具有多個(gè)存儲(chǔ)器單元,每個(gè)單元適于存儲(chǔ)與信息關(guān)聯(lián)的值。每個(gè) 存儲(chǔ)的值可以例如是可以采取兩個(gè)二元狀態(tài)下的一個(gè)的位,其在符號(hào)上被表示為“0”和 “1”。位可以被布置為組(例如,字節(jié)),用于尋址、讀取和寫(xiě)入。存儲(chǔ)器130可以按用于存 儲(chǔ)數(shù)據(jù)的任何適當(dāng)?shù)姆椒ū粯?gòu)造和布置。存儲(chǔ)器130可以存儲(chǔ)安全系統(tǒng)清理子程序160,其在被執(zhí)行時(shí)從微處理器100的在 開(kāi)放模式下可訪問(wèn)的區(qū)域刪除機(jī)密數(shù)據(jù)。在一些實(shí)施例中,如圖1中所示,安全系統(tǒng)清理子 程序160可以被存儲(chǔ)在公共存儲(chǔ)器150中,然而,安全系統(tǒng)清理子程序160可以存儲(chǔ)在任何 適當(dāng)?shù)拇鎯?chǔ)器區(qū)域(例如,私人存儲(chǔ)器140區(qū)域)中。安全系統(tǒng)清理子程序160可以包括 可由邏輯單元110執(zhí)行的軟件指令。這些指令在被執(zhí)行時(shí)可以擦除部分存儲(chǔ)器130 ;清空部 分寄存器120 ;清空某些緩沖器、暫時(shí)存儲(chǔ)器、指向存儲(chǔ)器的指針;以及執(zhí)行其他任務(wù)。擦除 部分存儲(chǔ)器130可以移除機(jī)密的或私有的信息。例如,通過(guò)向待擦除的每個(gè)存儲(chǔ)器單元寫(xiě) 入相同的值(例如,“0”)、隨機(jī)值、預(yù)定值、不具有機(jī)密或私有性質(zhì)的數(shù)據(jù),消除(purging), 或者任何其他適當(dāng)?shù)牟脸椒ǎ蛘卟脸椒ǖ娜魏谓M合或重復(fù),可以實(shí)現(xiàn)擦除。在一些實(shí)施例中,安全系統(tǒng)清理子程序160可以引用寄存器或者存儲(chǔ)器位置以確 定將擦除存儲(chǔ)器130或者微處理器100的其他區(qū)域的哪個(gè)或哪些部分。在一些實(shí)施例中,安全系統(tǒng)清理子程序160被存儲(chǔ)在ROM中以防止軟件指令的改 變。安全系統(tǒng)清理子程序160可以執(zhí)行寄存器(例如,在寄存器120中)的抹除,用于 保持?jǐn)?shù)據(jù)防止針對(duì)私人存儲(chǔ)器140的訪問(wèn)讀取。(這些寄存器可能包含密鑰或者由用戶代 碼執(zhí)行留下的其他敏感數(shù)據(jù))。安全系統(tǒng)清理子程序可以執(zhí)行看門(mén)狗RESET以在安全系統(tǒng)清理子程序完成時(shí)重
      置處理器。寄存器120可以存儲(chǔ)信息位。這些位可以例如用作緩存或者指示微處理器100的 操作狀態(tài)。寄存器120可以被分為任意數(shù)目的單體的寄存器,每個(gè)寄存器包括一個(gè)或多個(gè) 位的信息。在一些實(shí)施例中,寄存器120包括程序計(jì)數(shù)器(PC) 122寄存器,其包含將由邏輯 單元110執(zhí)行的指令的存儲(chǔ)器地址。在一些實(shí)施例中,程序計(jì)數(shù)器122存儲(chǔ)由邏輯單元110 執(zhí)行的當(dāng)前指令的地址。在一些實(shí)施例中,程序計(jì)數(shù)器122存儲(chǔ)由邏輯單元110執(zhí)行的下 一指令的地址。微處理器的I/O端口 190提供用于信息傳輸?shù)妮斎牒洼敵龉δ?。每個(gè)端口可以例 如,被實(shí)施為引腳、插座、按鈕、開(kāi)關(guān)、轉(zhuǎn)盤(pán)、操縱桿、有線或無(wú)線接收器、或者任何其他的接口技術(shù)。I/O端口 190可以包括重置端口 191、不可屏蔽中斷(匪I)端口 193和調(diào)試端口 195(例如,電路內(nèi)仿真(ICE)端口)。重置端口 191可以被用于接收外部觸發(fā)以重置微處 理器100。在一些實(shí)施例中,在微處理器100上提供匪I端口 193用于外部使能不可屏蔽中 斷。中斷可以是通過(guò)硬件(例如,通過(guò)重置端口 191)接收的指示需要微處理器100注意 (處理)的異步信號(hào)。中斷還可以來(lái)源于指示需要改變微處理器100的執(zhí)行的軟件事件。例如,如果與中斷關(guān)聯(lián)的中斷屏蔽寄存器(IMR)中的位被置位,則可以忽略(屏 蔽)中斷。某些中斷可能是固有地不可屏蔽的。匪I端口 193可以提供用于使能和/或禁 止關(guān)于一個(gè)或多個(gè)中斷的屏蔽的外部手段。為了由邏輯單元110立即執(zhí)行,可以對(duì)不可屏 蔽的中斷進(jìn)行優(yōu)先排序。重置端口 191可以用于提供外部觸發(fā)以重置微處理器100??梢援惒降卦谥刂枚?口 191上接收重置信號(hào)。重置端口 191可以可操作地連接到硬件重置170。重置端口 191上的重置信號(hào)可 以由硬件重置170接收。硬件重置170為微處理器100提供重置功能。在一些實(shí)施例中, 硬件重置170被實(shí)現(xiàn)為微處理器100中的電路,該電路可以由重置信號(hào)激活以按照受控的 方式將微處理器100恢復(fù)到初始化的狀態(tài)或者正常狀況。在一些實(shí)施例中,重置端口 191上的重置信號(hào)可以由重置轉(zhuǎn)向電路180截取并轉(zhuǎn) 向。重置轉(zhuǎn)向電路180可以防止重置信號(hào)觸發(fā)硬件重置170。重置轉(zhuǎn)向電路180可以將重 置信號(hào)轉(zhuǎn)向到不可屏蔽中斷(NMI)。當(dāng)處理器在安全模式下操作時(shí)通過(guò)使硬件重置轉(zhuǎn)向到 匪I,可以控制并延遲硬件重置的服務(wù),以便首先實(shí)現(xiàn)安全系統(tǒng)清理子程序160。不可屏蔽中 斷可以觸發(fā)邏輯單元110執(zhí)行安全系統(tǒng)清理子程序160。重置轉(zhuǎn)向電路180可以選擇性地 被使能和/或禁止。在一些實(shí)施例中,基于寄存器120中的一個(gè)或多個(gè)位使能/禁止重置 轉(zhuǎn)向180模塊。在一些實(shí)施例中,調(diào)試端口 195支持對(duì)于微處理器100的“JTAG”連接。“JTAG”是 定義該標(biāo)準(zhǔn)的委員會(huì),即聯(lián)合測(cè)試行動(dòng)小組的首字母縮寫(xiě),該標(biāo)準(zhǔn)的更正式的名稱(chēng)是題為 "Standard Test Access Port and Boundary-Scan Architecture,,的 IEEE 1149.1。除 了支持“公共的” JTAG指令(例如,邊界掃描和旁路模式)之外,微處理器可以支持“私人 的” JTAG指令。例如,私人指令可以由特定的微處理器的制造商定義。通過(guò)調(diào)試端口 195, 用戶可以向微處理器100發(fā)送公共和/或私人JTAG指令。在一些實(shí)施例中,可以支持JTAG 仿真。仿真能力提供了處理器的控制,實(shí)現(xiàn)“運(yùn)行”、“停止”、“單步”和“檢查/修改”內(nèi)部 寄存器,以及實(shí)時(shí)的斷點(diǎn)。圖2示出了微處理器200的框圖。微處理器200也包括上文參照微處理器100描 述的邏輯單元110、寄存器120、具有私人存儲(chǔ)器140區(qū)域和公共存儲(chǔ)器150區(qū)域的存儲(chǔ)器 130、硬件重置170、重置轉(zhuǎn)向電路180和I/O端口 190。微處理器200明確地示出了其中公共存儲(chǔ)器150具有只讀存儲(chǔ)器區(qū)域250的實(shí)施 例?!叭笔〉摹卑踩到y(tǒng)清理子程序160被存儲(chǔ)在R0M250中。在一些實(shí)施例中,定制的安全 系統(tǒng)清理子程序210可以存儲(chǔ)在公共存儲(chǔ)器150中,盡管在一些實(shí)施例中,定制的安全系統(tǒng) 清理子程序210可以存儲(chǔ)在私人存儲(chǔ)器140中,或者存儲(chǔ)在任何其他適當(dāng)?shù)拇鎯?chǔ)器位置。重置轉(zhuǎn)向電路180可以在禁止?fàn)顟B(tài)230或者使能狀態(tài)240中操作。在禁止?fàn)顟B(tài)
      8230中,在重置端口 190上接收到的重置信號(hào)可以被傳遞到硬件重置170。然而,在使能狀 態(tài)240中,重置信號(hào)可以從硬件重置170轉(zhuǎn)向到不可屏蔽中斷(匪I) 220。匪I 220可以觸 發(fā)微處理器200執(zhí)行適當(dāng)?shù)陌踩到y(tǒng)清理子程序。NMI 220可以首先觸發(fā)對(duì)存儲(chǔ)在事件向量表格260中的事件地址270的查找。事 件向量表格260可以存儲(chǔ)在任何適當(dāng)?shù)奈恢?例如,如示出的寄存器120、存儲(chǔ)器130、私人 存儲(chǔ)器140、公共存儲(chǔ)器150)。事件地址270可以具有安全系統(tǒng)清理子程序160的位置的 存儲(chǔ)器地址或者定制的安全系統(tǒng)清理子程序210的位置的存儲(chǔ)器地址。隨后可以利用事件 地址270更新程序計(jì)數(shù)器122。邏輯單元110可以執(zhí)行相應(yīng)的安全系統(tǒng)清理子程序。在一 些實(shí)施例中,在所執(zhí)行的安全系統(tǒng)清理子程序結(jié)束時(shí)觸發(fā)硬件重置170。在一些實(shí)施例中, 觸發(fā)應(yīng)歸于看門(mén)狗定時(shí)器的期滿。安全狀杰機(jī)300微處理器可以在數(shù)個(gè)不同的操作模式下操作以提供安全性和靈活性。例如,當(dāng)不 需要安全性特征并且沒(méi)有必要訪問(wèn)機(jī)密信息時(shí),微處理器可以在開(kāi)放操作模式下操作。私 人機(jī)密信息可以存儲(chǔ)在私人存儲(chǔ)器140中,其在開(kāi)放模式下是不可訪問(wèn)的。當(dāng)機(jī)密信息將被處理或訪問(wèn)時(shí),微處理器可以進(jìn)入安全操作模式。在安全模式下, 私人存儲(chǔ)器140可以是可訪問(wèn)的并且私人信息可以被寫(xiě)入到寄存器120和/或存儲(chǔ)器130。
      對(duì)安全模式的訪問(wèn)可以限于授權(quán)用戶??梢栽趫?zhí)行之前認(rèn)證在安全模式下將執(zhí)行 的代碼,用以確保用戶被授權(quán)執(zhí)行所請(qǐng)求的操作。認(rèn)證可以在安全登錄模式下執(zhí)行。例如, 用戶可以提供用于在安全模式下執(zhí)行的經(jīng)數(shù)字簽名的代碼。執(zhí)行該代碼的請(qǐng)求可以觸發(fā)微 處理器切換到安全登錄模式用于對(duì)經(jīng)數(shù)字簽名的代碼進(jìn)行認(rèn)證。為了執(zhí)行認(rèn)證,微處理器 可以具有存儲(chǔ)在只讀存儲(chǔ)器中的授權(quán)用戶的一個(gè)或多個(gè)公鑰。公鑰可以用于對(duì)經(jīng)數(shù)字簽名 的代碼進(jìn)行認(rèn)證。如果經(jīng)數(shù)字簽名的代碼被其中一個(gè)公鑰認(rèn)證,則微處理器可以進(jìn)入安全 模式并且執(zhí)行經(jīng)認(rèn)證的代碼。如果認(rèn)證失敗,則處理器可以返回開(kāi)放操作模式。在一些實(shí)施例中,微處理器實(shí)現(xiàn)了用于在開(kāi)放操作模式和安全操作模式之間變換 的安全狀態(tài)機(jī)300。圖3中示出了根據(jù)一些實(shí)施例的安全狀態(tài)機(jī)300的狀態(tài)圖。安全狀態(tài) 機(jī)300可以由數(shù)個(gè)操作模式以及操作模式之間的變換路徑組成。每個(gè)操作模式可以具有與 其關(guān)聯(lián)的不同的訪問(wèn)特權(quán)和安全特征,而每個(gè)變換可以定義不同模式之間的關(guān)系。安全狀態(tài)機(jī)300可以在微處理器中通過(guò)寄存器120、存儲(chǔ)器130或者任何其他適當(dāng) 的方法實(shí)現(xiàn)。在圖3中示出的示例性實(shí)施例中,安全狀態(tài)機(jī)300可以在開(kāi)放模式310、安全 登錄模式320和安全模式330中操作。開(kāi)放模式310是處理器的缺省操作狀態(tài),其中除了針對(duì)私人存儲(chǔ)器140的受限制 的訪問(wèn)之外,不存在限制。在一些實(shí)施例中,還可以防止針對(duì)寄存器120中的某些寄存器位 的讀取和/或?qū)懭朐L問(wèn)。開(kāi)放模式310是微處理器上電時(shí)和重置之后的缺省狀態(tài)(路徑 301)。在一些實(shí)施例中,在開(kāi)放模式310中使能調(diào)試能力(例如,JTAG仿真)。在開(kāi)放模式310中操作的安全狀態(tài)機(jī)300可以變換到安全登錄模式320 (經(jīng)由變 換302)。不存在從開(kāi)放模式310到安全模式330的直接路徑。例如,可以由所執(zhí)行的代碼、用戶輸入或者任何其他適當(dāng)?shù)氖侄蝸?lái)觸發(fā)從開(kāi)放模 式310到安全登錄模式320的變換。在一些實(shí)施例中,當(dāng)微處理器的執(zhí)行被引導(dǎo)至公共存 儲(chǔ)器150中的認(rèn)證軟件時(shí),可以觸發(fā)變換。在一些實(shí)施例中,通過(guò)將程序計(jì)數(shù)器122導(dǎo)引至認(rèn)證軟件的首地址,可以將微處理器的執(zhí)行引導(dǎo)至認(rèn)證軟件。一些實(shí)施例可能需要不可屏 蔽中斷是有效的。在安全登錄模式320中,認(rèn)證軟件可以由邏輯單元110執(zhí)行。認(rèn)證軟件 可以確定安全狀態(tài)機(jī)隨后變換304到安全模式320還是變換303回到開(kāi)放模式310。在一 些實(shí)施例中,認(rèn)證軟件可以包括安全登錄服務(wù)子程序(SESR)以進(jìn)行該確定。SESR可以對(duì)用戶進(jìn)行認(rèn)證(例如,驗(yàn)證允許用戶訪問(wèn)安全模式),對(duì)用戶代碼進(jìn)行 認(rèn)證(例如,驗(yàn)證將在安全模式下執(zhí)行的代碼是由允許訪問(wèn)安全模式的用戶所提供的),和 /或執(zhí)行任何其他的安全處理或者安全處理的組合。在一些實(shí)施例中,執(zhí)行非對(duì)稱(chēng)加密處 理。例如,可以對(duì)存儲(chǔ)器130中存儲(chǔ)的數(shù)字簽名和報(bào)文執(zhí)行數(shù)字簽名認(rèn)證。公鑰也可以存 儲(chǔ)在存儲(chǔ)器130中用于執(zhí)行該處理。在安全登錄模式320中,私人存儲(chǔ)器140是不可訪問(wèn)的。在一些實(shí)施例中,可以監(jiān) 控程序計(jì)數(shù)器122以確保其保持在分配給認(rèn)證軟件的地址范圍內(nèi)。在一些實(shí)施例中,不允 許針對(duì)存儲(chǔ)器130的某些區(qū)域的DMA訪問(wèn),并且JTAG仿真被禁止。如果認(rèn)證失敗,則發(fā)生從安全登錄模式320到開(kāi)放模式310的變換303。例如,如 果用戶不能被認(rèn)證,用戶代碼不能被認(rèn)證,報(bào)文和數(shù)字簽名對(duì)與本地公鑰不一致,觀察到錯(cuò) 誤,或者如果必須處理中斷,則認(rèn)證失敗。在成功認(rèn)證時(shí),安全狀態(tài)機(jī)300僅可以從安全登錄模式320變換到安全模式330。 如果認(rèn)證成功,則在經(jīng)由變換304進(jìn)入安全模式330之前可以執(zhí)行另外的步驟。在一些實(shí) 施例中,重置轉(zhuǎn)向電路180被使能(圖2)。事件向量表格260中的事件地址270可以被更 新。在一些實(shí)施例中,事件地址270被更新為缺省的安全系統(tǒng)清理子程序160的地址。安全模式330是微處理器的安全操作狀態(tài)。在進(jìn)入安全模式時(shí)可以缺省地禁止 JTAG仿真。在一些實(shí)施例中,允許經(jīng)認(rèn)證的代碼不受限制地訪問(wèn)包括私人存儲(chǔ)器140、公共 存儲(chǔ)器150和寄存器120的處理器資源。在一些實(shí)施例中,在可以存儲(chǔ)諸如密鑰的安全數(shù) 據(jù)的情況下,安全模式330允許訪問(wèn)(讀取和/或?qū)懭?私人存儲(chǔ)器140。私人存儲(chǔ)器140 可以用于存儲(chǔ)僅可以由授權(quán)的、經(jīng)認(rèn)證的用戶和/或代碼訪問(wèn)的機(jī)密信息。安全狀態(tài)機(jī)300可以從安全模式330變換305回到開(kāi)放模式310。在一些實(shí)施例 中,可能不存在從安全模式330到安全登錄模式320的直接路徑。在一些實(shí)施例中,在從安 全模式到開(kāi)放模式的變換305之前,執(zhí)行安全系統(tǒng)清理子程序。安全系統(tǒng)清理子程序可以 由經(jīng)認(rèn)證的代碼調(diào)用。在存在安全模式之前執(zhí)行安全系統(tǒng)清理子程序可以防止存儲(chǔ)器和寄 存器中的敏感代碼/數(shù)據(jù)在開(kāi)放模式310中是可見(jiàn)的和可訪問(wèn)的。經(jīng)認(rèn)證的代碼可以包含定制的安全系統(tǒng)清理子程序。在一些實(shí)施例中,經(jīng)認(rèn)證 的代碼更新事件向量表格260中的事件寄存器270,用以對(duì)定制的安全系統(tǒng)清理子程序 210(圖2)的位置進(jìn)行尋址。用戶可以依賴(lài)于定制的子程序而非例如缺省的安全系統(tǒng)清理 子程序160。微處理器400圖4提供了根據(jù)一些實(shí)施例的微處理器400的功能框圖。功能模塊可以以硬件、 軟件或者任何適當(dāng)?shù)慕M合實(shí)現(xiàn)。微處理器400具有邏輯模塊401、硬件重置模塊402、重置 轉(zhuǎn)向模塊403、事件向量表格模塊404、狀態(tài)模塊410、執(zhí)行模塊420、安全系統(tǒng)清理模塊430、 存儲(chǔ)器存儲(chǔ)模塊440、安全訪問(wèn)模塊460和I/O端口 190。邏輯模塊401被提供用于執(zhí)行由執(zhí)行模塊420尋址的指令。邏輯模塊和執(zhí)行模塊
      10420可以分別被實(shí)施為邏輯單元110和程序計(jì)數(shù)器122寄存器(例如,如圖1的微處理器 100 中)。狀態(tài)模塊410可以確定操作模式并且強(qiáng)加與該模式關(guān)聯(lián)的規(guī)則。例如,重置轉(zhuǎn)向 模塊403可以在某些模式下被使能而在其他模式下被禁止。在一些實(shí)施例中,狀態(tài)模塊410 可以在開(kāi)放模式310、安全登錄模式320或安全模式330下操作。在一些實(shí)施例中,狀態(tài)模 塊410可以根據(jù)安全狀態(tài)機(jī)300的操作在操作狀態(tài)之間變換。安全訪問(wèn)模塊460可以執(zhí)行諸如對(duì)用戶或代碼進(jìn)行認(rèn)證的安全子程序。在一些實(shí) 施例中,在狀態(tài)模塊410變換到安全模式330之前,安全訪問(wèn)模塊460提供安全登錄模式 320中的認(rèn)證。當(dāng)重置轉(zhuǎn)向模塊403被禁止時(shí),重置端口 191接收到的重置信號(hào)可以觸發(fā)硬件重 置模塊402執(zhí)行微處理器400的重置。當(dāng)重置轉(zhuǎn)向模塊403被使能時(shí),重置端口 191接收 到的重置信號(hào)可以觸發(fā)將事件地址從事件向量表格模塊404加載到執(zhí)行模塊420。例如,當(dāng) 確定從安全登錄模式320變換到安全模式330時(shí),重置轉(zhuǎn)向模塊403可以被使能。安全訪 問(wèn)模塊460可以在成功認(rèn)證時(shí)使能重置轉(zhuǎn)向模塊404。如果事件地址已從事件向量表格模塊404加載到執(zhí)行模塊420 (例如,作為重置轉(zhuǎn) 向的結(jié)果)中,則邏輯模塊401可以執(zhí)行事件地址定位的模塊。在一些實(shí)施例中,事件地址 引用安全系統(tǒng)清理模塊430。安全系統(tǒng)清理模塊430可以擦除可能包含機(jī)密信息的存儲(chǔ)器 存儲(chǔ)模塊440的一部分以及微處理器400的任何其他部分。在一些實(shí)施例中,在安全系統(tǒng) 清理模塊430完成子程序之后,可以觸發(fā)硬件重置模塊402。重置保護(hù)方法500和550微處理器可以在處于某些操作狀態(tài)(例如,安全模式330)的同時(shí)實(shí)現(xiàn)硬件重置保 護(hù)。重置保護(hù)特征可以防止重置端口 191的惡意置位(assert)使存儲(chǔ)器140和/或寄存 器120中存在的敏感代碼或數(shù)據(jù)暴露。如圖5A中示出的方法500提供了用于處理外部重置命令的方法。方法500可以 例如由微處理器執(zhí)行。最初,在步驟501中,接收到外部重置命令。例如,重置命令可以由重置端口 191 (圖1、2和4)接收。在步驟502,確定使能還是禁止重置轉(zhuǎn)向。如果重置轉(zhuǎn)向被禁止,則在步驟503中 處理流程繼續(xù)執(zhí)行硬件重置。硬件重置一旦被執(zhí)行,則將微處理器恢復(fù)到缺省狀態(tài)(步驟 504)。例如,在其中實(shí)現(xiàn)安全狀態(tài)機(jī)300的微處理器的實(shí)施例中,在重置之后進(jìn)入開(kāi)放模式 310。如果在步驟502中確定使能重置轉(zhuǎn)向,則處理流程繼續(xù)到步驟505。在步驟505中 可以將事件地址270從事件向量表格260加載到程序計(jì)數(shù)器122 (圖2)中。事件地址可以 引用安全系統(tǒng)清理子程序(例如,缺省的安全系統(tǒng)清理子程序160或者定制的安全系統(tǒng)清 理子程序210)。在步驟506中,執(zhí)行安全系統(tǒng)清理子程序。安全系統(tǒng)清理子程序可以從微處理器 擦除機(jī)密信息。安全系統(tǒng)清理子程序可以提供任何所期望的功能。在一些實(shí)施例中,在安全系統(tǒng)清理子程序之后可以執(zhí)行硬件重置(步驟503)。硬 件重置可以將微處理器恢復(fù)到缺省狀態(tài)(步驟504)。在一些實(shí)施例中,可能需要安全系統(tǒng)清理子程序中的明確的指令來(lái)觸發(fā)硬件重置的執(zhí)行(例如,安全系統(tǒng)清理子程序中的最后 的指令)。在一些其他實(shí)施例中,步驟503是在安全系統(tǒng)清理子程序完成之后執(zhí)行的,不需 要該子程序中的明確指令。例如,可以簡(jiǎn)單地允許看門(mén)狗時(shí)間期滿,自動(dòng)地觸發(fā)硬件重置的 執(zhí)行?,F(xiàn)在轉(zhuǎn)到圖5B中示出的方法550,其提供了操作處理器的方法。最初,在步驟551中,確定進(jìn)入安全操作模式。該確定可以在對(duì)用戶或者將在安全 模式下執(zhí)行的代碼進(jìn)行認(rèn)證之后進(jìn)行。在一些實(shí)施例中,認(rèn)證由SESR執(zhí)行。在一些實(shí)施例 中,根據(jù)安全狀態(tài)機(jī)300在安全登錄模式320中進(jìn)行進(jìn)入安全模式330的確定。在步驟552中,更新事件向量表格中的事件地址。在一些實(shí)施例中,SESR提供了 在成功認(rèn)證之后利用事件地址更新事件向量表格的指令。事件地址可以引用安全系統(tǒng)清理 子程序。在一些實(shí)施例中,安全系統(tǒng)清理子程序可以被存儲(chǔ)在ROM中。在步驟553中,使能重置轉(zhuǎn)向。重置轉(zhuǎn)向使外部重置信號(hào)從觸發(fā)硬件重置轉(zhuǎn)向到 不可屏蔽中斷。通過(guò)將輸入信號(hào)施加到重置轉(zhuǎn)向電路可以使能重置轉(zhuǎn)向。在步驟554中,進(jìn)入安全模式。在安全模式下,存儲(chǔ)在存儲(chǔ)器或寄存器中的私人信 息可以是可訪問(wèn)的。例如,私人存儲(chǔ)器140可以是可訪問(wèn)的,用于讀取、寫(xiě)入和由邏輯單元 110執(zhí)行(圖1)。該安全模式可以是安全狀態(tài)機(jī)300的安全模式330 (圖3)。在一些實(shí)施 例中,可以在安全操作模式下執(zhí)行經(jīng)認(rèn)證的代碼。在一些實(shí)施例中,經(jīng)認(rèn)證的代碼可以具有 更新事件向量表格中的事件地址的指令(步驟552)。在一些實(shí)施例中,事件地址可以引用 定制的安全系統(tǒng)清理子程序。定制的安全系統(tǒng)清理子程序可以是經(jīng)認(rèn)證的代碼的一部分。在步驟555中,在處于安全模式時(shí)接收到外部重置命令。在一些實(shí)施例中,可以在 重置端口 191上接收外部重置命令??梢援惒降亟邮胀獠恐刂妹睢T诓襟E556中,將事件地址從事件向量表格加載到程序計(jì)數(shù)器寄存器中。在一些 實(shí)施例中,事件地址的加載可以由使能的重置轉(zhuǎn)向電路截取外部重置命令來(lái)觸發(fā)。在步驟557中,執(zhí)行安全系統(tǒng)清理子程序。在一些實(shí)施例中,安全系統(tǒng)清理子程序 被存儲(chǔ)在存儲(chǔ)器中的對(duì)應(yīng)于事件地址的位置。在步驟558中,執(zhí)行硬件重置。在一些實(shí)施例中,其可以響應(yīng)于在安全系統(tǒng)清理子 程序中執(zhí)行軟件命令。在步驟559中,處理器進(jìn)入開(kāi)放模式。這可以是硬件重置觸發(fā)的引導(dǎo)子程序的一 部分。在一些實(shí)施例中,開(kāi)放模式可以是安全狀態(tài)機(jī)300的開(kāi)放模式310 (圖3)。重置轉(zhuǎn)向電路180重置轉(zhuǎn)向電路180 (例如,在圖1中)可以按適當(dāng)?shù)姆绞綄?shí)施。在一些實(shí)施例中,使 用邏輯電路實(shí)現(xiàn)重置轉(zhuǎn)向電路。圖6A和6B提供了其中使用邏輯電路的重置轉(zhuǎn)向電路180 的示例性實(shí)施例。具體地,圖6A示出了重置轉(zhuǎn)向電路180A的實(shí)施例,其接收輸入信號(hào)“RESET”和 "DIV_RESET,,并且輸出"HW_RS_TRIG,,禾口 "SW_RS_TRIG,,。RESET是在輸入引腳601上接收到的重置請(qǐng)求信號(hào)。輸入引腳601可以例如可操 作地耦合到重置端口 191(圖1)?;谳斎胍_602上的DIV_RESET的狀態(tài),置位重置請(qǐng)求 信號(hào)可以觸發(fā)硬件重置或者軟件重置。如果重置請(qǐng)求信號(hào)將轉(zhuǎn)向到軟件,則置位DIV_RESET。當(dāng)DIV_RESET被置位時(shí),重
      12置轉(zhuǎn)向電路180被稱(chēng)為使能的。當(dāng)RESET和DIV_RESET均被置位時(shí),在輸出引腳604上置 位SW_RS_TRIG并且軟件重置可以被觸發(fā)。例如,置位的SW_RS_TRIG可以導(dǎo)致不可屏蔽中 斷。該不可屏蔽中斷可以觸發(fā)將關(guān)于安全系統(tǒng)清理子程序的事件地址加載到程序計(jì)數(shù)器寄 存器中。如果DIV_RESET未置位,則重置信號(hào)將被傳遞到硬件重置并且重置轉(zhuǎn)向電路180 被稱(chēng)為禁止的。當(dāng)在DIV_RESET未置位的同時(shí)置位RESET時(shí),在輸出引腳603上置位冊(cè)_ RS_TRIG并且硬件重置可以被觸發(fā)。例如,通過(guò)實(shí)現(xiàn)圖6A中示出的邏輯圖(其具有邏輯“AND”門(mén)605和606以及反相 器607)可以實(shí)現(xiàn)這種所期望的操作。該邏輯圖假設(shè)所有輸入和輸出均為高有效。重置轉(zhuǎn) 向電路180A可以被容易地修改以適合任何信號(hào)條件。表1是總結(jié)重置轉(zhuǎn)向電路180A的行為的邏輯表格。符號(hào)“0”表示未置位或邏輯 低狀態(tài),而符號(hào)“ 1,,表示置位或邏輯高狀態(tài)。表 權(quán)利要求
      一種裝置,包括重置端口,用于接收重置信號(hào);狀態(tài)機(jī),可在多個(gè)模式中的任何模式下操作,所述多個(gè)模式包括安全模式;存儲(chǔ)器,用于存儲(chǔ)安全系統(tǒng)清理子程序;以及重置轉(zhuǎn)向電路,當(dāng)所述狀態(tài)機(jī)將在所述安全模式下操作時(shí)被使能,所述重置轉(zhuǎn)向電路被配置為,當(dāng)在所述重置端口上接收到所述重置信號(hào)時(shí),初始化所述安全系統(tǒng)清理子程序的執(zhí)行。
      2.如權(quán)利要求1所述的裝置,其中,所述安全系統(tǒng)清理子程序在被執(zhí)行時(shí)擦除所述存 儲(chǔ)器的存儲(chǔ)機(jī)密數(shù)據(jù)的部分。
      3.如權(quán)利要求1所述的裝置,其中,所述安全系統(tǒng)清理子程序在被執(zhí)行時(shí)清空存儲(chǔ)機(jī) 密數(shù)據(jù)的寄存器。
      4.如權(quán)利要求1所述的裝置,其中,所述安全系統(tǒng)清理子程序在被執(zhí)行時(shí)清空與機(jī)密 數(shù)據(jù)相關(guān)聯(lián)的緩沖器、暫時(shí)存儲(chǔ)器或者指向存儲(chǔ)器的指針。
      5.如權(quán)利要求1所述的裝置,進(jìn)一步包括安全訪問(wèn)模塊,用于當(dāng)所述狀態(tài)機(jī)將進(jìn)入所述安全模式時(shí)使能所述重置轉(zhuǎn)向電路。
      6.如權(quán)利要求5所述的裝置,進(jìn)一步包括硬件重置,用于重置所述裝置,當(dāng)在所述重 置端口上接收到所述重置信號(hào)并且所述重置轉(zhuǎn)向電路被禁止時(shí)觸發(fā)所述硬件重置。
      7.如權(quán)利要求6所述的裝置,其中,所述多個(gè)模式進(jìn)一步包括開(kāi)放模式;所述狀態(tài)機(jī)在所述裝置重置時(shí)在所述開(kāi)放模式下初始化;以及所述硬件重置在所述安全系統(tǒng)清理子程序完成時(shí)被觸發(fā)。
      8.如權(quán)利要求5所述的裝置,其中,所述安全訪問(wèn)模塊被存儲(chǔ)在所述存儲(chǔ)器的只讀部 分中并且包括安全登錄服務(wù)子程序。
      9.如權(quán)利要求1所述的裝置,其中,所述重置轉(zhuǎn)向電路對(duì)所述安全系統(tǒng)清理子程序的 執(zhí)行的初始化在被使能時(shí)是不可屏蔽的。
      10.如權(quán)利要求1所述的裝置,進(jìn)一步包括程序計(jì)數(shù)器寄存器,用于存儲(chǔ)存儲(chǔ)器地址;邏輯單元,用于執(zhí)行至少部分地存儲(chǔ)在所述存儲(chǔ)器中的由所述存儲(chǔ)器地址指示的位置 處的子程序;以及事件向量表格,用于存儲(chǔ)事件地址,所述事件地址指示所述存儲(chǔ)器中的所述安全系統(tǒng) 清理子程序的位置,其中,所述重置轉(zhuǎn)向電路通過(guò)利用所述事件向量表格中存儲(chǔ)的所述事件地址來(lái)更新所述程 序計(jì)數(shù)器寄存器中存儲(chǔ)的所述存儲(chǔ)器地址,從而初始化所述安全系統(tǒng)清理子程序的執(zhí)行。
      11.一種操作微處理器的方法,所述方法包括接收外部重置命令;以及選擇性地使所述外部重置命令從觸發(fā)硬件重置轉(zhuǎn)向到觸發(fā)安全系統(tǒng)清理子程序的執(zhí)行,其中,轉(zhuǎn)向被選擇為當(dāng)所述微處理器正在需要針對(duì)微處理器資源的安全訪問(wèn)的安全模 式下操作時(shí)被使能,并且轉(zhuǎn)向被選擇為當(dāng)所述微處理器正在開(kāi)放模式下操作時(shí)被禁止。
      12.如權(quán)利要求11所述的方法,其中,當(dāng)轉(zhuǎn)向被選擇為使能時(shí),轉(zhuǎn)向是不可屏蔽的。
      13.如權(quán)利要求11所述的方法,進(jìn)一步包括存儲(chǔ)引用所述安全系統(tǒng)清理子程序的存 儲(chǔ)器位置的地址。
      14.如權(quán)利要求13所述的方法,其中,當(dāng)轉(zhuǎn)向被選擇為使能時(shí),觸發(fā)所述安全系統(tǒng)清理 子程序的執(zhí)行包括將所述安全系統(tǒng)清理子程序的地址加載到程序計(jì)數(shù)器寄存器中。
      15.一種微處理器,包括 重置端口,用于接收重置信號(hào); 存儲(chǔ)器區(qū)域,用于存儲(chǔ)安全信息;安全系統(tǒng)清理模塊,用于從所述存儲(chǔ)器區(qū)域擦除所述安全信息;以及 重置轉(zhuǎn)向模塊,被配置為,當(dāng)所述微處理器處于對(duì)微處理器資源進(jìn)行安全訪問(wèn)的安全 模式時(shí)在使能狀態(tài)下操作,所述重置轉(zhuǎn)向模塊被配置為,在所述使能狀態(tài)下,當(dāng)所述重置端 口接收到所述重置信號(hào)時(shí),觸發(fā)所述安全系統(tǒng)清理模塊的執(zhí)行。
      16.如權(quán)利要求15所述的微處理器,進(jìn)一步包括 硬件重置模塊,用于重置所述微處理器,其中,所述重置轉(zhuǎn)向模塊被進(jìn)一步配置為,當(dāng)所述微處理處于開(kāi)放模式時(shí)在禁止?fàn)顟B(tài) 下操作,所述重置轉(zhuǎn)向模塊被配置為,在所述禁止?fàn)顟B(tài)下,當(dāng)所述重置端口接收到所述重置 信號(hào)時(shí),允許所述重置信號(hào)觸發(fā)所述硬件重置模塊以重置所述微處理器。
      17.如權(quán)利要求15所述的微處理器,其中, 所述硬件重置模塊是硬件重置電路;以及 所述重置轉(zhuǎn)向模塊是重置轉(zhuǎn)向電路。
      18.如權(quán)利要求15所述的微處理器,其中,所述重置轉(zhuǎn)向模塊輸出不可屏蔽的中斷以 觸發(fā)所述安全系統(tǒng)清理模塊的執(zhí)行。
      19.如權(quán)利要求15所述的微處理器,其中,所述存儲(chǔ)器區(qū)域是第一存儲(chǔ)器區(qū)域,所述微 處理器進(jìn)一步包括邏輯單元;以及 只讀存儲(chǔ)器區(qū)域,其中,所述安全系統(tǒng)清理模塊包括可由所述邏輯單元執(zhí)行的代碼,所述可執(zhí)行代碼存 儲(chǔ)在所述只讀存儲(chǔ)器區(qū)域中。
      20.如權(quán)利要求19所述的微處理器,進(jìn)一步包括程序計(jì)數(shù)器寄存器,用于存儲(chǔ)用于由所述邏輯單元執(zhí)行的地址;以及 事件地址存儲(chǔ),用于存儲(chǔ)所述安全系統(tǒng)清理模塊的存儲(chǔ)器地址, 其中,當(dāng)所述重置端口接收到所述重置信號(hào)并且所述重置轉(zhuǎn)向模塊在所述使能狀態(tài)下 操作時(shí),將所述存儲(chǔ)器地址從所述事件地址存儲(chǔ)加載到所述程序計(jì)數(shù)器寄存器中。
      21.如權(quán)利要求15所述的微處理器,其中,所述存儲(chǔ)器區(qū)域是所述微處理器的寄存器 或高速緩存。
      22.如權(quán)利要求15所述的微處理器,其中,所述重置轉(zhuǎn)向模塊僅在不可屏蔽中斷被使 能的情況下被配置在所述使能狀態(tài)下。
      23.一種保護(hù)處理器中的信息的方法,所述方法包括如下動(dòng)作 (a)接收硬件重置觸發(fā);(b)在動(dòng)作(a)之后,激活軟件中斷;(c)在動(dòng)作(b)之后,從所述處理器的存儲(chǔ)區(qū)域擦除所述信息;以及(d)在動(dòng)作(c)之后,通過(guò)執(zhí)行所述處理器的重置來(lái)服務(wù)于所述硬件重置觸發(fā)。
      全文摘要
      一種用于保護(hù)針對(duì)存儲(chǔ)在微處理器的易受攻擊的存儲(chǔ)區(qū)域(例如,公共存儲(chǔ)器、寄存器、緩存)中的敏感信息的訪問(wèn)的方法和裝置。具有用于接收外部重置命令的重置端口的微處理器可以具有重置轉(zhuǎn)向電路,其可以被選擇性地使能。微處理器可以在開(kāi)放模式和安全模式下操作,分別指示易受攻擊的存儲(chǔ)區(qū)域中的敏感信息的不存在或者潛在的存在。在開(kāi)放模式下,重置轉(zhuǎn)向電路可以被禁止,使得外部重置請(qǐng)求觸發(fā)硬件重置。在安全模式下,敏感信息可以被記錄在易受攻擊的存儲(chǔ)區(qū)域上。重置轉(zhuǎn)向電路可以被使能以使外部重置請(qǐng)求轉(zhuǎn)向到可以觸發(fā)軟件代碼的執(zhí)行的中斷。軟件代碼在被執(zhí)行時(shí)可以執(zhí)行安全系統(tǒng)清理子程序以在重置之前擦除易受攻擊的存儲(chǔ)區(qū)域。
      文檔編號(hào)G06F1/24GK101978339SQ200980109602
      公開(kāi)日2011年2月16日 申請(qǐng)日期2009年2月6日 優(yōu)先權(quán)日2008年2月7日
      發(fā)明者P·P·喬達(dá)諾, S·D·比德?tīng)栁址?申請(qǐng)人:阿納洛格裝置公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1