基于安全参数的工作安全密钥的产生的制作方法_3

文档序号:9423188阅读:来源:国知局
钥442对经加密数据进行解密。密码引擎470可如通过装置450中的软件480引导那样操作。如上所述,软件480在启用装置450上的安全启动之前可能是不安全的。在这种情况下,恶意软件可被加载到装置450上并且可经执行以(i)引导密码引擎470对经加密数据进行解密及/或(ii)操纵经解密数据。
[0052]图5展示用于基于工作密钥以新颖方式对数据进行加密及解密的过程500的示范性设计。在安全服务器510处,单向密钥导出函数(KDF) 522可基于可与在装置550上授权的软件有关的硬件秘密密钥542及至少一个安全参数544产生装置550的工作密钥。密码引擎530可通过工作密钥对数据进行加密以获得可发送到装置550的经加密数据。
[0053]在装置550处,密钥导出函数522可基于装置550的硬件秘密密钥542及至少一个安全参数544产生装置550的工作密钥。密码引擎570可从安全服务器510接收经加密数据且可通过工作密钥对经加密数据进行解密以获得经解密数据。
[0054]在安全服务器510处,可将硬件秘密密钥542及/或安全参数544存储在安全服务器510内的安全存储装置541中。密钥导出函数522及密码引擎530可用硬件、软件及/或固件实施并且可通过(例如,执行于)安全服务器510内的处理器521实施。
[0055]在装置550处,可将硬件秘密密钥542及/或安全参数544存储在装置550的安全存储器540中。举例来说,安全存储器540可包括OTP存储器并且可通过烧断OTP存储器的熔丝存储硬件秘密密钥542及/或安全参数544。密钥导出函数522及密码引擎570可用硬件、软件及/或固件实施并且可通过(例如,执行于)装置550内的处理器520实施。装置550可为图1中的无线装置100的一个示范性设计。安全存储器540可对应于图1中的无线装置100内的安全存储器140。处理器520可对应于图1中的无线装置100内的处理器122或124。
[0056]多个密钥导出函数可用于在安全服务器510及装置550处的密钥导出函数522。密钥导出函数可利用一或多个密码编译散列函数,例如,SHA-1 (安全散列算法)、SHA-2(其包含 SHA-224、SHA-256、SHA-384 及 SHA-512)、MD-4 (信息摘要)、MD-5 等。安全散列算法具有密码编译特性,使得输入消息与输出摘要(其为伪随机位串)之间的函数不可逆并且两个输入消息映射到同一摘要的可能性极小。可如NIST 800-108中所描述实施公开可用的密钥导出函数522。
[0057]如图2中展示,可将安全参数(例如,与信任根有关的安全信息及与安全启动有关的安全信息)提供于无线装置的安全存储器中作为制造过程的一部分。通常在硬件秘密密钥已提供于无线装置上之后完成安全参数的提供。安全参数通常不是秘密的且可通过未经授权的实体(例如,生产工人)提供。
[0058]如图5中展示,密钥导出函数可用于基于在装置上提供的硬件秘密密钥及至少一个安全参数产生工作密钥。安全参数可与经授权用于装置的软件有关。安全参数还可确定装置上的系统密级及/或特定信任根。在已例如通过将安全参数提供于装置上之后可适当地产生工作密钥。工作密钥可由OEM用来保护秘密数据。未经授权的软件可在提供装置上的安全参数之前被恶意地加载到装置上。然而,未经授权的软件将不能够在不具有正确的安全参数集合的情况下产生正确的工作密钥。此外,可通过未经授权的实体(例如,不可信的员工)将不正确的安全参数加载到装置上。然而,在不具有正确的安全参数集合的情况下将不会产生正确的工作密钥且数据仍将受到保护。在任何情况下,不能够利用正确的工作密钥的软件将不能够对装置上的数据适当地进行加密或解密。
[0059]图6展示用于提供安全性的过程600的示范性设计。过程600可通过装置,或安全服务器,或一些其它实体执行。可基于装置的至少一个安全参数及秘密密钥(例如,硬件秘密密钥)产生工作密钥(例如,通过密钥导出函数)(块612)。至少一个安全参数可与将在装置上认证的软件及/或无线装置的安全性的其它方面有关。可基于工作密钥执行对装置执行至少一个安全功能(块614)。工作密钥可由软件直接或间接用于至少一个安全功能。可将至少一个安全参数及/或秘密密钥存储在装置上的安全存储器中,例如,OTP元件中。
[0060]至少一个安全参数可控制装置的安全性的各个方面。在一个设计中,至少一个安全参数可确定软件是否(或哪一个软件)经授权用于在装置上执行。在另一设计中,至少一个安全参数可确定经授权用于装置上的软件的至少一个操作功能(或软件可如何用于装置上)。在又一设计中,至少一个安全参数可包括用于确定是否授权软件用于装置的公共密钥。公共密钥可对应于用于标志软件的私有密钥,例如,如图3A及3B中展示。至少一个安全参数还可包括其它类型的信息。
[0061]在一个设计中,可通过第一实体(例如,IC芯片制造商,在IC芯片的制造期间)将秘密密钥加载到装置上。可通过第二实体(例如,OEM或ODM装置制造商)将至少一个安全参数加载到装置上,所述第二实体可不同于第一实体。在一个设计中,可在不同时间将秘密密钥及至少一个安全参数加载到装置上。秘密密钥及至少一个安全参数可具有其它不同的特性。
[0062]在框614的一个设计中,装置的数据可通过工作密钥进行加密或标志。在框614的另一设计中,装置的数据可通过工作密钥进行解密或验证。在一个设计中,可在软件的控制下执行至少一个安全功能。
[0063]至少一个安全功能可在激活安全机制(例如,安全启动)以认证软件之前通过软件执行。在不经由安全机制认证软件的情况下,工作密钥的使用可使软件能够在装置上执行。
[0064]在示范性设计中,设备(例如,ASIC、无线装置、电子装置等)可包含存储器及处理器。存储器(例如,图1中的存储器150)可存储用于装置的软件。处理器(例如,图1中的处理器122或124)可以操作方式耦合到存储器(例如,经由一或多个数据总线)。处理器可(i)基于装置的至少一个安全参数及秘密密钥产生工作密钥及(ii)基于工作密钥执行装置的至少一个安全功能(例如,加密、解密、签名、验证等)。处理器可在激活安全机制(例如,安全启动)以认证软件之前执行至少一个安全功能。至少一个安全参数可与存储在存储器中的软件的认证有关。工作密钥可由软件直接或间接用于至少一个安全功能。可通过不同实体及/或在不同时间将秘密密钥及至少一个安全参数加载到装置上。第一实体可将秘密密钥加载到装置上,并且第二实体可稍后将至少一个安全参数加载到装置上。第一实体可为IC芯片制造商,并且第二实体可为OEM或0DM。或者,第一实体可为可信员工,并且第二实体可为不可信员工,例如,在同一生产车间或在不同位置处。设备可进一步包含存储秘密密钥及/或至少一个安全参数的安全存储器。还可将至少一个安全参数存储在设备上的不安全存储器中,只要至少一个安全参数的完整性受存储器保护。
[0065]本文中揭示的安全密钥产生技术可提供各种优点。所述技术可防止在激活安全启动之前在制造中的易受损时间段期间未经授权的软件利用硬件秘密密钥或操纵数据。这可以使0EM/0DM不必实施各种过程来使生产车间安全。可存在通过本文中揭示的技术提供的其它优点。
[0066]所属领域的技术人员将理解,可使用多种不同技术及技艺中的任一个来表示信息及信号。举例而言,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示贯穿以上描述可能参考的数据、指令、命令、信息、信号、位、符号及芯片。
[0067]所属领域的技术人员将进一步了解,在本文中结合揭示内容而描述的各种说明性逻辑区块、模块、电路及算法步骤可实施为电子硬件、计算机软件,或两者的组合。为清晰地说明硬件与软件的此可互换性,上文已大体就其功能性而言描述了各种说明性组件、块、模块、电路及步骤。此功能性是实施为硬件还是软件取决于具体应用及施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同的方式实施所描述的功能性,但此类实施决策不应被解释为会引起偏离本发明的
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1