新四季網

控制對外設進行訪問的方法和設備的製作方法

2023-04-30 09:10:31 1

專利名稱:控制對外設進行訪問的方法和設備的製作方法
技術領域:
本發明涉及電子設備安全領域,更具體地,涉及保護這些電子設備免於欺騙性操作和對其完整性的攻擊的領域。
背景技術:
已知兩種主要類型的攻擊,即一方面,軟體類型的攻擊,以及另一方面,關於對硬體組件的添加或替換的攻擊。
為了對抗軟體攻擊,已知所謂的高級工具,即,在作業系統層之上工作的工具(防病毒程序、防火牆等)。
令人遺憾地,這些工具雖然有功效,但是其嚴重的缺陷在於,可以在將這些工具載入存儲器之前將它們去激活或旁路。
名為可信計算組(TCG)的協會致力於通過提供保護低級軟體層、以及用於識別物理外設的工具和方法,來克服這一缺點。
具體地,TCG提出了在載入之前檢查個人計算機的BIOS(基本輸入輸出系統)的可靠性的方法。
為此,這樣的方法使用CRTM可信碼(可信測量的核心根),當開啟計算機來計算BIOS籤名時,執行該CRTM碼。
因此,該CRTM信任碼組成了系統中任何軟體安全序列的基礎,因此也必須保護CRTM碼自身免受攻擊。
為了保護該CRTM碼,傳統地,規定在安裝於系統主板上的快閃記憶體的特定扇區中執行該代碼。
這樣的解決方案的缺點是,如2003年7月17日公開的IBM文獻US 2003/0135727中所描述的,例如為了升級目的,對該CRTM信任碼的修改不可能在主板上沒有物理幹涉。
該文獻提出了該問題的第一解決方案,在於在主板附加卡(功能插件)中,該功能插件具有自己的BIOS。然後能夠通過該功能插件的物理置換來簡單地影響升級。
儘管該方案在TCG開發的規範的框架範圍內是可接受的,但是將理解,當期望由用戶或第三方(具體地,遊戲控制臺、IMEI代碼和GSM設備的SIM鎖)擴展引導裝入程序和對第二類型的攻擊、即硬體攻擊進行BIOS保護時,這是根本不可接受的。
由於為了去激活(deactivate)所有系統的安全功能,需要的是去除該功能插件,因此,該方案暴露了該擴展保護情況的主要缺點。
TCG協會還提出了通過控制使用的外設的計算機(PC)硬體集成的問題。更具體地,協會指定了TPM模塊的使用,該模塊用於登記計算機外設的名稱和位置,以便如果例如硬碟的外設在兩個引導序列之間被替換,則產生警報。這包括檢查外設的身份。
以類似的方式,在遊戲控制臺的環境中,文獻WO 43716(3DO)描述了由(控制臺的)處理器驗證外設(遊戲盒帶(game cassette))以抵制盒帶的非法拷貝的方法。
3DO文獻提出了將密鑰併入盒帶,盒帶將由也持有該密鑰的控制臺進行校驗。為了防止由盜版盒帶對充分驗證的盒帶的替換,附加地,3DO提出了使用在整個遊戲中的盒帶與控制臺之間進行安全數據交換的機制。從而,控制臺檢查它總與相同的盒帶通話。
令人遺憾地,該方案需要在外設(盒帶)中嵌入和隱藏密鑰和具有秘密安全算法的專用程序。該限制使該類型的技術的開發停滯下來。

