CN111814212A - 总线数据的保护方法、装置、存储介质及芯片 - Google Patents

总线数据的保护方法、装置、存储介质及芯片 Download PDF

Info

Publication number
CN111814212A
CN111814212A CN202010928069.6A CN202010928069A CN111814212A CN 111814212 A CN111814212 A CN 111814212A CN 202010928069 A CN202010928069 A CN 202010928069A CN 111814212 A CN111814212 A CN 111814212A
Authority
CN
China
Prior art keywords
random number
module
bus
number generator
data
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.)
Granted
Application number
CN202010928069.6A
Other languages
English (en)
Other versions
CN111814212B (zh
Inventor
朱华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Semidrive Technology Co Ltd
Original Assignee
Nanjing Semidrive Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Semidrive Technology Co Ltd filed Critical Nanjing Semidrive Technology Co Ltd
Priority to CN202010928069.6A priority Critical patent/CN111814212B/zh
Publication of CN111814212A publication Critical patent/CN111814212A/zh
Application granted granted Critical
Publication of CN111814212B publication Critical patent/CN111814212B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种总线数据的保护方法、装置、存储介质及芯片,属于芯片安全技术领域。所述方法包括:在第一模块为主模块、第二模块为从模块、第一模块向第二模块进行写操作时,或,在第一模块为从模块、第二模块为主模块、第二模块向第一模块进行读操作时,第一模块将敏感数据发送给总线加密模块;总线加密模块获取第一随机数,将根据第一随机数对敏感数据加密得到的加密数据发送给总线;总线将加密数据发送给总线解密模块;总线解密模块获取第二随机数,将根据第二随机数对加密数据进行解密得到的敏感数据发送给第二模块,第二随机数与第一随机数相同。本申请实施例可以保证随机数一致,提高数据传输的安全性和准确性,减少总线位宽的开销。

Description

总线数据的保护方法、装置、存储介质及芯片
技术领域
本申请实施例涉及芯片安全领域,特别涉及一种总线数据的保护方法、装置、存储介质及芯片。
背景技术
芯片作为***的核心部件,在计算机、消费电子、网络通信、汽车电子等重大领域具有举足轻重的作用。为了提高芯片中敏感数据的安全性,芯片中的敏感数据从产生(一端)到使用/消费(一端)的整个过程都需要进行加密保护,目前比较通用的加密保护技术是总线加密技术。
目前的芯片中大多采用总线连接主模块和从模块,从而实现了主从模块的数据互联。在很多芯片中,总线是遍布在芯片内的拓扑结构,可以在物理上存在于芯片的各个部分,目前可以针对总线的薄弱点,采用物理攻击手段监听内部信号的状态,很可能可以找到监听的点,直接窃取敏感数据。现有技术中可以对敏感数据增加随机数,对随机数与敏感数据进行掩码传输。
上述总线加密技术需要同时传输敏感数据和随机数,而黑客可以同时监控掩码后敏感数据和掩码随机数,再通过简单的运算解出敏感数据,从而导致敏感数据的泄露。另外,在总线上传输掩码后敏感数据和掩码随机数会增加总线位宽的开销。
发明内容
本申请实施例提供了一种总线数据的保护方法、装置、存储介质及芯片,用于解决在总线上同时传输掩码后敏感数据和掩码随机数时,安全性不高且增加总线位宽的开销的问题。所述技术方案如下:
一方面,提供了一种总线数据的保护方法,所述方法包括:
在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,所述第一模块将所述敏感数据发送给总线加密模块;
所述总线加密模块接收所述敏感数据,并获取所述第一模块对应的第一随机数发生器中的第一随机数,根据所述第一随机数对所述敏感数据进行加密,将得到的加密数据发送给总线;
所述总线将所述加密数据发送给总线解密模块;
所述总线解密模块接收所述加密数据,获取所述第二模块对应的第二随机数发生器中的第二随机数,根据所述第二随机数对所述加密数据进行解密,将得到的所述敏感数据发送给所述第二模块,所述第二随机数与所述第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数;
所述第二模块接收所述敏感数据。
在一种可能的实现方式中,所述方法还包括:
在每完成一笔数据传输后,主模块向随机数一致性总线发送随机数更新请求,所述主模块是所述第一模块和所述第二模块中发起数据传输的模块;
所述随机数一致性总线控制每个第一随机数发生器对各自的第一随机数进行一次更新,并控制每个第二随机数发生器对各自的第二随机数进行一次更新;
其中,每个第一随机数发生器对应于一个第一模块,每个第二随机数发生器对应于一个第二模块,且更新后的第一随机数与更新后的第二随机数相同。
在一种可能的实现方式中,
所述控制每个第一随机数发生器对各自的第一随机数进行一次更新,包括:对于处于第一状态的每个第一随机数发生器,所述第一随机数发生器对自身的第一随机数进行一次更新;对于处于第二状态的每个第一随机数发生器,所述第一随机数发生器记录自身的第一随机数的待更新次数k,在所述第一随机数发生器对应的第一模块完成数据传输后,对自身的第一随机数进行k次更新,并将自身的状态设置为所述第一状态,所述第二状态是所述第一随机数发生器对应的第一模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,所述k为正整数;
所述控制每个第二随机数发生器对各自的第二随机数进行一次更新,包括:对于处于第一状态的每个第二随机数发生器,所述第二随机数发生器对自身的第二随机数进行一次更新;对于处于第二状态的每个第二随机数发生器,所述第二随机数发生器记录自身的第二随机数的待更新次数n,在所述第二随机数发生器对应的第二模块完成数据传输后,对自身的第二随机数进行n次更新,并将自身的状态设置为所述第一状态,所述第二状态是所述第二 随机数发生器对应的第二模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,所述n为正整数。
在一种可能的实现方式中,所述方法还包括:
当所述总线处于空闲状态时,真随机源向所有的第一随机数发生器和所有的第二随机数发生器广播真随机数;
每个第一随机数发生器根据所述真随机数生成初始的第一随机数;
每个第二随机数发生器根据所述真随机数生成初始的第二随机数;
其中,初始的第一随机数和初始的第二随机数相同。
在一种可能的实现方式中,其特征在于,
所述根据所述第一随机数对所述敏感数据进行加密,包括:所述总线加密模块获取所述敏感数据对应的加密算法,根据所述第一随机数和所述加密算法对所述敏感数据进行加密;
所述根据所述第二随机数对所述加密数据进行解密,包括:所述总线解密模块获取所述加密数据对应的解密算法,根据所述第二随机数和所述解密算法对所述加密数据进行解密,所述解密算法与所述加密算法对应。
在一种可能的实现方式中,
所述总线加密模块获取所述敏感数据对应的加密算法,包括:所述总线加密模块获取从模块的地址信息,在第一对应关系中查找与所述地址信息对应的加密算法,所述第一对应关系中存储有不同的地址信息与不同的加密算法之间的映射;
所述总线解密模块获取所述加密数据对应的解密算法,包括:所述总线解密模块获取所述从模块的地址信息,在第二对应关系中查找与所述地址信息对应的解密算法,所述第二对应关系中存储有不同的地址信息与不同的解密算法之间的映射;
其中,所述从模块是所述第一模块和所述第二模块中用于进行数据存储或数据运算的模块。
在一种可能的实现方式中,
所述总线加密模块获取所述敏感数据对应的加密算法,包括:所述总线加密模块获取总线发送的控制信号,在第三对应关系中查找与所述控制信号对应的加密算法,所述第三对应关系中存储有不同的控制信号与不同的加密算法之间的映射;
所述总线解密模块获取所述加密数据对应的解密算法,包括:所述总线解密模块获取总线发送的所述控制信号,在第四对应关系中查找与所述控制信号对应的解密算法,所述第四对应关系中存储有不同的控制信号与不同的解密算法之间的映射。
一方面,提供了一种总线数据的保护装置,所述装置包括:
发送模块,用于在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,通过所述第一模块将所述敏感数据发送给总线加密模块;
加密模块,用于通过所述总线加密模块接收所述敏感数据,并获取所述第一模块对应的第一随机数发生器中的第一随机数,根据所述第一随机数对所述敏感数据进行加密,将得到的加密数据发送给总线;
传输模块,用于通过所述总线将所述加密数据发送给总线解密模块;
解密模块,用于通过所述总线解密模块接收所述加密数据,获取所述第二模块对应的第二随机数发生器中的第二随机数,根据所述第二随机数对所述加密数据进行解密,将得到的所述敏感数据发送给所述第二模块,所述第二随机数与所述第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数;
接收模块,用于通过所述第二模块接收所述敏感数据。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上所述的总线数据的保护方法。
一方面,提供了一种芯片,所述芯片包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的总线数据的保护方法。
本申请实施例提供的技术方案的有益效果至少包括:
在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,先通过第一模块将敏感数据发送给总线加密模块,再通过总线加密模块接收敏感数据,并获取第一模块对应的第一随机数发生器中的第一随机数,根据第一随机数对敏感数据进行加密,将得到的加密数据发送给总线,由总线将加密数据发送给总线解密模块,最后通过总线解密模块接收加密数据,获取第二模块对应的第二随机数发生器中的第二随机数,由于第二随机数与第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数,所以,总线解密模块能够根据第二随机数对加密数据进行解密,将得到的敏感数据发送给第二模块,从而完成一笔数据传输。本实施例中只需要在总线中传输加密数据,而无需传输第一随机数,这样,即使黑客能够监控到加密数据,也会因为无法获取到第二随机数而无法对该加密数据进行解密,从而提高了数据传输的安全性。另外,无需在总线上传输第一随机数还会减少总线位宽的开销。
由于第一随机数发生器和第二随机数发生器的结构相同,且第一随机数发生器和第二随机数发生器接收到的随机种子相同,第一随机数发生器和第二随机数发生器同步根据随机种子进行更新,所以,第一随机数发生器每次自运算更新后得到的第一随机数和第二随机数发生器每次自运算更新后得到的第二随机数是相同的,从而可以保证敏感数据能够被正确加解密。另外,在每完成一笔数据传输后,都需要更新所有第一随机数发生器中的第一随机数和所有第二随机数发生器中的第二随机数,并保持所有第一随机数和第二随机数相同。即,不同次数据传输所采用的第一随机数和第二随机数不同,而同一次数据传输所采用的第一随机数和第二随机数相同。
随机数发生器采用真随机源提供真随机熵源与伪随机发生单元混合随机数发生形式,真随机源随机的不断广播发送真随机数给伪随机数发生器作为随机种子,随机数发生器接收到真随机源种子加入到伪随机数发生单元,生成一笔新的随机数。每次发生一笔数据传输后,随机数发生器进行一次伪随机发生单元更新。由于主模块和从模块对应的随机数发生器的输入和更新都是一致的,随机数的数值能够保证一致性,从而保证了随机数的不可预测性,提高了数据传输的安全性。
当同一时刻允许多个第一模块向多个第二模块发送敏感数据时,仍然可以采用上述随机数的更新方式来更新随机数,使得每笔数据加解密采用的随机数都不相同,从而保证了数据传输的安全性;且同一笔数据加解密所采用的第一随机数和第二随机数相同,从而保证了能够被正确加解密。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的总线数据的保护方法的方法流程图;
图2是根据部分示例性实施例示出的一种在同一时刻允许一个模块传输数据的芯片的结构示意图;
图3是根据部分示例性实施例示出的一种在同一时刻允许多个模块传输数据的芯片的结构示意图;
图4是根据部分示例性实施例示出的一种芯片实例的结构示意图;
图5是本申请一个实施例提供的原始数据、随机数状态和总线加密结果的示意图;
图6是本申请再一实施例提供的总线数据的保护装置的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
请参考图1,其示出了本申请一个实施例提供的总线数据的保护方法的方法流程图,该总线数据的保护方法可以应用于芯片中。该总线数据的保护方法,可以包括:
步骤101,在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,第一模块将敏感数据发送给总线加密模块。
本实施例中用于进行数据传输的模块包括主模块和从模块。其中,主模块是用于发起数据传输的模块,例如,主模块可以是CPU(Central Processing Unit,中央处理单元)、DMA(Direct Memory Access,直接存储器访问)等等。从模块是用于进行数据存储或数据运算的模块,或者,从模块可以是外设。例如,用于进行数据存储的从模块可以是ROM(Read-Only Memory,只读存储器)、SRAM(Static Random-Access Memory,静态随机存取存储器)等等;用于进行数据运算的从模块可以是运算Engine,外设可以是Peripheral等等。
若从模块用于进行数据存储,则一种应用场景是主模块向从模块写入敏感数据,此时第一模块是主模块,第二模块是从模块;另一种应用场景是主模块从从模块中读取敏感数据,此时第一模块是从模块,第二模块是主模块。
若从模块用于进行数据运算,则主模块需要向从模块写入敏感数据,此时第一模块是主模块,第二模块是从模块;在从模块得到运算结果后,主模块还需要从从模块中读取运算结果,此时第一模块是从模块,第二模块是主模块。
若从模块是外设,则一种应用场景是主模块向从模块发送数据,另一种应用场景是从模块向主模块发送数据。通常,主模块和从模块之间传输的数据不是敏感数据,所以,可以在总线上以明文传输数据,而无需传输加密数据。
无论第一模块是主模块还是从模块,只要第一模块需要向第二模块发送敏感数据,就会将敏感数据发送给总线加密模块。
步骤102,总线加密模块接收敏感数据,并获取第一模块对应的第一随机数发生器中的第一随机数,根据第一随机数对敏感数据进行加密,将得到的加密数据发送给总线。
本实施例中的芯片中可以包括多个第一模块和多个第二模块。当同一时刻只允许一个第一模块向一个第二模块发送敏感数据时,若第一模块为主模块,第二模块为从模块,则第一模块与总线之间设置有一个总线加密模块,第二模块与总线之间设置有一个总线解密模块;若第一模块为从模块,第二模块为主模块,则第一模块与总线之间设置有一个总线解密模块,第二模块与总线之间设置有一个总线加密模块。为了便于说明,本实施例中将第一模块与总线之间的一个总线加密模块和一个总线解密模块统称为一个总线加解密模块,将第二模块与总线之间的一个总线加密模块和一个总线解密模块统称为一个总线加解密模块,且每个总线加解密模块中都设置有一个随机数发生器,每个随机数发生器与一个真随机源连接,该真随机源中包括随机熵源,用于向随机数发生器广播真随机数作为随机种子。
请参考图2,图2中以芯片中包括两个主模块和四个从模块为例进行说明,两个主模块通过一个总线加解密模块与总线相连,三个从模块也通过一个总线加解密模块与总线相连,这样,这三个从模块与两个主模块可以在总线上传输加密数据。剩余一个从模块直接与总线连接,该从模块与两个主模块可以在总线上传输明文数据。需要说明的是,从模块中还可以设置加解密模块,本实施例不作限定。
当同一时刻允许多个第一模块向多个第二模块发送敏感数据时,即当一个第一模块向一个第二模块发送敏感数据时,另一个第一模块可以向另一个第二模块发送敏感数据,此时可以对每个第一模块分配一个总线加解密模块和一个随机数发生器,对每个第二模块分配一个总线加解密模块和一个随机数发生器,这样,每个第一模块通过对应的一个总线加解密模块与总线连接,通过对应的一个随机数发生器与随机数一致性总线连接;每个第二模块通过对应的一个总线加解密模块与总线连接,通过对应的一个随机数发生器与随机数一致性总线连接,随机数一致性总线与真随机源连接,该真随机源中包括随机熵源,用于通过随机数一致性总线向随机数发生器广播真随机数作为随机种子。
请参考图3,图3中以芯片中包括两个主模块和四个从模块为例进行说明,每个主模块对应于一个总线加解密模块和一个随机数发生器,且每个主模块通过对应的一个总线加解密模块与总线相连,通过对应的一个随机数发生器与随机数一致性总线相连。三个从模块中的每个从模块均对应一个总线加解密模块和一个随机数发生器,且每个从模块通过对应的一个总线加解密模块与总线相连,通过对应的一个随机数发生器与随机数一致性总线相连。这样,这三个从模块与两个主模块可以在总线上传输加密数据。剩余一个从模块直接与总线连接,该从模块与两个主模块可以在总线上传输明文数据。需要说明的是,从模块中还可以设置加解密模块,本实施例不作限定。
请参考图4,图4中的一个主模块为CPU,一个主模块为DMA,一个从模块为ROM、一个从模块为SRAM,一个从模块为运算Engine,一个从模块为外设(Peripheral),总线为AHB32bit总线。
本实施例中,总线加密模块在接收到敏感数据后,可以从第一随机数发生器中读取第一随机数,再根据第一随机数对该敏感数据进行加密,得到加密数据,最后将该加密数据发送给总线。这里所说的总线加密模块为第一模块对应的总线加解密模块中涉及加密功能的模块。其中,第一随机数可以是第一随机数发生器将接收到的真随机数作为随机种子进行更新得到的随机数。
其中,可以根据安全需求采取高安全加密,标准安全加密和不加密方式传输数据,即可以采用不同的加密算法对敏感数据进行加密,此时,根据第一随机数对敏感数据进行加密,包括:总线加密模块获取敏感数据对应的加密算法,根据第一随机数和加密算法对敏感数据进行加密。
在第一种加密方式中,总线加密模块获取敏感数据对应的加密算法,包括:总线加密模块获取从模块的地址信息,在第一对应关系中查找与地址信息对应的加密算法,第一对应关系中存储有不同的地址信息与不同的加密算法之间的映射。
在第二种加密方式中,总线加密模块获取敏感数据对应的加密算法,包括:总线加密模块获取总线发送的控制信号,在第三对应关系中查找与控制信号对应的加密算法,第三对应关系中存储有不同的控制信号与不同的加密算法之间的映射。
比如,AHB总线采用HUSER信号作为控制信号,AXI总线采用AxUSER信号作为控制信号。
可选的,主模块还可以将从模块的地址信息、主模块的ID等其他数据发送给总线加密模块,总线加密模块可以只对敏感数据加密,而不对其他数据加密,将加密数据和其他数据发送给总线。
步骤103,总线将加密数据发送给总线解密模块。
本实施例中,总线除了获取加密数据,还可以获取从模块的地址信息、主模块的ID等其他数据。上述其他数据可以是总线加密模块发送给总线的,也可以是主模块发送给总线的,本实施例不作限定。
总线根据该地址信息确定与该第二模块对应的总线解密模块,将该加密数据发送给该总线解密模块。这里所说的总线解密模块为第二模块对应的总线加解密模块中涉及解密功能的模块。
步骤104,总线解密模块接收加密数据,获取第二模块对应的第二随机数发生器中的第二随机数,根据第二随机数对加密数据进行解密,将得到的敏感数据发送给第二模块,第二随机数与第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数。
本实施例中,总线解密模块在接收到加密数据后,可以从第二随机数发生器中读取第二随机数,再根据第二随机数对该加密数据进行解密,得到敏感数据,最后将该敏感数据发送给第二模块。其中,第二随机数可以是第二随机数发生器将接收到的真随机数作为随机种子进行更新得到的随机数。其中,第二随机数与第一随机数基于同一真随机数进行更新,且第二随机数与第一随机数的更新次数相同,这样,就可以保证第二随机数与第一随机数相同。
其中,根据第二随机数对加密数据进行解密,可以包括:总线解密模块获取加密数据对应的解密算法,根据第二随机数和解密算法对加密数据进行解密,解密算法与加密算法对应。
对应于第一种加密方式,总线解密模块获取加密数据对应的解密算法,可以包括:总线解密模块获取从模块的地址信息,在第二对应关系中查找与地址信息对应的解密算法,第二对应关系中存储有不同的地址信息与不同的解密算法之间的映射。
对应于第二种解密方式,总线解密模块获取加密数据对应的解密算法,可以包括:总线解密模块获取总线发送的控制信号,在第四对应关系中查找与控制信号对应的解密算法,第四对应关系中存储有不同的控制信号与不同的解密算法之间的映射。
以图3为例,当主模块1或2向从模块1或2发送敏感数据时,敏感数据通过总线加解密模块中的算法A进行加密,加密数据在总线(Bus Matrix)传输,采用总线加解密模块中的算法 A对加密数据进行解密。当主模块1或2向从模块3发送敏感数据时,敏感数据通过总线加解密模块中的算法B进行加密,加密数据在总线传输,采用总线加解密模块中的算法 B对加密数据进行解密。当主模块1或2向从模块4发送数据时,不对数据进行加解密操作。
需要说明的是,第一随机数发生器和第二随机数发生器的结构相同,且第一随机数发生器和第二随机数发生器接收到的随机种子相同,第一随机数发生器和第二随机数发生器同步根据随机种子进行更新,所以,第一随机数发生器每次自运算更新后得到的第一随机数和第二随机数发生器每次自运算更新后得到的第二随机数是相同的,从而可以保证敏感数据能够被正确加解密。这样,只需要在总线上传输加密数据,而参与加密的第一随机数和参与解密的第二随机数不在总线上传递,降低了总线的传输开销和逻辑规模,也增加了总线的安全性。
步骤105,第二模块接收敏感数据。
本实施例中,在每完成一笔数据传输后,都需要更新所有第一随机数发生器中的第一随机数和所有第二随机数发生器中的第二随机数,并保持所有第一随机数和第二随机数相同。即,不同次数据传输所采用的第一随机数和第二随机数不同,而同一次数据传输所采用的第一随机数和第二随机数相同。
若同一时刻只允许一个第一模块向一个第二模块发送敏感数据,则在每完成一笔数据传输后,需要控制第一随机数发生器和第二随机数发生器进行随机数更新。若同一时刻允许多个第一模块向多个第二模块发送敏感数据,则可以通过随机数一致性总线来协调随机数更新,具体可以通过步骤106-107来进行随机数更新。
步骤106,在每完成一笔数据传输后,主模块向随机数一致性总线发送随机数更新请求,主模块是第一模块和第二模块中发起数据传输的模块。
当读操作或写操作为单笔传输操作时,一次数据传输只需要传输一笔数据。当读操作或写操作为突发(Burst)传输操作时,一次数据传输需要传输多笔数据。其中,突发传输操作广泛应用于芯片的总线数据传输中。
步骤107,随机数一致性总线控制每个第一随机数发生器对各自的第一随机数进行一次更新,并控制每个第二随机数发生器对各自的第二随机数进行一次更新。
其中,每个第一随机数发生器对应于一个第一模块,每个第二随机数发生器对应于一个第二模块,且更新后的第一随机数与更新后的第二随机数相同。
具体的,控制每个第一随机数发生器对各自的第一随机数进行一次更新,包括:对于处于第一状态的每个第一随机数发生器,第一随机数发生器对自身的第一随机数进行一次更新;对于处于第二状态的每个第一随机数发生器,第一随机数发生器记录自身的第一随机数的待更新次数k,在第一随机数发生器对应的第一模块完成数据传输后,对自身的第一随机数进行k次更新,并将自身的状态设置为第一状态,第二状态是第一随机数发生器对应的第一模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,k为正整数。控制每个第二随机数发生器对各自的第二随机数进行一次更新,可以包括:对于处于第一状态的每个第二随机数发生器,第二随机数发生器对自身的第二随机数进行一次更新;对于处于第二状态的每个第二随机数发生器,第二随机数发生器记录自身的第二随机数的待更新次数n,在第二随机数发生器对应的第二模块完成数据传输后,对自身的第二随机数进行n次更新,并将自身的状态设置为第一状态,第二状态是第二随机数发生器对应的第二模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,n为正整数。
当一个第一模块对一个第二模块的数据传输正在进行时,另一个第一模块对另一个第二模块的数据传输结束了,那么正在进行数据传输的第一模块对应的第一随机数发生器和第二模块对应的第二随机数发生器的状态都需要设置为脏(Dirty)(即第二状态),并需要记录需要更新多少次(即待更新次数n)才能追上其他随机数发生器中的随机数的更新,使得所有的随机数发生器中的随机数保持一致。当标记为脏的第一随机数发生器和第二随机数发生器对应的数据传输结束后,需要进行随机数更新,更新完成后将第一随机数发生器和第二随机数发生器的状态变为干净(Clean)(即第一状态)。
需要说明的是,当一个第一模块对应的第一随机数发生器的状态为脏时,该第一模块无法进行加密数据传输,直到第一随机数发生器的状态变为干净;当一个第二模块对应的第二随机数发生器的状态为脏时,该第二模块无法进行加密数据传输,直到第二随机数发生器状态变为干净。另外,当一个第一模块与一个第二模块正在进行数据传输时,另一个第一模块想要与该第二模块进行数据传输,则必须等到当前的数据传输结束且随机数更新完成后才能开始下一次的数据传输。
本实施例中,随机数一致性总线还可以获取各个主模块的传输状态,若存在至少一个主模块正在进行数据传输,则继续获取各个主模块的传输状态;若所有主模块都未进行数据传输,即总线处于空闲状态,则可以触发真随机数的更新。即,当总线处于空闲状态时,真随机源向所有的第一随机数发生器和所有的第二随机数发生器广播真随机数;每个第一随机数发生器根据真随机数生成初始的第一随机数;每个第二随机数发生器根据真随机数生成初始的第二随机数;其中,初始的第一随机数和初始的第二随机数相同。
本实施例中的随机数发生器采用真随机源提供真随机熵源与伪随机发生单元混合随机数发生形式,真随机源随机的不断广播发送真随机数给伪随机数发生器作为随机种子,随机数发生器接收到真随机源种子加入到伪随机数发生单元,生成一笔新的随机数。每次发生一笔数据传输后,随机数发生器进行一次伪随机发生单元更新。由于主模块和从模块对应的随机数发生器的输入和更新都是一致的,随机数的数值能够保证一致性。其中伪随机数单元可以采用现性反馈移位寄存器(Linear Feedback Shift Register,LFSR)的结构。
综上所述,本申请实施例提供的总线数据的保护方法,在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,先通过第一模块将敏感数据发送给总线加密模块,再通过总线加密模块接收敏感数据,并获取第一模块对应的第一随机数发生器中的第一随机数,根据第一随机数对敏感数据进行加密,将得到的加密数据发送给总线,由总线将加密数据发送给总线解密模块,最后通过总线解密模块接收加密数据,获取第二模块对应的第二随机数发生器中的第二随机数,由于第二随机数与第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数,所以,总线解密模块能够根据第二随机数对加密数据进行解密,将得到的敏感数据发送给第二模块,从而完成数据传输。本实施例中只需要在总线中传输加密数据,而无需传输第一随机数,这样,即使黑客能够监控到加密数据,也会因为无法获取到第二随机数而无法对该加密数据进行解密,从而提高了数据传输的安全性。另外,无需在总线上传输第一随机数还会减少总线位宽的开销。
由于第一随机数发生器和第二随机数发生器的结构相同,且第一随机数发生器和第二随机数发生器接收到的随机种子相同,第一随机数发生器和第二随机数发生器同步根据随机种子进行更新,所以,第一随机数发生器每次自运算更新后得到的第一随机数和第二随机数发生器每次自运算更新后得到的第二随机数是相同的,从而可以保证敏感数据能够被正确加解密。另外,在每完成一笔数据传输后,都需要更新所有第一随机数发生器中的第一随机数和所有第二随机数发生器中的第二随机数,并保持所有第一随机数和第二随机数相同。即,不同次数据传输所采用的第一随机数和第二随机数不同,而同一次数据传输所采用的第一随机数和第二随机数相同。
随机数发生器采用真随机源提供真随机熵源与伪随机发生单元混合随机数发生形式,真随机源随机的不断广播发送真随机数给伪随机数发生器作为随机种子,随机数发生器接收到真随机源种子加入到伪随机数发生单元,生成一笔新的随机数。每次发生一笔数据传输后,随机数发生器进行一次伪随机发生单元更新。由于主模块和从模块对应的随机数发生器的输入和更新都是一致的,随机数的数值能够保证一致性,从而保证了随机数的不可预测性,提高了数据传输的安全性。
由于既可以在同一时刻只允许一个第一模块向一个第二模块发送敏感数据,也可以在同一时刻允许多个第一模块向多个第二模块发送敏感数据,从而扩展了敏感数据的传输方式,也扩展了芯片的结构。
当同一时刻允许多个第一模块向多个第二模块发送敏感数据时,仍然可以采用上述随机数的更新方式来更新随机数,使得每笔数据加解密采用的随机数都不相同,从而保证了数据传输的安全性;且同一笔数据加解密所采用的第一随机数和第二随机数相同,从而保证了能够被正确加解密。
下面以一个实例对数据传输流程进行说明。
假设主模块分别为CPU和DMA,从模块分别为ROM、SRAM、运算Engine和外设,ROM和SRAM中包含加解密模块,Engine模块不包含加解密模块,外设不做数据加解密运算,总线加解密模块中的加解密算法的选择根据从模块的地址信息划分而定。
主从模块的随机数发生器采用LFSR结构,一个长度为m的LFSR结构具有的最大内部状态为2m,由于“0”状态是全封闭的,因此它的周期最大为2m−1。当抽头序列加1构成的多项式是本原多项式时,LFSR结构具有最大的周期为 2m−1。本例子生成多项式为:x31+ x3+x2+ x + 1,则反馈函数采用抽头30,3,2,1,0的bit进行异或后输出。
本实例中的加密算法采用敏感数据与随机数和地址分别进行异或后进行,基于异或的特性,解密运算与加密算法相同。
在芯片初始化的过程中,真随机源发送真随机数给各个主从模块对应的随机数发生器,使各个随机数发生器中的随机数保持一致的状态,这里假设初始的随机数为0xbae7eb8b。
1、假设CPU先启动一次与ROM的数据传输,该数据传输需要进行加密,传输完成后随机数发生器进行更新,随机数更新为0x75cfd717;
2、若CPU启动下一次与ROM的数据传输,同时,DMA启动了一次对SRAM的突发(Burst)数据传输(读操作)。在CPU对ROM的数据传输完成时,DMA对SRAM的数据传输还在进行中。
3、CPU启动一次对运算Engine的数据传输,这时DMA对SRAM的数据传输还在继续,由于数据传输没有延迟,所以,可以通过随机数一致性总线将随机数更新请求发送到所有随机数发生器中。
4、在总线处于空闲状态时,可以广播随机数种子,以使所有的随机数发生器生成新的初始的随机数0x73f5c5c9;
5、DMA对SRAM继续进行突发(Burst)数据传输(写操作);
6、CPU启动一次对运算Engine的数据传输,由于运算Engine的计算一直没有结束,且DMA对SRAM的数据传输每发生一次,DMA都会给随机数一致性总线发送随机数更新请求,同时自身的随机数发生器中的随机数也会随着更新。在数据传输的过程中CPU和运算Engine接收到了来自随机数一致性总线的随机数更新请求,需要把CPU和运算Engine对应的随机数发生器的状态置为脏,判断DMA对SRAM的数据传输期间发生了4次随机数更新,在CPU完成与运算Engine的数据传输后,需要通过各自对应的随机数发生器对随机数更新4次,随后可以将CPU和运算Engine对应的随机数发生器的状态置为干净。
7、CPU启动一次对外设的数据传输,由于外设处于不需要加密的安全区间,所以数据不做加密,随机数不做更新。
请参考图5所示的每次数据传输的原始数据、随机数状态和总线加密结果。
请参考图6,其示出了本申请一个实施例提供的总线数据的保护装置的结构框图,该总线数据的保护装置可以应用于芯片中。该总线数据的保护装置,可以包括:
发送模块610,用于在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,通过第一模块将敏感数据发送给总线加密模块;
加密模块620,用于通过总线加密模块接收敏感数据,并获取第一模块对应的第一随机数发生器中的第一随机数,根据第一随机数对敏感数据进行加密,将得到的加密数据发送给总线;
传输模块630,用于通过总线将加密数据发送给总线解密模块;
解密模块640,用于通过总线解密模块接收加密数据,获取第二模块对应的第二随机数发生器中的第二随机数,根据第二随机数对加密数据进行解密,将得到的敏感数据发送给第二模块,第二随机数与第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数;
接收模块650,用于通过第二模块接收敏感数据。
在一个可选的实施例中,该装置还包括更新模块,用于:
在每完成一笔数据传输后,主模块向随机数一致性总线发送随机数更新请求,主模块是第一模块和第二模块中发起数据传输的模块;
随机数一致性总线控制每个第一随机数发生器对各自的第一随机数进行一次更新,并控制每个第二随机数发生器对各自的第二随机数进行一次更新;
其中,每个第一随机数发生器对应于一个第一模块,每个第二随机数发生器对应于一个第二模块,且更新后的第一随机数与更新后的第二随机数相同。
在一个可选的实施例中,该更新模块还用于:
对于处于第一状态的每个第一随机数发生器,第一随机数发生器对自身的第一随机数进行一次更新;对于处于第二状态的每个第一随机数发生器,第一随机数发生器记录自身的第一随机数的待更新次数k,在第一随机数发生器对应的第一模块完成数据传输后,对自身的第一随机数进行k次更新,并将自身的状态设置为第一状态,第二状态是第一随机数发生器对应的第一模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,k为正整数;
对于处于第一状态的每个第二随机数发生器,第二随机数发生器对自身的第二随机数进行一次更新;对于处于第二状态的每个第二随机数发生器,第二随机数发生器记录自身的第二随机数的待更新次数n,在第二随机数发生器对应的第二模块完成数据传输后,对自身的第二随机数进行n次更新,并将自身的状态设置为第一状态,第二状态是第二随机数发生器对应的第二模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,n为正整数。
在一个可选的实施例中,该更新模块还用于:
当总线处于空闲状态时,真随机源向所有的第一随机数发生器和所有的第二随机数发生器广播真随机数;
每个第一随机数发生器根据真随机数生成初始的第一随机数;
每个第二随机数发生器根据真随机数生成初始的第二随机数;
其中,初始的第一随机数和初始的第二随机数相同。
在一个可选的实施例中,加密模块620,还用于通过总线加密模块获取敏感数据对应的加密算法,根据第一随机数和加密算法对敏感数据进行加密;
解密模块640,还用于通过总线解密模块获取加密数据对应的解密算法,根据第二随机数和解密算法对加密数据进行解密,解密算法与加密算法对应。
在一个可选的实施例中,加密模块620,还用于通过总线加密模块获取从模块的地址信息,在第一对应关系中查找与地址信息对应的加密算法,第一对应关系中存储有不同的地址信息与不同的加密算法之间的映射;
解密模块640,还用于通过总线解密模块获取从模块的地址信息,在第二对应关系中查找与地址信息对应的解密算法,第二对应关系中存储有不同的地址信息与不同的解密算法之间的映射;
其中,从模块是第一模块和第二模块中用于进行数据存储或数据运算的模块。
在一个可选的实施例中,加密模块620,还用于通过总线加密模块获取总线发送的控制信号,在第三对应关系中查找与控制信号对应的加密算法,第三对应关系中存储有不同的控制信号与不同的加密算法之间的映射;
解密模块640,还用于通过总线解密模块获取总线发送的控制信号,在第四对应关系中查找与控制信号对应的解密算法,第四对应关系中存储有不同的控制信号与不同的解密算法之间的映射。
综上所述,本申请实施例提供的总线数据的保护装置,在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,先通过第一模块将敏感数据发送给总线加密模块,再通过总线加密模块接收敏感数据,并获取第一模块对应的第一随机数发生器中的第一随机数,根据第一随机数对敏感数据进行加密,将得到的加密数据发送给总线,由总线将加密数据发送给总线解密模块,最后通过总线解密模块接收加密数据,获取第二模块对应的第二随机数发生器中的第二随机数,由于第二随机数与第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数,所以,总线解密模块能够根据第二随机数对加密数据进行解密,将得到的敏感数据发送给第二模块,从而完成数据传输。本实施例中只需要在总线中传输加密数据,而无需传输第一随机数,这样,即使黑客能够监控到加密数据,也会因为无法获取到第二随机数而无法对该加密数据进行解密,从而提高了数据传输的安全性。另外,无需在总线上传输第一随机数还会减少总线位宽的开销。
由于第一随机数发生器和第二随机数发生器的结构相同,且第一随机数发生器和第二随机数发生器接收到的随机种子相同,第一随机数发生器和第二随机数发生器同步根据随机种子进行更新,所以,第一随机数发生器每次自运算更新后得到的第一随机数和第二随机数发生器每次自运算更新后得到的第二随机数是相同的,从而可以保证敏感数据能够被正确加解密。另外,在每完成一笔数据传输后,都需要更新所有第一随机数发生器中的第一随机数和所有第二随机数发生器中的第二随机数,并保持所有第一随机数和第二随机数相同。即,不同次数据传输所采用的第一随机数和第二随机数不同,而同一次数据传输所采用的第一随机数和第二随机数相同。
随机数发生器采用真随机源提供真随机熵源与伪随机发生单元混合随机数发生形式,真随机源随机的不断广播发送真随机数给伪随机数发生器作为随机种子,随机数发生器接收到真随机源种子加入到伪随机数发生单元,生成一笔新的随机数。每次发生一笔数据传输后,随机数发生器进行一次伪随机发生单元更新。由于主模块和从模块对应的随机数发生器的输入和更新都是一致的,随机数的数值能够保证一致性,从而保证了随机数的不可预测性,提高了数据传输的安全性。
由于既可以在同一时刻只允许一个第一模块向一个第二模块发送敏感数据,也可以在同一时刻允许多个第一模块向多个第二模块发送敏感数据,从而扩展了敏感数据的传输方式,也扩展了芯片的结构。
当同一时刻允许多个第一模块向多个第二模块发送敏感数据时,仍然可以采用上述随机数的更新方式来更新随机数,使得每笔数据加解密采用的随机数都不相同,从而保证了数据传输的安全性;且同一笔数据加解密所采用的第一随机数和第二随机数相同,从而保证了能够被正确加解密。
本申请一个实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上所述的总线数据的保护方法。
本申请一个实施例提供了一种芯片,所述芯片包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的总线数据的保护方法。
需要说明的是:上述实施例提供的总线数据的保护装置在进行总线数据的保护时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将总线数据的保护装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的总线数据的保护装置与总线数据的保护方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。

Claims (10)

1.一种总线数据的保护方法,其特征在于,所述方法包括:
在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,所述第一模块将所述敏感数据发送给总线加密模块;
所述总线加密模块接收所述敏感数据,并获取所述第一模块对应的第一随机数发生器中的第一随机数,根据所述第一随机数对所述敏感数据进行加密,将得到的加密数据发送给总线;
所述总线将所述加密数据发送给总线解密模块;
所述总线解密模块接收所述加密数据,获取所述第二模块对应的第二随机数发生器中的第二随机数,根据所述第二随机数对所述加密数据进行解密,将得到的所述敏感数据发送给所述第二模块,所述第二随机数与所述第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数;
所述第二模块接收所述敏感数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在每完成一笔数据传输后,主模块向随机数一致性总线发送随机数更新请求,所述主模块是所述第一模块和所述第二模块中发起数据传输的模块;
所述随机数一致性总线控制每个第一随机数发生器对各自的第一随机数进行一次更新,并控制每个第二随机数发生器对各自的第二随机数进行一次更新;
其中,每个第一随机数发生器对应于一个第一模块,每个第二随机数发生器对应于一个第二模块,且更新后的第一随机数与更新后的第二随机数相同。
3.根据权利要求2所述的方法,其特征在于,
所述控制每个第一随机数发生器对各自的第一随机数进行一次更新,包括:对于处于第一状态的每个第一随机数发生器,所述第一随机数发生器对自身的第一随机数进行一次更新;对于处于第二状态的每个第一随机数发生器,所述第一随机数发生器记录自身的第一随机数的待更新次数k,在所述第一随机数发生器对应的第一模块完成数据传输后,对自身的第一随机数进行k次更新,并将自身的状态设置为所述第一状态,所述第二状态是所述第一随机数发生器对应的第一模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,所述k为正整数;
所述控制每个第二随机数发生器对各自的第二随机数进行一次更新,包括:对于处于第一状态的每个第二随机数发生器,所述第二随机数发生器对自身的第二随机数进行一次更新;对于处于第二状态的每个第二随机数发生器,所述第二随机数发生器记录自身的第二随机数的待更新次数n,在所述第二随机数发生器对应的第二模块完成数据传输后,对自身的第二随机数进行n次更新,并将自身的状态设置为所述第一状态,所述第二状态是所述第二随机数发生器对应的第二模块正在进行数据传输,且其他第一模块和第二模块完成数据传输时设置的,所述n为正整数。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述总线处于空闲状态时,真随机源向所有的第一随机数发生器和所有的第二随机数发生器广播真随机数;
每个第一随机数发生器根据所述真随机数生成初始的第一随机数;
每个第二随机数发生器根据所述真随机数生成初始的第二随机数;
其中,初始的第一随机数和初始的第二随机数相同。
5.根据权利要求1至4中任一项所述的方法,其特征在于,
所述根据所述第一随机数对所述敏感数据进行加密,包括:所述总线加密模块获取所述敏感数据对应的加密算法,根据所述第一随机数和所述加密算法对所述敏感数据进行加密;
所述根据所述第二随机数对所述加密数据进行解密,包括:所述总线解密模块获取所述加密数据对应的解密算法,根据所述第二随机数和所述解密算法对所述加密数据进行解密,所述解密算法与所述加密算法对应。
6.根据权利要求5所述的方法,其特征在于,
所述总线加密模块获取所述敏感数据对应的加密算法,包括:所述总线加密模块获取从模块的地址信息,在第一对应关系中查找与所述地址信息对应的加密算法,所述第一对应关系中存储有不同的地址信息与不同的加密算法之间的映射;
所述总线解密模块获取所述加密数据对应的解密算法,包括:所述总线解密模块获取所述从模块的地址信息,在第二对应关系中查找与所述地址信息对应的解密算法,所述第二对应关系中存储有不同的地址信息与不同的解密算法之间的映射;
其中,所述从模块是所述第一模块和所述第二模块中用于进行数据存储或数据运算的模块。
7.根据权利要求5所述的方法,其特征在于,
所述总线加密模块获取所述敏感数据对应的加密算法,包括:所述总线加密模块获取总线发送的控制信号,在第三对应关系中查找与所述控制信号对应的加密算法,所述第三对应关系中存储有不同的控制信号与不同的加密算法之间的映射;
所述总线解密模块获取所述加密数据对应的解密算法,包括:所述总线解密模块获取总线发送的所述控制信号,在第四对应关系中查找与所述控制信号对应的解密算法,所述第四对应关系中存储有不同的控制信号与不同的解密算法之间的映射。
8.一种总线数据的保护装置,其特征在于,所述装置包括:
发送模块,用于在第一模块根据读操作或写操作确定需要向第二模块发送敏感数据时,通过所述第一模块将所述敏感数据发送给总线加密模块;
加密模块,用于通过所述总线加密模块接收所述敏感数据,并获取所述第一模块对应的第一随机数发生器中的第一随机数,根据所述第一随机数对所述敏感数据进行加密,将得到的加密数据发送给总线;
传输模块,用于通过所述总线将所述加密数据发送给总线解密模块;
解密模块,用于通过所述总线解密模块接收所述加密数据,获取所述第二模块对应的第二随机数发生器中的第二随机数,根据所述第二随机数对所述加密数据进行解密,将得到的所述敏感数据发送给所述第二模块,所述第二随机数与所述第一随机数是对同一真随机数进行相同次数的更新后得到的相同的随机数;
接收模块,用于通过所述第二模块接收所述敏感数据。
9.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至7任一所述的总线数据的保护方法。
10.一种芯片,其特征在于,所述芯片包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至7任一所述的总线数据的保护方法。
CN202010928069.6A 2020-09-07 2020-09-07 总线数据的保护方法、装置、存储介质及芯片 Active CN111814212B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010928069.6A CN111814212B (zh) 2020-09-07 2020-09-07 总线数据的保护方法、装置、存储介质及芯片

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010928069.6A CN111814212B (zh) 2020-09-07 2020-09-07 总线数据的保护方法、装置、存储介质及芯片

Publications (2)

Publication Number Publication Date
CN111814212A true CN111814212A (zh) 2020-10-23
CN111814212B CN111814212B (zh) 2020-12-18

Family

ID=72860023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010928069.6A Active CN111814212B (zh) 2020-09-07 2020-09-07 总线数据的保护方法、装置、存储介质及芯片

Country Status (1)

Country Link
CN (1) CN111814212B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113076568A (zh) * 2021-04-27 2021-07-06 广东电网有限责任公司电力调度控制中心 一种总线保护装置、方法、芯片和存储介质
CN113127901A (zh) * 2021-04-21 2021-07-16 中国人民解放军战略支援部队信息工程大学 一种数据加密传输的处理方法、装置及芯片
CN117633920A (zh) * 2023-12-13 2024-03-01 上海国微芯芯半导体有限公司 一种敏感数据传输总线架构、控制逻辑电路及传输***

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081713A (zh) * 2011-01-18 2011-06-01 苏州国芯科技有限公司 一种用于防止数据泄密的办公***
US20140129452A1 (en) * 2009-04-30 2014-05-08 Visa U.S.A., Inc. Product recall platform apparatuses, methods and systems
CN111034115A (zh) * 2017-08-25 2020-04-17 7隧道公司 用于扩展真随机数池的表观大小的加密***和方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140129452A1 (en) * 2009-04-30 2014-05-08 Visa U.S.A., Inc. Product recall platform apparatuses, methods and systems
CN102081713A (zh) * 2011-01-18 2011-06-01 苏州国芯科技有限公司 一种用于防止数据泄密的办公***
CN111034115A (zh) * 2017-08-25 2020-04-17 7隧道公司 用于扩展真随机数池的表观大小的加密***和方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113127901A (zh) * 2021-04-21 2021-07-16 中国人民解放军战略支援部队信息工程大学 一种数据加密传输的处理方法、装置及芯片
CN113127901B (zh) * 2021-04-21 2023-05-16 中国人民解放军战略支援部队信息工程大学 一种数据加密传输的处理方法、装置及芯片
CN113076568A (zh) * 2021-04-27 2021-07-06 广东电网有限责任公司电力调度控制中心 一种总线保护装置、方法、芯片和存储介质
CN113076568B (zh) * 2021-04-27 2022-12-23 广东电网有限责任公司电力调度控制中心 一种总线保护装置、方法、芯片和存储介质
CN117633920A (zh) * 2023-12-13 2024-03-01 上海国微芯芯半导体有限公司 一种敏感数据传输总线架构、控制逻辑电路及传输***

Also Published As

Publication number Publication date
CN111814212B (zh) 2020-12-18

Similar Documents

Publication Publication Date Title
CN111814212B (zh) 总线数据的保护方法、装置、存储介质及芯片
CN110337649B (zh) 用于搜索模式未察觉的动态对称可搜索加密的方法和***
JP2021505995A (ja) アドレススクランブルのための記憶機器及び方法
US10659216B2 (en) Data processing method and apparatus
US6831979B2 (en) Cryptographic accelerator
US9904804B2 (en) Layout-optimized random mask distribution system and method
US10943020B2 (en) Data communication system with hierarchical bus encryption system
CN112329038B (zh) 一种基于usb接口的数据加密控制***及芯片
JP2003521053A (ja) 暗号化を含むマイクロプロセッサシステム
JP2006277411A (ja) プロセッサ、メモリ、コンピュータシステムおよびデータ転送方法
CN112134703B (zh) 使用改良式键熵汇流排保护的电子装置
US20180276160A1 (en) SYSTEM ON CHIP (SoC), MOBILE ELECTRONIC DEVICE INCLUDING THE SAME, AND METHOD OF OPERATING THE SoC
CN111566987B (zh) 数据处理方法、电路、终端设备及存储介质
US7673151B2 (en) Processor for encrypting and/or decrypting data and method of encrypting and/or decrypting data using such a processor
CN113810169A (zh) 同态加密装置及其密文算术方法
US9734065B2 (en) Method of managing consistency of caches
CN110611568A (zh) 基于多种加解密算法的动态加解密方法、装置、及设备
CN116324780A (zh) 用于通道加密区分的元数据调整
CN114327255A (zh) 存储器接口控制器及存储器
US11995015B2 (en) Data processing device and method for transmitting data over a bus
JP2007281994A (ja) 半導体集積回路
JP2014222420A (ja) 半導体記憶装置及びデータ処理システム
JP7032926B2 (ja) 半導体装置及び暗号鍵の制御方法
CN113536331B (zh) 存储器和计算***的数据安全
CN114978714B (zh) 基于risc-v的轻量级数据总线加密安全传输方法

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