芯片结构及其操作方法技术

技术编号:29460055 阅读:13 留言:0更新日期:2021-07-27 17:29
本发明专利技术提供了一种芯片结构及其操作方法,包括:至少一个总线主设备发起读命令和/或写命令,将读命令和/或写命令提供至总线,接收写数据和/或读数据;至少一个总线将读命令和/或写命令传输至总线从设备,将写数据和/或读数据传输至总线主设备;至少一个总线从设备接收读命令和/或写命令,根据读命令和/或写命令生成写数据和/或读数据,将写数据和/或读数据提供至总线;至少一个第一加解密模块连接在任何一个总线主设备与任何一个总线之间,将总线主设备与总线之间传输的命令和数据进行加密和/或解密;至少一个第二加解密模块连接在任何一个总线从设备与任何一个总线之间,将总线从设备与总线之间传输的命令和数据进行加密和/或解密。

【技术实现步骤摘要】
芯片结构及其操作方法
本专利技术涉及集成电路
,特别涉及一种芯片结构及其操作方法。
技术介绍
近年来,随着云计算、物联网、移动计算等技术的发展和应用领域的不断扩展,现代信息技术在社会生活中的引领作用越来越突出。与此同时,针对安全芯片的物理攻击越来越受到关注和研究,安全芯片中往往存有敏感数据,例如密钥、用户隐私相关的信息,针对安全芯片的物理攻击手段也越来越丰富,通过各种手段来获取这些敏感信息。物理攻击首先会去掉芯片封装,然后通过物理或者化学的方式对芯片进行逐层剥离。对于所有类型的存储器,攻击者可以通过探针探测总线的方式来获取数据。现有技术中还未对这一攻击方式进行防护。中国专利技术专利CN105743652B公开了一种基于地址异或的数据总线加密方法,对于总线加密密钥的每一个比特位,都与存储器地址总线的某一比特位或者多位比特位进行异或操作,得到异或后的总线加密密钥。将与地址异或后的总线加密密钥与存储器明文数据进行异或来得到密文数据。中国专利技术专利申请CN111008391A提供了一种flash加密解密接口电路及方法,对于支持加解密的接口电路,flash写操作中,先对数据加密,将加密结果写入flash;flash读操作中,将读出数据解密后送出;当读flash中未写区域时,仍会将flash默认值读出并解密后送出,从而导致无法读出正确的默认值,同时默认值被解密为其他值也会引起未知错误。但以上两个专利文件仅对存储器的数据进行了加密,无法避免对总线的攻击。中国专利技术专利申请CN109495449A提供一种车辆CAN总线加密方法,该方法首先对T-box进行IMMO认证,IMMO认证通过的条件下T-box通过总线CAN向网关发送报文,Tbox所发送的报文需经过T-box的HSM和网关的HSM进行硬件上的加密和解密,T-box设有一报文计数器对发送的报文进行计数,网关对报文计数器进行侦测,符合设定规则才判断报文合法,报文合法的条件下将报文解密并发送至车辆其余CAN分线。中国专利技术专利申请CN111884993A提供一种应用加密算法对数据进行加密的CAN总线加密方法,对原始数据进行SM3算法运算生成杂凑值,然后在杂凑值中抽取若干位数据与原始数据结合成128位的组合数据,然后对所述组合数据进行SM4算法运算进行加密;最后在FPGA平台上实现SM3和SM4算法进行解密,利用AXI总线完成软硬件之间的数据交互。但以上两个专利文件仅提出了对CAN总线做加密的方法;而CAN总线是用在汽车电子领域的芯片外的系统总线,而非芯片内总线。
技术实现思路
本专利技术的目的在于提供一种芯片结构及其操作方法,以解决现有的安全芯片未防备探针探测总线导致数据泄漏的问题。为解决上述技术问题,本专利技术提供一种芯片结构,包括:至少一个总线主设备,被配置为执行下列动作:发起读命令和/或写命令;将读命令和/或写命令提供至总线;以及接收写数据和/或读数据;至少一个总线,被配置为执行下列动作:将读命令和/或写命令传输至总线从设备;以及将写数据和/或读数据传输至总线主设备;至少一个总线从设备,被配置为执行下列动作:接收读命令和/或写命令;根据读命令和/或写命令生成写数据和/或读数据;以及将写数据和/或读数据提供至总线;至少一个第一加解密模块,被配置为连接在任何一个总线主设备与任何一个总线之间,所述第一加解密模块被配置为将在总线主设备与总线之间传输的命令和数据进行加密和/或解密;以及至少一个第二加解密模块,被配置为连接在任何一个总线从设备与任何一个总线之间,所述第二加解密模块被配置为将在总线从设备与总线之间传输的命令和数据进行加密和/或解密。可选的,在所述的芯片结构中,所述第一加解密模块包括:写数据加密模块,被配置为将总线主设备发送至总线的写命令进行加密;读数据解密模块,被配置为将总线发送至总线从设备的读数据进行解密。可选的,在所述的芯片结构中,所述第二加解密模块包括:读数据加密模块,被配置为将总线主设备发送至总线的读数据进行加密;写数据解密模块,被配置为将总线发送至总线从设备的写命令进行解密。可选的,在所述的芯片结构中,所述第一加解密模块和第二加解密模块均包括4个Feistel分组密码加密电路,其中:32位的明文分组输入第一个Feistel分组密码电路,低16位数据与第一数据密钥经过F函数运算后,与高16位数据进行异或运算,作为第二个Feistel分组密码电路的低16位数据输入,第二个Feistel分组密码电路的高16位数据输入与第一个Feistel分组密码电路的低16位数据输入相同;以此类推直至第四个Feistel分组密码电路输出32位数据,低16位数据与高16位数据交换后输出32位的密文分组。可选的,在所述的芯片结构中,所述第一加解密模块和第二加解密模块均包括4个Feistel分组密码解密电路,其中:32位的密文分组输入第一个Feistel分组密码电路,低16位数据与第二数据密钥经过F函数运算后,与高16位数据进行异或运算,作为第二个Feistel分组密码电路的低16位数据输入,第二个Feistel分组密码电路的高16位数据输入与第一个Feistel分组密码电路的低16位数据输入相同;以此类推直至第四个Feistel分组密码电路输出32位数据,低16位数据与高16位数据交换后输出32位的明文分组;第二数据密钥与第一数据密钥的数据顺序相反。可选的,在所述的芯片结构中,所述第一加解密模块还包括第一地址加扰模块,其被配置为将总线主设备发送至总线的地址进行加密;所述第二加解密模块还包括第二地址加扰模块,其被配置为将总线发送至总线从设备的地址进行解密。可选的,在所述的芯片结构中,所述第一地址加扰模块和第二地址加扰模块均包括:地址加扰产生器,被配置为产生地址加扰数据;以及异或门逻辑电路,被配置为将地址与地址加扰数据进行异或运算,以得到地址加密数据,以及将地址加密数据与地址加扰数据进行异或运算,以得到地址。可选的,在所述的芯片结构中,所述地址加扰产生器为真随机数发生器或者伪随机数发生器。可选的,在所述的芯片结构中,所述总线主设备包括:CPU,被配置为对总线从设备进行控制调配及发起数据传输、以及对DMA进行配置;以及DMA,被配置为对总线从设备发起数据传输。可选的,在所述的芯片结构中,所述总线从设备包括:系统控制模块,被配置为管理系统时钟、系统复位和低功耗模式;安全模块,被配置为利用密钥信息进行高速加密;存储设备,其包括eFlash、ROM、SRAM;以及低速设备,其包括定时器、看门狗、I2C、UART和SPI。可选的,在所述的芯片结构中,所述总线包括:AHB总线,被配置为连接AHB-AHB总线桥、AHB-APB总线桥、本文档来自技高网
...

