密鑰產(chǎn)生設(shè)備和用于產(chǎn)生密鑰的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種用于在使用物理不可克隆功能(PUF)的情況下產(chǎn)生密鑰的密鑰產(chǎn)生設(shè)備。此外,本發(fā)明涉及一種用于在使用PUF的情況下產(chǎn)生密鑰的方法。
【背景技術(shù)】
[0002]對于許多應(yīng)用而言需要加密密鑰。該加密密鑰例如可以借助密鑰提取器、如模糊密鑰提取器在使用物理不可克隆功能(PUF)的情況下產(chǎn)生。
[0003]已知半導(dǎo)體電路上的物理不可克隆功能。存在不同類型的PUF,譬如可從https://www.cosic.esat.kuleuven.be/ecrypt/courses/albenalI/siides/ingrid_verbauwhede_pufs.pdf獲知。算作此的例如有SRAM-PUF、環(huán)形振蕩器PUF和仲裁器PUF。尤其后者根據(jù)質(zhì)詢值來提供響應(yīng)值。
[0004]如上面提及的模糊密鑰提取器需要輔助數(shù)據(jù),也稱作Helper Data,在生成密鑰時必須產(chǎn)生這些輔助數(shù)據(jù)。此外,這些輔助數(shù)據(jù)必須被保存,為此需要非易失性存儲器。例如 http://www.cosic.esat.kuleuven.be/publicat1ns/article_2323.pdf (M.Yu、D.M’Ra'ih1、S.Devadas 和 1.Verbauwhede,“Security and Reliability Properties ofSyndrome Coding Techniques Used in PUF Key Generat1n,,in GOMACTech conference38,GomacTech,% 1-4 頁,2013)和 http://www.nxp.com/documents/other/75017366, pdf(NXP:PUF - Physical Unclonable Funct1ns, Protecting next-generat1n SmartCard ICs with SRAM-based PUFs)提供關(guān)于基于PUF的密鑰產(chǎn)生的概觀。
[0005]已知的是,PUF特征尤其與供電電壓和環(huán)境溫度有關(guān)或也與其他環(huán)境條件有關(guān)。尤其出于該原因,需要糾錯,以便(在質(zhì)詢一響應(yīng)方法中)由有噪聲的略微不同的PUF響應(yīng)確定穩(wěn)定的值。
[0006]一種方案在于,在選擇PUF密鑰提取器的糾錯方法時允許大量的位錯誤。然而,該方案導(dǎo)致復(fù)雜的糾錯方法。此外,該方案在PUF的情況下具有界限,所述界限在寬波動范圍(例如-40°C至90°C的溫度)上具有明顯波動的特性,即不僅僅具有有限數(shù)目的位錯誤。
[0007]由WO 2013/083415 A2已知一種PUF密鑰提取器,其在糾錯時確定可靠性信息。
[0008]由US 8,312,289 B2已知在連續(xù)運行中在錯誤增加時更新或重新確定輔助數(shù)據(jù)。
[0009]由 http://rijndael.ece.vt.edu/puf/paper/fpl2009.pdf (Abhranil Mait1、Patrick Schaumont:IMPROVING THE QUALITY OF A PHYSICAL UNCL0NABLE FUNCT1N USINGCONFI⑶RABLE RING OSCILLATORS,第 703-707 頁,19th Internat1nal Conference onField Programmable Logic and Applicat1ns, FPL 2009, August 31 - September 2,2009,Prague, Czech Republic)已知穩(wěn)健地實現(xiàn)PUF,使得對于密鑰提取僅須糾正少量位錯誤。
【發(fā)明內(nèi)容】
[0010]在此背景下,本發(fā)明的任務(wù)是在不同條件下以簡單方式在使用物理不可克隆功能的情況下提供可靠的密鑰。
[0011]因此,提出一種用于在使用物理不可克隆功能PUF的情況下產(chǎn)生密鑰的密鑰產(chǎn)生設(shè)備。該密鑰產(chǎn)生設(shè)備具有:用于存儲多個輔助數(shù)據(jù)集的存儲器裝置,其中輔助數(shù)據(jù)集中的每個都具有輔助數(shù)據(jù)和附加信息;用于基于附加信息選擇輔助數(shù)據(jù)集的選擇裝置;和用于基于所選擇的輔助數(shù)據(jù)集的輔助數(shù)據(jù)并且在使用PUF的情況下產(chǎn)生密鑰的產(chǎn)生裝置。
[0012]相應(yīng)的裝置、例如選擇裝置或產(chǎn)生裝置可以以硬件技術(shù)和/或也以軟件技術(shù)來實施。在以硬件技術(shù)實施時,相應(yīng)的裝置可以被構(gòu)造為設(shè)備或設(shè)備的一部分,例如構(gòu)造為計算機或微處理器。在以軟件技術(shù)實施時,相應(yīng)的裝置可以被構(gòu)造為計算機程序產(chǎn)品、功能、例程、程序代碼的一部分或可實施的對象。
[0013]根據(jù)所提出的密鑰產(chǎn)生裝置,在存儲器裝置中存儲有用于產(chǎn)生裝置的多個輔助數(shù)據(jù)或Helper Data集。該產(chǎn)生裝置可以是PUF密鑰提取器,該PUF密鑰提取器在使用PUF和輔助數(shù)據(jù)的情況下產(chǎn)生加密密鑰。
[0014]基于附加信息可以通過選擇裝置來選擇輔助數(shù)據(jù)集并且因此選擇包含在其中的輔助數(shù)據(jù)。輔助數(shù)據(jù)集的選擇的類型可以與附加信息的類型有關(guān)。例如,選擇裝置可以確定,是否必須滿足確定的準(zhǔn)則并且哪些附加信息滿足該準(zhǔn)則,或所述附加信息是否包含確定的值。
[0015]多個輔助數(shù)據(jù)集的產(chǎn)生和存儲例如可以在制造期間進行。在附加信息為環(huán)境條件時,可以在一個設(shè)備中模擬環(huán)境條件。例如,包含PUF的設(shè)備可以在溫度室中遭受不同的溫度。在此情況下,可以施加多個溫度特定的輔助數(shù)據(jù)集。
[0016]借助所提出的密鑰產(chǎn)生設(shè)備例如可以針對環(huán)境條件的大范圍確保:基于PUF的密鑰提取或密鑰產(chǎn)生可以可靠地產(chǎn)生確定的加密密鑰。情況如此,因為根據(jù)附加信息可以選擇不同的輔助數(shù)據(jù)。以此方式可以在考慮不同準(zhǔn)則、如尤其環(huán)境條件的情況下進行密鑰的產(chǎn)生,所述準(zhǔn)則通過基于附加信息選擇輔助數(shù)據(jù)集之一而并入(einfliessen)。
[0017]根據(jù)一種實施方式,密鑰產(chǎn)生裝置具有用于確定PUF的至少一個環(huán)境條件的至少一個當(dāng)前值的確定裝置,其中存儲器裝置被設(shè)立用于針對每個輔助數(shù)據(jù)集將用于至少一個環(huán)境條件的參考值作為附加信息來存儲,并且其中選擇裝置被設(shè)立用于基于至少一個當(dāng)前值和至少一個參考值選擇輔助數(shù)據(jù)集。
[0018]由于PUF的特征隨環(huán)境條件改變而同樣改變,所以附加信息尤其可以與環(huán)境條件有關(guān)。環(huán)境條件的當(dāng)前值可以通過確定裝置來確定并且提供給選擇裝置。選擇裝置于是可以判定分別包含至少一個參考值的所存儲的附加信息中的哪些附加信息對應(yīng)于當(dāng)前確定的值,并且基于此選擇輔助數(shù)據(jù)或輔助數(shù)據(jù)集,該輔助數(shù)據(jù)集應(yīng)被用于產(chǎn)生密鑰。
[0019]這因此意味著:針對密鑰提取根據(jù)環(huán)境條件、尤其是根據(jù)環(huán)境溫度來選擇輔助數(shù)據(jù)。該選擇可以明確地在使用相應(yīng)的確定裝置的情況下進行。也就是說,例如根據(jù)當(dāng)前所測量的溫度來選擇與該溫度關(guān)聯(lián)的輔助數(shù)據(jù)集。
[0020]根據(jù)另一實施方式,存儲器裝置被設(shè)立用于針對每個輔助數(shù)據(jù)集將用于至少一個環(huán)境條件的參考值范圍作為附加信息存儲。
[0021]根據(jù)該實施方式,每個輔助數(shù)據(jù)集可以具有參考值范圍。這意味著:一個輔助數(shù)據(jù)集的輔助數(shù)據(jù)不僅僅適合于環(huán)境條件的單個當(dāng)前值,而是適合于環(huán)境條件的多個當(dāng)前值。
[0022]根據(jù)另一實施方式,選擇裝置被設(shè)立用于選擇輔助數(shù)據(jù)集,該輔助數(shù)據(jù)集的參考值范圍對應(yīng)于至少一個當(dāng)前值。
[0023]優(yōu)選地,該參考值范圍恰好包含至少一個當(dāng)前值。若參考值范圍中沒有一個包含當(dāng)前值,則選擇如下輔助數(shù)據(jù)集,該輔助數(shù)據(jù)集的參考值范圍最接近當(dāng)前值。
[0024]根據(jù)另一實施方式,選擇裝置被設(shè)立用于當(dāng)所存儲的參考