利用密码专用指令处理器的数据加密方法、装置及设备制造方法及图纸

技术编号:33738636 阅读:7 留言:0更新日期:2022-06-08 21:36
本发明专利技术公开了一种利用密码专用指令处理器的数据加密方法,包括:对接收到的数据加密请求进行解析,得到待加密数据和目标加密算法;从算法程序集中查找目标加密算法对应的目标领域专用语言算法程序;利用预设映射工具将目标领域专用语言算法程序映射为密码专用指令汇编程序;利用密码专用指令集汇编器将密码专用指令汇编程序翻译为二进制程序文件;利用密码专用指令处理器基于二进制程序文件对待加密数据进行加密操作。应用本发明专利技术所提供的利用密码专用指令处理器的数据加密方法,减小了算法开发所需要的时间,减小了映射工具的设计难度,提升了生成程序的性能。本发明专利技术还公开了一种装置、设备及存储介质,具有相应技术效果。具有相应技术效果。具有相应技术效果。

【技术实现步骤摘要】
利用密码专用指令处理器的数据加密方法、装置及设备


[0001]本专利技术涉及信息安全
,特别是涉及一种利用密码专用指令处理器的数据加密方法、装置、设备及计算机可读存储介质。

技术介绍

[0002]随着信息技术的不断发展,数据安全问题也愈发受到关注。密码算法是应对隐私威胁的有效手段,被广泛应用在各种场景当中,比如加密存储、网络数据传输等。为兼顾通用处理器的灵活性和专用集成电路的高性能,研究人员设计了多种密码专用指令处理器。
[0003]现有技术中为实现利用密码专用指令处理器进行数据加密,开发了密码专用指令集的模拟器和汇编器,加速了用密码专用指令实现密码算法的速度,方便在通用处理器上调试密码专用指令汇编程序。但是,由于在密码专用指令处理器上仍然采用汇编语言编程,开发人员进行程序开发需要耗费大量时间。通用高级语言的运算粒度小,而密码专用指令处理器的运算粒度大,且数据类型不匹配,致使将通用高级语言编译到密码专用指令处理器的难度大、生成的程序性能低。
[0004]综上所述,如何有效地解决现有的利用密码专用指令处理器的数据加密方法,通用高级语言编译到密码专用指令处理器的难度大、生成的程序性能低等问题,是目前本领域技术人员急需解决的问题。

技术实现思路