【技术保护点】
1.一种芯片结构,其特征在于,包括:/n至少一个总线主设备,被配置为执行下列动作:/n发起读命令和/或写命令;/n将读命令和/或写命令提供至总线;以及/n接收写数据和/或读数据;/n至少一个总线,被配置为执行下列动作:/n将读命令和/或写命令传输至总线从设备;以及/n将写数据和/或读数据传输至总线主设备;/n至少一个总线从设备,被配置为执行下列动作:/n接收读命令和/或写命令;/n根据读命令和/或写命令生成写数据和/或读数据;以及/n将写数据和/或读数据提供至总线;/n至少一个第一加解密模块,被配置为连接在任何一个总线主设备与任何一个总线之间,所述第一加解密模块被配置为将在总线主设备与总线之间传输的命令和数据进行加密和/或解密;以及/n至少一个第二加解密模块,被配置为连接在任何一个总线从设备与任何一个总线之间,所述第二加解密模块被配置为将在总线从设备与总线之间传输的命令和数据进行加密和/或解密。/n

【技术特征摘要】
1.一种芯片结构,其特征在于,包括:
至少一个总线主设备,被配置为执行下列动作:
发起读命令和/或写命令;
将读命令和/或写命令提供至总线;以及
接收写数据和/或读数据;
至少一个总线,被配置为执行下列动作:
将读命令和/或写命令传输至总线从设备;以及
将写数据和/或读数据传输至总线主设备;
至少一个总线从设备,被配置为执行下列动作:
接收读命令和/或写命令;
根据读命令和/或写命令生成写数据和/或读数据;以及
将写数据和/或读数据提供至总线;
至少一个第一加解密模块,被配置为连接在任何一个总线主设备与任何一个总线之间,所述第一加解密模块被配置为将在总线主设备与总线之间传输的命令和数据进行加密和/或解密;以及
至少一个第二加解密模块,被配置为连接在任何一个总线从设备与任何一个总线之间,所述第二加解密模块被配置为将在总线从设备与总线之间传输的命令和数据进行加密和/或解密。


