一种实现安全哈希算法SHA3的装置及智能卡制造方法及图纸

技术编号:16822116 阅读:83 留言:0更新日期:2017-12-16 16:44
本发明专利技术涉及一种实现安全哈希算法SHA3的装置及智能卡。包括:控制模块、运算模块、存储模块,控制模块用于接收外部操作指令,每接收一条外部操作指令,根据外部操作指令发送相应的控制信号给运算模块和存储模块,运算模块和存储模块根据控制信号完成指定动作;运算模块根据接收到的控制信号完成各个基本逻辑运算;存储模块用于存储每一步运算的中间结果,中间结果的存储位置由控制信号提供。由于本发明专利技术使用微处理架构的方式实现,使用的组合逻辑非常的少,因此所占用的芯片面积也是非常小,且功耗低;由于算法的所有中间数据的存放位置都可自由定义,大大的提高使用的灵活度,适合智能卡的应用。

A device and smart card to implement the secure hash algorithm SHA3

The invention relates to a device and a smart card for realizing a secure hash algorithm SHA3. Including: control module, operation module, storage module, the control module is used for receiving external operating instructions, each receiving an external operation instruction according to send external operating instructions to the corresponding control signal to the module and storage module, operation module and storage module according to the control signal to complete the specified action; operation module to complete the basic logic of each operation according to the the control signal is received; the storage module to store intermediate results for each step in the computation and storage location of intermediate results provided by the control signal. Because the invention uses microprocessor architecture realization, combinational logic used very little, so the occupied chip area is also very small, and low power consumption; since all the intermediate data storage location algorithm can greatly improve the use of the definition of freedom, flexibility, suitable for smart card applications.

