TWI631462B - 確保機板上匯流排交易安全的計算系統和計算設備實現的方法以及非暫時性的電腦可讀取媒體 - Google Patents
確保機板上匯流排交易安全的計算系統和計算設備實現的方法以及非暫時性的電腦可讀取媒體 Download PDFInfo
- Publication number
- TWI631462B TWI631462B TW103131148A TW103131148A TWI631462B TW I631462 B TWI631462 B TW I631462B TW 103131148 A TW103131148 A TW 103131148A TW 103131148 A TW103131148 A TW 103131148A TW I631462 B TWI631462 B TW I631462B
- Authority
- TW
- Taiwan
- Prior art keywords
- key
- data
- peripheral
- value
- write
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
-
- 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
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
討論一種技術,該技術用來確保計算設備機板上匯流排交易的安全。共享密鑰被產生,然後被編程到機板上兩個組件的唯讀非揮發性的存儲器。共享密鑰可以在製造過程中被產生。一旦完成了,機板上兩個組件之間的所有交易都可以被組件使用公享密鑰進行加密,則密鑰不會暴露於任何外部的匯流排。
Description
本申請案涉及到下列案件並聲稱其利益:美國的臨時專利案,申請號為61/875812,名稱為“確保機板上匯流排交易安全的系統和方法”,提交日期為2013年9月10日,其全部內容被併入本文中作為參考。
本發明係有關確保機板上匯流排交易安全的系統和方法。
當攻擊者物理接近系統時,難以確保計算機系統免受未經授權的接近。難以確保的原因是,攻擊者物理接近計算機系統時,其可以探測到主板組件之間傳輸的資訊的電的痕跡。因為用來編碼所傳送的資料的這些痕跡的傳輸協議通常是可取得的(因為它們通常是標準的),物理接近計算機系統的攻擊者可以查看到敏感的資訊,甚至注入資料。例如,經由找到解密的密鑰,攻擊者就能夠
經由電的信號讀取資料,這些資料係無法由運行於系統上之軟體得到(因為有各種軟體保護措施)。另外,經由在特定點注入資料,特權的拒絕可以被轉化為特權的授予。
本發明的實施例提供用來確保機板上匯流排交易安全的技術。在一個實施例中,在製造過程中,共享的密鑰被產生,然後被編程到兩個機板組件的一次性寫入唯讀的非揮發性的存儲器上。一旦共享的密鑰已經被生成並被寫入存儲器中,這兩個組件之間的所有交易都可被使用共享密鑰的組件加密,而密鑰不會暴露於任何外面的匯流排。
在一個實施例中,用來確保機板上匯流排交易安全的計算機實現的方法,包括:擷取來自計算機一第一機板組件的一次性寫入非揮發性的存儲器的共享密鑰。然後使用擷取的密鑰將資料加密,且將加密的資料經由計算裝置的匯流排傳送到計算裝置的一第二機板組件上。方法也包括擷取來自第二機板組件的一次性寫入非揮發性的存儲器的共享密鑰,並將擷取自第二機板組件的一次性寫入非揮發性的存儲器的共享密鑰的加密資料給予解密。第一機板組件和第二機板組件各包括能夠執行加密和解密操作的加密引擎。
在另一實施例中,提供安全的機板上匯流排交易的計算系統包括周邊控制器。周邊控制器包括保存共
享密鑰的一次性寫入非揮發性的存儲器。周邊控制器還包括周邊匯流排主控制器,該匯流排主控制器包括能夠執行加密和解密操作的加密引擎,加密和解密操作係對使用保存於周邊控制器的一次性寫入非揮發性的存儲器中共享密鑰的資料給予加密和解密。該計算系統還包括周邊匯流排和經由匯流排與周邊控制器通信的周邊設備。該周邊設備也包括能夠執行加密和解密操作的加密引擎,加密和解密操作係對使用保存於周邊設備的一次性寫入非揮發性的存儲器中共享密鑰的資料給予加密和解密。
100‧‧‧計算系統
102‧‧‧中央處理單元及存儲器控制器
104‧‧‧動態隨機存取存儲器(DRAM)
106‧‧‧周邊組件互連匯流排(PCI bus)
110‧‧‧周邊控制器
112‧‧‧芯片上一次性寫入的密鑰存儲器
116‧‧‧單調計數器116,166
120‧‧‧周邊匯流排主控制器
122‧‧‧加密引擎
130‧‧‧閃存唯讀存儲器(ROM)
140‧‧‧隨機數產生器
150‧‧‧周邊匯流排
160‧‧‧周邊設備
162‧‧‧芯片上一次性寫入的密鑰存儲器
164‧‧‧加密引擎
166‧‧‧單調計數器
200‧‧‧重設
202‧‧‧韌體的初始化
203‧‧‧周邊控制器的密鑰存儲器是否已滿?
204‧‧‧產生密鑰
206‧‧‧密鑰寫入序列
208‧‧‧退出
206‧‧‧密鑰寫入序列
300‧‧‧將密鑰寫入周邊的密鑰存儲器
301‧‧‧成功?
302‧‧‧將密鑰寫入周邊控制器的密鑰存儲器
303‧‧‧成功?
304‧‧‧退出
306‧‧‧失敗
400‧‧‧周邊控制器到周邊設備
402‧‧‧由周邊控制器的密鑰存儲器取得密鑰
404‧‧‧使用取得的密鑰對周邊控制器的資料加密
406‧‧‧經由周邊匯流排傳送資料
408‧‧‧由周邊的密鑰存儲器取得密鑰
410‧‧‧使用取得的密鑰對周邊的資料解密
412‧‧‧對資料運作
500‧‧‧周邊設備到周邊控制器
502‧‧‧由周邊設備的密鑰存儲器取得密鑰
504‧‧‧使用取得的密鑰對周邊設備的資料加密
506‧‧‧經由周邊設備匯流排傳送資料
508‧‧‧由周邊控制器的密鑰存儲器取得密鑰
510‧‧‧使用取得的密鑰對周邊控制器的資料解密
512‧‧‧對資料運作
包含在說明書中並構成本說明書的一部分的附圖,顯示本發明的一個或多個實施例,並且其,與說明書一起,有助於解釋本發明。在附圖中:圖1顯示一個示例性計算系統,該計算系統包含了本發明實施例使用的硬體組件;圖2顯示一個示例性的步驟序列,其被本發明的實施例所執行,以產生和寫入共享密鑰;圖3更詳細地顯示圖2中的示例性密鑰的寫入序列;圖4顯示一個示例性的步驟序列,其被本發明的實施例所執行,以使用共享密鑰來執行安全的交易,將周邊控制器的加密過的資料傳送到周邊設備;和圖5顯示一個示例性的步驟序列,其被本發
明的實施例所執行,以使用共享密鑰來執行安全的交易,將周邊設備的加密過的資料傳送到周邊控制器。
本發明的實施例使用存儲於一次性寫入非揮發性的密鑰存儲器的共享密鑰,來執行系統主板上內部組件之間的通信的密碼處理,以確保沒有未加密的資料或代碼被曝露於組件的外部。這種結構可以防止物理接近計算系統的未授權的個人,藉由電信號的探測截取資料或代碼。將密鑰安裝到每個組件的一次性寫入操作的一次性寫入密鑰的存儲器,此安裝可以在大多數情況下,於受控和安全的環境的裝置的製造過程中進行。另外,藉由一次性寫入的密鑰的存儲器的製造,特定產品的每個單元可以具有唯一生成的密鑰。此唯一性的結果,如果來自一個設備的密鑰以某種方式被洩露,則其他設備的安全性不一定會被危及到。
圖1顯示一個示例性的計算系統,該計算系統包含了本發明實施例使用的硬體組件。計算機系統100包括CPU和存儲器控制器102,存儲器控制器可從動態隨機存取存儲器(DRAM)104或閃存唯讀存儲器(ROM)130取得CPU的指令。將理解到,其它形式的RAM或ROM可以被使用於計算系統100,而不脫離本發明的精神和範圍。CPU 102藉由PCI匯流排106和周邊控制器110可與閃存ROM130和周邊設備進行通信。使用閃存主控制
器(未顯示)或周邊設備160,經由周邊匯流排主控制器120及周邊匯流排150,周邊控制器110可以將CPU的I/O和儲存器的讀取和寫入轉換成適合於閃存ROM130的週期。周邊控制器110的例子包括英特爾的I/O路徑控制器(INTEL's ICH)及平台控制器(PCH)芯片。周邊匯流排主控制器120的例子包括USB OCHI,UHCI,或XHCI主控制器,它們可以藉由周邊匯流排150將資料傳送到周邊設備160和由周邊設備160接收資料。周邊設備160的例子包括USB鍵盤或USB大容量存儲設備,但是可以理解到,許多其它類型的周邊設備也在本發明的範圍之內。應當進一步理解到,在不脫離本發明的範圍的情況下,可以重新排列確切的匯流排結構或方式,其功能被劃分於CPU,存儲器控制器和周邊控制器之間。
在一個實施例中,周邊匯流排主控制器120和周邊設備160包含加密引擎122,164和一些非揮發性的一次性寫入的密鑰存儲器112,162。加密引擎122,164能夠使用存儲在一次性寫入的密鑰存儲器112,162的共享密鑰來進行加密和解密操作,而不會將任何處理或密鑰資料暴露到任何外部,包括DRAM的外部芯片信號,除錯信號。使用加密和解密的對稱演算法(對稱密鑰)通常速度更快,而需要一個較小的密鑰大小,雖然可以理解到,其它類型的非對稱密鑰和非對稱演算法也被認為是在本發明的範圍內。
在一個替代的實施例中,非對稱演算法可以
使用公密鑰-私密鑰對。在一個實施例中,第一組件採用了公-私密鑰對中的公密鑰,而與第一組件進行通信的第二組件則採用了公-私密鑰對中的私密鑰。或者,兩個獨立的公-私密鑰對可以被共享。第一機板組件可以持有第一私密鑰和第一公密鑰,而第二機板組件的一次性寫入的非揮發性存儲器可以持有與第一私密鑰有關的對應的第二公密鑰,和與第一公密鑰有關的第二私密鑰。
在實施例中,這兩個設備的一次性寫入的密鑰存儲器112,162是不能讀任何外部的資料信號。作為本發明的另外一個方面,一次性寫入的密鑰存儲器112,162可以被CPU102運行的程式正好寫一次。在被寫入之後,一次性寫入密鑰的存儲器112,162就不能再被更新。一旦一次性寫入密鑰的存儲器112,162被寫了,不需實際讀取一次性寫入密鑰的存儲器的內容,其被寫入的狀態是可被檢測到的。例如,可以經由保持獨立的唯讀狀態標誌,或者經由嘗試執行後續的寫到一次性寫入的存儲器(若其失敗,則可認為這是該存儲器已經被寫入的一個指標)來完成一次性寫入密鑰的存儲狀態的檢測。本發明的實施例所使用的硬體隨機數數產生器140可提供唯一的隨機數,以滿足隨機性和週期的正常的標準。
在另一實施例中,密鑰存儲器,可以使用獨立的步驟被製成非揮發性。在密鑰無法被寫入周邊密鑰存儲器的情況下,此可允許修復。一旦密鑰被成功地被寫入周邊密鑰存儲器,密鑰就可被寫入周邊控制器的密鑰存儲
器,且一次性寫入就被鎖住。一旦鎖住了,密鑰存儲器就不能被解鎖。
圖2顯示一個示例性的步驟序列,其被本發明的實施例所執行,以產生和寫入共享密鑰。更具體地,序列描述了,在系統的首次啟動時,周邊控制器110的一次性寫入的密鑰存儲器112和周邊設備160的一次性寫入的密鑰存儲器162如何以共享密鑰來填充。在重設(步驟200)之後,序列開始,計算機系統開始執行存儲在平台韌體的代碼,用來進行韌體的初始化(步驟202)。一旦系統能夠與周邊控制器110進行通信,執行檢查(步驟203),以檢測周邊控制器的一次性寫入的密鑰存儲器112是否已滿。如果一次性寫入的密鑰存儲器112是滿的,就不需要產生和寫入共享密鑰的後續步驟,且序列退出(步驟208)。在一個實施例中,周邊控制器110的僅一次性寫入的密鑰存儲器112的檢查是適當的,因為周邊控制器的一次性寫入的密鑰存儲器,僅在周邊一次性寫入的密鑰存儲器162之後被填入。在其它實施例中,二個一次性寫入的密鑰存儲器都要被檢查。
一旦系統能夠與周邊控制器110,周邊設備160,及周邊設備和周邊控制器二者的加密引擎122,164和一次性寫入的密鑰存儲器112進行通信,則共享密鑰被生成(步驟204)。在較佳的實施例中,在RFC 2898(和PKCS # 5,版本2.0)的PBKDF2演算法被使用,使用來自硬體隨機數產生器的隨機數作為暗語,而以平台UUID
(通用唯一識別碼)作為鹽分。鹽分是作為附加地輸入到單向散列函數的隨機資料。其他的演算法,暗語和鹽分也可以被使用,包括那些讀自外部存儲器或使用具有來自適當的隨機源的種子的軟體隨機數的演算法。所生成的公享密鑰被調整適於加密引擎所支持的加密演算法所需的尺寸。
在密鑰被產生之後,它必須被編程到周邊設備和周邊控制器的一次性寫入的密鑰存儲器112和162。本發明沒有特定的將密鑰編程到周邊設備的一次性寫入的密鑰存儲器的正確方法,許多方法是公知的,並可能涉及周邊匯流排和可能的周邊設備的類型的特定的指令。儘管有上述情況,圖3更詳細地顯示圖2中的示例性密鑰的寫入序列。序列開始於嘗試將共享密鑰寫入周邊密鑰儲存器(步驟300)。如果密鑰沒有被成功寫入(步驟301),其可能是可恢復的錯誤。在致命的錯誤(步驟208)的情況下,系統可以向用戶報告錯誤,重設系統,記錄狀況且繼續或停止或其他的行為。如果密鑰被成功寫入周邊設備的一次性寫入的存儲器162(步驟301),則試圖將共享密鑰寫入周邊控制器的一次性寫入的密鑰儲存器112(步驟302)。如果共享密鑰沒有被成功地寫入一次性寫入的密鑰存儲器112(步驟303),那麼這是一個致命的錯誤(步驟306),因為共享密鑰已被生成且已經被寫入周邊設備160的一次性寫入的存儲器162。正如上面所指出的,在失敗之後,系統可以採取一些不同的動作,包括報告錯誤,並重置系統。如果共享密鑰被成功地寫入周邊控
制器110的一次性寫入得存儲器112(步驟303),則密鑰寫入過程是成功,並退出(步驟304),而系統繼續正常執行。
圖4顯示一個示例性的步驟序列,其被本發明的實施例所執行,以使用共享密鑰來執行安全的交易,將周邊控制器的加密資料傳送到周邊設備。當周邊控制器準備將資料傳送到周邊設備時(步驟400),它首先檢索一次性寫入的儲存器112的共享密鑰(步驟402),它的加密引擎122使用所檢索到的密鑰來加密交易的資料部分(步驟404)。在一般情況下,加密不對周邊匯流排交易的控制或包封部分運作,而只運作於資料內容。加密之後,加密過的資料經由周邊匯流排150從周邊控制器110被傳送出,而被周邊設備160接收(步驟406)。周邊設備160然後檢索來自它的一次性寫入的存儲器162的共享密鑰(步驟408),它的加密引擎164使用共享密鑰來加密使用加密邏輯的資料(步驟410)及存儲在周邊設備的一次性寫入的密鑰存儲器的密鑰。一旦資料被解密,它可以正常地被使用(步驟412)。在這種方式中,未加密的資料永遠不會暴露在周邊匯流排上。
應該理解到,源自於周邊設備的交易,也可以同樣地被確保。例如,圖5顯示一個示例性的步驟序列,其被本發明的實施例所執行,其使用共享密鑰來執行安全的交易,將周邊設備的加密過的資料傳送到周邊控制器。當周邊設備160準備將資料傳送到周邊控制器110時
(步驟500),它首先檢索來自一次性寫入的存儲器162的共享密鑰(步驟502)且將使用加密-邏輯和所檢索到的密鑰的交易的資料部分給予加密(步驟504)。在一般情況下,加密不運作於周邊匯流排交易的控制或包封部分,而只運作於資料內容。然後將加密過的資料正常地傳送通過周邊匯流排(步驟506),周邊控制器110則經由周邊匯流排接收資料。然後周邊控制器110取回其一次性寫入的存儲器的共享密鑰(步驟508)並使用加密邏輯和檢索到的共享密鑰將資料解密(步驟510)。一旦資料被解密,它就可以正常地被使用(步驟512)。以這種方式,實際的未加密的資料永遠不會暴露在周邊匯流排150上。如果共享密鑰不被編程到一次性寫入的密鑰存儲器,就沒有加密或解密操作。
在資料交易太小而無法保存資料的完全加密的形式的情況下,額外的資料交易可能是必要的,用來完成所有資料的傳輸。例如,USB按鍵可能只需要2位元組,而對稱加密演算法的最小的加密尺寸可以是128位元(8位元組)。因為經由USB匯流排的傳輸的大小可以被固定為2位元組,另外的指令可能有必要,或3以上的2-位元組的“虛擬”交易可被執行。
在一個實施例中,為了提高資料交易的安全性,可以採取額外的安全性措施。為了防止注入的攻擊的重放,每一個通信組件可以持有單調計數器116,166,計數器之值與資料被加密。接收端檢查被解碼後的資料,
以驗證被解密後的單調計數器的值是否與預期值匹配。每次成功交易後,計數器被加值。在另一個實施例中,為了防止字典式攻擊,小的資料交易,可以使用隨機值來鹽化。例如,來自周邊鍵盤的所有可能的鍵值通常只被翻譯成幾個不同的加密值,因為鍵是靜態的,而每一次加密算法會產生相同的加密值。它是可能的,因此,經由按鍵可以相對快速地建構單個設備的字典,然後觀察所得到的相對較小的加密鍵組,這是可能的。然而,如上所述,令傳送方將隨機數添加到加密過的資料上,則沒有可靠的圖案可以被未經授權的個人發現。解密之後,資料的隨機數部分可以簡單地被忽略。
本發明的部分或所有的實施例可被提供作為一個或多個計算機可讀的程式或代碼,其可實施於一個或多個非暫時性的媒體之上或之內。媒體可以是,但不限於硬碟,光碟,數位通用光碟,ROM,PROM,EPROM,EEPROM,閃存存儲器,RAM,或磁帶。在一般情況下,計算機可讀的程式或代碼可以以任何計算語言來實現。
由於某些變化可以被施行而不脫離本發明的範圍,所以包含在上面的說明或顯示在附圖中的所有內容都被解釋為說明性的,而不是字面上的意義。本領域的從業者應理解到,圖中所描繪的步驟序列和體系結構可以被改變而不脫離本發明的範圍,並且應理解到,包含在本文的說明是本發明的眾多的可能描繪中的一種例子。
前面的本發明的實施例的描述提供了說明和
描述,但並非用來窮舉,或將本發明限制於所公開的精確形式。根據上述的教示,或者可從本發明的實踐中獲得,修改和變化是可能的。例如,當一系列的動作已經被說明了,則在其他的實現中可以修改動作的順序而仍與本發明的原理一致。另外,非依賴性的動作可以並行地被執行。
Claims (21)
- 一種計算設備實現的方法,其用來確保機板上匯流排交易的安全,其包括:檢索來自該計算設備的一周邊控制器的一次性寫入非揮發性的存儲器的一共享密鑰;使用所檢索到的密鑰在該周邊控制器對資料加密;經由在該計算設備中的一匯流排,將加密過的該資料傳送到該計算設備的一目標周邊設備;檢索來自該目標周邊設備的一次性寫入非揮發性的存儲器的一共享密鑰;和使用從該目標周邊設備的一次性寫入非揮發性的存儲器檢索到的該共享密鑰,對加密過的該資料解密,該解密是發生在該目標周邊設備,其中,該周邊控制器和該目標周邊設備各自包括能夠執行加密和解密操作的加密引擎。
- 如申請專利範圍第1項所述的方法,其中該共享密鑰係在該計算設備之製造過程中被產生並被存儲。
- 如申請專利範圍第1項所述的方法,其還包括:增加要被加密的資料的大小,使得其大小與該周邊控制器的加密引擎所執行的加密演算法所需的大小相一致;和將多個交易中的加密過的資料傳送到該目標周邊設備。
- 如申請專利範圍第1項所述的方法,其還包括: 維持該周邊控制器的一第一單調計數器在一值;維持該目標周邊設備的一第二單調計數器在一值,該第一與該第二單調計數器的值是相同的;在傳送加密過的資料之前,將該第一單調計數器的值與資料加密;對該目標周邊設備的加密過的值解密;以及對解密過的值與該第二單調計數器的值相比較;和在匹配之後,遞增該第一和該第二單調計數器的各別值,該第一和該第二單調計數器的遞增值是相同的。
- 如申請專利範圍第1項所述的方法,其還包括:在進行加密之前,以隨機數值鹽化資料。
- 如申請專利範圍第1項所述的方法,其中該共享密鑰是對稱密鑰。
- 如申請專利範圍第1項所述的方法,其中該共享密鑰是非對稱密鑰。
- 如申請專利範圍第1項所述的方法,其中該共享密鑰是公、私密鑰。
- 如申請專利範圍第1項所述的方法,其中該共享密鑰是一對共享密鑰,並且其中,該周邊控制器的一次性寫入的非揮發性存儲器持有第一私密鑰和第一公密鑰,而該目標周邊設備的一次性寫入的非揮發性存儲器持有與第一私密鑰相關聯的對應的第二公密鑰及與第一公密鑰相關聯的對應的第二私密鑰。
- 一種提供確保機板匯流排交易安全的計算系統, 其包括:一周邊控制器,該周邊控制器包括:一一次性寫入非揮發性的存儲器,該一次性寫入非揮發性的存儲器持有一共享密鑰,及一周邊匯流排主控制器,該周邊匯流排主控制器包括能夠執行加密和解密操作的加密引擎,該加密引擎使用保存於該周邊控制器的一次性寫入非揮發性的存儲器中的共享密鑰來對資料加密及解密;一周邊匯流排;和一目標周邊設備,該目標周邊設備經由該周邊匯流排與該周邊控制器通信,該目標周邊設備包括:一一次性寫入非揮發性的存儲器,該一次性寫入非揮發性的存儲器持有共享密鑰,及一加密引擎,該加密引擎能夠執行:解密操作,使用保存於該目標周邊設備的該一次性寫入非揮發性的存儲器中的該共享密鑰,來對經由該周邊匯流排接收而從該周邊控制器傳送至該目標周邊設備的資料解密,及加密操作,使用保存於該目標周邊設備的該一次性寫入非揮發性的存儲器中的該共享密鑰,來對經由該周邊匯流排傳送至該周邊控制器的資料加密。
- 如申請專利範圍第10項所述的計算系統,其中該周邊控制器包括具有一值的一第一單調計數器,而該目標周邊設備包括具有一值的一第二單調計數器,該第一和 該第二單調計數器的值是相同的,並且其中在傳送加密過的值和資料之前,該第一單調計數器的值與資料被加密,加密過的單調的值被解密並和該第二單調計數器的值相比較。
- 如申請專利範圍第10項所述的計算系統,其中該周邊控制器包括具有一值的一第一單調計數器,而該目標周邊設備包括具有一值的一第二單調計數器,該第一和該第二單調計數器的值是相同的,並且其中在傳送加密過的值和資料之前,該第二單調計數器的值與資料被加密,加密過的單調的值被解密並和該第一單調計數器的值相比較。
- 如申請專利範圍第10項所述的計算系統,其還包括:一隨機數產生器,該隨機數產生器被配置來產生一隨機數,該隨機數被用來在加密之前產生共享密鑰或將資料鹽化。
- 一種非暫時性的電腦可讀取媒體,其持有用來確保計算設備之機板匯流排交易的安全的計算機可執行的指令,該指令被執行時可以使計算設備進行:檢索來自計算設備的一周邊控制器的一次性寫入非揮發性的存儲器的共享密鑰;使用檢索到的密鑰來在該周邊控制器加密資料;經由該計算設備的匯流排將加密過的該資料傳送到該計算設備的一目標周邊設備; 檢索來自該目標周邊設備的一次性寫入非揮發性的存儲器的共享密鑰;和使用檢索自該目標周邊設備的一次性寫入非揮發性的存儲器的共享密鑰來對加密過的該資料解密,該解密是發生在該目標周邊設備,其中該周邊控制器和該目標周邊設備各自包括能夠執行加密和解密操作的加密引擎。
- 如申請專利範圍第14項所述的媒體,其中該共享密鑰在該計算設備之製造過程中被產生並被存儲。
- 如申請專利範圍第14項所述的媒體,其中指令被執行時進一步使計算設備進行:維持該周邊控制器的一第一單調計數器在一值;維持該目標周邊設備的一第二單調計數器在一值,該第一與該第二單調計數器的值是相同的;在傳送加密過的資料之前,將該第一單調計數器的值與資料加密;對該目標周邊設備的加密過的值解密;比較解密過的值與該第二單調計數器的值;和在匹配之後,遞增該第一和該第二單調計數器的各別值,該第一和該第二單調計數器的遞增值是相同的。
- 如申請專利範圍第14項所述的媒體,其中該共享密鑰是對稱密鑰。
- 如申請專利範圍第14項所述的媒體,其中該共享密鑰是非對稱密鑰。
- 如申請專利範圍第14項所述的媒體,其中該共享密鑰是公、私密鑰。
- 如申請專利範圍第14項所述的媒體,其中該共享密鑰是一對共享密鑰,並且其中,該周邊控制器的一次性寫入非揮發性的存儲器持有一第一私密鑰和一第一公密鑰,而該目標周邊設備的一次性寫入非揮發性的存儲器持有與該第一私密鑰相關聯的對應的一第二公密鑰以及與該第一公密鑰相關聯的對應的一第二私密鑰。
- 如申請專利範圍第14項所述的媒體,其中資料在加密之前以隨機數鹽化。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361875812P | 2013-09-10 | 2013-09-10 | |
US61/875,812 | 2013-09-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201523256A TW201523256A (zh) | 2015-06-16 |
TWI631462B true TWI631462B (zh) | 2018-08-01 |
Family
ID=52626740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103131148A TWI631462B (zh) | 2013-09-10 | 2014-09-10 | 確保機板上匯流排交易安全的計算系統和計算設備實現的方法以及非暫時性的電腦可讀取媒體 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9842214B2 (zh) |
TW (1) | TWI631462B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI781464B (zh) * | 2020-02-21 | 2022-10-21 | 美商惠普發展公司有限責任合夥企業 | 用於資料之加密及解密的運算裝置 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104915602B (zh) * | 2015-04-22 | 2017-08-11 | 飞天诚信科技股份有限公司 | 一种Android平台下的PIN码保护方法 |
JP6260064B2 (ja) * | 2016-03-14 | 2018-01-17 | Kddi株式会社 | 通信ネットワークシステム及び車両 |
US10970232B2 (en) * | 2017-01-03 | 2021-04-06 | Western Digital Technologies, Inc. | Virtual root of trust for data storage device |
US10778661B2 (en) * | 2018-04-27 | 2020-09-15 | Micron Technology, Inc. | Secure distribution of secret key using a monotonic counter |
US11056192B2 (en) | 2018-12-21 | 2021-07-06 | Micron Technology, Inc. | Monotonic counters in memories |
US11570156B2 (en) * | 2020-07-02 | 2023-01-31 | International Business Machines Corporation | Secure pairing of devices |
US20230318806A1 (en) * | 2022-03-28 | 2023-10-05 | International Business Machines Corporation | Secure modification of controlled devices |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070143606A1 (en) * | 2005-12-20 | 2007-06-21 | International Business Machines Corporation | Authentication of I²C bus transactions |
US20090323932A1 (en) * | 2007-04-04 | 2009-12-31 | Paul Youn | Method and apparatus for encrypting data to facilitate resource savings and detection of tampering |
US20110138192A1 (en) * | 2009-12-04 | 2011-06-09 | Kocher Paul C | Verifiable, Leak-Resistant Encryption and Decryption |
TW201241666A (en) * | 2010-12-22 | 2012-10-16 | Intel Corp | Client hardware authenticated transactions |
-
2014
- 2014-09-10 TW TW103131148A patent/TWI631462B/zh active
- 2014-09-10 US US14/482,701 patent/US9842214B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070143606A1 (en) * | 2005-12-20 | 2007-06-21 | International Business Machines Corporation | Authentication of I²C bus transactions |
US20090323932A1 (en) * | 2007-04-04 | 2009-12-31 | Paul Youn | Method and apparatus for encrypting data to facilitate resource savings and detection of tampering |
US20110138192A1 (en) * | 2009-12-04 | 2011-06-09 | Kocher Paul C | Verifiable, Leak-Resistant Encryption and Decryption |
TW201241666A (en) * | 2010-12-22 | 2012-10-16 | Intel Corp | Client hardware authenticated transactions |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI781464B (zh) * | 2020-02-21 | 2022-10-21 | 美商惠普發展公司有限責任合夥企業 | 用於資料之加密及解密的運算裝置 |
US12086076B2 (en) | 2020-02-21 | 2024-09-10 | Hewlett-Packard Development Company, L.P. | Computing devices for encryption and decryption of data |
Also Published As
Publication number | Publication date |
---|---|
US9842214B2 (en) | 2017-12-12 |
US20150074427A1 (en) | 2015-03-12 |
TW201523256A (zh) | 2015-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI631462B (zh) | 確保機板上匯流排交易安全的計算系統和計算設備實現的方法以及非暫時性的電腦可讀取媒體 | |
US10284372B2 (en) | Method and system for secure management of computer applications | |
CN104252881B (zh) | 半导体集成电路及系统 | |
US9537656B2 (en) | Systems and methods for managing cryptographic keys in a secure microcontroller | |
US9953166B2 (en) | Method for securely booting target processor in target system using a secure root of trust to verify a returned message authentication code recreated by the target processor | |
US8843767B2 (en) | Secure memory transaction unit | |
US8826035B2 (en) | Cumulative integrity check value (ICV) processor based memory content protection | |
JP2021002067A (ja) | メモリ動作の暗号化 | |
US8839001B2 (en) | Infinite key memory transaction unit | |
US9703945B2 (en) | Secured computing system with asynchronous authentication | |
CN112469036B (zh) | 一种消息加解密方法、装置、移动终端和存储介质 | |
WO2017000648A1 (zh) | 一种被加固软件的认证方法及装置 | |
US11019098B2 (en) | Replay protection for memory based on key refresh | |
US11132438B2 (en) | Virus immune computer system and method | |
AU2019245514B2 (en) | Method of secure communication among protected containers and system thereof | |
WO2018227518A1 (en) | Reconfigurable device bitstream key authentication | |
EP2629223A1 (en) | System, devices and methods for collaborative execution of a software application comprising at least one encrypted instruction | |
CN105678173A (zh) | 基于硬件事务内存的vTPM安全保护方法 | |
Mohammad et al. | Required policies and properties of the security engine of an SoC | |
US11783027B2 (en) | Systems and methods for managing state | |
US20230113906A1 (en) | An apparatus and method of controlling access to data stored in a non-trusted memory | |
TW201642621A (zh) | 金鑰保護裝置及金鑰保護方法 | |
EP3930254B1 (en) | Method for setting permissions for cryptographic keys, computer program and cryptographic processing system | |
CN111357003A (zh) | 预操作系统环境中的数据保护 | |
US20160299854A1 (en) | Techniques for preventing physical attacks on contents of memory |