發明內容
本發明可以克服上述缺點。
為此,申請人選擇了非常不同的方法,該方法即非基於識別機制,也非基於驗證機制。
更具體地,根據第一方案,本發明涉及一種硬體單元,由處理器控制對該處理器外設的訪問,所述硬體單元包括裝置,用於觸發處理器中斷,稱為控制中斷;裝置,用於從處理器和下面的中斷觸發中獲得授權訪問外設的代碼;裝置,用於將該訪問授權代碼與預定參考值進行比較;以及所謂的驗證裝置,設計用於依據所述比較的結果來生成驗證訪問外設的電信號的電信號。
因此,根據本發明的機制是基於處理器對在外設前面放置的硬體單元所監視的訪問授權代碼的發布,該發布用於總線的斷開。
以高度有利的方式,在訪問控制硬體單元以指向處理器的中斷的形式,已經作出對處理器的明確請求以獲得訪問授權代碼之後,由訪問控制硬體單元來接收訪問授權代碼。因此,硬體單元確信已由處理器將訪問授權代碼提供給該硬體單元。
由於該特徵保證從由控制中斷程序組成的信任組件中確定地接收到訪問授權代碼,所以該特徵可以實現對外設訪問的高度有效控制。
換言之,本發明基於軟體組件(軟體程序)的使用,該軟體程序組成訪問外設的單個點,以及該軟體程序結合併通過訪問控制硬體單元來監視訪問外設的電信號。
優選地,該軟體組件位於處理器的安全和控制區域。
因此,本發明可以通過由硬體裝置在最低電平上驗證訪問該外設的電信號,來控制對處理器外設的訪問。具體地,可以從屏幕、鍵盤、存儲器、通信接口控制器、存儲管理單元(MMU)或存儲保護單元(MPU)中選擇外設。
當本發明用於控制對具有啟動代碼(引導裝入程序)的快閃記憶體的寫入訪問時,允許在沒有物理幹涉的情況下更新該啟動代碼,同時保護該代碼免於欺騙性操作。
在該文獻的剩餘部分中,術語「外設」將用於有關任何類型的電子組件(屏幕、鍵盤、存儲器、通信接口、智慧卡接口、MMU、MPU等),這些組件或者是離散組件、或者「集成」於FPGA或ASIC。
類似地,表述「訪問電信號」將用於有關必須被激活以選擇外設或寫入外設的任何電信號(片選(CS)型或寫允許(WE)型信號)。
類似地,術語「中斷」將用於有關設計用於異步地或以其它方式中止軟體執行的任何裝置。
為了顯著加強系統的安全性,控制中斷是非可屏蔽中斷,這意味著不可能屏蔽上述中止。
本領域技術人員將理解,依據所選結構,可以使用不同類型的信號用於此目的,以及具體地INTEL x86家族結構的NMI信號;MOTOROLA 68k家族結構的IPL7等級;與MC68K結構中的/BERR信號相關聯的地址或數據誤差周期;ARM7TDMI結構中的ABORT例外。
根據本發明,從而僅在將與硬體單元的已知預定參考值兼容的訪問授權代碼呈現給控制對所述外設的訪問的硬體單元時,可以訪問受保護的外設。
因此,具體地,本發明可以保護所謂的安全存儲器,例如包含於符合GSM的行動電話中的用於存儲與運營商定購的商業術語的安全存儲器(SIM鎖)。
僅在有效訪問授權代碼呈現給控制對該存儲器進行訪問的硬體單元時,才可能對這些SIM鎖規則進行欺騙性替換。
本發明還可以用於遠程地更新BIOS、或者設備的作業系統。因而,將在客戶不必訪問升級中心地情況下,易於直接通過GSM無線鏈路,對可攜式電話進行升級。
因而,本發明可以用於防止對PC的BIOS的任何欺騙性修改,從而顯著地提高PC的安全性,尤其在BIOS包含更高級安全機制時。
優選地,控制硬體單元附加地包括獲得觸發代碼的裝置,以及一旦獲得觸發代碼,則指定觸發控制中斷的裝置來觸發中斷。
例如,在對外設進行任何訪問之前,可以由處理器發送該觸發代碼。因而,在處理器與硬體單元之間安排完全閉環機制,這意味著,在驗證訪問信號之前,系統地,訪問控制硬體單元請求來自處理器的訪問控制硬體單元。
優選地,訪問控制硬體單元包括將該觸發代碼與預定參考值進行比較的裝置,所述觸發裝置設計用於根據所述比較結果來觸發控制中斷。
因此,在出現錯誤的觸發代碼時,如以下所述,可以引入另一過程。
因此,在可選實施例中,根據本發明的訪問控制硬體單元包括以下裝置,該裝置用於在所述訪問授權代碼或所述觸發代碼不同於預定參考值時來觸發處理器中斷,稱為警告中斷。優選地,該警告中斷是非可屏蔽中斷。
在第一可選實施例中,預定參考值是常數。
因此,控制中斷程序可以通過簡單地將該常數發送至控制硬體單元,來授權對外設的訪問。該變體尤其易於產生作用。
在第二可選實施例中,根據本發明的訪問控制硬體單元包括根據預定規則生成上述參考值的裝置。
有利地,該特徵用於加強對訪問外設的控制,這是由於為了能夠將有效的訪問授權代碼呈現給訪問控制硬體單元,盜版者也需要知道該預定規則。
在該第二可選實施例的優選模式中,預定參考值是在硬體單元開啟是初始化了的計數器,以及預定規則包括,每次獲得訪問授權代碼則該計數器加1。
具體地,可以由與有限狀態控制器相關聯的計數器來實施該預定規則,這避免了花費更高的(協)處理器的使用,並限制了硬體單元的整體操作成本。
根據另一有利特徵,控制對外設的訪問的硬體單元的驗證裝置包括邏輯組合裝置,設計用於接收請求訪問外設的電信號;接收驗證信號;以及根據訪問請求電信號的狀態、驗證信號的狀態、以及真值表中描述的邏輯,來驗證訪問電信號。
根據該特徵,因而在滿足兩個條件時,即一方面,通過例如處理器的第三方呈現對外設的訪問請求,以及另一方面,當上述比較的結果代表了通過控制硬體單元獲得有效的訪問授權代碼時,來驗證對外設的訪問。
優選地,由訪問請求信號與驗證信號之間的「邏輯與」組合產生訪問信號。該實施例尤其易於產生作用。
在優選實施例中,根據本發明的訪問控制硬體單元包括讀取訪問請求電信號狀態的裝置、以及根據該狀態和訪問驗證電信號的狀態來觸發警告中斷(優選地,非可掩蔽式)的裝置。
有利地,該特徵在沒有將訪問授權代碼呈現給訪問控制硬體單元的情況下,當訪問請求電信號的狀態代表訪問外設的請求時,使得能夠觸發該警告中斷。
在優選實施例中,根據本發明的訪問控制硬體單元包括禁止驗證信號的裝置,優選地,在一個或多個對外設的訪問之後,對該禁止產生作用。
有利地,該特徵可以加強對訪問外設的控制,這是由於即使在每個對外設的訪問之前,也必須有規律地執行控制。
在另一實施例中,在從訪問驗證電信號的生成起計數、或者從獲得訪問代碼起計數的預定延遲之後,對驗證信號的禁止產生作用。
有利地,該特徵可以在該時延期間不進行控制的情況下授權訪問外設,這提高了系統的整體性能。該特徵在與外設交換的數據值很大時、如在屏幕的情況下,尤其有用。
相應地,本發明涉及由處理器控制對該處理器的外設進行訪問的方法。所述方法包括以下步驟觸發稱為控制中斷的處理器中斷,優選地,非可掩蔽式;從處理器中並在所述觸發之後,獲得外設的訪問授權代碼;將該訪問授權代碼與預定參考值進行比較;根據所述比較步驟的結果來生成驗證外設訪問信號的電信號。
所給出的有關控制硬體單元的該訪問控制方法的特定優點和特徵與先前描述的那些是相同的,所以將不再重複。該方法實質上包括檢查必要地從信任組件中進行接收的一個或多個訪問授權代碼的有效性,通過將該授權代碼與預定參考值(常數或根據規則生成)進行比較,以及根據該比較來驗證外設訪問電信號。
根據另一方案,本發明涉及一種處理器,包括以上簡要描述的訪問控制硬體單元。該處理器還包括裝置,用於實施設計以獲得訪問授權代碼的控制中斷程序;以及裝置,用於將該訪問授權代碼發送至訪問控制硬體單元。
在本發明的優選實施例中,在處理器中嵌入先前描述的訪問控制硬體單元,該處理器包括將授權訪問給定外設的代碼發送至控制硬體單元的裝置。
本發明的該優選實施例顯著地加強了對外設的訪問控制,這是由於,不可能物理地旁路、或者換言之,來分路訪問控制硬體單元。
優選地,根據本發明的處理器包括保護對其的訪問的外設。
具體地,該外設可以是存儲管理單元。
因此,本發明可以保護對存儲管理單元(MMU)的訪問。這可以在相同的處理器上創建兩個完全密封的系統環境。如果另外地提供空間用於這兩個環境之間的控制數據交換,則本領域技術人員將認識到,構建這樣的設備是簡單的事情,其中,將特定功能(作業系統或諸如支付、驗證、版權保護和拷貝保護應用程式之類的敏感的應用程式)與更加開放、因而更加易於受到攻擊的應用程式(網際網路瀏覽器、遊戲、視頻、電子郵件等)相隔離。
根據本發明的包含於處理器中的外設還可以是用於處理器引導存儲器的寫入控制器。
因此,該優選實施例保證了處理器引導存儲器的安全,該保護使得不可能欺騙性地修改包含於該存儲器中的數據,由於該區域經常處理較高級地安全程序調用,所以這裡是安全非常關鍵的區域。
相應地,本發明涉及管理對外設的訪問的方法。該管理方法包括運行與控制中斷(優選地,非可屏蔽式的)相關聯的程序的步驟。如上面所簡要描述的,該控制程序包括將訪問授權代碼發送至訪問控制硬體單元的步驟。
在第一可選實施例中,訪問控制代碼是從受保護存儲器中讀取的常數。
在第二可選實施例中,附加地,訪問管理方法包括根據預定規則生成訪問授權代碼的步驟。
本領域技術人員將易於認識到,在該第一可選實施例中,優選地是屏蔽所有中斷,在沒有屏蔽所有中斷的情況下,在從受保護存儲器中讀取常數與觸發非可屏蔽控制中斷程序之間的時間間隔期間,對外設進行非法訪問會受到惡意中斷的影響。
所給出的有關根據本發明的處理器的該訪問管理方法的特定優點和特徵與先前簡要描述的那些是相同的,所以將不再重複。該方法實質上由以下組成必要地從信任組件(即,實施控制中斷程序的處理器)中提供對授權代碼的訪問,由控制硬體單元將這些代碼與預定參考值(常數或根據規則生成)進行比較,來授權或拒絕對外設的訪問。
本發明還公開了電腦程式,包括訪問外設的指令、以及如之前簡要描述的,在執行該訪問指令之前,將觸發代碼發送給控制訪問該外設的硬體單元。
優選地,該電腦程式附加地包括根據生成訪問授權代碼的預定規則來生成觸發代碼的裝置。
該電腦程式組成訪問外設的單個點,優選地,位於處理器的安全和控制區域中。該程序結合硬體單元來控制訪問該外設的電信號。
本發明還公開了處理器,設計用於實現訪問控制方法、訪問管理方法、和/或諸如以上所簡要描述之類的電腦程式。


