TWI468973B - 於電腦運算裝置中清除安全系統資源之技術 - Google Patents

於電腦運算裝置中清除安全系統資源之技術 Download PDF

Info

Publication number
TWI468973B
TWI468973B TW98133147A TW98133147A TWI468973B TW I468973 B TWI468973 B TW I468973B TW 98133147 A TW98133147 A TW 98133147A TW 98133147 A TW98133147 A TW 98133147A TW I468973 B TWI468973 B TW I468973B
Authority
TW
Taiwan
Prior art keywords
power
memory
logic
time
period
Prior art date
Application number
TW98133147A
Other languages
English (en)
Other versions
TW201019160A (en
Inventor
Bernard D Desselle
Mark A Piwonka
Jose A Sancho-Dominguez
Original Assignee
Hewlett Packard Development Co
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 Hewlett Packard Development Co filed Critical Hewlett Packard Development Co
Publication of TW201019160A publication Critical patent/TW201019160A/zh
Application granted granted Critical
Publication of TWI468973B publication Critical patent/TWI468973B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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/81Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer by operating on the power supply, e.g. enabling or disabling power-on, sleep or resume operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S257/00Active solid-state devices, e.g. transistors, solid-state diodes
    • Y10S257/922Active solid-state devices, e.g. transistors, solid-state diodes with means to prevent inspection of or tampering with an integrated circuit, e.g. "smart card", anti-tamper

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)
  • Storage Device Security (AREA)

Description

