CN110651448B - 芯片的访问方法、微芯片、智能卡以及调试设备 - Google Patents
芯片的访问方法、微芯片、智能卡以及调试设备 Download PDFInfo
- Publication number
- CN110651448B CN110651448B CN201880000492.0A CN201880000492A CN110651448B CN 110651448 B CN110651448 B CN 110651448B CN 201880000492 A CN201880000492 A CN 201880000492A CN 110651448 B CN110651448 B CN 110651448B
- Authority
- CN
- China
- Prior art keywords
- key
- smart card
- chip
- authentication code
- debugging
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
Abstract
一种芯片的访问方法、微芯片、智能卡以及调试设备。芯片的访问方法包括:判断智能卡的加密功能是否被触发(S301);若加密功能被触发,则至少基于密钥生成密文,并将密文反馈至调试设备,以供调试设备将密文发送至待调试的芯片,并供芯片根据密文确定是否允许调试设备对芯片进行访问(S302)。还提供了一种微芯片、智能卡以及调试设备。本方法提高了调试设备访问芯片时的安全性。
Description
技术领域
本申请涉及芯片测试技术领域,特别涉及一种芯片的访问方法、微芯片、智能卡以及调试设备。
背景技术
目前,在一些对安全性要求较高的使用场景下,例如指纹支付、安全门锁等,所使用的芯片的存储区域不能被随意访问;因此芯片出厂后,其调试功能一般是关闭的,在需要打开芯片的调试功能时需要进行安全认证,从而在一定程度上保证了调试环境的安全性,确保了芯片的存储区域的数据的安全性。
当前常用算法认证的方式来打开芯片的调试功能,算法认证具体如下:调试设备内部预存有密钥,调试设备基于预存的该密钥生成密文并将密文发送至待调试的芯片;芯片根据该密文判断该调试设备是否安全。一般而言,调试设备包括主控端和微控制器,微控制器负责生成密钥;即,密钥存储微控制器的存储区,当需要生成密文时,微控制器将密钥从该微控制器的存储区调入该微控制器的加密区。
发明人发现现有技术至少存在以下问题:微控制器的存储区和加密区并非是一个封闭的环境,微控制器生成密文时要从存储区域中将密钥调入加密区域中,若在这个过程中受到攻击则会导致密钥泄露。
发明内容
本申请部分实施例的目的在于提供一种芯片的访问方法、微芯片、智能卡以及调试设备,提高了调试设备访问芯片时的安全性。
本申请实施例提供了一种芯片的访问方法,应用于智能卡且智能卡内预存有密钥,方法包括:判断智能卡的加密功能是否被触发;若加密功能被触发,则至少基于密钥生成密文,并将密文反馈至调试设备,以供调试设备将密文发送至待调试的芯片,并供芯片根据密文确定是否允许调试设备对芯片进行访问。
本申请实施例又提供了一种芯片的访问方法,应用于调试设备,调试设备上插设有智能卡且智能卡内预存有密钥,方法包括:触发智能卡的加密功能,以供智能卡至少基于密钥生成密文;接收智能卡反馈的密文,并将密文发送至待调试的芯片,以供芯片根据密文确定是否允许调试设备对芯片进行访问。
本申请实施例还提供了一种微芯片,设置于智能卡内,且所述微芯片内预存有密钥;微芯片包括:判断单元,用于判断智能卡的加密功能是否被触发;加密单元,用于在判断单元判定智能卡的加密功能被触发时,至少基于密钥生成密文,并将密文反馈至调试设备,以供调试设备将密文发送至待调试的芯片,并供芯片根据密文确定是否允许调试设备对芯片进行访问。
本申请实施例还提供了一种智能卡,包括上述的微芯片。
本申请实施例还提供了一种调试设备,包括:调试接口、智能卡插槽、控制模块以及存储器;控制模块连接于智能卡插槽和调试接口;调试接口还用于连接至待调试的芯片;存储器中储存有可被处理器执行的指令,指令被至少一个控制模块执行,当智能卡插槽内插入预存有密钥的智能卡时,指令被处理器执行,以使处理器能够执行上述的芯片的访问方法。
本申请实施例相对于现有技术而言,将密钥存储在智能卡中,由智能卡根据密钥生成芯片外部的密文,并由调试设备将密文发送到芯片,从而芯片可以根据密文确定是否允许调试设备对芯片进行访问;即密钥直接存储在智能卡中,由智能卡独立完成密文的生成,利用了智能卡安全性可靠的优点,提高了调试设备访问芯片时的安全性。
另外,判断智能卡的加密功能是否被触发具体为,判断是否接收到调试设备发送过来的随机数;若是,则判定智能卡的加密功能被触发;其中随机数为调试设备从芯片获取的随机数;至少基于密钥生成密文具体为,基于密钥和随机数生成密文。本实施例中,智能卡基于密钥、以及芯片生成的随机数生成密文,进一步提升了芯片访问的安全性。
另外,当接收到调试设备发送的密钥更新信息时,根据密钥更新信息更新密钥。本实施例中,由于不同芯片的密钥是可能是不同的,从而可以根据不同的芯片需求对智能卡中的密钥进行更新。
另外,在接收到调试设备发送的密钥更新信息之前,还包括:当接收到调试设备发送的认证码时,判断接收的认证码与智能卡内部预存的认证码是否匹配;若判定结果为匹配,则反馈认证通过的应答至调试设备。本实施例中,当需要更新密钥时,进行认证码验证,更加安全。
另外,在反馈认证通过的应答至调试设备之后,还包括:当接收到调试设备发送的认证码更新信息时,根据认证码更新信息更新智能卡内部预存的认证码。本实施例中,用户可以自主更换智能卡内部的认证码。
另外,智能卡是基于Java card的智能卡。本实施例智能卡的一种具体类型,同时基于Java card的智能卡便于实现加密算法。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是根据本申请第一实施例中的芯片的访问方法的具体流程图;
图2是根据本申请第二实施例中的芯片的访问方法的具体流程图;
图3是根据本申请第二实施例中的调试设备、芯片以及智能卡交互过程的示意图;
图4是根据本申请第三实施例中的芯片的访问方法的具体流程图;
图5是根据本申请第四实施例中的芯片的访问方法的具体流程图;
图6是根据本申请第五实施例中的芯片的访问方法的具体流程图;
图7是根据本申请第六实施例中的芯片的访问方法的具体流程图;
图8是根据本申请第七实施例中的芯片的访问方法的具体流程图;
图9是根据本申请第八实施例中的芯片的访问方法的具体流程图;
图10是根据本申请第九实施例中的微芯片的方框示意图;
图11是根据本申请第十一实施例中的微芯片的方框示意图;
图12是根据本申请第十二实施例中的微芯片的方框示意图;
图13是根据本申请第十三实施例中的调试设备的方框示意图;
图14是根据本申请第十三实施例中的调试设备的方框示意图,其中控制模块包括主控端与微控制器。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请部分实施例进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请第一实施例涉及一种芯片的访问方法,应用于智能卡;即,本实施例的芯片访问方法,为调试设备对芯片进行访问时,智能卡所做的处理方法。智能卡内预存有密钥以及加密算法,以实现智能卡的加密功能,其中密钥一般放在智能卡的非易失性存储区域中。智能卡可以为基于Java card的智能卡,以便于加密算法的实现;基于Java card的智能卡包含一个裁剪过的Java虚拟机,加密算法作为Java Applet运行在基于Java card的智能卡的内部。本实施例中选取的加密算法为Present算法,其更便于硬件实现,然不限于此,也可以根据需求选取其他的加密算法。
本实施例中的待调试的芯片可以安装在嵌入式开发板上,且嵌入式开发板上包括与芯片连接的一个调试接口;调试设备也包括另一个调试接口,且调试设备与芯片通过两个调试接口连接。其中,调试设备可以为JTAG(Joint Test Action Group,国际标准测试协议,简称“JTAG”)设备,此时,调试接口为JTAG接口;另外,调试设备上可以设置有卡槽,智能卡通过卡槽插在调试设备中。本实施例中,调试设备可以包括个人电脑PC和微控制器,PC连接于芯片且通过微控制器连接至智能卡。
本实施例的芯片的访问方法的具体流程如图1所示。
步骤101,判断智能卡的加密功能是否被触发。若是,则进入步骤102;若否,则直接结束。
调试设备可以触发智能卡的加密功能。具体的,当调试设备通过调试接口与芯片连接并检测到芯片后,调试设备控制启动智能卡(包括复位、初始化等操作),随后调试设备发送一个触发指令至智能卡,当智能卡接收到触发指令后,加密功能被触发,进入步骤102;若智能卡没有接收到触发指令,则智能卡的加密功能没有被触发,直接结束。
步骤102,至少基于密钥生成密文,并将密文反馈至调试设备,以供调试设备将密文发送至待调试的芯片,并供芯片根据密文确定是否允许调试设备对芯片进行访问。
在一个例子中,智能卡内部还预存有待加密的预设数值,智能卡可以基于该预设数值与该密钥生成密文,即智能卡运行预设的加密算法,利用该密钥对该预设数值进行加密以生成密文。随后,智能卡将密文反馈至调试设备,且调试设备将密文发送至待调试的芯片。
芯片中存有密钥,智能卡中预存的密钥与芯片中的密钥相同,芯片至少基于该密钥生成密文;对应的,芯片内部还预存有上述预设数值(与智能卡中的预设数值相同),芯片基于该预设数值与该密钥生成密文,即芯片运行预设的加密算法(与智能卡中的加密算法相同),利用该密钥对该预设数值进行加密以生成密文。当芯片判定接收到的调试设备发送的密文与自身生成的密文相同时,则芯片确定允许调试设备对芯片进行访问,即,允许调试设备打开芯片的调试功能。
需要说明的是,本实施例中,当芯片判定接收到的调试设备发送的密文与自身生成的密文相同时,确定允许调试设备对芯片进行访问,然不限于此,还可以是芯片根据接收到的密文是否和芯片中预存的密文相同,来确定是否允许调试设备对芯片进行访问;或者,芯片根据密文是否携带芯片的正确型号,来确定是否允许调试设备对芯片进行访问;或者,芯片根据密文是否为某种预设类型的信息,来确定是否允许调试设备对芯片进行访问,其中类型可以为文字、数字、字母、符号或其任意组合。
本实施例相对于现有技术而言,将密钥存储在智能卡中,由智能卡根据密钥生成芯片外部的密文,并由调试设备将密文发送到芯片,从而芯片可以根据密文确定是否允许调试设备对芯片进行访问;即密钥直接存储在智能卡中,由智能卡独立完成密文的生成,利用了智能卡安全性可靠的优点,提高了调试设备访问芯片时的安全性。
本申请第二实施例涉及一种芯片的访问方法,本实施例是在第一实施例基础上的改进,主要改进之处在于:智能卡基于密钥与随机数生成密文。
本实施例的芯片的访问方法的具体流程如图2所示。
步骤201,判断是否接收到调试设备发送过来的随机数;若是,则进入步骤202;若否,则直接结束。
步骤202,基于密钥和随机数生成密文,并将密文反馈至调试设备,以供调试设备将密文发送至待调试的芯片,并供芯片根据密文确定是否允许调试设备对芯片进行访问。
请参考图3,具体而言,芯片生成一个用于安全认证的随机数,PC从芯片获取该随机数,并通过微控制器将该随机数发送到智能卡,当智能卡接收到微控制器发送过来的随机数时,智能卡的加密功能被触发。
智能卡的加密功能被触发后,智能卡基于密钥和随机数生成密文,随后智能卡将密文反馈至调试设备的微控制器,然后调试设备通过PC将密文发送至待调试的芯片。
芯片中存有密钥,智能卡中预存的密钥与芯片中的密钥相同,芯片基于密钥与随机数生成密文,当芯片判定接收到的调试设备发送的密文与自身生成的密文相同时,则芯片确定允许调试设备对芯片进行访问,即,允许调试设备打开芯片的调试功能。
本实施例中,随机数可以为字符类型和数字类型两种类型的随机数,字符类型可随机生成任意长度的字符串,而数字类型则是生成一定范围内的数字,在生成随机数时,还可以选择允许重复或不允许重复。
本实施例相对于第一实施例而言,智能卡基于密钥、以及芯片生成的随机数生成密文,进一步提升了芯片访问的安全性。
本申请第三实施例涉及一种芯片访问方法,本实施例是在第一实施例基础上的改进,主要改进之处在于:智能卡中的密钥可以进行更新。
本实施例的芯片的访问方法的具体流程如图4所示。
其中,步骤301、步骤302与步骤101、步骤102大致相同,主要不同之处在于,本实施例中增加了步骤303至步骤307,具体如下:
步骤303,判断是否接收到调试设备发送的认证码。若是,则进入步骤404;若否,则直接结束。
具体而言,芯片出厂时,不同的芯片中烧写的密钥可能是不同的,为了使智能卡中的密钥与待调试的芯片中的密钥保持一致,需要更新智能卡的密钥;在更新智能卡的密钥之前,通过调试设备发送认证码到智能卡;当智能卡接收到调试设备发送的认证码时,则说明用户需要更新智能卡的密钥,进入步骤304;否则,则说明用户不需要更新智能卡的密钥,直接结束。
步骤304,判断接收的认证码与智能卡内部预存的认证码是否匹配。
具体而言,智能卡内部预存有认证码,当智能卡接收到的认证码与其内部预存的认证码匹配时,则说明验证通过,进入步骤305;否则,则说明验证不通过,直接结束,或者请求调试设备重新发送认证码。
步骤305,反馈认证通过的应答至调试设备。
具体而言,智能卡反馈认证通过的应答给调试设备,允许调试设备对智能卡进行密钥更新。
步骤306,判断是否接收到调试设备发送的密钥更新信息。若是,则进入步骤307;若否,则直接结束。
其中,密钥更新信息包含一个新的密钥,该密钥与新的待调试的芯片的密钥相同。在一个例子中,用户可以通过调试设备设定该新的密钥,调试设备根据新的密钥生成密钥更新信息,并将该密钥更新信息发送到智能卡,当智能卡接收到调试设备发送的密钥更新信息时,进入步骤307;否则,则直接结束。
步骤307,根据密钥更新信息更新密钥。
具体而言,智能卡从密钥更新信息中获取新的密钥,并用该新的密钥替换智能卡中原来的密钥,从而使得智能卡中的密钥与芯片中的密钥保持一致。
需要说明的是,本实施例中在更新智能卡的密钥时(步骤306、步骤307),对认证码进行验证(步骤304至步骤306),更加安全;然不限于此,本实施例中也可以不对认证码进行验证,直接更新智能卡的密钥。
还需要说明的是,步骤303至步骤307,与步骤301、步骤302并无明显的先后关系,即,本实施例中,只要接收到调试设备发送的密钥更新信息,便可以根据密钥更新信息更新密钥,本实施例只是提供一个例子,在实际应用中并不以此为限。
本实施例相对于第一实施例而言,由于不同芯片的密钥可能是不同的,从而可以根据不同的芯片需求对智能卡中的密钥进行更新。需要说明的是,本实施例也可以作为在第二实施例基础上的改进,可以达到同样的技术效果。
本申请第四实施例涉及一种芯片访问方法,本实施例是在第一实施例基础上的改进,主要改进之处在于:用户可以自主更换智能卡内部的认证码。
本实施例的芯片的访问方法的具体流程如图5所示。
其中,步骤401、步骤402与步骤101、步骤102大致相同,主要不同之处在于,本实施例中增加了步骤403至步骤407,具体如下:
步骤403,判断是否接收到调试设备发送的认证码。若是,则进入步骤404;若否,则直接结束。
具体而言,智能卡出厂时,其内部会预设有初始的认证码,当需要更新智能卡的认证码时,调试设备发送认证码到智能卡;当智能卡接收到调试设备发送的认证码时,进入步骤404;否则,直接结束。
步骤404,判断接收的认证码与智能卡内部预存的认证码是否匹配。
具体而言,智能卡内部预存有认证码,当智能卡接收到的认证码与其内部预存的认证码匹配时,则说明验证通过,进入步骤405;否则,则说明验证不通过,直接结束,或者请求调试设备重新发送认证码。
步骤405,反馈认证通过的应答至调试设备。
具体而言,智能卡反馈认证通过的应答给调试设备,允许调试设备对智能卡进行认证码更新。
步骤406,判断是否接收到调试设备发送的认证码更新信息。若是,则进入步骤407;若否,则直接结束。
其中,认证码更新信息中包含新的认证码。在一个例子中,用户可以通过调试设备自定义设定一个新的认证码,调试设备根据新的认证码生成认证码更新信息,并将该认证码更新信息发送到智能卡,当智能卡接收到调试设备发送的认证码更新信息时,进入步骤407;否则,直接结束。
步骤407,根据认证码更新信息更新智能卡内部预存的认证码。
具体而言,智能卡从认证码更新信息中获取新的认证码,并用该新的认证码替换智能卡中原来的认证码。
需要说明的是步骤403至步骤407,与步骤401、步骤402并无明显的先后关系,本实施例只是提供一个例子,在实际应用中并不以此为限。
本实施例相对于第一实施而言,用户可以自主更换智能卡内部的认证码。需要说明的是,本实施例也可以作为在第二实施例或第三实施例基础上的改进,可以达到同样的技术效果。
本申请第五实施例涉及一种芯片的访问方法,应用于调试设备,即,本实施例的芯片访问方法,为调试设备对芯片进行访问时,调试设备所做的处理方法。
本申请第五实施例的芯片的访问方法的具体流程如图6所示。
步骤501,触发智能卡的加密功能,以供智能卡至少基于密钥生成密文。
具体而言,调试设备可以触发智能卡的加密功能,具体的,当调试设备通过调试接口与芯片连接并检测到芯片后,调试设备控制启动智能卡(包括复位、初始化等操作),随后调试设备发送一个触发指令至智能卡,智能卡接收到触发指令后加密功能被触发,至少基于密钥生成密文。
在一个例子中,智能卡内部还预存有待加密的预设数值,智能卡可以基于该预设数值与该密钥生成密文,即智能卡运行预设的加密算法,利用该密钥对该预设数值进行加密以生成密文。
步骤502,接收智能卡反馈的密文,并将密文发送至待调试的芯片,以供芯片根据密文确定是否允许调试设备对芯片进行访问。
具体而言,智能卡生成密文后,会将密文反馈至调试设备,调试设备将接收的智能卡反馈的密文发送至待调试的芯片;芯片中存有密钥,智能卡中预存的密钥与芯片中的密钥相同,芯片至少基于该密钥生成密文。对应的,芯片内部还预存有上述预设数值(与智能卡中的预设数值相同),芯片基于该预设数值与该密钥生成密文,即芯片运行预设的加密算法(与智能卡中的加密算法相同),利用该密钥对该预设数值进行加密以生成密文。当芯片判定接收到的调试设备发送的密文与自身生成的密文相同时,则芯片确定允许调试设备对芯片进行访问,即,芯片打开自身的调试功能。
不难发现,本实施例中的芯片的访问方法应用于调试设备,第一实施例中的芯片的访问方法应用于智能卡,本实施例可以与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
本实施例相对于现有技术而言,将密钥存储在智能卡中,由智能卡根据密钥生成芯片外部的密文,并由调试设备将密文发送到芯片,从而芯片可以根据密文确定是否允许调试设备对芯片进行访问;即密钥直接存储在智能卡中,由智能卡独立完成密文的生成,利用了智能卡安全性可靠的优点,提高了调试设备访问芯片时的安全性。
本申请第六实施例涉及一种芯片的访问方法,本实施例是在第五实施例基础上的改进,主要改进之处在于:智能卡基于密钥与随机数生成密文。
本实施例的芯片的访问方法的具体流程如图7所示。
步骤601,触发芯片的安全认证功能,并从芯片获取用于安全认证的随机数。
步骤602,将随机数发送至智能卡,以触发智能卡的加密功能,以供智能卡基于智能卡内部预存的密钥和随机数生成密文。
步骤603,接收智能卡反馈的密文,并将密文发送至待调试的芯片,以供芯片根据密文确定是否允许调试设备对芯片进行访问。
请参考图3,具体而言,当调试设备要对芯片进行调试时,需要打开芯片的调试功能时,此时便会触发芯片的安全认证功能,芯片的安全认证功能被触发后,会产生一个用于安全认证的随机数,PC从芯片获取该随机数。
PC通过微控制器将从芯片获取的随机数发送到智能卡,当智能卡接收到微控制器发送过来的随机数时,智能卡的加密功能被触发,此时,智能卡基于智能卡内部预存的密钥和随机数生成密文。
智能卡生成密文后,会将密文反馈至调试设备的微控制器,然后调试设备通过PC将密文发送至待调试的芯片;芯片中存有密钥,智能卡中预存的密钥与芯片中的密钥相同,芯片基于密钥与随机数生成密文,当芯片判定接收到的调试设备发送的密文与自身生成的密文相同时,则芯片确定允许调试设备对芯片进行访问,即,调试设备打开芯片的调试功能。
不难发现,本实施例中的芯片的访问方法应用于调试设备,第二实施例中的芯片的访问方法应用于智能卡,本实施例可以与第二实施例互相配合实施。第二实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第二实施例中。
本实施例相对于第五实施例而言,智能卡基于密钥、以及芯片生成的随机数生成密文,进一步提升了芯片访问的安全性。
本申请第七实施例涉及一种芯片访问方法,本实施例是在第五实施例基础上的改进,主要改进之处在于:智能卡中的密钥可以进行更新。
本实施例的芯片的访问方法的具体流程如图8所示。
其中,步骤701、步骤702与步骤501、步骤502大致相同,主要不同之处在于,本实施例中增加了步骤703与步骤704,具体如下:
步骤703,将认证码发送至智能卡,以供智能卡判断接收的认证码与智能卡内部预存的认证码是否匹配,并在判定匹配时反馈认证通过的应答至调试设备。
具体而言,芯片出厂时,不同的芯片中烧写的密钥可能是不同的,为了使智能卡中的密钥与待调试的芯片中的密钥保持一致,需要对智能卡中的密钥进行更新。在更新智能卡的密钥之前,通过调试设备发送认证码到智能卡,智能卡内部预存有认证码,当智能卡接收到的认证码与其内部预存的认证码匹配时,则说明验证通过,反馈认证通过的应答给调试设备,允许调试设备对智能卡进行密钥更新。
步骤704,将密钥更新信息发送至智能卡,以供智能卡根据密钥更新信息更新密钥。
具体而言,调试设备在接收到认证通过的应答时,将密钥更新信息发送至智能卡,密钥更新信息包含一个新的密钥,该密钥与待调试的芯片的密钥相同;在一个例子中,用户可以通过调试设备设定一个新的密钥,调试设备根据新的密钥生成密钥更新信息,并将该密钥更新信息发送到智能卡,智能卡接收到调试设备发送的密钥更新信息后,从密钥更新信息中获取新的密钥,并用该新的密钥替换智能卡中原来的密钥,从而使得智能卡中的密钥与芯片中的密钥保持一致。
需要说明的是,本实施例中在更新智能卡的密钥时(步骤704),对认证码进行验证(步骤703),从而更加安全;然不限于此,本实施例中也可以不对认证码进行验证,直接更新智能卡的密钥。
还需要说明的是,步骤703、步骤704,与步骤701、步骤702并无明显的先后关系,即,本实施例中,只要需要更新密钥时,将密钥更新信息发送至智能卡,以供智能卡根据密钥更新信息更新密钥,本实施例只是提供一个例子,在实际应用中并不以此为限。
不难发现,本实施例中的芯片的访问方法应用于调试设备,第三实施例中的芯片的访问方法应用于智能卡,本实施例可以与第三实施例互相配合实施。第三实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第三实施例中。
本实施例相对于第五实施例而言,由于不同芯片的密钥是不同的,从而可以根据不同的芯片需求对智能卡中的密钥进行更新。需要说明的是,本实施例也可以作为在第六实施例基础上的改进,可以达到同样的技术效果。
本申请第八实施例涉及一种芯片访问方法,本实施例是在第七实施例基础上的改进,主要改进之处在于:用户可以自主更换智能卡内部的认证码。
本实施例的芯片的访问方法的具体流程如图9所示。
其中,步骤801、步骤802与步骤501、步骤502大致相同,主要不同之处在于,本实施例中增加了步骤803与步骤804,具体如下:
步骤803,将认证码发送至智能卡,以供智能卡判断接收的认证码与智能卡内部预存的认证码是否匹配,并在判定匹配时反馈认证通过的应答至调试设备。
具体而言,智能卡出厂时,其内部会预设有初始的认证码,当用户需要更新智能卡的认证码时,通过调试设备发送认证码到智能卡,智能卡内部预存有认证码,当智能卡接收到的认证码与其内部预存的认证码匹配时,则说明验证通过,智能卡反馈认证通过的应答给调试设备,允许调试设备对智能卡进行认证码更新。
步骤804,在接收到认证通过的应答时,发送认证码更新信息至智能卡,以供智能卡根据认证码更新信息更新智能卡内部预存的认证码。
具体而言,调试设备在接收到智能卡反馈的认证通过的应答时,发送认证码更新信息至智能卡;认证码更新信息中包含新的认证码。在一个例子中,用户可以通过调试设备自定义设定一个新的认证码,调试设备根据新的认证码生成认证码更新信息,并将该认证码更新信息发送到智能卡,当智能卡接收到调试设备发送的认证码更新信息时,从认证码更新信息中获取新的认证码,并用该新的认证码替换智能卡中原来的认证码。
需要说明的是步骤803、步骤804,与步骤801、步骤802并无明显的先后关系,本实施例只是提供一个例子,在实际应用中并不以此为限。
不难发现,本实施例中的芯片的访问方法应用于调试设备,第四实施例中的芯片的访问方法应用于智能卡,本实施例可以与第四实施例互相配合实施。第四实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第四实施例中。
本实施例相对于第五实施例而言,用户可以自主更换智能卡内部的认证码。需要说明的是,本实施例也可以作为在第六至第八实施例中任一项的基础上的改进,可以达到同样的技术效果。
本申请第九实施例涉及一种微芯片,设置于智能卡内,且所述微芯片内预存有密钥,智能卡为基于Java card的智能卡。请参考图10,微芯片包括判断单元1、加密单元2。
判断单元1用于判断智能卡的加密功能是否被触发;
加密单元2用于在判断单元判定智能卡的加密功能被触发时,至少基于密钥生成密文,并将密文反馈至调试设备,以供调试设备将密文发送至待调试的芯片,并供芯片根据密文确定是否允许调试设备对芯片进行访问。
不难发现,本实施例与第一实施例相对应,本实施例可以与第一实施例互相配合实施。第一实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一实施例中。
本实施例相对于现有技术而言,将密钥存储在智能卡中,由智能卡根据密钥生成芯片外部的密文,并由调试设备将密文发送到芯片,从而芯片可以根据密文确定是否允许调试设备对芯片进行访问;即密钥直接存储在智能卡中,由智能卡独立完成密文的生成,利用了智能卡安全性可靠的优点,提高了调试设备访问芯片时的安全性。
本申请第十实施例涉及一种微芯片,本实施例是在第十实施例基础上的改进,主要改进之处在于:请参考图10,加密单元2基于密钥与随机数生成密文。
判断单元1具体用于判断是否接收到调试设备发送过来的随机数;若是,则判定智能卡的加密功能被触发;其中随机数为调试设备从芯片获取的随机数。
加密单元2具体用于基于密钥和随机数生成密文。
不难发现,本实施例与第二实施例相对应,本实施例可以与第二实施例互相配合实施。第二实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第二实施例中。
本实施例相对于第十实施例而言,智能卡基于密钥、以及芯片生成的随机数生成密文,进一步提升了芯片访问的安全性。
本申请第十一实施例涉及一种微芯片,本实施例是在第十实施例基础上的改进,主要改进之处在于:请参考图11,微芯片还包括密钥更新单元4。
密钥更新单元4用于在接收到调试设备发送的密钥更新信息时,根据密钥更新信息更新密钥。
较佳的,微芯片还包括认证单元3,认证单元3用于在接收到调试设备发送的认证码时,判断接收的认证码与智能卡内部预存的认证码是否匹配;若判定结果为匹配,则反馈认证通过的应答至调试设备。
密钥更新单元4具体用于在认证单元反馈了认证通过的应答后,允许接收密钥更新信息。
不难发现,本实施例与第三实施例相对应,本实施例可以与第三实施例互相配合实施。第三实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第三实施例中。
本实施例相对于第九实施例而言,由于不同芯片的密钥是不同的,从而可以根据不同的芯片需求对智能卡中的密钥进行更新。需要说明的是,本实施例也可以作为在第十实施例基础上的改进,可以达到同样的技术效果。
本申请第十二实施例涉及一种微芯片,本实施例是在第十一实施例基础上的改进,主要改进之处在于:请参考图12,微芯片还包括认证码更新单元5。
认证码更新单元5用于在认证单元3反馈了认证通过的应答后,允许接收调试设备发送的认证码更新信息,并在接收到认证码更新信息时,根据认证码更新信息更新智能卡内部预存的认证码。
不难发现,本实施例与第四实施例相对应,本实施例可以与第四实施例互相配合实施。第四实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第四实施例中。
本实施例相对于第十一实施而言,用户可以自主更换智能卡内部的认证码。需要说明的是,本实施例也可以作为在第十实施例基础上的改进,可以达到同样的技术效果。
本申请第十三实施例涉及一种智能卡,包括第九至十二实施例中任一项的微芯片。其中,智能卡是基于Java card的智能卡。
本申请第十四实施例涉及一种调试设备,请参考图13,调试设备包括调试接口6、智能卡插槽7、控制模块8以及存储器9。
调试设备可以为JTAG(Joint Test Action Group,国际标准测试协议,简称“JTAG”)设备,此时,调试接口6为JTAG接口。
控制模块8连接于智能卡插槽7和调试接口6;调试接口6还用于连接至待调试的芯片10,智能卡插槽7用于供预存有密钥的智能卡11插入。
具体的说,请参考图14,控制模块8包括主控端81与微控制器82,主控端81可以为个人电脑PC,主控端81连接到转接板12,转接板12通过调试接口6连接到芯片10,主控端81还通过转接板12连接于微控制器82,微控制器82连接于智能卡11;另外,主控端81连接于存储器9。
其中,主控端81、转接板12以及微控制器82可以为一体机,然不限于此,也可以分开设置。
存储器9中储存有可被处理器执行的指令,指令被至少一个控制模块执行,当智能卡插槽7内插入预存有密钥的智能卡11时,指令被控制模块8执行,以使控制模块8能够第五至第九实施例中任一项的芯片的访问方法。
本领域的普通技术人员可以理解,上述各实施例是实现本申请的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。
Claims (17)
1.一种芯片的访问方法,其特征在于,应用于智能卡且所述智能卡内预存有密钥,所述方法包括:
判断所述智能卡的加密功能是否被触发;
若所述加密功能被触发,则至少基于所述密钥生成密文,并将所述密文反馈至调试设备,以供所述调试设备将所述密文发送至待调试的芯片,并供所述芯片根据所述密文确定是否允许所述调试设备对所述芯片进行访问;
当接收到所述调试设备发送的密钥更新信息时,根据所述密钥更新信息更新所述密钥;其中,所述密钥更新信息包含新的密钥,所述新的密钥与新的待调试的芯片的密钥相同,所述新的密钥由所述调试设备设定,所述密钥更新信息由所述调试设备根据所述新的密钥生成;
所述根据所述密钥更新信息更新所述密钥,包括:从所述密钥更新信息中获取所述新的密钥,并用所述新的密钥替换所述智能卡中原来的密钥。
2.如权利要求1所述的芯片的访问方法,其特征在于,所述判断所述智能卡的加密功能是否被触发具体为,判断是否接收到所述调试设备发送过来的随机数;若是,则判定所述智能卡的加密功能被触发;其中所述随机数为所述调试设备从所述芯片获取的随机数;
所述至少基于所述密钥生成密文具体为,基于所述密钥和所述随机数生成所述密文。
3.如权利要求1所述的芯片的访问方法,其特征在于,在所述接收到所述调试设备发送的密钥更新信息之前,还包括:
当接收到所述调试设备发送的认证码时,判断接收的所述认证码与所述智能卡内部预存的认证码是否匹配;
若判定结果为匹配,则反馈认证通过的应答至所述调试设备。
4.如权利要求3所述的芯片的访问方法,其特征在于,在所述反馈认证通过的应答至所述调试设备之后,还包括:
当接收到所述调试设备发送的认证码更新信息时,根据所述认证码更新信息更新所述智能卡内部预存的认证码。
5.如权利要求1所述的芯片的访问方法,其特征在于,所述智能卡是基于Java card的智能卡。
6.一种芯片的访问方法,其特征在于,应用于调试设备,所述调试设备上插设有智能卡且所述智能卡内预存有密钥,所述方法包括:
触发所述智能卡的加密功能,以供所述智能卡至少基于所述密钥生成密文;
接收所述智能卡反馈的所述密文,并将所述密文发送至待调试的芯片,以供所述芯片根据所述密文确定是否允许所述调试设备对所述芯片进行访问;
当需要更新密钥时,将密钥更新信息发送至所述智能卡,以供所述智能卡根据所述密钥更新信息更新所述密钥;其中,所述密钥更新信息包含新的密钥,所述新的密钥与新的待调试的芯片的密钥相同,所述新的密钥由所述调试设备设定,所述密钥更新信息由所述调试设备根据所述新的密钥生成;
所述根据所述密钥更新信息更新所述密钥,包括:从所述密钥更新信息中获取所述新的密钥,并用所述新的密钥替换所述智能卡中原来的密钥。
7.如权利要求6所述的芯片的访问方法,其特征在于,在所述触发所述智能卡的加密功能之前,还包括:
触发所述芯片的安全认证功能,并从所述芯片获取用于安全认证的随机数;
所述触发所述智能卡的加密功能具体为,将所述随机数发送至所述智能卡,以触发所述智能卡的加密功能;
其中,所述智能卡基于所述智能卡内部预存的所述密钥和所述随机数生成所述密文。
8.如权利要求6所述的芯片的访问方法,其特征在于,所述方法还包括:
当需要更新密钥时,将密钥更新信息发送至所述智能卡,以供所述智能卡根据所述密钥更新信息更新所述密钥。
9.如权利要求8所述的芯片的访问方法,其特征在于,当需要更新密钥时,且在所述将密钥更新信息发送至所述智能卡之前,还包括:
将认证码发送至所述智能卡,以供所述智能卡判断接收的所述认证码与所述智能卡内部预存的认证码是否匹配,并在判定匹配时反馈认证通过的应答至所述调试设备;
所述将密钥更新信息发送至所述智能卡具体为,在接收到所述认证通过的应答时,将密钥更新信息发送至所述智能卡。
10.如权利要求6所述的芯片的访问方法,其特征在于,所述方法还包括:
当需要更新认证码时,将认证码发送至所述智能卡,以供所述智能卡判断接收的所述认证码与所述智能卡内部预存的认证码是否匹配,并在判定匹配时反馈认证通过的应答至所述调试设备;
在接收到所述认证通过的应答时,发送认证码更新信息至所述智能卡,以供所述智能卡根据所述认证码更新信息更新所述智能卡内部预存的认证码。
11.一种微芯片,其特征在于,设置于智能卡内,且所述微芯片内预存有密钥,所述微芯片包括:
判断单元,用于判断所述智能卡的加密功能是否被触发;
加密单元,用于在所述判断单元判定所述智能卡的加密功能被触发时,至少基于所述密钥生成密文,并将所述密文反馈至调试设备,以供所述调试设备将所述密文发送至待调试的芯片,并供所述芯片根据所述密文确定是否允许所述调试设备对所述芯片进行访问;
所述微芯片还包括密钥更新单元;
所述密钥更新单元用于在接收到所述调试设备发送的密钥更新信息时,根据所述密钥更新信息更新所述密钥;其中,所述密钥更新信息包含新的密钥,所述新的密钥与新的待调试的芯片的密钥相同,所述新的密钥由所述调试设备设定,所述密钥更新信息由所述调试设备根据所述新的密钥生成;
所述根据所述密钥更新信息更新所述密钥,包括:从所述密钥更新信息中获取所述新的密钥,并用所述新的密钥替换所述智能卡中原来的密钥。
12.如权利要求11所述的微芯片,其特征在于,所述判断单元具体用于判断是否接收到所述调试设备发送过来的随机数;若是,则判定所述智能卡的加密功能被触发;其中所述随机数为所述调试设备从所述芯片获取的随机数;
所述加密单元具体用于基于所述密钥和所述随机数生成所述密文。
13.如权利要求11所述的微芯片,其特征在于,所述微芯片还包括认证单元;
所述认证单元用于在接收到所述调试设备发送的认证码时,判断接收的所述认证码与所述智能卡内部预存的认证码是否匹配;若判定结果为匹配,则反馈认证通过的应答至所述调试设备;
所述密钥更新单元具体用于在所述认证单元反馈了所述认证通过的应答后,允许接收所述密钥更新信息。
14.如权利要求13所述的微芯片,其特征在于,所述微芯片还包括认证码更新单元;
所述认证码更新单元用于在所述认证单元反馈了所述认证通过的应答后,允许接收所述调试设备发送的认证码更新信息,并在接收到所述认证码更新信息时,根据所述认证码更新信息更新所述智能卡内部预存的认证码。
15.一种智能卡,其特征在于,包括权利要求11至14中任一项所述的微芯片。
16.如权利要求15所述的智能卡,其特征在于,所述智能卡是基于Java card的智能卡。
17.一种调试设备,其特征在于,包括:调试接口、智能卡插槽、控制模块以及存储器;
所述控制模块连接于所述智能卡插槽和所述调试接口;所述调试接口还用于连接至待调试的芯片;
所述存储器中储存有可被所述控制模块执行的指令,所述指令被所述至少一个控制模块执行,
当所述智能卡插槽内插入预存有密钥的智能卡时,所述指令被所述控制模块执行,以使所述控制模块能够执行如权利要求6至10中任一项所述的芯片的访问方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/079903 WO2019178787A1 (zh) | 2018-03-21 | 2018-03-21 | 芯片的访问方法、微芯片、智能卡以及调试设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110651448A CN110651448A (zh) | 2020-01-03 |
CN110651448B true CN110651448B (zh) | 2022-10-04 |
Family
ID=67988103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880000492.0A Active CN110651448B (zh) | 2018-03-21 | 2018-03-21 | 芯片的访问方法、微芯片、智能卡以及调试设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110651448B (zh) |
WO (1) | WO2019178787A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111900958A (zh) * | 2020-06-19 | 2020-11-06 | 上海美仁半导体有限公司 | 随机数产生电路、芯片及家用电器 |
CN112904182B (zh) * | 2021-01-28 | 2021-12-07 | 无锡众星微系统技术有限公司 | 测试模式进入控制方法 |
CN112860497B (zh) * | 2021-01-28 | 2022-02-08 | 无锡众星微系统技术有限公司 | 芯片调试使能控制方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169809A (zh) * | 2006-10-24 | 2008-04-30 | 展讯通信(上海)有限公司 | 一种安全的jtag连接认证系统及其认证方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7730545B2 (en) * | 2005-05-23 | 2010-06-01 | Arm Limited | Test access control for secure integrated circuits |
EP1752937A1 (en) * | 2005-07-29 | 2007-02-14 | Research In Motion Limited | System and method for encrypted smart card PIN entry |
US7886150B2 (en) * | 2007-05-11 | 2011-02-08 | Mips Technologies, Inc. | System debug and trace system and method, and applications thereof |
CN103440216B (zh) * | 2013-08-22 | 2016-12-28 | 深圳市汇顶科技股份有限公司 | 一种通过i2c从设备调试mcu的芯片及方法 |
CN103679062B (zh) * | 2013-12-23 | 2017-02-08 | 上海贝岭股份有限公司 | 智能电表主控芯片和安全加密方法 |
CN105743654A (zh) * | 2016-02-02 | 2016-07-06 | 上海动联信息技术股份有限公司 | 一种pos机密钥远程下载的服务系统以及密钥下载方法 |
CN106330455A (zh) * | 2016-08-18 | 2017-01-11 | 北京华大信安科技有限公司 | 一种安全认证方法、主电子设备及从电子设备 |
CN106506479B (zh) * | 2016-10-24 | 2019-09-13 | 北京明华联盟科技有限公司 | 密码认证的方法、系统及客户端、服务器和智能设备 |
CN106855924B (zh) * | 2016-12-16 | 2020-05-26 | 南方城墙信息安全科技有限公司 | 嵌入式智能芯片设备和后台应用系统 |
-
2018
- 2018-03-21 CN CN201880000492.0A patent/CN110651448B/zh active Active
- 2018-03-21 WO PCT/CN2018/079903 patent/WO2019178787A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169809A (zh) * | 2006-10-24 | 2008-04-30 | 展讯通信(上海)有限公司 | 一种安全的jtag连接认证系统及其认证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110651448A (zh) | 2020-01-03 |
WO2019178787A1 (zh) | 2019-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4744106B2 (ja) | セキュアデバイス、情報処理端末、通信システム及び通信方法 | |
CN110651448B (zh) | 芯片的访问方法、微芯片、智能卡以及调试设备 | |
CN107430658B (zh) | 安全软件认证及验证 | |
CN106658493A (zh) | 密钥管理方法、装置和系统 | |
US20030014643A1 (en) | Electronic apparatus and debug authorization method | |
JP2004213216A (ja) | 情報セキュリティマイクロコンピュータ、そのプログラム開発装置およびそれらを含んだプログラム開発システム | |
CN107944234B (zh) | 一种Android设备的刷机控制方法 | |
CN105243314A (zh) | 一种基于USB-key的安全系统及其使用方法 | |
CN104636682A (zh) | 一种基于硬件设备的密码管理系统及方法 | |
CN106133739A (zh) | 数据到安全元件的非易失性存储器中的加载的安全保护 | |
CN105975850A (zh) | 一种基于移动终端的软件下载方法及系统 | |
CN107273150B (zh) | 预加载固件下载写入方法及装置 | |
US8339240B2 (en) | Semiconductor element, biometric authentication method, biometric authentication system and mobile terminal | |
CN109150834A (zh) | 一种嵌入式设备license授权管理方法 | |
CN105574376A (zh) | 一种屏幕解锁装置、系统及方法 | |
CN108768941B (zh) | 一种远程解锁安全设备的方法及装置 | |
US20170124339A1 (en) | Implementing method for javacard application function expansion | |
US9210134B2 (en) | Cryptographic processing method and system using a sensitive data item | |
CN107688756B (zh) | 硬盘控制方法、设备及可读存储介质 | |
CN106559223A (zh) | 应用程序签名方法及装置 | |
US9977907B2 (en) | Encryption processing method and device for application, and terminal | |
CN111093190B (zh) | 写入关键数据的方法、装置、系统、电子设备及存储介质 | |
JP4447470B2 (ja) | セキュリティ・エレメントのクローン作成を防ぐための方法および装置 | |
JP2009032003A (ja) | 携帯可能電子装置、端末装置、認証システム、及び認証方法 | |
CN108270767B (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 |