專利名稱:半導(dǎo)體裝置以及將數(shù)據(jù)寫入到半導(dǎo)體裝置的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及半導(dǎo)體裝置以及將數(shù)據(jù)寫入到半導(dǎo)體裝置的方法,更特別地,涉及保持保密信息以將其保持為對于來自外部的攻擊是隱秘的半導(dǎo)體裝置,以及將保密信息寫入到半導(dǎo)體裝置的方法。
背景技術(shù):
近些年來,提出了許多利用加密技術(shù)改善對半導(dǎo)體裝置的未授權(quán)的訪問的抵抗性 或防止仿造的安全技術(shù)。在所述加密技術(shù)中,使用加密密鑰。然而該技術(shù)具有這樣的問題在攻擊者獲得了加密密鑰時,對半導(dǎo)體裝置的非法訪問變得可能。因此,要求防止哪些在被泄漏時較不利的信息(諸如,密鑰信息)作為保密信息被泄漏到外部。專利文獻(xiàn)I至4公開了對作為保密信息之一的密鑰信息的安全措施的技術(shù)。在專利文獻(xiàn)I至4的所有技術(shù)中,通過利用根據(jù)半導(dǎo)體裝置的制造變化而不同的特征值(諸如,硅ID或PUF(物理不可克隆的功能))來生成諸如密鑰信息的保密信息。在專利文獻(xiàn)I至4中,由于這樣的特征值包括錯誤,因此在利用這樣的特征值生成可靠的保密信息的情況下不得不對特征值執(zhí)行錯誤校正處理。通過基于這樣的特征值生成保密信息,變得不需要將保密信息保持作為固定值,可以改善半導(dǎo)體裝置的安全性。相關(guān)技術(shù)文獻(xiàn)專利文獻(xiàn)專利文獻(xiàn)I :W0 2008/056612專利文獻(xiàn)2 :日本未審查專利公開No. 2006-179001專利文獻(xiàn)3 :日本未審查專利申請公開(PCT申請的譯文)No. 2010-527219專利文獻(xiàn)4 :日本未審查專利申請公開(PCT申請的譯文)No. 2008-54532
發(fā)明內(nèi)容
例如,在利用PUF生成保密信息(諸如,密鑰信息)的情況下,為了生成保密信息,半導(dǎo)體裝置讀取PUF并且密鑰信息被加密。通過利用半導(dǎo)體裝置中的PUF對通過對密鑰信息進(jìn)行加密以將其保持隱秘而獲得的數(shù)據(jù)進(jìn)行解密,密鑰信息可以被安全地存儲在半導(dǎo)體裝置中。然而,即使在這種情況下,也仍存在其上安裝半導(dǎo)體裝置的系統(tǒng)的維護(hù)人員變成攻擊者的可能性。在這樣的情況中,即使在將專利文獻(xiàn)I至4中公開的技術(shù)應(yīng)用到半導(dǎo)體裝置之間的加密通信時,在維護(hù)人員通過側(cè)信道攻擊(side channel attack)等收集大量的PUF值和利用來自半導(dǎo)體裝置的PUF生成的加密數(shù)據(jù)的情況下,存在保密信息被分析出的可能性。因此,存在這樣的問題即使在應(yīng)用專利文獻(xiàn)I至4中公開的技術(shù)時,也不能夠充分地改善半導(dǎo)體裝置的安全性。在根據(jù)本發(fā)明的半導(dǎo)體裝置和數(shù)據(jù)寫入方法中,半導(dǎo)體裝置生成通過對初始獨(dú)有碼(unique code)中的錯誤進(jìn)行校正而獲得的中間獨(dú)有碼,生成通過對中間獨(dú)有碼中的錯誤進(jìn)行校正而獲得的第一確定獨(dú)有碼,以及利用所述第一確定獨(dú)有碼對從外部裝置發(fā)送的傳輸數(shù)據(jù)進(jìn)行解密以獲得保密信息。外部裝置接收半導(dǎo)體裝置生成的中間獨(dú)有碼,并通過利用基于所述中間獨(dú)有碼生成的密鑰信息對保密信息進(jìn)行加密以生成傳輸數(shù)據(jù)。通過該操作,根據(jù)本發(fā)明的半導(dǎo)體裝置能夠獲得加密的保密信息,而不發(fā)送/接收供在傳輸數(shù)據(jù)的加密中使用的密鑰信息本身。因此,實(shí)現(xiàn)了與外部裝置的高安全性的通信。外部裝置具有第一校正數(shù)據(jù),供在半導(dǎo)體裝置中校正初始獨(dú)有碼中的錯誤的處理中使用,并且該第一校正數(shù)據(jù)以加密狀態(tài)存儲在外部裝置中。接收加密的第一校正數(shù)據(jù)的半導(dǎo)體裝置對接收的加密的第一校正數(shù)據(jù)進(jìn)行解密,并利用解密的第一校正數(shù)據(jù)生成中間獨(dú)有碼。通過該操作,半導(dǎo)體裝置能夠執(zhí)行更高安全性的通信。
外部裝置具有多個裝置(例如,寫入裝置和服務(wù)器),在不直接耦接至該半導(dǎo)體裝置的裝置(例如,服務(wù)器)中生成傳輸數(shù)據(jù),以及經(jīng)由被直接耦接到該半導(dǎo)體裝置的裝置(例如,寫入裝置)將傳輸數(shù)據(jù)寫入至該半導(dǎo)體裝置。利用該配置,可以改善外部裝置上的安全性。另外,外部裝置保持要被發(fā)送到半導(dǎo)體裝置的第一校正數(shù)據(jù),以及供在密鑰信息的生成中使用的第二校正數(shù)據(jù),以便使其分布在多個裝置中。利用該配置,可以進(jìn)一步改善外部裝置上的安全性。本發(fā)明的效果在根據(jù)本發(fā)明的半導(dǎo)體裝置以及將數(shù)據(jù)寫入到半導(dǎo)體裝置的方法中,半導(dǎo)體裝置的安全性得到改善。
圖I是根據(jù)第一實(shí)施例的半導(dǎo)體裝置以及外部裝置的框圖。圖2是示出了根據(jù)第一實(shí)施例的半導(dǎo)體裝置以及外部裝置生成的確定獨(dú)有碼的示例的表。圖3是示出根據(jù)第一實(shí)施例的半導(dǎo)體裝置以及外部裝置的操作的順序圖。圖4是根據(jù)第二實(shí)施例的半導(dǎo)體裝置以及外部裝置的框圖。圖5是示出根據(jù)第二實(shí)施例的半導(dǎo)體裝置以及外部裝置的操作的順序圖。圖6是根據(jù)第三實(shí)施例的半導(dǎo)體裝置以及外部裝置的框圖。圖7是根據(jù)第四實(shí)施例的半導(dǎo)體裝置以及外部裝置的框圖。圖8是根據(jù)第五實(shí)施例的半導(dǎo)體裝置以及外部裝置的框圖。圖9是根據(jù)第六實(shí)施例的半導(dǎo)體裝置以及外部裝置的框圖。圖10是示出根據(jù)第六實(shí)施例的半導(dǎo)體裝置以及外部裝置的操作的順序圖。圖11是根據(jù)第七實(shí)施例的半導(dǎo)體裝置以及外部裝置的框圖。圖12是根據(jù)第七實(shí)施例的半導(dǎo)體裝置以及利用該半導(dǎo)體裝置的加密通信系統(tǒng)的示例的框圖,其中利用外部裝置寫入保密信息。圖13是用于解釋圖12中所示的加密通信系統(tǒng)的操作的流程圖。
圖14是用于解釋圖12中所示的加密通信系統(tǒng)中的共用密鑰生成單元的操作的流程圖。圖15是圖12中所示的加密通信系統(tǒng)中共用密鑰生成單元處理的獨(dú)有碼的示例的表。圖16是示出根據(jù)第七實(shí)施例的半導(dǎo)體裝置以及利用該半導(dǎo)體裝置的加密通信系統(tǒng)的另一示例的框圖,其中利用外部裝置寫入保密信息。圖17是用于解釋圖16中所示的加密通信系統(tǒng)的操作的流程圖。圖18是用于解釋圖16中所示的加密通信系統(tǒng)中的校正數(shù)據(jù)生成單元的操作的流程圖。
圖19是示出利用多個半導(dǎo)體裝置生成校正數(shù)據(jù)的情況的圖。
具體實(shí)施例方式第一實(shí)施例下面將參考
本發(fā)明的實(shí)施例。圖I是示出根據(jù)第一實(shí)施例的半導(dǎo)體裝置10以及外部裝置(例如,寫入裝置20)的框圖。如圖I中所示,在第一實(shí)施例中,半導(dǎo)體裝置10和外部裝置20配置一個數(shù)據(jù)寫入系統(tǒng)I。在半導(dǎo)體裝置10中,利用數(shù)據(jù)寫入系統(tǒng)I寫入保密信息,并且利用該保密信息進(jìn)行加密通信。如圖I中所示,半導(dǎo)體裝置10具有獨(dú)有碼生成單元12、第一錯誤校正單元(例如,比特掩碼電路13)、第二錯誤校正單元(例如,ECC電路15)、以及解密單元(例如,散列函數(shù)解密單元16)。作為伴隨上述電路的單元,半導(dǎo)體裝置10還具有標(biāo)識信息保持單元11、存儲單元14、以及加密單元17。標(biāo)識信息保持單元11保持標(biāo)識信息ID,其是為每一裝置預(yù)設(shè)的固定值。標(biāo)識信息保持單元11輸出標(biāo)識信息ID到寫入裝置20。標(biāo)識信息ID是這樣的值,諸如,產(chǎn)品批號、產(chǎn)品管理編號、或產(chǎn)品ID,并且不包含錯誤。獨(dú)有碼生成單元12生成初始獨(dú)有碼UCp,其是對于裝置獨(dú)有的值,并且包含以隨機(jī)比特形式的錯誤。獨(dú)有碼生成單元12利用例如半導(dǎo)體裝置10中的存儲器元件(諸如,SRAM (靜態(tài)隨機(jī)存取存儲器))的起動時的初始值,來生成所述初始獨(dú)有碼UCp。初始獨(dú)有碼UCp是從相同設(shè)計的電路生成的值,并且是利用使得被實(shí)際制造作為半導(dǎo)體裝置的電路具有變化的特性生成的碼。這樣的技術(shù)被稱作PUF (物理不可克隆功能),并且不要求特別的硬件(諸如,防篡改芯片),即可實(shí)現(xiàn)高的數(shù)據(jù)隱秘性,這是因?yàn)殡y以進(jìn)行數(shù)據(jù)的復(fù)制。比特掩碼電路13校正初始獨(dú)有碼UCp中的錯誤以生成中間獨(dú)有碼。更具體的,比特掩碼電路13通過從外部(例如,寫入裝置20)獲得的第一校正數(shù)據(jù)(例如,比特掩碼數(shù)據(jù)BM)校正初始獨(dú)有碼UCp中的錯誤,以生成中間獨(dú)有碼UCb。在第一實(shí)施例中,中間獨(dú)有碼UCb被輸出到ECC電路15并且還輸出到寫入裝置20。比特掩碼電路13中執(zhí)行的比特掩碼處理對應(yīng)于第一錯誤校正處理。ECC電路15校正中間獨(dú)有碼UCb中的錯誤以生成第一確定獨(dú)有碼UCm。更具體的,ECC電路15通過將預(yù)先保持的第二校正數(shù)據(jù)(例如,ECC碼)應(yīng)用到中間獨(dú)有碼UCb來校正中間獨(dú)有碼UCb中的錯誤,以生成第一確定獨(dú)有碼UCm。ECC電路15中執(zhí)行的通過ECC碼校正錯誤的處理對應(yīng)于第二錯誤校正處理。
存儲單元14將ECC電路15中使用的ECC碼存儲在半導(dǎo)體裝置10中。ECC碼是在制造所述半導(dǎo)體裝置時寫入的值。散列函數(shù)解密單元16通過利用第一確定獨(dú)有碼UCm對從外部接收的傳輸數(shù)據(jù)HF2進(jìn)行解密,以獲得保密信息(例如,散列函數(shù)HF I)。加密單元17加密要發(fā)送的信息。更具體地,加密單元17通過利用散列函數(shù)HFl作為加密密鑰進(jìn)行加密通信。具體地,加密單元17利用散列函數(shù)HFl對要發(fā)送的信息進(jìn)行加密,以生成加密信息并將加密信息輸出到外部。如圖I中所示,寫入裝置20具有存儲單元21、22和25,第三錯誤校正單元(例如,ECC電路23),有效性確定電路(例如,CRC電路24),以及加密單元(例如,散列函數(shù)加密單元26)。存儲單元21保持通過將標(biāo)識信息ID與第一校正數(shù)據(jù)(例如,比特掩碼數(shù)據(jù)BM)關(guān) 聯(lián)而獲得的信息(例如,標(biāo)識信息-掩碼比特對應(yīng)表)。存儲單元21從半導(dǎo)體裝置10讀取標(biāo)識信息ID,并參考標(biāo)識信息-掩碼比特對應(yīng)表選擇與標(biāo)識信息ID對應(yīng)的比特掩碼數(shù)據(jù)BM。存儲單元21將所選擇的比特掩碼數(shù)據(jù)BM發(fā)送到半導(dǎo)體裝置10。存儲單元21具有這樣的配置,即,其在不存在標(biāo)識信息ID時可以不發(fā)送比特掩碼數(shù)據(jù)BM到半導(dǎo)體裝置10。比特掩碼數(shù)據(jù)BM是指定初始獨(dú)有碼中要被掩碼的比特的數(shù)據(jù)。存儲單元22存儲所述ECC碼和CRC (循環(huán)冗余校驗(yàn))碼表。該ECC碼與半導(dǎo)體裝置10中的存儲單元14中存儲的ECC碼相同。CRC碼表預(yù)先與半導(dǎo)體裝置10所生成的第一確定獨(dú)有碼UCm對應(yīng)地生成。ECC電路23從存儲單元22讀取ECC碼,并對從半導(dǎo)體裝置10發(fā)送的中間獨(dú)有碼執(zhí)行利用所讀取的ECC碼的錯誤校正處理。也即,在ECC電路23中,執(zhí)行與半導(dǎo)體裝置10中的ECC電路15中的錯誤校正處理相同的錯誤校正處理。通過該處理,ECC電路23通過校正所述中間獨(dú)有碼UCb中的錯誤生成第二確定獨(dú)有碼UCw。第二確定獨(dú)有碼UCw被用作用于對要發(fā)送的保密信息進(jìn)行加密的密鑰信息。 CRC電路從存儲單元22中的CRC碼表讀取與第一確定獨(dú)有碼UCm對應(yīng)的CRC碼。CRC電路24利用該CRC碼校驗(yàn)第二確定獨(dú)有碼UCw中的錯誤。當(dāng)在第二確定獨(dú)有碼UCw中識別到錯誤時,CRC電路24確定第二確定獨(dú)有碼UCw無效。當(dāng)在第二確定獨(dú)有碼UCw中沒有檢測到錯誤時,確定第二確定獨(dú)有碼UCw有效。僅當(dāng)?shù)诙_定獨(dú)有碼UCw有效時,CRC電路24將第二確定獨(dú)有碼UCw輸出到后級上的電路。另一方面,在第二確定獨(dú)有碼UCw無效的情況下,CRC電路24執(zhí)行停止寫入裝置20的操作的處理。當(dāng)確定第二確定獨(dú)有碼UCw無效時,CRC電路24可以以預(yù)定次數(shù)為限重復(fù)對第二確定獨(dú)有碼UCw的錯誤校驗(yàn),直到該碼被確定為有效。作為保密信息的散列函數(shù)HFl被存儲在存儲單元25中。散列函數(shù)加密單元26從存儲單元25讀取散列函數(shù)HFl,并利用第二確定獨(dú)有碼UCw加密散列函數(shù)HFl,以生成傳輸數(shù)據(jù)HF2。散列函數(shù)加密單元26將傳輸數(shù)據(jù)HF2發(fā)送到半導(dǎo)體裝置10。將說明根據(jù)第一實(shí)施例的半導(dǎo)體裝置和外部裝置所生成的確定獨(dú)有碼。圖2是示出了根據(jù)第一實(shí)施例的半導(dǎo)體裝置以及外部裝置生成的確定獨(dú)有碼的示例的表。首先,半導(dǎo)體裝置10從獨(dú)有碼生成單元12生成初始獨(dú)有碼UCp (圖2中的(I))。接著,比特掩碼電路13利用比特掩碼數(shù)據(jù)BM執(zhí)行對初始獨(dú)有碼UCp上的預(yù)定比特進(jìn)行掩碼的比特掩碼處理。比特掩碼數(shù)據(jù)BM是指定初始獨(dú)有碼中要被掩碼的比特的數(shù)據(jù)。通過初始獨(dú)有碼UCp的比特的誤比特率確定要被掩碼的比特。在該實(shí)施例中,將初始獨(dú)有碼UCp中的具有高錯誤率的比特設(shè)置作為在比特掩碼數(shù)據(jù)BM中指定作為要被掩碼的比特的比特。在圖2中的示例中,初始獨(dú)有碼UCp中的第一和第六比特具有高錯誤率,從而比特掩碼數(shù)據(jù)BM是“ O ”。由于其它比特是具有低錯誤率或具有穩(wěn)定值的比特,因此比特掩碼數(shù)據(jù)BM是“ I ”。也即,必須被掩碼的比特的比特掩碼數(shù)據(jù)BM是“O”,而不是必須被掩碼的比特的掩碼數(shù)據(jù)是“ I ”。通過利用比特掩碼數(shù)據(jù)BM對初始獨(dú)有碼UCp進(jìn)行掩碼,可以獲得經(jīng)受了刪除初始獨(dú)有碼UCp中的第一和第六比特的掩碼處理的數(shù)據(jù)(諸如,中間獨(dú)有碼UCb)(通過“X”指示通過掩碼處理刪除的比特)。在之后,將通過掩碼處理生成的中間獨(dú)有碼UCb左對齊。這種情況下的錯誤率是每次生成初始獨(dú)有碼UCp時比特的數(shù)據(jù)以預(yù)定的高的可能性改變“O”或“I”的值,并且初始獨(dú)有碼UCp還包括低錯誤率的比特。接著,利用ECC碼(錯誤校驗(yàn)和校正碼)校正所述中間獨(dú)有碼UCb中的錯誤。在圖2中所示的示例中,通過利用ECC碼的錯誤校正處理(下文中,稱作ECC處理),將第二比特從“O”校正為“ I”。通過ECC處理生成的獨(dú)有碼是第一確定獨(dú)有碼UCm或第二確定獨(dú)有碼 UCw0將說明根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I中的寫入裝置20和半導(dǎo)體裝置10的操作。圖3是示出根據(jù)第一實(shí)施例的半導(dǎo)體裝置10以及寫入裝置20的操作的順序圖。如圖3中所示,在根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I中,首先,寫入裝置20從半導(dǎo)體裝置10獲取標(biāo)識信息ID (步驟SI)。寫入裝置20從存儲單元21中的數(shù)據(jù)中選擇與接收到的標(biāo)識信息ID對應(yīng)的比特掩碼數(shù)據(jù)BM (步驟S2)。隨后,寫入裝置20將所選擇的比特掩碼數(shù)據(jù)BM發(fā)送到半導(dǎo)體裝置10 (步驟S3)。半導(dǎo)體裝置10利用從寫入裝置20接收的比特掩碼數(shù)據(jù)BM對初始獨(dú)有碼UCp執(zhí)行比特掩碼處理以生成中間獨(dú)有碼UCb (步驟S4)。在此之后,半導(dǎo)體裝置10將中間獨(dú)有碼UCb發(fā)送到該半導(dǎo)體裝置中的ECC電路15和寫入裝置20 (步驟S6)。在半導(dǎo)體裝置10中,ECC電路15將存儲單元14中存儲ECC碼應(yīng)用到中間獨(dú)有碼UCb,并執(zhí)行校正所述中間獨(dú)有碼UCb中的錯誤的處理。ECC電路15生成第一確定獨(dú)有碼UCm (步驟 S5)。另一方面,在寫入裝置20中,ECC電路23將存儲單元22中存儲的ECC碼應(yīng)用到中間獨(dú)有碼UCb,并執(zhí)行校正所述中間獨(dú)有碼UCb中的錯誤的處理。ECC電路23生成第二確定獨(dú)有碼UCw (步驟S7)。隨后,寫入裝置20通過利用存儲單元22中存儲的CRC碼驗(yàn)證第二確定獨(dú)有碼UCw的有效性(步驟S8)。在其中在步驟S8確定第二確定獨(dú)有碼UCw有效的情況下,散列函數(shù)加密單元26通過應(yīng)用CRC電路24的第二確定獨(dú)有碼UCw來利用第二確定獨(dú)有碼UCw加密散列函數(shù)HFl,以生成傳輸數(shù)據(jù)HF2(步驟S9)。寫入裝置20將生成的傳輸數(shù)據(jù)HF2發(fā)送到半導(dǎo)體裝置10 (步驟S10)。在其中在步驟S8確定第二確定獨(dú)有碼UCw無效的情況下,寫入裝置20停止該處理。隨后,半導(dǎo)體裝置10利用在步驟S5中生成的第一確定獨(dú)有碼UCm對接收的傳輸數(shù)據(jù)HF2進(jìn)行解密,以生成散列函數(shù)HFl (步驟S11)。半導(dǎo)體裝置10利用散列函數(shù)HFl開始與另一半導(dǎo)體裝置的加密通信(步驟S12)。在根據(jù)第一實(shí)施例的半導(dǎo)體裝置中,通過從寫入裝置20獲得加密的保密信息(例如,散列函數(shù)HFl)并利用該半導(dǎo)體裝置中生成的第一確定獨(dú)有碼UCm對傳輸數(shù)據(jù)HF2解密,可以獲得可用的散列函數(shù)HF1。通過將加密信息應(yīng)用作為要從寫入裝置20發(fā)送到半導(dǎo)體裝置10的數(shù)據(jù),保持了對保密信息的安全性,并且可以將該保密信息寫入在半導(dǎo)體裝置10中。然而,僅通過應(yīng)用相關(guān)領(lǐng)域中的一般的加密通信來將保密信息寫入到半導(dǎo)體裝置10,存在不能保持安全性的問題。作為一般性的加密通信技術(shù),存在向發(fā)送保密信息的發(fā)送側(cè)裝置提供公開密鑰并向接收保密信息的接收側(cè)裝置提供秘密密鑰的公開密鑰方法,以及在執(zhí)行通信的裝置之間利用共用密鑰的共用密鑰方法。在采用公開密鑰方法作為加密方法的情況下,秘密密鑰預(yù)先存儲在作為接收側(cè)裝置的半導(dǎo)體裝置中,而公開密鑰必須預(yù)存儲在作為發(fā)送側(cè)裝置的寫入裝置中。在采用公開密鑰方法的情況下,不需要在半導(dǎo)體裝置和寫入裝置之間接收/發(fā)送密鑰信息,從而存在能夠防止半導(dǎo)體裝置和寫入裝置之間的通信中的密鑰信息泄漏的優(yōu)點(diǎn)。然而,由于半導(dǎo)體裝置的分布量比寫入裝置的分布量大得多,因此該半導(dǎo)體裝置在秘密密鑰的管理方面存在問題。在采用共用密鑰方法作為加密方法的情況下,通過在半導(dǎo)體裝置和寫入裝置兩者中預(yù)存儲共用密鑰,存在能夠防止半導(dǎo)體裝置和寫入裝置之間的通信中的密鑰信息泄漏的優(yōu)點(diǎn)。然而,在采用共用密鑰方法的情況下,存在必須在半導(dǎo)體裝置和寫 入裝置兩者中都采取防止共用密鑰泄漏的措施的問題。在采用公開密鑰方法的情況下,除防止密鑰信息泄漏的一般措施以外,還存在這樣的情況還需要防止寫入裝置的竊取的措施。尤其是,在半導(dǎo)體裝置10是安裝在車輛上的車輛內(nèi)半導(dǎo)體裝置情況下,難以完全維持上述的安全措施。對于車輛維護(hù)通常是必要的,和在維護(hù)中,存在維護(hù)人員操作寫入裝置的情況。存在任何維護(hù)人員是攻擊者的風(fēng)險。由于寫入裝置不僅設(shè)置在車制造方的工廠中而且還設(shè)置在車銷售方等等處,因此難以完全地在所有場所中防止寫入裝置的竊取。分析一般的半導(dǎo)體裝置并非法地獲得數(shù)據(jù)的方法包括(I)利用FIB (聚焦離子束)處理半導(dǎo)體裝置并利用探針物理地分析半導(dǎo)體裝置的方法;(2)通過用電磁波(諸如,激光束)照射半導(dǎo)體裝置或在電源端子中制造噪聲來使CPU失控來非法獲取數(shù)據(jù)的故障樹分析;(3)觀察半導(dǎo)體裝置的消耗電流量并分析密鑰數(shù)據(jù)的泄露分析;以及(4)直接耦接到半導(dǎo)體裝置的信號端子來讀取信號信息的方法。為了避免這樣的非法分析,在要求高安全級別的場合中,使用具有高安全級別的微型計算機(jī)(下文中,稱作安全微型計算機(jī))。安全微型計算機(jī)設(shè)置有對布線區(qū)域的屏蔽、檢測光和信號噪聲的功能、通過將隨機(jī)數(shù)信號與信號組合而使電流發(fā)散的功能等。如上所述的,通過利用安全微型計算機(jī),能夠防止第三方對半導(dǎo)體裝置的非法分析。然而,在利用安全微型計算機(jī)的情況下,盡管能夠防止非法分析,但是出現(xiàn)這樣的問題由于防篡改特性使得半導(dǎo)體裝置制造商等不能夠執(zhí)行故障分析和擊穿分析。尤其是,由于用在車中車輛內(nèi)微型計算機(jī)(諸如ECU)需要高可靠性,因此對半導(dǎo)體裝置的故障分析和擊穿分析是必要的。出于這樣的原因,其安全級別比安全微型計算機(jī)低的一般性微型計算機(jī)(下文中,稱作一般性微型計算機(jī))廣泛用作車輛內(nèi)微型計算機(jī)。在現(xiàn)有技術(shù)的車輛內(nèi)微型計算機(jī)中,需要利用一般性微型計算機(jī)同時具有改善的安全級別的半導(dǎo)體裝置的加密通信系統(tǒng)。通過根據(jù)第一實(shí)施例的半導(dǎo)體裝置和將數(shù)據(jù)寫入到該半導(dǎo)體裝置的方法,能夠解決該問題。在根據(jù)第一實(shí)施例的半導(dǎo)體裝置10中,對初始獨(dú)有碼UCp執(zhí)行第一錯誤校正處理(例如,比特掩碼處理)以生成中間獨(dú)有碼UCb。根據(jù)第一實(shí)施例的半導(dǎo)體裝置10將中間獨(dú)有碼UCb發(fā)送到半導(dǎo)體裝置10中的ECC電路15,并且還發(fā)送到寫入裝置20。在半導(dǎo)體裝置10中,在ECC電路15中對中間獨(dú)有碼UCb執(zhí)行第二錯誤校正處理(例如,利用ECC碼的錯誤校正處理)以生成第一確定獨(dú)有碼UCm。寫入裝置20通過ECC電路23對中間獨(dú)有碼UCb執(zhí)行與第二錯誤校正處理相同的錯誤校正處理以生成第二確定獨(dú)有碼UCw,并利用第二確定獨(dú)有碼UCw作為密鑰信息加密散列函數(shù)HFl以生成傳輸數(shù)據(jù)HF2。半導(dǎo)體裝置10利用第一確定獨(dú)有碼UCm解密傳輸數(shù)據(jù)HF2以生成散列函數(shù)HF1。也即,為了獲得來自寫入裝置20的散列函數(shù)HF1,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10并不需要在與寫入裝置20的通信中直接發(fā)送/接收密鑰信息。因此,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10能夠防止作為保密信息的散列函數(shù)HFl和用于對該散列函數(shù)HFl進(jìn)行加密/解密處理的密鑰信息的泄漏,并且能夠增強(qiáng)安全性。根據(jù)第一實(shí)施例的半導(dǎo)體裝置10從初始獨(dú)有碼UCp (例如PUF)生成用于散列函 數(shù)HFl的解密的密鑰信息。在從初始獨(dú)有碼UCp生成密鑰信息的情況下,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10須利用第一校正數(shù)據(jù)(例如,比特掩碼數(shù)據(jù)BM)和第二校正數(shù)據(jù)(例如,ECC數(shù)據(jù))。然而,在根據(jù)第一實(shí)施例的半導(dǎo)體裝置中,比特掩碼數(shù)據(jù)BM是從半導(dǎo)體裝置10的外部給定的。因此,在根據(jù)第一實(shí)施例的半導(dǎo)體裝置中,即使在通過非法分析等動作發(fā)現(xiàn)ECC碼和初始獨(dú)有碼UCp時,也不能夠確定第一確定獨(dú)有碼UCm。因此,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10能夠防止由非法訪問導(dǎo)致的密鑰信息泄漏,并實(shí)現(xiàn)高安全性。在第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I中,在寫入裝置20不有與半導(dǎo)體裝置10的識別信息ID對應(yīng)的比特掩碼數(shù)據(jù)BM時,比特掩碼數(shù)據(jù)BM不發(fā)送到半導(dǎo)體裝置10。因此,即使假冒的寫入裝置發(fā)送具有惡意的假冒的散列函數(shù)到半導(dǎo)體裝置10,在半導(dǎo)體裝置10中僅生成與原始第一確定獨(dú)有碼UCm不同的假冒的第一確定獨(dú)有碼,并且半導(dǎo)體裝置10不能夠正常地生成散列函數(shù)。另外,在寫入裝置是假冒的情況下ECC碼不同于原始ECC碼,從而寫入裝置側(cè)上生成的第二確定獨(dú)有碼UCw與半導(dǎo)體裝置側(cè)上生成的第一確定獨(dú)有碼UCm不匹配。出于這樣的原因,假冒的寫入裝置生成的傳輸數(shù)據(jù)不能夠在半導(dǎo)體裝置側(cè)上正常地執(zhí)行解密處理。因此,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10能夠防止來自假冒的寫入裝置的具有惡意的散列函數(shù)的寫入。在根據(jù)第一實(shí)施例的半導(dǎo)體裝置10中,即使在由于非法訪問而發(fā)生半導(dǎo)體裝置10中存儲的數(shù)據(jù)(諸如,標(biāo)識信息ID、初始獨(dú)有碼UCp、和ECC碼)泄漏的情況下,也不能夠通過泄漏的數(shù)據(jù)識別出作為保密信息的散列函數(shù)HFl或用于解密散列函數(shù)HFl的處理的第一確定獨(dú)有碼UCm。因此,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10能夠通過一般性微型計算機(jī)等實(shí)現(xiàn)而無需利用諸如安全微型計算機(jī)的昂貴的半導(dǎo)體裝置。另外,由于半導(dǎo)體裝置10能夠通過一般性微型計算機(jī)實(shí)現(xiàn),因此常規(guī)維護(hù)人員能夠容易地分析半導(dǎo)體裝置10中的故障。在根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I中,在半導(dǎo)體裝置10和寫入裝置20之間的通信中,發(fā)送/接收數(shù)據(jù)是半導(dǎo)體裝置10的標(biāo)識信息ID、生成第一確定獨(dú)有碼UCm所需的多個校正數(shù)據(jù)之一,要經(jīng)受錯誤校正處理的第一確定獨(dú)有碼UCm (也即,中間獨(dú)有碼UCb)、和加密的散列函數(shù)HFl (也即,傳輸數(shù)據(jù)HF2)。在根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I中,在半導(dǎo)體裝置10和寫入裝置20之間的通信中,不直接發(fā)送/接收作為保密信息的散列函數(shù)HFl和用于解密的第一確定獨(dú)有碼UCm。因此,在根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I中,即使在半導(dǎo)體裝置10和寫入裝置20之間的通信路徑上進(jìn)行信號的截取的情況下,也不會泄漏保密數(shù)據(jù)或直接用于再現(xiàn)保密信息的數(shù)據(jù)。因此,根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I能夠?qū)崿F(xiàn)半導(dǎo)體裝置10和寫入裝置20之間的通信路徑上的高安全性。在根據(jù)第一實(shí)施例的半導(dǎo)體裝置10和寫入裝置20中,通過比較第一確定獨(dú)有碼UCm和第二確定獨(dú)有碼UCw的處理,能夠執(zhí)行半導(dǎo)體裝置10和寫入裝置20之間的認(rèn)證(authentication)。也即,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10和寫入裝置20能夠執(zhí)行認(rèn)證處理而不執(zhí)行復(fù)雜的計算(諸如,RSA加密)。因此,根據(jù)第一實(shí)施例的半導(dǎo)體裝置10和寫入裝置20能夠僅通過簡單計算處理實(shí)現(xiàn)數(shù)據(jù)寫入系統(tǒng)I的高安全性。在根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I中,在寫入裝置20被竊取的情況下,存在寫入裝置20中存儲的比特掩碼數(shù)據(jù)BM和ECC碼泄漏的可能性。然而,僅通過泄漏的數(shù)據(jù)得 出第一確定獨(dú)有碼UCm是非常困難的。因此,根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I產(chǎn)生這樣的效果不需要在寫入裝置20上實(shí)現(xiàn)高級別的防竊取措施??紤]到防竊取措施,寫入裝置20中存儲的保密信息(例如,散列函數(shù)HFl)優(yōu)選在使用時輸入或保持在采取了信息泄漏防止措施的狀態(tài)。在根據(jù)第一實(shí)施例的寫入裝置20中,在耦接了假冒的半導(dǎo)體裝置的情況下,從假冒的半導(dǎo)體裝置發(fā)送到寫入裝置20的要經(jīng)受錯誤校正處理的第一確定獨(dú)有碼UCm (也即,中間獨(dú)有碼UCb)是不同的,從而寫入裝置中的ECC電路23生成的第二確定獨(dú)有碼UCw不能正確地生成。因此,通過CRC電路24執(zhí)行的有效性確定處理,可以發(fā)現(xiàn)該假冒的半導(dǎo)體裝置。也即,根據(jù)第一實(shí)施例的寫入裝置20可以防止半導(dǎo)體裝置10的贗品的擴(kuò)散。通常,半導(dǎo)體裝置10所使用的保密信息是半導(dǎo)體裝置10的用戶的保密事務(wù)。為了在半導(dǎo)體裝置中存儲這樣的保密事務(wù)同時保持高安全性,用戶必須預(yù)先向半導(dǎo)體制造商提供保密信息。從用戶的觀點(diǎn)來看,因此存在這樣的問題使得不能夠有效地執(zhí)行對保密信息的泄漏防止管理。然而,利用根據(jù)第一實(shí)施例的寫入裝置20和半導(dǎo)體裝置10,用戶能夠利用寫入裝置20直接寫入保密信息到半導(dǎo)體裝置10。也即,利用根據(jù)第一實(shí)施例的寫入裝置20和半導(dǎo)體裝置10,能夠改善用戶對保密信息的泄漏防止管理的確信性。另一方面,半導(dǎo)體制造商須將與半導(dǎo)體裝置10對應(yīng)的ECC碼和比特掩碼數(shù)據(jù)BM提供給用戶。然而,僅通過所提供的數(shù)據(jù)得出第一確定獨(dú)有碼UCm是非常困難的。也即,在半導(dǎo)體制造商中,也不需要對比特掩碼數(shù)據(jù)BM和ECC碼的高級別泄漏對策。上述的CRC電路可以用能夠執(zhí)行檢測待處理的數(shù)據(jù)中的錯誤或防止錯誤校正的處理的電路(諸如,奇偶校驗(yàn)電路)取代。ECC電路也可以用有能夠校正待處理數(shù)據(jù)中的錯誤的另一配置的電路取代。第二實(shí)施例圖4是根據(jù)第二實(shí)施例的半導(dǎo)體裝置30和外部裝置(例如,寫入裝置40)的框圖。如圖4中所示,在第二實(shí)施例中,數(shù)據(jù)寫入系統(tǒng)2由半導(dǎo)體裝置30和寫入裝置40配置成。在第二實(shí)施例的說明中,對于與第一實(shí)施例中的相同的部件,指定與第一實(shí)施例中的相同的附圖標(biāo)記,并且將不重復(fù)對其說明。如圖4中所示,半導(dǎo)體裝置30具有作為根據(jù)第一實(shí)施例的半導(dǎo)體裝置10中的第一數(shù)據(jù)校正單元的ECC電路31以及作為第二數(shù)據(jù)校正單元的比特掩碼電路33。在半導(dǎo)體裝置30中,比特掩碼數(shù)據(jù)BM被用作第二數(shù)據(jù)校正單元中使用的第二校正數(shù)據(jù)。在圖4中,存儲單元32被示出為存儲比特掩碼數(shù)據(jù)BM的區(qū)域。在圖4中,附圖標(biāo)記UCe被指派給由ECC電路31生成的中間獨(dú)有碼。如圖4中所示,隨著半導(dǎo)體裝置10變?yōu)榘雽?dǎo)體裝置30,生成第二確定獨(dú)有碼UCw的錯誤校正單元從ECC電路23變?yōu)楸忍匮诖a電路43。因此,寫入裝置40具有作為存儲比特掩碼數(shù)據(jù)和CRC碼表的區(qū)域的存儲單元42代替存儲單元22。在寫入裝置40中隨著半導(dǎo)體裝置中的第一錯誤校正單元從比特掩碼電路13變?yōu)镋CC電路31,與標(biāo)識信息ID相關(guān)聯(lián)的錯誤校正數(shù)據(jù)變?yōu)镋CC碼。因此,在寫入裝置40中,存儲標(biāo)識信息-ECC碼對應(yīng)表,代替標(biāo)識-掩碼比特對應(yīng)表。在圖4中,作為存儲標(biāo)識信息-ECC碼對應(yīng)表的區(qū)域,示出了存儲單元41。在接收標(biāo)識信息ID的情況下,存儲單元41輸出與該標(biāo)識信息ID對應(yīng)的ECC碼。ECC碼是一種與初始獨(dú)有碼UCp對應(yīng)地預(yù)先生成的碼。此外,通過利用ECC碼校正另一半導(dǎo)體裝置生成的中間獨(dú)有碼中的錯誤,所生成的確定獨(dú)有碼變得不同于半導(dǎo)體裝置10所生成的第一確定獨(dú)有碼UCm。將說明根據(jù)第二實(shí)施例的半導(dǎo)體裝置30以及寫入裝置40的操作。圖5是示出根 據(jù)第二實(shí)施例的半導(dǎo)體裝置30以及寫入裝置40的操作的順序圖。如圖5中所示,在根據(jù)第二實(shí)施例的數(shù)據(jù)寫入系統(tǒng)2中,首先,寫入裝置40從半導(dǎo)體裝置30獲得標(biāo)識信息ID (步驟S21)。寫入裝置40從存儲單元41中的數(shù)據(jù)中選擇與接收到的標(biāo)識信息ID對應(yīng)的ECC碼(步驟S22)。隨后,寫入裝置40將所選擇的ECC碼發(fā)送到半導(dǎo)體裝置30 (步驟S23)。半導(dǎo)體裝置30利用從寫入裝置40接收的ECC碼對初始獨(dú)有碼UCp執(zhí)行錯誤校正處理,以生成中間獨(dú)有碼UCe (步驟S24)。在此之后,半導(dǎo)體裝置30將中間獨(dú)有碼UCe發(fā)送到該半導(dǎo)體裝置中的比特掩碼電路33以及寫入裝置40 (步驟S26)。在半導(dǎo)體裝置30中,比特掩碼電路33將存儲單元32中存儲的比特掩碼數(shù)據(jù)BM應(yīng)用于該中間獨(dú)有碼UCe,并執(zhí)行校正中間獨(dú)有碼UCe中的錯誤的處理。比特掩碼電路33生成第一確定獨(dú)有碼UCm (步驟S25)。另一方面,在半導(dǎo)體裝置40,比特掩碼電路43將存儲單元42中存儲的比特掩碼數(shù)據(jù)BM應(yīng)用于該中間獨(dú)有碼UCe,并執(zhí)行校正中間獨(dú)有碼UCe中的錯誤的處理。比特掩碼電路43生成第二確定獨(dú)有碼UCw (步驟S27)。隨后,寫入裝置40將比特掩碼電路43生成的第二確定獨(dú)有碼發(fā)送到CRC電路24,并利用存儲在存儲單元42中的CRC碼驗(yàn)證第二確定獨(dú)有碼UCw的有效性(步驟S28)。在步驟S28中確定第二確定獨(dú)有碼UCw有效的情況下,寫入裝置40在散列函數(shù)加密單元26中利用第二確定獨(dú)有碼UCw加密散列函數(shù)HFl以生成傳輸數(shù)據(jù)HF2 (步驟S29)。寫入裝置40將生成的傳輸數(shù)據(jù)HF2發(fā)送到半導(dǎo)體裝置30 (步驟S30)。在其中在步驟S8確定第二確定獨(dú)有碼UCw無效的情況下,寫入裝置40停止該處理。隨后,半導(dǎo)體裝置30利用在步驟S25中生成的第一確定獨(dú)有碼UCm對接收的傳輸數(shù)據(jù)HF2進(jìn)行解密,以生成散列函數(shù)HFl (步驟S31)。半導(dǎo)體裝置30利用散列函數(shù)HFl開始與另一半導(dǎo)體裝置的加密通信(步驟S32)。如上所述的,在第二實(shí)施例中,第一錯誤校正處理和第二錯誤校正處理的順序與第一實(shí)施例中的相反。此外,在處理的順序相反的情況下,在半導(dǎo)體裝置30和寫入裝置40之間也不直接發(fā)送/接收密鑰信息和保密信息。因此,以與第一實(shí)施例類似的方式,在第二實(shí)施例中也防止了密鑰信息和保密信息泄漏,并且可以實(shí)現(xiàn)高的安全性。在半導(dǎo)體裝置30和寫入裝置40之間發(fā)送/接收的數(shù)據(jù)的基本性質(zhì)與第一實(shí)施例中的相同。因此,以與第一實(shí)施例類似的方式,在第二實(shí)施例中也可以改善在針對半導(dǎo)體裝置的仿造的措施、針對寫入裝置的竊取的措施,針對保密信息等的泄漏的措施方面的安全性。第三實(shí)施例圖6是根據(jù)第三實(shí)施例的半導(dǎo)體裝置50和外部裝置(例如,寫入裝置60)的框圖。如圖6中所示,在第三實(shí)施例中,數(shù)據(jù)寫入系統(tǒng)3由半導(dǎo)體裝置50和寫入裝置60配置成。在第三實(shí)施例的說明中,對于與第一實(shí)施例中的相同的部件,指定與第一實(shí)施例中的相同的附圖標(biāo)記,并且將不重復(fù)對其說明。如圖6中所示,根據(jù)第三實(shí)施例,半導(dǎo)體裝置60保持處于加密狀態(tài)的標(biāo)識-比特掩碼對應(yīng)表。在圖6中,具有加密的標(biāo)識信息-比特掩碼對應(yīng)表的區(qū)域被示出為存儲單元 61。在接收標(biāo)識信息ID的情況下,存儲單元61輸出與該標(biāo)識信息ID對應(yīng)的經(jīng)受了加密處理的比特掩碼數(shù)據(jù)BME。比特掩碼數(shù)據(jù)BME被例如通過共用密鑰方法加密。在數(shù)據(jù)被存儲在存儲單元61中之前執(zhí)行加密比特掩碼數(shù)據(jù)的處理。原因在于通過不在寫入裝置60中保持共用密鑰CK的信息,增加了比特掩碼數(shù)據(jù)的隱秘性。如圖6中所示,通過向根據(jù)第一實(shí)施例的半導(dǎo)體裝置10增加比特掩碼解密單元51而獲得根據(jù)第三實(shí)施例的半導(dǎo)體裝置50。比特掩碼解密單元51保持用于加密比特掩碼數(shù)據(jù)的共用密鑰CK的信息。比特掩碼解密單元51利用該共用密鑰CK對加密的比特掩碼數(shù)據(jù)BME進(jìn)行解密,以生成未加密的比特掩碼數(shù)據(jù)BM,并發(fā)送該比特掩碼數(shù)據(jù)BM到比特掩碼電路13。根據(jù)第三實(shí)施例的數(shù)據(jù)寫入系統(tǒng)3的操作僅在添加了比特掩碼數(shù)據(jù)解密處理這點(diǎn)上不同于根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I的操作。因此,在此將不對其進(jìn)行說明。如上所述的,根據(jù)第三實(shí)施例的寫入裝置60以加密的狀態(tài)保持用于半導(dǎo)體裝置50的第一錯誤校正處理的校正數(shù)據(jù)。因此,即使在寫入裝置60被竊取的情況下,根據(jù)第三實(shí)施例的寫入裝置60也具有增加的第一校正數(shù)據(jù)(例如,比特掩碼數(shù)據(jù))的隱秘性。標(biāo)識信息ID可以用作用于對存儲在存儲單元61中的比特掩碼數(shù)據(jù)進(jìn)行解密的密鑰。在這種情況下,半導(dǎo)體裝置50中的比特掩碼解密單元51不是必需的。存儲單元61將被正確解密的比特掩碼數(shù)據(jù)識別作為與該標(biāo)識信息ID對應(yīng)的數(shù)據(jù),并將解密的比特掩碼數(shù)據(jù)BM發(fā)送到半導(dǎo)體裝置50。第四實(shí)施例圖7是根據(jù)第四實(shí)施例的半導(dǎo)體裝置10和外部裝置的框圖。如圖7中所示,在第四實(shí)施例中,外部裝置由寫入裝置70和服務(wù)器73配置而成。在第四實(shí)施例中,數(shù)據(jù)寫入系統(tǒng)4由半導(dǎo)體裝置10、寫入裝置70、和服務(wù)器73配置而成。在第四實(shí)施例中,對于與第一實(shí)施例中的相同的部件指派與第一實(shí)施例中的相同的附圖標(biāo)記,并且將不重復(fù)對其說明。在第四實(shí)施例中,由服務(wù)器73生成要寫入在半導(dǎo)體裝置10中的傳輸數(shù)據(jù)HF2。半導(dǎo)體裝置10和服務(wù)器73經(jīng)由例如公共網(wǎng)絡(luò)彼此耦接。寫入裝置70中間介于半導(dǎo)體裝置10和服務(wù)器73之間的通信。寫入裝置70具有數(shù)據(jù)發(fā)送/接收單元71和72。數(shù)據(jù)發(fā)送/接收單元71是與半導(dǎo)體裝置10的接口電路,并且基于可以發(fā)送數(shù)據(jù)到半導(dǎo)體裝置10/從半導(dǎo)體裝置10接收數(shù)據(jù)的協(xié)議操作。數(shù)據(jù)發(fā)送/接收單元71執(zhí)行與數(shù)據(jù)發(fā)送/接收單元72的通信。數(shù)據(jù)發(fā)送/接收單元72基于發(fā)送數(shù)據(jù)到服務(wù)器73/從服務(wù)器73接收數(shù)據(jù)的協(xié)議操作。盡管在該實(shí)施例中寫入裝置70配置有兩個數(shù)據(jù)發(fā)送/接收單元,但是,寫入裝置70也可以配置有一個數(shù)據(jù)發(fā)送/接收單元。服務(wù)器73具有根據(jù)第一實(shí)施例的寫入裝置20的所有功能塊,并執(zhí)行與寫入裝置20的基本上相同的操作。如上所述的,在其中執(zhí)行到半導(dǎo)體裝置10的數(shù)據(jù)寫入處理的場所中,并不必須存在生成通過基于中間獨(dú)有碼UCb加密保密信息獲得的傳輸數(shù)據(jù)HF2的功能。在根據(jù)第四實(shí)施例的數(shù)據(jù)寫入系統(tǒng)4中,由服務(wù)器73執(zhí)行基于中間獨(dú)有碼UCb生成傳輸數(shù)據(jù)HF2的處理。服務(wù)器73可以安裝在任何場所中,只要在該場所中可以經(jīng)由公共網(wǎng)絡(luò)或?qū)S镁€路進(jìn)行通信即可。因此,服務(wù)器73可以安裝在其中半導(dǎo)體裝置10的用戶 (例如,車制造商可以直接管理該服務(wù)器73)的場所中,并且寫入裝置70可以安裝在維護(hù)廠等中。以這樣的方式,半導(dǎo)體裝置10的用戶可以更加直接地管理保密信息。即使在寫入裝置70被竊取的情況下,在寫入裝置70中也不存在要保持隱秘的信息,從而可以防止數(shù)據(jù)泄漏。因此,在根據(jù)第四實(shí)施例的數(shù)據(jù)寫入系統(tǒng)4中,相比其它實(shí)施例可以更加增加安全性。第五實(shí)施例圖8是根據(jù)第五實(shí)施例的半導(dǎo)體裝置10和外部裝置的框圖。如圖8中所示,在第五實(shí)施例中,外部裝置配置有寫入裝置74和服務(wù)器75。在該第五實(shí)施例中,數(shù)據(jù)寫入系統(tǒng)5配置有半導(dǎo)體裝置10、寫入裝置74、和服務(wù)器75。如圖8中所示,第五實(shí)施例是對第四實(shí)施例的修改。在下文中,將主要說明第四和第五實(shí)施例之間的不同點(diǎn)。根據(jù)第五實(shí)施例的數(shù)據(jù)寫入系統(tǒng)5具有如同寫入裝置70的寫入裝置74,其包括存儲比特掩碼數(shù)據(jù)BM的存儲單元21。根據(jù)第五實(shí)施例的數(shù)據(jù)寫入系統(tǒng)5還具有通過從服務(wù)器73消除存儲比特掩碼數(shù)據(jù)BM的存儲單元21而獲得的服務(wù)器75。也即,在該第五實(shí)施例中,生成通過基于中間獨(dú)有碼UCb對保密信息進(jìn)行加密獲得的傳輸數(shù)據(jù)HF2的根據(jù)第一實(shí)施例的寫入裝置20的配置被劃分到寫入裝置74和服務(wù)器75。此外,在劃分根據(jù)第一實(shí)施例的寫入裝置20的配置的情況下,根據(jù)第五實(shí)施例的數(shù)據(jù)寫入系統(tǒng)5可以執(zhí)行與根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)的相同的處理。也即,根據(jù)第五實(shí)施例的數(shù)據(jù)寫入系統(tǒng)5可以如同根據(jù)第一實(shí)施例的數(shù)據(jù)寫入系統(tǒng)I那樣實(shí)現(xiàn)高安全性。如同根據(jù)第四實(shí)施例的數(shù)據(jù)寫入系統(tǒng)4那樣,根據(jù)第五實(shí)施例的數(shù)據(jù)寫入系統(tǒng)5利用服務(wù)器作為外部裝置。因此,在該第五實(shí)施例中也可以如同第四實(shí)施例中那樣增加安全性。第六實(shí)施例圖9是根據(jù)第六實(shí)施例的半導(dǎo)體裝置80和外部裝置(例如,寫入裝置90)的框圖。如圖9中所示,根據(jù)第六實(shí)施例的數(shù)據(jù)寫入系統(tǒng)6配置有半導(dǎo)體裝置80和寫入裝置90。在第六實(shí)施例的說明中,對于與第一實(shí)施例中的相同部件指派與第一實(shí)施例中的相同的附圖標(biāo)記,將不重復(fù)對其說明。如圖9中所示,半導(dǎo)體裝置80是通過將信息存儲單元81加到根據(jù)第一實(shí)施例的半導(dǎo)體裝置10而獲得的。寫入裝置90是通過向根據(jù)第一實(shí)施例的寫入裝置20添加寫入信息生成單元91而獲得的。在根據(jù)第六實(shí)施例的數(shù)據(jù)寫入系統(tǒng)6中,寫入信息生成單元91生成通過將傳輸數(shù)據(jù)HF2和增加傳輸數(shù)據(jù)HF2的隱秘性的偽值Dd合并而獲得的寫入信息。半導(dǎo)體裝置80將通過寫入信息生成單元91生成的寫入信息保持在寫入信息存儲單元81中,并且利用第一確定獨(dú)有碼UCm從寫入信息存儲單元81讀取傳輸數(shù)據(jù)HF2。在下文中,將特別說明寫入信息存儲單元81和寫入信息生成單元91。寫入信息存儲單元81具有獨(dú)有碼對應(yīng)信息生成單元(例如,摘要(digest)生成單元82)、存儲器區(qū)域83、和存儲器控制器84。摘要生成單元82根據(jù)第一確定獨(dú)有碼UCm生成獨(dú)有碼對應(yīng)信息(例如,摘要值Dim)。在第六實(shí)施例中,摘要生成單元82用作獨(dú)有碼對應(yīng)信息生成單元。作為獨(dú)有碼對應(yīng)信息生成單元,可以使用只要其根據(jù)第一確定獨(dú)有碼UCm生成與地址值唯一對應(yīng)的信息的任何電路,以及在摘要生成單元的算法以外的算法下操作的電路。在存儲器區(qū)域83中,通過對保密信息進(jìn)行加密而獲得的傳輸數(shù)據(jù)HF2被存儲在與摘要值DIm相關(guān)聯(lián)的區(qū)域(例如,在摘要值DIm是待訪問地址的情況下,由摘要值DIm指示 的區(qū)域)中。存儲器區(qū)域83被非易失性存儲器,諸如,閃存存儲器,并且是即使在電源中斷時也保持所存儲的信息的存儲裝置。存儲器控制器84基于摘要值DIm生成用于訪問存儲器區(qū)域83的地址,并從與該地址對應(yīng)的區(qū)域中讀取信息。在存在來自寫入裝置90的寫入指令的情況下,存儲器控制器84根據(jù)該寫入指令在存儲器區(qū)域83中寫入信息。更具體地,由寫入裝置90生成存儲在寫入信息存儲單元81中的傳輸數(shù)據(jù)HF2。在寫入傳輸數(shù)據(jù)HF2時,寫入裝置90通過合并偽值Dd和傳輸數(shù)據(jù)HF2而發(fā)布寫入指令。對于存儲傳輸數(shù)據(jù)HF2的區(qū)域,寫入裝置90指定第二確定獨(dú)有碼UCw的摘要值DIw作為傳輸數(shù)據(jù)HF2的寫入地址。利用由半導(dǎo)體裝置80的摘要生成單元82根據(jù)第一確定獨(dú)有碼UCm生成的摘要值DIm作為讀取地址,存儲器控制器84讀取傳輸數(shù)據(jù)HF2。寫入信息生成單元91具有摘要生成單元92、偽值生成電路93、選擇器94和緩沖器95。摘要生成單元92通過與摘要生成單元82的相同的算法根據(jù)第二確定獨(dú)有碼UCw唯一地生成摘要值DIw。在半導(dǎo)體裝置80是合法的產(chǎn)品時,供給給摘要生成單元92的第二確定獨(dú)有碼UCw與供給給摘要生成單元92的第一確定獨(dú)有碼UCm相同。也即,由摘要生成單元92生成的摘要值DIw與由半導(dǎo)體裝置80的摘要生成單元82生成的摘要值DIm相同。偽值生成電路93生成偽值Dd,其被與傳輸數(shù)據(jù)HF2 —起寫入在半導(dǎo)體裝置80的存儲器區(qū)域83中。偽值Dd是通過對與散列函數(shù)HFl不同的值進(jìn)行加密而獲得的假的加密信息。選擇器94是選擇要寫入在緩沖器95中的信息的電路。緩沖器95是臨時地存儲偽值Dd和傳輸數(shù)據(jù)HF2的存儲裝置。緩沖器95是例如非易失性存儲器,諸如,DRAM (動態(tài)隨機(jī)存取存儲器)。緩沖器95優(yōu)選是具有與半導(dǎo)體裝置80的存儲器區(qū)域83的相同容量的存儲裝置。更具體地,在將傳輸數(shù)據(jù)HF2寫入到緩沖器95時,選擇器94通過與在半導(dǎo)體裝置80的存儲器控制器84利用摘要值DIw執(zhí)行讀取操作時相同的算法將信息寫入到緩沖器95。例如,在寫入裝置90中,選擇器94將傳輸數(shù)據(jù)HF2寫入在緩沖器95的區(qū)域中的由摘要值DIw所指示的地址的區(qū)域中,并將偽值Dd寫入到緩沖器95中的由另一地址所指示的區(qū)域。寫入裝置90通過合并存儲在緩沖器95中的信息發(fā)布待發(fā)送到半導(dǎo)體裝置80的指令?,F(xiàn)在將說明根據(jù)第六實(shí)施例的半導(dǎo)體裝置80和寫入裝置90的操作。圖10是示出根據(jù)第六實(shí)施例的半導(dǎo)體裝置80和寫入裝置90的操作的順序圖。如圖10中所示,在根據(jù)第六實(shí)施例的數(shù)據(jù)寫入系統(tǒng)6中,首先,寫入裝置90從半導(dǎo)體裝置80獲得標(biāo)識信息ID (步驟S41)。寫入裝置90從存儲單元21中的數(shù)據(jù)中選擇與接收到的標(biāo)識信息ID對應(yīng)的比特掩碼數(shù)據(jù)BM (步驟S42)。隨后,寫入裝置90將所選擇的比特掩碼數(shù)據(jù)BM發(fā)送到半導(dǎo)體裝置80 (步驟S43)。半導(dǎo)體裝置80利用從寫入裝置90接收的比特掩碼數(shù)據(jù)BM對初始獨(dú)有碼UCp執(zhí)行比特掩碼處理,以生成中間獨(dú)有碼UCb (步驟S44)。在此之后,半導(dǎo)體裝置80將中間獨(dú)有碼UCb發(fā)送到ECC電路15和寫入裝置90 (步驟S46)。 在半導(dǎo)體裝置80中,ECC電路15將存儲單元14中存儲ECC碼應(yīng)用到中間獨(dú)有碼UCb,并執(zhí)行校正所述中間獨(dú)有碼UCb中的錯誤的處理。ECC電路15生成第一確定獨(dú)有碼UCm (步驟 S45)。另一方面,在寫入裝置90中,ECC電路23將存儲單元22中存儲的ECC碼應(yīng)用到中間獨(dú)有碼UCb,并執(zhí)行校正所述中間獨(dú)有碼UCb中的錯誤的處理。ECC電路23生成第二確定獨(dú)有碼UCw (步驟S47)。隨后,寫入裝置90通過利用存儲單元22中存儲的CRC碼驗(yàn)證第二確定獨(dú)有碼UCw的有效性(步驟S48)。在步驟S48中確定第二確定獨(dú)有碼UCw有效的情況下,寫入裝置90利用第二確定獨(dú)有碼UCw加密散列函數(shù)HFl以生成傳輸數(shù)據(jù)HF2 (步驟 S49)。隨后,寫入裝置90在偽值生成電路93中生成偽值Dd(步驟S50)。寫入裝置90還在摘要生成單元92中根據(jù)第二確定獨(dú)有碼UCw生成摘要值DIw (步驟S51)。寫入裝置90合并偽值Dd和傳輸數(shù)據(jù)HF2,并將合并的數(shù)據(jù)存儲在緩沖器95中(步驟S52)。在此之后,寫入裝置90發(fā)送偽值Dd和傳輸數(shù)據(jù)HF2到半導(dǎo)體裝置80 (步驟S53)。隨后,半導(dǎo)體裝置80將寫入裝置90生成的傳輸數(shù)據(jù)HF2和偽值Dd存儲到存儲器區(qū)域83中(步驟S54)。在此之后,半導(dǎo)體裝置80在摘要生成單元82中利用第一確定獨(dú)有碼UCm生成摘要值DIm (步驟S55)。半導(dǎo)體裝置80從存儲器區(qū)域83中由與摘要值DIm對應(yīng)的地址指示的區(qū)域讀取傳輸數(shù)據(jù)HF2,并利用在步驟S45中生成的第一確定獨(dú)有碼UCm解密傳輸數(shù)據(jù)HF2以生成散列函數(shù)HFl (步驟S56)。半導(dǎo)體裝置80利用散列函數(shù)HFl開始與另一半導(dǎo)體裝置的加密通信(步驟S57)。在根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中,加密的傳輸數(shù)據(jù)HF2存儲在這樣的區(qū)域中,該區(qū)域與根據(jù)第一確定獨(dú)有碼UCm生成的獨(dú)有碼對應(yīng)信息(例如,摘要值Dim)相關(guān)聯(lián)的區(qū)域有關(guān)。結(jié)果,在半導(dǎo)體裝置80中,傳輸數(shù)據(jù)HF2存儲在這樣的區(qū)域中,該區(qū)域在裝置之間改變,從而使得存儲傳輸數(shù)據(jù)HF2的該區(qū)域本身可以相對于攻擊者隱藏。因此,存儲在根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中的傳輸數(shù)據(jù)HF2的安全性可以得到改善。在根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中,可以改善安全性而無需使用安全微型計算機(jī)。在根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中,傳輸數(shù)據(jù)HF2存儲在作為可以由CPU (中央處理單元)等訪問的區(qū)域的存儲器區(qū)域中。然而,所存儲的傳輸數(shù)據(jù)HF2是利用具有與第一確定獨(dú)有碼UCm相同的值的第二確定獨(dú)有碼UCw加密的信息。在根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中,根據(jù)需要生成散列函數(shù)HF1。因此,在維護(hù)等時,具有與作為傳輸數(shù)據(jù)HF2原始信息的散列函數(shù)HFl對應(yīng)的加密密鑰的維護(hù)人員可以分析散列函數(shù)HFl中的故障。另一方面,即使在攻擊者能夠讀取傳輸數(shù)據(jù)HF2的情況下,攻擊者也不能夠理解傳輸數(shù)據(jù)HF2加密的算法,從而攻擊者不能夠從傳輸數(shù)據(jù)HF2解密出散列函數(shù)HF1。也即,在根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中,能夠改善安全性而不犧牲對作為保密信息的散列函數(shù)HFl的保護(hù)性。在該根據(jù)第六實(shí)施例的數(shù)據(jù)寫入系統(tǒng)6中,通過利用系統(tǒng)本身的獨(dú)有碼UCw加密散列函數(shù)HF1,生成傳輸數(shù)據(jù)HF2。因此,在解密該傳輸數(shù)據(jù)HF2時,對于根據(jù)第六實(shí)施例的半導(dǎo)體裝置80僅使用自身的第一確定獨(dú)有碼UCm足以,并且不需要通過耦接到服務(wù)器的數(shù)據(jù)庫等來獲取加密密鑰以用于解密。也即,根據(jù)第六實(shí)施例的半導(dǎo)體裝置80不需要對于到服務(wù)器等的耦接的安全措施。
另外,在根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中,作為存儲傳輸數(shù)據(jù)HF2的存儲器區(qū)域的容量,不需要確保大于寫入裝置90的緩沖器95的容量。因此,能夠有效地使用根據(jù)第六實(shí)施例的半導(dǎo)體裝置80中的存儲器區(qū)域。在第六實(shí)施例中,在合并偽數(shù)據(jù)Dd和傳輸數(shù)據(jù)HF2的狀態(tài)下執(zhí)行從寫入裝置90到半導(dǎo)體裝置80的寫入。以這樣的方式,即使在對從寫入裝置90到半導(dǎo)體裝置80的通信路徑進(jìn)行攻擊(諸如,側(cè)信道攻擊)的情況下,攻擊者也不能夠區(qū)分偽值Dd和傳輸數(shù)據(jù)HF2。在散列函數(shù)HFl的信息從寫入裝置90發(fā)送到半導(dǎo)體裝置80時,發(fā)送通過加密該散列函數(shù)HFl獲得的傳輸數(shù)據(jù)HF2。因此,即使在攻擊者能夠確定傳輸數(shù)據(jù)HF2時,只要加密算法未知,攻擊者就不能獲得散列函數(shù)HFl。從這樣的觀點(diǎn)來看,根據(jù)第六實(shí)施例的半導(dǎo)體裝置80和寫入裝置90也能夠改善對作為保密信息的散列函數(shù)HFl的安全性。第七實(shí)施例圖11是根據(jù)第七實(shí)施例的半導(dǎo)體裝置100和外部裝置(例如,寫入裝置200)的框圖。如圖11中所示,根據(jù)第七實(shí)施例的數(shù)據(jù)寫入系統(tǒng)7配置有半導(dǎo)體裝置100和寫入裝置200。半導(dǎo)體裝置100是通過將根據(jù)第一實(shí)施例的半導(dǎo)體裝置I的加密單元17改變?yōu)橥ㄐ盘幚韱卧?01而獲得的。由于半導(dǎo)體裝置100中的解密單元解密寫入數(shù)據(jù),因此該解密單元被示出作為數(shù)據(jù)解密單元16。通信處理單元101具有存儲單元。通過由數(shù)據(jù)解密單元16對接收數(shù)據(jù)執(zhí)行解密處理而獲得的寫入數(shù)據(jù)DAl被存儲在該存儲單元中。通信處理單元101是使用存儲在存儲單元中的寫入數(shù)據(jù)操作的電路。寫入裝置200使寫入數(shù)據(jù)DAl代替散列函數(shù)HFl作為保密信息被寫入。在圖11中,示出了存儲寫入數(shù)據(jù)DAl的存儲單元225。在圖11中,數(shù)據(jù)加密單元226被示出為利用第二確定獨(dú)有碼UCw加密寫入數(shù)據(jù)DAl以生成傳輸數(shù)據(jù)DA2的電路。由于數(shù)據(jù)加密單元226的操作與第一實(shí)施例中的散列函數(shù)加密單元26的操作基本上相同,因此將不對其進(jìn)行說明。在第七實(shí)施例中,將說明使用寫入在半導(dǎo)體裝置中的信息的方法。更具體地,將說明使用存儲的寫入數(shù)據(jù)DAl操作的通信處理單元101 (或半導(dǎo)體裝置)的示例。圖12示出了配置有半導(dǎo)體裝置的加密通信系統(tǒng)8的示例,其中,通過圖7中所示的數(shù)據(jù)寫入系統(tǒng)7寫入寫入數(shù)據(jù)DA1。在圖12中所示的示例中,假設(shè)被接收作為保密信息的寫入數(shù)據(jù)包括獨(dú)有的校正數(shù)據(jù)和算法表示信息,該獨(dú)有的校正數(shù)據(jù)是對裝置獨(dú)有的值并且用于校正包含以隨機(jī)比特形式的錯誤的獨(dú)有碼中的錯誤,所述算法表示信息用于從經(jīng)受錯誤校正的初始獨(dú)有碼生成加密密鑰。圖12中所示的半導(dǎo)體裝置的電路塊的配置對應(yīng)于通信處理單元101的配置的示例。如圖12中所示,根據(jù)第七實(shí)施例的加密通信系統(tǒng)8具有半導(dǎo)體裝置ICa (110)和半導(dǎo)體裝置ICb(120)。半導(dǎo)體裝置110具有獨(dú)有碼生成單元111、存儲單元112、共用密鑰生成單元113、和加密單元114。獨(dú)有碼生成單元111生成對于半導(dǎo)體裝置110獨(dú)有的獨(dú)有碼UC (a),并將其輸出到共用密鑰生成單元113。獨(dú)有碼生成單元111生成的獨(dú)有碼UC(a)具有與半導(dǎo)體裝置I中的獨(dú)有碼生成單元12生成的初始獨(dú)有碼相同的性質(zhì)。因此,可以使用獨(dú)有碼生成單元12代替該獨(dú)有碼生成單元111。
存儲單元112能夠存儲校正數(shù)據(jù)⑶(a)、共用密鑰生成單元113生成的共用密鑰CK (a)、以及半導(dǎo)體裝置120的公開密鑰PK (b)。校正數(shù)據(jù)CD(a)對應(yīng)于寫入在半導(dǎo)體裝置ICa中的寫入數(shù)據(jù)。存儲單元112具有例如易失性存儲器和非易失性存儲器。校正數(shù)據(jù)CD (a)和公開密鑰PK (b)被存儲在非易失性存儲器中,而共用密鑰CK (a)被存儲在易失性存儲器中。因此,存儲單元112臨時地存儲共用密鑰CK (a),并且在半導(dǎo)體裝置110的電源被關(guān)斷時,共用密鑰CK(a)的信息丟失。共用密鑰生成單元113利用從獨(dú)有碼生成單元111輸出的獨(dú)有碼UC (a)和存儲在存儲單元112中的校正數(shù)據(jù)⑶(a)生成共用密鑰CK (a)。獨(dú)有碼生成單元111生成的獨(dú)有碼UC(a)是包含這樣的比特的值的數(shù)據(jù),該比特的值由于在生成該獨(dú)有碼時的外部因素(諸如,溫度或電壓等)而波動。因此,獨(dú)有碼生成單元111生成的獨(dú)有碼UC(a)包括三種比特(1)具有穩(wěn)定值的比特,(2)以高的可能性波動的比特(也即,值中的波動相對大的比特),以及(3)以低的可能性波動的比特(也即,值中的波動相對小的比特)。以這樣的方式,獨(dú)有碼生成單元111生成的獨(dú)有碼UC(a)包括(2)以高的可能性波動的比特以及(3)以低的可能性波動的比特。因此,該獨(dú)有碼UC(a)具有每次其被生成時都不同的值。可以在制造工藝中掌握以高的可能性波動的比特。通過在制造工藝中確定每一所述比特,可以生成用于對以高的可能性波動的比特進(jìn)行掩碼的掩碼數(shù)據(jù)。通過利用掩碼數(shù)據(jù)對獨(dú)有碼生成單元111生成的獨(dú)有碼UC(a)進(jìn)行掩碼,能夠消除獨(dú)有碼UC(a)中包括的以高的可能性波動的比特。由于以高的可能性波動的比特的位置在半導(dǎo)體裝置之間變化,因此掩碼數(shù)據(jù)是對于半導(dǎo)體裝置獨(dú)有的數(shù)據(jù)。由于以低的可能性波動的比特由于外部因素、剩余電荷等而波動,因此難以預(yù)測該比特。因此,對于以低的可能性波動的比特,在制造時生成以例如BCH碼或里德-所羅門碼等表示的ECC碼,并利用該ECC碼校正錯誤。下面,將具體地說明共用密鑰生成單元113的操作。圖14是用于解釋共用密鑰生成單元113的操作的流程圖,圖15是示出共用密鑰生成單元113處理的獨(dú)有碼的示例的表。首先,共用密鑰生成單元113從獨(dú)有碼生成單元111讀取獨(dú)有碼UC(a)(步驟S71)。此時讀取的獨(dú)有碼UC(a)是未經(jīng)受錯誤校正的獨(dú)有碼。隨后,共用密鑰生成單元113利用校正數(shù)據(jù)⑶(a)中包括的掩碼數(shù)據(jù)對所讀取的獨(dú)有碼UC(a)進(jìn)行掩碼(步驟S72)。該掩碼數(shù)據(jù)是用于將獨(dú)有碼UC(a)的比特中的具有高錯誤率的比特掩碼的數(shù)據(jù)。在圖15中所示的示例中,由于獨(dú)有碼UC(a)中的第一和第六比特具有高錯誤率,因此掩碼數(shù)據(jù)是“O”。由于其它比特具有低錯誤率或穩(wěn)定的值,因此掩碼數(shù)據(jù)是“I”。也即,用于必須被掩碼的比特的掩碼數(shù)據(jù)是“O”,而用于不必須被掩碼的比特的掩碼數(shù)據(jù)是“I”。通過利用掩碼數(shù)據(jù)對獨(dú)有碼UC(a)進(jìn)行掩碼,能夠獲得經(jīng)受了消除獨(dú)有碼UC(a)中的第一和第六比特的掩碼處理的數(shù)據(jù)(通過掩碼處理消除的比特以“X”指示)。在此之后,經(jīng)受了掩碼處理的獨(dú)有碼UC(a)被左對齊。利用校正數(shù)據(jù)⑶(a)中包括的ECC碼(錯誤校驗(yàn)和校正碼),校正經(jīng)受了掩碼處理的獨(dú)有碼UC(a)中的錯誤(步驟S73)。在圖15所示的示例中,通過利用ECC碼的錯誤校正將第一比特從“O”校正為“I”。接著,利用校正數(shù)據(jù)⑶(a)中包括的運(yùn)算參數(shù),對經(jīng)受了錯誤校正的獨(dú)有碼UC (a)執(zhí)行預(yù)定的操作(步驟S74)。在圖15中所示的示例中,對錯誤校正了的獨(dú)有碼UC(a)執(zhí)行“非”操作。經(jīng)受該操作的獨(dú)有碼UC (a)成為共用密鑰CK (a)。該非操作是一種示例。對錯 誤校正了的獨(dú)有碼UC(a)執(zhí)行的操作可以是任何操作。通過改變運(yùn)算參數(shù),可以根據(jù)需要改變共用密鑰CK(a)。通過利用運(yùn)算參數(shù)對錯誤校正了的獨(dú)有碼UC(a)執(zhí)行預(yù)定的操作,可以使共用密鑰CK(a)成為不與獨(dú)有碼UC(a)明顯類似的碼。因此,可以進(jìn)一步改善安全級另O。對錯誤校正了的獨(dú)有碼UC(a)執(zhí)行的操作可以省略。在這種情況下,經(jīng)受利用掩碼數(shù)據(jù)和ECC碼的錯誤校正的獨(dú)有碼UC (a)成為共用密鑰CK (a)。以這樣的方式生成的共用密鑰CK (a)被輸出到存儲單元112和加密單元114。校正數(shù)據(jù)⑶(a)中包括的運(yùn)算參數(shù)、ECC碼、和掩碼數(shù)據(jù)被預(yù)先生成,作為對于半導(dǎo)體裝置Iio獨(dú)有的數(shù)據(jù),并被存儲在存儲單元112中。如上所述的,共用密鑰生成單元113不僅具有生成共用密鑰CK(a)功能而且還具有利用校正數(shù)據(jù)CD(a)校正獨(dú)有碼UC(a)的功能。類同地,圖12中所示的秘密密鑰生成單元123作為利用校正數(shù)據(jù)⑶校正獨(dú)有碼UC的獨(dú)有碼校正單元。盡管為了方便起見,對于本申請文件中生成的密鑰,生成單元被表示為共用密鑰生成單元、秘密密鑰生成單元、和公開密鑰生成單元,然而生成單元的配置和操作基本上彼此類似。圖12中的加密單元114利用半導(dǎo)體裝置120的公開密鑰PK(b)對共用密鑰生成單元113生成共用密鑰CK(a)進(jìn)行加密。用于該加密的公開密鑰PK(b)可以被預(yù)先從半導(dǎo)體裝置120發(fā)送到半導(dǎo)體裝置110,并存儲在存儲單元112中。當(dāng)在加密單元114中加密該共用密鑰CK(a)時,可以將用于該加密的公開密鑰PK(b)直接地從半導(dǎo)體裝置120供應(yīng)到加密單元114。半導(dǎo)體裝置120具有獨(dú)有碼生成單元121、存儲單元122、秘密密鑰生成單元123、和加密單元124。獨(dú)有碼生成單元121生成對于半導(dǎo)體裝置120獨(dú)有的獨(dú)有碼UC (b),并將其輸出到秘密密鑰生成單元123。獨(dú)有碼生成單元121的配置和操作基本上與獨(dú)有碼生成單元111的類似。存儲單元122可以存儲校正數(shù)據(jù)⑶(b)、公開密鑰PK(b)、和通過解密單元解密的共用密鑰CK(a)。校正數(shù)據(jù)CD(b)對應(yīng)于要被根據(jù)第七實(shí)施例的數(shù)據(jù)寫入系統(tǒng)7寫入的寫入數(shù)據(jù)。存儲單元122具有例如易失性存儲器和非易失性存儲器。校正數(shù)據(jù)CD(b)和公開密鑰PK(b)被存儲在非易失性存儲器中,而共用密鑰CK(a)被存儲在易失性存儲器中。因此,存儲單元122臨時地存儲共用密鑰CK (a),并且在半導(dǎo)體裝置120的電源被關(guān)斷時,共用密鑰CK(a)的信息丟失。秘密密鑰生成單元123利用獨(dú)有碼UC (b)和校正數(shù)據(jù)⑶(b)生成半導(dǎo)體裝置120的秘密密鑰SK (b)。在秘密密鑰生成單元123中生成秘密密鑰SK (b)的方法基本上與在共用密鑰生成單元113中生成共用密鑰CK(a)的方法類似。解密單元124利用秘密密鑰SK (b)對半導(dǎo)體裝置110的加密單元114加密的共用密鑰CK(a) ’進(jìn)行解密,以生成共用密鑰CK(a)。接著,將參考圖13中所示的流程圖說明根據(jù)該實(shí)施例的加密通信系統(tǒng)的操作。首先,半導(dǎo)體裝置ICb (120)將該半導(dǎo)體裝置ICb (120)的公開密鑰PK(b)發(fā)送給半導(dǎo)體裝置ICa (110)(步驟S61)。所發(fā)送的公開密鑰PK(b)存儲在半導(dǎo)體裝置110的存儲單元112 中。半導(dǎo)體裝置110的共用密鑰生成單元113利用從獨(dú)有碼生成單元111輸出的獨(dú)有碼UC(a)和存儲在存儲單元112中的校正數(shù)據(jù)⑶(a)生成共用密鑰CK(a)(步驟S62)。加密單元114利用半導(dǎo)體裝置120的公開密鑰PK(b)對共用密鑰生成單元113生成的共用密鑰CK (a)進(jìn)行加密,以生成加密的共用密鑰CK (a)’(步驟S63)。在此之后,加密的共用密鑰CK(a) ’被從半導(dǎo)體裝置110發(fā)送到半導(dǎo)體裝置120 (步驟S64)。半導(dǎo)體裝置120的秘密密鑰生成單元123利用獨(dú)有碼UC (b)和校正數(shù)據(jù)⑶(b)生成半導(dǎo)體裝置120的秘密密鑰SK(b)(步驟S65)。解密單元124利用秘密密鑰SK(b)對加密的共用密鑰CK (a)’進(jìn)行解密以生成共用密鑰CK (a)(步驟S66)。通過該處理,半導(dǎo)體裝置110和120兩者都可以保持共用密鑰CK (a)。因此,半導(dǎo)體裝置110和120可以利用該共用密鑰CK(a)進(jìn)行加密通信(步驟S67)。步驟的順序可以適當(dāng)?shù)馗淖?,除非有相反說明。例如,與半導(dǎo)體裝置110的步驟S62和S63的執(zhí)行并行地,半導(dǎo)體裝置120可以執(zhí)行步驟S65。在現(xiàn)有技術(shù)中,在半導(dǎo)體裝置ICx和ICy之間利用共用密鑰CK(X)執(zhí)行加密通信的情況下,半導(dǎo)體裝置ICx和ICy必須共享該共用密鑰CK (x)。在半導(dǎo)體裝置ICx具有共用密鑰CK(X)時,半導(dǎo)體裝置ICx利用預(yù)先獲得的公開密鑰PK (y)加密該共用密鑰CK(X),并將其發(fā)送給半導(dǎo)體裝置ICy。半導(dǎo)體裝置ICy利用該半導(dǎo)體裝置ICy的秘密密鑰SK (y)對加密的共用密鑰CK(X) ’進(jìn)行解密以獲得共用密鑰CK(X)。通過按照公開密鑰加密方法將共用密鑰CK (x)從半導(dǎo)體裝置ICx發(fā)送到半導(dǎo)體裝置ICy,半導(dǎo)體裝置ICx和ICy可以共享共用密鑰CK(X)而不被第三方知曉。以這樣的方式,半導(dǎo)體裝置ICx和ICy可以利用共用密鑰加密方法進(jìn)行加密通信。在將共用密鑰CK(X)從ICx發(fā)送到ICy時,由于共用密鑰CK(X)是加密的,因此共用密鑰CK(X)的信息不被泄漏。然而,重要的數(shù)據(jù)(諸如,共用密鑰CK(X)和秘密密鑰SK (y))存儲在半導(dǎo)體裝置(半導(dǎo)體芯片)ICx和ICy的非易失性存儲器(存儲單元)中。因此存在這樣的問題在半導(dǎo)體裝置被非法分析時,諸如共用密鑰CK(X)和秘密密鑰SK (y)的重要數(shù)據(jù)被泄漏。相反,在根據(jù)本實(shí)施例的加密通信系統(tǒng)中,半導(dǎo)體裝置110的共用密鑰生成單元113利用對于半導(dǎo)體裝置110獨(dú)有的獨(dú)有碼UC(a)和校正數(shù)據(jù)⑶(a)生成共用密鑰CK(a)。半導(dǎo)體裝置120的秘密密鑰生成單元123利用對于半導(dǎo)體裝置120獨(dú)有的獨(dú)有碼UC (b)和校正數(shù)據(jù)CD(b)生成半導(dǎo)體裝置120的秘密密鑰SK(b)。因此,由于諸如共用密鑰CK(a)和秘密密鑰SK(b)的重要數(shù)據(jù)不是直接存儲在存儲單元112和122中,因此即使半導(dǎo)體裝置被非法地分析,諸如共用密鑰CK(a)和秘密密鑰SK(b)的重要數(shù)據(jù)也不被泄漏。在根據(jù)第七實(shí)施例的加密通信系統(tǒng)8中,由于諸如共用密鑰CK(a)和秘密密鑰SK (b)的重要數(shù)據(jù)不是直接存儲在存儲單元112和122中,因此即使半導(dǎo)體裝置被非法地分析,諸如共用密鑰CK(a)和秘密密鑰SK(b)的重要數(shù)據(jù)也不被泄漏。因此,即使在半導(dǎo)體裝置110和120由安全級別相對低的一般性微型計算機(jī)配置時,也可以實(shí)現(xiàn)高安全級別。盡管用于生成共用密鑰CK (a)和秘密密鑰SK (b)的校正數(shù)據(jù)⑶(a)和⑶(b)具有比共用密鑰CK(a)和秘密密鑰SK(b)低的安全級別,但是校正數(shù)據(jù)CD(a)和CD(b)仍具有相對高的安全級別。因此,為了防止校正數(shù)據(jù)CD (a)和CD(b)被泄漏到第三方,對于其中存儲校正數(shù)據(jù)⑶(a)和⑶(b)的半導(dǎo)體裝置110和120,可以使用安全微型計算機(jī)。在根據(jù)第七實(shí)施例的加密通信系統(tǒng)8中,盡管校正數(shù)據(jù)⑶(a)和⑶(b)對于生成密鑰信息是非常重要的。通過利用根據(jù)第七實(shí)施例的數(shù)據(jù)寫入系統(tǒng)7,可以將所述重要數(shù)據(jù)寫入在半導(dǎo)體裝置中同時保持高的安全性。 第八實(shí)施例在第八實(shí)施例中,將說明利用通過根據(jù)第七實(shí)施例的數(shù)據(jù)寫入系統(tǒng)7將寫入數(shù)據(jù)寫入其中的半導(dǎo)體裝置的另一示例。圖16是根據(jù)第八實(shí)施例的加密通信系統(tǒng)9的框圖。圖16中所示的半導(dǎo)體裝置的電路塊對應(yīng)于圖11中所示的通信處理單元101中的電路。根據(jù)第八實(shí)施例的加密通信系統(tǒng)9具有半導(dǎo)體裝置ICa (130)(第一半導(dǎo)體裝置)和半導(dǎo)體裝置ICz (140)(第二半導(dǎo)體裝置)。半導(dǎo)體裝置ICa (130)和另一半導(dǎo)體裝置(未示出)形成安全網(wǎng)絡(luò)。在該實(shí)施例中,將說明向包括半導(dǎo)體裝置ICa (130)的安全網(wǎng)絡(luò)新添加半導(dǎo)體裝置ICz (140)的情況。半導(dǎo)體裝置130具有獨(dú)有碼生成單元131、存儲單元132、共用密鑰生成單元(第一共用密鑰生成單元)133、和校正數(shù)據(jù)生成單元134。獨(dú)有碼生成單元131生成對于半導(dǎo)體裝置130獨(dú)有的獨(dú)有碼UC (a)(第一獨(dú)有碼),并將其輸出到共用密鑰生成單元133。獨(dú)有碼生成單元131生成的獨(dú)有碼UC(a)具有與半導(dǎo)體裝置I的獨(dú)有碼生成單元12生成的初始獨(dú)有碼相同的性質(zhì)。因此,可以使用獨(dú)有碼生成單元12代替該獨(dú)有碼生成單元131。存儲單元132可以存儲共用密鑰生成單元133生成的共用密鑰CK(a)(第一共用密鑰)和校正數(shù)據(jù)CD(a)(第一校正數(shù)據(jù))。存儲單元132具有例如易失性存儲器和非易失性存儲器。校正數(shù)據(jù)CD(a)存儲在非易失性存儲器中,而共用密鑰CK(a)存儲在易失性存儲器中。因此,存儲單元132臨時地存儲共用密鑰CK (a),并且在半導(dǎo)體裝置130的電源被關(guān)斷時,共用密鑰CK(a)的信息被擦除。共用密鑰生成單元133利用從獨(dú)有碼生成單元131輸出的獨(dú)有碼UC (a)和存儲在存儲單元132中的校正數(shù)據(jù)⑶(a)生成共用密鑰CK (a)。獨(dú)有碼生成單元131生成的獨(dú)有碼UC(a)具有與第七實(shí)施例的獨(dú)有碼生成單元111生成的獨(dú)有碼UC(a)相同的性質(zhì)。因此,如同在第七實(shí)施例中那樣,在生成密鑰信息時,須通過掩碼數(shù)據(jù)和ECC碼校正錯誤。由于共用密鑰生成單元133的操作基本上與第七實(shí)施例的共用密鑰生成單元113的相同,因此在此將不重復(fù)說明。校正數(shù)據(jù)CD(a)中的包括的運(yùn)算參數(shù)、ECC碼和掩碼數(shù)據(jù)被預(yù)先生成,作為對于半導(dǎo)體裝置130獨(dú)有的數(shù)據(jù),并存儲在存儲單元132中。生成校正數(shù)據(jù)⑶(a)的方法與在校正數(shù)據(jù)生成單元134 (稍后將說明)生成校正數(shù)據(jù)⑶(z)的情況下的方法類似。校正數(shù)據(jù)生成單元134利用半導(dǎo)體裝置140的獨(dú)有碼UC(Z)(第二獨(dú)有碼)和共用密鑰CK(a)生成校正數(shù)據(jù)⑶(z)(第二校正數(shù)據(jù))。將參考圖18詳細(xì)說明在校正數(shù)據(jù)生成單元134生成校正數(shù)據(jù)的情況下執(zhí)行的操作。首先,從半導(dǎo)體裝置ICz (140)多次獲得獨(dú)有碼UC(Z)(步驟S91)。統(tǒng)計性地處理在步驟S91中獲得的獨(dú)有碼UC (z),并且獨(dú)有碼UC (z)的比特被分類為三種比特(I)具有穩(wěn)定值的比特,(2)以高的可能性波動的比特(也即,值中的波動相對大的比特),以及(3)以低的可能性波動的比特(也即,值中的波動相對小的比特)。利用(2)以高的可能性波動的比特生成掩碼數(shù)據(jù)(步驟S92)。例如,使用如下的信息作為掩碼數(shù)據(jù),該信息指示獨(dú)有碼UC(Z)的比特中以比預(yù)定的閾值高的可能性波動的比特的位置。利用在步驟S92中生成的掩碼數(shù)據(jù)對所述獨(dú)有碼UC(Z)進(jìn)行掩碼,并且消除以高 的可能性波動的比特。生成ECC碼,通過該ECC碼可以校正掩碼的獨(dú)有碼UC(z)(也即,包括值穩(wěn)定的比特以及以低的可能性波動的比特的獨(dú)有碼)中的錯誤(步驟S93)。所述ECC碼是例如BCH碼或里德-所羅門碼。接著,利用步驟S92中生成的掩碼數(shù)據(jù),步驟S93中生成的經(jīng)受了利用所述ECC碼的錯誤校正的獨(dú)有碼UC(Z)(也即,包括值穩(wěn)定的比特的獨(dú)有碼),以及存儲在存儲單元132中的共用密鑰CK(a),生成運(yùn)算參數(shù)(步驟S94)。該運(yùn)算參數(shù)是從校正的獨(dú)有碼UC(z)生成共用密鑰CK(a)所必須的。通過上述處理生成的掩碼數(shù)據(jù)、ECC碼以及運(yùn)算參數(shù)被作為校正數(shù)據(jù)⑶(z)發(fā)送給半導(dǎo)體裝置ICz (140)(步驟S95)。用于生成校正數(shù)據(jù)⑶(Z)的處理過程(步驟S91至S95)可以利用多個半導(dǎo)體裝置分布式地執(zhí)行。圖19是示出利用多個半導(dǎo)體裝置ICa、ICb、ICc以及ICd生成校正數(shù)據(jù)⑶(z)的情況的圖。半導(dǎo)體裝置ICa、ICb、ICc、以及ICd構(gòu)成安全網(wǎng)絡(luò)。在圖19中所示的示例中,半導(dǎo)體裝置ICa執(zhí)行步驟S91和S95。也即,半導(dǎo)體裝置ICa作為對于半導(dǎo)體裝置ICz的窗口。半導(dǎo)體裝置ICb執(zhí)行步驟S92 (掩碼數(shù)據(jù)的生成)。半導(dǎo)體裝置ICc執(zhí)行步驟S93 (ECC碼的生成)。半導(dǎo)體裝置ICd執(zhí)行步驟S94 (運(yùn)算參數(shù)的生成)。圖19的配置是一種示例,并且可以將若干半導(dǎo)體裝置任意地分配至若干步驟。通過使用于生成校正數(shù)據(jù)CD(Z)的處理過程(步驟S91至S95)分布到多個半導(dǎo)體裝置,可以改善加密通信系統(tǒng)的安全級別,并且可以防止負(fù)荷匯集在一個半導(dǎo)體裝置上。圖16中所示的半導(dǎo)體裝置140具有獨(dú)有碼生成單元141、存儲單元142、以及共用密鑰生成單元(第二共用密鑰生成單元)143。獨(dú)有碼生成單元141生成對于半導(dǎo)體裝置140獨(dú)有的獨(dú)有碼UC(Z),并且將其輸出至校正數(shù)據(jù)生成單元134和共用密鑰生成單元143。獨(dú)有碼生成單元141的配置和操作操作與獨(dú)有碼生成單元131的基本上相同。存儲單元142可以共用密鑰生成單元143生成的共用密鑰CK (a)。存儲單元142將共用密鑰CK(a)存儲在易失性存儲器中。因此,存儲單元142臨時地存儲共用密鑰CK(a),并且在半導(dǎo)體裝置140的電源被關(guān)斷時,共用密鑰CK(a)的信息被擦除。共用密鑰生成單元143利用從獨(dú)有碼生成單元141輸出的獨(dú)有碼UC (Z)以及從校正數(shù)據(jù)生成單元134輸出的校正數(shù)據(jù)⑶(z)生成共用密鑰CK (a)(第一共用密鑰)。共用密鑰生成單元143生成共用密鑰CK (a)的方法與共用密鑰生成單元133生成共用密鑰CK (a)的方法基本上類似。接著,將參考圖17中所示的流程圖說明根據(jù)本實(shí)施例的加密通信系統(tǒng)的操作。首先,半導(dǎo)體裝置ICa (130)的共用密鑰生成單元133利用從獨(dú)有碼生成單元131輸出的獨(dú)有碼UC(a)以及存儲在存儲單元132中的校正數(shù)據(jù)⑶(a)生成共用密鑰CK(a)(步驟S81 )。在此之后,半導(dǎo)體裝置ICa (130)利用共用密鑰CK(a)開始與其它半導(dǎo)體裝置ICb至ICy(未示出)的通信(步驟S82)。半導(dǎo)體裝置140將該半導(dǎo)體裝置140的獨(dú)有碼UC(Z)發(fā)送到半導(dǎo)體裝置130的校正數(shù)據(jù)生成單元134 (步驟S83)。半導(dǎo)體裝置130的校正數(shù)據(jù)生成單元134利用半導(dǎo)體裝置140的獨(dú)有碼UC(Z)以及存儲在存儲單元132中的共用密鑰CK (a)生成校正數(shù)據(jù)OT(Z)(步驟S84)。為了生成校正數(shù)據(jù)⑶(z),校正數(shù)據(jù)生成單元 134須多次獲得獨(dú)有碼UC(Z)。為了多次獲得獨(dú)有碼UC(Z),重復(fù)步驟S83。所生成的校正數(shù)據(jù)⑶(Z)被發(fā)送到半導(dǎo)體裝置140的共用密鑰生成單元143 (步驟S85)。半導(dǎo)體裝置140的共用密鑰生成單元143利用從獨(dú)有碼生成單元141輸出的獨(dú)有碼UC(Z)以及從校正數(shù)據(jù)生成單元134輸出的校正數(shù)據(jù)CD(z)生成共用密鑰CK(a)(步驟S86)。通過該處理過程,新增加的半導(dǎo)體裝置140可以保持共用密鑰CK (a)。因此,新增加的半導(dǎo)體裝置(ICz)HO可以利用共用密鑰CK(a)進(jìn)行與半導(dǎo)體裝置(ICa)130以及其它半導(dǎo)體裝置ICb至ICy的加密通信(步驟S87)。在將半導(dǎo)體裝置ICz新添加至其中建立了安全通信的加密通信系統(tǒng)的情況下,須驗(yàn)證待增加的半導(dǎo)體裝置ICz是否是正規(guī)的半導(dǎo)體裝置。然而,為了驗(yàn)證半導(dǎo)體裝置ICz是否是正規(guī)的半導(dǎo)體裝置,例如須在加密通信系統(tǒng)中裝配昂貴的安全服務(wù)器。這導(dǎo)致使得加密通信系統(tǒng)成本增加的問題。相反,在根據(jù)第八實(shí)施例的加密通信系統(tǒng)9中,半導(dǎo)體裝置130的校正數(shù)據(jù)生成單元134利用對于半導(dǎo)體裝置140獨(dú)有的獨(dú)有碼UC(Z)以及校正數(shù)據(jù)CD(Z)生成校正數(shù)據(jù)CD(Z)。半導(dǎo)體裝置140中的共用密鑰生成單元143利用校正數(shù)據(jù)CD(Z)以及半導(dǎo)體裝置140的獨(dú)有碼UC(Z)生成共用密鑰CK (a)。因此,由于不需要在加密通信系統(tǒng)中安裝昂貴的安全服務(wù)器以驗(yàn)證待增加的半導(dǎo)體裝置ICz是否是正規(guī)的半導(dǎo)體裝置,因此可以容易地并且不昂貴地向進(jìn)行安全通信的加密通信系統(tǒng)增加半導(dǎo)體裝置。在根據(jù)第八實(shí)施例的加密通信系統(tǒng)9中,半導(dǎo)體裝置130的共用密鑰生成單元133利用對于半導(dǎo)體裝置130獨(dú)有的獨(dú)有碼UC(a)以及校正數(shù)據(jù)CD(a)生成共用密鑰CK(a)。半導(dǎo)體裝置140的共用密鑰生成單元143利用對于半導(dǎo)體裝置140獨(dú)有的獨(dú)有碼UC (a)以及校正數(shù)據(jù)CD(Z)生成共用密鑰CK (a)。因此,由于作為重要數(shù)據(jù)的共用密鑰CK (a)不直接存儲在存儲單元132和142中,因此即使半導(dǎo)體裝置被非法分析,共用密鑰CK (a)的數(shù)據(jù)也不泄漏。因此,通過根據(jù)該實(shí)施例的加密通信系統(tǒng),在實(shí)現(xiàn)安全性的改善的同時,可以容易地且不昂貴地向執(zhí)行安全通信的加密通信系統(tǒng)添加半導(dǎo)體裝置。在根據(jù)第八實(shí)施例的加密通信系統(tǒng)9中,諸如共用密鑰CK(a)的重要數(shù)據(jù)不直接存儲在存儲單元132和142中。即使半導(dǎo)體裝置被非法分析,諸如共用密鑰CK(a)的重要數(shù)據(jù)也不泄漏。因此,即使半導(dǎo)體裝置130和140由具有相對低安全級別的一般性微型計算機(jī)配置成,也可以實(shí)現(xiàn)高安全級別。
盡管用于在半導(dǎo)體裝置130中生成共用密鑰CK(a)的校正數(shù)據(jù)⑶(a)具有比共用密鑰CK(a)低的安全級別,但是其仍是具有相對高安全級別的信息。在根據(jù)第七實(shí)施例的數(shù)據(jù)寫入系統(tǒng)7中,這樣的具有相對高安全級別的信息可以存儲在半導(dǎo)體裝置中,同時保持高安全性。由于從半導(dǎo)體裝置130發(fā)送到半導(dǎo)體裝置140的校正數(shù)據(jù)⑶(Z)是與獨(dú)有碼UC(Z)和共用密鑰CK(a)有關(guān)的數(shù)據(jù),因此其是具有相對高安全級別的信息。因此,在將校正數(shù)據(jù)CD(Z)從半導(dǎo)體裝置130發(fā)送 到半導(dǎo)體裝置140時,可以利用公開密鑰加密方法加密并發(fā)送校正數(shù)據(jù)CD(Z)。在這種情況下,例如,半導(dǎo)體裝置140保持半導(dǎo)體裝置140的秘密密鑰,在發(fā)送校正數(shù)據(jù)CD(Z)時半導(dǎo)體裝置130利用半導(dǎo)體裝置140的公開密鑰加密校正數(shù)據(jù)CD(Z)。半導(dǎo)體裝置140利用秘密密鑰對加密的校正數(shù)據(jù)CD(Z)進(jìn)行解密。以這樣的方式,校正數(shù)據(jù)被加密并被從半導(dǎo)體裝置130發(fā)送到半導(dǎo)體裝置140。本發(fā)明并不限于前述的實(shí)施例,而是可以適當(dāng)?shù)剡M(jìn)行改變而不偏離其要旨。本領(lǐng)域技術(shù)人員將容易理解,與多個實(shí)施例有關(guān)的事務(wù)可以組合到一個裝置,以及例如將從第一實(shí)施例到第二實(shí)施例的改變應(yīng)用到第三實(shí)施例。
權(quán)利要求
1.一種半導(dǎo)體裝置,包括 獨(dú)有碼生成単元,其生成初始獨(dú)有碼,所述初始獨(dú)有碼是對于裝置獨(dú)有的值并且包含以隨機(jī)比特形式的錯誤; 第一錯誤校正単元,其校正初始獨(dú)有碼中的錯誤以生成中間獨(dú)有碼; 第二錯誤校正単元,其校正中間獨(dú)有碼中的錯誤以生成第一確定獨(dú)有碼;以及 解密單元,其利用所述第一確定獨(dú)有碼解密傳輸數(shù)據(jù),以生成保密信息,所述傳輸數(shù)據(jù)是由外部裝置利用基于所述中間獨(dú)有碼生成的密鑰信息加密保密信息而獲得的。
2.根據(jù)權(quán)利要求I所述的半導(dǎo)體裝置, 其中所述第一錯誤校正単元從所述外部裝置接收比特掩碼數(shù)據(jù),并利用所述比特掩碼數(shù)據(jù)生成所述中間獨(dú)有碼,所述比特掩碼數(shù)據(jù)指定構(gòu)成所述初始獨(dú)有碼的比特中的要被掩碼的比特,以及 其中所述第二錯誤校正単元利用預(yù)先保持在內(nèi)部的ECC碼生成所述第一確定獨(dú)有碼。
3.根據(jù)權(quán)利要求I所述的半導(dǎo)體裝置, 其中所述第一錯誤校正単元從所述外部裝置接收ECC碼并利用所述ECC碼生成所述中間獨(dú)有碼,以及 其中所述第二錯誤校正単元利用指定構(gòu)成被預(yù)先保持在內(nèi)部的所述初始獨(dú)有碼的比特中的要被掩碼的比特的比特掩碼數(shù)據(jù)生成所述第一確定獨(dú)有碼。
4.根據(jù)權(quán)利要求I至3中任何一項(xiàng)所述的半導(dǎo)體裝置,其中在所述外部裝置中生成的所述密鑰信息是通過在所述外部裝置中執(zhí)行的與所述第二錯誤校正単元的處理過程相同的處理過程耳生成的第二確定獨(dú)有碼。
5.根據(jù)權(quán)利要求I至4中任何一項(xiàng)所述的半導(dǎo)體裝置,還包括標(biāo)識信息保持単元,其輸出作為固定值預(yù)設(shè)在每ー裝置中的標(biāo)識信息, 其中用于所述第一錯誤校正単元中的錯誤校正處理的數(shù)據(jù)是與所述標(biāo)識信息相關(guān)聯(lián)的數(shù)據(jù)。
6.根據(jù)權(quán)利要求5所述的半導(dǎo)體裝置,還包括 校正數(shù)據(jù)解密単元,其接收用于所述第一錯誤校正単元中的錯誤校正處理的并且處于加密狀態(tài)的數(shù)據(jù),執(zhí)行對所接收的數(shù)據(jù)的解密處理,并將解密的數(shù)據(jù)輸出至所述第一錯誤校正単元。
7.根據(jù)權(quán)利要求I至6中任何一項(xiàng)所述的半導(dǎo)體裝置,其中所述初始獨(dú)有碼是物理不可克隆功能PUF數(shù)據(jù),其包含由于所述半導(dǎo)體裝置的元件中的制造變化而變得不確定的比特。
8.根據(jù)權(quán)利要求I至7中任何一項(xiàng)所述的半導(dǎo)體裝置,還包括 加密單元,其利用所述保密信息作為加密密鑰進(jìn)行加密通信。
9.根據(jù)權(quán)利要求I至7中任何一項(xiàng)所述的半導(dǎo)體裝置, 其中所述保密信息包含獨(dú)有的校正數(shù)據(jù)以及算法表示信息,所述獨(dú)有的校正數(shù)據(jù)用于校正作為對于裝置獨(dú)有的值的獨(dú)有碼中的錯誤,所述錯誤是以隨機(jī)比特形式,所述算法表示信息用于從錯誤校正后的初始獨(dú)有碼生成加密密鑰,并且 其中所述半導(dǎo)體裝置還包括 密鑰生成単元,其基于所述保密信息和所述獨(dú)有碼生成所述加密密鑰;以及加密單元,其利用所述密鑰生成単元生成的加密密鑰進(jìn)行加密通信。
10.一種將保密信息寫入到半導(dǎo)體裝置的數(shù)據(jù)寫入方法,所述半導(dǎo)體裝置使用所述保密信息,所述方法包括以下步驟 對初始獨(dú)有碼執(zhí)行第一錯誤校正處理以校正所述初始獨(dú)有碼中的錯誤,從而生成中間獨(dú)有碼,所述初始獨(dú)有碼是對于所述半導(dǎo)體裝置獨(dú)有的值并且包含以隨機(jī)比特形式的錯誤; 對所述中間獨(dú)有碼執(zhí)行第二錯誤校正處理以生成第一確定獨(dú)有碼; 在與所述半導(dǎo)體裝置不同的外部裝置中對所述中間獨(dú)有碼執(zhí)行與所述第二錯誤校正處理相同的錯誤校正處理,以生成第二確定獨(dú)有碼; 將通過在所述外部裝置中利用所述第二確定獨(dú)有碼加密所述保密信息而獲得的傳輸數(shù)據(jù)發(fā)送給所述半導(dǎo)體裝置;以及 利用所述第一確定獨(dú)有碼解密所述傳輸數(shù)據(jù)以獲得所述保密信息。
11.根據(jù)權(quán)利要求10所述的數(shù)據(jù)寫入方法,其中在所述第一錯誤校正處理中,從所述外部裝置接收比特掩碼數(shù)據(jù),所述比特掩碼數(shù)據(jù)指定構(gòu)成所述初始獨(dú)有碼的比特中的要被掩碼的比特,利用所述比特掩碼數(shù)據(jù)生成所述中間獨(dú)有碼,以及,在所述第二錯誤校正處理中,利用預(yù)先保持在所述裝置中的ECC碼生成所述第一確定獨(dú)有碼。
12.根據(jù)權(quán)利要求10所述的數(shù)據(jù)寫入方法, 其中在所述第一錯誤校正處理中,從所述外部裝置接收ECC碼,并且利用所述ECC碼生成所述中間獨(dú)有碼,以及 其中在所述第二錯誤校正處理中,利用比特掩碼數(shù)據(jù)生成所述第一確定獨(dú)有碼,所述比特掩碼數(shù)據(jù)指定構(gòu)成所述初始獨(dú)有碼的比特中的要被掩碼的比特,所述初始獨(dú)有碼被預(yù)先保持在所述裝置中。
13.根據(jù)權(quán)利要求10至12中任何一項(xiàng)所述的數(shù)據(jù)寫入方法, 其中所述半導(dǎo)體裝置輸出標(biāo)識信息,所述標(biāo)識信息被對于每一裝置預(yù)設(shè)作為固定值, 其中所述外部裝置保持信息,在所述信息中,用于所述第一錯誤校正處理的第一校正數(shù)據(jù)和所述標(biāo)識信息被彼此關(guān)聯(lián),以及 其中所述外部裝置從所述半導(dǎo)體裝置讀取所述標(biāo)識信息,并將與所述標(biāo)識信息相關(guān)聯(lián)的所述第一校正數(shù)據(jù)發(fā)送到所述半導(dǎo)體裝置。
14.根據(jù)權(quán)利要求13所述的數(shù)據(jù)寫入方法, 其中所述外部裝置預(yù)先保持處于加密狀態(tài)的所述第一校正數(shù)據(jù),以及其中所述半導(dǎo)體裝置應(yīng)用通過解密所述加密的第一校正數(shù)據(jù)而獲得的數(shù)據(jù),并從所述初始獨(dú)有碼生成所述中間獨(dú)有碼。
15.根據(jù)權(quán)利要求10至14中任何一項(xiàng)所述的數(shù)據(jù)寫入方法, 其中所述外部裝置確定所述第二確定獨(dú)有碼的有效性,以及在確定所述確定的結(jié)果是所述第二確定獨(dú)有碼無效的情況下,停止向所述半導(dǎo)體裝置發(fā)送所述傳輸數(shù)據(jù)。
16.根據(jù)權(quán)利要求15所述的數(shù)據(jù)寫入方法,其中通過利用循環(huán)冗余校驗(yàn)CRC碼的CRC處理過程確定所述第二確定獨(dú)有碼的有效性。
17.根據(jù)權(quán)利要求10至16中任何一項(xiàng)所述的數(shù)據(jù)寫入方法, 其中所述外部裝置具有直接耦接至所述半導(dǎo)體裝置的寫入裝置以及經(jīng)由信號路徑耦接至所述寫入裝置的服務(wù)器,以及 其中所述服務(wù)器經(jīng)由所述寫入裝置接收所述中間獨(dú)有碼,對所述中間獨(dú)有碼執(zhí)行與第ニ錯誤校正處理相同錯誤校正處理以生成第二確定獨(dú)有碼,生成在所述外部裝置中通過利用所述第二確定獨(dú)有碼加密所述保密信息而獲得的所述傳輸數(shù)據(jù),以及經(jīng)由所述寫入裝置將所述傳輸數(shù)據(jù)發(fā)送至所述半導(dǎo)體裝置。
18.根據(jù)權(quán)利要求17所述的數(shù)據(jù)寫入方法,其中所述外部裝置保持第一校正數(shù)據(jù)以及第二校正數(shù)據(jù)以便使其分布到所述寫入裝置和所述服務(wù)器,所述第一校正數(shù)據(jù)用于所述第ー錯誤校正處理,所述第二校正數(shù)據(jù)用于所述第二確定獨(dú)有碼。
19.根據(jù)權(quán)利要求10至18中任何一項(xiàng)所述的半導(dǎo)體裝置,其中所述初始獨(dú)有碼是物理不可克隆功能PUF數(shù)據(jù),其包含由于所述半導(dǎo)體裝置的元件中的制造變化而變得不確定的比特。
20.根據(jù)權(quán)利要求10至19中任何一項(xiàng)所述的數(shù)據(jù)寫入方法,其中所述半導(dǎo)體裝置利用所獲得的保密信息作為加密密鑰進(jìn)行加密通信。
21.根據(jù)權(quán)利要求10至19中任何一項(xiàng)所述的數(shù)據(jù)寫入方法,其中所述半導(dǎo)體裝置將所獲得的保密信息存儲在存儲單元中。
全文摘要
本發(fā)明涉及半導(dǎo)體裝置以及將數(shù)據(jù)寫入到半導(dǎo)體裝置的方法?,F(xiàn)有技術(shù)的半導(dǎo)體裝置具有不能夠有效地確保寫入數(shù)據(jù)時的安全性的問題。本發(fā)明的半導(dǎo)體裝置具有獨(dú)有碼生成單元,其生成初始獨(dú)有碼,所述初始獨(dú)有碼是對于裝置獨(dú)有的值并且包含以隨機(jī)比特形式的錯誤;第一錯誤校正單元,其校正初始獨(dú)有碼中的錯誤以生成中間獨(dú)有碼;第二錯誤校正單元,其校正中間獨(dú)有碼中的錯誤以生成第一確定獨(dú)有碼;以及解密單元,其利用所述第一確定獨(dú)有碼解密傳輸數(shù)據(jù),以生成保密信息,所述傳輸數(shù)據(jù)是由外部裝置利用基于所述中間獨(dú)有碼生成的密鑰信息加密保密信息而獲得的。
文檔編號H04L9/32GK102843234SQ20121021128
公開日2012年12月26日 申請日期2012年6月20日 優(yōu)先權(quán)日2011年6月20日
發(fā)明者押田大介, 古田茂, 廣川祐之, 山崎曉, 藤森隆, 鹽田茂雅 申請人:瑞薩電子株式會社