[发明专利]一种用于加密解密的方法和处理器有效
申请号: | 201510946603.5 | 申请日: | 2015-12-16 |
公开(公告)号: | CN106888082B | 公开(公告)日: | 2019-09-10 |
发明(设计)人: | 陈钢;闫昆;李娜;魏伟波;魏鑫;张志刚;王杰;王颖;舒毅;吕宗辉;于润泽 | 申请(专利权)人: | 北京京航计算通讯研究所 |
主分类号: | H04L9/06 | 分类号: | H04L9/06 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 周恒 |
地址: | 100074 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明实施例公开的用于加密解密的方法和处理器,涉及加密解密技术,有效减少AES在FPGA的实现中占用的逻辑单元数。把输入数据存放在输入数据寄存器中,更新数据存储地址addr=addr1+addr8;如循环计数器小于该指令中的循环计数,变址寄存器和循环计数器分别加一,然后转移到addr8指定的指令地址,循环计数器置0,实现0到15范围内的循环操作;在进行寄存器写操作的同时把该寄存器原有数据保留到另一个寄存器,把存储器到寄存器的读取操作和该寄存器到另一寄存器的写操作组合在同一条指令中,用6条指令实现一个16次循环的程序块,用于加密解密。 | ||
搜索关键词: | 一种 用于 加密 解密 方法 处理器 | ||
【主权项】:
1.一种用于加密解密的处理器,其特征在于,包括:秘钥生成模块和加密、解密模块;其中,所述秘钥生成模块,用于通过第一指令启动端口数据读入操作,并设置数据存储器ram的写操作使能为1,并把输入数据存放在数据存储器ram的输入数据寄存器中,以便下一时钟周期把输入数据读入数据存储器,所述第一指令用指令中的地址addr8域和变址寄存器addr1更新数据存储地址:addr=addr1+addr8;第二指令在循环计数器cnt2小于该指令中的循环计数cntv的条件下把变址寄存器addr1和循环计数器cnt2分别加一,然后转移到addr8指定的指令地址,循环计数器cnt2置0,所述第一指令和所述第二指令相结合实现0到15范围内的循环操作;所述加密、解密模块,用于AES加密和解密过程中,在进行寄存器写操作的同时把该寄存器原有数据保留到另一个寄存器,把存储器到寄存器的读取操作和该寄存器到另一寄存器的写操作组合在同一条指令中,以实现两个并行的寄存器数据转移操作;用6条指令实现一个16次循环的程序块,该程序块能够完成数据存储区中的待加密文本数据同密钥做XOR操作并且把结果放回数据存储区,用以实现AES算法中的Add Roundkey操作,以上所涉及指令的结构包括操作符op、循环计数cntv和地址addr8;所述用6条指令实现一个16次循环的程序块为:指令A和指令B进行循环的初始化,循环终结指令9做循环结束判断并且在未结束的情况下将控制跳转到指令B的下一条指令,循环次数通过指令C的cntv域设定为16进制的F,表示向后跳转15次,循环体总计执行16次,文本数据和密钥数据通过指令D的两次调用读取,指令D的第一次调用读取文本数据到输出数据缓存寄存器mem_out,第二次调用读取密钥数据到输出数据缓存寄存器mem_out,同时把原先输出数据缓存寄存器mem_out中数据转储到通用数据寄存器reg8,指令E把输出数据缓存寄存器mem_out和通用数据寄存器reg8两个寄存器的内容做XOR操作并保存在写入数据缓存寄存器mem_in,同时把写入地址保存在addr,下一个时钟上升沿将把数据写入数据存储器,在这一过程中,指令D和指令E均同时执行多项并行操作。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京航计算通讯研究所,未经北京京航计算通讯研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510946603.5/,转载请声明来源钻瓜专利网。
- 上一篇:动画控制方法、装置及终端
- 下一篇:一种动画生成方法和装置