CN110414248B - 一种调试微处理器的方法及微处理器 - Google Patents
一种调试微处理器的方法及微处理器 Download PDFInfo
- Publication number
- CN110414248B CN110414248B CN201910623583.6A CN201910623583A CN110414248B CN 110414248 B CN110414248 B CN 110414248B CN 201910623583 A CN201910623583 A CN 201910623583A CN 110414248 B CN110414248 B CN 110414248B
- Authority
- CN
- China
- Prior art keywords
- microprocessor
- public key
- debugging
- updated
- signature certificate
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供一种调试微处理器的方法及微处理器,用于提高微处理器中数据的安全性。该方法包括:将签名证书发送给至少一个设备,以使所述至少一个设备中每个设备根据预存的第一公钥解密所述签名证书,获得解密后的所述签名证书中的第二公钥;其中,所述至少一个设备为拥有调试所述微处理器权限的设备;接收第一调试请求;其中,所述第一调试请求为第一设备发送的,且携带所述第一设备所存储公钥加密的第一身份验证信息;按照预存的第一私钥,解密所述第一身份验证信息;其中,所述第一私钥与所述第二公钥相对应;在解密所述第一身份验证信息成功的情况下,接收所述第一设备发送的调试信息,并根据所述调试信息进行调试。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种调试微处理器的方法及微处理器。
背景技术
为了便于后期厂商对微处理器进行调试,微处理器一般会设置调试接口。厂商需要对微处理器进行调试时,可以通过调试接口,将调试信息发送给微处理器。
通常为了便于厂商调试微处理器,调试接口一般是对外开放的。但是这样一来,不法分子可以通过调试接口窃取微处理器中的固件、或者非法刷新微处理器中的固件等情况。
发明内容
本申请实施例提供一种调试微处理器的方法及微处理器,用于提高微处理器中数据的安全性。
第一方面,提供一种调试微处理器的方法,应用于微处理器中,所述方法包括:
将签名证书发送给至少一个设备,以使所述至少一个设备中每个设备根据预存的第一公钥解密所述签名证书,获得解密后的所述签名证书中的第二公钥;其中,所述至少一个设备为拥有调试所述微处理器权限的设备;
接收第一调试请求;其中,所述第一调试请求为第一设备发送的,且携带所述第一设备所存储公钥加密的第一身份验证信息;
按照预存的第一私钥,解密所述第一身份验证信息;其中,所述第一私钥与所述第二公钥相对应;
在解密所述第一身份验证信息成功的情况下,接收所述第一设备发送的调试信息,并根据所述调试信息进行调试。
本申请实施例中,微处理器会提前将微处理器的签名证书发送给相应的设备。某个设备发送调试请求之后,微处理器在接收调试请求之后,微处理器根据预存的第一私钥解密调试请求中的第一身份验证信息,如果解密成功,才会开放调试接口,接收调试信息,根据调试信息进行调试,本申请实施例中在进行调试之前,微处理器会对调试请求中的身份验证信息进行验证,保证微处理器中数据的安全性。且,本申请实施例中无需借助其他外部验证设备,实现对调试请求中的身份验证信息进行验证。
在一种可能的实施例中,在将签名证书发送给至少一个设备之前,包括:
根据预存的第一私钥,微处理器信息,以及第一私钥对应的第二公钥,生成签名证书。
本申请实施例中提供一种生成签名证书的方法,微处理器根据可以相应的密钥生成签名证书,以使得具备调试微处理器权限的设备能够获得该微处理器的签名证书,便于后期对身份验证信息进行验证。
在一种可能的实施例中,在根据预存的第一私钥,微处理器信息和第一私钥对应的第二公钥,生成签名证书之前,包括:
生成随机数;
根据预设的第一加密算法,对所述随机数进行加密,生成密钥种子;
根据所述第一私钥对应的加密算法,对所述密钥种子进行加密,生成第二公钥。
在本申请实施例中,提供一种第二公钥的生成方式,利用随机数生成相应的第二公钥,可以提高生成第二公钥的灵活性,且后期可以更新随机数实现对第二公钥的更新,不断更新第二公钥,可以进一步提高签名信息的安全性。
在一种可能的实施例中,在按照预存的第一私钥,对所述第一身份验证信息进行解密之后,包括:
若解密所述第一设备的第一身份验证信息失败,通过所述微处理器中看门狗复位单元记录解密所述第一设备的身份验证信息的失败次数;
当所述失败次数大于预设阈值时,则擦除所述微处理器中的固件。
在本申请实施例中,解密第一身份验证信息失败之后,微处理器中看门狗复位单元可以记录失败次数,当失败次数大于预设阈值的时候,微处理器擦除固件,以避免微处理器被暴力破解后,微处理器中的数据盗取或篡改的情况。
在一种可能的实施例中,在按照预存的第一私钥,对所述第一身份验证信息进行解密之后,包括:
若解密所述第一设备的第一身份验证信息成功,则复位所述看门狗复位单元,并更新随机数;
根据更新后的随机数,生成更新后的第二公钥,并根据所述更新后的第二公钥,生成更新后的签名证书;
将所述更新后的签名证书发送给所述至少一个设备,以使所述至少一个设备中每个设备根据所述更新后的签名证书中的所述更新后的第二公钥,生成更新后的身份验证信息。
本申请实施例中,当解密第一身份验证信息成功之后,微处理器复位看门狗复位单元,以便于看门狗复位单元重新开始计数,且更新随机数,根据更新后的随机数,生成更新后的签名证书,实时更新签名证书,可以进一步保证签名证书的安全性。
第二方面,提供一种微处理器,所述装置包括:
发送模块,用于将签名证书发送给至少一个设备,以使所述至少一个设备中每个设备根据预存的第一公钥解密所述签名证书,获得解密后的所述签名证书中的第二公钥;其中,所述至少一个设备为拥有调试所述微处理器权限的设备;
接收模块,用于接收第一调试请求;其中,所述第一调试请求为第一设备发送的,且携带所述第一设备所存储公钥加密的第一身份验证信息;
验证模块,用于按照预存的第一私钥,解密所述第一身份验证信息;其中,所述第一私钥与所述第二公钥相对应;
所述接收模块,还用于在解密所述第一身份验证信息成功的情况下,接收所述第一设备发送的调试信息;
调试模块,用于根据所述调试信息进行调试。
在一种可能的实施例中,所述验证模块还用于:
在将签名证书发送给至少一个设备之前,根据预存的第一私钥,微处理器信息,以及第一私钥对应的第二公钥,生成签名证书。
在一种可能的实施例中,所述验证模块还用于:
在根据预存的第一私钥,微处理器信息和第一私钥对应的第二公钥,生成签名证书之前,生成随机数;
根据预设的第一加密算法,对所述随机数进行加密,生成密钥种子;
根据所述第一私钥对应的加密算法,对所述密钥种子进行加密,生成第二公钥。
在一种可能的实施例中,所述调试模块还用于:
若解密所述第一设备的第一身份验证信息失败,通过所述微处理器中看门狗复位单元记录解密所述第一设备的身份验证信息的失败次数;
当所述失败次数大于预设阈值时,则擦除所述微处理器中的固件。
在一种可能的实施例中,所述验证模块,还用于在按照预存的第一私钥,对所述第一身份验证信息进行解密之后,若解密所述第一设备的第一身份验证信息成功,则复位所述看门狗复位单元,并更新随机数,以及根据更新后的随机数,生成更新后的第二公钥,并根据所述更新后的第二公钥,生成更新后的签名证书;
所述发送模块,还用于将所述更新后的签名证书发送给所述至少一个设备,以使所述至少一个设备中每个设备根据所述更新后的签名证书中的所述更新后的第二公钥,生成更新后的身份验证信息。
第三方面,提供一种微处理器,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如第一方面及可能的实施例中任一项所述的方法。
第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如第一方面及可能的实施例中任一项所述的方法。
附图说明
图1为本申请实施例提供的一种调试微处理器的方法的应用场景示意图;
图2为本申请实施例提供的一种调试微处理器的方法的流程示意图;
图3为本申请实施例提供的一种微处理器的结构示意图一;
图4为本申请实施例提供的一种微处理器的结构示意图二。
具体实施方式
为了更好的理解本申请实施例提供的技术方案,下面将结合说明书附图以及具体的实施方式进行详细的说明。
下面对本申请实施例涉及的专业术语进行解释。
(1)密钥对,在非对称加密技术中,有两种密钥,分为私钥和公钥,私钥是密钥对所有者持有,不可公布,公钥是密钥对持有者公布给其它方的。
(2)私钥,是非对称加密中的密钥,用来解密公钥加密的数据。
(3)公钥,公钥用来给数据加密,用公钥加密的数据只能使用私钥解密。
下面对本申请涉及的现有技术进行说明。
由于现有技术中微处理器的调试接口是对外开放的,用户可以任意访问调试接口,这样不法分子可以通过调试接口获取或者篡改微处理器中的数据等,微处理器中数据的安全性低。微处理器中的数据包括微处理器中代码应用区的固件等。不法分子在盗取固件之后,可以根据该固件制造相同的产品,如此一来,会给厂商带来巨大的损失。或者不法分子注入木马程序到微处理器中,可能会导致该微处理器异常。
鉴于此,本申请实施例提供一种调试微处理器的方法,该方法由微处理器来执行,微处理器可以是中央处理器(Central Processing Unit,CPU),也可以由集成电路(Application Specific Integrated Circuit,ASIC)组成。
下面对本申请实施例中访问调试接口的方法涉及的应用场景进行说明。
请参照图1,该应用场景中包括终端设备11、电子设备12和厂商对应的服务器13。电子设备12包括微处理器,微处理器包括调试接口。图1中是以电子设备12为空调为例,但是实际上不限制电子设备12的具体种类。终端设备11例如手机或个人计算机等。图1中是一个终端设备11为例,但是实际上不限制终端设备11的数量。
具体的,微处理器可以将微处理器的签名证书发送给厂商对应的服务器13,由厂商对应的服务器13再将签名证书授权给相应用户对应的终端设备11。微处理器也可以将签名证书发送给厂商对应的服务器13和用户对应的终端设备11。在终端设备11获得签名证书之后,可以解密签名证书,得到签名证中的第二公钥。
某个终端设备11想要对微处理器进行调试,某个终端设备11可以根据存储公钥对身份验证信息进行加密,生成相应的调试请求。微处理器在接收某个设备发送的调试请求之后,微处理器按照预存的第一私钥,解密调试请求中的身份验证信息。第一私钥和签名证书中第二公钥相对应的。如果微处理器能够正确解密得到调试请求中的身份验证信息,表示该终端设备11具有调试权限,微处理器接收该终端设备发送的调试信息,并根据该调试信息进行调试等。如果微处理器无法正确解密,则拒绝该终端设备11发送的调试信息,保证微处理器中的数据安全。调试权限是指调试该微处理器的权限。
本申请实施例中,微处理器通过解密过程实现对设备的身份验证,避免非法设备通过调试接口盗取或者篡改微处理器中的数据,提高微处理器中数据的安全性。
下面基于图1论述的应用场景,对本申请实施例中的调试微处理器的方法的过程进行具体介绍。
请参照图2,微处理器在上电之后,或者微处理器在达到预设时长之后,微处理器执行步骤201,即生成签名证书。下面对生成签名证书的方式进行具体说明。
方式一:
根据预存的第一私钥,微处理器信息,以及第一私钥对应的第二公钥,生成签名证书。
具体的,微处理器根据预存的第一私钥,生成第二公钥。例如将第一私钥通过椭圆曲线算法处理之后,生成第二公钥。第一私钥和第二公钥是相对应的,也就是说,第二公钥加密的内容只能通过第一私钥解密。第二公钥也可以进一步理解为微处理器的公钥。
在获得第二公钥之后,微处理器将微处理器信息和第二公钥通过预设的第二加密算法进行加密,生成签名证书。也就是说,签名证书中是包括第二公钥和微处理器信息。微处理器信息包括固件的版本信息、固件的发布者等。固件的版本信息例如v1.0.2。
方式二:
生成随机数;
按照第一加密算法,对随机数进行加密,生成密钥种子;
根据第一私钥对应的加密算法对密钥种子进行加密,生成第二公钥;
根据第一私钥,将第一加密算法、第二公钥、以及微处理器信息制作生成签名证书。
具体的,微处理器可以通过随机数生成器(True Random Number Generator,TRNG)产生随机数,在获得该随机数之后,微处理器可以根据第一加密算法,对随机数进行加密,生成密钥种子,再根据第一私钥对应的加密算法对密钥种子进行加密,生成第二公钥,再根据将第一加密算法、第二公钥、以及微处理器信息制作生成签名证书。
其中,签名证书中包括微处理器信息和第二公钥,另外签名证书还可以包括该签名证书的有效期。微处理器信息可以参照前文论述的内容,此处不再赘述。
本申请实施例中,微处理器根据随机数生成第二公钥,一方面可以在签名证书的有效期过期之后,实时更新第二公钥。且,在生成第二公钥过程中,还对随机数进行加密,进一步提高签名证书的安全性。
微处理器执行步骤201之后,执行步骤202,将签名证书发送给至少一个设备。
具体的,微处理器在生成签名证书之后,可以将签名证书发送给具有调试权限的设备(即至少一个设备),该设备可以是图1的终端设备11和服务器13。微处理器中可以提前存储有具有调试权限的设备名单,设备名单包括各个设备的通信地址,通信地址例如设备的媒体访问控制(Medium Access Control,MAc)地址。微处理器在生成签名证书之后,根据该设备名单,将签名证书发送给各个设备。或者了减少微处理器的处理量,微处理器将签名证书发送给厂商对应的服务器13,由服务器13将签名证书授权给多个用户对应的终端设备11。
本申请实施例中,在签名设备中增加微处理器的信息,不仅方便后期验证相应设备发送的身份验证信息,还可以方便具有调试权限的设备获知微处理器的相应信息,发送更加合适的调试信息给微处理器,提高调试微处理器的成功率。
在至少一个设备中每个设备接收签名证书之后,各个设备预存有第一公钥,该第一公钥可以解密该签名证书,得到签名证书中的微处理器信息和第二公钥。该第一公钥一般是预存在至少一个设备中每个设备中,一般第一公钥是固定不变的。
至少一个设备中每个设备获得对应的第二公钥之后,当至少一个设备中某个设备需要调试微处理器时,可以根据第二公钥对微处理器信息进行加密,生成身份验证信息。
微处理器执行步骤202之后,执行步骤203,接收第一调试请求。
具体的,第一调试请求为第一设备发送的,且第一调试请求中携带有第一设备利用存储公钥加密的第一身份验证信息。第一设备有可能是前文中至少一个设备中的设备,也可能不属于前文中至少一个设备中的设备。
微处理器接收第一调试请求之后,执行步骤204,即按照预存的第一私钥,解密第一身份验证信息。
具体的,第一私钥可以参照前文论述的内容,此处不再赘述。如果微处理器根据第一私钥,能够成功解密第一身份验证信息,即解密成功,微处理器执行步骤205,即接收第一设备发送的调试信息,并根据调试信息进行调试。如果微处理器根据第一私钥,无法解密第一身份验证信息,即解密失败,微处理器执行步骤207,即通过看门狗复位单元记录解密第一身份验证信息的失败次数。
下面对微处理器解密第一身份验证信息成功之后,微处理器执行步骤205的内容进行介绍。
具体的,当第一设备属于拥有调试权限的设备,第一设备才能通过微处理器或者至少一个设备获得签名证书,获得该微处理器对应的第二公钥以及微处理器信息。微处理器在确定第一设备属于拥有调试权限的设备之后,微处理器对第一设备开放调试接口。
第一设备可以将调试信息直接通过调试接口发送给微处理器,微处理器接收调试信息。为了避免调试信息泄露,第一设备可以继续通过第二公钥对要发送的调试信息进行加密,将加密后的调试信息发送给微处理器,微处理器根据第一私钥解密得到调试信息。在微处理器获得调试信息之后,可以根据调试信息进行调试。调试信息例如对微处理器中的固件进行修复的补丁文件,或对微处理器中的固件进行升级的升级文件。
作为一种实施例,为了避免第二公钥泄露的情况,微处理器在解密第一身份验证信息成功之后,还可以对第一身份验证信息中的身份信息进行验证,如果该身份信息与微处理器在签名证书中的微处理器信息一致,则确定该第一设备属于有调试权限的设备,微处理器再接收第一设备发送的调试信息,根据调试信息进行调试。如果该身份信息与微处理器在签名证书中的微处理器信息不一致,则确定解密失败。
在解密第一身份验证信息成功之后,微处理器执行步骤206,即复位看门狗复位单元,生成更新后的签名证书。
具体的,微处理器包括看门狗复位单元,看门狗复位单元可以用于记录对第一设备的身份验证信息的失败次数,如果随第一身份验证信息解密成功,复位看门狗复位单元,即将看门狗复位单元的计时清零,可以进一步理解为看门狗复位单元重新开始计时。其中,看门狗复位单元包括看门狗定时器和看门狗复位子单元,看门狗复位子单元用于在预设条件下,复位看门狗定时器。
应当说明的是,看门狗记录的失败次数,实际上可以理解对第一设备进行身份验证的验证时长,当验证时长小于看门狗定时器的定时时长之后,则看门狗复位子单元控制看门狗定时器重新开始计时。
与此同时,对于已经使用过的签名证书,或者在签名证书的有效期满之后,为了进一步提高签名证书的安全性,微处理器可以更新签名证书。
具体的,微处理器可以在解密第一身份验证信息成功之后,通过随机数生成器更新随机数,获得更新后的随机数。再根据更新后的随机数,生成更新后的第二公钥。再根据更新后的第二公钥,生成更新后的签名证书。
生成更新后的签名证书的具体过程可以参照前文论述的生成签名证书的过程,此处不再赘述。更新后的签名证书中更新后的第二公钥与第二公钥不同。在生成更新后的签名证书之后,微处理器可以将该更新后的签名证书再发送给至少一个设备。至少一个设备可以根据更新后的签名证书获得更新后的第二公钥,根据第二公钥生成更新后的身份验证信息。如果至少一个设备中的某个设备需要对微处理器进行调试,则可以向微处理器发送调试请求,该调试请求携带更新后的身份验证信息。
图2中是以步骤206在步骤205之后执行为例,但是实际上步骤205和步骤206的执行顺序可以是任意的,本文不对步骤205和步骤206的具体顺序进行限制。
下面对微处理器解密第一身份验证信息失败之后,微处理器执行步骤207的内容进行介绍。
具体的,如果该第一设备不属于拥有调试权限的设备,第一设备无法获得该第二公钥,因此微处理器自然无法成功解密该设备发送的身份验证信息。微处理器解密第一设备的第一身份验证信息失败,通过看门狗复位单元记录解密的失败次数。但是此时微处理器无法确定第一设备为不拥有权限的设备,因为该次解密失败有可能是第一身份验证信息生成过程或者发送过程中网络异常等问题造成的。因此,如果第一设备继续向微处理器发送后续身份验证信息,微处理器接收后续身份验证信息之后,可以根据第一私钥对后续身份验证信息进行解密,如果解密成功,则执行步骤205和步骤206,如果解密失败,则继续执行步骤207。
微处理器执行步骤208,即确定失败次数是否大于预设阈值。
具体的,当微处理器确定失败次数小于或等于预设阈值,则微处理器转入执行步骤206和步骤205。步骤206和步骤205的内容可以参照前文论述内容,此处不再赘述。当微处理器确定失败次数大于预设阈值之后,微处理器确定该第一设备是不拥有调试权限的设备,且确定该第一设备尝试暴力破解。为了保证数据的安全,微处理器可以执行步骤209,即当失败次数大于预设阈值,擦除微处理器中的固件。
具体的,预设阈值可以是微处理器默认设置的值,可以存储在微处理器中的只读数据保护区(read data protect,RDP),以避免该预设阈值被篡改。当微处理器确定失败次数大于预设阈值,微处理器擦除应用代码区的固件,以避免微处理器中的固件泄露或被篡改。
在微处理器在擦除固件之后,当某个设备的身份验证信息验证成功之后,微处理器可以向该设备请求固件,通过该具有调试权限的设备获得固件。或者,微处理器中存储有备份固件,在擦除固件之后,未接收到第一设备的后续身份验证信息之后,可以重新安装该备份固件,以避免影响微处理器的正常运行。或者微处理器向服务器13请求固件,从服务器13获得固件。
如果第一设备在下一次还需要对微处理器进行调试,则需要重复步骤201至步骤209的方法。
应当说明的是,步骤201是可选的步骤。步骤205-步骤206和步骤207-步骤208是两种不同的情况,也就是说,在解密第一身份验证信息之后,微处理器要么执行步骤205-步骤206,要么执行步骤207-步骤208。
在前文论述的一种调试微处理器的方法的基础上,本申请实施例提供一种微处理器,请参照图3,该微处理器包括:
发送模块301,用于将签名证书发送给至少一个设备,以使至少一个设备中每个设备根据预存的第一公钥解密签名证书,获得解密后的签名证书中的第二公钥;其中,至少一个设备为拥有调试微处理器权限的设备;
接收模块302,用于接收第一调试请求;其中,第一调试请求为第一设备发送的,且携带第一设备所存储公钥加密的第一身份验证信息;
验证模块303,用于按照预存的第一私钥,解密第一身份验证信息;其中,第一私钥与第二公钥相对应;
接收模块302,还用于在解密第一身份验证信息成功的情况下,接收第一设备发送的调试信息;
调试模块304,用于根据调试信息进行调试。
在一种可能的实施例中,验证模块303还用于:
在将签名证书发送给至少一个设备之前,根据预存的第一私钥,微处理器信息,以及第一私钥对应的第二公钥,生成签名证书。
在一种可能的实施例中,验证模块303还用于:
在根据预存的第一私钥,微处理器信息和第一私钥对应的第二公钥,生成签名证书之前,生成随机数;
根据预设的第一加密算法,对随机数进行加密,生成密钥种子;
根据第一私钥对应的加密算法,对密钥种子进行加密,生成第二公钥。
在一种可能的实施例中,调试模块304还用于:
若解密第一设备的第一身份验证信息失败,通过微处理器中看门狗复位单元记录解密第一设备的身份验证信息的失败次数;
当失败次数大于预设阈值时,则擦除微处理器中的固件。
在一种可能的实施例中,验证模块303,还用于在按照预存的第一私钥,对第一身份验证信息进行解密之后,若解密第一设备的第一身份验证信息成功,则复位看门狗复位单元,并更新随机数,以及根据更新后的随机数,生成更新后的第二公钥,并根据更新后的第二公钥,生成更新后的签名证书;
发送模块301,还用于将更新后的签名证书发送给至少一个设备,以使至少一个设备中每个设备根据更新后的签名证书中的更新后的第二公钥,生成更新后的身份验证信息。
在前文论述的一种调试微处理器的方法的基础上,本申请实施例提供一种微处理器,请参照图4,该微处理器包括:
至少一个处理器401,以及
与至少一个处理器401通信连接的存储器402;
其中,存储器402存储有可被至少一个处理器401执行的指令,至少一个处理器401通过执行存储器402存储的指令实现如前文论述的一种调试微处理器的方法。
图4中是一个处理器401为例,但是实际上不限制处理器401的数量。
作为一种实施例,图3中的发送模块301、接收模块302、验证模块303和调试模块304可以通过图4中的处理器401来实现。
本申请实施例中的处理器401可以理解为微处理器中具有计算和处理能力的功能模块。处理器401和存储器402可以耦合,也可以相对独立设置的。
在前文论述的一种调试微处理器的方法的基础上,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,当计算机指令在计算机上运行时,使得计算机执行如前文论述的一种调试微处理器的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (6)
1.一种调试微处理器的方法,其特征在于,应用于微处理器中,所述方法包括:
根据预存的第一私钥,微处理器信息,以及所述第一私钥对应的第二公钥,生成签名证书,将所述签名证书发送给至少一个设备,以使所述至少一个设备中每个设备根据预存的第一公钥解密所述签名证书,获得解密后的所述签名证书中的第二公钥;其中,所述至少一个设备为拥有调试所述微处理器权限的设备;
接收第一调试请求;其中,所述第一调试请求为第一设备发送的,且携带所述第一设备所存储第二公钥加密的第一身份验证信息;
按照所述预存的第一私钥,解密所述第一身份验证信息;其中,所述第一私钥与所述第二公钥相对应;
若解密所述第一设备的第一身份验证信息失败,通过所述微处理器中看门狗复位单元记录解密所述第一设备的身份验证信息的失败次数,以及当所述失败次数大于预设阈值时,则擦除所述微处理器中的固件;
在解密所述第一身份验证信息成功的情况下,接收所述第一设备发送的调试信息,并根据所述调试信息进行调试,以及复位所述看门狗复位单元,并更新随机数;根据更新后的随机数,生成更新后的第二公钥,并根据所述更新后的第二公钥,生成更新后的签名证书;将所述更新后的签名证书发送给所述至少一个设备,以使所述至少一个设备中每个设备根据所述更新后的签名证书中的所述更新后的第二公钥,生成更新后的身份验证信息。
2.如权利要求1所述的方法,其特征在于,在根据预存的第一私钥,微处理器信息和第一私钥对应的第二公钥,生成签名证书之前,包括:
生成随机数;
根据预设的第一加密算法,对所述随机数进行加密,生成密钥种子;
根据所述第一私钥对应的加密算法,对所述密钥种子进行加密,生成第二公钥。
3.一种微处理器,其特征在于,所述微处理器包括:
发送模块,用于根据预存的第一私钥,微处理器信息,以及所述第一私钥对应的第二公钥,生成签名证书,将所述签名证书发送给至少一个设备,以使所述至少一个设备中每个设备根据预存的第一公钥解密所述签名证书,获得解密后的所述签名证书中的第二公钥;其中,所述至少一个设备为拥有调试所述微处理器权限的设备;
接收模块,用于接收第一调试请求;其中,所述第一调试请求为第一设备发送的,且携带所述第一设备所存储第二公钥加密的第一身份验证信息;
验证模块,用于按照所述预存的第一私钥,解密所述第一身份验证信息;其中,所述第一私钥与所述第二公钥相对应;
所述接收模块,还用于在解密所述第一身份验证信息成功的情况下,接收所述第一设备发送的调试信息;
调试模块,用于根据所述调试信息进行调试,以及若解密所述第一设备的第一身份验证信息失败,通过所述微处理器中看门狗复位单元记录解密所述第一设备的身份验证信息的失败次数,以及当所述失败次数大于预设阈值时,则擦除所述微处理器中的固件;
所述验证模块,还用于在按照预存的第一私钥,对所述第一身份验证信息进行解密之后,若解密所述第一设备的第一身份验证信息成功,则复位所述看门狗复位单元,并更新随机数,以及根据更新后的随机数,生成更新后的第二公钥,并根据所述更新后的第二公钥,生成更新后的签名证书;
所述发送模块,还用于将所述更新后的签名证书发送给所述至少一个设备,以使所述至少一个设备中每个设备根据所述更新后的签名证书中的所述更新后的第二公钥,生成更新后的身份验证信息。
4.如权利要求3所述的微处理器,其特征在于,所述验证模块还用于:
在根据所述预存的第一私钥,微处理器信息和第一私钥对应的第二公钥,生成签名证书之前,生成随机数;
根据预设的第一加密算法,对所述随机数进行加密,生成密钥种子;
根据所述第一私钥对应的加密算法,对所述密钥种子进行加密,生成第二公钥。
5.一种微处理器,其特征在于,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如权利要求1-2中任一项所述的方法。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如权利要求1-2中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910623583.6A CN110414248B (zh) | 2019-07-11 | 2019-07-11 | 一种调试微处理器的方法及微处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910623583.6A CN110414248B (zh) | 2019-07-11 | 2019-07-11 | 一种调试微处理器的方法及微处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110414248A CN110414248A (zh) | 2019-11-05 |
CN110414248B true CN110414248B (zh) | 2021-03-12 |
Family
ID=68361010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910623583.6A Active CN110414248B (zh) | 2019-07-11 | 2019-07-11 | 一种调试微处理器的方法及微处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110414248B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559437A (zh) * | 2019-09-25 | 2021-03-26 | 阿里巴巴集团控股有限公司 | 一种调试单元及处理器 |
CN111147259B (zh) * | 2019-12-26 | 2022-01-14 | 华为技术有限公司 | 鉴权方法和设备 |
CN111338673B (zh) * | 2020-02-21 | 2023-12-01 | Oppo(重庆)智能科技有限公司 | 设备调试方法、装置、电子设备及存储介质 |
CN111431873A (zh) * | 2020-03-11 | 2020-07-17 | 山东超越数控电子股份有限公司 | 一种信息上报的方法、***、设备以及介质 |
CN114124363A (zh) * | 2020-08-27 | 2022-03-01 | 上海新微技术研发中心有限公司 | 一种电子设备、认证***及认证方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101399663B (zh) * | 2008-10-14 | 2010-10-20 | 北京大学 | 一种数字内容授权方法、***及装置 |
CN104469736B (zh) * | 2014-11-05 | 2018-01-19 | 中兴通讯股份有限公司 | 一种数据处理方法、服务器及终端 |
CN107483523A (zh) * | 2016-11-02 | 2017-12-15 | 深圳市波普安创技术有限公司 | 信息安全设备的合法固件调试***及其方法 |
CN109600223B (zh) * | 2017-09-30 | 2021-05-14 | 腾讯科技(深圳)有限公司 | 验证方法、激活方法、装置、设备及存储介质 |
CN109150528A (zh) * | 2018-11-07 | 2019-01-04 | 杭州海兴电力科技股份有限公司 | 一种电表数据访问方法、装置、设备及可读存储介质 |
-
2019
- 2019-07-11 CN CN201910623583.6A patent/CN110414248B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110414248A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110414248B (zh) | 一种调试微处理器的方法及微处理器 | |
US11876791B2 (en) | Message authentication with secure code verification | |
CN109313690B (zh) | 自包含的加密引导策略验证 | |
CN107085675B (zh) | 受控安全代码验证 | |
US20120272065A1 (en) | Authentication Method, Host Computer and Recording Medium | |
CN112187544B (zh) | 固件升级方法、装置、计算机设备及存储介质 | |
US20180204004A1 (en) | Authentication method and apparatus for reinforced software | |
CN112514321A (zh) | 共享秘密建立 | |
CN110688660B (zh) | 一种终端安全启动的方法及装置、存储介质 | |
CN108595198B (zh) | 一种安全的固件更新方法 | |
CN114186199B (zh) | 许可授权方法及装置 | |
CN107534551B (zh) | 提供加密数据的方法、计算设备和计算机可读介质 | |
CN114662087B (zh) | 一种多端验证的安全芯片固件更新方法及装置 | |
CN115859267A (zh) | 一种应用程序安全启动的方法、存储控制芯片和电子设备 | |
JP2015104020A (ja) | 通信端末装置、通信端末関連付けシステム、通信端末関連付け方法、及びコンピュータプログラム | |
US11216571B2 (en) | Credentialed encryption | |
CN110837643A (zh) | 一种可信执行环境的激活方法和装置 | |
CN110619194B (zh) | 一种升级包加密、解密方法及装置 | |
CN114189862A (zh) | 无线终端及无线终端在Uboot模式下的接口访问鉴权方法 | |
CN103281188A (zh) | 一种备份电子签名令牌中私钥的方法和*** | |
CN114816549B (zh) | 一种保护bootloader及其环境变量的方法及*** | |
KR101711024B1 (ko) | 부정조작방지 장치 접근 방법 및 그 방법을 채용한 단말 장치 | |
CN116484379A (zh) | ***启动方法、包含可信计算基软件的***、设备及介质 | |
JP2004282391A (ja) | 認証機能を有する情報処理装置及び認証機能付与方法 | |
CN115357948A (zh) | 一种基于tee及加密芯片的硬件防抄板加密方法及其装置 |
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 |