【技术实现步骤摘要】
一种实现安全哈希算法SHA3的装置及智能卡
本专利技术涉及信息安全
,更具体地说,涉及一种实现安全哈希算法SHA3的装置及智能卡。
技术介绍
在当今电子信息技术的飞速发展时代,在电信领域、金融领域、交通领域、医疗领域、政府领域,还有许多企业、机构、机关、酒店、娱乐场所、旅游景点、居住小区和学校等都采取智能卡作为提高管理效率的工具。智能卡具有良好的安全特性,同时具有便于携带、使用方便等特点。正由于它的应用之广泛,发展之迅速,所以常常对于它的安全性有非常高的要求,传统智能卡里有很多诸如MD5、SHA0、SHA1等安全哈希算法,由于对MD5出现成功的破解,以及对SHA0和SHA1出现理论上破解的方法,因此为了满足各种应用场合的安全性要求,智能卡需要更新新一代的安全哈希算法(SecureHashAlgorithm,SHA)SHA3,从SHA3算法统计性能和轮函数的对称性两个方面对其进行测试,结果表明SHA3算法雪崩效应良好,平均变化比特数和平均变化概率都非常接近理想值,且方差较小具有较高的稳定性和较低的碰撞程度。由于SHA3算法是对1600比特的数据进行处理,每次处理有五步迭代运算,每块消息处理24次,因此SHA3算法是十分消耗逻辑资源的,不能满足智能卡需求,对于芯片的面积和功耗都有相当苛刻的要求,这就要求SHA3的硬件架构具有低功耗小面积的要求。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述SHA3算法面积和功耗大、不能满足智能卡需求的缺陷,提供一种实现安全哈希算法SHA3的装置及智能卡。本专利技术解决其技术问题所采用的技术方案是:构造一种实现安全哈希算法SHA3的装置,包括:控制模块、运算模块、存储模块,其中,所述控制模块用于接收外部操作指令,每接收一条所述外部操作指令,根据所述外部操作指令发送相应的控制信号给所述运算模块和存储模块,所述运算模块和存储模块根据所述控制信号完成指定动作;所述运算模块根据接收到的所述控制信号完成各个基本逻辑运算;所述存储模块用于存储每一步运算的中间结果,所述中间结果的存储位置由所述控制信号提供。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述基本逻辑运算的逻辑操作都按照64比特进行处理;所述存储模块为存储深度为256和数据宽度为64比特的单端口随机存取存储器。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述基本逻辑运算包括:二输入异或操作、常数异或操作、二输入与操作、非操作、以及25种移位操作;所述25种移位操作的移位次数分别为:0、36、3、41、18、1、44、10、45、2、62、6、43、15、61、28、55、25、21、56、27、20、39、8、14。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述二输入异或操作,所述控制模块执行以下操作:S1:所述控制模块发送第一操作数地址给所述存储模块,读取所述第一操作数地址对应的数据;S2:所述控制模块发送下载第一数据控制信号给所述运算模块,将读取的数据发送至第一寄存器;S3:所述控制模块继续发送第二操作数地址给所述存储模块,读取所述第二操作数地址对应的数据;S4:所述控制模块发送下载第二数据控制信号给所述运算模块,将读取的数据发送至第二寄存器;S5:所述控制模块最终发送运算结果控制信号,通知所述运算模块将运算结果发送给所述存储模块,并且所述控制模块同时给所述存储模块发送所述运算结果的地址和写有效的命令。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述外部操作指令为32比特,包括:8比特第一操作数地址、8比特第二操作数地址、8比特运算结果地址、8比特执行的操作指令。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述控制模块包括:空闲状态、操作命令选择状态、载入第一操作数地址状态、载入第一操作数状态、载入第二操作数地址状态、载入第二操作数状态、载入结果状态;当启动信号无效时,所述控制模块处于所述空闲状态;所述启动信号有效时,所述控制模块跳转至所述操作命令选择状态,根据操作指令的低八位选择跳转状态:所述低八位为0或1时,所述控制模块跳转至所述载入第一操作数地址状态;所述低八位为2至28时,所述控制模块跳转至所述载入第二操作数地址状态;所述控制模块跳转至所述载入第一操作数地址状态后自动跳转至所述载入第一操作数状态,进而自动跳转至所述载入第二操作数地址状态,进一步自动跳转至所述载入第二操作数状态,进一步自动跳转至所述载入结果状态,最终回到所述空闲状态。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述控制模块包括:第一输入接口、第二输入接口、第三输入接口、第四输入接口、第一输出接口、第二输出接口、第三输出接口、第四输出接口、第五输出接口、第六输出接口;所述第一输入接口输入时钟信号;所述第二输入接口输入复位信号,所述复位信号低电平有效;所述第三输入电路输入32比特的操作指令;所述第四输入电路输入启动信号;所述第一输出接口输出取第一操作数控制信号;所述第二输出接口输出取第二操作数控制信号;所述第三输出接口输出写回结果到存储模块控制信号;所述第四输出信号输出运算完成标志信号;所述第五输出接口输出存储模块地址控制信号;所述第六输出接口输出存储模块读写控制信号。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述运算模块包括:第一输入接口、第二输入接口、第三输入接口、第四输入接口、第五输入接口、第六输入接口、第七输入接口、第八输入接口、以及第一输出接口;所述第一输入接口输入时钟信号;所述第二输入接口输入复位信号,所述复位信号低电平有效;所述第三输入接口输入64比特运算模块输入数据;所述第四输入接口输入32比特操作指令;所述第五输入接口输入轮数;所述第六输入接口输入取第一操作数控制信号;所述第七输入接口输入第二操作数控制信号;所述第八输入接口输入写回结果到存储模块控制信号;所述第一输出接口输出64比特运算模块输出结果。优选地,本专利技术所述的实现安全哈希算法SHA3的装置,所述存储模块包括:第一输入接口、第二输入接口、第三输入接口、第四输入接口、以及第一输出接口;所述第一输入接口输入时钟信号;所述第二输入接口输入读写信号;所述第三输入接口输入64比特的随机存取存储器写入数据;所述第四输入接口输入随机存取存储器地址;所述第一输出接口输出64比特随机存取存储器读出数据。另,本专利技术还构造一种智能卡,所述智能卡包括上述的实现安全哈希算法SHA3的装置。实施本专利技术的实现安全哈希算法SHA3的装置及智能卡,具有以下有益效果:该装置包括:控制模块、运算模块、存储模块,其中,控制模块用于接收外部操作指令,每接收一条外部操作指令,根据外部操作指令发送相应的控制信号给运算模块和存储模块,运算模块和存储模块根据控制信号完成指定动作;运算模块根据接收到的控制信号完成各个基本逻辑运算;存储模块用于存储每一步运算的中间结果,中间结果的存储位置由控制信号提供。由于本专利技术使用微处理架构的方式实现,使用的组合逻辑非常的少,因此所占用的芯片面积也是非常小,且功耗低。由于算法的所有中间数据的存放位置都可自由定义,大大的提高使用的灵活度,适合智能卡的应用。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:本文档来自技高网...
一种实现安全哈希算法SHA3的装置及智能卡

