TW201717096A - 用以充當驗證器之裝置、用於遠端認證之方法及非暫時性機器可讀儲存媒體(二) - Google Patents
用以充當驗證器之裝置、用於遠端認證之方法及非暫時性機器可讀儲存媒體(二) Download PDFInfo
- Publication number
- TW201717096A TW201717096A TW105130006A TW105130006A TW201717096A TW 201717096 A TW201717096 A TW 201717096A TW 105130006 A TW105130006 A TW 105130006A TW 105130006 A TW105130006 A TW 105130006A TW 201717096 A TW201717096 A TW 201717096A
- Authority
- TW
- Taiwan
- Prior art keywords
- key
- code
- module
- code module
- seal
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0827—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
- H04L9/3213—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申請案係有關於對稱式金鑰與信任鏈。在一個實施例中,一證明器可與一驗證器通訊以執行裝置或資料鑑認。該驗證器可發出一查問以鑑認該證明器,該證明器可用可轉遞至一憑證器之金鑰資料及票證資料對該查問作出回應。若辨識到該票證資料,則該憑證器可將一授權符記傳輸至該驗證器,該驗證器可接著設定一對稱式認證金鑰。該證明器可利用該對稱式認證金鑰以建立一信任鏈從而供在對關於應用程式或資料真確性之查問作出回應時使用。該對稱式認證金鑰可用以產生一第一層級金鑰,該第一層級金鑰可用以產生程式金鑰。一查問回應可至少包括可藉由該驗證器使用該對稱式認證金鑰鑑認之程式金鑰資料。
Description
本發明係關於裝置安全性,且更特定而言,係關於在證明器裝置中無需存在實質性安全基礎結構之情況下實現應用程式及資料安全性。
防止各種裝置受到惡意軟體或「malware(惡意軟體)」損害變得愈加困難,此係因為規避現存安全性措施之新策略持續出現。舉例而言,諸如「rootkits」之惡意軟體可藉由在裝置初始化裝置加以載入而試圖損害裝置中之安全性。結果,此等rootkit可在裝置中維持甚至超過防病毒軟體之特殊權限等級的特殊權限等級。受信任執行(TXT)係可維持始於初始化之安全性的至少一種安全性概念。在TXT中,受信任平台模組(TPM)可維持對裝置內之安全記憶體中的已知良好程式之「量測」(例如,藉由對程式碼之至少部分執行密碼編譯雜湊函數所產生的結果)。在將程式載入至裝置中時,可量測該等程式以判定是否已載入程式的已知良好版本。對程式之任何改變將得到不同量測,從而指示
該程式可為惡意軟體或至少為已由惡意軟體更改的原始程式之版本。在一個實施例中,亦可制定「信任鏈」,其中每一程式量測隨後載入之程式以確保該鏈中之所有程式為已知良好程式。
雖然可有效地阻止未授權存取,但TXT可需要諸如安全共處理器、安全記憶體等之資源以經由不對稱式加密金鑰支援認證。此等資源可易於在諸如桌上型電腦、膝上型電腦以及甚至類似於平板電腦及智慧型手機之行動裝置的較穩健平台中得到。然而,現今正開發可能不包含此等資源但仍可能易於受惡意軟體損害之裝置。舉例而言,諸如可穿戴式裝置、感測器及/或可取決於能量採集(例如,針對可用源產生其自身能量,諸如機械能、太陽能等)之裝置的小型裝置可包含可僅具有足以維持該裝置經設計所用於之操作之功率的計算資源。在不具有啟用諸如可經由TPM、TXT等實施之完整性報告(例如,用於驗證程式為該程式之已知良好版本)及密封(例如,用於保護諸如加密金鑰之軟體秘密)的安全性措施的低等級保護方案之情況下,可能不可能偵測資源受限裝置是否已受惡意軟體損害且因此不可能防止資源受限裝置上之惡意軟體感染可與資源受限裝置互動之其他計算裝置。
依據本發明之一實施例,係特地提出一種經組配用於使用信任鏈密封資料之裝置,其包含:一記憶體;以及一用以至少從該記憶體載入程式碼模組之處理器,其中
在載入一經選擇程式碼模組之後,該處理器係進一步用以:量測該經選擇程式碼模組;判定對應於該經選擇程式碼模組之一密封金鑰,其中該密封金鑰係至少基於對應於一先前載入程式碼模組之一先前的密封金鑰及該經選擇程式碼模組之該量測而判定;使用該密封金鑰來密封對應於所載入之該經選擇程式碼模組的資料;針對任何所載入之該經選擇程式碼模組判定一軟體更新是否正在該記憶體中擱置;以及當針對一程式碼模組之一軟體更新被判定為擱置時,該處理器係進一步用以判定該軟體更新是否包含指示經密封資料不應被遷移以與針對該軟體更新為擱置的該程式碼模組之一更新版本一起操作之元資料。
100‧‧‧系統
102、102'、102"‧‧‧證明器
104、104'‧‧‧驗證器
106‧‧‧憑證器
108、108'‧‧‧對稱式金鑰散佈操作
108A‧‧‧裝置查問
108B‧‧‧回應訊息
108C‧‧‧票證資料
108D‧‧‧授權符記
108E‧‧‧設定對稱式金鑰
108F‧‧‧確認對稱式金鑰被設定
110‧‧‧防火牆
112、112'‧‧‧遠端認證
112A、112B‧‧‧導出
112C‧‧‧應用程式查問
112D‧‧‧回復
114‧‧‧對稱式金鑰
116‧‧‧架構金鑰
118‧‧‧程式金鑰
200‧‧‧系統模組
202‧‧‧處理模組
204‧‧‧記憶體模組
206‧‧‧電源模組
208‧‧‧使用者介面模組
210‧‧‧通訊介面模組
212、218‧‧‧通訊模組
214‧‧‧TEE模組
216‧‧‧認證模組
220‧‧‧合併操作模組
222‧‧‧處理器
224‧‧‧平台初始化模組
226‧‧‧記憶體
400‧‧‧開機載入程式碼
402‧‧‧OS/任務
404‧‧‧其他軟體
502、504、506、508、510、512、514、516、518、520、522、524、526、600、602、604、606、608、610、612‧‧‧操作
所主張標的物之各種實施例的特徵及優點將在以下實施方式進行時且在參看圖式後變得顯而易見,其中類似編號指示類似部分且其中:圖1說明根據本發明之至少一個實施例的用於對稱式金鑰與信任鏈之實例系統;圖2說明可根據本發明之至少一個實施例使用的驗證器裝置及證明器裝置之實例組配;圖3說明根據本發明之至少一個實施例的對稱式金鑰散佈之實例;圖4說明根據本發明之至少一個實施例的遠端認證之實例;圖5說明根據本發明之至少一個實施例的自驗證器之
觀點來看的對稱式金鑰與信任鏈之實例操作;以及圖6說明根據本發明之至少一個實施例的自證明器之觀點來看的對稱式金鑰與信任鏈之實例操作。
儘管以下實施方式將參考說明性實施例來進行,但其許多替代例、修改及變化對於熟習此項技術者將係顯而易見的。
本申請案係有關對稱式金鑰與信任鏈。在一個實施例中,證明器裝置可與驗證器裝置通訊以鑑認證明器裝置之識別碼、在證明器裝置上執行之應用程式或由在證明器裝置上執行之應用程式提供的資料。證明器裝置與驗證器裝置之間的互動可在兩個階段中出現。驗證器裝置可最初發出查問以鑑認證明器裝置之識別碼,此鑑認可接著引起對稱式認證金鑰儲存於證明器裝置及驗證器裝置上。該查問可涉及證明器裝置至少將金鑰資料及票證資料提供至驗證器裝置,該驗證器裝置可接著至少將票證資料提供至憑證器(例如,對應於證明器裝置之製造商、經銷商、售賣方等的至少一個裝置)。若票證資料經辨識,則憑證器可將授權符記傳輸至驗證器裝置,從而允許在驗證器中使用金鑰資料設定對稱式認證金鑰且接著向證明器確認該金鑰。該對稱式認證金鑰可由證明器裝置在建立信任鏈時使用,該信任鏈可用以在驗證器裝置查問嘗試存取驗證器裝置之應用程式的真確性、由證明器裝置中之應用程式提供的資
料之真確性等時作出響應。舉例而言,該對稱式認證金鑰可用以產生第一級金鑰,該金鑰又可用以產生程式金鑰。查問回應可至少包括可由驗證器裝置使用對稱式認證金鑰鑑認之程式金鑰。
在一個實施例中,可充當驗證器之裝置可包含(例如)通訊模組及受信任執行環境(TEE)。該TEE可至少包括認證模組,該認證模組用以偵測認證觸發,至少基於該認證觸發判定是否起始與證明器裝置之對稱式金鑰散佈操作或遠端認證操作,且基於該判定起始與證明器裝置之對稱式金鑰散佈操作或遠端認證操作中之至少一者。
認證可(例如)週期性地或由於經由通訊模組自證明器裝置接收之存取資源的請求而觸發。該通訊模組可經由短程無線連接或直接有線連接與證明器裝置互動。認證模組將起始與證明器裝置之對稱式金鑰散佈操作可包含認證模組將使通訊模組將裝置查問傳輸至證明器裝置且經由通訊模組自證明器裝置接收對裝置查問之回應,該回應至少包含金鑰資料及票證資料。該認證模組可接著進一步使通訊模組至少將票證資料傳輸至至少一個憑證器裝置,經由通訊模組自該至少一個憑證器裝置接收回應且判定自憑證器裝置接收之回應是否包含授權符記。在一個實施例中,該裝置可進一步包含防火牆,通訊模組經由該防火牆與至少一個憑證器裝置互動,該防火牆將至少防止裝置與至少一個憑證器裝置之間的非預期互動。該認證模組可進一步用以在判定已接收到授權符記之情況下至少基於金鑰
資料設定對稱式金鑰且使通訊模組將已設定對稱式金鑰之確認傳輸至證明器裝置。
在相同或不同實施例中,認證模組將起始與證明器裝置之遠端認證操作包含認證模組使通訊模組將應用程式查問傳輸至證明器裝置,經由通訊模組自證明器裝置接收對應用程式查問之回應,鑑認該回應且使通訊模組至少將鑑認之結果傳輸至證明器裝置,該回應係至少基於計數器資料、程式碼量測資料及程式金鑰資料而產生。該認證模組將鑑認該回應可包含(例如)該認證模組將鑑認出該回應係使用訊息鑑認碼基於對稱式金鑰而產生。與本發明一致的用於使用對稱式金鑰進行遠端認證的實例方法可包含:偵測認證觸發;至少基於該認證觸發判定是否起始與證明器裝置之對稱式金鑰散佈操作或遠端認證操作;及基於該判定起始與證明器裝置之對稱式金鑰散佈操作或遠端認證操作中之至少一者
圖1說明根據本發明之至少一個實施例的用於對稱式金鑰與信任鏈之實例系統。系統100可包含(例如)證明器102、驗證器104及憑證器106。一般而言,驗證器104可與憑證器106合作以鑑認證明器102、在證明器102上執行之應用程式、由證明器102提供之資料等。證明器102可為能夠如圖1中所說明與驗證器裝置104互動之任何裝置。關於系統100所揭示之操作可(有利但未必)允許證明器102為否則將不能夠支援現存認證方案之資源受限裝置(例如,有限處理能力、能量儲存等),諸如穿戴式裝置(例如,智慧型錶、
護目鏡、服裝等)、可植入裝置(例如,用於監視特定醫學病況之裝置)、依賴於能量採集(例如,機電產生、太陽能等)之裝置、感測器裝置、致動器裝置等。驗證器104可包含具有較多實質性計算資源之裝置,其可能能夠(例如)基於TXT、TDM等經由保護方案維持安全性。驗證器104之實例可包含(但不限於):行動通訊裝置,諸如蜂巢式手機或智慧型手機,其基於來自Google Corporation之Android®、來自Apple Corporation之iOS®、來自Microsoft Corporation之Windows®OS、來自Apple Corporation之Mac OS、來自Linux Foundation之Tizen OS、來自Mozilla Project之Firefox OS、來自Blackberry Corporation之Blackberry®、來自Hewlett-Packard Corporation之Palm® OS、來自Symbian Foundation之Symbian® OS,等等;行動計算裝置,諸如平板電腦,如來自Apple Corporation之iPad®、來自Microsoft Corporation之Surface®、來自Samsung Corporation之Galaxy Tab®、來自Amazon Corporation之Kindle Fire®等、包括由Intel Corporation製造之低功率晶片組的Ultrabook®、迷你筆記型電腦、筆記型電腦、膝上型電腦、掌上型電腦等;通常固定之計算裝置,諸如桌上型電腦、伺服器、智慧型電視、如來自Intel Corporation之下一代計算單元(NUC)平台的小型計算解決方案(例如,對於空間受限應用程式、TV機上盒等);等等。憑證器106可為用於憑證證明器102之識別碼的實體,且因而可(例如)為證明器102之製造商、證明器102之零售商或經銷商等。在一個實施例中,憑證器106
可包含可由驗證器104經由有線或無線通訊存取之至少一個裝置。舉例而言,憑證器106可包括可經由網際網路(例如,以雲端計算組配組織)存取之至少一個伺服器。為了本文中之解釋,可用以設想系統100之實例真實世界應用程式可包含用於監視使用者生理機能之至少一個可穿戴式感測器(例如,證明器102),該可穿戴式感測器無線耦接至使用者口袋中之智慧型手機(例如,驗證器104),該智慧型手機經由無線網際網路鏈路與該至少一個可穿戴式感測器之製造商(例如,憑證器106)通訊。
用於認證之已知解決方案可包含將經憑證之公開金鑰嵌入至證明器102中之受信任執行環境(TEE)中,驗證器104可基於不對稱式金鑰將公開金鑰用於鑑認(例如,在可直接與證明器102之TEE互動的憑證器106的輔助下)。若執行橢圓曲線密碼編譯(ECC)點乘可消耗低端CPU上之大量處理資源且現存協定通常需要一個以上此類操作,則現存解決方案對於資源受限裝置(例如,其可採用三個點乘以用於根據完全雜湊Menezes-Qu-Vanstone(FHMQV)協定建立會話金鑰)可過於慢速、過於昂貴等。
對應的對稱解決方案(例如,使用進階加密標準-基於密鑰之訊息鑑認碼(AES-CMAC))可快許多倍,但需要共用的對稱式鑑認金鑰,從而使憑證器106能夠鑑認TEE。
雖然在兩種方法中憑證器106可受各方信任,但允許憑證器106參與金鑰協商意謂憑證器106可稍後用以模擬證明器102且就認證向驗證器104進行欺騙。此弱點在與本發明一
致之實施例中得以解決,其中驗證器104可在金鑰交換期間隔離證明器102以防止與憑證器106互動。結果,驗證器104及證明器102可協商可經授權但未由憑證器106導出且因此可免於欺騙的金鑰。
與本發明一致,驗證器104可起始至少兩個類別之操作:對稱式金鑰散佈108及遠端認證112。舉例而言,對稱式金鑰散佈108涉及引起供證明器102及驗證器104在遠端認證112期間使用之對稱式金鑰之散佈的互動。最初,驗證器104可向證明器102發出裝置查問108A。裝置查問108A可為查問證明器102以「證明」其識別碼之訊息。裝置查問108A可由諸如以下各者之多種事件觸發:驗證器104之啟動、裝置104中之週期性觸發、來自證明器102之存取驗證器104上之資源的請求、由證明器102提供之資料在驗證器104處的接收,等等。證明器102可對驗證器104作出回應,如108B處所展示,該回應至少包括金鑰資料及票證資料。金鑰資料可允許驗證器104確認自證明器102接收到回應訊息108B且金鑰資料可至少包含由證明器102產生之對稱式金鑰,該對稱式金鑰可稍後在對稱式金鑰散佈108期間在驗證器104中加以設定。該票證資料可由類似於憑證器106之實體使用以鑑認證明器裝置102之識別碼。驗證器104可接著至少將票證資料轉遞至憑證器106,如108C處所展示。在一個實施例中,驗證器104可受防火牆110保護,該防火牆(例如)防止自區域網路(LAN)、類似於網際網路之廣域網路(WAN)、全球區域網路(GAN)侵入至至少包括證明器
102及驗證器104之個人區域網路(PAN)、人體區域網路(BAN)等中。防火牆110可實體或邏輯地防止證明器102與憑證器106或除驗證器104之外的其他方之間的互動。因此,可向驗證器104保證:經部署之對稱式金鑰僅為證明器102及驗證器104所知,且不為防火牆110外部之其他方所知。在相同或不同實施例中,驗證器104與憑證器106之間經由防火牆110的通道可為確保正交換之資料未被截獲之安全通道。如上文所論述,轉遞至憑證器106之資訊可限於票證資料(例如,僅為驗證證明器102之識別碼所需的資料)以確保憑證器106不具有模擬證明器102所需之所有資料。
憑證器106可至少利用票證資料以鑑認證明器102(例如,確保另一裝置並不模擬證明器102)。舉例而言,該票證資料可包含製造商資料、型號資料、序號、建置日期及/或可用以驗證證明器102實際上為由憑證器106提供(例如,製造、組配、散佈、售賣等)之產品的專用驗證資料。若判定證明器102為可靠的,則可將至少包含授權符記之回應自憑證器106傳輸至驗證器104,如108D處所展示。驗證器104可將授權符記用於設定對稱式金鑰,如108E處所展示。設定對稱式金鑰可包含(例如)指定供在與證明器102之裝置/程式/資料鑑認互動中使用的對稱式金鑰,及接著將對稱式金鑰儲存於驗證器104中(例如,在諸如TEE之安全記憶體中)。驗證器104可接著向證明器102確認對稱式金鑰已被設定,如108F處所展示。
遠端認證112可在證明器102中以信任鏈導出來
起始。舉例而言,可基於如在108E處所展示而提供至證明器102之對稱式金鑰114來如在112A處所展示而導出信任鏈中之初始架構金鑰。每一後續金鑰(例如,程式金鑰118)可部分地至少自先前金鑰(例如,架構金鑰116)導出,如在112B處所展示。以此方式,證明器102中之各種操作層級(諸如,OS、應用程式、附加模組等)可各自具有可使用對稱式金鑰114加以鑑認之金鑰。展示實例互動,其中藉由驗證器104將應用程式查問112C傳輸至證明器102。應用程式查問112C可包括查問應用程式以「證明」應用程式駐留於證明器102上及/或資料源自證明器102之訊息。類似於裝置查問108A,應用程式查問112C可藉由以下各者觸發:證明器102上之應用程式請求存取驗證器104中之資源;資料自證明器102被提供至驗證器104;等等。可回應於應用程式查問112C而傳輸回復112D,回復112D包含至少基於可在驗證器104中利用(例如)對稱式金鑰114加以鑑認之程式金鑰118的資料。
與本發明一致,信任鏈導出並不需要對受各方信任之量測的集中式記錄,且因此裝置並不需要基於硬體之保護以使量測安全或代表其他裝置報告及簽署量測。實情為,軟體可負責正確地導出金鑰且執行感知記憶體保護可用以保護所產生之金鑰116、118等以免受到OS或其他應用程式中之威脅。進一步為了減少硬體成本,信任鏈導出亦可減輕資源受限裝置上之啟動程序載入及受信任執行期間的效能瓶頸問題。所得認證協定僅需要訊息鑑認碼(MAC)
來證明特定應用程式之正確載入,且相比於與中心受信任子系統(例如,TPM)交互操作,可容易且較有效地整合於安全通道協定中。雖然對稱式信任鏈可限於僅提供個別(例如,隔離)應用程式之負載時間量測及認證,但由於驗證裝置之完整軟體狀態的高複雜度,當前傾向於關注對個別隔離應用程式(例如,受信任執行)之量測及證實。此外,當前未解決遠端認證藉由執行階段程式量測之擴展,但在與本發明一致之實施例中現處理此擴展。
圖2說明根據本發明之至少一個實施例的驗證器104'及證明器102'之實例組配。詳言之,驗證器104'及證明器102'可能能夠執行諸如圖1中所揭示之實例功能性。然而,驗證器104'及證明器102'僅意欲作為可在與本發明一致之實施例中使用的設備之實例,但並不意欲將此等各種實施例限於實施之任何特定方式。
驗證器104'可包含(例如)經組配以管理裝置操作之系統模組200。系統模組200可包括(例如)處理模組202、記憶體模組204、電源模組206、使用者介面模組208及通訊介面模組210。驗證器104'亦可包括通訊模組212及TEE模組214。雖然通訊模組212及TEE模組214已說明為與系統模組200分離,但圖2中所展示之實例實施僅係為了解釋而提供。與通訊模組212及TEE模組214相關聯之功能性中之一些或全部可併入至系統模組200中。
在驗證器104'中,處理模組202可包含位於單獨組件中之一或多個處理器,或替代地包含體現於單一組件
中(例如,在系統單晶片(SoC)組配中)之一或多個處理核心,及任何處理器相關支援電路(例如,橋接介面等)。實例處理器可包括(但不限於)可購自Intel Corporation之各種基於x86之微處理器,包括Pentium、Xeon、Itanium、Celeron、Atom、Core i-series產品系列中之彼等微處理器、進階RISC(例如,精簡指令集計算)機器或「ARM」處理器等。支援電路之實例可包括經組配以提供介面之晶片組(例如,可購自Intel Corporation之北橋、南橋等),處理模組202可經由該介面與驗證器104'中的可按不同速度、在不同匯流排上等操作之其他系統組件互動。通常與支援電路相關聯之功能性中之一些或全部亦可包括在與處理器相同之實體封裝中(例如,在可購自Intel Corporation之Sandy Bridge處理器系列中)。
處理模組202可經組配以執行驗證器104'中之各種指令。指令可包括經組配以使處理模組202執行與讀取資料、寫入資料、處理資料、制訂資料、轉換資料、變換資料等相關之活動的程式碼。資訊(例如,指令、資料等)可儲存於記憶體模組204中。記憶體模組204可包含呈固定或抽取式格式之隨機存取記憶體(RAM)或唯讀記憶體(ROM)。RAM可包括經組配以保存驗證器104'之操作期間的資訊的依電性記憶體,諸如靜態RAM(SRAM)或動態RAM(DRAM)。ROM可包括基於BIOS、UEFI等組配以在驗證器104'經啟動時提供指令的非依電性(NV)記憶體模組、諸如電子可規劃ROM(EPROMS)之可規劃記憶體、快閃記憶體
等。其他固定/抽取式記憶體可包括(但不限於):磁性記憶體,諸如軟性磁碟、硬碟機等;電子記憶體,諸如固態快閃記憶體(例如,嵌入式多媒體卡(eMMC)等);抽取式記憶體卡或棒(例如,微儲存裝置(uSD)、USB等);光學記憶體,諸如基於緊密光碟之ROM(CD-ROM)、數位視訊光碟(DVD)、藍光光碟等。
電源模組206可包括內部電源(例如,蓄電池、燃料電池等)及/或外部電源(例如,機電或太陽能產生器、電網、燃料電池等)及經組配以向驗證器104'供應操作所需之電力的相關電路。使用者介面模組208可包括用以允許使用者與驗證器104'互動之硬體及/或軟體,諸如各種輸入機構(例如,麥克風、開關、按鈕、旋鈕、鍵盤、揚聲器、觸敏表面、經組配以俘獲影像及/或感測近接性、距離、運動、示意動作、定向等之一或多個感測器)及各種輸出機構(例如,揚聲器、顯示器、發光/閃光指示器、用於振動、運動等之機電組件)。使用者介面模組208中之硬體可併入驗證器104'內及/或可經由有線或無線通訊媒體耦接至驗證器104'。
通訊介面模組210可經組配以管理封包投送及通訊模組212之其他控制功能,該通訊模組可包括經組配以支援有線及/或無線通訊之資源。在一些情況下,驗證器104'可包含皆由集中式通訊介面模組210管理之一個以上通訊模組212(例如,包括用於有線協定及/或無線電之單獨實體介面模組)。有線通訊可包括串列及並列有線媒體,諸如乙
太網路、通用串列匯流排(USB)、Firewire、數位視訊介面(DVI)、高清晰度多媒體介面(HDMI)等。無線通訊可包括(例如)緊密近接無線媒體(例如,諸如基於近場通訊(NFC)標準之射頻(RF)、紅外線(IR)等)、短程無線媒體(例如,藍芽、WLAN、Wi-Fi等)、遠程無線媒體(例如,蜂巢式廣域無線電通訊技術、基於衛星之通訊等),或經由聲波之電子通訊。在一個實施例中,通訊介面模組210可經組配以防止通訊模組212中處於作用中之無線通訊彼此干擾。在執行此功能時,通訊介面模組210可基於(例如)等待傳輸之訊息之相對優先權來排程通訊模組212之活動。雖然圖2中所揭示之實施例說明通訊介面模組210與通訊模組212分離,但通訊介面模組210及通訊模組212之功能性亦有可能併入至同一模組中。
TEE模組214可為安全工作區,在該工作區中,已知良好程式可執行,機密資訊可按安全方式儲存,等等。一般而言,TEE模組214可包含計算資源之集合,該等資源為安全的,使得在TEE模組214內執行之程式及與執行程式相關聯之任何資料係隔離的。除了可開始或停止程式及可插入或刪除相關聯資料外,在程式執行期間無法干擾或觀察到程式/資料。可未觀察到資料插入,且因此資料未受到干擾,且以控制方式釋放離開TEE模組214之任何資料。與本發明一致,在TEE模組214內執行之至少一個已知良好程式可執行本文中關於TEE模組是驗證器所揭示之任何或所有操作。在一個實例實施中,TEE模組214可利用由Intel
Corporation開發之軟體防護擴展(SGX)技術。SGX可提供系統記憶體內部之安全且硬體加密之計算及儲存區域,其內容無法藉由特許程式碼或甚至經由硬體探針至記憶體匯流排之施加來解密。當TEE模組214受SGX保護時,與本發明一致之實施例使入侵者不可能解密TEE模組214之內容。受保護資料在SGX外部無法被觀察到且因此在SGX外部不可被存取。
在使用SGX實施TEE模組214之實例實施中,可簽署程式之識別碼(例如,每一程式之內容的密碼編譯雜湊量測)且將其儲存於每一程式內。當程式接著經載入時,處理器驗證程式之量測(例如,如藉由處理器計算)與先前嵌入程式內之量測相同。用以簽署經嵌入之量測的簽章亦為可驗證的,此係因為處理器具備用以在程式載入時間驗證簽章之公開金鑰。因此,惡意軟體無法在不同樣更改程式之可驗證量測的情況下篡改該程式。惡意軟體亦無法就該簽章進行欺騙,此係因為簽章金鑰對於程式作者為安全的。因此,軟體不可由任何惡意軟體讀取、寫入或更改。此外,資料在TEE模組106中亦受到保護。舉例而言,TEE模組106中之已知良好程式可加密諸如金鑰、密碼、使用權等之資料,使得僅經驗證之良好程式可解密此資料。
認證模組216可駐留於TEE模組214內。認證模組216可與(例如)處理模組202、記憶體模組204及通訊模組212互動。在操作實例中,認證模組216可使通訊模組212將查問發送至證明器102'且可自證明器102'接收認證及票證資
料。認證模組216可利用處理模組202中之處理資源及/或記憶體模組204中之記憶體資源來處理自證明器102'接收之資料。此外,認證模組216可使通訊模組212至少將票證資料傳輸至驗證器104且自驗證器104接收授權符記資訊以供在產生對稱式金鑰114時使用。認證模組216可接著使通訊模組資訊212將至少一個對稱式金鑰114傳輸至證明器102'。
證明器102'在圖2之實例中已表示為資源受限裝置。通訊模組218可經組配以將資料傳輸至至少驗證器104'(例如,通訊模組212)且接收資料。由通訊模組218接收之資料可經提供至證明器102'中之操作資源(例如,提供至合併操作模組220)。合併操作模組220可能夠執行類似於系統模組200但尺度較小之功能性。舉例而言,合併操作模組220可包含一體式處理解決方案,諸如可經組配以處置證明器102'之所有處理操作的SoC,其包括諸如處理器222、平台初始化模組(例如,開機載入程式碼)224、記憶體226等之資源。在一個實施例中,合併操作模組220可使通訊模組218與通訊模組212互動。在一個實施例中,此互動可限於有線通訊、緊密近接或短程無線通訊。雖然此限制可簡單地為證明器102'之功能性事實,但其亦可用以增強驗證器104'與證明器102'之間的互動之安全性,此係因為證明器102'在對稱式金鑰散佈108期間可僅能夠與近距離內之單一裝置(例如,驗證器104')互動。
圖3說明根據本發明之至少一個實施例的對稱式金鑰散佈108'之實例。圖3詳述驗證器104及證明器102可如
何建立可用於遠端認證之共用對稱式金鑰KV,P,遠端認證之實例將描述於圖3中。憑證器106(例如,證明器102之製造商)可判定證明器102之識別項IDP(例如,在製造時間),且可將鑑認金鑰EKP嵌入至證明器102中之安全記憶體位置(例如,加密記憶體)中。為增強安全性,可假定證明器102在協定交換(例如,經由有線、緊密近接或短程通訊)過程期間無法與除驗證器104外之另一裝置通訊,因此防止證明器102處之受損害軟體與憑證器106或另一外部實體之可能串通。然而,驗證器104及憑證器106可經由諸如經由輸送控制協定/網際網路協定(TCP/IP)之輸送層安全性(TLS)的安全通道進行互動。如圖3中所展示,驗證器104可產生用於金鑰散佈會話之隨機數NV及NAUTH,且可使用驗證器104之識別符IDV雜湊此等值以用於傳輸裝置查問。證明器102可產生用於對查問作出回應之資料,該回應至少包括金鑰資料CP及ticketV,M。CP及ticketV,M可藉由對至少包括在裝置查問中發送之值及IDP之各種值執行密碼編譯函數而在證明器102中產生。
在一個實施例中,驗證器104可接著將NAUTH及ticketV,M轉遞至憑證器106(例如,經由安全通道)。主從式金鑰方案可用以減小所需儲存區,使得憑證器106可能夠處置大量證明器102。在知曉EK之情況下,憑證器106可能夠針對其裝置IDP中之每一者使用金鑰導出函數(KDF)導出EKP,諸如,EKP=KDF(EK,IDP)。ticketV,M經憑證器106之鑑認可引起產生授權符記SV,其中SV=ADEC(EKP,ticketV,M)。
可接著至少將SV傳輸回至驗證器104以供在設定對稱式金鑰KV,P時使用。如圖3中所展示,可接著基於CV=MAC(KV,P,NV,NP)產生確認CV。證明器102可接收確認CV且可利用CV判定已設定對稱式金鑰KV,P。
在圖3之實例協定中,可能無法向證明器102或憑證器106明確地鑑認驗證器104,此情形意謂任何驗證器104可觸發此協定。然而,此交換保證憑證器106獲悉與部署至IDP之對稱式金鑰KV,P相關聯的識別碼IDV。因而,至少兩個替代例可用於驗證器104之帶外鑑認(及授權):可採用驗證器104與證明器102之間的本端(例如,實體)授權的分散式方法,及憑證器106可充當驗證器104與證明器102之間的介體的集中式方法。本端授權可充分利用以下情形:許多裝置已基於實體近接性或類似關係提供帶外金鑰部署。舉例而言,裝置配對協定可在本端受信任環境中執行對稱式金鑰交換,且可接著詢問使用者以藉由在任一裝置上鍵入裝置PIN來鑑認該交換。以此方式,可與證明器102建立由驗證器104新獲取之共同的共用秘密「S」。然而,證明器102需要配備有受信任使用者I/O設施以在受信任環境(例如,其在一些有限資源裝置中可能不可得)中執行配對。否則,驗證器104將無法知曉是否與證明器102上之安全或受損害軟體共用S。雖然S自身可能並不可用於認證,但在圖3之實例中S可用以建立驗證器104與證明器102之間的經鑑認通道,從而確保證明器102無法與除驗證器104外之其他方通訊。以此方式,S可用以鑑認及授權對稱式金鑰KV,P在驗證器104
與證明器102之間的本端部署。基礎協定中之證明器之實體隔離確保可能不發生與憑證器106之合作且僅成功共用之對稱式金鑰KV,P為驗證器104及證明器102所知。因此,甚至在證明器102受損害之情況下,對稱式金鑰KV,P仍可用以確證證明器102且偵測損害。在確證證明器102之後,實體隔離不再為必要的。
若本端授權不可行或不認為係足夠安全的,則可使用集中式解決方案,其中憑證器106明確地授權驗證器104以與證明器102建立對稱式金鑰KV,P。出於此目的,驗證器應向憑證器106鑑認何時在基礎協定下建立安全通道,使得驗證器104之識別碼可使用密碼連結至如在驗證器104與證明器102之間的本端通訊中所使用的IDV。舉例而言,若驗證器104與憑證器之間的安全通道使用用於相互不對稱鑑認之標準公開金鑰方案,則IDV可為驗證器104之公開金鑰Vpub的指紋(例如,密碼編譯雜湊)。憑證器106可接著基於以下情形驗證證明器102正與通訊於憑證器106之同一驗證器104互動:除驗證器104外之其他實體不知曉關於Vpub之私密金鑰,其可由IDV=hash(Vpub)唯一地識別。因此,憑證器106可基於IDV及IDP執行驗證器104之授權(例如,藉由在資料庫中查找驗證器104是否已購買證明器102或驗證器104是否為可執行P認證之某一特許群組之部分)。
圖4說明根據本發明之至少一個實施例的遠端認證112'之實例。遠端認證協定為查問-回應協定,其中證明器102可使用經部署之對稱式金鑰KV,P「憑證」其平台之軟
體狀態。出於此目的,傳統的認證方案在證明器102上的諸如TPM之平台組配暫存器(PCR)的安全記憶體位置中記錄證明器102之軟體狀態,且接著連同來自藉由驗證器104進行之查問的臨時標誌一起簽署彼等所記錄之量測。來自用以啟動OS及應用程之初始啟動程序載入常式的全部記錄被稱為信任鏈,此係因為每一組件需要先前載入之組件來量測其。
類似方案可藉由將軟體量測儲存於記憶體位置中來實現,該記憶體位置係藉由保護認證金鑰KV,P以及「軟體PCR」而由執行感知記憶體保護方案保護,使得僅受信任遠端認證碼可存取彼資料。然而,嵌入式環境及對稱式認證金鑰亦實現另一簡化,其可被視為「隱含的」或「導出的」信任鏈。在此方法中,每當一些軟體載入另一軟體模組時,便可使用對應金鑰產生及/或金鑰委派操作而非將量測儲存於安全位置中來擴展信任鏈。如圖4中所展示,在證明器102"中,可藉由擁有根對稱式金鑰KV,P之平台啟動程序載入程式碼開始信任鏈。然而,替代基於可為資源密集型之安全硬體或韌體提供執行階段服務,安全開機常式可量測(例如,通常藉由雜湊法)軟體模組且直接將所導出之程式金鑰KM=MAC(KV,P,hashM)嵌入至經載入程式模組之保留位置中。實例操作說明於圖4中,其中對於開機載入程式碼400,Hash1=量測(開機載入程式碼)且程式金鑰K1=MAC(KV,P,計數器∥Hash1)。程式金鑰K1可接著用以產生對應於OS/任務402之程式金鑰(例如,Hash2=量測(OS/任務
碼)且程式金鑰K2=MAC(K1,計數器∥Hash2)。同樣地,亦可導出特定地對應於其他軟體404之程式金鑰,其中Hash3=量測(其他軟體程式碼)且程式金鑰K3=MAC(K1,計數器∥Hash3)
每一軟體模組(例如,OS/任務402、其他軟體404等)可接著連同一連串量測(例如,儲存於每一模組中之各種雜湊值)一起使用其對應程式金鑰KM(例如,K1、K2、K3等)認證其初始狀態(例如,量測)。在接收作為由證明器102提供之對應用程式查問的回應之部分的此等量測後,驗證器104可接著能夠自KV,P導出程式金鑰KM,且鑒於由驗證器104在應用程式查問中提供之臨時標誌僅基於用程式金鑰KM計算之MAC來驗證KM之正確導出。此方法在(例如)具備執行感知記憶體保護能力之低端裝置中可為尤其有用的,該裝置並不需要受信任OS、受信任韌體或特許CPU模式來提供對個別嵌入應用程式之受信任執行(例如,以最小硬體及軟體成本)。對稱式信任鏈亦可用以產生軟體特定加密金鑰(例如,用於「密封」軟體)。
圖5說明根據本發明之至少一個實施例的自驗證器之觀點來看的對稱式金鑰與信任鏈之實例操作。最初,可在驗證器中觸發認證。實例認證觸發可包括(例如)驗證器或證明器之啟動、自證明器接收之存取驗證器中之資源的請求、正自證明器接收資料等。可接著在操作502中作出關於是否需要金鑰散佈之判定。若(例如)驗證器從未與證明器互動,現存對稱式金鑰經損毀或逾期等,則可需要金鑰散
佈。若在操作502中判定需要金鑰散佈,則在操作504中可將裝置查問傳輸至證明器。在操作506中可接收對裝置查問之回應,該回應至少包含金鑰資料及票證資料。在操作508中,驗證器可接著繼續至少將票證資料傳輸至憑證器。在操作510中,可接著作出關於是否回應於操作508中至少傳輸票證資訊而自憑證器接收至少含有授權符記之訊息的判定。若在操作510中判定未接收到包括授權符記之訊息,則在操作512中,金鑰散佈操作可終止或視情況返回至操作504以進行另一嘗試。若在操作510中判定接收到至少包含授權符記之訊息,則在操作514中,可使用授權符記設定對稱式金鑰(例如,至少基於在操作506中接收之金鑰資料)。在操作516中,可接著將已設定金鑰之確認傳輸至證明器。
若在操作502中判定認證為應用程式及/或資料鑑認所需要的(例如,不需要金鑰散佈),則在操作518中,可將應用程式查問傳輸至證明器。在操作520中,可接著接收對應用程式查問之回應。在操作522中,驗證器可繼續鑑認該回應之內容。鑑認該回應之內容可至少包含對在回應中提供之程式金鑰執行MAC以判定該程式金鑰是否係基於在操作514中設定之對稱式金鑰產生。在操作524中可判定基於鑑認之回復,且接著在操作526中將該回復傳輸至證明器。
圖6說明根據本發明之至少一個實施例的自證明器之觀點來看的對稱式金鑰與信任鏈之實例操作。圖6中所揭示之操作假設已發生金鑰散佈操作(例如,諸如揭示於圖
5中的操作504至518),使得對稱式金鑰已駐留於證明器中。在操作600中可啟動證明器。在證明器啟動之後,在操作602中可發生啟動程序載入,其中(例如)可至少基於計數器、開機載入程式碼之量測及對稱式金鑰來產生架構金鑰(例如,啟動程序載入金鑰)。
在於操作604中遞增計數器之後,在操作606中可載入下一程式碼模組。舉例而言,可在開機程式碼之後在證明器中載入OS/任務模組,其後可接著載入其他軟體,等等。在於操作606中載入下一程式碼模組之後,可基於計數器之當前值、正載入之當前程式碼之量測及在操作608中針對先前程式碼模組產生之金鑰(例如,架構金鑰或先前程式金鑰)來產生程式碼模組之程式金鑰。在操作610中可接著作出關於是否存在額外程式碼模組待載入證明器中之判定。在操作610中的仍存在額外程式碼模組待載入之判定可繼之以至操作604之返回,其中可針對下一程式碼模組而遞增計數器。否則,若在操作610中判定所有程式碼模組已載入,則在操作612中,證明器可開始傾聽來自驗證器之查問。
雖然圖5及圖6說明根據不同實施例之操作,但應理解,並非圖5及圖6中所描繪之所有操作為其他實施例所必要的。實際上,本文中充分預期以下情形:在本發明之其他實施例中,圖5及圖6中所描繪之操作及/或本文中所描述之其他操作可按圖式中之任一者中未特定展示之方式組合,但仍與本發明完全一致。因此,有關於在一個圖式中並未準確展示的特徵及/或操作的申請專利範圍被認為在
本發明之範疇及內容內。
如在本申請案中及在申請專利範圍中所使用,由術語「及/或」接合之一列項目可意謂所列項目之任何組合。舉例而言,片語「A、B及/或C」可意謂A;B;C;A及B;A及C;B及C;或A、B及C。如在本申請案中及在申請專利範圍中所使用,由術語「中之至少一者」接合之一列項目可意謂所列項之任何組合。舉例而言,片語「A、B或C中之至少一者」可意謂A;B;C;A及B;A及C;B及C;或A、B及C。
如本文中的任何實施例中所使用,術語「模組」可係指經組配以執行前述操作中之任一者的軟體、韌體及/或電路。軟體可體現為軟體套件、程式碼、指令、指令集及/或記錄於非暫時性電腦可讀儲存媒體上之資料。韌體可體現為程式碼、指令或指令集及/或硬寫碼(例如,非依電性)於記憶體裝置中的資料。如本文中任何實施例中所使用,「電路」可(例如)單獨或組合地包含固線式電路、可規劃電路(諸如,包含一或多個個別指令處理核心之電腦處理器)、狀態機電路,及/或儲存由可規劃電路執行之指令的韌體。該等模組可共同地或個別地體現為形成大型系統(例如,積體電路(IC)、系統單晶片(SoC)、桌上型電腦、膝上型電腦、平板電腦、伺服器、智慧型手機等)之部分的電路。
本文中所描述之操作中之任一者可實施於一系統中,該系統包括一或多個儲存媒體(例如,非暫時性儲存媒體),該等一或多個儲存媒體具有個別地或組合地儲存於
其上的在由一或多個處理器執行時執行方法之指令。因此,該處理器可包括(例如)伺服器CPU、行動裝置CPU及/或其他可規劃電路。又,預期可跨越多個實體裝置散佈本文中所描述之操作,諸如在一個以上不同實體位置處之處理結構。儲存媒體可包括任何類型之有形媒體,例如,任何類型之磁碟,包括硬碟、軟性磁碟、光碟、緊密光碟唯讀記憶體(CD-ROM)、可重寫緊密光碟(CD-RW)及磁光碟;半導體裝置,諸如唯讀記憶體(ROM)、諸如動態及靜態隨機存取記憶體(RAM)之RAM、可抹除可規劃唯讀記憶體(EPROM)、電可抹除可規劃唯讀記憶體(EEPROM)、快閃記憶體、固態磁碟(SSD)、嵌入式多媒體卡(eMMC)、安全數位輸入/輸出(SDIO)卡、磁性或光學卡,或適合於儲存電子指令之任何類型之媒體。其他實施例可實施為由可規劃控制裝置執行之軟體模組。
因此,本申請案係有關於對稱式金鑰與信任鏈。在一個實施例中,證明器可與驗證器通訊以執行裝置或資料鑑認。驗證器可發出查問以鑑認證明器,證明器可用可轉遞至憑證器之金鑰資料及票證資料對該查問作出回應。若辨識到票證資料,則憑證器可將授權符記傳輸至驗證器,該驗證器可接著設定對稱式認證金鑰。該證明器可利用對稱式認證金鑰以建立信任鏈從而供在對關於應用程式或資料真確性之查問作出回應時使用。對稱式認證金鑰可用以產生第一層級金鑰,該第一層級金鑰可用以產生程式金鑰。查問回應可至少包括可藉由驗證器使用對稱式認證
金鑰鑑認之程式金鑰資料。
以下實例係關於其他實施例。本發明之以下實例可包含用於對稱式金鑰與信任鏈之標的物(subject material),諸如一種裝置、一種方法、用於儲存在經執行時使機器執行基於方法之動作的指令之至少一個機器可讀媒體、用於執行基於方法之動作的構件及/或一種系統,如下文所提供。
根據實例1,提供一種用以充當一驗證器之裝置。該裝置可包含一通訊模組及至少包括一認證模組之一受信任執行環境,該認證模組用以進行以下操作:偵測一認證觸發;至少基於該認證觸發判定是否起始與一證明器裝置之對稱式金鑰散佈操作或遠端認證操作;及基於該判定起始與該證明器裝置之對稱式金鑰散佈操作或遠端認證操作中之至少一者。
實例2可包括實例1之元素,其中認證係週期性地或由於經由該通訊模組自該證明器裝置接收之存取資源的一請求而觸發。
實例3可包括實例1至2中之任一者的元素,其中該通訊模組將經由一短程無線連接或一直接有線連接中之至少一者與該證明器裝置互動。
實例4可包括實例1至2中之任一者的元素,其中該認證模組將起始與該證明器裝置之該等對稱式金鑰散佈操作包含該認證模組將使該通訊模組將一裝置查問傳輸至該證明器裝置且經由該通訊模組自該證明器裝置接收對該
裝置查問之一回應,該回應至少包含金鑰資料及票證資料。
實例5可包括實例4之元素,其中該認證模組進一步將使該通訊模組至少將該票證資料傳輸至至少一個憑證器裝置,經由該通訊模組自該至少一個憑證器裝置接收一回應且判定自該憑證器裝置接收之該回應是否包含一授權符記。
實例6可包括實例5之元素,且可進一步包含一防火牆,該通訊模組經由該防火牆與該至少一個憑證器裝置互動,該防火牆將至少防止該裝置與該至少一個憑證器裝置之間的非預期互動。
實例7可包括實例5之元素,其中該認證模組進一步將在判定已接收到一授權符記之情況下至少基於該金鑰資料設定一對稱式金鑰且使該通訊模組將已設定該對稱式金鑰之一確認傳輸至該證明器裝置。
實例8可包括實例7之元素,其中該認證模組將用該證明器裝置起始該等遠端認證操作包含該認證模組將使該通訊模組將一應用程式查問傳輸至該證明器裝置,經由該通訊模組自該證明器裝置接收對該應用程式查問之一回應,鑑認該回應且使該通訊模組至少將該鑑認之結果傳輸至該證明器裝置,該回應係至少基於計數器資料、程式碼量測資料及程式金鑰資料而產生。
實例9可包括實例8之元素,其中該認證模組將鑑認該回應包含該認證模組將鑑認出該回應係使用一訊息鑑認碼基於該對稱式金鑰而產生。
根據實例10,提供一種用於使用對稱式金鑰進行遠端認證之方法。該方法可包含:偵測一認證觸發;至少基於該認證觸發判定是否起始與一證明器裝置之對稱式金鑰散佈操作或遠端認證操作;及基於該判定起始與該證明器裝置之對稱式金鑰散佈操作或遠端認證操作中之至少一者。
實例11可包括實例10之元素,其中認證係週期性地或由於自該證明器裝置接收之存取資源的一請求而觸發。
實例12可包括實例10至11中之任一者的元素,且可進一步包含經由一短程無線連接或一直接有線連接中之至少一者與該證明器裝置互動。
實例13可包括實例10至11中之任一者的元素,其中起始與該證明器裝置之對稱式金鑰散佈操作包含使將一裝置查問傳輸至該證明器裝置及自該證明器裝置接收對該裝置查問之一回應,該回應至少包含金鑰資料及票證資料。
實例14可包括實例13之元素,且可進一步包含使至少將該票證資料傳輸至至少一個憑證器裝置,自該至少一個憑證器裝置接收一回應及判定自該至少一個憑證器裝置接收之該回應是否包含一授權符記。
實例15可包括實例14之元素,且可進一步包含在判定已接收到一授權符記之情況下至少基於該金鑰資料設定一對稱式金鑰及使將已設定該對稱式金鑰之一確認傳輸至該證明器裝置。
實例16可包括實例15之元素,其中起始與該證明器之遠端認證操作包含使將一應用程式查問傳輸至該證明
器裝置,自該證明器裝置接收對該應用程式查問之一回應,鑑認該回應及使至少將該鑑認之結果傳輸至該證明器裝置,該回應係至少基於計數器資料、程式碼量測資料及程式金鑰資料而產生。
實例17可包括實例16之元素,其中鑑認該回應包含鑑認出該回應係使用一訊息鑑認碼基於該對稱式金鑰而產生。
根據實例18,提供一種至少包括一裝置之系統,該系統經配置以執行上文之實例10至17中之任一者的方法。
根據實例19,提供一種經配置以執行上文之實例10至17中之任一者的方法的晶片組。
根據實例20,提供至少一個機器可讀媒體,其包含多個指令,該等多個指令回應於在一計算裝置上執行而使該計算裝置執行上文之實例10至17中之任一者的方法。
根據實例21,提供一種經組配以用於使用對稱式金鑰進行遠端認證之裝置,該裝置經配置以執行上文之實例10至17中之任一者的方法。
根據實例22,提供一種用於使用對稱式金鑰進行遠端認證之系統,其包含用於偵測一認證觸發之構件;用於至少基於該認證觸發判定是否起始與一證明器裝置之對稱式金鑰散佈操作或遠端認證操作之構件;及用於基於該判定起始與該證明器裝置之對稱式金鑰散佈操作或遠端認證操作中之至少一者的構件。
實例23可包括實例22之元素,其中認證係週期性地或由於自該證明器裝置接收之存取資源的一請求而觸發。
實例24可包括實例22至23中之任一者的元素,且可進一步包含用於經由一短程無線連接或一直接有線連接中之至少一者與該證明器裝置互動的構件。
實例25可包括實例22至23中之任一者的元素,其中用於起始與該證明器裝置之對稱式金鑰散佈操作之該構件包含用於使將一裝置查問傳輸至該證明器裝置之構件及用於自該證明器裝置接收對該裝置查問之一回應的構件,該回應至少包含金鑰資料及票證資料。
實例26可包括實例25之元素,且可進一步包含用於使至少將該票證資料傳輸至至少一個憑證器裝置之構件、用於自該至少一個憑證器裝置接收一回應之構件及用於判定自該至少一個憑證器裝置接收之該回應是否包含一授權符記的構件。
實例27可包括實例26之元素,且可進一步包含用於在判定已接收到一授權符記之情況下至少基於該金鑰資料設定一對稱式金鑰之構件及用於使將已設定該對稱式金鑰之一確認傳輸至該證明器裝置之構件。
實例28可包括實例27之元素,其中用於起始與該證明器之遠端認證操作之該構件包含使將一應用程式查問傳輸至該證明器裝置之構件、用於自該證明器裝置接收對該應用程式查問之一回應的構件、用於鑑認該回應之構件
及用於使至少將該鑑認之結果傳輸至該證明器裝置之構件,該回應係至少基於計數器資料、程式碼量測資料及程式金鑰資料而產生。
實例29可包括實例28之元素,其中用於鑑認該回應之該構件包含用於鑑認出該回應係使用一訊息鑑認碼基於該對稱式金鑰而產生之構件。
根據實例30,提供一種用以充當一證明器之裝置。該裝置可包含一通訊模組及至少操作資源以建立一對稱式信任鏈,該等操作資源至少包括一平台初始化模組,該平台初始化模組用以儲存作為經由該通訊模組結合一驗證器裝置執行之對稱式金鑰散佈操作而產生之一對稱式金鑰。
實例31可包括實例30之元素,其中該平台初始化模組進一步將量測待載入於該裝置上之一程式碼模組且至少基於該對稱式金鑰及該程式碼模組量測為載入於該裝置上之該程式碼模組之一執行階段表示佈建一程式金鑰。
實例32可包括實例31之元素,其中該平台初始化模組將為該程式碼模組之該執行階段表示佈建該程式金鑰包含該平台初始化模組將利用一訊息鑑認碼基於該對稱式金鑰、該程式碼模組量測及一計數器值而產生該程式金鑰。
實例33可包括實例32之元素,其中該平台初始化模組將進一步經由該通訊模組自該驗證器裝置接收一應用程式查問且經由該通訊模組傳輸對該應用程式查問之一回應,該應用程式查問係有關於該程式碼模組之該執行階段
表示,該回應係至少基於該程式金鑰、該程式碼模組量測及該計數器值。
實例34可包括實例32至33中之任一者的元素,其中該平台初始化模組將進一步遞增該計數器之該值,量測待載入於該裝置上之一第二程式碼模組且至少基於該程式金鑰、該第二程式碼模組量測及該計數器值為載入於該裝置上之該第二程式碼模組的一執行階段表示佈建一第二程式金鑰。
實例35可包括實例34之元素,其中該平台初始化模組將為該第二程式之該執行階段表示佈建該第二程式金鑰包含該平台初始化模組將利用一訊息鑑認碼基於該程式金鑰、該第二程式碼模組量測及該計數器值而產生該第二程式金鑰。
實例36可包括實例35之元素,其中該平台初始化模組將進一步經由該通訊模組自該驗證器裝置接收一應用程式查問且經由該通訊模組傳輸對該應用程式查問之一回應,該應用程式查問係有關於該第二程式碼模組之該執行階段表示,該回應係至少基於該第二程式金鑰、該第二程式碼模組量測及該計數器值。
根據實例37,提供一種用於建立一信任鏈之方法。該方法可包含將一對稱式金鑰儲存於一證明器裝置中,該對稱式金鑰係作為結合一驗證器裝置執行之對稱式金鑰散佈操作之結果而產生。
實例38可包括實例37之元素,且可進一步包含量
測待載入於該證明器裝置上之一程式碼模組及至少基於該對稱式金鑰及該程式量測為載入於該證明器裝置上之該程式碼模組之一執行階段表示佈建一程式金鑰。
實例39可包括實例38之元素,其中為該程式碼模組之該執行階段表示佈建該程式金鑰包含利用一訊息鑑認碼基於該對稱式金鑰、該程式碼模組量測及一計數器值而產生該程式金鑰。
實例40可包括實例39之元素,其進一步包含自該驗證器裝置接收一應用程式查問且傳輸對該應用程式查問之一回應,該應用程式查問係有關於該程式碼模組之該執行階段表示,該回應係至少基於該程式金鑰、該程式碼模組量測及該計數器值。
實例41可包括實例39至40中之任一者的元素,且可進一步包含遞增該計數器之該值,量測待載入於該證明器裝置上之一第二程式碼模組且至少基於該程式金鑰、該第二程式碼模組量測及該計數器值為載入於該證明器裝置上之該第二程式碼模組的一執行階段表示佈建一第二程式金鑰。
實例42可包括實例41之元素,其中為該第二程式之該執行階段表示佈建該第二程式金鑰包含利用一訊息鑑認碼基於該程式金鑰、該第二程式碼模組量測及該計數器而產生該第二程式金鑰。
實例43可包括實例42之元素,且可進一步包含自該驗證器裝置接收一應用程式查問且傳輸對該應用程式查
問之一回應,該應用程式查問係有關於該第二程式碼模組之該執行階段表示,該回應係至少基於該第二程式金鑰、該第二程式碼模組量測及該計數器值。
根據實例44,提供一種至少包括一裝置之系統,該系統經配置以執行上文之實例37至43中之任一者的方法。
根據實例45,提供一種經配置以執行上文之實例37至43中之任一者的方法的晶片組。
根據實例46,提供至少一個機器可讀媒體,其包含多個指令,該等多個指令回應於在一計算裝置上執行而使該計算裝置執行上文之實例37至43中之任一者的方法。
根據實例47,提供一種經組配以用於使用對稱式金鑰進行遠端認證之裝置,該裝置經配置以執行上文之實例37至43中之任一者的方法。
根據實例48,提供一種用於建立一信任鏈之系統。該系統可包含用於將一對稱式金鑰儲存於一證明器裝置中之構件,該對稱式金鑰係作為結合一驗證器裝置執行之對稱式金鑰散佈操作之結果而產生。
實例49可包括實例48之元素,且可進一步包含用於量測待載入於該證明器裝置上之一程式碼模組的構件及用於至少基於該對稱式金鑰及該程式量測為載入於該證明器裝置上之該程式碼模組之一執行階段表示佈建一程式金鑰的構件。
實例50可包括實例49之元素,其中用於為該程式
碼模組之該執行階段表示佈建該程式金鑰的該構件包含用於利用一訊息鑑認碼基於該對稱式金鑰、該程式碼模組量測及一計數器值而產生該程式金鑰的構件。
實例51可包括實例50之元素,且可進一步包含用於自該驗證器裝置接收一應用程式查問的構件及用於傳輸對該應用程式查問之一回應的構件,該應用程式查問係有關於該程式碼模組之該執行階段表示,該回應係至少基於該程式金鑰、該程式碼模組量測及該計數器值。
實例52可包括實例50至51中之任一者的元素,且可進一步包含用於遞增該計數器之該值的構件;用於量測待載入於該證明器裝置上之一第二程式碼模組的構件及用於至少基於該程式金鑰、該第二程式碼模組量測及該計數器值為載入於該證明器裝置上之該第二程式碼模組的一執行階段表示佈建一第二程式金鑰的構件。
實例53可包括實例52之元素,其中用於為該第二程式之該執行階段表示佈建該第二程式金鑰的該構件包含用於利用一訊息鑑認碼基於該程式金鑰、該第二程式碼模組量測及該計數器而產生該第二程式金鑰的構件。
實例54可包括實例53之元素,且可進一步包含用於自該驗證器裝置接收一應用程式查問的構件及用於傳輸對該應用程式查問之一回應的構件,該應用程式查問係有關於該第二程式碼模組之該執行階段表示,該回應係至少基於該第二程式金鑰、該第二程式碼模組量測及該計數器值。
已在本文中使用之術語及表達用作描述而非限制之術語,且在使用此等術語及表達時並不意欲排除所展示及描述之特徵的任何等效物(或其部分),且應認識到在申請專利範圍之範疇內,各種修改為可能的。因此,申請專利範圍意欲涵蓋所有此類等效物。
100‧‧‧系統
102‧‧‧證明器
104‧‧‧驗證器
106‧‧‧憑證器
108‧‧‧對稱式金鑰散佈操作
108A‧‧‧裝置查問
108B‧‧‧回應訊息
108C‧‧‧票證資料
108D‧‧‧授權符記
108E‧‧‧設定對稱式金鑰
108F‧‧‧確認對稱式金鑰被設定
110‧‧‧防火牆
112‧‧‧遠端認證
112A、112B‧‧‧導出
112C‧‧‧應用程式查問
112D‧‧‧回復
114‧‧‧對稱式金鑰
116‧‧‧架構金鑰
118‧‧‧程式金鑰
Claims (44)
- 一種經組配用於使用信任鏈密封資料之裝置,其包含:一記憶體;以及一用以至少從該記憶體載入程式碼模組之處理器,其中在載入一經選擇程式碼模組之後,該處理器係進一步用以:量測該經選擇程式碼模組;判定對應於該經選擇程式碼模組之一密封金鑰,其中該密封金鑰係至少基於對應於一先前載入程式碼模組之一先前的密封金鑰及該經選擇程式碼模組之該量測而判定;使用該密封金鑰來密封對應於所載入之該經選擇程式碼模組的資料;針對任何所載入之該經選擇程式碼模組判定一軟體更新是否正在該記憶體中擱置;以及當針對一程式碼模組之一軟體更新被判定為擱置時,該處理器係進一步用以判定該軟體更新是否包含指示經密封資料不應被遷移以與針對該軟體更新為擱置的該程式碼模組之一更新版本一起操作之元資料。
- 如請求項1之裝置,其進一步包含一平台初始化模組用以將信任程式碼之根載入至該裝置中。
- 如請求項2之裝置,其中該信任程式碼之根致使該處理 器用以至少基於該記憶體的一區域中之一特定平台之根密封金鑰而判定對應於一從該記憶體所載入之一第一程式碼模組的密封金鑰,該記憶體的該區域藉由只允許該信任程式碼之根去存取該特定平台之根密封金鑰的記憶體保護邏輯所保護。
- 如請求項3之裝置,其中該處理器係進一步用以:判定該特定平台之根密封金鑰是否存在於該記憶體中;以及當該特定平台之根密封金鑰被判定不存在於該記憶體中時,產生一新特定平台之根密封金鑰。
- 如請求項1之裝置,其中當針對一程式碼模組之一軟體更新被判定為擱置時,該處理器係進一步使用一鑑認金鑰來鑑認該軟體更新。
- 如請求項1之裝置,其中當針對一程式碼模組之一軟體更新被判定為擱置時,該處理器係進一步用以:至少基於對應於一先前載入程式碼模組之一先前的密封金鑰及針對該軟體更新為擱置之該程式碼模組之一量測而判定一舊密封金鑰;以及至少基於對應於該前載入程式碼模組之該先前的密封金鑰及該軟體更新之一量測而判定一新密封金鑰。
- 如請求項6之裝置,其中該處理器係進一步用以:執行該軟體更新;使用該舊密封金鑰來開封對應於針對該軟體更新為擱置之該程式碼模組之該經密封資料;以及 使用該新密封金鑰來重新密封對應於針對該軟體更新為擱置之該程式碼模組之該經開封資料。
- 一種用於使用信任鏈密封資料之方法,其包含:從一裝置之一記憶體載入經選擇之一程式碼模組;量測經選擇之該程式碼模組;判定對應於該程式碼模組之一密封金鑰,其中該密封金鑰係至少基於對應於一先前載入程式碼模組之一先前的密封金鑰及經選擇之該程式碼模組之該量測而判定;以及使用該密封金鑰來密封對應於所載入的經選擇之該程式碼模組的資料;針對任何所載入的該程式碼模組判定一軟體更新是否正在該記憶體中擱置;以及當針對一程式碼模組之一軟體更新被判定為擱置時,判定該軟體更新是否包含指示經密封資料不應被遷移以與針對該軟體更新為擱置的該程式碼模組之一更新版本一起操作之元資料。
- 如請求項8之方法,其進一步包含:載入來自該記憶體之信任程式碼之根;以及至少基於該記憶體的一區域中之一特定平台之根密封金鑰而判定對應於一從該記憶體所載入之一第一程式碼模組的密封金鑰,該記憶體的該區域藉由只允許該信任程式碼之根去存取該特定平台之根密封金鑰的記憶體保護邏輯所保護。
- 如請求項9之方法,其進一步包含:判定該特定平台之根密封金鑰是否存在於該記憶體中;以及當該特定平台之根密封金鑰被判定不存在於該記憶體中時,產生一新特定平台之根密封金鑰。
- 如請求項8之方法,其進一步包含:當針對一程式碼模組之一軟體更新被判定為擱置時,使用一鑑認金鑰來鑑認該軟體更新。
- 如請求項8之方法,其進一步包含:當針對一程式碼模組之一軟體更新被判定為擱置時,至少基於對應於一先前載入程式碼模組之一先前的密封金鑰及針對該軟體更新為擱置之該程式碼模組之一量測而判定一舊密封金鑰;以及至少基於對應於該前載入程式碼模組之該先前的密封金鑰及該軟體更新之一量測而判定一新密封金鑰。
- 如請求項12之裝置,其進一步包含:執行該軟體更新;使用該舊密封金鑰來開封對應於針對該軟體更新為擱置之該程式碼模組之該經密封資料;以及使用該新密封金鑰來重新密封對應於針對該軟體更新為擱置之該程式碼模組的使用該先前的密封金鑰之該經開封資料。
- 一種具有個別地或組合地的指令儲存於其上之至少一非暫時性機器可讀儲存媒體,該等用於使用信任鏈密封 資料之指令,當藉由一或多個處理器執行時,致使該一或多個處理器用以:從一裝置之一記憶體載入經選擇之一程式碼模組;量測經選擇之該程式碼模組;判定對應於該程式碼模組之一密封金鑰,其中該密封金鑰係至少基於對應於一先前載入程式碼模組之一先前的密封金鑰及經選擇之該程式碼模組之該量測而判定;使用該密封金鑰來密封對應於所載入的經選擇之該程式碼模組的資料;針對任何所載入之該程式碼模組判定一軟體更新是否正在該記憶體中擱置;以及當針對一程式碼模組之一軟體更新被判定為擱置時,判定該軟體更新是否包含指示經密封資料不應被遷移以與針對該軟體更新為擱置的該程式碼模組之一更新版本一起操作之元資料。
- 如請求項14之媒體,其進一步包含指令,當該等指令藉由一或多個處理器執行時,致使該一或多個處理器用以:從該記憶體載入信任程式碼之根;以及至少基於該記憶體的一區域中之一特定平台之根密封金鑰而判定對應於一從該記憶體所載入之一第一程式碼模組的密封金鑰,該記憶體的該區域藉由只允許該信任程式碼之根去存取該特定平台之根密封金鑰的 記憶體保護邏輯所保護。
- 如請求項15之媒體,其進一步包含指令,當該等指令藉由一或多個處理器執行時,致使該一或多個處理器用以:判定該特定平台之根密封金鑰是否存在於該記憶體中;以及若該特定平台之根密封金鑰被判定不存在於該記憶體中,則產生一新平特定台之根密封金鑰。
- 如請求項14之媒體,其進一步包含指令,當該等指令藉由一或多個處理器執行時,致使該一或多個處理器用以:當針對一程式碼模組之一軟體更新被判定為擱置時,使用一鑑認金鑰來鑑認該軟體更新。
- 如請求項14之媒體,其進一步包含指令,當該等指令藉由一或多個處理器執行時,致使該一或多個處理器用以:當針對一程式碼模組之一軟體更新被判定為擱置時,至少基於對應於一先前載入程式碼模組之一先前的密封金鑰及針對該軟體更新為擱置之該程式碼模組之一量測而判定一舊密封金鑰;以及至少基於對應於該先前載入程式碼模組之該先前的密封金鑰及該軟體更新之一量測而判定一新密封金鑰。
- 如請求項18之媒體,其進一步包含指令,當該等指令藉由一或多個處理器執行時,致使該一或多個處理器用 以:執行該軟體更新;使用該舊密封金鑰來開封對應於針對該軟體更新為擱置之該程式碼模組之該經密封資料;以及使用該新密封金鑰來重新密封對應於針對該軟體更新為擱置的該程式碼模組之使用該先前的密封金鑰之該經開封資料。
- 一種使用虛擬名稱遠端認證來證明識別碼或資料之裝置,其包含:一通訊模組,用以至少與一驗證器裝置互動;一記憶體模組,用以至少儲存虛擬名稱識別符資料及一共用對稱式金鑰;以及一處理模組,用以:從該記憶體模組載入程式碼模組;至少基於該共用對稱式金鑰產生一信任鏈,該信任鏈包括對應於各該等經載入程式碼模組的金鑰;至少基於在該信任鏈中之一個金鑰而產生一虛擬名稱公開金鑰及一虛擬名稱私密金鑰;以及致使一訊息至少要被傳輸至該驗證器裝置,該訊息至少包括該虛擬名稱識別符資料及該虛擬名稱公開金鑰。
- 如請求項20之裝置,其中對應於一程式碼模組之一金鑰基於對組合資料所執行之一密碼編譯操作而被產生,該 組合資料包括針對在該程式碼模組之前剛被載入的一程式碼模組之一金鑰及該程式碼模組之一雜湊值。
- 如請求項21之裝置,其中一程式碼模組對應於載入該裝置中之一作業系統,且該等虛擬名稱公開及私密金鑰使用對對應於該作業系統之該信任鏈中的一金鑰所執行之一密碼編譯操作而被產生。
- 如請求項21之裝置,其中該組合資料亦包括儲存於該記憶體模組中之一計數器值。
- 如請求項23之裝置,其中該訊息進一步至少包含藉由在該裝置中之一程式碼模組的該虛擬名稱私密金鑰、該計數器值、及至少一個雜湊值所簽署之一查問訊息中被接收的一臨時標誌。
- 如請求項20之裝置,其中該虛擬名稱識別符、該共用對稱式金鑰及軟體更新從至少一個憑證器裝置被接收於該裝置中。
- 如請求項20之裝置,其進一步包含一受信任執行環境用以至少儲存該等虛擬名稱公開及私密金鑰。
- 如請求項26之裝置,其中該處理模組要產生平台組配資料及用以儲存該平台組配資料於該受信任執行環境中。
- 一種使用虛擬名稱遠端認證來認證識別碼之至少一個裝置,其包含:至少一個處理模組,用以:至少指派虛擬名稱識別符資料及一共用對稱式金鑰至一證明器裝置; 至少基於該共用對稱式金鑰而產生對應於該證明器裝置之一虛擬名稱公開金鑰;以及提供該虛擬名稱識別符資料及虛擬名稱公開金鑰至一驗證器裝置以供使用於鑑認該證明器裝置。
- 如請求項28之裝置,其中該至少一個處理模組要在該證明器裝置的製造或組配期間,至少提供該虛擬名稱識別符資料及該共用對稱式金鑰至該證明器裝置。
- 如請求項28之裝置,其中該虛擬名稱公開金鑰至少基於被提供至該證明器裝置之一軟體的已知良好版本及該共用對稱式金鑰而被密碼地產生。
- 如請求項28之裝置,其中該至少一個處理模組係用以:判定對應於該證明器裝置之一軟體更新是否為可得的;基於該軟體更新為可得之該判定而提供該軟體更新至該證明器裝置;以及至少基於該軟體更新及該共用對稱式金鑰而產生對應於該證明器裝置之一新虛擬名稱公開金鑰。
- 如請求項28之裝置,其中在提供該虛擬名稱識別符資料及該虛擬名稱公開金鑰方面,該至少一個處理模組係用以公布該虛擬名稱識別符及該虛擬名稱公開金鑰於對該驗證器裝置可存取之一資料庫中。
- 一種用於虛擬名稱遠端認證之方法,其包含:初始化一裝置;載入程式碼模組於該裝置中; 至少基於一共用對稱式金鑰而產生一信任鏈於該裝置中,該信任鏈包括對應於各個該等經載入程式碼模組的金鑰;至少基於在該信任鏈中之一個金鑰而產生一虛擬名稱公開金鑰及一虛擬名稱私密金鑰;以及致使一訊息至少要被傳輸至一驗證器裝置,該訊息至少包括虛擬名稱識別符資料及該虛擬名稱公開金鑰。
- 如請求項33之方法,其中產生一信任鏈包含:對包括針對在該程式碼模組之前剛被載入的一程式碼模組之一金鑰、一計數器值及該程式碼模組之一雜湊值的組合資料執行一密碼編譯操作。
- 如請求項34之方法,其中產生該等虛擬名稱公開及私密金鑰包含:對對應於該裝置中的一作業系統之該信任鏈中的一金鑰執行一密碼編譯操作。
- 如請求項34之方法,其中該訊息進一步至少包含藉由在該裝置中之一程式碼模組的該虛擬名稱私密金鑰、該計數器值及至少一個雜湊值所簽署之一查問訊息中被接收的一臨時標誌。
- 如請求項33之方法,其進一步包含:於該裝置中接收一軟體更新;以及基於該軟體更新而至少重新產生該信任鏈及該等虛擬名稱公開及私密金鑰。
- 如請求項33之方法,其進一步包含: 至少儲存該等虛擬名稱公開及私密金鑰於該裝置中之一受信任執行環境中;產生平台組配資料;以及至少儲存該平台組配資料於該受信任執行環境中。
- 一種至少一個非暫時性機器可讀儲存媒體,其具有個別地或組合地儲存於其上的指令,當用於虛擬名稱遠端認證的該等指令藉由一或多個處理器執行時,致使該一或多個處理器用以:初始化一裝置;載入程式碼模組於該裝置中;至少基於一共用對稱式金鑰而產生一信任鏈於該裝置中,該信任鏈包括對應於各個該等經載入程式碼模組的金鑰;至少基於在該信任鏈中之一個金鑰而產生一虛擬名稱公開金鑰及一虛擬名稱私密金鑰;以及致使一訊息至少要被傳輸至一驗證器裝置,該訊息至少包括虛擬名稱識別符資料及該虛擬名稱公開金鑰。
- 如請求項39之至少一個非暫時性機器可讀儲存媒體,其中用以產生一信任鏈的該等指令包含指令用以:對包括針對在該程式碼模組之前剛被載入的一程式碼模組之一金鑰、一計數器值及該程式碼模組之一雜湊值的組合資料執行一密碼編譯操作。
- 如請求項40之至少一個非暫時性機器可讀儲存媒體,其中用以產生該等虛擬名稱公開及私密金鑰的該等指令 包含指令用以:對對應於該裝置中的一作業系統之該信任鏈中的一金鑰執行一密碼編譯操作。
- 如請求項40之至少一個非暫時性機器可讀儲存媒體,其中該訊息進一步至少包含藉由在該裝置中之一程式碼模組的該虛擬名稱私密金鑰、該計數器值及至少一個雜湊值所簽署之一查問訊息中被接收的一臨時標誌。
- 如請求項39之至少一個非暫時性機器可讀儲存媒體,其進一步包含指令,當該等指令藉由一或多個處理器執行時,致使該一或多個處理器用以:接收一軟體更新於該裝置中;以及基於該軟體更新而至少重新產生該信任鏈及該等虛擬名稱公開及私密金鑰。
- 如請求項39之至少一個非暫時性機器可讀儲存媒體,其進一步包含指令,當該等指令藉由一或多個處理器執行時,致使該一或多個處理器用以:至少儲存該等虛擬名稱公開及私密金鑰於該裝置中之一受信任執行環境中;產生平台組配資料;以及於該受信任執行環境中至少儲存該平台組配資料。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/209,129 US9509502B2 (en) | 2014-03-13 | 2014-03-13 | Symmetric keying and chain of trust |
US14/209,129 | 2014-03-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201717096A true TW201717096A (zh) | 2017-05-16 |
TWI623853B TWI623853B (zh) | 2018-05-11 |
Family
ID=54070178
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105130006A TWI623853B (zh) | 2014-03-13 | 2015-02-02 | 用以充當驗證器之裝置、用於遠端認證之方法及非暫時性機器可讀儲存媒體(二) |
TW104103470A TWI562015B (en) | 2014-03-13 | 2015-02-02 | Device to act as verifier, method for remote attestation and non-transitory machine-readable storage medium |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104103470A TWI562015B (en) | 2014-03-13 | 2015-02-02 | Device to act as verifier, method for remote attestation and non-transitory machine-readable storage medium |
Country Status (3)
Country | Link |
---|---|
US (1) | US9509502B2 (zh) |
TW (2) | TWI623853B (zh) |
WO (1) | WO2015138246A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI801495B (zh) * | 2018-02-06 | 2023-05-11 | 美商Nb研究有限責任公司 | 用於保全資源的系統及方法 |
TWI818005B (zh) * | 2018-04-13 | 2023-10-11 | 安地卡及巴布達商區塊鏈控股有限公司 | 適於提升即時離線區塊鏈交易安全性的電腦實施系統與方法 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014016606A1 (de) * | 2014-11-10 | 2016-05-12 | Giesecke & Devrient Gmbh | Verfahren zum Überprüfen der Gültigkeit eines Tickets; mobile Einrichtung |
GB2535165B (en) * | 2015-02-09 | 2021-09-29 | Arm Ip Ltd | A method of establishing trust between a device and an apparatus |
US10341384B2 (en) * | 2015-07-12 | 2019-07-02 | Avago Technologies International Sales Pte. Limited | Network function virtualization security and trust system |
US10417218B2 (en) | 2015-12-23 | 2019-09-17 | Intel Corporation | Techniques to achieve ordering among storage device transactions |
US10114949B2 (en) * | 2015-12-24 | 2018-10-30 | Mcafee, Llc | Techniques for monitoring integrity of OS security routine |
US10516654B2 (en) * | 2016-03-15 | 2019-12-24 | Intel Corporation | System, apparatus and method for key provisioning delegation |
CN107347058B (zh) | 2016-05-06 | 2021-07-23 | 阿里巴巴集团控股有限公司 | 数据加密方法、数据解密方法、装置及系统 |
WO2018112482A1 (en) * | 2016-12-15 | 2018-06-21 | Alibaba Group Holding Limited | Method and system for distributing attestation key and certificate in trusted computing |
US10164778B2 (en) | 2016-12-15 | 2018-12-25 | Alibaba Group Holding Limited | Method and system for distributing attestation key and certificate in trusted computing |
CN108234115B (zh) * | 2016-12-15 | 2021-03-09 | 阿里巴巴集团控股有限公司 | 信息安全的验证方法、装置和系统 |
US10671547B2 (en) | 2016-12-19 | 2020-06-02 | Intel Corporation | Lightweight trusted tasks |
GB201700367D0 (en) * | 2017-01-10 | 2017-02-22 | Trustonic Ltd | A system for recording and attesting device lifecycle |
CN110800248B (zh) * | 2017-06-14 | 2022-11-22 | 泰雷兹数字安全法国股份有限公司 | 用于第一应用和第二应用之间的互相对称认证的方法 |
US11290466B2 (en) * | 2017-08-16 | 2022-03-29 | Cable Television Laboratories, Inc. | Systems and methods for network access granting |
CN108418691B (zh) * | 2018-03-08 | 2020-10-27 | 湖南大学 | 基于sgx的动态网络身份认证方法 |
US10841284B2 (en) * | 2018-05-30 | 2020-11-17 | Lear Corporation | Vehicle communication network and method |
CN109450620B (zh) | 2018-10-12 | 2020-11-10 | 创新先进技术有限公司 | 一种移动终端中共享安全应用的方法及移动终端 |
CN109922056B (zh) | 2019-02-26 | 2021-09-10 | 创新先进技术有限公司 | 数据安全处理方法及其终端、服务器 |
US10735205B1 (en) * | 2019-03-08 | 2020-08-04 | Ares Technologies, Inc. | Methods and systems for implementing an anonymized attestation chain |
CN109993003A (zh) * | 2019-03-12 | 2019-07-09 | 广州大学 | 一种基于sgx的软件流安全验证方法及装置 |
US20220035924A1 (en) * | 2019-04-18 | 2022-02-03 | Hewlett-Packard Development Company, L.P. | Service trust status |
WO2019137565A2 (en) * | 2019-04-26 | 2019-07-18 | Alibaba Group Holding Limited | Distributed key management for trusted execution environments |
TWI728377B (zh) * | 2019-06-06 | 2021-05-21 | 旺宏電子股份有限公司 | 安全啟動系統、方法及裝置 |
US11657157B2 (en) | 2019-06-06 | 2023-05-23 | Macronix International Co., Ltd. | Secure boot system, method and apparatus |
US11429519B2 (en) | 2019-12-23 | 2022-08-30 | Alibaba Group Holding Limited | System and method for facilitating reduction of latency and mitigation of write amplification in a multi-tenancy storage drive |
US20230066406A1 (en) * | 2020-03-13 | 2023-03-02 | Sony Group Corporation | An apparatus, a method and a computer program for verifying an integrity of a device connected to a telecommunication network |
US11483299B2 (en) * | 2020-10-21 | 2022-10-25 | Arm Limited | Method and apparatus for encrypted communication |
EP4002756B1 (en) * | 2020-11-24 | 2022-11-02 | Axis AB | Systems and methods of managing a certificate associated with a component located at a remote location |
US12105804B2 (en) * | 2021-07-17 | 2024-10-01 | International Business Machines Corporation | Securely executing software based on cryptographically verified instructions |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6381698B1 (en) * | 1997-05-21 | 2002-04-30 | At&T Corp | System and method for providing assurance to a host that a piece of software possesses a particular property |
US7974416B2 (en) | 2002-11-27 | 2011-07-05 | Intel Corporation | Providing a secure execution mode in a pre-boot environment |
US20050132357A1 (en) | 2003-12-16 | 2005-06-16 | Microsoft Corporation | Ensuring that a software update may be installed or run only on a specific device or class of devices |
US7421588B2 (en) | 2003-12-30 | 2008-09-02 | Lenovo Pte Ltd | Apparatus, system, and method for sealing a data repository to a trusted computing platform |
US7266198B2 (en) * | 2004-11-17 | 2007-09-04 | General Instrument Corporation | System and method for providing authorized access to digital content |
US7945786B2 (en) | 2007-03-30 | 2011-05-17 | Intel Corporation | Method and apparatus to re-create trust model after sleep state |
GB0707150D0 (en) * | 2007-04-13 | 2007-05-23 | Hewlett Packard Development Co | Dynamic trust management |
US8782801B2 (en) | 2007-08-15 | 2014-07-15 | Samsung Electronics Co., Ltd. | Securing stored content for trusted hosts and safe computing environments |
US20090300348A1 (en) | 2008-06-02 | 2009-12-03 | Samsung Electronics Co., Ltd. | Preventing abuse of services in trusted computing environments |
US20100082960A1 (en) | 2008-09-30 | 2010-04-01 | Steve Grobman | Protected network boot of operating system |
TWI435584B (zh) * | 2009-04-20 | 2014-04-21 | Interdigital Patent Holdings | 多網域及網域所有權系統 |
TWI403895B (zh) * | 2009-06-19 | 2013-08-01 | Inventec Corp | 計算機的自動測試系統及其測試方法 |
GB0910897D0 (en) | 2009-06-24 | 2009-08-05 | Vierfire Software Ltd | Authentication method and system |
US8510569B2 (en) | 2009-12-16 | 2013-08-13 | Intel Corporation | Providing integrity verification and attestation in a hidden execution environment |
KR20120120955A (ko) | 2010-02-09 | 2012-11-02 | 인터디지탈 패튼 홀딩스, 인크 | 신뢰적인 연합 아이덴티티를 위한 방법 및 장치 |
CN103477602B (zh) * | 2011-04-15 | 2018-05-18 | 诺基亚技术有限公司 | 用于提供秘密委托的方法和设备 |
WO2013028059A1 (en) | 2011-08-25 | 2013-02-28 | Mimos Berhad | Verification system for trusted platform |
US9208354B2 (en) | 2013-03-12 | 2015-12-08 | Intel Corporation | Techniques for securing use of one-time passwords |
US9395993B2 (en) | 2013-07-29 | 2016-07-19 | Intel Corporation | Execution-aware memory protection |
-
2014
- 2014-03-13 US US14/209,129 patent/US9509502B2/en active Active
-
2015
- 2015-02-02 TW TW105130006A patent/TWI623853B/zh not_active IP Right Cessation
- 2015-02-02 TW TW104103470A patent/TWI562015B/zh not_active IP Right Cessation
- 2015-03-06 WO PCT/US2015/019216 patent/WO2015138246A1/en active Application Filing
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI801495B (zh) * | 2018-02-06 | 2023-05-11 | 美商Nb研究有限責任公司 | 用於保全資源的系統及方法 |
US11770259B2 (en) | 2018-02-06 | 2023-09-26 | NB Research LLC | System and method for securing a resource |
TWI818005B (zh) * | 2018-04-13 | 2023-10-11 | 安地卡及巴布達商區塊鏈控股有限公司 | 適於提升即時離線區塊鏈交易安全性的電腦實施系統與方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201539241A (zh) | 2015-10-16 |
US9509502B2 (en) | 2016-11-29 |
US20150263855A1 (en) | 2015-09-17 |
TWI562015B (en) | 2016-12-11 |
TWI623853B (zh) | 2018-05-11 |
WO2015138246A1 (en) | 2015-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI623853B (zh) | 用以充當驗證器之裝置、用於遠端認證之方法及非暫時性機器可讀儲存媒體(二) | |
US9768951B2 (en) | Symmetric keying and chain of trust | |
US9521125B2 (en) | Pseudonymous remote attestation utilizing a chain-of-trust | |
EP3061027B1 (en) | Verifying the security of a remote server | |
US8832778B2 (en) | Methods and apparatuses for user-verifiable trusted path in the presence of malware | |
CN107251481A (zh) | 利用匿名密钥系统进行可信平台模块认证和证明 | |
EP3207488B1 (en) | Identifying security boundaries on computing devices | |
CN112262546A (zh) | 用于数据处理加速器的密钥分配和交换的方法和系统 | |
US10229272B2 (en) | Identifying security boundaries on computing devices | |
CN107077560B (zh) | 用于建立安全工作空间的所有权的系统 | |
EP3736718B1 (en) | A tpm-based secure multiparty computing system using a non-bypassable gateway | |
US20180365449A1 (en) | Devices and method of operation thereof | |
CN113014444A (zh) | 一种物联网设备生产测试系统及安全保护方法 | |
EP3221996B1 (en) | Symmetric keying and chain of trust | |
CN112334902A (zh) | 建立主机系统与数据处理加速器之间的安全信息交换信道的方法 | |
US11775347B2 (en) | Method for implanting a watermark in a trained artificial intelligence model for a data processing accelerator | |
US11740940B2 (en) | Method and system for making an artifical intelligence inference using a watermark-inherited kernel for a data processing accelerator | |
JP2024526752A (ja) | マイクロコントローラの測定された再起動 | |
US11645116B2 (en) | Method and system for making an artificial intelligence inference using a watermark-enabled kernel for a data processing accelerator | |
US11645586B2 (en) | Watermark unit for a data processing accelerator | |
US11709712B2 (en) | Method and system for artificial intelligence model training using a watermark-enabled kernel for a data processing accelerator | |
CN112262545A (zh) | 主机系统与数据处理加速器之间的证明协议 | |
US20210194705A1 (en) | Certificate generation method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |