鬼佬大哥大
  • / 38
  • 下載費用:30 金幣  

用于控制生產過程的系統和方法.pdf

關 鍵 詞:
用于 控制 生產過程 系統 方法
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
摘要
申請專利號:

CN200780006742.3

申請日:

2007.02.28

公開號:

CN101484901B

公開日:

2014.09.17

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||實質審查的生效|||公開
IPC分類號: G06F21/00(2013.01)I; H04L9/08; H04L29/06 主分類號: G06F21/00
申請人: 塞爾蒂卡姆公司
發明人: 安東尼·J·沃爾特斯; 布賴恩·尼爾; 托尼·羅薩蒂; 阿肖克·瓦德卡爾; 丹尼爾·奧洛林
地址: 加拿大安大略省
優先權: 2006.02.28 US 60/777,262; 2006.02.28 CA 2,538,087
專利代理機構: 中科專利商標代理有限責任公司 11021 代理人: 王波波
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN200780006742.3

授權公告號:

101484901B||||||

法律狀態公告日:

2014.09.17|||2009.09.09|||2009.07.15

法律狀態類型:

授權|||實質審查的生效|||公開

摘要

提供一種用于控制用以生產產品的生產過程的系統和方法,其中可以通過引入生產過程中的職責分離來禁止過量生產。通常,生產商將生產過程的各種階段承包給復數個承包商。一般而言,職責分離涉及到有目的地分離用于硅芯片或者其它產品的生產階段,使得各轉包商處理或者“接觸”最終產品以便使最終產品的功能完全。這通過具有用于截取和變換產品中數據流的數學變換的模塊來實現。該數學變換要求密鑰是可操作的,該產品要求數學變換的成功工作是可操作的,而密鑰被分成敏感數據的復數個部分,這些部分在產品的生產過程中的復數個階段中被添加。

權利要求書

權利要求書
1.  一種用于控制產品的生產過程的方法,包括:
-在針對所述產品的設計中包括具有用于截取和變換所述產品中的數據流的數學變換的模塊,所述數學變換要求密鑰是可操作的,所述產品要求所述數學變換的成功工作是可操作的;
-將所述生產過程安排成復數個階段,所述復數個階段中的每個階段能夠由復數個實體中的相應實體執行;
-將所述密鑰劃分成敏感數據的復數個部分,將所述復數個部分中的每個部分分配到所述復數個實體中的相應實體;以及
-將用于根據所述設計來生產所述產品的掩膜分配給所述復數個實體中的第一實體,使得所述復數個實體中的所述第一實體能夠向所述密鑰添加敏感數據的第一部分;
其中所述產品在添加敏感數據的所述復數個部分的全部時可操作。

2.  根據權利要求1所述的方法,還包括:將包括敏感數據的所述第一部分的不可操作產品分配給至少一個其它實體以執行后續階段,由此敏感數據的后續部分被添加到所述密鑰,以使所述密鑰可操作,從而生產可操作產品。

3.  根據權利要求1所述的方法,還包括:在生產商與所述復數個實體之間建立通信通道,用于對分配所述敏感數據進行保護。

4.  根據權利要求3所述的方法,還包括:所述復數個實體中的每個實體在添加所述敏感數據的相應部分時向所述生產商提供日志報告。

5.  根據權利要求3所述的方法,其中所述生產商生成所述設計,并負責劃分所述密鑰。

6.  根據權利要求1所述的方法,其中所述產品是集成電路(IC)。

7.  根據權利要求6所述的方法,其中所述掩膜由所述復數個實體中的所述第一實體用來生產硅晶片。

8.  根據權利要求1所述的方法,其中所述數學變換是密碼變換,所述密鑰是密碼密鑰。

9.  根據權利要求8所述的方法,其中所述密碼變換使用至少一個異或(XOR)運算。

10.  一種用于控制產品的操作的方法,包括:
-截取由所述產品的第一部分提供的數據;
-將所述數據輸入到數學變換中;
-使用密鑰將所述數學變換應用于所述數據以生成輸出,所述數學變換要求所述密鑰是可操作的;以及
-將所述輸出提供給所述產品的第二部分;
其中所述產品要求所述數學變換的成功工作是可操作的,所述數學變換包括敏感數據的復數個部分,每個部分在生產所述產品過程中在復數個階段被添加。

11.  根據權利要求10所述的方法,其中所述數據是引導信號。

12.  根據權利要求10所述的方法,其中所述數學變換是密碼變換,所述密鑰是密碼密鑰。

13.  根據權利要求12所述的方法,其中所述密碼變換使用至少一個異或(XOR)運算。

14.  根據權利要求10所述的方法,其中所述第一部分包括受保護邏輯,所述第二部分包括無保護邏輯。

15.  一種包含于產品中、用于控制所述產品的操作的注冊模塊,包括用于截取和變換所述產品中的數據流的數學變換,以及存儲于存儲器中的密鑰,所述數學變換要求所述密鑰是可操作的,所述產品要求所述數學變換的成功工作是可操作的;其中所述密鑰包括敏感數據的復數個部分,每個部分在生產所述產品過程中在復數個階段被添加。

16.  根據權利要求15所述的模塊,其中所述數據流是引導信號。

17.  根據權利要求15所述的方法,其中所述數學變換是密碼變換,所述密鑰是密碼密鑰。

18.  根據權利要求17所述的方法,其中所述密碼變換使用至少一個異或(XOR)運算。

19.  根據權利要求15所述的方法,其中所述數據流由受保護邏輯輸出,來自所述數學變換的輸出被提供給無保護邏輯。

20.  一種用于控制產品的生產過程的系統,包括:在負責所述生產過程的第一實體處的控制器以及在復數個過程階段的復數個服務器,所述復數個服務器被配置成用于以安全方式從所述控制器接收敏感數據,以及用于向所述控制器發送日志報告;所述控制器被配置成用于將用以生產所述產品的掩膜分配給所述復數個服務器中的第一服務器,以使得所述復數個服務器中的所述第一服務器能夠在第一過程階段向所述產品中的密鑰添加敏感數據的第一部分,所述密鑰用于在所述產品中操作數學變換,所述產品要求所述數學變換的成功工作是可操作的;其中所述復數個服務器中的至少一個其它服務器被配置成用于在至少一個其它過程階段向所述密鑰添加敏感數據的至少一個其它部分。

說明書

說明書用于產品注冊的系統和方法
技術領域
本發明總體上涉及生產其中具有敏感數據的產品。
背景技術
參與密碼安全通信系統的設備通常會具有在制造時注入設備中的某類唯一的且不可變的信息。此信息可以是密碼密鑰、共享秘密或者可以與設備的固有唯一屬性以密碼方式綁定的一些其它數據。這樣的信息一般可以稱為“密鑰”,而信息的注入一般可以稱為對設備“加密鑰(key)”或者“密鑰注入”。
注入密鑰的目的在于保證在設備被分配之后的未來某時間點接受設備作為安全通信系統的可信參與者。然而,設備的生產商常常會希望保證合法地生產設備并且因此希望保護被注入設備中的密鑰。生產商通常會以保護密鑰為目標以便保護未來的收入,因為密鑰的認證可以用來提供對安全系統及其內容等的有條件的訪問。注入的密鑰之所以重要還因為它使設備的客戶或者用戶能夠避免注冊設備所需要的繁瑣過程。
可以基于對信任密鑰的密碼認證來授權設備對系統的有條件的訪問。這一信任基于以下事實:特別地難以在制造過程以外重現可信數據。提供有條件的訪問的系統包括:例如,衛星電視和廣播、那些持續地廣播信息但希望控制訪問其內容并且因此控制用于提供該內容的收入的系統。這些系統依賴于制造過程和原始設備制造商(OEM),特別是密鑰注入,以便為設備并且最終為整個安全通信系統提供信任的根源。
注入設備的密鑰有時是標準格式并且從監管實體購得,例如其中高清晰度內容保護(HDCP)密鑰,用來在數據通過線纜從PC發送到監視器時保護數據。監管實體因此也關注于保證向設備的生產商分配的密鑰能夠受到保護并且不被丟失。這賦予了生產商一種責任,由此提高保護注入密鑰的重要性。在一些情況下,生產商可能因丟失或者復制密鑰而受罰,如果他們得到在處理密鑰時疏忽的名聲,則監管實體可以限制或者切斷密鑰的分配。尤其當密鑰是設備與其它設備和/或基礎設施兼容所需的標準格式時,維持這種關系對于生產商而言常常至關重要。在這種情況下,如果不能使用特定密鑰,設備就無法如計劃的那樣工作。
在設備日益復雜和完善的現代商業趨勢中,一個制造商制造各部件并對各部件加密鑰以供另一制造商隨后進行組裝是司空見慣的。在這種情形下,當設備的生產商或者通信系統的所有者不是設備制造商時,存在某些安全牽連。因此設備生產商保證對該生產商的設備的完整性負責的制造系統的完整性極為重要。
當考慮制造過程的完整性時,與用來制造設備的秘密信息的保密性以及保證制造商向生產商正確地報告所制造的單元的標識和數目有關的問題尤為令人關注。理想地,設備的生產商應當努力獲得制造商沒有產生和分配“灰”市或者“黑”市部件或設備的保證。例如,制造商將一定數目的加密鑰的產品運回到生產商,但仍有剩余密鑰,則該制造商可以用那些額外密鑰來制造和銷售設備。生產商因此損失收入,這是因為制造商是從銷售中受益的一員。也可能發生其它行為,如克隆密鑰或者竊取密鑰,這種行為在加密鑰過程被外包時是難以檢測和控制的。在一些情況下,可以在因特網上發布密鑰,以使用戶獲得對有條件的訪問系統的訪問權,而無需為這樣的服務付費。
傳統上,關注于在制造點保護信息注入階段的生產商除了絕對信任制造商以向生產商的設備和系統的安全性給予應有考慮的方式進行操作之外幾乎別無選擇。保護機制一般是初級的,因為加密鑰信息通常被成批加密和發送到制造商,制造商在所有加密鑰信息抵達時一次解密,然后信任該制造商不會損害這批信息的安全。
一種用于限制訪問加密鑰信息的方法是使用在線客戶機/服務器機制。適當利用這種機制,在制造商的設施處的客戶機被連接到網絡,并且在生產商的控制下按設備地向遠程密鑰提供服務器請求加密鑰信息。
對依賴于非現場的遠程聯網服務器的制造系統進行實施有諸多問題,其中服務器僅以時間為基礎提供加密鑰信息。首要問題在于,如果非現場服務器使用共享分組交換網,則不能保證對生產線的最低服務水平或者響應時間。為了防止生產線中的這些問題,在延時和吞吐量方面的某一服務水平是最優的。在給定的現代制造的實際情況下,即在相對于生產商來說生產線存在于遠程管轄中這種情況下,這種有保證的網絡可用性可能特別昂貴。
制造設施在沒有現成的包括數據資料的所有必需的資料時通常不會開始生產運行,否則生產線延遲的風險將過高。制造商使用的任何加密鑰系統應當能夠基本上保證服務的可用性并且提供適當的響應。這要求在開始生產運行開始之前所有數據資源和加密鑰信息本地可用。
假設所有數據資源對于可能存在于計算機系統上的生產線和不在生產商的直接控制下的媒體來說必須本地可用,生產商必須考慮如何保證任何秘密的加密鑰信息的保密性。
對于制造商來說應當有足夠的數據本地可用,以便開始和完成生產運行。在生產商發現制造商進行未授權的行為以及合同上不允許采用的行為的情況下,生產商也應當考慮如何防止這種欺詐制造商在合同終止之后生產灰市或者黑市產品。
與克隆有關的另一問題源于過量生產,即一種特定類型的克隆操作,這是硅芯片的生產商尤為關注的。當集成電路(IC)的生產商將他們的IC設計的制造外包給一個或更多個第三方制造公司時可能出現過量生產。外包某些或者所有制造步驟的目的在于通過選擇能夠為執行制造過程中的具體階段提供最優價格的第三方來降低生產成本。例如,無生產線(fabless)設計公司(例如生產商)可能希望與海外制造廠簽約構建他們已經設計的芯片。這種海外制造廠之所以常常被選中是因為他們能夠相對廉價地生產電子零件。
然而,外包通常增加了特定承包商可能過量生產他們已經簽約構建的產品以便供應灰市的風險。例如,如果簽約制造商行為不守信用,根據生產商提供的設計過量生產IC但是并不告知生產商發生這種過量生產,則額外產品可用于作為“假冒”或者“克隆”IC在灰市渠道中銷售。這使得第三方制造商以他們的客戶即生產商/設計商未來的產品需求和收入為代價實現額外收入和利潤。
上述情況之所以可能出現是因為在這種情景下生產商除了在生產階段開始時接收工程樣本之外通常不曾處理過產品。這樣,在制造過程繼設計之后的各個階段有竊取部件和產品的機會。在一些情況下,信用良好的承包制造商的雇員可能成為竊賊。當雇員立即竊取生產線的產品時可能出現“產量縮減”。這可能不僅由于損失收入而對生產商和簽約制造商不利,而且對于在生產商與制造商之間開展未來業務的關系不利。
因此本發明的目的在于避免或者減輕上述不足。
發明內容
本發明提供在分離實體之間分離敏感數據向產品的添加,以便禁止由過量生產和產量縮減所致的灰市產品。
在一個方面,提供一種用于控制產品的生產過程的方法,包括:在產品的設計中包括具有用于截取和變換產品中的數據流的數學變換的模塊,該數學變換要求密鑰是可操作的,該產品要求數學變換的成功工作是可操作的;將生產過程安排成復數個階段,該復數個階段中的各階段能夠由復數個實體中的相應實體執行;將密鑰劃分成敏感數據的復數個部分,將復數個部分中的各部分分配到復數個實體中的相應實體;以及將用于根據設計來生產產品的掩膜分配給復數個實體中的第一實體,使得所述復數個實體中的第一實體能夠向所述密鑰添加敏感數據的第一部分;其中所述產品在添加敏感數據的所有復數個部分時可操作。
在另一個方面,提供一種用于控制產品的操作的方法,包括:截取由產品的第一部分提供的數據;將數據輸入到數學變換中;使用密鑰將數學變換應用于數據以生成輸出,該數學變換要求密鑰是可操作的;以及將輸出提供給產品的第二部分;其中該產品要求數學變換的成功工作是可操作的,且數學變換包括敏感數據的復數個部分,各部分在生產產品過程中的復數個階段被添加。
在又一個方面,提供一種包含于產品中、用于控制該產品的操作的注冊模塊,該注冊模塊包括用于截取和變換產品中的數據流的數學變換,以及存儲于存儲器中的密鑰,該數學變換要求密鑰是可操作的,該產品要求數學變換的成功工作是可操作的;其中密鑰包括敏感數據的復數個部分,各部分在生產產品過程中的復數個階段被添加。
在再一個方面,提供一種用于控制產品的生產過程的系統,包括:在負責生產過程的第一實體的控制器以及在復數個過程階段的復數個服務器,該復數個服務器被配置成用于以安全方式接收來自于控制器的敏感數據,以及用于向控制器發送日志報告;控制器被配置成用于將用以生產產品的掩膜分配給復數個服務器中的第一服務器,以使得復數個服務器中的第一服務器能夠在第一過程階段向產品的密鑰添加敏感數據的第一部分,密鑰用于在產品中操作數學變換,產品要求數學變換的成功工作是可操作的;其中復數個服務器中的至少一個其它服務器被配置成用于在至少一個其它過程階段向密鑰添加敏感數據的至少一個其它部分。
附圖說明
現在將參照附圖僅通過實例來描述本發明的實施例,在附圖中:
圖1是遠程設備注冊系統的示意框圖;
圖2是圖1中所示圖形用戶界面(GUI)的示意圖;
圖3是分配圖像的示意圖;
圖4是示出了密鑰注入和報告過程的流程圖;
圖5是示出了預備過程的流程圖;
圖6是描述了信用指示過程的流程圖;
圖7示出了用于支持復數個產品的另一實施例的映射方案;
圖8示出了過濾的日志報告的實例;以及
圖9是示出了遠程設備注冊系統的另一個實施例的框圖;
圖10是在制造過程中使用復數個階段的密鑰注入的實施例的示意框圖;
圖11是合并有注冊模塊的掩膜的示意圖,該注冊模塊用于分離使用了圖10實施例的密鑰注入階段;
圖12是圖10的實施例中所示階段的示意圖;
圖13是示出了在生產產品時采用的步驟的流程圖;
圖14是根據圖11中所示的掩膜生產的示例性產品的示意框圖。
具體實施方式
參照圖1,附圖標記10總體上表示遠程設備注冊或可信密鑰注入系統。設備22的生產商12利用分離實體的服務來將唯一的且不可變的信息注入到設備22中,在這一情況下該分離實體為外部制造商14。信息可以是密碼密鑰、共享秘密或者可以與設備22的固有唯一屬性以密碼方式綁定并在下文中稱之為“密鑰”的一些其它數據。將密鑰注入到設備22中的步驟在下文中將被稱為“加密鑰”或者“密鑰注入”。
生產商12使用控制器16,該控制器是遠離制造商設施的計算機系統。控制器16包括硬件安全模塊(HSM)11。HSM11是由控制器16用來以密碼方式執行安全操作如加密、解密和簽名的受保護設備。HSM 11可以防篡改(例如物理上難以訪問)或者可以對篡改有反應(例如如果遭篡改則擦除數據)。控制器16負責封裝和傳送密鑰及其它信息給制造商14,并負責監視制造商14對密鑰的分配和使用。生產商12通常從外部資源如監管實體獲得密鑰的批數(未示出),其中監管實體例如是HDCP密鑰的生產商。密鑰被存儲于數據存儲設備15中,直到它們要被分配給特定的制造商14。操作者可以使用圖形用戶界面(GUI)13來監視、修改并且由此控制控制器12及其操作。GUI13通常是一種軟件應用,使用個人計算機(未示出)來對其進行顯示和與之交互。
控制器16通過管線23連接到位于制造商14處的服務器18。管線23包括兩個正向通信通道即控制通道26和分配通道25,以及反向通道24。控制通道26由控制器16用來通過發送信用指令來計量制造商14可以使用的密鑰的數目。分配通道25由控制器16用來將受保護的密鑰塊分配給制造商14。反向通道24由系統10用來使控制器16知曉密鑰用于報告和審查的目的。通道24、25和26可以是任意的通信通道而無需是可靠的或者安全的。使用技術機制和處理/過程的組合來提供通道24、25和26的可靠性和安全性。例如,如果通過正向通道26發送給模塊18的消息因被破壞而沒有解密,則用戶可以致電系統控制器模塊16的操作者并讓他們再次發送該消息。
制造商14利用一個或者更多個服務器18,該服務器18是計算機系統,其在制造商的設施本地,而其活動通過由控制器16發送的消息來監視和計量。服務器18也通過反向通道24向控制器16返回報告。服務器18包括與控制器16所用的HSM 11相似的HSM 28。HSM 28存儲受保護信用池30,該信用池指示了制造商14可以使用多少密鑰。控制器16通過監視由服務器18報告的數據并且相應地對信用池30進行加減來計量密鑰的使用。信用池30是一種抽象概念,其表示在服務器18需要請求和獲得來自控制器16的更多密鑰之前可以由HSM 28解密的密鑰的數目。正如下文將更全面地說明的那樣,控制器16通過分配通道25將密鑰分配給服務器18,服務器18將密鑰存儲在本地數據存儲設備17中。
制造商14利用一個或者更多個用于將密碼密鑰注入設備22中的裝置20。加密鑰通常發生于制造過程的測試階段中,因此裝置20常常是組裝線上的測試機。裝置20包括密鑰代理21,該密鑰代理21通常是加載到用于在應用側管理密鑰注入的裝置20中的軟件程序或者工具包。密鑰代理21與服務器18通信以請求并獲得他們所需的密鑰。通常,服務器18將足夠的密鑰提供給密鑰代理21以免破壞生產過程的時間安排。然而,服務器18不會提供不必要數目的密鑰,這樣可以限制對密鑰的使用,直至控制器16根據通過信用池30的計量來提供加密鑰批準。
通常,密鑰代理21具有指示特定裝置20何時需要新批次密鑰的閾值水平,這樣可以不破壞生產。正如下文將更加具體說明的那樣,由于控制器16通常不與服務器18持續通信,所以在控制器16可以從服務器18獲得密鑰使用報告之前,控制器16在保證服務器18不發放過多的密鑰數據的同時,可以調整其參數以保證通過服務器18有足夠加的密鑰資料可為裝置20所用。
優選地,密鑰代理21包括在裝置20上運行的應用程序接口(API),使得設備本身的操作者可以人工地或者以自動化方式請求密鑰。密鑰代理21用于為在服務器18與裝置之間傳遞的數據提供一定級別的保護,并且密鑰代理21可以視為服務器18與裝置20之間的簡化的安全套接層(SSL)連接。可以理解,如果資源允許,則也可以使用密鑰代理21自身與服務器18之間的SSL連接來實施密鑰代理21。密鑰代理21還負責在密鑰被使用時生成發回給服務器18用于報告目的報告記錄。
控制器16是用于監視和計量由制造商14進行的密鑰注入的指揮中心。為了從遠程位置控制加密鑰,GUI 13由操作者用來監視和配置在控制器16控制之下的各制造商14、服務器18和裝置20。圖2示出了示例性的GUI 13。GUI 13分成服務器窗口200、控制器窗口204和裝置窗口202。服務器窗口200包括制造商14的列表以及因此包括由控制器16控制的服務器18的列表。在控制器窗口204中指示了特定控制器16。操作者可以選擇特定制造商(例如,如圖2中所示的制造商A),且與該制造商關聯的裝置20被顯示在裝置窗口202中。
在圖2所示的實例中,在制造商A處的服務器包括提供關于服務器1、服務器2和服務器3的信息的窗口。各服務器具有與它關聯的某些數據。例如,如圖2所示,各服務器包括進度條,顯示它們的可用存儲空間、可用信用,以及可用于密鑰類型1和密鑰類型2中的每種的密鑰數目。各測試器窗口還顯示日志信息,如先前報告的處理日期、先前報告的信用、先前的補充數量,以及關于丟失日志記錄的數據。服務器窗口還為操作者提供用于通過控制器16遠程配置和禁用服務器18的選項214和216。
控制器16具有遠程配置服務器18的能力。這使得控制器16能夠改變密鑰類型、添加或刪除密鑰類型以及控制其它配置選項。這優選地通過沿控制通道26將配置消息發送到服務器HSM 28來實現。HSM 28可以對配置消息進行評估,由此,一些配置消息改變HSM 28的行為,而其它配置消息被發送給服務器18。使用這一方法,通過HSM 28而被發送到服務器18的配置消息可以幫助保證服務器18獲得可信任的、已知為源于控制器16的配置指令。
控制器16可以通過密鑰代理21在服務器級或者裝置級遠程配置系統10。控制器16還可以強制對服務器18進行輪詢,且可以調整用于定期輪詢的間隔。通常,按固定的間隔輪詢服務器18,控制器16可以根據需要使用強制輪詢來獲得間隔之間的信息。例如,利用一天的間隔,控制器16可能需要數據以便當天向管理員報告,因此可以強制輪詢所有服務器以獲得這樣的數據。GUI 13還可以包括控制器的電子郵件選項,使得控制器16在極端情形下,如在關鍵生產運行時解密或分配失敗,能夠自動聯系管理員。
分配給服務器18以及由裝置20注入到設備22中的各密鑰在某些事件時觸發某些日志記錄。GUI 13可以用來搜索、分類、編輯和分析日志記錄以及查看如圖8所示的定制的或者標準的報告400。在該實例中,生成了三個主日志記錄。密鑰至服務器日志402在由生產商16將密鑰分配給服務器18時生成。密鑰至代理日志404由HSM 28在它將密鑰發放給密鑰代理21這一點生成,密鑰注入日志406由密鑰代理21在密鑰注入時生成。各日志記錄可以包括任何數目的標識信息,這些信息包括ID類型、時間戳、制造商、裝置等。在圖8所示的示例性報告中,報告400示出了針對序列ID=001的密鑰的密鑰至服務器日志402、密鑰至代理日志404和密鑰注入日志406。這些記錄隨后可以被用于跟蹤具有這種序列ID的密鑰的生命周期。可以理解,報告400可以包括任何數目的記錄,并且可以基于任何適當域(field)而被過濾。例如,可以通過相應地過濾日期域和位置域來編輯報告400,該報告400示出了在制造商A處由測試器2于5月3日注入的所有密鑰。
現在參照圖3,生產商16可以使用要被發送給服務器18的分配圖像40、優選地使用加密,在安全數據傳輸中封裝成批密鑰集。分配圖像40使生產商能夠將去往復數個服務器18的用于復數個產品的密鑰包括在一次傳輸中。各服務器18于是能夠只在HSM28已經接收到授權之后才解密和獲得來自控制器16的、通過控制通道26的一定數目的密鑰。圖像40是數據記錄的集合,各記錄包含類型域58、ID域60、尺寸域54和數據域56。其中數據域56通常包含由尺寸域54標識的任意尺寸的密鑰數據。如先前通過控制通道26所指示的那樣,類型域58和ID域60由HSM28用來根據HSM 28的配置對密鑰數據標識,可能用來過濾某些密鑰。密鑰可以被封裝,使得實施并不關心密鑰在目標看來實際像什么。這使之靈活和可擴展而無需針對各新密鑰類型重新設計。封包(wrapper)應當包含類型、尺寸和唯一的ID,而主體是抽象的。封包也可以將用于支持更高級的特征如登錄或者變量賦值的元素包含到抽象化圖像中。
用圖像密鑰42對圖像40加密。圖像密鑰42由服務器18用來解密圖像40和獲得密鑰。針對各服務器18對圖像密鑰42本身進行加密,并且將其存儲為服務器報頭48。服務器報頭48的集合存儲于主報頭46中。為了解密圖像40和獲得密鑰,由服務器18選擇報頭48,由HSM 28對其進行解密,以獲得圖像密鑰42。圖像密鑰42隨后用來解密圖像40。
如前文所指出的,分配圖像40可以用來支持復數個產品。也參照圖7,其示出了產品類型和數據塊的映射。例如,生產商16有三個產品,即利用密鑰1(具有過濾標記1)的γ、利用密鑰2(具有過濾標記2)和附帶配置塊(也具有過濾標記2)的β以及利用密鑰1、2和配置塊的α。圖像40可以包括密鑰類型1和密鑰類型2的批數,而γ和β產品可以不如α產品那么復雜。生產商16可以對具有例如用于五十(50)個每種塊的數據的單個圖像40進行封裝,由此某個測試器(例如測試器1)有權制造并因此可以獲得用于生產五十個產品α的五十(50)個過濾標記1和2。另一測試器(例如測試器2)可以同時有權制造并且因此獲得來自于圖像40的五十(50)個過濾標記1,以生產五十個產品β,以及有權制造并且因此獲得五十(50)個過濾標記2,以生成產品γ。圖像40可以包含所有的加密鑰數據,這些加密鑰數據可能包括復數種類型的密鑰。測試器向服務器18標識正在被編程的產品或者產品模型的類型。該模型信息隨加密圖像40一起被發送到HSM28,使得當HSM28解密圖像40時,密鑰數據50可以被過濾,且只有對標識的產品模型進行編程所需的密鑰數據才由HSM 28發放給測試器。因此,生產商12可以用單個圖像40支持復數個產品,而采取步驟以保證制造商14只能制造被認為將要制造的產品。
由于圖像40可以支持復數個產品,所以日志記錄用來跟蹤在測試器執行的實際密鑰注入,這一點將在下文中更完全地加以說明。通過跟蹤日志記錄,生產商16可以嘗試檢測例如制造商14是否返回50個產品γ而不是50個產品α(生產商已經對其支付生產費),而他們也可能在灰市或者黑市上已經銷售了50個產品β。這種差異可能是也可能不是惡意的,但是無論如何這種差異可以被合理地標識。
圖4示出了密鑰的典型生命周期,該生命周期從該密鑰通過分配通道25的分配直至HSM 28通過反向通道24向控制器16報告。圖4中的加亮塊代表由安全模塊即HSM 11和HSM 28執行的那些步驟。控制器16首先從外部供應商獲得標準密鑰的批數。隨后控制器16將密鑰傳遞給HSM 11,HSM 11對密鑰塊進行加密,各密鑰塊包含某種密鑰類型的測量數。可以理解,密鑰也可以被成批加密成具有一個以上的密鑰類型的塊。隨后,控制器16將成批加密的密鑰存儲在存儲設備15中,直至其接收到指示將要分配密鑰塊的指揮或者其它命令。
當生產商16分配密鑰塊時,首先獲得成批加密塊,并將該塊傳遞給HSM 11。HSM 11對該塊進行解密,并對密鑰塊重新加密以便隨圖像密鑰42一起發送。隨后,針對各服務器18對圖像密鑰42本身進行加密,以產生各報頭48。這些報頭48存儲于主報頭46的組44中。這時,HSM11為已經重新加密以供分配的密鑰生成密鑰至服務器日志402。日志402存儲在生產商12本地供以后分析。重新加密的密鑰塊隨后通過分配通道25被分配到服務器18。
服務器18將圖像40中包括的已加密的密鑰塊傳遞到HSM 28,HSM28隨后對圖像40進行解密。HSM 28先從組44中選擇其特定報頭48并對圖像密鑰42進行解密。隨后圖像密鑰42被解密以從圖像40中獲得密鑰。接著,優選地,例如使用安全散列算法、MAC或者數字簽名來驗證圖像40并且過濾該圖像。HSM 28隨后還對從圖像40中獲得的各密鑰進行重新加密以供存儲。可以理解,基于控制器16與服務器18之間共享的唯一對稱分配密鑰ks1和ks2來假定圖像40的真實性。當例如在Sha-2摘要比較之后執行了成功的完整性檢查,就可以認為它們之間共享的消息是真實的。
當控制器16從裝置20接收到對一定數目的密鑰(例如N個密鑰)的請求時,HSM 28被賦予N個密鑰來進行解密。隨后,針對由HSM 28解密的N個密鑰中的各密鑰生成密鑰至代理日志記錄404,并將密鑰傳遞到裝置20以供注入。這時,密鑰是“干凈的”并且因此準備注入。
裝置20將N個密鑰中的各密鑰注入,密鑰代理21為注入的各密鑰生成密鑰注入日志記錄406。HSM 28將持續獲得密鑰至代理日志記錄404和密鑰注入日志記錄406,并優選地將這些記錄連接成通過反向通道24發回到控制器16的主日志報告R。
各日志優選地被連接成標識有文件產生日期的二進制文件。優選地,由HSM 28利用加密密鑰k1對報告R進行加密,并將其返回給運行于服務器18上的應用,以便通過反向通道24發送。控制器16隨后可以對報告R進行解密并驗證各日志(例如402、404、406)。各日志可以用單調同步編號來標記。如果放在一起的所有記錄ID值不是連續集,則控制器16的操作者將知道在何處跟蹤序列中的丟失日志。
如上所述,控制器16在N個密鑰被分配之前已經針對其存儲了多個密鑰至服務器日志記錄402。因此,控制器16希望在將來某時間接收到報告R,該報告R完成了各密鑰的生命周期以指示初始分配的密鑰已被正確的服務器18解密并被注入到正確的設備中。控制器16因此能夠評估所提供的日志報告。隨后,控制器16可以確定是否應當采取動作,如干預制造操作(例如停止分配)或者提供更多密鑰。控制器16也可以在分配另一個密鑰塊之前請求更多信息。以這種方式,控制器16可以對分配進行計量,如果制造商運營信用良好并且一貫地提供準確日志報告,才提供更多密鑰。
日志記錄(例如圖8所示的日志記錄)使生產商能夠發現ID編號序列中的不連續。例如,如果復數個密鑰已經被分配但是尚未報告密鑰至代理日志或者密鑰注入日志,則制造商可能已經丟失該密鑰。這可以表明灰市或者黑市活動。在另一情景中,報告R可以針對特定密鑰包括密鑰至代理日志404而不包括密鑰注入日志406。這可以表明問題源于請求密鑰的特定設備而不是制造商14本身。因此,制造商14也可以將日志報告R用于審查目的以及識別內部惡意活動,以便維持其與生產商12的關系。各密鑰的生命周期在密鑰被操作的各關鍵階段都要求報告記錄。因此,生產商12具有用于識別何處已經出現問題以及著力于糾正或消除此類問題的必要信息。優選地,日志記錄包括不僅與密鑰的序列號有關而且與密鑰類型有關的信息。以這種方式,生產商12也可以確定α產品是否被委托,雖然γ和β產品可能已被生產。
日志報告提供用于阻止制造商14惡意或不道德行為的信息,并提供用于評估現有制造商14的完善性的手段和用于提供任何不希望的活動的證據的工具。在檢測不希望的活動時使用切實證據使得生產商12能夠以比猜疑更有力的東西來面對制造商14,這在違法活動出現于測試器級(例如因雇員而不是公司本身所致)的情況下可以挽救在生產商12與制造商14之間的重要關系。
除了分配之外,控制器16還使用控制通道26來控制信用池30,并由此計量密鑰注入階段。圖6示出了信用指示過程。HSM 28需要在對分配圖像40進行解密和獲得密鑰時消耗來自信用池30的信用。信用池30會隨時間而被削減,且需要用控制器16發送的信用指令文件來補充。
控制器16通過控制通道26一次僅發送一個控制消息C給服務器18。在該消息中包含的優選所需文件之一是信用指令文件。該文件可以是由HSM 28解密的、用于具體服務器18的、針對信用指令的加密數據集。信用指令例如包含全部被控制器16簽名的HSM 28和/或服務器18的序號、服務器的令牌ID、序列號、新信用額和配置數據。
在收到控制消息C時,HSM 28對來自于控制消息C的信用指令數據進行解密并對簽名進行驗證。如果適用,則HSM28也對其自身的序號和令牌ID進行驗證。隨后執行序列號的驗證。序列號應當大于存儲于HSM 28內部的序列。當驗證后,HSM28更新其內部序列號,并將信用池30的值設置為信用指令中的信用值。
如上文參照GUI 13說明的那樣,HSM 28隨后將處理控制消息C中的任何配置消息以更新其內部配置,以便使控制器16能夠將配置數據推送到服務器18,如針對過濾規則、加密鑰信息、信用規則等的更新。配置數據可以被送往HSM 28、運行于服務器18上的應用或者甚至是密鑰代理21。HSM 28尋找限定類型的配置消息以處理他們。配置消息可以被標記為專用的或者公共的,而對它的訪問于是將由HSM 28來控制。
信用報告Cr是服務器對處理控制消息C中的信用指令的響應。信用報告Cr可以包含HSM 28的序號和令牌ID、當前序列值、信用池30的當前值、到目前為止的補充次數,以及如果在信用指令處理過程中沒有出現錯誤則設置為零的錯誤代碼。
信用報告Cr優選地由HSM 28使用其簽名密鑰k2來簽名。隨后針對控制器16使用該控制器的公共密鑰k3對報告Cr進行加密。為了上述審查目的,報告Cr隨后被發送給控制器16并隨日志報告R一起被存儲。
在分配密鑰之前,生產商12和制造商14可以經歷用于初始化HSM和服務器18的預備過程。在圖5中示出了該預備過程。HSM28向控制器16產生并發送預備請求消息P。該消息P優選地包含服務器18在使用的HSM28的序號。HSM28生成兩個密碼密鑰對k1、k2(例如RSA密鑰對或優選地使用橢圓曲線密碼(ECC)),一個(k1)用于接收加密消息,而另一個(k2)用于對傳出的消息簽名。優選地,在密鑰對k1和k2的該交換過程中,在物理受控環境中用以密碼方式來引導(bootstrap)制造商14。
當控制器16接收到來自于服務器18的預備請求時,將該預備請求傳遞給HSM 11,HSM 11檢驗消息的完整性,隨后為制造商14分配“令牌ID”。生成兩個密鑰,優選為對稱密鑰ks1和ks2(例如高級加密標準(AES)密鑰)。這些密鑰將由控制器16和服務器18用來保護如上文提到的分配通道25上的分配圖像40和反向通道24上的日志報告R。
HSM11隨后生成預備響應消息P’,該預備響應消息例如包含分配的令牌ID、分別用于HSM加密以及簽名密鑰對k3和k4的公共密鑰、分配通道和反向通道對稱密鑰ks1和ks2、一些初始配置數據,以及針對完整性的散列摘要。類似于預備請求消息P,假設在物理受控環境中(例如使用HSM保護)處理預備響應消息P’。
預備響應消息P’隨后可以被發送到服務器18,接著,服務器18可以在收到它的第一預備請求時執行初始化操作。預備響應的結構可以包含用于解密成以下分離結構的部件,該分離結構包含用于在控制器16與服務器18之間的正向通道和反向通道通信的對稱密鑰。應當注意到,這些密鑰針對于各HSM 28(并且因此各服務器18)而不同,且不在HSM組之中共享。當預備過程完成后,分配圖像40和控制消息C的正常交換就可以開始。
在圖9所示的另一實施例中,系統10可以被裝配到已通過制造商14實施以保護密鑰注入階段的現有方案中。在圖9所示的實施例中,相似元素被賦予帶有后綴“a”的相似附圖標記。例如,制造商14可以具有裝置20a,該裝置20a已經包括用于將串“BCA”轉換成“ABC”的加擾器74,其中設備22被有線連接以接受ABC作為注入密鑰。以這種方式,如果密鑰“BAC”被竊或者放錯地方,則因為沒發生加擾,它不會為設備22a工作。在保護密鑰時的這些嘗試雖然易于實施,但是通常是初級的并且可能并不提供適當的保護級。通過容納這種保護,系統10于是可以被裝配到裝置20a而無需撤銷已經實施的現有方案。因此,可以避免制造商14為實施系統10而造成的附加成本。可以實施該裝配直至完全的重新設計被授權,此時可以使用圖1中所示的安排。
為了容納現有方案,系統10將簽名對象集72存儲在服務器18,該簽名對象集72是與特定裝置20a關聯的可執行文件的集合,其在HSM28a發放密鑰之后且在密鑰注入之前執行現有方案。這樣,更改密鑰以容納現有方案而不為裝置20a所知。如圖9所示,控制器16a首先需要訪問由裝置20a用來提供現有方案的可執行文件(exe)70。隨后,控制器16a將把exe 70傳遞給HSM 11a。接下來,HSM 11a對exe 70進行簽名并將簽名的exe 70傳遞給HSM 28a,HSM 28a隨后可以將簽名的exe 70存儲為簽名對象72。在操作中,當裝置20a請求新批次的密鑰時,服務器18a針對HSM 28a中存儲的exe的簽名來驗證該exe。當服務器18a驗證了exe 72后,發送exe密鑰以使其被加擾。
例如,裝置20a需要密鑰BCA以將該密鑰饋送給設備22a中的加擾器76,使得密鑰ABC被注入到產品α。HSM 28a確定產品α具有用于修改密鑰ABC的簽名對象exe A。該簽名對象exe A被驗證并被應用于密鑰ABC,從而得到加擾密鑰BCA。加擾密鑰BCA隨后被發送給裝置20a,加擾器76修改密鑰BCA,這樣它能夠注入密鑰ABC。裝置20a并不了解(它接收的)密鑰BCA由服務器18a存儲為受保護的形式ABC。可以理解,由服務器18a存儲的密鑰也可以是如CAB這樣的形式,該形式隨后被修改,以讀取BCA用于加擾,隨后被轉換成ABC用于注入。這種情況可以在密鑰CAB是標準形式且需要被修改以適合CAB不會被接受為密鑰的現有方案時候出現。因此,簽名對象72包含用于容納由裝置20a實施的現有方案所需的任何程序,而上文提供的實例僅用于說明目的。
簽名對象72還禁止惡意代碼被加載到服務器18a中,以便在注入之前修改密鑰,這是因為簽名的可執行文件通常在應用于密鑰之前針對要被發放到機器的密鑰而被加以驗證。系統10因此可以提供提高的安全級而又容納現有方案。
因此,通過利用與服務器18分離的遠程系統控制器16,生產商12能夠監視制造商14的活動,并通過HSM 28來計量信用。生產商16因此能夠管理加密鑰信息在設備22上的注入,以保證制造商14正確地報告為生產商12制造的單元的標識和數目。這使生產商12能夠具有制造商14沒有產生和分配灰市或者黑市產品或者設備22的保證。
適當利用上述過程和系統10,生產商12可以監視在制造商14處的生產。生產商12可以使用控制消息C中的信用指令、通過添加或者移除供制造商14使用的可用信用來計量設備22的生產。
可以理解,系統10不限于如圖1所示一個制造商14,各制造商14也不限于一組裝置20。系統10也不限于使用單個控制器16。HSM 28是用來保護密鑰值和信用池30的完整性的最優選的可信硬件。另外,在分配消息40中包含的加密鑰信息并非必然是加密鑰信息,其還可以是要求保密性和真實性的任何數據元素。對于希望執行設備激活的粒度的系統10來說典型的是需要加密鑰數據。
在圖10-14中例示的以及在下文中詳細描述的一種可替選的安排中,通過在硅或設備的生產過程中引入職責的分離可以禁止過量生產。通常,生產商12將各生產階段(設計、制造、測試等)承包給復數個承包商。一般而言,職責的分離涉及有目的地分離針對硅芯片或者其它產品的生產階段、特別是制造階段,從而各轉包商處理或者“接觸”最終產品以便使最終產品的功能完全。由于灰市通常由生產過程鏈中的單個故障點或者單個不守信用的承包商供應,所以強制一組承包商依序操作意味著兩個或更多轉包商需要串通背叛生產商12以便向灰市供應無缺陷的子零件或者設備。最終產品及其子零件為了功能完全而應當完成所有階段。一般而言,當需要復數個轉包商串通才可行竊時,明顯減小了侵害生產商12的風險。
在硅晶片的生產過程中,晶片的制作過程需要數個步驟,各步驟可以被轉包給第三方制造承包商。例如,設計芯片的無生產線半導體公司(例如生產商12)可以將用電子數據文件表示的設計分配給這些第三方承包生產商。這些數據文件可以包括各種包含在標準化的以及專用的描述語言中的行為的、邏輯的和物理的設計描述的抽象表示。這些文件也可以包含生產細節,這些生產細節包括但不限于設計約束和屬性、過程參數以及用于所涉及的制造過程的排序指令。這些數據文件的目的在于:對于各轉包商,限定各轉包商為完成他們在由無生產線半導體公司提出的指導方針內的生產過程部分所需的設計過程和參數。在以綜合方式進行考慮時,這些數據文件的完整集可以被視為從行為設計抽象表示到測試和封裝的集成電路零件的希望的硅生產過程的完整描述。
參照圖10,半導體固態產品生產過程的一個實例可以進行如下。首先,無生產線半導體公司,也稱為無生產線設計公司(例如生產商12),將成品IC芯片的生產轉包給半導體鑄造公司。為了傳送原始設計描述90中限定的希望的電路描述,無生產線半導體公司向半導體鑄造公司傳送在RTL設計階段100產生的寄存器級設計描述(RTL代碼),或者在階段101產生的柵極級網表(gate level netlist)設計描述。進而,半導體鑄造公司向第三方物理設計公司轉包物理設計,也稱為晶體管級設計,該物理設計公司在階段103接收來自于鑄造公司的抽象的RTL代碼或網表,并以電子數據文件的形式返回物理設計描述。
半導體鑄造公司隨后可以獲得代表物理設計的電子設計文件,并將該電子設計文件交付到第三方掩膜設計商。掩膜設計商接收物理設計文件,并在階段104中根據由物理設計文件限定的參數來構建例如光掩膜。因此在這一實例中,在經歷數個設計階段之后,根據原始設計描述90產生了掩膜90’。
光掩膜隨后被傳送給半導體鑄造廠。在階段105中,半導體鑄造廠通過重復使用光掩膜以在晶片上分層、圖案化、摻雜和加熱電路元件,從而使用光掩膜來制作硅晶片。該過程中的這一步驟可以稱為晶片制作。在晶片制作之后,各晶片包含在該晶片上形狀為許多正方形或長方形的復數個管芯(die)。各管芯是完整的集成電路,其最終變成單個芯片。各晶片通常包含數以百計至數以千計的管芯,這取決于各管芯的尺寸。
當在晶片上制作了管芯后,半導體鑄造公司在步驟106中進行晶片分類,這用來確定晶片的產量,或多少管芯避免了缺陷。晶片分類過程也可以提供關于工藝技術和參數的反饋,因為它們涉及晶片的產量。通常,在這一階段106,半導體鑄造公司隨后轉包對封裝部件的封裝和測試。在封裝車間,晶片被劃分(例如“切割”)成單個管芯。來自于晶片分類過程的已知“不良”晶片已被做上標記,且在這時被丟棄。在階段107中,在模制塑料中封裝各晶片,并將管腳粘結到管芯中的焊墊。這時部件被發送至在另一位置的最終測試階段108。在最終測試階段108中,“良好”的芯片(即已經合格的那些芯片)被發回到半導體鑄造廠,以便在階段109中最終被分配回給無生產線半導體制造商或者客戶。
概括而言,原始設計描述90的示例性半導體IC產品的生產過程可以分解成以下階段:1)RTL設計階段100;2)柵極級網表設計階段101;3)物理/晶體管設計階段103;4)掩膜制造階段104(例如光掩膜);5)晶片制作階段105;6)晶片分類階段106;7)管芯封裝階段107;以及8)最終測試階段108。這僅為一個有代表性的實例,可以理解,設計的原創者(例如生產商12)可以轉包、組合或執行上文概括的八個步驟的任何排列。例如,存在通常并不轉包任何上述階段的商業半導體制造商。另一方面,也存在如上文討論的掌握芯片的抽象理念或者設計或者規范的無生產線設計公司,其將所有階段轉包。某些轉包商也可以提供針對各階段的所有服務,而其它轉包商僅能夠提供一種服務。
這樣,可以理解,任何或者全部上述階段可以發生在單個工廠中,在其它應用中,根據生產過程、應用等也可以存在或多或少的階段,即任意數目N的階段。
產品22包括某一形式的敏感的或不可變的信息,該信息要被包括在產品22的設計中,并且優選地,沒有這種敏感信息該產品22就不能操作。在這一實例中,生產商12向在產品22的整個生產過程中執行具體階段的八個第三方制造實體轉包(直接向鑄造廠轉包而間接向他們的轉包商轉包)。
為了防止不完整的產品或者子零件在生產實體100-108之一被轉移到灰市110,則應用“職責分離”。職責分離是各生產過程階段的生產和數據編程職責的劃分,這樣,完成無缺陷產品22的生產所需的所有職責由規定的承包商以規定的順序執行。
在該實例中,如密碼數據注入這樣的敏感任務被分成復數個階段,各階段在不同的生產過程階段中由不同的生產實體(例如設計、制造、測試等)來完成。在該實例中,為了分離的一個或者復數個敏感任務,生產商12將注冊模塊定義92合并于設計描述90中,使得注冊模塊92’被包含于隨后用來制作晶片的掩膜90’中(見圖10和圖11)。
使用模塊92’,使得數學變換對最終產品22中的關鍵信號和/或數據流如引導信號進行截取,如果該數學變換不能工作,則產品22是有缺陷的。數學變換優選為密碼變換,其基于注入的加密鑰數據來使用可逆密碼數學變換,該變換優選地是難以控制的,如加密鑰數據限定的那樣。例如在一個實施例中,可以由于性能原因而使用異或(XOR)運算,然而XOR運算的使用不是必需的。
為了使數學變換工作,可以在生產過程的各階段通過增量注入或者添加關鍵數據,如密碼加密鑰數據的部分,來對其進行注冊。以這種方式,如果在階段105生產的晶片被過量生產,并如圖10中所示的供應到灰市階段110,則所得產品112是有缺陷的,因為在這種情況下它沒有收到為恰當地操作產品22所需的所有密碼數據。
優選地,例如圖10所示,上文中描述的以及圖1-9中所示的密鑰注入系統10可以用來分配、計量、審查和請求在各制造步驟的密鑰注入階段的報告。在這種情況下,即使所有實體相互勾結來分配灰市產品,生產商12仍能夠由于不完整日志報告而檢測到該活動,并且如果必要則禁止分配更多加密鑰數據。可以理解,可替選地,系統10可以在任何數目的階段被使用,而根本無需在每個階段或者任何階段都使用系統10。
例如,晶片生產階段105可以使用系統10,而任何其它階段可以不使用系統10。然而,由于各制造階段優選地包括某一形式的測試過程,所以將系統10合并于這種測試中是有利的。在這種情景下,生產商12至少期望第二階段過程中的數據。還可以理解,在掩膜90’中的注冊模塊92’(及其相應的定義92和90)可以不依賴于系統10而被使用,且可以依賴于各制造階段來實施加密鑰過程的部分。在這些情形中的任何情形下,通過拆分責任,沒有一個實體其自身具有用于向灰市成功供應產品或者子零件的必不可少的信息。
在圖11中具體示出了根據設計定義90來生產的掩膜90’。如上文討論的那樣,注冊模塊定義92可以合并于可實施指令集或者代碼行等的任何設計定義90中,該指令集或者代碼行等將被部分地插入客戶代碼120的一部分與客戶代碼122的另一部分之間的路徑中的注冊模塊92’。沿路徑124進入模塊92’的數據被應用于密碼變換128,并沿路徑126被輸出到另一部分122。優選地,如果密碼變換128被成功地應用于在路徑124輸入的數據,則在路徑126出現的輸出才可用。
密碼變換128優選地與存儲器130、處理器132和密碼密鑰134一起工作以便執行它的操作。優選地,使用在各生產過程階段存在的密鑰注入系統10來配置存儲器130、處理器132和密碼密鑰134。存儲器130還包括另一密碼密鑰131,該密碼密鑰131一般包括優選地通過使用密鑰注入系統10的注入、在各階段積累的加密鑰資料,如圖10所示。優選地,密鑰134在注入時用來保證為了組成密鑰131而在存儲器130中積累的資料是真實的。密鑰134可以是公共密鑰,或者可以需要或可以不需要密鑰134。例如,模塊92在可以或者可以不與特定生產商12相關的某些類侵害的潛在風險下無密鑰134也可工作。
一般而言,模塊92’使用的敏感數據被分成多個部分,各部分在適當的生產過程階段被添加到密鑰131,這些生產過程階段例如是在掩膜90’已被生產出后執行的生產過程階段。例如,一種技術是隨著生產過程中的各階段的消息恢復而注入數字簽名。密鑰134可以用來在這樣做時驗證數字簽名;已驗證的數字簽名產生可以在密鑰導出方案中與存儲器130中的現有數據一起用來導出密碼密鑰131的消息。另一實例是利用密鑰共享技術,其中密碼密鑰131的多個部分在各種生產階段被添加到存儲器130。當已完成最終生產過程階段時,存儲器130包含足夠的數據,使得密鑰共享技術可以用于重新組成密碼密鑰131。
在圖12中示意地示出了通用生產過程階段102的一個實例。如上文提到的,生產商12優選地利用系統10來分配加密鑰數據以及監視加密鑰發生時生成的報告。密鑰注入到硅芯片中通常是發生在晶片測試時或在封裝后測試過程中。在該實例中,生產階段102包括與測試裝置20一起操作的服務器18和密鑰代理21。階段103還包括生產過程步驟139,例如用于生產硅晶片的裝備。生產過程步驟139利用已經分配給它的先前的過程步驟的輸出來生產部分完成的產品+140,例如硅晶片。在該實例中的下標“+”用來表示已經應用于產品22的敏感數據的當前“部分”,其中,優選地,使用裝置20的密鑰代理21來注入用于該階段102的敏感數據的附加部分。這時,產品+可能由于變換128不具有用于執行其操作的全部必要信息這一原因而不是完全可操作的。產品+隨后可用以被分配到下一生產階段。
圖13提供了流程圖,該流程圖示出了示例性的生產過程,該生產過程包括兩個不同制造階段(即N=2),其中生產商12負責直至掩膜90’的生產的所有設計/生產階段。在步驟500,生產商12確定階段的數目,以及進而要被注入的加密鑰數據的部分的數目,在該實例中,N=2。在步驟502,生產商12優選地建立密鑰注入系統10,該密鑰注入系統10通過通道24、25和26將各制造階段鏈接到它自身。如上文參照圖1討論的那樣,生產商12可以使用單個控制器16來與復數個服務器18通信。在該實例中,生產商12分配、監視和接收來自于兩個服務器18的日志記錄。
在步驟504,生產商12將注冊模塊定義92合并于設計描述90中,并生產包括這種注冊模塊92’的掩膜90’。掩膜90’隨后在步驟506被分配給用于實施該示例性的2階段制造過程的階段1的第一制造商,而在步驟508中執行階段1。例如,第一制造商生產晶片,該晶片產生與掩膜90’相符的芯片。在晶片測試過程中,制造商隨后將把一些部分加密鑰資料編程到存儲器130中。在步驟510插入敏感數據的這一部分,服務器18優選地使用上文概括的機制在步驟512向生產商報告。可替選地,階段1可以不處理任何敏感數據的注入,而隨后可以在階段2中單獨執行該操作。
當加密鑰數據的第一部分被編程到芯片或者產品中后,該產品僅包含不足以完全操作的部分加密鑰信息。部分注冊的產品由“產品1”代表,其中下標1表示如上所述的第一部分。部分生產、部分編程的“產品1”隨后在步驟514被分配給用于在步驟516執行的階段2。下一制造商隨后在步驟518注入密鑰數據的第二部分。例如在步驟518,第二制造商可以對附加的加密鑰信息進行編程,或者可以使用在步驟510中存儲于存儲器130中的部分密鑰數據和來自于在步驟518使用的系統10的新密鑰數據來導出密碼加密鑰信息。該導出步驟可以基于散列或更復雜的密鑰共享技術。優選地,在步驟520,第二制造商向生產商12回報,指示第二密鑰部分被成功地注入。生產商12現在可以擁有指示密鑰數據已被成功地插入的兩個日志記錄,并且可以使用此信息來監視它的記錄。可以理解,階段2可以是在階段1中執行的晶片制作之后的生產過程步驟中的任一個步驟或者組合。例如,階段2可以包括晶片分類、晶片封裝和最終測試,其中,在最終測試過程中添加第二密鑰部分。
當插入加密鑰數據的第二部分后,產品22在這一實例中是完全可操作的,并且因此被完全注冊(例如,已測試和封裝的IC),在圖13中用“產品12”代表,其中下標12表示完整的密鑰數據集,即數據部分1和數據部分2。“產品12”隨后在步驟522繼續至分配通道,最終在步驟524作為工作產品到達客戶。
另外如圖13所示,例如,如果第一制造商或其雇員嘗試通過步驟528中的替代分配通道來分配步驟526的灰市產品,則會在步驟530向客戶提供有缺陷的產品,因為“產品1”僅包含密鑰數據的第一部分,因此變換128不能執行其操作。因此,雖然可以在灰市階段2執行測試、封裝等,但是沒有提供附加的加密鑰數據,因此產品530被完全地制造但是沒有被完全地注冊,從而致使它是有缺陷的。可以理解,模塊92優選地被實施成使得防篡改手段被考慮和實施。
現在參照圖14,該圖示出了合并有模塊192的成品客戶產品22a的示意性實例,其中模塊192是圖11中所示模塊92’的物理布局的邏輯表示。在圖14中,為了清楚而可以向相似的附圖標記賦予后綴“a”。使用模塊92’的實施(例如192)的產品22a能夠將作為執行塊150的部分的密碼變換128a應用于產品在代碼120a與122a之間的關鍵數據路徑。該路徑通過變換128a而被解碼,使得顧客的邏輯122a可以恰當地工作。在該實例中,執行驗證132a,該驗證132a是處理器132的一種實施。驗證132a使用一次性可編程(OTP)存儲器130a和標識部分134a,該標識部分134a是圖11的密鑰134的一種實施。使用例如圖13中概括的過程向密鑰134a和存儲器130a注入敏感數據。可以理解,產品22a僅是合并有由模塊92’提供的邏輯(例如模塊192)的一種實施,而圖14中所示實例僅用于說明目的。
雖然已經參照某些具體實施例描述如上,但是其各種修改對于本領域技術人員將是清楚的。

關于本文
本文標題:用于控制生產過程的系統和方法.pdf
鏈接地址:http://www.wwszu.club/p-6421312.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
鬼佬大哥大