於電腦運算裝置中清除安全系統資源之技術
本發明係有關於於電腦運算裝置中清除安全系統資源之技術。
背景
“安全”電腦運算裝置使用各種技術來阻止對儲存在平台上之受保護的資料或“機密”之未授權的存取(例如密碼、帳號、識別號、授權鑰等)。這些技術中之一技術牽涉對諸如記憶體之系統資源的鎖定,如果機密寫入記憶體而在重置之前沒有清除,則在下次啟動時對系統資源解鎖並清除該等機密。然而,如果該解鎖/抹除機制(軟體、硬體或兩者之一組合)與參與對該等系統資源的鎖定之其它機制不一致或不同步,此習知的技術可能會使該平台處於一不可恢復的狀態。例如,如果對該記憶體組態(例如總記憶體大小、記憶體區塊大小等)作出一改變,則可能會出現此不可恢復的狀態。
依據本發明之一實施例,係特地提出一種方法,其包含以下步驟:回應於清除一系統資源之一安全部分之一失敗,來儲存一電力關閉時間並執行一電力關閉重置;回應於該電力關閉時間受監測,來基於一預定臨限判定自該電力關閉重置之後是否已逝去足夠的時間;回應於自該電力關閉重置之後已逝去不足夠的時間,來執行另一電力關閉重置;及回應於自電力關閉重置之後已逝去足夠時間,來執行一正常啟動順序。
圖式簡單說明
參考下面的圖可較好理解本揭露之許多層面。圖中的該等元件未必按比例繪製,放在後面的強調清楚地說明本揭露之原理。
第1圖是一方塊圖,顯示依據如本文所揭露的本發明之一實施例之一電腦運算裝置之選定的元件。
第2圖是一流程圖,依據本文所揭露的一些實施例說明用以移除電力達一衰減時段之邏輯的操作。
第3圖是一流程圖,依據本文所揭露的一些實施例說明用以在一衰減時段之後啟動之邏輯的操作。
第4圖是一流程之一流程圖,顯示用以移除電力達一衰減時段之邏輯(自第2圖)與用以在衰減時段之後啟動之邏輯(自第3圖)如何被併入關閉及啟動程序之進一步的細節。
第5圖是依據第1圖的該電腦運算裝置之一些實施例之一擦除及解鎖流程之一流程圖。
第6圖依據第1圖的該電腦運算裝置之一些實施例是將用以移除電力達一衰減時段之邏輯(自第2圖)與用以在衰減時段之後啟動之邏輯(自第3圖)相結合之一實施例之一流程圖。
第7圖是一狀態轉換圖,依據第1圖的該電腦運算裝置之一些實施例說明將用以移除電力達一衰減時段之邏輯(自第2圖)與用以在衰減時段之後啟動之邏輯(自第3圖)相結合之另一實施例。
第8圖是一狀態轉換圖,依據第1圖的該電腦運算裝置之一些實施例說明用以在該衰減時段之後啟動之另一實施例。
第9A圖是一方塊圖,依據本文所揭露的本發明之一些實施例顯示電腦運算裝置之進一步的細節。
第9B圖是一方塊圖,依據本文所揭露的本發明之一些實施例顯示另一電腦運算裝置之進一步的細節。
詳細說明
本文所揭露的技術保證在對系統資源清除及/或解鎖之不成功的嘗試之後於一裝置啟動程序期間抹除機密。當檢測到此類不成功的嘗試時,自記憶體之至少一部分移除電力達足夠長時間以供資料衰減。當此時間逝去時,系統資源遭解鎖且該裝置繼續該啟動程序。
第1圖是一方塊圖,依據如本文所揭露的本發明之一實施例顯示一電腦運算裝置100之選定的元件。電腦運算裝置100可以為例如一桌上型電腦、一膝上型電腦、一個人數位助理、一行動電話、一視訊遊戲系統、一可攜式媒體播放器或任何消費電子裝置之形式。電腦運算裝置100包括一處理器110、安全存取邏輯120及各種安全系統資源130,它們透過一匯流排140通訊。安全存取邏輯120控制或限制對安全系統資源130的存取以使得處理器110對一安全系統資源130的任何存取牽涉或喚起安全存取邏輯120。在一些實施例中,一特定資源的安全性設定是動態可組態的。這就是,一特定資源可在一已鎖定/安全狀態與一未鎖定/非安全狀態之間切換。
安全系統資源130可包括(但不局限於)記憶體,諸如安全依電性記憶體130V及安全非依電性記憶體130NV。如應該為熟於此技者所習知,依電性記憶體需要連續的電力來維持已儲存的資訊,而非依電性記憶體不需要。依電性記憶體的範例包括隨機存取記憶體(RAM)(例如動態RAM、靜態RAM)。非依電性記憶體的範例包括非依電性RAM、可規劃唯讀記憶體(ROM)及電氣可抹除可規劃唯讀記憶體(EEPROM)。安全系統資源130也可包括周邊裝置暫存器130D(例如I/O映射式、記憶體映射式)、周邊裝置緩衝器(圖未示)及在處理器110中的暫存器(圖未示)。在此示範實施例中,只有該等系統資源中的一部分系統資源是安全的:電腦運算裝置100還包括非安全依電性記憶體150M及非安全非依電性記憶體150NV,對其的存取不牽涉安全存取邏輯120。電腦運算裝置100的其它實施例包括安全系統資源130但不包括非安全系統資源150。
儘管安全存取邏輯120在第1圖中顯示為獨立的區塊,但熟於此技者應該瞭解的是安全存取邏輯120可以以各種方式來實施。例如,在電腦運算裝置100之一些實施例中,安全存取邏輯120可由處理器110中的微碼來實施。在其它實施例中,安全存取邏輯120在與處理器110分離的硬體邏輯中實施。在這些實施例的一些實施例中,安全存取邏輯120可以是安全資源本身的一部分(例如一記憶體控制器的一部分)。在又一些實施例中,安全存取邏輯120的功能可分散在處理器、獨立邏輯及/或一記憶體控制器之間。
在處理器110執行軟體的過程中,資料寫入安全系統資源130。此類資料稱為“機密”,其可包括(但不局限於)加密鑰、數位憑證、密碼、個人識別資訊、財務資訊等。將清除或“擦除(scrub)”此類機密作為該關閉程序及/或該啟動程序的一部分是期望的。然而,如果該擦除程序沒有成功的完成,則機密保留而易受竊取。本文所揭露的發明技術藉由移除給該系統的電力達一時段來清除機密,該時段足以對依電性安全系統資源130之該等內容放電,此時段稱為衰減時間。
該衰減時間是基於安全系統資源130的物理及/或電氣特性(例如記憶體類型)與電腦運算裝置100的物理及/或電氣特性(例如電力供應設計及分洩節流電路(bleed off circuitry))。該衰減時間大致在秒至分的範圍內。記憶體之衰減時間亦受溫度影響:大致上,衰減時間隨著溫度減低而增加。一些實施例包括一熱感測器且當決定電力移除時段時考慮溫度。
在該衰減時間已逝去之後啟動之程序由用以移除電力達一衰減時段之邏輯200與用以在衰減時段之後啟動之邏輯300來實施。邏輯200及邏輯300使用非安全非依電性記憶體150NV來保存啟動之間的狀態,使用此狀態資訊來決定自一啟動至下一啟動採取什麽動作。在一些實施例中,非安全非依電性記憶體150NV是快閃記憶體,但在其它實施例中,非安全非依電性記憶體150NV被包含在其它元件中,在例如安全存取邏輯120(第1圖)或諸如第9B圖中的I/O控制中樞之I/O控制邏輯中。用以移除電力達一衰減時段之邏輯200的操作將結合第2圖的流程圖來說明,及用以在衰減時段之後啟動之邏輯300的操作將結合第3圖的流程圖來說明。
第2圖是一流程圖,依據本文所揭露的一些實施例說明用以移除電力達一衰減時段之邏輯200的操作。邏輯200以區塊210開始,其中在非安全非依電性記憶體150NV中一旗標(MonitoringPowerOffTime(監測電力關閉時間)150-M)被設定,來指示該電力關閉時間正受監測。下一步,在區塊220,目前系統時間被儲存在非安全非依電性記憶體150NV中(Time@PowerOff(電力關閉時的時間)150-T)。在一些實施例中,在區塊220,目前系統時間藉由讀取受一電池供電之即時時鐘(RTC)邏輯的值而獲得。然而,可使用其它時鐘或計時器,只要該時鐘/計時器在該重置程序中量測逝去時間,及只要該時段足以量測安全資源130被清除所必需的該預定時段。在儲存目前時間之後,在區塊230,執行一電力關閉重置,包括自電腦運算裝置100移除電力及恢復給電腦運算裝置100供電。
當電力恢復時,電腦運算裝置100開始該啟動程序。啟動電腦運算裝置100的大致原理應該為熟於此技者所瞭解,但是本文將提供一概觀。該啟動程序分階段進行:韌體;啟動載入器;核心(kernel)及作業系統。各該階段為下一階段做準備:該韌體階段將該啟動載入器載入至記憶體並轉移執行至該啟動載入器;該啟動載入器階段將該核心載入記憶體並轉移執行至該核心;為該作業系統的一小內核(core)之該核心將該作業系統的剩餘部分載入至記憶體。
儘管用以在衰減時段之後啟動之邏輯300可在任何時間執行,但是期望用以在衰減時段之後啟動之邏輯300在該啟動程序中相對早地執行,以最小化可存取沒有清除的機密之軟體元件。因此,邏輯300之一些實施例在該韌體啟動階段期間執行。在一PC平台上,該韌體啟動階段由該基本輸入/輸出系統(BIOS)實施。因此,對於在一PC平台上實施的一些實施例,用以在衰減時段之後啟動之邏輯300作為儲存在唯讀記憶體(ROM)或諸如快閃記憶體之非依電性記憶體中之BIOS的一部分而實施。現在將進一步詳細描述該BIOS啟動階段,關注點在於用以在衰減時段之後啟動之邏輯300如何適於該啟動程序中。
在電力開啟之後,處理器110在映射至該BIOS韌體程式碼之開始的一固定位置開始執行。該BIOS開始執行稱為開機自檢(POST)的多個測試。這些測試中的一些測試牽涉執行控制安裝在PC中但不是該PC平台本身之一部分的裝置(例如視訊配接器、網路配接器等)之韌體程式碼。此非平台韌體被稱為“選項ROM(option ROM)”,因為這些裝置是可選擇的,且該韌體典型地是儲存在ROM中。為了最小化可存取未清除的機密之該等軟體元件,用以在衰減時段之後啟動之邏輯300之一些實施例在任何選項ROM執行之前執行。接著,在用以在衰減時段之後啟動之邏輯300已運行且該衰減時段已過去之後,該BIOS繼續正常執行:呼叫選項ROM程式碼(如果存在);組配主機板或平台裝置(例如隨插即用式(Plug and Play)、舊式(Legacy)及周邊元件互連等);在目標啟動驅動機上定位該主啟動記錄(master boot record);並轉移控制至該主啟動記錄中所提供之該啟動載入器位置。
已說明用以在衰減時段之後啟動之邏輯300如何適於該啟動程序中,現在將結合第3圖的流程圖描述用以在衰減時段之後啟動之邏輯300之操作。在區塊310,邏輯300開始,其檢查來看是否自電力關閉之後逝去的時間正受監測。在第2圖中上面所描述的電力關閉程序中,一特定旗標(MonitoringPowerOffTime 150-M)遭設定來指示此條件,但是熟於此技者應該認識到也可使用其它技術(例如Time@PowerOff 150-T中一初始化或非零值的存在)。如果逝去時間未受監測,則該正常啟動順序繼續(320)。否則,如果逝去時間正受監測,則在區塊330獲得目前系統時間。在區塊340,該自電力關閉之後逝去的時間是基於用以移除電力達一衰減時段之邏輯200所儲存的該目前系統時間及該值(Time@PowerOff 150-T)而運算。在區塊350,此逝去的時間與一預定值比較,該預定值指定安全系統資源130被清除所必需之一時間量。
如果自最後的電力關閉之後已逝去足夠的時間供記憶體衰減,區塊360清除指示自電力關閉之後已逝去的時間正受監測之變數(例如MonitoringPowerOffTime 150-M),接著,在區塊320,該正常啟動順序繼續。如果已逝去不足夠的時間,則在區塊370,電力將遭循環,以移除電力達足夠長時間來供記憶體衰減。在某時段之後,該BIOS及包含於其中之用以在衰減時段之後啟動之邏輯300再次執行。在某時,自電力關閉之後逝去的時間將超出該預定臨限,及一正常啟動順序將完成(區塊320)。
第4圖是一程序之一流程圖,在電腦運算裝置100之一些實施例中顯示用以移除電力達一衰減時段之邏輯200與用以在衰減時段之後啟動之邏輯300如何併入至該關閉及啟動程序之進一步細節。第4圖顯示三個不同的程式碼路徑:路徑405在一有序的系統關閉期間執行(例如系統關閉事件、系統重置事件、來自該作業系統的請求等);路徑410在路徑405之後的啟動循環期間執行;及路徑415在路徑410之後的啟動循環期間執行。
在該有序系統關閉路徑405期間,在區塊402,擦除及解鎖安全資源。(此程序結合第5圖將進一步詳細討論)。接著,在區塊430,儲存在非安全非依電性記憶體150NV中之該狀態變數SecretsPresent(機密存在)(150-S)如果此程序成功則遭清除或如果不成功則遭設定。路徑405接著繼續執行以一重新啟動而結束之一有序系統關閉。在一些實施例中,路徑405也作為一系統陷阱處置器(trap handler)而執行,其當一軟體元件嘗試執行一“熱”重新啟動(即不移除電力的一重置)或當一軟體元件在機密存在時嘗試進入一休眠狀態時被喚起。
路徑410接著繼續此下一啟動循環。方塊440檢查該狀態變數SecretsPresent 150-S以判定是否機密存在。如果機密不存在,則進行正常啟動處理。然而,如果機密存在,則在區塊450,安全系統資源130遭鎖定以使得對這些資源的存取經過安全存取邏輯120。換言之,此鎖定程序為安全系統資源130提供它們的“安全”行為。在包括一安全處理器110S(第9B圖)的一些實施例中,只有可信賴程式碼(trusted code)可存取鎖定或安全資源130。在鎖定之後,區塊460擦除及解鎖該等安全系統資源130。(此程序結合第5圖將進一步詳細討論)。接著,區塊470判定該擦除是否成功,及如果成功則進行正常啟動處理。如果該擦除失敗,則執行用以移除電力達一衰減時段之邏輯200(如結合第2圖較早予以描述的)。
當電力再次開啟時,路徑415接著繼續另一啟動循環。如結合第3圖較早予以說明的,用以在衰減時段之後啟動之邏輯300將在此啟動期間執行,且將繼續循環電力直至已逝去足夠的時間來對依電性安全系統資源130之內容放電。
第5圖是結合第4圖提到之該擦除及解鎖程序之一流程圖。該程序500以區塊510開始,其中狀態變數SecretsPresent 150-S表示一安全系統資源130在此電力開啟循環期間究竟是否已寫入。在其它實施例中,SecretsPresent 150-S表示一安全系統資源130在此電力開啟循環期間是否已寫入但未清除(例如透過應用程式或作業系統元件)。
如果沒有機密存在,則無需擦除且流程500以一成功程式碼返回(區塊520)。如果機密存在,則區塊530清除、抹除或“擦除”安全系統資源130。此擦除可利用硬體邏輯,例如安全存取邏輯120或與一記憶體或I/O控制器相關聯的邏輯。區塊540判定該擦除是否成功完成。如果沒有,流程500以一失敗程式碼返回(區塊550)。
在完成成功擦除之後,在區塊560,清除該SecretsPresent 150-S狀態變數。在區塊570,解鎖安全系統資源130。(在後面的處理期間BIOS的其它部分可鎖定該等資源)。流程500接著以一成功程式碼返回(區塊520)。
在包括一安全處理器110S(第9B圖)的一些實施例中,第4圖與第5圖所表示的該程式碼作為允許存取安全系統資源130之可信賴程式碼而執行。可信賴程式碼被允許存取安全系統資源130,因為此程式碼在執行前已遭鑑別。可信賴程式碼典型地包括基本輸入/輸出服務(BIOS)、一啟動載入器及作業系統、核心或超管理器。不可信賴程式碼不允許存取安全系統資源130。
第6圖是將用以移除電力達一衰減時段之邏輯200與用以在衰減時段之後啟動之邏輯300相結合之一實施例之一流程圖。該流程600以區塊610開始,嘗試清除依電性安全系統資源130。區塊620判定該清除是否成功。如果該清除成功,在區塊630,流程600以一正常啟動順序來繼續。如果區塊610未能清除安全系統資源130,則流程600以執行一電力關閉重置(區塊640)來繼續。接著,區塊650判定自該電力關閉之後是否已逝去足夠的時間來對依電性安全系統資源130之內容放電。如果已逝去足夠的時間,流程600以一正常啟動順序(區塊630)來繼續。如果未逝去足夠的時間,流程600以執行另一電力關閉重置(區塊660)來繼續。
第7圖是一狀態轉換圖,說明將用以移除電力達一衰減時段的邏輯200與用以在衰減時段之後啟動之邏輯300相結合之另一實施例。熟於此技者應該瞭解的是,此狀態轉換圖可在硬體邏輯中實施,或作為軟體在一處理器上執行,該處理器當該給記憶體的電力被循環時繼續汲取電力(例如一基板管理控制器)。用以移除電力且在衰減之後啟動之邏輯700以一初始狀態710開始,並在清除安全系統資源130之一失敗嘗試(715)之後轉換至一第二狀態720。在第二狀態720,自至少安全系統資源130移除電力。當移除電力之後已逝去足夠的時間來供安全系統資源130之內容放電(725)時,邏輯700轉換至一第三狀態730,其中安全系統資源130遭解鎖。在一些實施例中,一計時器以第二狀態720開始並當此計時器屆滿時進入第三狀態730。在一些實施例中,狀態變數SecretsPresent 150-S在此第三狀態730中也遭清除。自第三狀態730,邏輯700轉換至一第四狀態740,及電力供應給處理器110。
第8圖是一狀態轉換圖,說明移除電力直至電壓已降至一預定位準之一實施例。熟於此技者應該瞭解的是,此狀態轉換圖可在硬體邏輯上實施或作為軟體在一處理器上執行,該處理器在當該給記憶體的電力被循環時繼續汲取電力(例如一基板管理控制器)。用以在衰減之後啟動之邏輯800在電力施加於處理器110及安全系統資源130之前以一初始狀態810開始。邏輯800判定自上次啟動開始機密是否保留(例如透過檢查一狀態變數,諸如SecretsPresent 150-S)。如果沒有機密保留,邏輯800轉換(815)至一最終狀態(820),其中電力供應給處理器110。如果機密確實有保留,邏輯800轉換至一第二狀態。邏輯800保持在此狀態直至供應給安全系統資源130的電壓位準降至一衰減臨限以下(825)。監控此電壓位準的電路應該為熟於此技者所習知,用於決定適當的臨限之技術亦應如此。
當電壓已降至該臨限以下(825)時,邏輯700轉換至一第三狀態830,其中安全系統資源130遭解鎖。在一些實施例中,狀態變數SecretsPresent 150-S在第三狀態830中亦遭清除。自第三狀態830,邏輯700轉換至一第四狀態840,及電力供應給處理器110。
第9A圖是一方塊圖,依據如本文所揭露之本發明之一實施例顯示電腦運算裝置100(自第1圖)之進一步的細節。電腦運算裝置100包括處理器110,該處理器110透過一匯流排910與依電性系統記憶體905及各種周邊設備通訊。在第9圖所示的該範例中,這些周邊設備包括一儲存裝置915、非依電性(例如快閃)記憶體920及一通用串列匯流排(USB)裝置925,且其它周邊設備也在本揭露之範圍中。系統記憶體905包括安全記憶體及非完全記憶體(如果存在)。電腦運算裝置100還包括安全存取邏輯120,如上結合第1圖所述。
第9B圖是一方塊圖,依據如本文所揭露之本發明之一實施例顯示另一電腦運算裝置之選定的元件。電腦運算裝置100T,有時稱為一可信賴電腦運算裝置100T,包括一安全處理器110S及安全邏輯930。安全邏輯930,有時稱為一可信賴平台模組,執行密碼功能且可用來儲存密碼鑰、數位憑證及密碼。安全邏輯930還包括安全存取邏輯120,如上結合第1圖所述。
安全處理器110S支援創建及管理多個隔離的執行環境或分區。各該隔離環境具有由處理器、晶片及OS核心管理的專用資源(例如記憶體、處理器狀態等)。在一些實施例中,這些分區中的至少一分區是一受保護的分區,軟體在該受保護的分區中可獨立執行,免受觀測或免受在該平台上運行的其它軟體之威脅。
在可信賴電腦運算裝置100T的一些實施例中,安全處理器110S透過一主機匯流排940與一記憶體控制中樞935通訊。記憶體控制中樞935接著透過一記憶體匯流排945介面連接至系統記憶體905,並透過一I/O匯流排955連接至一輸入/輸出(I/O)控制中樞950。在一些實施例中,中樞935與950被稱為“主橋”,且尤其,記憶體控制中樞935可稱為一“北橋”及I/O控制中樞950稱為一“南橋”。I/O控制中樞950透過一周邊匯流排960介面連接至各種周邊裝置及一基板管理控制器965。
本文所描述的該等系統及方法(例如邏輯200、邏輯300、邏輯700、處理器600等)可在軟體、硬體或兩者之一組合中實施。在一些實施例中,這些系統及方法在硬體中實施,包括但不局限於一可規劃邏輯裝置(PLD)、可規劃閘陣列(PGA)、可現場規劃閘陣列(FPGA)、一特定應用積體電路(ASIC)、一單晶片系統(SoC)及一系統級封裝(SiP)。在一些實施例中,本文所揭露的該等系統及方法在軟體中實施,該軟體儲存在一記憶體中並由位於一電腦運算裝置中之一適當處理器(例如微處理器、網路處理器、微控制器、數位信號處理器、數位信號控制器、特定應用指令集處理器等)來執行。此可執行的碼可包含在任何電腦可讀取媒體中供一處理器使用或結合一處理器使用。
在本揭露的脈絡中,一“電腦可讀取媒體”可以是包含或儲存程式供該處理器使用或與之結合使用的任何裝置。該電腦可讀取媒體可以是,例如但不局限於,基於磁的、光學的、電磁的或半導體技術之一媒體。使用半導體技術之一電腦可讀取媒體之特定範例將包括(但不局限於)如下:一隨機存取記憶體(RAM);一唯讀記憶體(ROM);一可抹除可規劃唯讀記憶體(EPROM或快閃記憶體)。使用磁技術之一特定範例包括(但不局限於)一電腦磁碟或磁片。使用光學技術的特定範例包括(但不局限於)一光碟唯讀記憶體(CD-ROM)。
本文的該等流程圖提供本文揭露的實施例之操作之範例。另外,這些圖可看作描繪由邏輯200、邏輯300及/或邏輯700所實施的一方法之一範例之動作。在這些圖中的方塊表示程序、功能、模組或包括用於實施該程序中的邏輯功能或步驟之一或多個可執行的指令之部分程式碼。可選擇的實施例也包括在本揭露之範圍中。在這些可選擇的實施例中,功能可不按所示或討論的順序來執行,包括實質上同時或相反順序,視所牽涉的功能而定。在所有的實施例中並不是所有的步驟都需要。
100...電腦運算裝置
100T...電腦運算裝置、可信賴電腦運算裝置
110...處理器
110S...安全處理器
120...安全存取邏輯
130...安全系統資源
130V...安全依電性記憶體
130NV...安全非依電性記憶體
130D...周邊裝置暫存器
140、910...匯流排
150...非安全系統資源
150V...非安全依電性記憶體
150NV...非安全非依電性記憶體
150-M...MonitoringPowerOff Time
150-T...Time@PowerOff
150-S...SecretsPresent
200、300、700、800...邏輯
210~230、310~370、420~470、510~570、610~660...步驟方塊
405、410、415...路徑
500、600...流程
710、810...初始狀態
715...失敗嘗試
720...第二狀態
725...放電
730、830...第三狀態
740...第四狀態
815...轉換
820...最終狀態
825...電壓位準降至一衰減臨限以下
905...依電性系統記憶體
915...儲存裝置
920...快閃記憶體
925...USB裝置
930...安全邏輯
935...記憶體控制中樞
940...主匯流排
945...記憶體匯流排
950...輸入/輸出控制中樞
955...I/O匯流排
960...周邊匯流排
965...基板管理控制器、BMC
第1圖是一方塊圖,顯示依據如本文所揭露的本發明之一實施例之一電腦運算裝置之選定的元件。
第2圖是一流程圖,依據本文所揭露的一些實施例說明用以移除電力達一衰減時段之邏輯的操作。
第3圖是一流程圖,依據本文所揭露的一些實施例說明用以在一衰減時段之後啟動之邏輯的操作。
第4圖是一流程之一流程圖,顯示用以移除電力達一衰減時段之邏輯(自第2圖)與用以在衰減時段之後啟動之邏輯(自第3圖)如何被併入關閉及啟動程序之進一步的細節。
第5圖是依據第1圖的該電腦運算裝置之一些實施例之一擦除及解鎖流程之一流程圖。
第6圖依據第1圖的該電腦運算裝置之一些實施例是將用以移除電力達一衰減時段之邏輯(自第2圖)與用以在衰減時段之後啟動之邏輯(自第3圖)相結合之一實施例之一流程圖。
第7圖是一狀態轉換圖,依據第1圖的該電腦運算裝置之一些實施例說明將用以移除電力達一衰減時段之邏輯(自第2圖)與用以在衰減時段之後啟動之邏輯(自第3圖)相結合之另一實施例。
第8圖是一狀態轉換圖,依據第1圖的該電腦運算裝置之一些實施例說明用以在該衰減時段之後啟動之另一實施例。
第9A圖是一方塊圖,依據本文所揭露的本發明之一些實施例顯示電腦運算裝置之進一步的細節。
第9B圖是一方塊圖,依據本文所揭露的本發明之一些實施例顯示另一電腦運算裝置之進一步的細節。
100...電腦運算裝置
110...處理器
120...安全存取邏輯
130...安全系統資源
130V...安全依電性記憶體
130NV...安全非依電性記憶體
130D...周邊裝置暫存器
140...匯流排
150...非安全系統資源
150V...非安全依電性記憶體
150NV...非安全非依電性記憶體

