提供硬件保护的安全装置、集成电路及方法

文档序号:7919767阅读:191来源:国知局
专利名称:提供硬件保护的安全装置、集成电路及方法
技术领域
本发明是关于硬件保护(hardware security),特别是关于提供硬件保护的安 全装置、集成电路及方法。
背景技术
无线通信系统需要的安全环境(security environment)是可以进行具有可操 作性、可移植性以及大的发展速度的传递,而又具有明显的低成本以用于高 级安全应用的安全环境。无线通信系统可以基于码分多址(Code Division Multiple Access ,以下简称为CDMA),时分多址(Time Division Multiple Access,以下简称为TDMA),频分多址(Frequency Division Multiple Access, 以下简称为FDMA),以及其它调制技术或其结合。当由移动电话传送的数据被截取以及译码,提供了移动盗版(cdhilar pirate)用户的装置序列号(equipment serial number,以下简称为ESN)或国际移 动装置识别符(international mobile叫uipment identifier,以下简称为IMEI)时, 盗版(piracy)或欺诈(fmud)就发生于传统的通信系统中。接着,被盗版的ESN 或IMEI被使用于其它移动电话,导致了数据以及服务提供者对于盗版的ESN 或IMEI的损失。某些制造商将硬件保护机制应用于移动电话中以防止IMEI以及ESN欺 诈,例如在存储器中设置特定鉴别码(authenticationcode)。通过执行对移动电 话中鉴别码的检查,数据以及服务的提供者仅允许具有有效鉴别码的移动电 话来存取数据以及服务。当存储器被擦除以安装新的系统软件以及被重新编 程以下载特定识别码时,将发生问题。由于并不是所有的电话制造商都需要硬件保护,而在递送给客户以前,集成电路(integrated circuit,以下简称为IC)制造商通过配置一次编程(one built-in time programmable,以下简称为OTP)存储器或eFuse(—种电子程序保 险,以下称为eFuse)来制造具有安全性能的IC,这导致了储存管理问题,增 加了设计成本以及系统架构成本。因此,需要一种具有简单安全架构的IC。发明内容为了解决以上技术问题,本发明提供了一种提供硬件保护的安全装置、 集成电路及方法。本发明提供了一种提供硬件保护的安全装置,包括安全存储器,其包 括安全鉴别数据;以及安全集成电路,耦接于该安全存储器,包括微处理 器,用于处理数据;安全控制器,耦接于该微处理器以及该安全存储器,将 该安全鉴别数据传输至该微处理器;安全管脚,耦接于该安全控制器,使能 该安全集成电路的该硬件保护;以及只读存储器,耦接于该微处理器,具有 储存于其中的多个指令,该多个指令根据该安全鉴别数据以及该安全集成电 路的该硬件保护判断安全等级,该多个指令是由该微处理器根据启动操作来 执行。本发明提供了一种提供硬件保护的集成电路,包括微处理器,用于处 理数据;安全控制器,耦接于该微处理器以及包括安全鉴别数据的安全存储 器,用于将该安全鉴别数据传输至该微处理器;安全管脚,耦接于该安全控 制器,使能该集成电路的该硬件保护;以及只读存储器,耦接于该微处理器, 具有储存于其中的多个指令,该多个指令根据该安全鉴别数据以及该集成电 路的该硬件保护判断安全等级,该多个指令是由该微处理器根据启动操作来 执行。本发明提供了一种提供硬件保护的方法,包括由安全存储器中下载安 全鉴别数据;传输该安全鉴别数据至微处理器;使能安全集成电路的硬件保护;提供多个指令,以根据该安全鉴别数据以及该安全集成电路的该硬件保 护判断安全等级;以及根据启动操作来执行该多个指令。本发明提供的提供硬件保护的安全装置、集成电路及方法,通过安全装 置的安全管脚来设定安全等级,减少了安全架构的成本以及复杂度,提供了 灵活的安全架构,而不需降低其安全等级。