【技术保护点】
一种实现安全哈希算法SHA3的装置,其特征在于,包括:控制模块、运算模块、存储模块,其中,所述控制模块用于接收外部操作指令,每接收一条所述外部操作指令,根据所述外部操作指令发送相应的控制信号给所述运算模块和存储模块,所述运算模块和存储模块根据所述控制信号完成指定动作;所述运算模块根据接收到的所述控制信号完成各个基本逻辑运算;所述存储模块用于存储每一步运算的中间结果,所述中间结果的存储位置由所述控制信号提供。

【技术特征摘要】
1.一种实现安全哈希算法SHA3的装置,其特征在于,包括:控制模块、运算模块、存储模块,其中,所述控制模块用于接收外部操作指令,每接收一条所述外部操作指令,根据所述外部操作指令发送相应的控制信号给所述运算模块和存储模块,所述运算模块和存储模块根据所述控制信号完成指定动作;所述运算模块根据接收到的所述控制信号完成各个基本逻辑运算;所述存储模块用于存储每一步运算的中间结果,所述中间结果的存储位置由所述控制信号提供。2.根据权利要求1所述的实现安全哈希算法SHA3的装置,其特征在于,所述基本逻辑运算的逻辑操作都按照64比特进行处理;所述存储模块为存储深度为256和数据宽度为64比特的单端口随机存取存储器。3.根据权利要求1所述的实现安全哈希算法SHA3的装置,其特征在于,所述基本逻辑运算包括:二输入异或操作、常数异或操作、二输入与操作、非操作、以及25种移位操作;所述25种移位操作的移位次数分别为:0、36、3、41、18、1、44、10、45、2、62、6、43、15、61、28、55、25、21、56、27、20、39、8、14。4.根据权利要求3所述的实现安全哈希算法SHA3的装置,其特征在于,所述二输入异或操作,所述控制模块执行以下操作:S1:所述控制模块发送第一操作数地址给所述存储模块,读取所述第一操作数地址对应的数据;S2:所述控制模块发送下载第一数据控制信号给所述运算模块,将读取的数据发送至第一寄存器;S3:所述控制模块继续发送第二操作数地址给所述存储模块,读取所述第二操作数地址对应的数据;S4:所述控制模块发送下载第二数据控制信号给所述运算模块,将读取的数据发送至第二寄存器;S5:所述控制模块最终发送运算结果控制信号,通知所述运算模块将运算结果发送给所述存储模块,并且所述控制模块同时给所述存储模块发送所述运算结果的地址和写有效的命令。5.根据权利要求4所述的实现安全哈希算法SHA3的装置,其特征在于,所述外部操作指令为32比特,包括:8比特第一操作数地址、8比特第二操作数地址、8比特运算结果地址、8比特执行的操作指令。6.根据权利要求4所述的实现安全哈希算法SHA3的装置,其特征在于,所述控制模块包括:空闲状态、操作命令选择状态、载入第一操作数地址状态、载入第一操作数状态、载入第二操作数地址状态、载入第二操作数状态、载入结果状态;当启动信号无效时,所述控制模块处于所述空闲状态;所述启动信号有效时,所述控制模块跳转至所述操作命令选择状态...

【专利技术属性】
技术研发人员:曾广旺孙金龙
申请(专利权)人:深圳华视微电子有限公司
类型:发明
国别省市:广东,44

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

1