Claims (13)

  1. 一種用以控制啟動序列之方法,其包含以下步驟:回應於清除一系統資源之一安全部分之一失敗,來儲存一電力關閉時間並執行一電力關閉重置;回應於該電力關閉時間受監測,來基於一預定臨界判定自該電力關閉重置之後是否已經過足夠的時間;回應於自該電力關閉重置之後已經過不足夠的時間,來執行另一電力關閉重置;及回應於自電力關閉重置之後已經過足夠時間,來執行一正常啟動序列。
  2. 如申請專利範圍第1項所述之方法,其進一步包含以下步驟:基於該預定臨界而重複連續的電力關閉重置循環直至自該電力關閉時間之後已經過足夠的時間。
  3. 如申請專利範圍第1項所述之方法,其進一步包含以下步驟:透過一系統陷阱來檢測清除該系統資源之一安全部分之該失敗。
  4. 如申請專利範圍第1項所述之方法,其中該系統資源包含一記憶體。
  5. 如申請專利範圍第4項所述之方法,其中該預定臨界係基於該記憶體之衰減特性。
  6. 如申請專利範圍第4項所述之方法,其中該預定臨界係基於該記憶體之安全部分之衰減特性。
  7. 一種用以控制系統資源之方法,其包含以下步驟:檢測一裝置中的清除該系統資源之一安全部分之一失敗;響應於該檢測,關閉該系統資源之電力達一電力關閉時段,該電力關閉時段足夠清除來自該系統資源的資料;以及響應於已經過該電力關閉時段,將該系統資源之該安全部分解鎖,其中該系統資源包含一記憶體,及其中該電力關閉時段係基於該記憶體之該安全部分之衰減特性。
  8. 如申請專利範圍第7項所述之方法,其進一步包含以下步驟:透過一系統陷阱來檢測清除該系統資源之一安全部分之該失敗。
  9. 如申請專利範圍第7項所述之方法,其進一步包含以下步驟:響應於電力關閉,判定該電力關閉時段是否受監測。
  10. 一種電腦系統,其包含:具有一安全部分之一記憶體;一安全處理器;檢測邏輯組件,其組配來檢測清除該記憶體之該安全部分之一失敗; 計時電力關閉邏輯組件,其組配來回應於該檢測邏輯組件來關閉該記憶體之該安全部分的電力達一電力關閉時段,該電力關閉時段足以清除該記憶體之該安全部分中的資料;及解鎖邏輯組件,其組配來回應於該電力關閉時段已經過來將該記憶體之該安全部分解鎖。
  11. 如申請專利範圍第10項所述之系統,其中該計時電力關閉邏輯組件進一步包含:計時器邏輯組件,其組配來在電力關閉之後開始計時,及基於一預定臨界當自該開始計時之後已經過足夠時間時屆滿,其中該解鎖邏輯組件係回應於該計時器屆滿。
  12. 如申請專利範圍第10項所述之系統,其中該電力關閉時段係基於該記憶體之衰減特性。
  13. 如申請專利範圍第10項所述之系統,其中該檢測邏輯組件進一步包含:組配來檢測清除該記憶體之該安全部分之該失敗之邏輯組件。
