加解密系统、加解密控制方法、计算机设备及存储介质技术方案

技术编号:37767165 阅读:11 留言:0更新日期:2023-06-06 13:28
本发明专利技术涉及芯片设计技术领域,公开了加解密系统、加解密控制方法、计算机设备及存储介质。加解密系统包括:直接存储访问控制器,用于通过外部总线与片上系统的内部缓存进行数据交互,将待加解密数据对应的多个数据块写入先进先出控制模块;逻辑解析模块,用于对数据块进行数据转换,并将转换后的各数据块分别调度至算法核模块中对应算法核内;多个密钥存储单元,密钥存储单元用于存储对应分组密码算法的密钥;多种算法核,算法核用于从对应密钥存储单元中调用对应的密钥,用于对对应的数据块进行加解密处理,将加解密结果写入对应先进先出单元内。本发明专利技术对待加解密数据能够采用多种分组密码算法进行并行加解密处理,进而有效提高加解密处理效率。加解密处理效率。加解密处理效率。

【技术实现步骤摘要】
加解密系统、加解密控制方法、计算机设备及存储介质


[0001]本专利技术涉及芯片设计领域,具体涉及加解密系统、加解密控制方法、计算机设备及存储介质。

技术介绍

[0002]分组密码是一种将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列的算法,在计算机通信和信息系统安全领域有着非常广泛的应用,是许多常用密码系统的核心要素。
[0003]相关技术中,利用专用的集成电路芯片在进行加解密运算,但采用该种方式进行加解密处理,每次只能对一种密码算法进行计算,且待加解密数据需要持续发送,进而导致整体运算效率低。
[0004]鉴于此,亟需一种能够提高加解密效率的加解密系统。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供了一种加解密系统、加解密控制方法、计算机设备及存储介质,以解决加解密效率低的问题。
[0006]第一方面,本专利技术实施例提供了一种加解密系统,加解密系统包括:直接存储访问控制器,用于通过外部总线与片上系统的内部缓存进行数据交互,将得到的待加解密数据采用分块传输的方式,将待加解密数据对应的多个数据块写入先进先出控制模块;先进先出控制模块,包括与多种分组密码算法一一对应的先进先出单元,先进先出控制模块用于将各数据块按照对应的分组密码算法缓存至对应先进先出单元内;逻辑解析模块,用于对数据块进行数据转换,并将转换后的各数据块分别调度至算法核模块中对应算法核内;密钥存储模块,包括每一种分组密码算法分别对应多个密钥存储单元,密钥存储单元用于存储对应分组密码算法的密钥;算法核模块,包括多种算法核,多种算法核与多种分组密码算法一一对应,算法核用于从对应密钥存储单元中调用对应的密钥,用于对对应的数据块进行加解密处理,将加解密结果写入对应先进先出单元内。
[0007]在该方式中,能够将得到的待加解密数据采用多种分组密码算法进行并行加解密处理,进而有效提高加解密处理的效率。
[0008]在一种可选的实施方式中,加解密系统还包括:消息认证码模块,用于接收算法核传输的加密结果,并生成加密结果的第一消息认证码值,以及将第一消息认证码值传输至寄存器模块,加解密结果包括加密结果;寄存器模块,用于接收并存储第一消息认证码值。
[0009]在该方式中,通过消息认证码模块对各分组密码算法的加密结果进行认证,有助于提高加解密处理效率的同时,保障待加密信息的机密性、完整性和未被篡改性。
[0010]在一种可选的实施方式中,消息认证码模块,还用于接收待解密数据的数据块,并生成的待解密数据的数据块的第二消息认证码值,以及将第二消息认证码值传输至寄存器模块,待加解密数据包括待解密数据;寄存器模块,还用于接收并存储第一消息认证码值。
[0011]在该方式中,通过消息认证码模块对各分组密码算法的加密结果进行认证,有助于提高加解密处理效率的同时,保障待解密数据的机密性和完整性。
[0012]在一种可选的实施方式中,直接存储访问控制器用于:通过外部总线从片上系统的内部缓存中读取待加解密数据,从先进先出单元内读取对应缓存的加解密结果,以及将对应缓存的加解密结果回写至片上系统的内部缓存。
[0013]在该方式中,能够实现直接存储访问控制器的数据搬运功能。
[0014]在一种可选的实施方式中,直接存储访问控制器用于根据每一个数据块对应的分组密码算法,将各数据块分别写入对应的先进先出单元内;以及根据指定搬运规则从各先进先出单元内读取对应缓存的加解密结果;指定搬运规则包括以下任一种搬运规则:根据多种分组密码算法中各分组密码算法的优先级,优先读取高优先级对应先进先出单元内缓存的加解密结果;或者,根据各先进先出单元内的剩余缓存空间大小,优先读取剩余缓存空间最小的先进先出单元内缓存的加解密结果。
[0015]在该方式中,有助于提高加解密结果的搬运准确性和效率,以及最大程度减小了输入方向的反压总线的概率,能够减少直接存储访问控制器搬运加解密结果的等待周期,节省缓存空间,从而有助于提高外部总线利用率和整个加解密系统的吞吐量。
[0016]在一种可选的实施方式中,直接存储访问控制器根据各数据块的读取顺序,将各数据块分别写入对应的先进先出单元内,相邻数据块对应的分组密码算法相同或不同。
[0017]在该方式中,有助于减少直接存储访问控制器搬运数据块的等待周期,从而有助于提高搬运效率,实现各分组密码算法的并行化加解密处理,使用户对缓存的操作更灵活,能够有效提高外部总线利用率和整个加解密系统的吞吐量。
[0018]在一种可选的实施方式中,先进先出单元包括输入缓存子单元和输出缓存子单元;输入缓存子单元用于缓存直接存储访问控制器对应写入的数据块;输出缓存子单元用于缓存对应算法核输出的加解密结果。
[0019]在该方式中,有助于保障加解密系统内的各类数据能够有序传输。
[0020]在一种可选的实施方式中,逻辑解析模块还用于:读取输入缓存子单元内的第一数据块;将第一数据块转换成数据位宽为第一位宽的数据块,并将第一位宽的数据块送至对应算法核内进行加解密处理;逻辑解析模块还用于根据第一数据块为待解密数据,将第一位宽的数据块送至消息认证码模块内,以供消息认证码模块生成第一位宽的数据块的第二消息认证码值;
逻辑解析模块还用于根据第一数据块为待加密数据,将对应算法核内输出的加密结果转换成数据位宽为第二位宽的数据块,并将第二位宽的数据块送入对应输出缓存子单元内,以供直接存储访问控制器将第二位宽的数据块通过外部总线回写至片上系统的内部缓存;将对应算法核内输出的加密结果送入消息认证码模块内,以及将消息认证码模块生成的第一消息认证码值写入寄存器模块。
[0021]在该方式中,能够保障加解密处理的顺利运行,且有助于后续判断加密结果是否被篡改。
[0022]在一种可选的实施方式中,逻辑解析模块,还用于从消息认证码模块中调用消息认证码值,将消息认证码值与对应分组密码算法的标准值比对,并将比对结果作为校验结果,消息认证码值包括第一消息认证码值或者第二消息认证码值。
[0023]在该方式中,采用该加解密系统执行加解密处理时,能够同时满足信息的机密性、完整性和未被篡改性。
[0024]在一种可选的实施方式中,寄存器模块还用于通过外部总线接收片上系统的内部缓存传输的配置指令,根据配置指令配置寄存器模块内的以下子寄存器:多组通道状态寄存器,多组通道状态寄存器分别与多种分组密码算法一一对应,通道状态寄存器用于记录对应分组密码算法的运算状态。
[0025]在该方式中,使片上系统的内部缓存可以通过外部总线读取各通道状态寄存器内的数据,进而判断各分组密码算法的通道状态是否存在异常,以便后续确定是否采用该加解密系统进行加解密处理。
[0026]在一种可选的实施方式中,寄存器模块还用于根据配置指令配置以下子寄存器:多组密钥寄存器,至少一组密钥寄存器与一种分组密码算法对应,密钥本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种加解密系统,其特征在于,所述加解密系统包括:直接存储访问控制器,用于通过外部总线与片上系统的内部缓存进行数据交互,将得到的待加解密数据采用分块传输的方式,将所述待加解密数据对应的多个数据块写入先进先出控制模块;所述先进先出控制模块,包括与多种分组密码算法一一对应的先进先出单元,所述先进先出控制模块用于将各所述数据块按照对应的分组密码算法缓存至对应先进先出单元内;逻辑解析模块,用于对所述数据块进行数据转换,并将转换后的各所述数据块分别调度至算法核模块中对应算法核内;密钥存储模块,包括每一种分组密码算法分别对应多个密钥存储单元,所述密钥存储单元用于存储对应分组密码算法的密钥;所述算法核模块,包括多种算法核,所述多种算法核与所述多种分组密码算法一一对应,所述算法核用于从对应密钥存储单元中调用对应的密钥,用于对对应的数据块进行加解密处理,并将得到的加解密结果写入对应所述先进先出单元内。2.根据权利要求1所述的加解密系统,其特征在于,所述加解密系统还包括:消息认证码模块,用于接收所述算法核传输的加密结果,并生成所述加密结果的第一消息认证码值,以及将所述第一消息认证码值传输至寄存器模块,所述加解密结果包括所述加密结果;所述寄存器模块,用于接收并存储所述第一消息认证码值。3.根据权利要求2所述的加解密系统,其特征在于,所述消息认证码模块,还用于接收待解密数据的数据块,并生成的所述待解密数据的数据块的第二消息认证码值,以及将所述第二消息认证码值传输至寄存器模块,所述待加解密数据包括待解密数据;所述寄存器模块,还用于接收并存储所述第一消息认证码值。4.根据权利要求1至3中任一项所述的加解密系统,其特征在于,所述直接存储访问控制器用于:通过所述外部总线从所述片上系统的内部缓存中读取所述待加解密数据,从所述先进先出单元内读取对应缓存的加解密结果,以及将所述对应缓存的加解密结果回写至所述片上系统的内部缓存。5.根据权利要求4所述的加解密系统,其特征在于,所述直接存储访问控制器用于根据每一个数据块对应的分组密码算法,将各所述数据块分别写入对应的先进先出单元内;以及根据指定搬运规则从各所述先进先出单元内读取对应缓存的加解密结果;所述指定搬运规则包括以下任一种搬运规则:根据所述多种分组密码算法中各所述分组密码算法的优先级,优先读取高优先级对应所述先进先出单元内缓存的加解密结果;或者,根据各所述先进先出单元内的剩余缓存空间大小,优先读取剩余缓存空间最小的先进先出单元内缓存的加解密结果。6.根据权利要求4所述的加解密系统,其特征在于,所述直接存储访问控制器根据各所述数据块的读取顺序,将各所述数据块分别写入对应的先进先出单元内,相邻数据块对应的分组密码算法相同或不同。
7.根据权利要求3所述的加解密系统,其特征在于,所述先进先出单元包括输入缓存子单元和输出缓存子单元;所述输入缓存子单元用于缓存所述直接存储访问控制器对应写入的数据块;所述输出缓存子单元用于缓存对应算法核输出的加解密结果。8.根据权利要求7所述的加解密系统,其特征在于,所述逻辑解析模块还用于:读取所述输入缓存子单元内的第一数据块;将所述第一数据块转换成数据位宽为第一位宽的数据块,并将所述第一位宽的数据块送至对应算法核内进行加解密处理;所述逻辑解析模块还用于根据所述第一数据块为待解密数据,将所述第一位宽的数据块送至所述消息认证码模块内,以供所述消息认证码模块生成所述第一位宽的数据块的第二消息认证码值;所述逻辑解析模块还用于根据所述第一数据块为待加密数据,将所述对应算法核内输出的加密结果转换成数据位宽为第二位宽的数据块,并将所述第二位宽的数据块送入对应输出缓存子单元内,以供直接存储访问控制器将所述第二位宽的数据块通过所述外部总线回写至所述片上系统的内部缓存;将所述对应算法核内输出的加密结果送入所述消息认证码模块内,以及将所述消息认证码模块生成的第一消息认证码值写入所述寄存器模块。9.根据权利要求8所述的加解密系统,其特征在于,所述逻辑解析模块,还用于从所述消息认证码模块中调用消息认证码值,将所述消息认证码值与对应分组密码算法的标准值比对,并将比对结果作为校验结果,所述消息认证码值包括所述第一消息认证码值或者所述第二消息认证码值。10.根据权利要求2或3所述的加解密系统,其特征在于,所述寄存器模块还用于通过外部总线接收所述片上系统的内部缓存传输的配置指令,根据所述配置指令配置所述寄存器模块内的以下子寄存器:多组通道状态寄存器,所述多组通道状态寄存器分别与所述多种分组密码算法一一对应,所述通道状态寄存器用于记录对应分组密码算法的运算状态。11.根据权利要求10所述的加解密系统,其特征在于,所述寄存器模块还用于根据所述配置指令配置以下子寄存器:多组密钥寄存器,至少一组密钥寄存器与一种分组密码算法对应,所述密钥寄存器用于寄存对应分组密码算法的密钥参数,以供所述密钥存储模块根据所述密钥参数存储对应分组密码算法的密钥;多个密钥更新标志寄存器,分别与所述多种分组密码算法一一对应,所述密钥更新标志寄存器用于寄存对应分组密码算法的密钥使用参数,以控制所述算法核根据所述密钥使用参数从所述密钥存储模块中调用对应的密钥,以及提示对应分组密码算法的密钥参数更新状态;多组初始向量寄存器,分别与所述多种分组密码算法一一对应,所述初始向量寄存器用于寄存各所述分组密码算法的初始向量参数;多组指令寄存器,分别与所述多种分组密码算法一一对应,所述指令寄存器用于寄存待从所述密钥存储模块中调用对应密钥的密钥序号,以及寄存所述片上系统的内部缓存发送的控制指令,所述控制指令用于控制各所述分组密码算法是否执行加解密处理;
多组算法长度寄存器,分别与所述多种分组密码算法一一对应,所述算法长度寄存器用于寄存对应分组密码算法每次运算的数据长度参数,以控制对应算法核根据所述数据长度参数进行加解密处理;多组消息认证码寄存器,分别与所述多种分组密码算法一一对应,所述消息认证码寄存器用于存储对应分组密码算法的目标消息认证码值,以校验所述消息认证码模块生成的消息认证码...

【专利技术属性】
技术研发人员:赵新宇戴秀超周玉龙刘刚
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1