2.如权利要求1所述的芯片结构,其特征在于,所述第一加解密模块包括:
写数据加密模块,被配置为将总线主设备发送至总线的写命令进行加密;
读数据解密模块,被配置为将总线发送至总线从设备的读数据进行解密。


3.如权利要求1所述的芯片结构,其特征在于,所述第二加解密模块包括:
读数据加密模块,被配置为将总线主设备发送至总线的读数据进行加密;
写数据解密模块,被配置为将总线发送至总线从设备的写命令进行解密。


4.如权利要求1所述的芯片结构,其特征在于,所述第一加解密模块和第二加解密模块均包括4个Feistel分组密码加密电路,其中:
32位的明文分组输入第一个Feistel分组密码电路,低16位数据与第一数据密钥经过F函数运算后,与高16位数据进行异或运算,作为第二个Feistel分组密码电路的低16位数据输入,第二个Feistel分组密码电路的高16位数据输入与第一个Feistel分组密码电路的低16位数据输入相同;
以此类推直至第四个Feistel分组密码电路输出32位数据,低16位数据与高16位数据交换后输出32位的密文分组。


5.如权利要求1所述的芯片结构,其特征在于,所述第一加解密模块和第二加解密模块均包括4个Feistel分组密码解密电路,其中:
32位的密文分组输入第一个Feistel分组密码电路,低16位数据与第二数据密钥经过F函数运算后,与高16位数据进行异或运算,作为第二个Feistel分组密码电路的低16位数据输入,第二个Feistel分组密码电路的高16位数据输入与第一个Feistel分组密码电路的低16位数据输入相同;
以此类推直至第四个Feistel分组密码电路输出32位数据,低16位数据与高16位数据交换后输出32位的明文分组;
第二数据密钥与第一数据密钥的数据顺序相反。

【专利技术属性】
技术研发人员:江国范孙向向
申请(专利权)人:青芯半导体科技上海有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1