当前位置: 首页 > 专利查询>东南大学专利>正文

面向分组密码算法的可重构S盒、可重构计算阵列及门控方法技术

技术编号:16038566 阅读:129 留言:0更新日期:2017-08-19 20:25
本发明专利技术公开了一种面向分组密码算法的可重构S盒,对S盒内部增加门控开关电路,用于控制S盒使能信号为有效或者无效状态,从而控制S盒是否进行查表操作。本发明专利技术还公开了采用可重构S盒的可重构计算阵列,所述可重构计算阵列包括多个计算资源块,每一个计算资源块包括一组S盒资源和多组算术逻辑资源,多组算术逻辑资源共享一组S盒资源。此外,本发明专利技术还公开了可重构S盒的门控方法。本发明专利技术能够实现多种分组密码算法,性能高,灵活性高,电路实现面积小,功耗低,能够对S盒实现细粒度控制。

【技术实现步骤摘要】
面向分组密码算法的可重构S盒、可重构计算阵列及门控方法
本专利技术涉及嵌入式系统领域,特别是涉及面向分组密码算法的可重构S盒、可重构计算阵列及门控方法。
技术介绍
随着电子科技的发展和网络及无线通信技术的广泛应用,信息安全越来越被人们重视。如何有效防止信息的泄露和对敏感信息的管理成为信息安全
的重要关注点。芯片加密技术用以解决上述问题成为现在广泛使用的有效手段,而提高芯片加密的处理速度,灵活性及安全性成为工程技术研究的重点问题。在密码算法中,分组密码是一种作用于分组数据的算法,尤其适用于对大块数据的加解密操作,从而被广泛使用。在实现方式上,现在被广泛使用的专用集成电路(ASIC)具有处理速度快的优势,但灵活性较差,不能较好地根据算法和参数的不同而做出改变。相比于ASIC的实现方式,可重构的结构具有更高的灵活性,平衡了性能和灵活性的要求,为分组密码的实现提供了新的选择。S盒是许多分组密码算法中的重要组成部分,与算法的其他部分不同,对S盒的操作是非线性的,它对整个计算模块所占的空间和计算速度起到关键的制约作用。现有的S盒结构有两种,基于逻辑电路的方法和基于查找表的方法。基于逻辑电路的方法占用面积小但灵活性差,不能兼容不同类型的S盒操作;基于查找表的方法占用面积大但易更新,所以广泛使用于可重构结构中。现有的S盒设计方法有两种:1)对于特定的算法,根据算法需要,在输出数据需要进行S盒查表操作的算术逻辑资源后连接S盒结构,再连接下一个算术逻辑资源。这种方法将S盒置于计算路径中的固定位置,不适用于对多种算法的运算,灵活性差;2)对于可执行多种算法的计算阵列结构,在每个算术逻辑资源后都连接S盒。如果算术逻辑资源执行完某一运算后需要根据算法进行S盒查表操作,数据进入S盒,否则直接进入下一个算术逻辑资源进行运算。这种方法资源开销较大,利用率不高。
技术实现思路
专利技术目的:本专利技术的目的是提供一种灵活性高、功耗低的面向分组密码算法的可重构S盒、可重构计算阵列及门控方法。技术方案:为达到此目的,本专利技术采用以下技术方案:本专利技术所述的面向分组密码算法的可重构S盒,对可重构计算阵列中的S盒内部增加门控开关电路,根据S盒使能信号是否有效,控制S盒是否进行查表操作。本专利技术所述的可重构计算阵列包括多个计算资源块和多个S盒,每个计算资源块包括多组算术逻辑资源,每个计算资源块共享一个S盒资源。进一步,如果在可重构计算阵列映射任务的数据流图对应的配置信息中没有对S盒进行数据配置,则将S盒的使能信号设置为无效状态,并根据该使能信号通过门控开关电路使得S盒不进行查表操作;如果映射任务的数据流图对应的配置信息中对S盒进行了数据配置,则根据使能配置,将S盒的使能信号设置为有效或无效状态,并根据该使能信号,使得S盒进行或不进行查表操作,查表操作的输入数据源选取和输出数据目标选取分别由输入路由和输出路由决定。本专利技术所述的计算阵列的门控方法,如果使能配置显示上一组算术逻辑资源的输出数据在下一计算周期需要进行S盒查表操作,则将S盒使能信号设置为有效状态,通过门控开关电路使得S盒根据输入路由和输出路由配置进行查找操作,查表输出代替下一组算术逻辑资源的输出;否则,将S盒使能状态设置为无效状态。有益效果:与现有技术相比,本专利技术具有如下的有益效果:(1)性能高,灵活性高。S盒内部结构并行的特征提高了查找速度,可重构的S盒结构使得所述S盒能够支持多种不同的分组密码算法的查表操作。(2)面积减小。一个计算资源块中的所有算术逻辑资源共享一组S盒资源,S盒根据配置信息代替计算资源的某一段路径,避免了整个数据路径中要经过多组空闲的S盒资源的特点。有效的节省了S盒的数量,减少了系统的面积,提高了S盒利用的效率和算法映射的灵活性。(3)功耗低。S盒的设计方法采用对S盒细粒度的门控设计,增加门控开关电路,控制S盒使能的有效或无效。这种设计使得不需要进行S盒查找时,S盒不会出现在数据路径之中,不产生动态功耗。附图说明图1为本专利技术具体实施方式中S盒和可重构计算阵列的结构示意图;图2为本专利技术具体实施方式中S盒使能信号随运算周期的开关示意图;图3为本专利技术具体实施方式中S盒的工作流程图;图4为本专利技术具体实施方式中S盒应用于SoC芯片的架构示意图。具体实施方式下面结合附图和具体实施方式对本专利技术的技术方案作进一步的介绍。本具体实施方式公开了一种面向分组密码算法的可重构S盒,如图1所示,S盒包括输入选择单元、查找表单元、输出选择单元和门控开关电路。输入选择单元主要负责选择查找表的输入地址来源,查找表单元内部由若干存储器组成,存储器含有多个并行端口,用来读入和写出数据,从而在单个计算单元中并行完成S盒的运算。查找表单元主要负责对分组密码算法的查找表替换信息进行存储分配,输出选择单元主要负责将查表输出数据传输到正确的算术逻辑单元中。门控开关电路根据S盒使能信号是否有效对可重构S盒进行细粒度门控,控制S盒是否进行查表操作。对S盒进行细粒度门控的使能信号由算法的配置信息确定提供。当配置信息没有对S盒进行数据配置,S盒使能信号处于无效状态,根据该使能信号通过门控开关电路使得S盒不进行查表操作,S盒不产生动态功耗。当根据配置信息,数据通路中的某组算术逻辑资源的输出数据在下一周期需要进行S盒查表操作时,S盒使能信号被设为有效状态,根据查找表的输入地址信号与该使能有效信号进行查表操作,查表输出代替该组算术逻辑资源的输出,并将运算结果输入到相应的下一层。当该次查表操作完成后,根据配置信息,数据通路中的某组算术逻辑资源的输出数据在下一周期不需要进行S盒查表操作时,S盒使能信号被设为无效状态。如图1所示,可重构计算阵列包括多个计算资源块和多个S盒,每个计算资源块包括多组算术逻辑资源,每个计算资源块共享一个S盒资源。每个计算资源块中的各组算术逻辑资源的输入通过输入选择单元与S盒的输入相连,每一组算术逻辑资源的输出都通过输出选择单元与S盒的输出相连。如图1所示,可重构计算阵列中各个计算资源块和各个S盒独立配置,各个计算资源块流水执行,可在阵列流水执行的过程中对S盒进行逐级门控,将不使用的S盒使能置为无效。对于算法映射中使用的S盒,当数据输入将S盒使能设为有效,当查表操作完成后将S盒使能设为无效。在阵列流水执行过程中,各个S盒随着阵列流水的方向,呈现出依次使能有效,再依次使能无效的状态。图2为本专利技术具体实施方式中S盒使能信号随着阵列流水方向设为有效或无效状态的示意图,设定高电平为使能有效。假设可重构计算阵列中有5个计算资源块和5个S盒,每个计算资源块有4组算术逻辑资源。假设对于某算法映射的配置信息,第0、2、4个计算资源块的第1组算术逻辑资源以查找操作的结果作为输出,第1、3个计算资源块的第3组算术逻辑资源以查表操作的结果作为输出,共对10组数据进行加密。图2的横轴为时钟周期数,每个时间周期可供一组算术逻辑资源完成一次运算或一个S盒完成一次查表操作,纵轴为各个S盒的使能有效状态。如图2所示,每组数据由第0组计算资源块流向第4组计算资源块,故第0组至第4组计算资源块分别从第0/4/8/12/16个周期开始运算。由于第0/2/4个计算资源块的第1组算术逻辑资源以查表操作的结果作为输出,因此第0/2/4个S盒的使能信号本文档来自技高网
...
面向分组密码算法的可重构S盒、可重构计算阵列及门控方法

【技术保护点】
面向分组密码算法的可重构S盒,其特征在于:对可重构计算阵列中的S盒内部增加门控开关电路,根据S盒使能信号是否有效,控制S盒是否进行查表操作。

【技术特征摘要】
1.面向分组密码算法的可重构S盒,其特征在于:对可重构计算阵列中的S盒内部增加门控开关电路,根据S盒使能信号是否有效,控制S盒是否进行查表操作。2.采用根据权利要求1所述可重构S盒的可重构计算阵列,其特征在于:所述可重构计算阵列包括多个计算资源块和多个S盒,每个计算资源块包括多组算术逻辑资源,每个计算资源块共享一个S盒资源。3.根据权利要求1所述可重构S盒,其特征在于:如果在可重构计算阵列映射任务的数据流图对应的配置信息中没有对S盒进行数据配置,则将S盒的使能信号设置为无效状态,并根据该使能信号通过门控开关电路使得S盒不进行查表操作;...

【专利技术属性】
技术研发人员:曹鹏吴江平李兆奇刘波杨军时龙兴
申请(专利权)人:东南大学
类型:发明
国别省市:江苏,32

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

1