[发明专利]一种采用流水线方式实现SM4密码算法的系统及方法在审
申请号: | 201811274070.0 | 申请日: | 2018-10-30 |
公开(公告)号: | CN109299614A | 公开(公告)日: | 2019-02-01 |
发明(设计)人: | 李宏耀 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | G06F21/60 | 分类号: | G06F21/60;H04L9/06 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 祁恒 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 流水线方式 加密/解密 密码算法 密钥生成模块 信息安全技术 硬件门电路 大数据量 高实时性 逻辑单元 生成模块 应用需求 轮数据 对轮 消耗 优化 | ||
本发明属于信息安全技术领域,具体涉及一种采用流水线方式实现SM4密码算法的系统及方法。本发明提高了加密/解密的速度,可满足大数据量、高实时性的加密/解密应用需求;同时通过对轮密钥生成模块和轮数据生成模块的优化,减少了FPGA硬件门电路中的逻辑单元的消耗。
技术领域
本发明属于信息安全技术领域,具体涉及一种采用流水线方式实现SM4密码算法的系统及方法。
背景技术
随着计算机网络及通信技术的迅速发展,信息安全问题受到越来越多的关注,信息安全问题已经被我国政府提高到了国家发展战略的层次。对于企业及技术研发者来说,核心数据或研发的核心软件也时刻面临着被轻易复制盗窃的巨大风险。因此,需要使用安全的密码算法对核心数据或核心软件进行加密保护。
SM4密码算法于2012年被中国国家商用密码管理局确定为国家密码行业标准,标准编号为GM/T0002-2012。SM4密码算法是一种分组密码算法,分组长度为128比特,密钥长度为128比特。即SM4密码算法是每次输入128比特的数据,经过一系列的处理后,最后输出另一个不同的128比特的数据。
一般的,SM4密码算法可使用C、JAVA等语言工具编写软件模块实现,这是一种软件加密实现方法。SM4密码算法也可使用FPGA硬件门电路实现,这是一种硬件加密实现方法。硬件加密比软件加密具有速度更快的优点。
使用FPGA硬件门电路实现SM4密码算法时,往往是使用简单的逻辑电路来实现,这种实现方法具有消耗逻辑单元多、处理时间长、加密/解密速度慢的缺点,满足不了大数据量、高实时性的加密/解密处理需求。
发明内容
(一)要解决的技术问题
本发明提出一种采用流水线方式实现SM4密码算法的系统及方法,以解决如何克服FPGA硬件门电路中使用简单的逻辑电路实现SM4密码算法时消耗逻辑单元多、处理时间长、加密/解密速度慢的技术问题。
(二)技术方案
为了解决上述技术问题,本发明提出一种采用流水线方式实现SM4密码算法的系统,该系统包括输入信息存储器、输出信息存储器、加密/解密控制信号寄存器、轮密钥生成控制信号寄存器、密钥寄存器、启动控制信号寄存器、同步时钟生成模块、双字顺序调整模块、轮密钥生成模块和轮数据生成模块;其中,
输入信息存储器和输出信息存储器,分别用于存储输入的数据和输出的数据;
加密/解密控制信号寄存器,用于寄存加密/解密的控制信号,该控制信号决定系统进行加密操作或解密操作;
轮密钥生成控制信号寄存器,用于寄存轮密钥生成模块的启动信号,该启动信号决定轮密钥生成模块是否启动工作状态;
密钥寄存器,用于系统的加密/解密;
启动控制信号寄存器,用于寄存同步时钟生成模块的控制信号,该控制信号决定同步时钟生成模块启动工作或停止工作;
同步时钟生成模块,用于为轮数据生成模块提供基准的同步时钟,同步时钟生成模块受启动控制信号寄存器的启动控制信号的控制,依据不同的启动控制信可进入工作状态或停止工作状态;
双字顺序调整模块,用于对输入数据进行双字序调整并对调整后的数据进行输出;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811274070.0/2.html,转载请声明来源钻瓜专利网。