本发明专利技术提供一种支持数据安全传输的CPU芯片仿真器及数据安全传输方法,属于芯片仿真领域。所述芯片仿真器包括仿真器软件和仿真器硬件,仿真器软件与仿真器硬件之间通过调试通道进行数据交互,还包括:传输管理模块和传输控制模块;所述传输管理模块配置于仿真器软件中,用于对所述仿真器软件向所述仿真器硬件传送的数据进行加密或对接收到的数据进行解密;所述传输控制模块配置于仿真器硬件中,用于对所述仿真器硬件向所述仿真器软件传送的数据进行加密或对接收到的数据进行解密。本发明专利技术通过传输管理模块和传输控制模块对仿真器软件与仿真器硬件之间交互的数据进行安全传输,实现仿真器软件到仿真器硬件的调试通道上的数据保护。
【技术实现步骤摘要】
支持数据安全传输的CPU芯片仿真器及数据安全传输方法
本专利技术涉及芯片仿真领域,具体地涉及一种支持数据安全传输的CPU芯片仿真器以及一种数据安全传输方法。
技术介绍
基于CPU芯片执行的软件程序,其开发、调试一般使用仿真器。仿真器是通过对CPU芯片功能的仿真实现软件程序调试、运行的一套装置,此处CPU芯片为包含CPU(CentralProcessingUnit,中央处理单元)并且可以执行嵌入式程序的芯片。仿真器主要包括仿真器硬件和仿真器软件两部分。硬件部分主要包括采用FPGA(FieldProgrammableGateArray,现场可编程门阵列)实现的仿真芯片;软件部分主要包括可以进行程序编译、调试的嵌入式软件集成开发环境。使用仿真器进行软件程序调试、开发,一般先要使用嵌入式软件集成开发环境将软件程序编译后,通过调试通道执行下载操作将编译后的软件程序下载到仿真器硬件,然后通过调试命令执行程序的调试操作。CPU芯片作为安全芯片广泛应用在电力、金融、通信等领域,为降低系统开发厂家的开发门槛,CPU芯片厂家一般会提供安全算法软件库和仿真器。安全算法软件库主要包括用于安全认证、数据保护等算法模块,并由系统软件进行调用。从知识产权保护方面考虑,一般不会直接将安全算法软件库的源程序及编译后的库文件提供给系统开发厂家。在芯片生产阶段,通过将安全算法软件库的二进制数据掩膜到芯片的安全区中可以有效防止泄露;但在系统软件开发阶段,使用仿真器进行调试时,由于仿真器具有程序下载和代码查看功能,如何在仿真器上有效的保护安全算法软件库,成为CPU芯片厂家在仿真器设计时需要重点考虑的问题。目前的仿真器,通常是由CPU芯片厂家将安全算法软件库的源程序编译为库文件,然后对库文件进行加密,以密文库形式存在。使用仿真器执行程序下载时,首先通过仿真器软件将密文库进行解密,获取明文的程序数据及地址信息,将程序数据下载到仿真器硬件对应的地址,然后通过寄存器配置将该区域的访问权限配置为不可读。这样在下载阶段用户无法直接接触明文程序数据,在调试阶段无法读取程序数据,完成对安全算法软件库的保护。现有仿真器设计中,虽然考虑到程序下载阶段和调试阶段对程序的保护,但忽略了由仿真器软件到仿真器硬件的调试通道上的数据保护,而是直接利用调试通道上的传输协议,导致存在安全问题。常用的调试通道主要基于USB接口的传输机制,而借助USB协议分析工具可以轻易的捕获传输的数据,通过对数据进行一定的解析,可以获取到程序下载和寄存器配置操作等明文数据,甚至可以通过对寄存器配置的数据进行分析后,伪造寄存器配置数据,导致仿真器硬件被攻击。
技术实现思路
本专利技术的目的是提供一种支持数据安全传输的CPU芯片仿真器,以实现仿真器软件到仿真器硬件的调试通道上的数据保护。为了实现上述目的,本专利技术一方面提供一种支持数据安全传输的CPU芯片仿真器,包括仿真器软件和仿真器硬件,所述仿真器软件与所述仿真器硬件之间通过调试通道进行数据交互,还包括:传输管理模块和传输控制模块;所述传输管理模块配置于所述仿真器软件中,用于对所述仿真器软件向所述仿真器硬件传送的数据进行加密或对接收到的数据进行解密;所述传输控制模块配置于所述仿真器硬件中,用于对所述仿真器硬件向所述仿真器软件传送的数据进行加密或对接收到的数据进行解密。进一步地,所述仿真器硬件包括芯片仿真模块,所述芯片仿真模块包括随机数生成单元;所述芯片仿真模块用于将所述随机数生成单元生成的随机数发送至所述传输控制模块。进一步地,所述仿真器硬件还包括密钥存储模块,所述密钥存储模块用于存储所述传输控制模块进行数据加密或解密操作所需的密钥数据。进一步地,所述传输控制模块中存储预置密钥,所述预置密钥参与所述传输控制模块中数据的加密或解密操作。进一步地,所述仿真器软件包括数据生成模块,所述数据生成模块用于将需调试的数据解析并转换为可通过所述调试通道进行传输的数据包,以及将所述数据包传送至所述传输管理模块。本专利技术另一方面提供一种数据安全传输方法,基于上述的支持数据安全传输的CPU芯片仿真器,所述方法包括:在启动调试时,仿真器软件通过传输管理模块向仿真器硬件的传输控制模块发送获取随机数请求;所述仿真器硬件根据接收到的所述获取随机数请求生成随机数,通过所述传输控制模块将所述随机数返回至所述传输管理模块;所述传输管理模块采用预置密钥对所述随机数进行加密生成传输密钥,利用所述传输密钥对需发送至所述传输控制模块的数据进行加密,将加密后的数据发送至所述传输控制模块;所述传输控制模块采用预置密钥对所述随机数进行加密生成传输密钥,利用所述传输密钥解密所述传输管理模块发送的加密数据。进一步地,所述方法还包括:所述传输控制模块利用所述传输密钥对需返回至所述传输管理模块的数据进行加密;所述传输管理模块利用所述传输密钥解密所述传输控制模块返回的加密数据。进一步地,所述仿真器软件通过传输管理模块向仿真器硬件的传输控制模块发送获取随机数请求,包括:在发送所述获取随机数请求时,所述传输管理模块利用预置密钥对所述获取随机数请求的数据包进行加密。进一步地,所述仿真器硬件根据接收到的所述获取随机数请求生成随机数,通过所述传输控制模块将所述随机数返回至所述传输管理模块,包括:所述仿真器硬件通过芯片仿真模块中的随机数生成单元生成随机数,将所述随机数传送至所述传输控制模块;所述传输控制模块存储所述随机数,并采用预置密钥对所述随机数进行加密后返回至所述传输管理模块。进一步地,所述方法还包括:再次启动调试时,所述传输管理模块向所述传输控制模块重新发送获取随机数请求;所述传输管理模块根据所述传输控制模块返回的随机数重新生成传输密钥。本专利技术提供的支持数据安全传输的CPU芯片仿真器,通过传输管理模块和传输控制模块对仿真器软件与仿真器硬件之间交互的数据进行安全传输保护,采用双向加密方式进行传输,数据传输更安全,实现了仿真器软件到仿真器硬件的调试通道上的数据保护。本专利技术提供的数据安全传输方法可以对调试通道上的所有数据进行保护,不仅限于安全算法软件库的下载,寄存器配置等调试操作都可以进行保护。本专利技术实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。附图说明附图是用来提供对本专利技术实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本专利技术实施方式,但并不构成对本专利技术实施方式的限制。在附图中:图1是本专利技术一种实施方式提供的支持数据安全传输的CPU芯片仿真器的结构框图;图2是本专利技术另一种实施方式提供的支持数据安全传输的CPU芯片仿真器的结构框图;图3是本专利技术一种实施方式提供的数据安全传输方法的流程图。具体实施方式以下结合附图对本专利技术的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本专利技术,并不用于限本文档来自技高网...
【技术保护点】
1.一种支持数据安全传输的CPU芯片仿真器,包括仿真器软件和仿真器硬件,所述仿真器软件与所述仿真器硬件之间通过调试通道进行数据交互,其特征在于,还包括:传输管理模块和传输控制模块;/n所述传输管理模块配置于所述仿真器软件中,用于对所述仿真器软件向所述仿真器硬件传送的数据进行加密或对接收到的数据进行解密;/n所述传输控制模块配置于所述仿真器硬件中,用于对所述仿真器硬件向所述仿真器软件传送的数据进行加密或对接收到的数据进行解密。/n
【技术特征摘要】
1.一种支持数据安全传输的CPU芯片仿真器,包括仿真器软件和仿真器硬件,所述仿真器软件与所述仿真器硬件之间通过调试通道进行数据交互,其特征在于,还包括:传输管理模块和传输控制模块;
所述传输管理模块配置于所述仿真器软件中,用于对所述仿真器软件向所述仿真器硬件传送的数据进行加密或对接收到的数据进行解密;
所述传输控制模块配置于所述仿真器硬件中,用于对所述仿真器硬件向所述仿真器软件传送的数据进行加密或对接收到的数据进行解密。
2.根据权利要求1所述的支持数据安全传输的CPU芯片仿真器,其特征在于,所述仿真器硬件包括芯片仿真模块,所述芯片仿真模块包括随机数生成单元;
所述芯片仿真模块用于将所述随机数生成单元生成的随机数发送至所述传输控制模块。
3.根据权利要求1所述的支持数据安全传输的CPU芯片仿真器,其特征在于,所述仿真器硬件还包括密钥存储模块,所述密钥存储模块用于存储所述传输控制模块进行数据加密或解密操作所需的密钥数据。
4.根据权利要求1所述的支持数据安全传输的CPU芯片仿真器,其特征在于,所述传输控制模块中存储预置密钥,所述预置密钥参与所述传输控制模块中数据的加密或解密操作。
5.根据权利要求1所述的支持数据安全传输的CPU芯片仿真器,其特征在于,所述仿真器软件包括数据生成模块,所述数据生成模块用于将需调试的数据解析并转换为可通过所述调试通道进行传输的数据包,以及将所述数据包传送至所述传输管理模块。
6.一种数据安全传输方法,基于权利要求1所述的支持数据安全传输的CPU芯片仿真器,其特征在于,所述方法包括:
在启动调试时,仿真器软件通过传输管理模块向仿真器硬件的传输控制模块发送获取随机数请求;
所...
【专利技术属性】
技术研发人员:刘俊,种挺,张茜歌,刘亮,原义栋,张海峰,
申请(专利权)人:北京智芯微电子科技有限公司,国网信息通信产业集团有限公司,国网宁夏电力有限公司营销服务中心国网宁夏电力有限公司计量中心,国家电网有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。