本申请案主张2014年4月29日在美国专利商标局申请的第14/264,645号美国非临时专利申请案的优先权和权益,所述非临时专利申请案的整个内容以引用的方式并入本文中。
技术领域
本发明大体上涉及在芯片上系统(SoC)装置中产生衍生密钥。
背景技术:
在所述装置的生命周期中很早就将若干“主密钥”提供给芯片上系统(SoC)装置。这些主密钥可由若干单独方中的一者拥有。经由基于PKI的签名模型来控制从主密钥产生特定衍生密钥的能力,其中一方,通常是芯片供应商,持有根密钥。根密钥的持有者能够使用委托证书来授权一方创建特定衍生密钥供其自己使用,同时将所述方与其它方隔开。每个衍生密钥具有经签名的元数据,其控制每一衍生密钥的安全策略。
因此,需要一种用于基于SoC装置中的较弱元数据来防止产生重复衍生密钥的技术。
技术实现要素:
本发明的方面可驻留在一种集成电路中,所述集成电路包括:处理器,其经配置以:接收委托证书,其中所述委托证书包含第一公钥;使用第二公钥来验证所述委托证书的数字签名;以及使用安全地存储在所述集成电路中的秘密密钥且使用第一公钥作为到密钥导出函数的输入来产生衍生密钥。
在本发明的更详细方面中,所述第一公钥可为第一方,且所述秘密密钥可为所述第一方的主密钥。所述秘密密钥可供第一方使用,且不可供第二方使用,且第二私钥可为第二方的,且不可供所述第一方使用。所述第一方可为服务提供商和/或原始设备制造商。所述第二方可为集成电路的供应商和/或制造厂。
本发明的另一方面可驻留在集成电路中,其包括:用于接收委托证书的装置,其中所述委托证书包含管理安全策略的经签名元数据;用于使用公钥来验证所述委托证书的数字签名的装置;以及用于使用安全地存储在所述集成电路中的秘密密钥且使用所述经签名元数据作为到密钥导出函数的输入来产生衍生密钥的装置。
本发明的另一方面可驻留在远程站中,其包括处理器,所述处理器经配置以:接收具有数字签名的委托证书;使用公钥来验证数字签名;以及使用安全地存储在处理器中的秘密密钥且使用所述数字签名作为到密钥导出函数的输入来产生衍生密钥。
本发明的另一方面可驻留在远程站中,其包括处理器,所述处理器经配置以:接收委托证书,其中所述委托证书包含第一公钥;使用第二公钥来验证所述委托证书的数字签名;以及使用安全地存储在所述处理器中的秘密密钥且使用所述第一公钥作为到密钥导出函数的输入来产生衍生密钥。
附图说明
图1是无线通信系统的实例的框图。
图2是根据本发明的用于在芯片上系统(SoC)装置中提供衍生密钥的方法的流程图。
图3是根据本发明的用于导出SoC装置中的衍生密钥的方法的框图。
图4是包含处理器和存储器的计算机的框图。
图5是用于基于私钥产生数字签名的方法的框图。
图6是用于使用公钥来验证委托证书的数字签名的方法的框图。
图7A到7C是用于使用安全地存储在SOC装置中的秘密密钥且使用来自证书的信息作为到密钥导出函数的输入来产生衍生密钥的方法的框图。
图8是根据本发明的用于导出SoC装置中的衍生密钥的另一方法的流程图。
图9是根据本发明的用于导出SoC装置中的衍生密钥的另一方法的流程图。
具体实施方式
词语“示范性”在本文中用于表示“充当实例、例子或说明”。本文中被描述为“示范性的”任何实施例不必被解释为比其它实施例优选或有利。
参考图2和3,本发明的方面可驻留在集成电路310中,所述集成电路包括处理器,所述处理器经配置以:接收委托证书CERT(步骤210),其中委托证书包含第一公钥KPUB1;使用第二公钥KPUB2来验证所述委托证书的数字签名(步骤220);以及使用安全地存储在所述集成电路中的秘密密钥SK且使用所述第一公钥作为到密钥导出函数(KDF)的输入来产生衍生密钥(步骤230)。
在本发明的更详细方面中,第一公钥KPUB1可为第一方B 320的,且秘密密钥SK可为第一方320的主密钥MK。秘密密钥可供所述第一方使用,且不可供第二方A 330使用,且对应于第二公钥KPUB2的私钥KPRI2可为第二方的,且不可供第一方使用。所述第一方可为服务提供商和/或原始设备制造商(OEM)。所述第二方可为集成电路310的供应商和/或制造厂。所述集成电路可为芯片上系统(SoC)装置。
在基本操作中,第一方320可将其公钥KPUB1发送到第二方330(步骤202)。所述第二方可产生委托证书CERT(步骤204),并将所产生的证书转发到第一方(步骤206)。
进一步参看图1和4,远程站102可包括计算机400,其包含处理器410(例如,在集成电路310中)、储存媒体420(例如存储器和/或磁盘驱动器)、显示器430,以及例如小键盘440等输入,以及无线连接450(例如Wi-Fi连接和/或蜂窝式连接)。
图5中示出用于为来自第一方320的消息MSG中的委托证书CERT产生数字签名CERT SIG的方法500。将所述委托证书中的信息输入到散列函数510,例如SHA 1、SHA2、SHA3、SHA224、SHA256或SHA512,以产生摘录。将所述摘录输入到算法520,例如RSA 2048、EC160或EC224,以使用第二方330的私钥KPRI2产生证书签名CERTSIG。可包含数字签名作为委托证书CERT的一部分。
图6中示出用于验证委托证书CERT的数字签名CERT SIG的方法600。使用第二方330的公钥KPUB2作为用于算法610的密钥,从接收到的委托证书的数字签名CERTSIG产生第一摘录SIG DIGEST。使用委托证书中的信息作为到与用以产生证书签名CERT SIG的散列函数510相同的散列函数中的输入来产生第二摘录GEN DIGEST。将第一和第二摘录输入到比较函数620中。如果所述两个摘录匹配,那么验证所述委托证书的数字签名。
图7A中示出用于使用安全地存储在SoC装置310中的秘密密钥SK且使用在委托证书CERT中接收到的第一方的公钥KPUB1作为到密钥导出函数KDF的输入来产生衍生密钥DK的方法。在替代方面中,可使用证书签名CERT SIG或使用管理安全策略的经签名元数据来产生衍生密钥。因此,图7B中示出用于使用安全地存储在SoC装置中的秘密密钥SK且使用经签名元数据作为到KDF的输入来产生衍生密钥DK的方法。并且,图7C中示出用于使用安全地存储在SoC装置中的秘密密钥SK且使用数字签名CERT SIG作为到KDF的输入来产生衍生密钥DK的方法。
本发明的另一方面可在于集成电路102,其包括:用于接收委托证书CERT的装置410,其中所述委托证书包含管理安全策略的经签名元数据;用于使用公钥KPUB2来验证所述委托证书的数字签名的装置410;以及用于使用安全地存储在集成电路中的秘密密钥SK且使用经签名元数据作为到密钥导出函数的输入来产生衍生密钥DK的装置。
本发明的另一方面可在于远程站102,其包括处理器410,所述处理器经配置以:接收具有数字签名的委托证书CERT;使用公钥KPUB2来验证所述数字签名;以及使用安全地存储在所述处理器中的秘密密钥SK且使用所述数字签名作为到密钥导出函数的输入来产生衍生密钥DK。
本发明的另一方面可在于远程站102,其包括处理器410,所述处理器经配置以:接收委托证书CERT,其中所述委托证书包含第一公钥KPUB1;使用第二公钥KPUB2来验证所述委托证书的数字签名;以及使用安全地存储在所述处理器中的秘密密钥SK且使用所述第一公钥作为到密钥导出函数的输入来产生衍生密钥DK。
本发明的另一方面可在于用于在芯片上系统(SoC)装置310中导出衍生密钥DK的方法200。在所述方法中,所述SoC装置接收来自第一方320的委托证书CERT(步骤210)。所述委托证书包含所述第一方的公钥KPUB1,且基于第二方的私钥KPRI2产生所述委托证书的数字签名。所述SoC装置使用所述第二方的公钥KPUB2来验证所述委托证书的所述数字签名(步骤220)。所述SoC装置使用安全地存储在SoC装置中的秘密密钥SK且使用所述第一方的公钥作为到密钥导出函数(KDF)的输入来产生所述衍生密钥(步骤230)。
本发明的另一方面可在于一种计算机程序产品,其包括计算机可读媒体420,所述计算机可读媒体包括:用于致使计算机接收来自第一方320的委托证书CERT的代码,其中所述委托证书包含所述第一方的公钥KPUB1,且基于第二方330的私钥KPRI2产生委托证书的数字签名;用于致使计算机使用第二方330的公钥KPUB2来验证所述委托证书的数字签名的代码;以及用于致使计算机使用安全地存储在芯片上系统(SoC)装置的秘密密钥SK且使用所述第一方的公钥KPUB1作为到密钥导出函数的输入来产生衍生密钥DK的代码。
密钥导出函数(KDF)可为NIST特殊出版物800-108中定义的函数,其在计数器(反馈)模式下使用伪随机函数(PRF)。或者,所述KDF可为RFC 5869或ISO-18033-2中定义的函数。
所述委托证书CERT可为数字证书的紧凑、简写形式。根据标准×.509证书格式和其它类似格式的证书具有本发明的技术中不可利用且在“纯硬件”中可使本发明的实施方案复杂的许多字段。
参看图8,本发明的另一方面可在于用于在SoC装置310中导出衍生密钥DK的方法800。在所述方法中,所述SoC装置接收来自第一方320的委托证书CERT(步骤810)。所述委托证书包含管理安全策略的经签名元数据,且基于第二方的私钥KPRI2产生所述委托证书的数字签名。所述SoC装置使用所述第二方的公钥KPUB2来验证所述委托证书的所述数字签名(步骤820)。SoC装置使用安全地存储在SoC装置中的秘密密钥SK且使用经签名元数据作为到KDF的输入来产生衍生密钥(步骤830)。
参考图9,本发明的另一方面可在于用于在芯片上系统(SoC)装置310中导出衍生密钥DK的方法900。在所述方法中,所述SoC装置接收来自第一方320的委托证书CERT(步骤910)。基于第二方的私钥KPRI2产生所述委托证书的数字签名。所述SoC装置使用所述第二方的公钥KPUB2来验证所述委托证书的所述数字签名(步骤920)。所述SoC装置使用安全地存储在SoC装置中的秘密密钥SK且使用所述数字签名作为到密钥导出函数(KDF)的输入来产生所述衍生密钥(步骤930)。
所述秘密密钥SK可为SoC装置中提供的若干主密钥中的一者。每一主密钥可由单独方(例如视频服务提供商、OEM等)拥有或可与之有关。颁予一方的委托证书不应准许创建另一方的委托密钥。
参看图1,无线远程站(RS)102可与无线通信系统100的一或多个基站(BS)104通信。RS可为移动台。无线通信系统100可进一步包含一或多个基站控制器(BSC)106以及核心网络108。核心网络可经由适合回程连接到因特网110和公共交换电话网络(PSTN)112。典型的无线移动站可包含手持式电话、或膝上型计算机。无线通信系统100可使用数种多址接入技术中的任一者或所属领域中已知的其它调制技术,所述多址接入技术例如码分多址(CDMA)、时分多址(TDMA)、频分多址(FDMA)、空分多址(SDMA)、极化分多址(PDMA)。
所属领域的技术人员将理解,可使用多种不同技术和技法中的任一者来表示信息和信号。举例来说,可通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示在整个上文描述中可能参考的数据、指令、命令、信息、信号、位、符号和码片。
所属领域的技术人员将进一步了解,结合本文所揭示的实施例描述的各种说明性逻辑块、模块、引擎、电路和算法步骤可实施为电子硬件、计算机软件或两者的组合。为清晰地说明硬件与软件的这种可互换性,以上已大体就其功能性来描述了各种说明性组件、块、模块、电路和步骤。将此功能性实施为硬件还是软件取决于特定应用以及强加于整个系统的设计约束。熟练的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但此类实施决策不应被解释为会引起脱离本发明的范围。
可使用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或经设计以执行本文所描述的功能的其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合来实施或执行结合本文中所揭示的实施例而描述的各种说明性逻辑区块、模块和电路。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器还可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器的组合、一或多个微处理器结合DSP核心,或任何其它此类配置。
结合本文所揭示的实施例而描述的方法或算法的步骤可直接体现在硬件、由处理器执行的软件模块或所述两者的组合中。软件模块可驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可装卸磁盘、CD-ROM,或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处理器,使得处理器可从存储媒体读取信息和将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。处理器和存储媒体可驻留在ASIC中。ASIC可驻留在用户终端中。在替代方案中,处理器和存储媒体可作为离散组件驻留在用户终端中。
在一或多个示范性实施例中,所描述的功能可在硬件、软件、固件或其任何组合中实施。如果以软件实施为计算机程序产品,那么可将函数作为一或多个指令或代码存储于计算机可读媒体上或经由计算机可读媒体来传输。计算机可读媒体包含非暂时性计算机存储媒体以及包含促进将计算机程序从一处传递到另一处的任何媒体的通信媒体两者。存储媒体可为可由计算机存取的任何可用媒体。举例来说且非限制,此类计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于运载或存储呈指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。并且,任何连接被恰当地称作计算机可读媒体。举例来说,如果使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)或例如红外线、无线电和微波等无线技术从网站、服务器或其它远程源发射软件,那么同轴电缆、光纤电缆、双绞线、DSL或例如红外线、无线电和微波等无线技术包含于媒体的定义中。如本文中所使用,磁盘和光盘包含压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软性磁盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光以光学方式再现数据。以上各项的组合也应包含在计算机可读媒体的范围内。
提供所揭示实施例的先前描述以使得所属领域的任何技术人员能够制作或使用本发明。所属领域的技术人员将容易明白对这些实施例的各种修改,并且可在不脱离本发明的精神或范围的情况下将本文所定义的一般原理应用于其它实施例。因此,本发明无意限于本文中所示出的实施例,而是将被赋予与本文中所揭示的原理和新颖特征相一致的最广泛范围。