[0005]本专利技术的目的是提供一种利用密码专用指令处理器的数据加密方法,该方法减小了算法开发所需要的时间,减小了映射工具的设计难度,提升了生成程序的性能;本专利技术的另一目的是提供一种利用密码专用指令处理器的数据加密装置、设备及计算机可读存储介质。
[0006]为解决上述技术问题,本专利技术提供如下技术方案:
[0007]一种利用密码专用指令处理器的数据加密方法,包括:
[0008]对接收到的数据加密请求进行解析,得到待加密数据和目标加密算法;
[0009]从算法程序集中查找所述目标加密算法对应的目标领域专用语言算法程序;其中,所述算法程序集中包含各加密算法与各领域专用语言算法程序之间的对应关系;
[0010]利用预设映射工具将所述目标领域专用语言算法程序映射为密码专用指令汇编程序;
[0011]利用密码专用指令集汇编器将所述密码专用指令汇编程序翻译为二进制程序文件;
[0012]利用密码专用指令处理器基于所述二进制程序文件对所述待加密数据进行加密操作。
[0013]在本专利技术的一种具体实施方式中,利用预设映射工具将所述目标领域专用语言算法程序映射为密码专用指令汇编程序,包括:
[0014]利用词法分析器扫描所述目标领域专用语言算法程序,得到目标单词流;
[0015]利用语法分析器按照领域专用语言语法规则对所述目标单词流进行抽象语法树建立,得到目标抽象语法树;
[0016]遍历所述目标抽象语法树得到源操作数位宽和目的操作数位宽;
[0017]根据所述源操作数位宽和所述目的操作数位宽确定所述目标抽象语法树中各运算符分别对应的位宽;
[0018]根据各所述运算符对应的位宽分别将各所述运算符转换为相应数量的密码专用指令;
[0019]结合所述密码专用指令处理器的体系结构对各所述密码专用指令进行调度,并对各所述密码专用指令中的操作数进行寄存器分配,得到所述密码专用指令汇编程序。
[0020]在本专利技术的一种具体实施方式中,还包括:
[0021]遍历所述目标抽象语法树进行语法规则检查。
[0022]在本专利技术的一种具体实施方式中,遍历所述目标抽象语法树进行语法规则检查,包括:
[0023]遍历所述目标抽象语法树检查是否存在被重复定义的变量名。
[0024]在本专利技术的一种具体实施方式中,在遍历所述目标抽象语法树得到源操作数位宽和目的操作数位宽之后,根据所述源操作数位宽和所述目的操作数位宽确定所述目标抽象语法树中各运算符分别对应的位宽之前,还包括:
[0025]判断所述源操作数位宽和所述目的操作数位宽是否正确;
[0026]若是,则执行所述根据所述源操作数位宽和所述目的操作数位宽确定所述目标抽象语法树中各运算符分别对应的位宽的步骤;
[0027]若否,则输出修改算法程序提示信息,当检测到对所述目标领域专用语言算法程序修改完成时,重复执行所述利用词法分析器扫描所述目标领域专用语言算法程序,得到目标单词流的步骤。
[0028]一种利用密码专用指令处理器的数据加密装置,包括:
[0029]请求解析模块,用于对接收到的数据加密请求进行解析,得到待加密数据和目标加密算法;
[0030]程序查找模块,用于从算法程序集中查找所述目标加密算法对应的目标领域专用语言算法程序;其中,所述算法程序集中包含各加密算法与各领域专用语言算法程序之间的对应关系;
[0031]程序映射模块,用于利用预设映射工具将所述目标领域专用语言算法程序映射为密码专用指令汇编程序;
[0032]程序翻译模块,用于利用密码专用指令集汇编器将所述密码专用指令汇编程序翻译为二进制程序文件;
[0033]数据加密模块,用于利用密码专用指令处理器基于所述二进制程序文件对所述待加密数据进行加密操作。
[0034]在本专利技术的一种具体实施方式中,所述程序映射模块包括:
[0035]单词流获得子模块,用于利用词法分析器扫描所述目标领域专用语言算法程序,得到目标单词流;
[0036]语法树建立子模块,用于利用语法分析器按照领域专用语言语法规则对所述目标单词流进行抽象语法树建立,得到目标抽象语法树;
[0037]操作数位宽获得子模块,用于遍历所述目标抽象语法树得到源操作数位宽和目的操作数位宽;
[0038]运算符位宽确定子模块,用于根据所述源操作数位宽和所述目的操作数位宽确定所述目标抽象语法树中各运算符分别对应的位宽;
[0039]指令获得子模块,用于根据各所述运算符对应的位宽分别将各所述运算符转换为相应数量的密码专用指令;
[0040]密码专用指令汇编程序获得子模块,用于结合所述密码专用指令处理器的体系结构对各所述密码专用指令进行调度,并对各所述密码专用指令中的操作数进行寄存器分配,得到所述密码专用指令汇编程序。
[0041]在本专利技术的一种具体实施方式中,还包括:
[0042]语法规则检查模块,用于遍历所述目标抽象语法树进行语法规则检查。
[0043]一种利用密码专用指令处理器的数据加密设备,包括:
[0044]存储器,用于存储计算机程序;
[0045]处理器,用于执行所述计算机程序时实现如前所述利用密码专用指令处理器的数据加密方法的步骤。
[0046]一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述利用密码专用指令处理器的数据加密方法的步骤。
[0047]本专利技术所提供的利用密码专用指令处理器的数据加密方法,对接收到的数据加密请求进行解析,得到待加密数据和目标加密算法;从算法程序集中查本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种利用密码专用指令处理器的数据加密方法,其特征在于,包括:对接收到的数据加密请求进行解析,得到待加密数据和目标加密算法;从算法程序集中查找所述目标加密算法对应的目标领域专用语言算法程序;其中,所述算法程序集中包含各加密算法与各领域专用语言算法程序之间的对应关系;利用预设映射工具将所述目标领域专用语言算法程序映射为密码专用指令汇编程序;利用密码专用指令集汇编器将所述密码专用指令汇编程序翻译为二进制程序文件;利用密码专用指令处理器基于所述二进制程序文件对所述待加密数据进行加密操作。2.根据权利要求1所述的利用密码专用指令处理器的数据加密方法,其特征在于,利用预设映射工具将所述目标领域专用语言算法程序映射为密码专用指令汇编程序,包括:利用词法分析器扫描所述目标领域专用语言算法程序,得到目标单词流;利用语法分析器按照领域专用语言语法规则对所述目标单词流进行抽象语法树建立,得到目标抽象语法树;遍历所述目标抽象语法树得到源操作数位宽和目的操作数位宽;根据所述源操作数位宽和所述目的操作数位宽确定所述目标抽象语法树中各运算符分别对应的位宽;根据各所述运算符对应的位宽分别将各所述运算符转换为相应数量的密码专用指令;结合所述密码专用指令处理器的体系结构对各所述密码专用指令进行调度,并对各所述密码专用指令中的操作数进行寄存器分配,得到所述密码专用指令汇编程序。3.根据权利要求2所述的利用密码专用指令处理器的数据加密方法,其特征在于,还包括:遍历所述目标抽象语法树进行语法规则检查。4.根据权利要求3所述的利用密码专用指令处理器的数据加密方法,其特征在于,遍历所述目标抽象语法树进行语法规则检查,包括:遍历所述目标抽象语法树检查是否存在被重复定义的变量名。5.根据权利要求2至4任一项所述的利用密码专用指令处理器的数据加密方法,其特征在于,在遍历所述目标抽象语法树得到源操作数位宽和目的操作数位宽之后,根据所述源操作数位宽和所述目的操作数位宽确定所述目标抽象语法树中各运算符分别对应的位宽之前,还包括:判断所述源操作数位宽和所述目的操作数位宽是否正确;若是,则执行所述根据所述源操作数位宽和所述目的操作数位宽确定所述目标抽象语法树中各运算符分别对应的位宽的步骤;若否,则输出修改算法程序提示信息,当检测到对所述目标领域专用语言算法程序修改完成时,重复执行所述利用词...

【专利技术属性】
技术研发人员:李伟吴艾青别梦妮陈韬南龙梅杜怡然金羽
申请(专利权)人:中国人民解放军战略支援部队信息工程大学
类型:发明
国别省市:

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

1