TW98133147A 2008-10-03 2009-09-30 於電腦運算裝置中清除安全系統資源之技術 TWI468973B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2008/078722 WO2010039149A1 (en) 2008-10-03 2008-10-03 Clearing secure system resources in a computing device

Publications (2)

Publication Number Publication Date
TW201019160A TW201019160A (en) 2010-05-16
TWI468973B true TWI468973B (zh) 2015-01-11

Family

ID=42073758

Family Applications (1)

Application Number Title Priority Date Filing Date
TW98133147A TWI468973B (zh) 2008-10-03 2009-09-30 於電腦運算裝置中清除安全系統資源之技術

Country Status (3)

Country Link
US (1) US8892860B2 (zh)
TW (1) TWI468973B (zh)
WO (1) WO2010039149A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103974258B (zh) * 2008-02-19 2017-10-10 交互数字专利控股公司 保护wtru中时间组件的方法及wtru用户识别模块集成电路卡
CN102207875B (zh) * 2010-03-30 2014-11-12 鸿富锦精密工业(深圳)有限公司 媒体数据播放装置及其重新启动方法
WO2012023050A2 (en) 2010-08-20 2012-02-23 Overtis Group Limited Secure cloud computing system and method
JP5640556B2 (ja) * 2010-08-23 2014-12-17 富士ゼロックス株式会社 画像形成装置及び画像形成プログラム
US20130226363A1 (en) * 2012-02-23 2013-08-29 Cyber Power Systems Inc. Shut-down controlling system for power distribution unit
JP6095330B2 (ja) * 2012-11-13 2017-03-15 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
KR20170070694A (ko) * 2015-12-14 2017-06-22 삼성전자주식회사 전자 장치 및 그 동작방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105136A (en) * 1998-02-13 2000-08-15 International Business Machines Corporation Computer system which is disabled when it is disconnected from a network
TW538331B (en) * 2002-01-24 2003-06-21 Wistron Corp Method for recording power failure time of a computer system
TWM325559U (en) * 2007-02-05 2008-01-11 Power Quotient Int Co Ltd Computer system architecture thereof
US20080235432A1 (en) * 2007-03-19 2008-09-25 A-Data Technology Co., Ltd. Memory system having hybrid density memory and methods for wear-leveling management and file distribution management thereof

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069451B1 (en) * 1995-02-13 2006-06-27 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US6754784B1 (en) * 2000-02-01 2004-06-22 Cirrus Logic, Inc. Methods and circuits for securing encached information
US7249381B2 (en) * 2004-03-29 2007-07-24 Bryte Computer Technologies, Inc. Controller and resource management system and method with improved security for independently controlling and managing a computer system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6105136A (en) * 1998-02-13 2000-08-15 International Business Machines Corporation Computer system which is disabled when it is disconnected from a network
TW538331B (en) * 2002-01-24 2003-06-21 Wistron Corp Method for recording power failure time of a computer system
TWM325559U (en) * 2007-02-05 2008-01-11 Power Quotient Int Co Ltd Computer system architecture thereof
US20080235432A1 (en) * 2007-03-19 2008-09-25 A-Data Technology Co., Ltd. Memory system having hybrid density memory and methods for wear-leveling management and file distribution management thereof

