CN112860497B - 芯片调试使能控制方法 - Google Patents
芯片调试使能控制方法 Download PDFInfo
- Publication number
- CN112860497B CN112860497B CN202110117822.8A CN202110117822A CN112860497B CN 112860497 B CN112860497 B CN 112860497B CN 202110117822 A CN202110117822 A CN 202110117822A CN 112860497 B CN112860497 B CN 112860497B
- Authority
- CN
- China
- Prior art keywords
- debugging
- chip
- random number
- debug
- debugged
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
Abstract
本发明提供了一种芯片调试控制方法,用于控制调试终端对待调试芯片的调试,包括:通过所述待调试芯片的安全调试认证系统对调试终端的身份合法性进行认证;仅当确定调试终端通过所述身份合法性认证时,允许所述调试终端通过调试接口对所述待调试芯片进行调试,否则不允许所述调试终端通过所述调试接口对所述待调试芯片进行调试。本发明满足了芯片在各个阶段可调试性需求,并满足安全性要求,有效保护了芯片内的资产或信息的安全。
Description
技术领域
本发明属于芯片设计领域,特别涉及一种芯片调试使能控制方法。
背景技术
芯片调试是芯片设计流程中必不可少的流程。对芯片的调试使能进行控制,对于保护芯片内的资产和信息安全起着至关重要的作用。对于芯片的调试使能进行控制的一种传统解决方案使用软硬件相结合的层次化控制方法,硬件调试使能控制相比于软件调试使能控制有着更高的优先级。如果硬件禁止调试,则调试会被禁止;如果硬件没有禁止调试且软件调试使能控制被硬件禁止,则允许调试;如果硬件没有禁止调试并且软件调试使能控制被硬件使能,则根据软件的调试使能控制来决定是否允许调试,如果软件设置允许调试,则允许调试,否则禁止。图1从概念层次上描述了当前调试使能的实现示意图。
如图1所示,调试使能控制逻辑C1用于产生调试使能信号i1(Debug_en,调试使能)。功能子系统C2是被调试对象。调试使能信号Debug_en i1用于控制功能子系统C2是否允许通过芯片的调试接口i2进行调试。
硬件调试使能控制寄存器HW_Debug_En_Reg C1.1存储了软件调试使能控制的使能比特sw_dbgctrl_en C1.1.1和调试禁止比特dbg_dis C1.1.2。sw_dbgctrl_end和dbg_dis都是只读的,来自于OTP或Fuse。
当sw_dbgctrl_en=0时,软件调试使能控制寄存器SW_Debug_En_Reg C1.2不启用,i1(Debug_en)只受dbg_dis C1.1.2的控制;sw_dbgctrl_en=1且dbg_dis=0,i1(Debug_en)取决于C1.2的设置。当dbg_dis=1时,i1(Debug_en)=0,对功能子系统C2的调试被禁止;当dbg_dis=0且sw_dbgctrl_en=0,i1(Debug_en)=1,允许对功能子系统C2进行调试;当dbg_dis=0且sw_dbgctrl_en=1,调试是否使能取决于Dbg_en C1.2.1的设置。
软件调试使能控制寄存器SW_Debug_En_Reg C1.2存储了调试使能控制比特Dbg_en C1.2.1,由软件来设置,一般默认值是0,只有在C1.1.1(sw_dbgctrl_en)=1时才会对调试使能的控制起作用。
表1描述了图1中使能控制设置组合以及对应的应用场景。
表1调试使能的控制场景
然而,使用图1所示的软硬件相结合的层次化控制方法控制调试使能存在以下问题:
1)对于表1中的场景1,芯片将无法通过调试接口来调试,一旦芯片在产品化后的正常运行中发生功能问题,将无法对该芯片进行调试分析来准确定位发生问题的原因。
2)对于表1中的场景2,芯片在开发测试的过程中,一直处于可调试的状态,对调试接口的使能没有任何的安全认证的控制,导致芯片内的需要保护的资产和机密信息可能外泄,从而对芯片生产商或设备商或最终客户造成利益损失。
3)对于表1中的场景4,往往是芯片(处于场景3的设置)在运行过程中发生问题后需要调试时会被使用,软件的调试使能控制是发生在芯片的启动代码(Boot-Code)之后,一般而言,为了实现安全启动,芯片的启动代码是固化的,一旦问题发生在芯片的启动阶段,将无法对该芯片进行调试分析来准确定位发生问题的原因。
在另一种传统方案中,使用敲门码对调试使能进行安全控制,只有通过敲门码的验证以后,敲门码安全控制逻辑才允许调试终端通过调试接口对芯片的功能系统进行调试。图2从概念层次描述了敲门码进行调试使能的安全控制示意。如图2所示:
待调试芯片C1包括调试口接口单元C2,用于芯片外部调试接口(i1)和芯片内部调试接口(i2、i3)之间的协议转换和控制;OTP/Fuse C3,用于预先存储敲门码,以及功能系统C5。其中OTP/Fuse C3到敲门码安全控制单元C4之间通过OTP/Fuse数据线i4通信。使用敲门码进行调试使能安全控制的流程为,通过调试终端C0输入敲门码;敲门码安全控制单元C4比较输入的敲门码和预存在OTP/Fuse C3中的敲门码,如果相等则Debug_en(i5)=1,允许调试,否则Debug_en(i5)=0,禁止调试。
然而,使用图2所示的敲门码进行调试的安全控制也会存在问题:
1)敲门码是预设且固定的,容易泄露;2)敲门码很容易破解,例如可通过探测调试通断和芯片之间的调试接口来破解码,也可以通过多次尝试破解,故没有真正的安全性可言。
发明内容
本发明的目的在于提供一种芯片调试使能控制方法,解决芯片的可调试性和安全性之间的矛盾,利用随机数和非对称密码学技术,对调试者的身份合法性进行认证,只有通过身份合法性认证判决的调试终端才能通过调试接口对待调试芯片进行调试,并且这种身份合法性认证合法性判决完全是在芯片内部由硬件完成,实现真正的安全调试使能控制。所述芯片调试使能控制方法包括:
通过所述待调试芯片的安全调试认证系统对调试终端的身份合法性进行认证;
仅当确定调试终端通过所述身份合法性认证时,将芯片调试标志设置为使能,允许所述调试终端通过调试接口对所述待调试芯片进行调试,
否则,将芯片调试标志设置为禁止,不允许所述调试终端通过所述调试接口对所述待调试芯片进行调试。
优选地,所述调试终端与调试管理服务器相连接,所述待调试芯片存储第一公钥,所述调试管理服务器存储所述第一公钥相对应的第一私钥,用于标识所述调试终端身份的合法性。
优选地,所述待调试芯片进一步包括扩展管脚,用于扩展芯片上电复位时调试终端身份合法性认证的窗口,所述方法进一步包括:
在芯片上电复位后,如果所述扩展管脚为高电平,当确定调试终端通过所述身份合法性认证时,则启动所述待调试芯片并进入调试状态。
优选地,在芯片上电复位后,如果所述扩展管脚为低电平,则启动所述待调试芯片并进入正常工作状态。
优选地,所述安全调试认证系统进一步包括寄存器组,所述寄存器组存储有:
芯片标识,用于唯一地标识每个待调试芯片;
所述第一公钥,所述第一公钥为非对称加解密算法的公钥。
优选地,所述安全调试认证系统进一步包括数据临时存储区,以使所述调试终端通过所述数据临时存储区与所述安全调试认证系统通信。
优选地,所述数据临时存储区与所述安全调试认证系统之间的通信消息包括下发指令、交换密文、查询状态、提供执行状态。
优选地,所述待调试芯片的安全调试认证系统对调试终端的身份合法性进行认证,进一步包括:
所述待调试芯片获取所述芯片标识,使用所述第一公钥加密内部产生的初始随机数,通过调试终端将所述芯片标识以及加密后的所述随机数发送到所述调试管理服务器,
所述调试管理服务器根据所述芯片标识检索对应的第一私钥,利用所述第一私钥来解密所述调试终端发送的加密的随机数,并使用所述第一私钥对解密后的随机数进行重加密,通过调试终端将所述重加密的随机数发送到待调试芯片,
所述待调试芯片解密所述重加密的随机数,得到验证随机数,并将所述验证随机数与所述初始随机数进行比较,以判断调试终端的身份合法性。
优选地,如果所述验证随机数与所述初始随机数相等,则确定所述调试终端合法,设置调试使能控制状态位为1,表示允许调试;
如果所述验证随机数与所述初始随机数不相等,则确定所述调试终端非法,设置调试使能控制状态位为0,表示禁止调试。
优选地,在所述对待调试芯片进行调试之后,还包括:
更新所述数据临时存储区中的相应状态存储单元,通知所述调试终端身份认证过程结束。
相比于现有技术,本发明具有以下优点:
本发明的芯片调试使能控制方法既可以满足芯片在整个产品开发测试阶段、产品化阶段、芯片启动阶段和正常工作阶段可调试性的需求,也可以满足安全性的要求,从而有效的保护芯片内的资产和信息的安全。
本发明的其它特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所指出的结构来实现和获取。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单介绍,显而易见地,下面描述中的附图是本发明的某些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据这些附图获取其他的附图。
图1示出了根据现有技术的调试使能逻辑的实现示意图。
图2示出了根据现有技术的基于敲门码的调试使能的控制逻辑示意图。
图3示出了根据本发明的安全调试使能控制的实现架构示意图。
图4示出了根据本发明的安全调试使能控制方法的示意流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地说明,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获取的所有其他实施例,都属于本发明保护的范围。
为彻底解决芯片的可调试性和安全性之间的矛盾,本发明提出了一种安全的调试使能控制方法,利用非对称密码学技术,对调试者的身份合法性进行认证,只有通过身份合法性认证判决的调试终端才能通过调试接口对待调试芯片进行调试,这种身份合法性认证合法性判决完全是在芯片内部由硬件完成,同时,为对芯片的启动过程进行调试,芯片引入了一个管脚(Boot_Strap_Req)用于扩展芯片上电复位时调试者身份合法性认证的窗口,如果Boot_Strap_Req=1,芯片上电复位后,只有当芯片完成调试者身份合法性认证后,芯片才可以启动,从而实现芯片在各个阶段都可以进行安全调试。
由于身份的认证过程是基于随机数的,使用的非对称密码学技术,芯片上只存储公钥,故没有敲门码安全调试控制中所面临的敲门码泄露和多次尝试或探测破解的风险,可以实现真正的安全调试使能控制。
本发明的实现架构示意如图3所示。
待调试芯片C1包括调试口接口单元C1.1、安全调试认证系统C1.2、功能系统C1.3以及Boot_Strap请求管脚C1.4。调试口接口单元C1.1用于芯片外部调试接口i1和芯片内部接口i2、i3之间的协议转换和控制。其中接口i2为调试口接口单元C1.1和数据临时存储区C1.2.3之间的接口总线;接口i3为调试口接口单元C1.1和数据临时存储区C1.2.3之间的调试接口总线。
安全调试认证系统C1.2包括寄存器组C1.2.1,该寄存器组是只读寄存器。其中,寄存器组C1.2.1存储以下数值:
Chip_ID C1.2.1.1,即芯片ID,每个芯片的ID值都是唯一的;
Pub_Key C1.2.1.2:即非对称加解密算法的公钥Public Key。
安全调试认证系统C1.2还包括非对称加解密协处理器C1.2.2,受安全调试使能控制逻辑C1.2.5控制使用Pub_Key C1.2.1.2进行加解密。
安全调试认证系统C1.2还包括数据临时存储区C1.2.3,所述调试口接口单元C1.1通过所述数据临时存储区C1.2.3与安全调试认证系统C1.2通信,包括下发指令、交换密文、查询状态、提供执行状态等。
安全调试认证系统C1.2还包括随机数发生器C1.2.4,受安全调试使能控制逻辑C1.2.5的控制而产生真随机数。
安全调试认证系统C1.2还包括安全调试使能控制逻辑C1.2.5,是整个安全调试认证系统的控制和调度核心,安全调试使能控制逻辑通过查询数据临时存储区C1.2.3中的相关存储单元来接收来自于调试终端C2的控制信息和密文数据,根据控制信息执行相应的操作,操作结束后更新数据临时存储区C1.2.3中相关状态存储单元,以此通知调试终端C2执行状态和结果。
安全调试使能控制逻辑C1.2.5和数据临时存储区C1.2.3通过接口i5通信。安全调试使能控制逻辑C1.2.5和随机数发生器C1.2.4通过接口i6通信。随机数发生器C1.2.4与非对称加解密协处理器C1.2.2通过接口i7通信。安全调试使能控制逻辑C1.2.5和非对称加解密协处理器C1.2.2通过接口i8通信。Pub_Key C1.2.1.2与非对称加解密协处理器C1.2.2通过接口i9通信。Boot_Strap_Req C1.4与安全调试使能控制逻辑C1.2.5通过接口i10通信。
安全调试使能控制逻辑C1.2.5负责3个方面工作的控制协调和调度:
a)控制协调产生随机数并加密
通过查询数据临时存储区C1.2.3中的相关存储单元获得从外部调试接口i1传递过来的操作指示而启动调试者身份合法性认证,控制随机数发生器C1.2.4产生随机数,然后调用非对称加解密协处理器C1.2.2使用公钥Pub_Key C1.2.1.2对产生的随机数进行加密、将加密后的密文存储于数据临时存储区C1.2.3的相应存储单元并设置C1.2.3中相应的状态存储单元的状态位,以通知调试终端C2随机数加密已完成。
b)解密产生的随机数密文
通过数据临时存储区C1.2.3获得从外部调试接口i1传递过来的状态信息和服务器C4产生的随机数密文,控制非对称加解密协处理器C1.2.2使用公钥Pub_Key C1.2.1.2对服务器C4产生的随机数密文进行解密,该随机数密文是由服务器C4使用对应私钥先解密由非对称加解密协处理器C1.2.2用公钥C1.2.1.2加密的随机数然后重新加密而产生的。
c)比较产生的原始随机数以及解密后的随机数,完成调试者身份合法性判断,并输出相应的控制信号i11和i12。
在完成解密服务器C4产生的随机数密文后,安全调试使能控制逻辑C1.2.5立即比较产生的原始随机数以及解密后的随机数,如果相等,则DBG_En(i11)=1,即可以调试,否则DBG_En=0,表示禁止调试,在比较结束后,不论两个随机数是否相等,都将Boot_Strap_En(i12)置为0,从而使功能系统可以正常启动,同时更新数据临时存储区C1.2.3中的相应状态存储单元,通知调试终端C2比较完成和结果。
所述功能系统C1.3是待调试的系统,提供接口i10作为调试接口,只有当DBG_En(i11)=1时才允许调试,否则禁止调试,在功能系统的复位被释放时,如果Boot_Strap_En(i12)=1,则暂停启动,直到Boot_Strap_En(i12)=0才能开始启动。
所述Boot_Strap请求管脚(Boot_Strap_Req)C1.4是Boot_Strap_En(i12)的POR(Power-On-Reset,上电复位)复位值,正常工作时,Boot_Strap_Req会被下拉成低电平(0),如果需要系统在启动时能够被调试,Boot_Strap_Req需要在芯片上电时被上拉成高电平(1)。
调试终端C2作为待调试芯片C1的调试工具,还负责协调整个调试者身份合法性认证过程。C2通过调试接口i1连到待调试芯片C1,并通过网络C3连接到服务器C4。
服务器C4提供调试者身份认证服务,服务器中存储有芯片Chip_ID和私钥对应关系的数据库,并使用私钥提供非对称加解密服务,当调试终端C2将Chip_ID C1.2.1.1和加密的随机数发给服务器C4后,服务器C4查询Chip_ID而检索到对应的私钥,首先用私钥解密加密的随机数,然后再用私钥对解密后的数进行加密并将密文发给调试终端C2。调试终端C2和网络C3通过接口i13通信。服务器C4和网络C3通过接口i14通信。
基于上述实现架构,本发明提供以下安全调试使能控制方法。方法流程如图4所示。S0-S10描述了安全调试流程所涉及的步骤。
S0:开始
S1:调试终端C2运行调试软件,与待调试芯片C1、调试管理服务器C4建立连接。
S2:调试终端C2读取Chip_ID C1.2.1.1,并编程数据临时存储区C1.2.3中的相应存储单元,以启动调试者身份的合法性认证。
其中,安全调试使能控制逻辑C1.2.5通过查询数据临时存储区C1.2.3中的相关存储单元,获得调试者身份合法性认证的操作指示后,控制随机数发生器C1.2.4产生随机数P_0,然后调用非对称加解密协处理器C1.2.2使用公钥Pub_Key C1.2.1.2对产生的随机数P_0进行加密、将加密后的密文C_0存储于数据临时存储区C1.2.3中的相应存储单元,并设置数据临时存储区C1.2.3中相应的状态存储单元,以通知调试终端C2随机数加密已完成。
S3:调试终端C2通过检测数据临时存储区C1.2.3中的相应状态存储单元来判断使用公钥Pub_Key C1.2.1.2对生成的随机数进行加密是否完成,如果未完成则等待,如果完成,则进入S4。
S4:调试终端C2读取数据临时存储区C1.2.3中的密文存储单元,并将Chip_ID和密文C_0发送到服务器C4。
其后,服务器C4在收到Chip_ID和密文C_0后,根据Chip_ID检索到公钥Pub_KeyC1.2.1.2所对应的私钥,首先使用所述私钥对密文C_0进行解密,解密后的数为P_1,再使用所述私钥对P_1进行加密,得到密文为C_1,并将密文C_1发给调试终端C2。
S5:调试终端C2等待接收服务器C4发送的使用公钥Pub_Key C1.2.1.2对应的私钥所加密的随机数即所述密文C_1,如果未收到则等待,如果已收到则进入S6。
S6:调试终端C2将密文随机数C_1写入数据临时存储区C1.2.3中的密文存储单元,并设置相应的标志位,指示密文已写入。
其中,安全调试使能控制逻辑C1.2.5通过查询数据临时存储区C1.2.3中的密文已写入标志位,确定C4产生的随机数密文C_1已写入密文存储单元,然后控制非对称加解密协处理器C1.2.2使用公钥Pub_Key C1.2.1.2对密文C_1进行解密,得到解密后的明文P_00,并比较P_00是否等于P_0。
如果P_00=P_0,则调试者身份认证通过,设置DBG_En(i11)=1,表示可以调试;
如果P_00≠P_0,则调试者身份认证未通过,DBG_En=0,表示禁止调试。不论两个随机数是否相等,都将Boot_Strap_En i12置为0,从而使功能系统可以正常启动,同时更新数据临时存储区C1.2.3中的相应状态存储单元,通知调试终端C2调试者身份认证结束,以及调试是否使能。
S7:调试终端C2读取数据临时存储区C1.2.3中的调试者身份认证结束标志,判断认证是否结束,如果未结束则等待,如果结束则进入S8。
S8:调试终端C2读取数据临时存储区C1.2.3中的调试使能状态存储单元,判断调试是否使能,如果没有使能,则不对待调试芯片C1进行调试,并进入S10;如果调试使能,则进入S9。
S9:调试终端C2通过调试接口i3对功能系统C1.3进行调试,调试结束后,进入S10。
S10:结束,调试终端更新数据临时存储区C1.2.3中相应状态存储单元,通知待调试芯片调试过程结束,所述安全调试控制逻辑C1.2.5将DBG_En i11置为0。
对于芯片调试过程,只有通过调试者身份合法性认证才能启动对芯片的调试工作。由于上述方法的身份认证过程是基于随机数的,并使用非对称密码学技术,芯片上只存储公钥,故没有敲门码安全调试控制中所面临的敲门码泄露和多次尝试或探测破解的风险,可以实现真正的安全调试使能控制。
本领域技术人员可以理解,上述实施例中描述的方法步骤和装置的组件仅为举例。本领域技术人员可以根据需要,对调试使能控制方法流程的多个步骤进行合并、增删或顺序调整,或对安全调试控制系统的结构进行容易想到的调整。而不应将本发明的构思限制于上述示例的具体结构和流程。
可以看出,本发明提出的芯片调试使能控制方法,彻底解决了芯片所面临的可调试性和安全性之间的矛盾。使用本发明提出的方法既可以满足芯片在整个产品开发测试阶段、产品化阶段、芯片启动阶段和正常工作阶段可调试性的需求,也可以满足安全性的要求,由此有效保护了芯片内的资产或信息的安全。
尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种芯片调试使能控制方法,用于控制调试终端对待调试芯片的调试,其特征在于,包括:
通过所述待调试芯片的安全调试认证系统对调试终端的身份合法性进行认证;
仅当确定调试终端通过所述身份合法性认证时,将芯片调试标志设置为使能,允许所述调试终端通过调试接口对所述待调试芯片进行调试,
否则,将芯片调试标志设置为禁止,不允许所述调试终端通过所述调试接口对所述待调试芯片进行调试;
所述调试终端与调试管理服务器相连接,所述待调试芯片存储第一公钥,所述调试管理服务器存储所述第一公钥相对应的第一私钥,用于标识所述调试终端身份的合法性;
所述待调试芯片进一步包括扩展管脚,用于扩展芯片上电复位时调试终端身份合法性认证的窗口,所述方法进一步包括:
在芯片上电复位后,如果所述扩展管脚为高电平,当确定调试终端通过所述身份合法性认证时,则启动所述待调试芯片并进入调试状态;
在芯片上电复位后,如果所述扩展管脚为低电平,则启动所述待调试芯片并进入正常工作状态;
所述安全调试认证系统包括数据临时存储区,以使所述调试终端通过所述数据临时存储区与所述安全调试认证系统通信;
所述安全调试认证系统包括安全调试使能控制逻辑,用于通过查询所述数据临时存储区中的相关存储单元来接收来自于所述调试终端的控制信息和密文数据,根据控制信息执行相应的操作,操作结束后更新数据临时存储区中相关状态存储单元,以此通知所述调试终端执行状态和结果;
所述安全调试使能控制逻辑启动调试者身份合法性认证,控制随机数发生器产生随机数,然后调用非对称加解密协处理器使用公钥对产生的随机数进行加密、将加密后的密文存储于所述数据临时存储区的相应存储单元并设置所述数据临时存储区中相应的状态存储单元的状态位;通过所述数据临时存储区获得从外部调试接口传递过来的状态信息和服务器产生的随机数密文,控制所述非对称加解密协处理器使用公钥对所述服务器产生的随机数密文进行解密,所述随机数密文是由所述服务器使用对应私钥先解密由所述非对称加解密协处理器利用公钥加密的随机数然后重新加密而产生的;比较产生的原始随机数以及解密后的随机数,完成调试者身份合法性判断。
2.根据权利要求1的芯片调试使能控制方法,其特征在于,所述安全调试认证系统进一步包括寄存器组,所述寄存器组存储有:
芯片标识,用于唯一地标识每个待调试芯片;
所述第一公钥,所述第一公钥为非对称加解密算法的公钥。
3.根据权利要求1的芯片调试使能控制方法,其特征在于,所述数据临时存储区与所述安全调试认证系统之间的通信消息包括下发指令、交换密文、查询状态、提供执行状态。
4.根据权利要求2的芯片调试使能控制方法,其特征在于,所述待调试芯片的安全调试认证系统对调试终端的身份合法性进行认证,进一步包括:
所述待调试芯片获取所述芯片标识,使用所述第一公钥加密内部产生的初始随机数,通过调试终端将所述芯片标识以及加密后的所述随机数发送到所述调试管理服务器,
所述调试管理服务器根据所述芯片标识检索对应的第一私钥,利用所述第一私钥来解密所述调试终端发送的加密的随机数,并使用所述第一私钥对解密后的随机数进行重加密,通过调试终端将所述重加密的随机数发送到待调试芯片,
所述待调试芯片解密所述重加密的随机数,得到验证随机数,并将所述验证随机数与所述初始随机数进行比较,以判断调试终端的身份合法性。
5.根据权利要求4的芯片调试使能控制方法,其特征在于,其中:
如果所述验证随机数与所述初始随机数相等,则确定所述调试终端合法,设置调试使能控制状态位为1,表示允许调试;
如果所述验证随机数与所述初始随机数不相等,则确定所述调试终端非法,设置调试使能控制状态位为0,表示禁止调试。
6.根 据权利要求3的芯片调试使能控制方法,其特征在于,在所述对待调试芯片进行调试之后,还包括:
更新所述数据临时存储区中的相应状态存储单元,通知所述调试终端身份认证过程结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110117822.8A CN112860497B (zh) | 2021-01-28 | 2021-01-28 | 芯片调试使能控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110117822.8A CN112860497B (zh) | 2021-01-28 | 2021-01-28 | 芯片调试使能控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112860497A CN112860497A (zh) | 2021-05-28 |
CN112860497B true CN112860497B (zh) | 2022-02-08 |
Family
ID=75987482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110117822.8A Active CN112860497B (zh) | 2021-01-28 | 2021-01-28 | 芯片调试使能控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112860497B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116383091B (zh) * | 2023-05-29 | 2023-08-29 | 珠海妙存科技有限公司 | eMMC验证平台的启动方法、启动装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019178787A1 (zh) * | 2018-03-21 | 2019-09-26 | 深圳市汇顶科技股份有限公司 | 芯片的访问方法、微芯片、智能卡以及调试设备 |
CN111680336A (zh) * | 2020-05-29 | 2020-09-18 | 绿晶半导体科技(北京)有限公司 | 固件安全防护方法和装置、系统及设备 |
CN111813614A (zh) * | 2020-09-03 | 2020-10-23 | 湖北芯擎科技有限公司 | 调试处理方法、装置与调试处理系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090094702A1 (en) * | 2007-10-04 | 2009-04-09 | Mediatek Inc. | Secure apparatus, integrated circuit, and method thereof |
GB2500074B (en) * | 2012-07-09 | 2014-08-20 | Ultrasoc Technologies Ltd | Debug architecture |
CN110337652B (zh) * | 2018-01-29 | 2023-03-17 | 深圳市汇顶科技股份有限公司 | 芯片的访问方法、安全控制模块、芯片和调试设备 |
-
2021
- 2021-01-28 CN CN202110117822.8A patent/CN112860497B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019178787A1 (zh) * | 2018-03-21 | 2019-09-26 | 深圳市汇顶科技股份有限公司 | 芯片的访问方法、微芯片、智能卡以及调试设备 |
CN111680336A (zh) * | 2020-05-29 | 2020-09-18 | 绿晶半导体科技(北京)有限公司 | 固件安全防护方法和装置、系统及设备 |
CN111813614A (zh) * | 2020-09-03 | 2020-10-23 | 湖北芯擎科技有限公司 | 调试处理方法、装置与调试处理系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112860497A (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7539312B2 (en) | Program update method and server | |
EP2248063B1 (en) | Method and apparatus for controlling system access during protected modes of operation | |
US20150186679A1 (en) | Secure processor system without need for manufacturer and user to know encryption information of each other | |
US7886150B2 (en) | System debug and trace system and method, and applications thereof | |
CN107508679B (zh) | 一种智能终端主控芯片与加密芯片的绑定及认证方法 | |
US20120278608A1 (en) | Information processing apparatus, secure module, information processing method and computer product | |
CN112994893B (zh) | 芯片生产测试阶段的密钥烧录方法 | |
EP1346511A1 (en) | A platform and method for securely transmitting authorization data | |
CN101996154A (zh) | 支持可重组安全设计的通用处理器 | |
CN108155986A (zh) | 一种基于可信执行环境的密钥烧录系统及方法 | |
CN109933481A (zh) | 一种jtag接口的解锁系统及jtag解锁控制方法 | |
CN111901117A (zh) | 基于jtag接口的安全认证方法及系统 | |
EP4319041A1 (en) | Cipher card and root key protection method therefor, and computer readable storage medium | |
JP2005157930A (ja) | 機密情報処理システムおよびlsi | |
CN112860497B (zh) | 芯片调试使能控制方法 | |
CN109495269A (zh) | 车载端对接入设备的可信验证方法及其系统、车载端 | |
WO2020002441A1 (en) | Method of debugging a device | |
WO2021128989A1 (zh) | 鉴权方法及设备 | |
CN112904182B (zh) | 测试模式进入控制方法 | |
CN113297091B (zh) | SoC芯片的调试方法、装置及SoC芯片 | |
CN113297563B (zh) | 访问片上系统特权资源的方法、装置及片上系统 | |
US8844022B2 (en) | Method and system to allow system-on-chip individual I/O control to be disabled and enabled by programmable non-volatile memory | |
CN113918392B (zh) | 一种调试保护系统及调试处理模块 | |
CN111641873A (zh) | 一种解锁电视开发者模式的方法、系统及可读存储介质 | |
CN114499847A (zh) | 芯片生产测试阶段的敏感信息写入方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |