用于提供密碼密鑰的電路單元的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種用于提供密碼密鑰的電路單元。此外,本發(fā)明還涉及一種用于提供密碼密鑰的方法和計(jì)算機(jī)程序產(chǎn)品,該計(jì)算機(jī)程序產(chǎn)品用于促使這種方法的執(zhí)行。
【背景技術(shù)】
[0002]對(duì)于許多應(yīng)用來說密碼密鑰是需要的。已知的是,隨機(jī)產(chǎn)生密碼密鑰。但是于是該密碼密鑰必須被存儲(chǔ)在存儲(chǔ)器組件中,只要其在任何使用情況下不應(yīng)當(dāng)被手動(dòng)輸入。為了安全的存儲(chǔ),例如可以使用物理保護(hù)的硬件組件(密碼控制器、安全存儲(chǔ)器組件)。密碼密鑰也可以以謎題化形式被存儲(chǔ),也即以外人僅僅只有用一定的分析花費(fèi)才能求得該密鑰的形式。
[0003]半導(dǎo)體電路上的物理防克隆功能(PUF)是已知的。存在各種類型的PUF,如例如在 https://www.cosic.esat.kuleuven.be/ecrypt/courses/albenall/slides/ingrid_verbauwhede_pufs.pdf中闡述的。例如可以使用SRAM-PUF,以便在接通之后來根據(jù)SRAM存儲(chǔ)器的存儲(chǔ)內(nèi)容來確定密鑰。也已知環(huán)形振蕩器PUF和仲裁器PUF,它們根據(jù)挑戰(zhàn)值來提供響應(yīng)值。
[0004]此外,已知的是,在使用PUF的情況下借助謎題密鑰提取器來提取密碼密鑰。但是謎題密鑰提取器需要輔助數(shù)據(jù)(也稱為幫助數(shù)據(jù)),其必須在存儲(chǔ)密鑰時(shí)被產(chǎn)生。此外,輔助數(shù)據(jù)必須被存儲(chǔ),為此需要非易失性存儲(chǔ)器。關(guān)于基于PUF的密鑰產(chǎn)生的概況例如Ei3 http://www.cosic.esat.kuleuven.be/publicat1ns/article-2323, pdf (M.Yu, D.M’Ra'ihi, S.Devadas,和 1.Verbauwhede, "Security and Reliability Properties ofSyndrome Coding Techniques Used in PUF Key Generat1n, 〃 In GOMACTech conference38,GomacTech, 1-4 頁,2013)給出。
[0005]在已知的方法中需要必須在初始化階段期間產(chǎn)生的輔助數(shù)據(jù)。它們必須被存儲(chǔ)在非易失性存儲(chǔ)器中,為此需要合適的存儲(chǔ)器組件。此外,在設(shè)計(jì)密鑰提取器時(shí)需要注意:所存儲(chǔ)的數(shù)據(jù)不包含關(guān)于密鑰的隱藏信息。例如當(dāng)錯(cuò)誤校正碼是“太好”時(shí),即使沒有PUF也可以從公開的輔助數(shù)據(jù)中提取密鑰。
[0006]在http://people.csail.mit.edu/devadas/pubs/host2011.pdf (Zdenek (Sid)Paral, Srinivas Devadas: Reliable and Efficient PUF-Based Key Generat1n UsingPattern Matching, IEEE Int’l Symposium on Hardware-Oriented Security and Trust(HOST), 2011)中描述了一種方法來通過PUF響應(yīng)的模式匹配來確定密鑰。這也在WO2012/099657 A2中被描述,由其中已知:借助挑戰(zhàn)-響應(yīng)PUF來產(chǎn)生密碼密鑰而無需謎題密鑰提取器。為此進(jìn)行PUF響應(yīng)值的模式匹配,PUF響應(yīng)值借助預(yù)先給定的挑戰(zhàn)值序列來加以產(chǎn)生。這里,響應(yīng)值序列的元素的以下位置、也即索引用作密鑰確定的信息,在該位置上首次出現(xiàn)確定的額定響應(yīng)模式。在初始化階段中,存儲(chǔ)在索引值相應(yīng)于密鑰值的響應(yīng)值序列位置、即響應(yīng)值序列索引上出現(xiàn)的那個(gè)響應(yīng)值作為參考模式。
[0007]在該方法中執(zhí)行初始化階段,在其中存儲(chǔ)輔助數(shù)據(jù)、也即為密鑰重構(gòu)所需的位模式。可以預(yù)先給定任意要重構(gòu)的密鑰,為其例如在制造時(shí)求得并且存儲(chǔ)相應(yīng)的輔助數(shù)據(jù)。這里,在初始化階段期間為確定的、所希望的密鑰或密碼密鑰求得:哪個(gè)位模式(Pattern)處于序列中相應(yīng)于所希望的密鑰值的那個(gè)位置上。一般而言,不排除所求得的位模式或足夠類似的位模式也已經(jīng)在稍早的位置上出現(xiàn)。所希望的密鑰于是不能被正確地重構(gòu)。
[0008]在Haile Yu, Philipp Leong, Qiang Xu: An FPGA Chip Identificat1nGenerator using Configurable Ring Oscillators, IEEE Trans.VLSI Syst.20(12):2198-2207 (2012), http://www.ee.usyd.edu.au/people/philip.leong/UserFiles/File/papers/id_tvlsil2.pdf中描述了一種方法,以便在FPGA上從可配置的PUF中求得穩(wěn)定的ID (“序列號(hào)”)而無需輔助數(shù)據(jù)。為此,借助可配置的PUF求得ID的位,其方式是,求得PUF的所有可能配置的留數(shù)。該留數(shù)在此是“粗響應(yīng)”,也即所使用的環(huán)形振蕩器PUF的計(jì)數(shù)器值的差。現(xiàn)在,確定在其中留數(shù)的絕對(duì)值最大的PUF配置。最大留數(shù)的代數(shù)符號(hào)產(chǎn)生所求得的PUF極性,也即ID的所關(guān)聯(lián)的位。如果在PUF中不能達(dá)到用于明確確定該極性的安全距離,那么按照固定的準(zhǔn)則(根據(jù)配置索引的配置下半部分)迭代地一直限制所觀察的PUF配置的范圍,直至可以確定其中留數(shù)足夠明確的結(jié)果。即使將一個(gè)PUF的多個(gè)配置理解為挑戰(zhàn),也根據(jù)PUF-粗-響應(yīng)或者留數(shù)(也即環(huán)形振蕩器PUF的計(jì)數(shù)器值的差)來求得結(jié)果(極性/位是O或I)。
[0009]WO 2010/060005 A2描述了:電路包括產(chǎn)生挑戰(zhàn)值序列的挑戰(zhàn)發(fā)生器,利用該挑戰(zhàn)發(fā)生器加載電路的PUF。通過再處理由粗-響應(yīng)數(shù)據(jù)(內(nèi)部響應(yīng))求得向外給出的響應(yīng)值。US 2013/010957 Al公開了:直接、也即無后續(xù)密鑰提取器地將借助PUF確定的、包含位錯(cuò)誤的密碼密鑰用于與通信伙伴的安全通信。
[0010]由 http://rijndael.ece.vt.edu/puf/paper/fpl2009.pdf (Abhranil Maiti,Patrick Schaumont:1MPROVING THE QUALITY OF A PHYSICAL UNCL0NABLE FUNCT1NUSING CONFIGURABLE RING OSCILLATORS, pp.703-707 In proceeding of: 19thInternat1nal Conference on Field Programmable Logic and Applicat1ns, FPL2009, August 31 - September 2, 2009, Prague, Czech Republic)已知,魯棒地實(shí)現(xiàn)PUF,使得針對(duì)密鑰提取僅需校正少量的位錯(cuò)誤。由此可以將更簡單的錯(cuò)誤校正碼用于密鑰提取。由此,減少了但是沒有避免用于錯(cuò)誤校正(密鑰提取器)所需的實(shí)現(xiàn)花費(fèi)。
[0011]此外,已知密碼謎題(Cryptographic Puzzles),在其中實(shí)體必須正確地猜中一個(gè)值。為此,例如可以使用密碼哈希函數(shù)如SHA-1、SHA256,SHA3等。向該實(shí)體預(yù)先給定目標(biāo)值。該實(shí)體必須遍歷嘗試一定的值范圍,例如16位的值范圍,以便確定相應(yīng)于預(yù)先給定的起始值的那個(gè)輸入值。為此,需要一定的計(jì)算花費(fèi)、也即時(shí)間。尤其已知的是,這種密碼謎題被用作對(duì)于阻斷服務(wù)攻擊的防護(hù)。查詢者在此必須首先解開向其提出的密碼謎題,之后查詢才被處理。密碼迷題例如在http://www.aut.upt.ro/~bgroza/Papers/puz.pdf, http://link, spring