图1为本发明一实施例的安全通信系统的方框图。图2为传统安全系统的方框图。图3为本发明一实施例的安全系统的方框图。图4为本发明一实施例的提供硬件保护的方法流程图。
具体实施方式
图1为本发明一实施例的安全通信系统的方框图。安全通信系统1包括 移动安全装置100a、 100b,基站102a、 102b,基站控制器104,分组数据服 务节点(packet data serving node,以下简称为PDSN)106,网络108,移动切换 中心(mobile switching center ,以下简称为MSC)llO,以及公用切换电话网络 (public switched telephone network,以下简称为PSTN)112。移动安全装置100a 耦接于基站102a,且移动安全装置100b耦接于基站102b。接着,基站102a 与基站102b耦接于基站控制器104, PDSN106以及MSCllO,且PDSN106 以及MSCllO分别耦接于网络108以及PSTN112。在安全通信系统1中,依据每一移动安全装置100a以及100b是否为活 动的或软切换(softhandofi),每一移动安全装置100a以及lOOb在任何特定时 刻,通过无线连接实现与一个或多个基站102a以及102b进行通信。基站控 制器104对每个基站102a以及102b提供协调以及控制,并且控制每一移动 安全装置100a以及100b的呼叫以及数据传输路径。对于数据服务,基站控制器104耦接于执行多种功能的PDSN106以支持 分组数据服务。网络108可以是网际协议(Intemet Protocol ,以下简称为IP) 网络,例如,英特网(Intemet)。每一移动安全装置100a以及100b可以通过英 特网由服务器存取数据及/或服务。对于语音服务,基站控制器104耦接于 MSC 110。 MSC 110控制移动安全装置100a以及100b之间的电话呼叫路径。 每一移动安全装置100a以及100b可以通过MSC 110于PSTN112中存取传统 的电话服务。移动安全装置100a符合一个或多个CDMA标准,例如,IS-95, IS-98, CDMA2000, W-CDMA,或其它CDMA标准,或其结合。这些CDMA标准 是本领域普通技术人员所知道的,在此作为参考。图2为传统安全系统的方框图,包括安全装置20, KEYPRO(—种硬件 锁,以下简称为KEYPRO)22,个人计算机(以下简称为PC, PC中包括了快闪 工具与元工具(metatoo1))24,快闪数据(flash data)26以及元数据(metadata)28。 安全装置20包括安全集成电路(如图2所示的基带芯片200),外部组件202, 以及闪存204。基带芯片200包括只读存储器(read only memory,以下简称为 ROM)2000、 eFuse 2002、微处理器2004、以及安全控制器2006。基带芯片 200通过外围总线(peripheral bus)与外部组件202通信,其中,外围总线可以 是调试管脚测试(debug pin TEST),联合测试运动组(Joint Test Action Group, 以下简称为JTAG)总线,通用异步收发器(Universal Asynchronous Receiver/Transmitter,以下简称为UART)总线,以及外部存储器接口(External Memory Interface ,以下简称为EMI)总线。其中,JTAG标准也被称为正EE 1149.1,是典型的使用边界扫描来测试印刷电路板的标准。UART是在并行与 串行接口之间进行数据转换的异步收发器。微处理器2004处理用于基带芯片200的数据以及指令。ROM 2000包括 将被微处理器2004执行的启动指令(boot instruction^ eFuse2002储存基带芯 片200的安全设定,指示硬件保护是否被使能(enable)。安全控制器2006通过EMI总线存取闪存204中的安全鉴别数据(也就是快闪图像2040),以使微处 理器2004可以对安全鉴别数据执行硬件保护检査。在启动操作(boot-up operation)中,微处理器2004由ROM2000中读取启 动指令,执行启动指令以断开(disconnect)所有的外围总线(调试管脚测试, JTAG总线,以及UART总线),以及存取eFuse2002中的安全设定。如果硬 件保护被使能,则微处理器2004存取安全鉴别数据以执行安全检查,否则, 微处理器2004不会从闪存204中读取安全鉴别数据,也不会对安全装置20 进行安全检查。接着,如果安全鉴别数据是有效的,则微处理器2004重新连 接所有的外围总线以及承载安全指令/操作码(operation),如果安全鉴别数据是 无效的或硬件保护被禁止(disable),则微处理器2004承载非安全指令/操作码。因为eFuse2002的值是在制造IC的过程中被设定的,因此,使用用于基 带芯片200的安全设定的eFuse 2002是没有弹性的。图3揭露了一种新的安 全系统,其可以替代图2中所示的传统安全系统的设计。图3为本发明一实施例的安全系统的方框图,包括安全装置30, KEYPR022, PC24,快闪数据26以及元数据28。安全装置30包括安全集 成电路(例如,图3所示的基带芯片300),外部组件202,以及闪存204。基 带芯片300包括ROM3000,微处理器3002,安全控制器3004,以及安全管 脚Psec。基带芯片300通过外围总线(例如,调试管脚测试,JTAG总线,UART 总线,以及EMI总线)与外部组件通信。安全装置30可以是但不限于移动装置(例如,移动电话),PDA,笔记 本电脑等等。闪存(即安全存储器)204包括快闪图像2040(即安全鉴别数据)。 微处理器3002用于处理数据以及指令。微处理器3002根据启动操作读取并 且执行启动指令。微处理器3002可以由数字信号处理器(digital signal processor, DSP),牛寺殊应用集成电路(application specific integrated circuit, ASIC),处理器,微处理器,控制器,微控制器,现场可编程逻辑门矩阵(field programmable gate array, FPGA),编程逻辑装置,其它电子单元,或以上任何的组合来实施以执行上述功能。安全控制器3004通过EMI总线存取快闪图 像2040。例如,安全管脚Psec通过接地以禁止硬件保护来提供基带芯片300 的安全设定,或通过通电以使能硬件保护来提供基带芯片300的安全设定。 ROM 3000储存启动指令,启动指令可根据安全鉴别数据以及安全设定来决定 安全等级(security level)。 ROM 3000以及闪存204可以由闪存,可编程 ROM(programmable ROM,以下简称PROM),可擦除PROM (erasable PROM, 以下简称EPROM),电可擦除PROM (electronically erasable PROM,以下简称 EEPROM),电池备份(battery backed-up)RAM,其它存储器技术,或以上技术 的任何组合来实施。微处理器3002在安全检査前,执行启动指令以断开基带芯片300的所有 外围总线,以阻止黑客存取ROM 3000并改变其中的代码。由于安全设定可以通过将安全管脚Psec通电或接地来改变,因此ROM 3000中的启动指令需要新的安全程序(security procedure)以提供与图2中安全 等级相同的安全等级。图4为本发明一实施例的提供硬件保护的方法流程图, 可与图3所示的安全系统合并。在步骤S400中,安全装置30重置,然后,执行步骤S402,在步骤S402 中,微处理器3002执行ROM 3000中的启动指令以读取安全管脚Psec的安全 设定。接着,在步骤S404中,微处理器3002判断基带芯片300的安全设定是 否被使能。如果是,则执行步骤S408,否则,执行步骤S406。与图2所示的 传统的安全系统中的启动指令相反,尽管安全设定为非安全基带芯片,微处 理器3002仍继续加载快闪图像2040以执行安全检查。在步骤S406中,微处理器3002判断快闪图像2040(即安全鉴别数据)是 否有效,如果是则执行步骤S410,否则,执行步骤S412。在步骤S410中,微处理器3002进一步判断快闪图像2040中的信息鉴别 码(message authentication code,以下简称为MAC)是否有效,如果是则执行步骤S414,否则,执行步骤S412。 MAC又可称为信息完整码(Message Integrity Code, MIC),其被加密为用于鉴别快闪图像2040的信息。MAC算法允许将 被鉴别的绝对长度(arbitrary-length)信息(即快闪图像2040)以及ROM3000的密 钥(secret key)作为输入,且输出MAC值,其中,ROM3000也可被称为启动 ROM。MAC值通过允许验证器(verifier)(ROM3000的密钥)以侦测信息内容(快 闪图像2040)的任何改变,即保护了信息的完整性,又保护了信息真实性。在步骤S408中,微处理器3002判断快闪图像2040(即安全鉴别数据)是 否有效,如果是则执行步骤S418,否则,执行步骤S416。在步骤S412中,微处理器3002判断出安全装置30具有非安全基带芯片 300以及非安全快闪图像2040,接着,使能外围总线(包括调试管脚测试, JTAG总线,UART总线,以及EMI总线)以允许非安全数据的存取。在步骤S414中,微处理器3002判断出安全装置30具有非安全基带芯片 300以及安全快闪图像2040,使能外围总线(包括调试管脚测试,JTAG总 线,UART总线,以及EMI总线),以实现安全数据交换(transaction),并禁止 基带芯片300下载快闪图像2040。因为基带芯片300是非安全的,其可能会 被改变。因此,快闪图像2040的下载是被禁止的,且不能获得安全快闪图像 2040的副本。在步骤S416中,微处理器3002判断出安全装置30具有安全基带芯片300 以及非安全快闪图像2040,将所有外围总线断开,且允许基带芯片300下载 快闪图像2040。因为快闪图像2040是非安全的,闪存204可能被改变。在此 情况下,所有的外围总线保持断开,以阻止ROM 3000中指令码被取代。在步骤S418中,微处理器3002判断出安全装置30具有安全基带芯片300 以及安全快闪图像2040,且允许基带芯片300下载快闪图像2040。微处理器 3002检查快闪图像2040中的MAC,如果MAC是有效的,则允许安全数据 传输,如果MAC是无效的,则也允许快闪图像2040的下载。本发明揭露的安全装置及其方法,通过安全装置的安全管脚来设定安全等级,因此,减少了安全架构的成本以及复杂度。安全装置包括一个启动ROM, 启动ROM根据安全管脚以及外部闪存中的快闪图像,提供相应的安全等级以 及程序。安全管脚提供了安全架构的灵活性(flexibility),且启动ROM提供了 安全程序,安全程序保存了与先前技术相同的安全等级,安全装置及其方法 的结合提供了灵活的安全架构,而不需降低其安全等级。虽然本发明已以较佳实施例揭露如上,然其并非用于限定本发明,任何 所属技术领域中的技术人员,在不脱离本发明的范围内,可以做一些改动, 因此本发明的保护范围应以权利要求所界定的范围为准。
权利要求
1.一种提供硬件保护的安全装置,其特征在于,该装置包括安全存储器,包括安全鉴别数据;以及安全集成电路,耦接于所述安全存储器,包括微处理器,用于处理数据;安全控制器,耦接于所述微处理器以及所述安全存储器,用于将所述安全鉴别数据传输至所述微处理器;安全管脚,耦接于所述安全控制器,用于使能所述安全集成电路的所述硬件保护;以及只读存储器,耦接于所述微处理器,用于储存多个指令,所述多个指令根据所述安全鉴别数据以及所述安全集成电路的所述硬件保护判断安全等级,所述多个指令是由所述微处理器根据启动操作来执行。
2. 根据权利要求1所述的提供硬件保护的安全装置,其特征在于,所述 安全集成电路进一步包括外围总线,所述外围总线是根据所述启动操作被 禁止;以及所述多个指令,当所述微处理器执行所述多个指令时,将导致所 述微处理器执行判断所述安全集成电路的所述硬件保护是否被禁止; 判断所述安全鉴别数据是否有效;如果所述安全集成电路的所述硬件保护被禁止,且所述安全鉴别数据有 效,则判断所述安全鉴别数据的信息鉴别码是否有效;以及 如果所述信息鉴别码有效,则使能所述外围总线。
3. 根据权利要求2所述的提供硬件保护的安全装置,其特征在于,当所 述微处理器执行所述多个指令时,将导致所述微处理器进一步执行如果所述信息鉴别码无效,则使能所述外围总线;以及 如果所述信息鉴别码无效,则禁止所述安全集成电路下载所述安全鉴别数据。
4. 根据权利要求2所述的提供硬件保护的安全装置,其特征在于,当所述微处理器执行所述多个指令时,将导致所述微处理器进一步执行如果所述安全集成电路的所述硬件保护被使能,且所述安全鉴别数据无 效,则允许所述安全集成电路下载所述安全鉴别数据。
5. 根据权利要求2所述的提供硬件保护的安全装置,其特征在于,当所述微处理器执行所述多个指令时,将导致所述微处理器进一步执行如果所述安全集成电路的所述硬件保护被使能,所述安全鉴别数据无效, 且所述信息鉴别码无效,则允许所述安全集成电路下载所述安全鉴别数据。
6. 根据权利要求2所述的提供硬件保护的安全装置,其特征在于,所述外围总线为联合测试运动组总线。
7. —种提供硬件保护的集成电路,其特征在于,该集成电路包括 微处理器,用于处理数据;安全控制器,耦接于包括安全鉴别数据的安全存储器以及所述微处理器,用于将所述安全鉴别数据传输至所述微处理器;安全管脚,耦接于所述安全控制器,用于使能所述集成电路的所述硬件 保护;以及只读存储器,耦接于所述微处理器,用于储存多个指令,所述多个指令 根据所述安全鉴别数据以及所述集成电路的所述硬件保护判断安全等级,所 述多个指令是由所述微处理器根据启动操作来执行。
8. 根据权利要求7所述的提供硬件保护的集成电路,其特征在于,该集 成电路进一步包括外围总线,所述外围总线是根据所述启动操作被禁止; 以及所述多个指令,当所述微处理器执行所述多个指令时,将导致所述微处 理器执行判断所述集成电路的所述硬件保护是否被禁止; 判断所述安全鉴别数据是否有效;如果所述集成电路的所述硬件保护被禁止,且所述安全鉴别数据有效, 则判断所述安全鉴别数据的信息鉴别码是否有效;以及 如果所述信息鉴别码有效,则使能所述外围总线。
9. 根据权利要求8所述的提供硬件保护的集成电路,其特征在于,当所 述微处理器执行所述多个指令时,将导致所述微处理器进一步执行如果所述信息鉴别码无效,则使能所述外围总线;以及 如果所述信息鉴别码无效,则禁止所述集成电路下载所述安全鉴别数据。
10. 根据权利要求8所述的提供硬件保护的集成电路,其特征在于,当所 述微处理器执行所述多个指令时,将导致所述微处理器进一步执行如果所述集成电路的所述硬件保护被使能,且所述安全鉴别数据无效, 则允许所述集成电路下载所述安全鉴别数据。
11. 根据权利要求8所述的提供硬件保护的集成电路,其特征在于,当所 述微处理器执行所述多个指令时,将导致所述微处理器进一步执行如果所述集成电路的所述硬件保护被使能,所述安全鉴别数据无效,且 所述信息鉴别码无效,则允许所述集成电路下载所述安全鉴别数据。
12. 根据权利要求8所述的提供硬件保护的集成电路,其特征在于,所述 外围总线为联合测试运动组总线。
13. —种提供硬件保护的方法,其特征在于,该方法包括 由安全存储器中下载安全鉴别数据; 传输所述安全鉴别数据至微处理器; 使能安全集成电路的硬件保护;提供多个指令,以根据所述安全鉴别数据以及所述安全集成电路的所述 硬件保护判断安全等级;以及根据启动操作来执行所述多个指令。
14. 根据权利要求13所述的提供硬件保护的方法,其特征在于,该方法 进一步包括根据所述启动操作禁止外围总线,其中,所述根据启动操作来执行所述多个指令的步骤包括判断所述安全集成电路的所述硬件保护是否被禁止; 判断所述安全鉴别数据是否有效;如果所述安全集成电路的所述硬件保护被禁止,且所述安全鉴别数据有 效,则判断所述安全鉴别数据的信息鉴别码是否有效;以及 如果所述信息鉴别码有效,则使能所述外围总线。
15. 根据权利要求14所述的提供硬件保护的方法,其特征在于,所述根 据启动操作来执行所述多个指令的步骤进一步包括-如果所述信息鉴别码无效,则使能所述外围总线;以及 如果所述信息鉴别码无效,则禁止所述安全集成电路下载所述安全鉴别 数据。
16. 根据权利要求14所述的提供硬件保护的方法,其特征在于,所述根 据启动操作来执行所述多个指令的步骤进一步包括如果所述安全集成电路的所述硬件保护被使能,且所述安全鉴别数据无 效,则允许所述安全集成电路下载所述安全鉴别数据。
17. 根据权利要求14所述的提供硬件保护的方法,其特征在于,所述根据启动操作来执行所述多个指令的步骤进一步包括如果所述安全集成电路的所述硬件保护被使能,所述安全鉴别数据无效, 且所述信息鉴别码无效,则允许所述安全集成电路下载所述安全鉴别数据。
18. 根据权利要求14所述的提供硬件保护的方法,其特征在于,所述外围总线为联合测试运动组总线。
全文摘要
本发明提供了一种提供硬件保护的安全装置、集成电路及方法,提供硬件保护的安全装置包括具有安全鉴别数据的安全存储器;安全集成电路,包括微处理器;安全控制器,用于将安全鉴别数据传输至微处理器;安全管脚,用于使能安全集成电路的硬件保护;以及只读存储器,具有储存于其中的多个指令,该多个指令是由微处理器根据启动操作来执行,并根据安全鉴别数据以及安全集成电路的硬件保护判断安全等级。本发明提供的提供硬件保护的安全装置、集成电路及方法,通过安全装置的安全管脚来设定安全等级,减少了安全架构的成本以及复杂度,提供了灵活的安全架构,而不需降低其安全等级。
文档编号H04W12/12GK101404799SQ20081016600
公开日2009年4月8日 申请日期2008年9月28日 优先权日2007年10月4日
发明者杨宗宪, 杨庆昭 申请人:联发科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1