【技术实现步骤摘要】
加解密系统、加解密控制方法、计算机设备及存储介质
[0001]本专利技术涉及芯片设计领域,具体涉及加解密系统、加解密控制方法、计算机设备及存储介质。
技术介绍
[0002]分组密码是一种将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列的算法,在计算机通信和信息系统安全领域有着非常广泛的应用,是许多常用密码系统的核心要素。
[0003]相关技术中,利用专用的集成电路芯片在进行加解密运算,但采用该种方式进行加解密处理,每次只能对一种密码算法进行计算,且待加解密数据需要持续发送,进而导致整体运算效率低。
[0004]鉴于此,亟需一种能够提高加解密效率的加解密系统。
技术实现思路
[0005]有鉴于此,本专利技术实施例提供了一种加解密系统、加解密控制方法、计算机设备及存储介质,以解决加解密效率低的问题。
[0006]第一方面,本专利技术实施例提供了一种加解密系统,加解密系统包括:直接存储访问控制器,用于通过外部总线与片上系统的内部缓存进行数据交互,将得到的待加解密数据采用分块传输的方式,将待加解密数据对应的多个数据块写入先进先出控制模块;先进先出控制模块,包括与多种分组密码算法一一对应的先进先出单元,先进先出控制模块用于将各数据块按照对应的分组密码算法缓存至对应先进先出单元内;逻辑解析模块,用于对数据块进行数据转换,并将转换后的各数据块分别调度至算法核模块中对应算法核内;密钥存储模 ...
【技术保护点】
【技术特征摘要】
1.一种加解密系统,其特征在于,所述加解密系统包括:直接存储访问控制器,用于通过外部总线与片上系统的内部缓存进行数据交互,将得到的待加解密数据采用分块传输的方式,将所述待加解密数据对应的多个数据块写入先进先出控制模块;所述先进先出控制模块,包括与多种分组密码算法一一对应的先进先出单元,所述先进先出控制模块用于将各所述数据块按照对应的分组密码算法缓存至对应先进先出单元内;逻辑解析模块,用于对所述数据块进行数据转换,并将转换后的各所述数据块分别调度至算法核模块中对应算法核内;密钥存储模块,包括每一种分组密码算法分别对应多个密钥存储单元,所述密钥存储单元用于存储对应分组密码算法的密钥;所述算法核模块,包括多种算法核,所述多种算法核与所述多种分组密码算法一一对应,所述算法核用于从对应密钥存储单元中调用对应的密钥,用于对对应的数据块进行加解密处理,并将得到的加解密结果写入对应所述先进先出单元内。2.根据权利要求1所述的加解密系统,其特征在于,所述加解密系统还包括:消息认证码模块,用于接收所述算法核传输的加密结果,并生成所述加密结果的第一消息认证码值,以及将所述第一消息认证码值传输至寄存器模块,所述加解密结果包括所述加密结果;所述寄存器模块,用于接收并存储所述第一消息认证码值。3.根据权利要求2所述的加解密系统,其特征在于,所述消息认证码模块,还用于接收待解密数据的数据块,并生成的所述待解密数据的数据块的第二消息认证码值,以及将所述第二消息认证码值传输至寄存器模块,所述待加解密数据包括待解密数据;所述寄存器模块,还用于接收并存储所述第一消息认证码值。4.根据权利要求1至3中任一项所述的加解密系统,其特征在于,所述直接存储访问控制器用于:通过所述外部总线从所述片上系统的内部缓存中读取所述待加解密数据,从所述先进先出单元内读取对应缓存的加解密结果,以及将所述对应缓存的加解密结果回写至所述片上系统的内部缓存。5.根据权利要求4所述的加解密系统,其特征在于,所述直接存储访问控制器用于根据每一个数据块对应的分组密码算法,将各所述数据块分别写入对应的先进先出单元内;以及根据指定搬运规则从各所述先进先出单元内读取对应缓存的加解密结果;所述指定搬运规则包括以下任一种搬运规则:根据所述多种分组密码算法中各所述分组密码算法的优先级,优先读取高优先级对应所述先进先出单元内缓存的加解密结果;或者,根据各所述先进先出单元内的剩余缓存空间大小,优先读取剩余缓存空间最小的先进先出单元内缓存的加解密结果。6.根据权利要求4所述的加解密系统,其特征在于,所述直接存储访问控制器根据各所述数据块的读取顺序,将各所述数据块分别写入对应的先进先出单元内,相邻数据块对应的分组密码算法相同或不同。
7.根据权利要求3所述的加解密系统,其特征在于,所述先进先出单元包括输入缓存子单元和输出缓存子单元;所述输入缓存子单元用于缓存所述直接存储访问控制器对应写入的数据块;所述输出缓存子单元用于缓存对应算法核输出的加解密结果。8.根据权利要求7所述的加解密系统,其特征在于,所述逻辑解析模块还用于:读取所述输入缓存子单元内的第一数据块;将所述第一数据块转换成数据位宽为第一位宽的数据块,并将所述第一位宽的数据块送至对应算法核内进行加解密处理;所述逻辑解析模块还用于根据所述第一数据块为待解密数据,将所述第一位宽的数据块送至所述消息认证码模块内,以供所述消息认证码模块生成所述第一位宽的数据块的第二消息认证码值;所述逻辑解析模块还用于根据所述第一数据块为待加密数据,将所述对应算法核内输出的加密结果转换成数据位宽为第二位宽的数据块,并将所述第二位宽的数据块送入对应输出缓存子单元内,以供直接存储访问控制器将所述第二位宽的数据块通过所述外部总线回写至所述片上系统的内部缓存;将所述对应算法核内输出的加密结果送入所述消息认证码模块内,以及将所述消息认证码模块生成的第一消息认证码值写入所述寄存器模块。9.根据权利要求8所述的加解密系统,其特征在于,所述逻辑解析模块,还用于从所述消息认证码模块中调用消息认证码值,将所述消息认证码值与对应分组密码算法的标准值比对,并将比对结果作为校验结果,所述消息认证码值包括所述第一消息认证码值或者所述第二消息认证码值。10.根据权利要求2或3所述的加解密系统,其特征在于,所述寄存器模块还用于通过外部总线接收所述片上系统的内部缓存传输的配置指令,根据所述配置指令配置所述寄存器模块内的以下子寄存器:多组通道状态寄存器,所述多组通道状态寄存器分别与所述多种分组密码算法一一对应,所述通道状态寄存器用于记录对应分组密码算法的运算状态。11.根据权利要求10所述的加解密系统,其特征在于,所述寄存器模块还用于根据所述配置指令配置以下子寄存器:多组密钥寄存器,至少一组密钥寄存器与一种分组密码算法对应,所述密钥寄存器用于寄存对应分组密码算法的密钥参数,以供所述密钥存储模块根据所述密钥参数存储对应分组密码算法的密钥;多个密钥更新标志寄存器,分别与所述多种分组密码算法一一对应,所述密钥更新标志寄存器用于寄存对应分组密码算法的密钥使用参数,以控制所述算法核根据所述密钥使用参数从所述密钥存储模块中调用对应的密钥,以及提示对应分组密码算法的密钥参数更新状态;多组初始向量寄存器,分别与所述多种分组密码算法一一对应,所述初始向量寄存器用于寄存各所述分组密码算法的初始向量参数;多组指令寄存器,分别与所述多种分组密码算法一一对应,所述指令寄存器用于寄存待从所述密钥存储模块中调用对应密钥的密钥序号,以及寄存所述片上系统的内部缓存发送的控制指令,所述控制指令用于控制各所述分组密码算法是否执行加解密处理;
多组算法长度寄存器,分别与所述多种分组密码算法一一对应,所述算法长度寄存器用于寄存对应分组密码算法每次运算的数据长度参数,以控制对应算法核根据所述数据长度参数进行加解密处理;多组消息认证码寄存器,分别与所述多种分组密码算法一一对应,所述消息认证码寄存器用于存储对应分组密码算法的目标消息认证码值,以校验所述消息认证码模块生成的消息认证码...
【专利技术属性】
技术研发人员:赵新宇,戴秀超,周玉龙,刘刚,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。