技術領域
本公開涉及設備安全,并且更具體地涉及被配置成用于通過硬件強制安全增強基于軟件的保護方案的系統(tǒng)。
背景技術:
由于例如使其可應用于許多日常情況的日益增加的功能性,市場上出現(xiàn)的各種各樣的移動設備持續(xù)擴展。例如,移動“智能”設備除簡單的語音交互之外的通信數(shù)據(jù)能力使得這些設備可用于處理傳統(tǒng)上需要通過有線連接(例如,鏈接到互聯(lián)網(wǎng)的臺式計算機)處理、需要親自處理等等的任務。可使用移動設備上被配置成用于提供諸如例如個人或職業(yè)交互性(例如,電子郵件、消息傳送等等)、財務管理和交易(例如,銀行業(yè)務、電子購物等等)等功能性、數(shù)據(jù)庫功能性(諸如聯(lián)系人管理、娛樂應用等等)的各種應用執(zhí)行這些任務。
然而,移動設備所創(chuàng)造的便利性具有某些固有的風險。移動設備本身內存在可使其吸引可能希望非法地擁有它的其他人的大量轉售價值。于是,移動設備上存儲有信息。這種信息可包括標識信息(姓名、地址、電話號碼、社會保障號等等)、財務賬號信息(例如,銀行賬號、信用卡號等等)、個人或商業(yè)相關網(wǎng)絡的登錄信息等等。這種信息比實際的移動設備本身更有價值,因為其可授權其他人不正當?shù)卦L問信息、進行未授權交易、扮演設備用戶等等。
現(xiàn)有的移動設備安全可由設備操作系統(tǒng)(OS)或由以OS等級權限執(zhí)行的第三方安全應用提供。盡管對于普通用戶來說有效,更多高級用戶可通過在OS等級攻擊設備來繞過這些保護。例如,字典攻擊可用于確定密碼,可通過使用外部接口強制地訪問設備存儲器來檢索敏感信息,可通過安裝新的OS重新配置移動設備等等。結果,移動設備總是作為知道如何利用其弱點的違法犯罪者的有吸引力的目標。
附圖說明
所要求保護的主題的各實施例的特征和優(yōu)點將隨著以下詳細描述的進行并且當參照附圖時變得明顯,其中相同的數(shù)字指示相同的部件,并且在附圖中:
圖1示出根據(jù)本公開的至少一個實施例的被配置成用于硬件強制訪問保護的示例設備;
圖2示出根據(jù)本公開的至少一個實施例的示例設備配置;
圖3示出根據(jù)本公開的至少一個實施例的用于認證模塊的示例配置;
圖4示出根據(jù)本公開的至少一個實施例的用于激活和用戶認證恢復的示例操作的流程圖;
圖5示出根據(jù)本公開的至少一個實施例的用于硬件強制訪問保護的示例操作的流程圖。
盡管將參考說明性實施例進行以下詳細描述,其許多替代、修改和變化將對本領域普通技術人員明顯。
具體實施方式
本公開描述了用于硬件強制訪問保護的系統(tǒng)和方法。設備可包括例如登錄代理模塊(LAM)、操作系統(tǒng)登錄認證模塊(OSLAM)以及安全用戶認證模塊(SUAM)。初始地,LAM可被配置成用于使設備內的用戶接口呈現(xiàn)提示。該提示可請求有待(例如,由設備用戶)輸入到設備內的登錄信息。LAM可被進一步配置成用于向OSLAM提供登錄信息,其可被配置成用于認證登錄信息。如果登錄信息被認證,OSLAM可被進一步配置成用于向SUAM傳輸經(jīng)簽名的登錄成功消息。在一個實施例中,SUAM可被加載到(例如由固件)設備內的安全存儲器空間中,諸如例如受信執(zhí)行環(huán)境(TEE)。SUAM可被配置成用于認證經(jīng)簽名的登錄成功消息,并且如果已認證則向OSLAM傳輸經(jīng)加密的認證消息。OSLAM可被進一步配置成用于解密并認證經(jīng)加密的認證消息。如果被認證,OSLAM可授權對設備的訪問。
在一個實施例中,OSLAM可包括私鑰并且SUAM可包括公鑰。私鑰可由設備內的已知用戶信息保護。當用戶登錄設備時(例如,輸入登錄信息),登錄信息可與已知用戶信息進行比較,并且僅當?shù)卿浶畔⑴c已知用戶信息相對應時才可授權對私鑰的訪問。私鑰然后可用于生成經(jīng)簽名的登錄成功消息,其可由SUAM使用公鑰認證。同樣,經(jīng)加密的認證消息可由OSLAM使用私鑰解密。在一個實施例中,私鑰可由TEE根加密以便提供附加保護(例如,以便防止通過字典攻擊(其中持續(xù)猜測密鑰組合直至發(fā)現(xiàn)匹配)而確定私鑰)。
在一個實施例中,該設備可進一步包括固件接口模塊。固件接口模塊可被配置成用于將經(jīng)簽名的登錄成功消息從OSLAM傳送到SUAM并且相反地將經(jīng)加密的認證消息從SUAM傳送到OSLAM。在相同或不同實施例中,該設備可進一步包括安全策略模塊(SPM)和/或認證恢復模塊(ARM)。SPM可被配置成用于控制LAM、OSLAM和/或SUAM的操作。在LAM和OSLAM的情況下,SPM可被配置成用于為設備確定上下文(例如,設備位置、設備狀況等等),并且可設置基于該上下文控制LAM和/或OSLAM的操作的登錄策略。例如,SPM可確定該設備在“家庭”位置,并且可要求輸入較少登錄信息,與當確定該設備在已知位置時相反。SPM可被進一步配置成用于例如限定SUAM中的等待計時器和/或最大登錄嘗試次數(shù)。等待計時器可限定在SUAM致使該設備關閉之前SUAM將等待多長時間接收經(jīng)簽名的登錄成功消息。在一個實施例中,如果等待計時器過期而沒有接收到經(jīng)簽名的登錄成功消息,SUAM然后可確定是否已經(jīng)超過最大登錄嘗試次數(shù)。如果已經(jīng)超過最大登錄嘗試次數(shù),SUAM可將該設備置于鎖定狀態(tài),其中,可拒絕訪問操作系統(tǒng),直至執(zhí)行用戶認證恢復。ARM可被配置成用于當該設備連接到遠程資源(例如,可通過網(wǎng)絡連接訪問的計算設備)時執(zhí)行用戶認證恢復。
在一個實施例中,該遠程資源可以是可通過互聯(lián)網(wǎng)訪問的服務器,該服務器被配置成用于向設備提供私鑰。例如,當被激活時,該設備可被配置成用于初始地確定其是否連接到該遠程資源。該設備然后可被配置成用于確定該設備內是否存在該私鑰。如果該設備未連接到該遠程資源并且該私鑰存在于該設備中,可在該設備內開始硬件強制訪問保護。如果該設備未連接到該遠程資源并且該私鑰不存在于該設備中,則該設備可(例如向設備用戶)呈現(xiàn)指示必須在使用該設備之前執(zhí)行安全設置的通知,該安全設置要求該設備連接到該遠程資源。如果該設備連接到該遠程資源并且該設備是新的設備(例如,不存在私鑰),則安全軟件可被從該遠程資源下載到該設備(例如,LAM和OSLAM中的某些或全部)并且該私鑰可由該遠程資源提供。如果該設備連接到該遠程資源并且要求用戶認證恢復,該遠程資源可執(zhí)行用戶認證恢復(例如,可通過個人查詢、密碼、密鑰等等確認用戶的身份)。如果該用戶由該遠程資源認證,該設備內的現(xiàn)有安全配置可被重置并且可從遠程資源向設備提供新的私鑰。
圖1示出根據(jù)本公開的至少一個實施例的被配置成用于硬件強制訪問保護的示例設備100。設備100的示例可包括但不限于:移動通信設備,諸如基于安卓(Android)等等的蜂窩手機或智能電話;移動計算設備,諸如平板計算機,如等等;包括由英特爾公司制造的低功率芯片組的超極本上網(wǎng)本計算機、筆記本計算機、膝上計算機、通常是靜態(tài)的計算設備(諸如桌上計算機)等等。設備100可包括例如設備100中的各種模塊可在其中操作的至少兩種類型的執(zhí)行環(huán)境。低權限環(huán)境102可以是例如設備100內的操作系統(tǒng)(OS)。在低權限環(huán)境102中操作的模塊不被“測量”(例如,基于其代碼的散列進行驗證以便確定真實性)100,并且因此可被自由地寫入、執(zhí)行、改變等等。高權限環(huán)境104可以是例如設備100內的受信執(zhí)行環(huán)境(TEE)。高權限環(huán)境104可提供模塊可在其中操作的、與由外部影響造成的可能的干擾或介入分離的密碼保護執(zhí)行環(huán)境。結果,硬件管理、仿真、調試、安全以及其他系統(tǒng)關鍵特征總體上在高權限環(huán)境104中執(zhí)行。
在一個實施例中,設備100中的低權限環(huán)境102(例如,設備100中的OS)可至少包括LAM 106和OSLAM 108。LAM 106可被配置成用于獲得登錄信息(例如,從設備100的用戶)。例如,LAM 106可致使通過設備100的用戶接口(例如,顯示器)呈現(xiàn)請求向設備100中輸入登錄信息(例如,通過設備100內的顯示屏、鍵盤等等)的提示。該登錄信息然后可被傳遞到OSLAM 108,其可被配置成用于認證該登錄信息。例如,OSLAM 108可確定從LAM 106接收的該登錄信息是否與設備100內的已知用戶信息相對應。如果該登錄信息被認證,OSLAM可生成經(jīng)簽名的登錄成功消息。例如,可使用OSLAM 108中的私鑰對該經(jīng)簽名的登錄成功消息進行簽名。在一個實施例中,低權限環(huán)境102可進一步包括固件接口模塊(FIM)110。FIM 110可被配置成用于促進高權限執(zhí)行環(huán)境104中的OSLAM 108和SUAM 112之間的交互。例如,該經(jīng)簽名的登錄成功消息可被從OSLAM 108傳輸?shù)紽IM 110以及從FIM 110傳輸?shù)絊UAM 112。FIM 110已經(jīng)在圖1中被示出為可選的,因為其功能性還可被結合到OSLAM 108中。
SUAM 112可被加載到高權限環(huán)境104中。例如,當從設備100內的固件激活時,SUAM 112可被加載到設備100中。SUAM 112還可被“測量”,因為在加載期間,SUAM 112的程序代碼的散列值可由設備100內的硬件與SUAM 112的已知良好版本的散列值進行比較,并且如果程序代碼的散列與已知良好散列值匹配,則可允許加載該代碼。SUAM 112可被配置成用于基于接收到該經(jīng)簽名的登錄成功消息控制對設備100的訪問。例如,如果接收到該經(jīng)簽名的登錄成功消息,SUAM 112然后可認證該消息(例如,使用公鑰)。如果該經(jīng)簽名的登錄成功消息被認證,SUAM 112可將經(jīng)加密的認證消息傳輸?shù)絆SLAM 108(例如,通過FIM 110),其可致使OSLAM 108將設備100解鎖(例如,以便授權對設備100的訪問)。否則,如果未接收到該經(jīng)簽名的登錄成功消息,或者如果所接收到的經(jīng)簽名的登錄成功消息不能被認證,則SUAM 112可致使設備關機。在某些情況下,SUAM 112還可致使設備進入要求用戶認證恢復的鎖定狀態(tài)。
圖2示出根據(jù)本公開的至少一個實施例的設備100'的示例配置。設備100'可包括例如系統(tǒng)模塊,其可被配置成用于管理設備100'內的正常操作。系統(tǒng)模塊200可包括例如處理模塊202、存儲器模塊204、功率模塊206、用戶接口模塊208以及通信接口模塊210,其可被配置成用于與通信模塊212進行交互。進一步地,認證模塊214可被配置成用于至少與通信模塊212和用戶接口模塊208進行交互。盡管通信模塊212和認證模塊214被安排為與圖2中的系統(tǒng)模塊200分離,其在此僅用于解釋的目的。與模塊212和214相關聯(lián)的某些或全部功能性還可包括在系統(tǒng)模塊200中。
在設備100'中,處理模塊202可包括位于分離的組件中的一個或多個處理器,或者可替代地,可包括在單個組件中(例如,在片上系統(tǒng)(SOC)配置中)實施的一個或多個處理核以及任何處理器相關的支持電路(例如,橋接電路等等)。示例處理器可包括可從英特爾公司獲得的各種基于X86的微處理器,包括奔騰、至強、安騰、賽揚、凌動、酷睿i系列產(chǎn)品族中的那些。支持電路的示例可包括芯片組(例如,可從英特爾公司獲得的北橋、南橋等等),該芯片組被配置成用于提供處理模塊202可通過其與可在移動設備104'內在不同速度下、在不同總線上等等操作的其他系統(tǒng)組件交互的接口。通常與支持電路相關聯(lián)的某些或全部功能性還可被包括在與處理器相同的物理封裝(例如,SOC封裝,如可從英特爾公司獲得的Sandy Bridge集成電路)中。在一個實施例中,處理模塊202可配備有虛擬化技術(例如,在某些處理器中可獲得的VT-x技術以及從英特爾公司可獲得的芯片組),允許在單個硬件平臺上執(zhí)行多個虛擬機(VM)。例如,VT-x技術還可結合受信執(zhí)行技術(TXT),該技術被配置成用于通過硬件強制測量發(fā)起環(huán)境(MLE)(諸如之前參照從設備100內的固件加載SUAM 112所描述的)強制執(zhí)行基于軟件的保護。
處理模塊202可被配置成用于在設備100'中執(zhí)行指令。指令可包括代碼,該代碼被配置成用于致使處理模塊202執(zhí)行與讀取數(shù)據(jù)、寫入數(shù)據(jù)、處理數(shù)據(jù)、格式化數(shù)據(jù)、轉換數(shù)據(jù)、變換數(shù)據(jù)等等相關的活動。信息(例如,指令、數(shù)據(jù)等等)可被存儲在存儲器模塊204中。存儲器模塊204可包括固定或可移除格式的隨機存取存儲器(RAM)或只讀存儲器(ROM)。RAM可包括被配置成用于在標志控制器106'的操作期間保持信息的存儲器,諸如例如靜態(tài)RAM(SRAM)或動態(tài)RAM(DRAM)。ROM可包括被配置成用于當設備100'激活時提供指令的bios存儲器等存儲器、諸如電可編程ROM(EPROM)、閃存等可編程存儲器。其他固定和/或可移除存儲器可包括:磁存儲器,諸如例如軟盤、硬盤驅動器等等;電子存儲器,諸如固態(tài)閃存(例如,嵌入式多媒體卡(eMMC)等等)、可移除存儲器卡或棒(例如,微型存儲設備(uSD)、USB等等);光學存儲器,諸如基于致密盤的ROM(CD-ROM)等等。功率模塊206可包括內部電源(例如,電池)和/或外部電源(例如,電磁或太能發(fā)電機、電網(wǎng)等等)以及被配置成用于為設備100'提供操作所需的功率的相關電路。
用戶接口模塊208可包括被配置成用于允許用戶與設備100'交互的電路,諸如例如各種輸入機制(例如,麥克風、開關、按鈕、旋鈕、鍵盤、揚聲器、觸敏表面、被配置成用于捕獲圖像和/或感測接近、距離、運動、姿勢等等的一個或多個傳感器)和輸出機制(例如揚聲器、顯示器、發(fā)光/閃爍指示器、用于振動、運動等等的機電組件)。通信接口模塊210可被配置成用于處理通信模塊212的分組路由和其他控制功能,其可包括被配置成用于支持有線和/或無線通信的資源。有線通信可包括串行和并行有線介質,諸如例如,以太網(wǎng)、通用串行總線(USB)、火線、數(shù)字視覺接口(DVI)、高清晰多媒體接口(HDMI)等等。無線通信可包括例如近距離無線介質(例如,諸如基于近場通信(NFC)標準的射頻(RF)、紅外(IR)、光學字符識別(OCR)、磁字符感測等等)、短距離無線介質(例如,藍牙、WLAN、Wi-Fi等等)以及長距離無線介質(例如,蜂窩、衛(wèi)星等等)。在一個實施例中,通信接口模塊210可被配置成用于防止通信模塊212中活躍的無線通信干擾彼此。當執(zhí)行該功能時,通信接口模塊210可基于等待傳輸?shù)南⒌南鄬?yōu)先級調度通信模塊212的活動。
認證模塊214可被配置成用于處理在圖1中公開的有關LAM 106、OSLAM 108、FIM 110和SUAM 112的某些或全部操作。在此過程中,認證模塊214可與通信模塊212和/或用戶接口模塊208交互。在圖3中公開了認證模塊214的用于描述示例交互的示例配置(例如,作為認證模塊214')。認證模塊214'可包括之前所公開的LAM 106、OSLAM 108和SUAM 112。LAM 106可與用戶接口模塊208交互以便獲得登錄信息(LI)(例如,以便提示用戶輸入登錄信息以及獲得用戶所輸入的登錄信息)。LI然后可被提供給OSLAM,其可認證LI,并且如果已認證,可向SUAM 112傳輸經(jīng)簽名的登錄成功消息(SLSM)。SUAM 112然后可認證SUAM,并且如果已認證,可向OSLAM 108回傳經(jīng)加密的認證消息(EAM),其可然后解鎖設備100(例如,授權對設備100的訪問)。
在一個實施例中,認證模塊214'還可包括安全登錄策略模塊(SLPM)300以及認證恢復模塊(ARM)302。SLPM 300可被配置成用于控制登錄ALM 106、OSLAM 108和/或SUAM 112。例如,SLPM 300可被配置成用于通過基于上下文為這些模塊中的一個或兩個建立登錄策略來控制ALM 106和/或OSLAM 108。如在此所引用的,上下文可與設備100'的狀態(tài)、設備100'操作所處的環(huán)境等等有關。
例如,SLPM 300可被配置成用于確定設備100'何時在安全位置(例如,已知用戶家庭、汽車、工作場所等等)。SLPM 300可通過例如從通信模塊212獲得定位信息(例如,全球定位系統(tǒng)(GPS)坐標、設備100'所感測到的短距離網(wǎng)絡的標識)確定位置。在已知位置,訪問設備100'所需的登錄信息可減少(例如,可要求密碼或簡單的基于圖案的觸摸屏交互)??商娲?,定位信息可指示設備在未知或公共位置(例如,在公共交通上、在機場或火車終端上、在餐館等等)。在這種情況下,安全策略可要求更復雜的登錄信息(例如,用戶名和密碼、身份挑戰(zhàn)問題的答案、生物計量(諸如指紋或視網(wǎng)膜掃描等等))。上下文還可應用到設備100的狀況。例如,如果設備100關閉并重啟(例如,通過正常關機或移除電池)、在安全相關的配置改變之后重啟(例如,在用戶身份信息改變或安全軟件禁用之后)等等。在這種上下文中,登錄策略可要求更復雜的登錄信息以便確信設備100'被攻破。安全策略可通過基于所要求的登錄信息的類型和/或量改變請求登錄信息的提示來控制LAM 106的操作和/或以根據(jù)已知用戶信息認證登錄信息的方式控制OSLAM 108的操作。
SLPM 300還可被配置成用于控制SUAM 112的操作。例如,SLPM 300可確定等待時間和/或可啟動等待計時器,以便控制SUAM 112將等待以便在設備100'關機之前接收到SLSM的時間量。例如,SLPM 300可設置兩分鐘等待計時器,并且可在提示首先被顯示給用戶以便登錄設備100'之后啟動等待計時器。SUAM 112與等待計時器交互的方式可基于設備100'的具體配置而改變。例如,等待時間可較短,并且可在每當SUAM 112接收到SLSM但是不認證SLSM時重置??商娲兀却嫊r器可更長并且可持續(xù)直至SLAM被SUAM接收和認證。如果SUAM 112未接收到SLSM或者如果接收到SLAM但是未對其進行認證,SUAM 112可使設備100'關機。在一個實施例中,SLPM 300還可設置設備內允許的登錄嘗試次數(shù)。對登錄嘗試次數(shù)的限制可提供多一層安全,因為嘗試字典攻擊的人可快速地受限于其猜測密碼的能力等等。在設備100'關機之前,SUAM 112可檢查登錄嘗試次數(shù),并且如果已經(jīng)超過登錄嘗試次數(shù),SUAM 112可將設備100'置于在可再次訪問設備100'之前要求用戶認證恢復的鎖定狀態(tài)。
在一個實施例中,ARM 302可被配置成用于當丟失或忘記安全信息時或者可替代地如果設備100'已經(jīng)被置于鎖定狀態(tài),提供用戶認證恢復。在執(zhí)行用戶認證恢復時,ARM 302可使用通信模塊212與遠程資源(諸如例如,可通過網(wǎng)絡(例如,互聯(lián)網(wǎng))訪問的計算設備(例如,服務器))交互。在一個實施例中,用戶認證恢復可由遠程資源策劃,其中,可通過例如用戶名和密碼、挑戰(zhàn)問題、生物計量數(shù)據(jù)等等驗證用戶身份。一旦用戶的身份被驗證,設備100'內的安全配置可由遠程資源重置。
圖4示出根據(jù)本公開的至少一個實施例的用于激活和用戶認證恢復的示例操作的流程圖??稍谠O備內維護安全的至少一種方式為通過防止篡改對安全配置的訪問。在一個實施例中,基于軟件的安全和基于硬件的安全可交換經(jīng)加密的認證消息。進一步將基于硬件的安全置于固件中,基于軟件的安全的安裝和配置可由安全遠程資源控制。以此方式,可挫敗繞過設備安全的傳統(tǒng)方式。例如,可獲得以與本公開一致的方式保護的設備并且可通過清除設備存儲器以及安裝新的操作系統(tǒng)嘗試繞過基于軟件的安全特征。然而,由于基于軟件的安全(例如,LAM 106、OSLAM 108和OSLAM 108所使用的私鑰中的某些或全部)可由遠程資源安裝,新的操作系統(tǒng)將不提供基于硬件的安全所期望的消息傳送,并且因此,該設備將繼續(xù)掉電并且可能進入鎖定狀態(tài),直至執(zhí)行用戶認證恢復以便重置安全。
在操作400,設備可被啟動。啟動該設備可總體上包括例如從掉電狀況接通、上電、打開、啟動設備等等、從上電狀況重啟或重新打開該設備。在啟動該設備時,可在操作402確定該設備是否連接到遠程資源。例如,可確定該設備是否通過有線或無線連接連接到互聯(lián)網(wǎng)以及進一步確定是否能使用有線或無線連接與計算設備(例如,服務器)聯(lián)系。如果在操作402,確定該設備未連接到遠程資源,則在操作404,進一步確定是否已經(jīng)在該設備中建立私鑰。如果例如該設備尚未被使用(例如,最近剛剛被購買)、如果OS已經(jīng)被蓋寫(例如,某人嘗試重新使用硬件)等等,該設備內可能沒有私鑰。如果在操作404,確定尚未在該設備內建立任何私鑰,則在操作406,該設備呈現(xiàn)通知(例如,可在該設備的用戶接口上顯示),該通知告知該設備必須連接到遠程資源以便設置該設備內的安全。該設備然后在操作408中關機并且如果例如該設備被再次激活,可進一步可選地返回操作400。否則,如果確定存在私鑰,則在操作410,可在該設備內激活硬件強制訪問保護(例如,其示例被公開在圖5中)。
如果在操作402,確定該設備連接到遠程資源,則在操作412,進一步確定是否正在第一次激活該設備(例如,請求設置安全)。該確定可基于各種因素,包括例如是否已經(jīng)在該設備內建立私鑰、是否已經(jīng)在注冊時在遠程資源內記錄該設備的序列號等等。如果在操作412中確定正在第一次激活該設備,則在操作414中,可執(zhí)行用戶信息查詢以便獲得有關該設備的擁有者的信息(例如,用于設備擁有者注冊、保修以及稍后在用戶認證恢復中使用)并且安全軟件可被從遠程資源下載到該設備。在一個實施例中,安全軟件可包括LAM和OSLAM中的至少某些或全部。然后,在操作416,可將私鑰從遠程資源提供給該設備并且可在操作410激活硬件強制訪問保護。
如果在操作412,確定該設備不是被第一次激活,則在操作418可激活用戶認證恢復。例如,設備用戶可被要求提供用戶名和密碼信息、可被要求基于在第一次激活期間提供的信息對挑戰(zhàn)問題作出響應、可被要求提供生物計量信息等等。然后可在操作420確定用戶認證是否已恢復(例如,用戶是否被標識為該設備的已知用戶)。如果在操作420確定用戶認證尚未恢復,則在操作410,可啟動硬件強制訪問保護以便保護該設備不被攻破。如果用戶認證已恢復,則在操作422,可重置該設備內的安全(例如,可設置新密碼并且可刪除已有的私鑰),并且在操作416,可由遠程資源為該設備提供新的私鑰。在操作410,可在該設備內激活硬件強制訪問保護。
圖5示出根據(jù)本公開的至少一個實施例的用于硬件強制訪問保護的示例操作的流程圖。圖5中的操作是從設備內的SUAM的角度。在操作500,可感測要求用戶登錄該設備的場景。例如,該設備可能已經(jīng)被掉電并且重新激活,該設備內的安全配置可能已經(jīng)改變,該設備的上下文和/或環(huán)境可能已經(jīng)改變并且可根據(jù)登錄策略指示登錄等等。然后可在操作502中確定該設備是否處于鎖定狀態(tài)。如果在操作502確定該設備處于鎖定狀態(tài),則在操作504中,可呈現(xiàn)通知(例如,可展示在該設備內的用戶接口上),該通知指示必須在該設備可被再次訪問之前執(zhí)行用戶認證恢復。然后可拒絕訪問(例如,該設備可被關機)并且該設備可任選地返回操作500,其中,可感測要求登錄的場景。
如果在操作502確定該設備未處于鎖定狀態(tài),可在操作508中開啟等待計時器。然后可在操作510中確定是否接收到SLSM。如果在操作508,確定已經(jīng)接收到SLSM,則在操作512,可進一步確定是否可認證所接收的SLSM。如果在操作512,確定SLSM已經(jīng)被認證,則在操作514,可傳輸經(jīng)加密的認證消息。該設備然后可任選地在操作500返回感測要求登錄的場景。如果在操作512,經(jīng)簽名的登錄成功消息不能被認證,可在操作508重新啟動等待計時器,并且在操作510和516,SUAM可繼續(xù)等待接收SLSM。如果在操作516確定等待計時器已過期而未接收到SLSM,則在操作518進一步確定是否已經(jīng)滿足或超過該設備內的特定登錄嘗試次數(shù)。如果在操作518,確定已經(jīng)滿足或超過該登錄嘗試次數(shù),則在操作520,該設備可被置于鎖定狀態(tài)并且可在操作504再次呈現(xiàn)鎖定狀態(tài)的通知。否則,如果在操作518,確定尚未超過該登錄嘗試次數(shù),則在操作506,可拒絕訪問(例如,該設備可被關機),然后使可選地返回操作500以便再次感測登錄場景。
盡管圖4和圖5示出根據(jù)不同實施例的各操作,將要理解的是在圖4和圖5中描繪的所有操作對于其他實施例而言不是全部必需的。實際上,在此充分考慮了在本公開的其他實施例中,在圖4和圖5中描繪的操作和/或在此描述的其他操作可以用未在任何附圖中明確示出的方式結合,但是仍充分地與本公開保持一致。因此,涉及未在一個附圖中準確示出的特征和/或操作的權利要求被認為在本公開的范圍和內容內。
如在此在任何實施例中所使用的,術語“模塊”可指代被配置成用于執(zhí)行任何前述操作的軟件、固件和/或電路。軟件可被實施為記錄在非瞬態(tài)計算機可讀存儲介質上的軟件包、代碼、指令、指令集和/或數(shù)據(jù)。固件可被實施為硬編碼(例如,非易失性的)在存儲器設備中的代碼、指令或指令集和/或數(shù)據(jù)。如在此在任何實施例中所使用的“電路”可單獨地或在任何組合中包括例如存儲由可編程電路執(zhí)行的指令的硬連線電路、可編程電路(諸如包括一個或多個單獨的指令處理核的計算機處理器)、狀態(tài)機電路、和/或固件。這些模塊可一起或單獨地被實現(xiàn)為形成更大的系統(tǒng)的一部分的電路,例如,集成電路(IC)、片上系統(tǒng)(SoC)、臺式計算機、膝上型計算機、平板計算機、服務器、智能電話等等。
可在包括一個或多個存儲介質的系統(tǒng)中實現(xiàn)在此所描述的任何操作,該一個或多個存儲介質在其上單獨地或結合地存儲當被一個或多個處理器執(zhí)行時執(zhí)行這些方法的指令。在此,處理器可包括例如服務器CPU、移動設備CPU、和/或其他可編程電路。因此,在此所描述的操作可跨多個物理設備分布,諸如在多于一個不同物理位置的處理結構。存儲介質可包括任何類型的有形介質,例如任何類型的盤,包括硬盤、軟盤、光盤、致密盤只讀存儲器(CD-ROM)、致密盤可重寫(CD-RW)、以及磁光盤、半導體器件(諸如只讀存儲器(ROM)、隨機存取存儲器(RAM)(諸如動態(tài)和靜態(tài)RAM、可擦可編程只讀存儲器(EPROM)、電可擦可編程只讀存儲器(EEPROM))、閃存、固態(tài)盤(SSD))、嵌入式多媒體卡(eMMC)、安全數(shù)字輸入/輸出(SDIO)卡、磁卡或光卡、或任何其他類型的適合用于存儲電子指令的介質。其他實施例可被實現(xiàn)為由可編程控制設備執(zhí)行的軟件模塊。
因此,本公開涉及與硬件強制訪問保護有關的系統(tǒng)及方法。示例設備可包括登錄代理模塊(LAM)、操作系統(tǒng)登錄認證模塊(OSLAM)以及安全用戶認證模塊(SUAM)。LAM可被配置成用于致使由該設備呈現(xiàn)請求登錄信息的提示。LAM然后可向OSLAM提供該登錄信息,其可被配置成用于使用已知用戶信息認證該登錄信息。如果被認證,OSLAM可使用私鑰生成經(jīng)簽名的登錄成功消息并將其傳輸給SUAM。SUAM可以是由設備固件加載的安全/受信軟件并且可被配置成用于認證該經(jīng)簽名的登錄成功消息。如果被認證,SUAM可向OSLAM傳輸經(jīng)加密的認證消息。如果該經(jīng)加密的認證消息被認證,OSLAM可授權對該設備的訪問。
以下示例涉及進一步的實施例。在一個示例實施例中,提供了一種設備。該設備可包括:登錄代理模塊,被配置成用于致使由該設備中的用戶接口呈現(xiàn)提示,該提示請求向該設備輸入登錄信息;安全用戶認證模塊,被配置成用于基于接收到經(jīng)簽名的登錄成功消息傳輸經(jīng)加密的授權消息;以及操作系統(tǒng)登錄認證模塊,被配置成用于從該登錄代理模塊接收該登錄信息并且基于該登錄信息將該經(jīng)簽名的登錄成功消息傳輸?shù)皆摪踩脩粽J證模塊。
可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于基于認證該經(jīng)簽名的登錄成功消息,向該操作系統(tǒng)登錄認證模塊傳輸該經(jīng)加密的認證消息。在本配置中,可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于基于接收到并認證該經(jīng)加密的認證消息,授權對該設備的訪問。在本配置中,可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于由該設備中的固件加載到該設備中的受信執(zhí)行環(huán)境中。在本配置中,該示例設備可進一步包括固件接口模塊,該固件接口模塊被配置成用于將該經(jīng)簽名的登錄成功消息從該操作系統(tǒng)登錄認證模塊傳送到該安全登錄認證模塊以及將該經(jīng)加密的認證消息從該安全登錄認證模塊傳送到該操作系統(tǒng)登錄認證模塊。
可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于依據(jù)已知用戶信息認證該登錄信息。在本配置中,可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于使用該已知用戶信息保護私鑰,在該登錄信息依據(jù)該已知用戶信息被認證時該私鑰是可訪問的。在本配置中,可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于使用該私鑰生成該經(jīng)簽名的登錄成功消息。在本配置中,可進一步配置上述示例設備,其中,該私鑰由該設備中的受信執(zhí)行環(huán)境加密。
上述示例設備可進一步包括安全策略登錄模塊,被配置成用于至少確定該設備的上下文以及基于該上下文為該登錄代理和該操作系統(tǒng)登錄認證模塊中的至少一個設置登錄策略。在本配置中,可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于如果未接收到經(jīng)簽名的登錄成功消息則致使該設備關機,并且該安全策略登錄模塊被進一步配置成用于為該安全用戶認證模塊設置在致使該設備關機之前等待接收到該經(jīng)簽名的登錄成功消息的時間量。
上述示例設備可進一步包括認證恢復模塊,被配置成用于通過與遠程資源通信重新配置該設備中的用戶相關安全。
在另一個示例實施例中,提供了一種方法。該方法可包括啟動設備;確定該設備是否連接到遠程資源;基于確定該設備連接到該遠程資源,確定是否執(zhí)行第一次激活或用戶認證恢復;以及基于確定該設備未連接到該遠程資源,確定是否已經(jīng)在該設備中建立私鑰。
可進一步配置上述示例方法,其中,該遠程資源是通過網(wǎng)絡連接可訪問的計算設備。
上述示例方法可進一步包括基于確定執(zhí)行第一次激活,從該遠程資源向該設備提供安全軟件和私鑰。在本配置中,上述示例方法可進一步包括重置設備安全以及基于確定執(zhí)行用戶認證恢復,在用戶認證恢復成功完成時從該遠程資源向該設備提供私鑰。
上述示例方法可進一步包括基于確定尚未在該設備中建立私鑰,發(fā)布將該設備連接到該遠程資源用于安全配置的通知。
在另一個示例實施例中,提供了一種方法。該方法可包括:感測需要登錄到設備;確定該設備是否處于鎖定狀態(tài);基于確定該設備處于鎖定狀態(tài),發(fā)布指示需要用戶認證恢復以及使該設備關機的通知;以及基于確定該設備未處于鎖定狀態(tài),等待接收經(jīng)簽名的登錄成功消息。
上述示例方法可進一步包括基于接收到并認證該經(jīng)簽名的登錄成功消息,傳輸經(jīng)加密的授權消息。
上述示例方法可進一步包括啟動該設備中的等待計時器,該等待計時器建立等待接收該經(jīng)簽名的登錄成功消息的時間量。在本配置中,上述示例方法可進一步包括:基于該等待計時器到期而未接收到該經(jīng)簽名的登錄成功消息,確定是否已經(jīng)超過預定登錄嘗試次數(shù);以及基于確定已經(jīng)超過該預定登錄嘗試次數(shù),將該設備置于鎖定狀態(tài)。
在另一個示例實施例中,提供了一種至少包括設備的系統(tǒng),該系統(tǒng)被安排成用于執(zhí)行任何上述示例方法。
在另一個示例實施例中,提供了一種被安排成用于執(zhí)行任何上述示例方法的芯片組。
在另一個示例實施例中,提供了至少一種機器可讀介質,包括多個指令,響應于在計算設備上被執(zhí)行,這些指令致使該計算設備執(zhí)行任何上述示例方法。
在另一個示例實施例中,提供了一種被配置成用于執(zhí)行硬件強制訪問保護的設備,該設備被安排成用于執(zhí)行任何上述示例方法。
在另一個示例實施例中,提供了一種系統(tǒng),該系統(tǒng)包括至少一種機器可讀存儲介質,其上單獨地或結合地存儲有多個指令,當由一個或多個處理器執(zhí)行時,這些指令致使該系統(tǒng)執(zhí)行任何上述示例方法。
在另一個示例實施例中,提供了一種設備。該設備可包括:登錄代理模塊,被配置成用于致使由該設備中的用戶接口呈現(xiàn)提示,該提示請求向該設備輸入登錄信息;安全用戶認證模塊,被配置成用于基于接收到經(jīng)簽名的登錄成功消息,傳輸經(jīng)加密的授權消息;以及操作系統(tǒng)登錄認證模塊,被配置成用于從該登錄代理模塊接收該登錄信息并且基于該登錄信息將該經(jīng)簽名的登錄成功消息傳輸?shù)皆摪踩脩粽J證模塊。
可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于基于認證該經(jīng)簽名的登錄成功消息,向該操作系統(tǒng)登錄認證模塊傳輸該經(jīng)加密的認證消息,該操作系統(tǒng)登錄認證模塊被進一步配置成用于基于接收到并認證該經(jīng)加密的認證消息,授權對該設備的訪問。在本配置中,可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于由固件加載到該設備中的受信執(zhí)行環(huán)境中,該設備進一步包括固件接口模塊,被配置成用于將該經(jīng)簽名的登錄成功消息從該操作系統(tǒng)登錄認證模塊傳送到該安全登錄認證模塊以及將該經(jīng)加密的認證消息從該安全登錄認證模塊傳送到該操作系統(tǒng)登錄認證模塊。
可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于依據(jù)被配置成用于保護私鑰的已知用戶信息認證該登錄信息,并且如果依據(jù)該已知用戶信息認證了該登錄信息,使用該私鑰生成該經(jīng)簽名的登錄成功消息。
上述示例設備可進一步包括安全策略登錄模塊,被配置成用于至少確定該設備的上下文、基于該上下文為該登錄代理或該操作系統(tǒng)登錄認證模塊中的至少一個設置登錄策略以及為該安全用戶認證模塊設置在安全用戶認證模塊致使該設備關機之前等待接收到該經(jīng)簽名的登錄成功消息的時間量。
在另一個示例實施例中,提供了一種方法。該方法可包括啟動設備;確定該設備是否連接到遠程資源;基于確定該設備連接到該遠程資源,確定是否執(zhí)行第一次激活或用戶認證恢復;以及基于確定該設備未連接到該遠程資源,確定是否已經(jīng)在該設備中建立私鑰。
上述示例方法可進一步包括基于確定執(zhí)行第一次激活,從該遠程資源向該設備提供安全軟件和私鑰。
上述示例方法可進一步包括基于確定執(zhí)行用戶認證恢復在用戶認證恢復成功完成時重置設備安全以及從該遠程資源向該設備提供私鑰。
上述示例方法可進一步包括基于確定尚未在該設備中建立私鑰,發(fā)布將該設備連接到該遠程資源用于安全配置的通知。
在另一個示例實施例中,提供了一種方法。該方法可包括:感測需要登錄到設備;確定該設備是否處于鎖定狀態(tài);基于確定該設備處于鎖定狀態(tài),發(fā)布指示需要用戶認證恢復以及使該設備關機的通知;以及基于確定該設備未處于鎖定狀態(tài)等待接收經(jīng)簽名的登錄成功消息。
上述示例方法可進一步包括基于接收到并認證該經(jīng)簽名的登錄成功消息傳輸經(jīng)加密的授權消息。
上述示例方法可進一步包括啟動該設備中的等待計時器,該等待計時器建立等待接收該經(jīng)簽名的登錄成功消息的時間量。在本配置中,上述示例方法可進一步包括:基于該等待計時器到期而未接收到該經(jīng)簽名的登錄成功消息,確定是否已經(jīng)超過預定登錄嘗試次數(shù);以及基于確定已經(jīng)超過該預定登錄嘗試次數(shù),將該設備置于鎖定狀態(tài)。
在另一個示例實施例中,提供了一種至少包括設備的系統(tǒng),該系統(tǒng)被安排成用于執(zhí)行任何上述示例方法。
在另一個示例實施例中,提供了至少一種機器可讀介質,包括多個指令,響應于在計算設備上被執(zhí)行,這些指令致使該計算設備執(zhí)行任何上述示例方法。
在一個示例實施例中,提供了一種設備。該設備可包括:登錄代理模塊,被配置成用于致使由該設備中的用戶接口呈現(xiàn)提示,該提示請求向該設備輸入登錄信息;安全用戶認證模塊,被配置成用于基于接收到經(jīng)簽名的登錄成功消息傳輸經(jīng)加密的授權消息;以及操作系統(tǒng)登錄認證模塊,被配置成用于從該登錄代理模塊接收該登錄信息并且基于該登錄信息將該經(jīng)簽名的登錄成功消息傳輸?shù)皆摪踩脩粽J證模塊。
可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于基于認證該經(jīng)簽名的登錄成功消息,向該操作系統(tǒng)登錄認證模塊傳輸該經(jīng)加密的認證消息。在本配置中,可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于基于接收到并認證該經(jīng)加密的認證消息,授權對該設備的訪問。在本配置中,可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于由該設備中的固件加載到該設備中的受信執(zhí)行環(huán)境中。在本配置中,該示例設備可進一步包括固件接口模塊,被配置成用于將該經(jīng)簽名的登錄成功消息從該操作系統(tǒng)登錄認證模塊傳送到該安全登錄認證模塊以及將該經(jīng)加密的認證消息從該安全登錄認證模塊傳送到該操作系統(tǒng)登錄認證模塊。
可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于依據(jù)已知用戶信息認證該登錄信息。在本配置中,可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于使用該已知用戶信息保護私鑰,當該登錄信息依據(jù)該已知用戶信息被認證時該私鑰是可訪問的。在本配置中,可進一步配置上述示例設備,其中,該操作系統(tǒng)登錄認證模塊被進一步配置成用于使用該私鑰生成該經(jīng)簽名的登錄成功消息。在本配置中,可進一步配置上述示例設備,其中,該私鑰由該設備中的受信執(zhí)行環(huán)境加密。
上述示例設備可進一步包括安全策略登錄模塊,被配置成用于至少確定該設備的上下文以及基于該上下文為該登錄代理和該操作系統(tǒng)登錄認證模塊中的至少一個設置登錄策略。在本配置中,可進一步配置上述示例設備,其中,該安全用戶認證模塊被進一步配置成用于如果未接收到經(jīng)簽名的登錄成功消息則致使該設備關機,并且該安全策略登錄模塊被進一步配置成用于為該安全用戶認證模塊設置在致使該設備關機之前等待接收到該經(jīng)簽名的登錄成功消息的時間量。
上述示例設備可進一步包括認證恢復模塊,被配置成用于通過與遠程資源通信重新配置該設備中的用戶相關安全。
在另一個示例實施例中,提供了一種方法。該方法可包括啟動設備;確定該設備是否連接到遠程資源;基于確定該設備連接到該遠程資源,確定是否執(zhí)行第一次激活或用戶認證恢復;以及基于確定該設備未連接到該遠程資源,確定是否已經(jīng)在該設備中建立私鑰。
可進一步配置上述示例方法,其中,該遠程資源是通過網(wǎng)絡連接可訪問的計算設備。
上述示例方法可進一步包括基于確定執(zhí)行第一次激活,從該遠程資源向該設備提供安全軟件和私鑰。在本配置中,上述示例方法可進一步包括基于確定執(zhí)行用戶認證恢復在用戶認證恢復成功完成時重置設備安全以及從該遠程資源向該設備提供私鑰。
上述示例方法可進一步包括基于確定尚未在該設備中建立私鑰,發(fā)布將該設備連接到該遠程資源用于安全配置的通知。
在另一個示例實施例中,提供了一種方法。該方法可包括:感測需要登錄到設備;確定該設備是否處于鎖定狀態(tài);基于確定該設備處于鎖定狀態(tài),發(fā)布指示需要用戶認證恢復以及使該設備關機的通知;以及基于確定該設備未處于鎖定狀態(tài),等待接收經(jīng)簽名的登錄成功消息。
上述示例方法可進一步包括基于接收到并認證該經(jīng)簽名的登錄成功消息,傳輸經(jīng)加密的授權消息。
上述示例方法可進一步包括啟動該設備中的等待計時器,該等待計時器建立等待接收該經(jīng)簽名的登錄成功消息的時間量。在本配置中,上述示例方法可進一步包括:基于該等待計時器到期而未接收到該經(jīng)簽名的登錄消息,確定是否已經(jīng)超過預定登錄嘗試次數(shù);以及基于確定已經(jīng)超過該預定登錄嘗試次數(shù),將該設備置于鎖定狀態(tài)。
在另一個示例實施例中,提供了一種系統(tǒng)。該系統(tǒng)可包括:用于啟動設備的裝置;用于確定該設備是否連接到遠程資源的裝置;用于基于確定該設備連接到該遠程資源確定是否執(zhí)行第一次激活或用戶認證恢復的裝置;以及用于基于確定該設備未連接到該遠程資源確定是否已經(jīng)在該設備內建立私鑰的裝置。
可進一步配置上述示例系統(tǒng),其中,該遠程資源是通過網(wǎng)絡連接可訪問的計算設備。
上述示例系統(tǒng)可進一步包括用于基于確定執(zhí)行第一次激活從該遠程資源向該設備提供安全軟件和私鑰的裝置。在本配置中,上述示例系統(tǒng)可進一步包括用于基于確定執(zhí)行用戶認證恢復在用戶認證恢復成功完成時重置設備安全以及從該遠程資源向該設備提供私鑰的裝置。
上述示例系統(tǒng)可進一步包括用于基于確定尚未在該設備中建立私鑰發(fā)布將該設備連接到該遠程資源用于安全配置的通知的裝置。
在另一個示例實施例中,提供了一種系統(tǒng)。該系統(tǒng)可包括:用于感測需要登錄到設備的裝置;用于確定該設備是否處于鎖定狀態(tài)的裝置;用于基于確定該設備處于鎖定狀態(tài)發(fā)布指示需要用戶認證恢復以及使該設備關機的通知的裝置;以及用于基于確定該設備未處于鎖定狀態(tài)等待接收經(jīng)簽名的登錄成功消息的裝置。
上述示例系統(tǒng)可進一步包括用于基于接收到并認證該經(jīng)簽名的登錄成功消息傳輸經(jīng)加密的授權消息的裝置。
上述示例系統(tǒng)可進一步包括用于啟動該設備中的等待計時器的裝置,該等待計時器建立等待接收該經(jīng)簽名的登錄成功消息的時間量。在本配置中,上述示例系統(tǒng)可進一步包括:用于基于該等待計時器到期而未接收到該經(jīng)簽名的登錄消息確定是否已經(jīng)超過預定登錄嘗試次數(shù)的裝置;以及用于基于確定已經(jīng)超過該預定登錄嘗試次數(shù)將該設備置于鎖定狀態(tài)的裝置。
已經(jīng)在此使用的術語和表達被用作描述而非限制術語,并且不旨在使用這種術語和表達時排除所展示和描述的特征的任何等效方案(或其部分),并且認識到在權利要求書的范圍內各種修改是可能的。因此,權利要求書旨在覆蓋所有這種等效方案。