通過閱讀以下描述的特定實施例,本發明的其它方案和優點將變得更加清楚,參考附圖,該描述僅作為非限制性示例提出,其中圖1示出了在第一實施例中的根據本發明的處理器;圖2示出了在第二實施例中的根據本發明的處理器;圖3示出了在優選實施例中的根據本發明的訪問控制硬體單元;圖4a和4b以控制圖的形式示出了根據本發明的訪問控制方法的主要步驟;圖5以結構框圖的形式示出了在優選實施例中根據本發明的控制中斷程序的主要步驟;以及圖6以結構框圖的形式示出了根據本發明的訪問受保護外設的程序的主要步驟。
具體實施例方式
這裡描述的本發明的實施例更具體地涉及對訪問包含於處理器中的引導存儲器的保護。
圖1描述了在優選實施例中的根據本發明的處理器110。
處理器110包括引導存儲器120(BOOT-ROM)和受保護的易失性存儲器(RAM)。該引導存儲器120包括中斷向量表VECT、兩個中斷程序、各個控制IRT1和警告IRT2、以及電腦程式PROG。
該電腦程式PROG是處理器內部的外設P的控制程序,這樣的程序通常稱為「驅動器」。
在這裡描述的優選實施例中,處理器內部外設P是用於上述引導存儲器120的寫入控制器。
處理器110包括根據本發明的控制訪問外設P的硬體單元20。
該訪問控制硬體單元20包括獲取用於訪問外設P的觸發代碼Code-DD和授權代碼Code-AA的裝置。
在這裡描述的實施例中,從相同的寄存器21中獲得觸發代碼Code-DD和訪問授權代碼Code-AA。
在這裡描述的優選實施例中由控制中斷程序IRT1將訪問授權代碼Code-AA寫入寄存器21中;以及由外設P的驅動器PROM將觸發代碼Code-DD寫入寄存器21中。
因此,根據本發明,在訪問外設P的每個指令(寫入、讀取等)之前,電腦程式PROG將觸發代碼Code-DD寫入硬體單元20的寄存器21中。
在這裡描述的實施例中,觸發代碼Code-DD和訪問授權代碼Code-AA是根據預定增量規則計算的相同變量的兩個連續值。
該變量存儲於處理器的易失性RAM存儲器的受保護區域中。該存儲器僅可由電腦程式PROG和控制中斷程序IRT1來訪問。
訪問控制硬體單元20還包括裝置24,設計用於在將授權代碼Code-AA或觸發代碼Code-DD寫入寄存器21時,根據預定規則來生成參考值Code-UMCA。
在這裡描述的優選實施例中,該規則包括使Code-UMCA計數器遞增,Code-UMCA計數器在開啟處理器110時初始化。
訪問控制硬體單元20還包括裝置22,將從寄存器21中獲得的訪問授權代碼Code-AA(以及觸發代碼Code-DD)與通過生成該值的裝置24計算得到的預定參考值Code-UMCA進行比較。
在這裡描述的優選實施例中,這些比較裝置22由有線邏輯器組成。
情況可以是,這些比較裝置22設計用於在發現觸發代碼Code-DD等於參考Code-UMCA的當前值時,將第一信號發送給中斷觸發單元26。這將參照圖4a在之後進行描述。
在接收該第一信號時,中斷觸發裝置26生成中斷信號。在這裡描述的示例中,該終端信號是非可屏蔽中斷信號NMI1。
在接收該非可屏蔽中斷信號NMI1時,處理器通過中斷向量表VECT來執行控制中斷程序IRT1。
該控制中斷程序IRT1實施計算功能Gen-Code,設計用於根據預定規則來計算訪問授權代碼Code-AA的新值,將該新值存儲於受保護存儲器中,以及將該新的Code-AA值寫入訪問控制硬體單元20的寄存器21中。
該預定規則與由生成參考值Code-UMCA的裝置24實施的預定規則相同。因此,在這裡描述的優選實施例中,該規則是遞增規則,以及訪問授權代碼Code-AA等於觸發代碼Code-DD的值加一。
當獲得訪問授權代碼Code-AA的裝置21從控制中斷程序IRT1中接收授權代碼Code-AA時,生成參考值Code-UMCA的裝置24根據預定增量規則來生成新的參考值。
然後,通過先前描述的比較裝置22對這兩個新值進行比較。
根據本發明,比較裝置22設計用於在訪問控制硬體單元20的觸發器23中設置代表兩新值比較結果的值。
在這裡描述的實施例中,將假設當新的訪問授權代碼Code-AA和新的預定參考值Code-UMCA相等時,有線邏輯22在觸發23中設置值1。
因此,在這裡描述的優選實施例中,當連續地從驅動器器PROG和從控制中斷程序IRT1中接收的觸發代碼Code-DD和授權代碼Code-AA等於裝置24在接收代碼時生成的兩預定參考值Code-UMCA時,將觸發器23的內容設置為1。
根據該優選實施例,當觸發器23設置為1時,生成用於傳輸至訪問控制硬體單元20的邏輯組合裝置25的驗證電信號SIG-VAL。
因此,在該優選實施例中,在滿足上述兩條件時生成驗證信號SIG-VAL。
在將觸發代碼Code-DD傳輸至訪問控制硬體單元20時,驅動器PROG根據預定規則(即,在這裡描述的實施例中進行遞增)生成新值,並將該新值存儲於受保護的易失性RAM存儲器中。
然後,外設P的驅動器執行訪問外設P的指令。
以本領域技術人員已知的方式,該指令在地址解碼器27的輸出處生成傳輸至外設P的片選型訪問電信號。
根據本發明,不將該訪問信號直接傳輸至外設P,而是遞送至上述邏輯組合裝置25的輸入。
在該文獻的剩餘部分中,將該信號稱為訪問請求電信號CS-RQ。
在輸入處一方面接收請求訪問外設P的電信號CS-RQ、另一方面接收驗證信號SIG-VAL的邏輯組合裝置25還包括,以已知方式設計用於生成傳輸至外設P的片選型訪問信號的真值表。
換言之,為了本發明的目的,真值表25有利於驗證訪問外設P的電信號。
在這裡描述的優選實施例中,將在訪問組合裝置CS輸出處的訪問信號CS遞送至觸發器23的輸入。
在該實施例中,當對外設P進行訪問時,即,當訪問信號CS的狀態為高時,觸發器23的值重新設置為0。
這具有在相同觸發器23的輸出處禁止驗證信號SIG-VAL的作用,因此具有使對外設P的任何訪問無效的作用。
在另一實施例中,以循環方式,例如,每五次訪問,而不是每次訪問外設P的方式,來禁止驗證信號SIG-VAL。
在另一優選實施例中,訪問信號CS不反饋至觸發器23。觸發器23設計用於在從生成該相同的信號起、或者從獲得觸發代碼Code-DD起進行計數的預定時延之後,自動地禁止驗證信號SIG-VAL。
在這裡描述的優選實施例中,比較裝置22設計用於在通過比較檢測到,從寄存器21中獲得的代碼不同於接收該代碼時生成的預定參考值Code-UMCA時,將第二信號發送至中斷觸發單元26。
在接收該第二信號時,中斷觸發裝置26將第二中斷信號發送至引導存儲器120。在這裡描述的實施例中,這是非可屏蔽中斷信號NMI2。
因此,如果惡意程序在寄存器21中寫入隨機代碼,則比較裝置22將觸發非可屏蔽中斷INM2。
在接收該第二中斷信號時,處理器執行警告中斷程序IRT2,用於控制對外設P的欺騙性訪問。
圖2示出了在另一實施例中的根據本發明的另一處理器210。
該處理器210與先前參照圖1描述的處理器110之間僅有的差異在於,處理器210用於控制對外部外設P的訪問。
所給出的所有其它特徵是相同的,所以將不再進一步描述。
圖3以處理器10的外部組件的形式示出了訪問控制硬體單元20。
在本發明的該實施例中,與訪問控制硬體單元20合作的處理器10包括與對圖1中的處理器110進行描述的引導存儲器相同的引導存儲器120。
該附圖中的訪問控制硬體單元20與先前參照圖1描述的訪問控制硬體單元相同,以下將不再進行描述。
圖4a以有限狀態控制器的形式示出了在優選實施例中,根據本發明的訪問控制方法的主要步驟。
在該附圖中,「橢圓」代表狀態,箭頭代表轉移、以及矩形代表實現轉移的必要和充分條件。
在該描述的剩餘部分,將可交替地使用電腦程式領域的技術人員已知的術語「步驟」或「狀態」。
該控制器包括第一初始化狀態E10,在使用輸出值(例如,零)對預定參考值Code-UMCA進行初始化時激勵該第一初始化狀態E10,然後存儲於易失性RAM存儲器中。
然後進入等待狀態E20。
當在該等待狀態E20中,訪問控制硬體單元接收觸發代碼Code-DD(轉移E25)時,進入狀態E30,在其中將該觸發代碼Code-DD與預定參考值Code-UMCA進行比較。
然而,當在該等待狀態E20中,在外設P處檢測到訪問請求電信號CS-RQ(轉移E22)時,進入狀態E100,在其中觸發非可屏蔽警告中斷NMI2。
自動地激勵該觸發非可屏蔽警告中斷NMI2的狀態E100,然後進入警告管理狀態E110。
在優選實施例中,警告管理狀態E110使得執行終端代碼(RESET條件的生成)。在其它實施例中,可以依據應用程式來設計不同的反應。這些實施例不是本專利的目的,將不在此進行描述。
一旦完成該警告管理程序,便可已取消該警告,並重新開始先前描述的等待狀態E20。
當從比較狀態E30中確定觸發代碼Code-DD不同於預定參考值Code-UMCA(轉移E85)時,進入狀態E100,在其中觸發先前描述的非可屏蔽警告中斷NMI2。
然而,當從比較狀態E30中確定觸發代碼Code-DD與預定參考值Code-UMCA相同(轉移E31)時,進入狀態E32,在其中,根據預定遞增規則生成新的預定參考值Code-UMCA。
在生成新的參考值Code-UMCA的狀態E32之後是觸發非可屏蔽控制中斷NMI1的狀態E34。
一旦觸發該非可屏蔽控制中斷NMI1,便進入等待狀態E36,在其中,等待訪問授權代碼Code-AA。
如果在該等待訪問授權代碼Code-AA的狀態E36中,檢測到訪問請求電信號CS-RQ(轉移E90),則進入狀態E100,在其中觸發非可屏蔽警告中斷信號NMI2。
然而,當在等待狀態E36中,獲得訪問授權代碼Code-AA(轉移E37)時,進入狀態E38,在其中,將該訪問授權代碼Code-AA與新的當前參考值Code-UMCA進行比較。
如果在該比較狀態E38中確定訪問授權代碼Code-AA不同於參考值Code-UMCA(轉移E95)時,進入狀態E100,在其中觸發非可屏蔽警告中斷NMI2。
然而,如果這兩個值相等(轉移E39)時,激勵比較狀態E38,然後進入狀態E40,在其中生成新的參考值Code-UMCA。
自動地激勵該生成狀態E40,然後進入狀態E50,在其中,生成電子信號SIG-VAL以驗證對外設P的訪問信號。
然後自動地激勵該生成驗證電信號SIG-VAL的狀態E50,然後進入等待狀態E60,直至實際發生對外設P的訪問。
當在該等待狀態E60中檢測到實際發生了訪問(轉移E65)時,進入狀態E70,在其中,禁止驗證信號SIG-VAL。
然後自動地激勵該禁止狀態E70,並重新開始先前描述的等待狀態E20。
在另一實施例中,當在等待狀態E60中檢測到獲得來自寄存器21的代碼(轉移E67)時,進入狀態E100,在其中,觸發非可屏蔽警告中斷NMI2,有必要將該訪問授權代碼通過無惡意的第三方發送至訪問控制硬體單元。該實施例用於通過在驗證訪問之後檢測對外設的欺騙性訪問,來加強系統的安全性(狀態E60)。
圖4b描述了在第二實施例中的本發明的訪問控制方法的狀態圖。
在不包括接收觸發代碼Code-DD的步驟的意義上對本發明的該實施例進行簡化。當然,去除了處理該觸發代碼Code-DD的任何步驟(E30、E31、E32、E85)。
由觸發步驟E26來替換步驟E25,觸發步驟E26由本領域技術人員已知的能夠生成中斷的任何裝置來實現。
在觸發步驟E26之後自動地跟隨步驟E34,在其中,生成圖4a中描述的非可屏蔽控制中斷NMI1。
在該實施例中,授權代碼Code-AA是常數,去除了生成參考值Code-UMCA的步驟E40。
控制中斷程序IRT1在寄存器21中呈現由受保護存儲器中的電腦程式PROG所存儲的值。
圖5示出了在優選實施例中,由根據本發明的處理器實施的非可屏蔽控制中斷程序IRT1的主要步驟E500至E520。
在訪問控制硬體單元20生成非可屏蔽控制中斷NMI1時激活該程序。
這裡描述的程序IRT1包括第一步驟E500,在第一步驟E500期間,將包括相同名稱的訪問授權代碼的變量Code-AA的內容存儲於變量VA中。
在參照圖4a描述的實施例中,在讀取訪問授權代碼Code-AA的步驟E500之後跟隨步驟E510,在步驟E510期間,根據先前描述的預定規則生成新的訪問授權代碼Code-AA。在這個相同的步驟期間,將訪問授權代碼Code-AA的這個新的值存儲於受保護存儲器中。
在生成和存儲新的訪問授權代碼Code-AA的步驟E510之後跟隨將變量VA的內容發送至訪問控制硬體單元20的步驟E520。
在這裡描述的優選實施例中,該發送步驟包括將變量VA的內容寫入寄存器21。
在參照圖4b描述的實施例中,在讀取訪問授權代碼Code-AA的步驟E500之後跟隨該步驟E520。
情況可以是,在發送訪問授權代碼的步驟E520之後跟隨本領域技術人員已知的IRET類型的指令,這一方面包括取消中斷NMI1的源,並從所述中斷中返回。
根據本發明的訪問管理方法選擇性地包括,響應從訪問控制硬體單元20中產生的非可屏蔽中斷信號NMI2的警告中斷程序IRT2。
該非可屏蔽警告中斷實質上包括根據適當的規則生成警告和/或處理未受權的訪問。
圖6示出了包括用於訪問圖4a的實施例中根據本發明的安全外設P的指令的電腦程式PROG的主要步驟E600至E630。
該電腦程式包括兩個步驟E600和E610,分別與讀取訪問授權代碼的步驟E500、以及生成並存儲先前參照圖5描述的訪問授權代碼的步驟E510相同或類似。
因此,在這兩個步驟期間,電腦程式P[sic]將當前觸發代碼Code-DD的內容存儲於變量VA中,根據預定規則(遞增規則)生成新的觸發代碼Code-DD,以及將該新值存儲在與中斷程序IRT1共享的安全存儲器中。
在訪問外設P的每個步驟E630之前,電腦程式PROG包括步驟E620,在該步驟期間,將變量VA的內容發送至訪問控制硬體單元20,這在這裡描述的實施例中包括將該變量的內容寫入寄存器21中。
在將訪問授權代碼CA發送至訪問控制硬體單元20的步驟E620之後跟隨訪問外設P的步驟E630.
在根據圖4b中的實施例的本發明的實施方式中,電腦程式PROG包括在訪問外設的步驟E630之前,將常數值存儲於處理器的受保護存儲器中的步驟E610』,然後觸發第一非可屏蔽控制中斷IRT1的步驟E620』。
在訪問之後,將所述常數的任何不同的值存儲於處理器受保護的存儲器中。
該步驟還可以由控制中斷程序IRT1來執行。
權利要求
1.一種硬體單元(20),用於由處理器(10、110、120)來控制對所述處理器的外設(P)的訪問,所述硬體單元(20)包括裝置(26),用於觸發所述處理器中斷,稱為控制中斷;裝置(21),用於從所述處理器中以及在所述觸發之後,獲得授權訪問所述外設(P)的訪問授權代碼(Code-AA);裝置(22),用於將所述訪問授權代碼(Code-AA)與預定參考值(Code-UMCA)進行比較;以及所謂的驗證裝置(22、23、25),設計用於依據所述比較的結果,來生成驗證訪問所述外設(P)的電信號(CS、WE、PWR)的電信號(SIG_VAL)。
2.如權利要求1所述的訪問控制硬體單元,其特徵在於,所述控制中斷是非可屏蔽中斷(NMI1)。
3.如權利要求1或2所述的控制硬體單元,其特徵在於,所述控制硬體單元附加地包括用於獲得觸發代碼(Code-DD)的裝置(21),並且將觸發所述控制中斷(NMI1)的所述裝置(26)設計用於觸發在獲得所述觸發代碼(Code-DD)之後的所述中斷。
4.如權利要求3所述的訪問控制硬體單元,其特徵在於,所述控制硬體單元附加地包括裝置(22),用於將所述訪問授權代碼(Code-DD)與所述預定參考值(Code-UMCA)進行比較;並且將所述觸發裝置(26)設計用於依據所述比較的結果來觸發所述控制中斷(NMI1)。
5.如權利要求1至4之一所述的訪問控制硬體單元,其特徵在於,所述控制硬體單元包括裝置(26),用於在所述訪問授權代碼(Code-AA)或所述觸發代碼(Code-DD)不同於所述預定參考值(Code-UMCA)時,觸發稱為警告中斷的所述處理器的中斷。
6.如權利要求5所述的訪問控制硬體單元,其特徵在於,所述警告中斷是非可屏蔽中斷(NMI2)。
7.如權利要求1至6之一所述的訪問控制硬體單元,其特徵在於,所述預定參考值(Code-UMCA)是常數。
8.如權利要求1至6之一所述的訪問控制硬體單元,其特徵在於,所述控制硬體單元包括裝置(24),用於根據預定規則生成所述參考值(Code-UMCA)。
9.如權利要求8所述的訪問控制硬體單元,其特徵在於,所述預定參考值(Code-UMCA)是在開啟所述硬體單元(UMCA)時進行初始化的計數器,並且根據所述預定規則,所述計數器在每次獲得所述訪問授權代碼(Code-AA)時遞增。
10.如權利要求1至9之一所述的訪問控制硬體單元,其特徵在於,所述驗證裝置(22、23、25)包括邏輯組合裝置(25),設計用於接收請求訪問所述外設(P)的電信號(CS-RQ,WE-RQ);接收所述驗證信號(SIG_VAL);以及根據所述訪問請求電信號(CS-RQ,WE-RQ)的狀態(RQ_0,RQ_1)、所述驗證信號的狀態(VAL_0,VAL_1)、以及在真值表(25)中描述的邏輯,來驗證所述訪問電信號(CS,WE)。
11.如權利要求10所述的訪問控制硬體單元,其特徵在於,所述控制硬體單元包括裝置(26),用於讀取所述訪問請求電信號(CS-RQ,WE-RQ)的狀態(RQ_0,RQ_1),以及裝置(26),根據所述訪問驗證電信號(SIG_VAL)的該狀態(RQ_0,RQ_1)和所述狀態(VAL_0,VAL_1),來觸發所述處理器的中斷,所述中斷稱為警告中斷(NMI2),優選地,是非可屏蔽的。
12.如權利要求1至11之一所述的訪問控制硬體單元,其特徵在於,所述控制硬體單元包括裝置(23),用於禁止所述驗證信號(SIG_VAL)。
13.如權利要求12所述的訪問控制硬體單元,其特徵在於,所述禁止裝置(23)設計用於在至少一個對所述外設(P)的訪問之後,禁止所述驗證信號(SIG_VAL)。
14.如權利要求12或13所述的訪問控制硬體單元,其特徵在於,所述禁止裝置(23)設計用於在從所述訪問驗證電信號(SIG_VAL)的生成起計數、或者從獲得所述訪問代碼(Code-AA)起計數的預定時延之後,禁止所述驗證信號(SIG_VAL)。
15.一種處理器(110),其特徵在於,所述處理器包括根據權利要求1至14之一的訪問控制硬體單元(20);實施控制中斷程序(IRT1)的裝置(VECT),設計用於獲得所述訪問授權代碼(Code-AA);以及裝置(IRT1),用於將所述訪問授權代碼(Code-AA)發送至所述訪問控制硬體單元(20)。
16.如權利要求15所述的處理器,其特徵在於,所述控制中斷程序包括從受保護存儲器中讀取所述訪問代碼(Code-AA)的裝置。
17.如權利要求15或16所述的處理器,其特徵在於,所述處理器附加地包括將觸發代碼(Code-DD)發送至所述訪問控制硬體單元(20)的裝置。
18.如權利要求15至17所述的處理器,其特徵在於,所述控制中斷程序(IRT1)設計用於根據預定規則生成所述訪問代碼(Code-AA)。
19.如權利要求18所述的處理器,其特徵在於,所述訪問代碼(Code-AA)是計數器,並且所述預定規則包括,在開啟所述處理器(110)時初始化所述計數器(Code-AA),以及在每次將所述代碼(Code-AA)發送至所述硬體單元(20)時使所述計數器遞增。
20.如權利要求15至19之一所述的處理器,其特徵在於,所述處理器附加地包括實施警告中斷程序(IRT2)的裝置(VECT),設計用於生成警告和/或禁止所述外設(P)的使用。
21.如權利要求15至20之一所述的處理器,其特徵在於,所述處理器包括所述外設(P),具體地,能夠從所述處理器的引導存儲器(120)的寫入控制器中、以及從存儲管理單元(MMU)中選擇所述外設(P)。
22.一種由處理器(10、110、210)控制訪問所述處理器外設(P)的方法,其特徵在於,所述方法包括以下步驟觸發(E34)所述處理器的中斷,稱為控制中斷;從所述處理器中以及在所述觸發之後,獲得(E37)所述外設(P)的訪問授權代碼(Code-AA);將所述訪問授權代碼(Code-AA)與預定參考值(Code-UMCA)進行比較(E38);依據所述比較步驟(E30)的結果來生成(E50)驗證所述外設(P)的訪問信號(CS、WE、PWR)的電信號(SIG_VAL)。
23.如權利要求22所述的訪問控制方法,其特徵在於,所述控制中斷是非可屏蔽中斷(NMI1)。
24.如權利要求22或23所述的訪問控制方法,其特徵在於,在獲得(E25)觸發代碼(Code-DD)的步驟之後,執行所述觸發步驟(E34)。
25.如權利要求24所述的訪問控制方法,其特徵在於,所述訪問控制方法附加地包括將觸發代碼(Code-DD)與所述預定參考值(Code-UMCA)進行比較的步驟(E30),並且依據所述比較步驟(E30)的結果來執行所述觸發步驟(E34)。
26.如權利要求22至25之一所述的訪問控制方法,其特徵在於,所述訪問控制方法包括,當所述訪問授權代碼(Code-AA)或所述觸發代碼(Code-DD)不同於所述預定參考值(Code-UMCA)時,來觸發稱為警告中斷的所述處理器的中斷的步驟(E100)。
27.如權利要求26所述的訪問控制方法,其特徵在於,所述警告中斷是非可屏蔽中斷(NMI2)。
28.如權利要求22至27之一所述的訪問控制方法,其特徵在於,所述預定參考值(Code-UMCA)是常數。
29.如權利要求22至27之一所述的訪問控制方法,其特徵在於,所述訪問控制方法附加地包括根據預定規則生成所述參考值(Code-UMCA)的步驟(E40)。
30.如權利要求29所述的訪問控制方法,其特徵在於,所述預定參考值(Code-UMCA)是計數器,所述方法附加地包括初始化所述計數器、在所述生成步驟(E40)期間使所述計數器遞增的步驟(E10)。
31.如權利要求22至30之一所述的訪問控制方法,其特徵在於,在生成驗證信號的所述步驟(E50)期間讀取請求訪問所述外設(P)的電信號(CS-RQ,WE-RQ)的狀態(RQ_0,RQ_1);讀取所述驗證信號(SIG_VAL)的狀態(VAL_0,VAL_1);以及根據所述訪問請求電信號(CS-RQ,WE-RQ)的狀態(RQ_1)、所述驗證信號(SIG_VAL)的狀態(VAL_1)、以及根據邏輯規則的函數,來驗證所述訪問電信號(CS,WE)。
32.如權利要求31所述的訪問控制方法,其特徵在於,所述訪問控制方法包括讀取所述訪問請求電信號(CS-RQ,WE-RQ)的狀態(RQ_0、RQ_1)的步驟(E20,E36),以及根據所述訪問驗證電信號(SIG_VAL)的所述狀態(RQ_0,RQ_1)和所述狀態(VAL_0,VAL_1),來觸發所述處理器的可屏蔽中斷,所述中斷稱為警告中斷(NMI2),優選地,是非可屏蔽的。
33.如權利要求22至32之一所述的訪問控制方法,其特徵在於,所述訪問控制方法包括禁止所述驗證信號(SIG_VAL)的步驟(E70)。
34.如權利要求33所述的訪問控制方法,其特徵在於,在訪問所述處理器(P)的至少一個步驟(E65)之後,執行所述禁止步驟(E70)。
35.如權利要求33或34所述的訪問控制方法,其特徵在於,在從生成所述訪問驗證電信號(SIG_VAL)的所述步驟(E50)起計數的、或者從獲得所述觸發代碼(Code-DD)的所述步驟(E25)起計數之後,執行所述中斷步驟。
36.一種管理對外設(P)的訪問的方法,其特徵在於,所述方法包括實施與控制中斷(優選地,非可屏蔽式的(NMI1))相關聯的程序(IRT1)的步驟,所述控制程序包括,將訪問授權代碼(Code-AA)發送至如權利要求1至14之一所述的訪問控制硬體單元(20)的步驟(E520)。
37.如權利要求36所述的管理訪問外設(P)的方法,其特徵在於,所述方法包括為了所述發送,從受保護存儲器中讀取所述訪問代碼(Code_AA)的步驟。
38.如權利要求36所述的管理訪問外設(P)的方法,其特徵在於,所述方法包括為了所述發送,根據預定規則生成訪問代碼(Code_AA)的步驟(E510)。
39.如權利要求38所述的管理訪問方法,其特徵在於,所述訪問代碼(Code_AA)是計數器,所述方法附加地包括初始化所述計數器(Code_AA)的步驟,並且所述生成步驟(E510)包括在每次將所述代碼(Code_AA)發送至所述硬體單元(20)之前,使所述計數器(Code_AA)遞增。
40.如權利要求36至39所述的管理訪問方法,其特徵在於,所述方法附加地包括實施警告中斷程序(IRT2)的步驟,所述警告程序包括生成警告和/或禁止所述外設使用的步驟。
41.一種包括訪問外設(P)的指令(E630)的電腦程式,其特徵在於,所述電腦程式包括指令(E620),用於在所述訪問指令的執行之前,將觸發代碼(Code_DD)發送至根據權利要求1至14之一的所述外設(P)的訪問控制硬體單元(20)。
42.如權利要求41所述的電腦程式,其特徵在於,所述電腦程式附加地包括根據所述預定規則生成所述觸發代碼(Code-DD)的裝置。
43.一種處理器,設計用於實施根據權利要求22至35之一的訪問控制方法,和/或根據權利要求36至40之一的管理訪問方法,和/或根據權利要求41或42的電腦程式。
44.一種對如權利要求1至14之一所述的訪問控制硬體單元(20)的使用,用於驗證外設(P)的訪問信號,所述外設(P)具體可從屏幕、鍵盤、存儲器、通信接口控制器、存儲器管理單元(MMU)、或存儲器保護單元(MPU)中選擇。
全文摘要
提出了一種由處理器控制對所述處理器的外設訪問的方法,所述方法包括以下步驟觸發(E34)處理器的中斷,稱為控制中斷;從所述處理器中以及在所述觸發之後,獲得(E37)所述外設的訪問授權代碼(Code-AA);將所述訪問授權代碼(Code-AA)與預定參考值(Code-UMCA)進行比較(E38);依據所述比較步驟(E30)的結果來生成(E50)驗證外設訪問信號的電信號。
文檔編號G06F21/78GK1947082SQ200580012360
公開日2007年4月11日 申請日期2005年3月17日 優先權日2004年3月19日
發明者菲利普·布雷西, 吉勒·佩洛蒂 申請人:安全機器有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