Also Published As

Publication number Publication date
US8892860B2 (en) 2014-11-18
WO2010039149A1 (en) 2010-04-08
US20110179264A1 (en) 2011-07-21
TW201019160A (en) 2010-05-16

Similar Documents

Publication Publication Date Title
TWI468973B (zh) 於電腦運算裝置中清除安全系統資源之技術
KR101626397B1 (ko) Bios 플래시 어택 보호 및 통지
US9785596B2 (en) Redundant system boot code in a secondary non-volatile memory
CN103207975B (zh) 保护密码的方法以及计算机
US9735960B2 (en) Method for protecting data stored within a disk drive of a portable computer
JP6137499B2 (ja) 方法および装置
TWI648652B (zh) 修復受危害之系統啓動碼之技術
TWI539324B (zh) 驗證控制器碼及系統啓動碼之技術
US8028174B2 (en) Controlling update of content of a programmable read-only memory
US10032029B2 (en) Verifying integrity of backup file in a multiple operating system environment
US9734339B2 (en) Retrieving system boot code from a non-volatile memory
US20090288161A1 (en) Method for establishing a trusted running environment in the computer
TWI266989B (en) Method, apparatus and token device for protection against memory attacks following reset
US9703635B2 (en) Method, computer program, and computer for restoring set of variables
TWI499911B (zh) 用以選擇性滌淨系統記憶體之方法與系統
CN110998578A (zh) 用于在异构存储器环境内进行引导的系统和方法
TW201220040A (en) Method to ensure platform silicon configuration integrity
WO2018040678A1 (zh) 一种存储器数据保护方法、集成电路芯片及存储介质
JP5767657B2 (ja) 不揮発性メモリが記憶するデータを保護する方法およびコンピュータ
JP2022047564A (ja) 情報処理装置

Legal Events

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