[发明专利]一种分组密码编程语言及编译基础设施的设计方法在审
申请号: | 202010356206.3 | 申请日: | 2020-04-29 |
公开(公告)号: | CN111522556A | 公开(公告)日: | 2020-08-11 |
发明(设计)人: | 李盛 | 申请(专利权)人: | 铁道警察学院 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/30;H04L9/06 |
代理公司: | 郑州慧广知识产权代理事务所(特殊普通合伙) 41160 | 代理人: | 董晓慧 |
地址: | 450000 河*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分组 密码 编程 语言 编译 基础设施 设计 方法 | ||
本发明公开了一种分组密码编程语言及编译基础设施的设计方法,包括:获取用户输入的分组密码程序代码;编译基础设施将获取的所述分组密码程序代码进行处理,生成特定目标机指令代码文件。该方法能够生成特定目标机指令输出文件,便于分组密码的实现。
技术领域
本发明涉及计算机信息安全技术领域,特别涉及一种分组密码编程语言及编译基础设施的设计方法。
背景技术
随着《中华人民共和国密码法》的颁布,信息安全工作已经成为国家法律体系下的强制性工作,嵌入式设备的推广,特别是各类穿戴式手持式设备的普及,使得加密设备由大型化走向芯片化。现有的分组密码芯片在应用的过程中,面临着一个困境,即分组密码算法程序代码难以使用分组密码芯片的指令集编写,而采用通用高级编程语言编写代码缺乏软件编译器支持,无法直接操作分组密码芯片的功能单元实现信息加密。现有的专用分组密码编程语言及编译工具虽然可以实现分组密码程序代码在通用芯片中解释执行,但是无法实生成特定芯片(目标机)的指令输出文件。
发明内容
本发明提供一种分组密码编程语言及编译基础设施的设计方法,便于分组密码的实现。
本发明的技术方案如下:
本发明提供一种分组密码编程语言及编译基础设施的设计方法,包括:
获取用户输入的分组密码程序代码;
编译基础设施将获取的所述分组密码程序代码进行处理,生成特定目标机指令代码文件。
优选的,所述编译基础设施包括词法分析器、语法分析器、语义分析器和错误列表。
优选的,所述的编译基础设施将获取的所述分组密码程序代码进行处理,生成特定目标机指令代码文件,包括:
所述词法分析器读取输入的分组密码程序代码,识别并判断所述分组密码程序代码的各类符号是否有误,若有误则停止编译,并向错误列表返回错误信息;若无误,则输出所识别的符号;
所述语法分析器读取词法分析器输出的符号,识别符号之间的关系,并判断符号组成的关系是否有误,若有误则停止编译,并向错误列表返回错误信息;若无误,则输出符号关系表达式;
所述语义分析器读取语法分析器输出的符号关系表达式,并判断语义关系是否有误,若有误则停止编译,并向错误列表返回错误信息;若无误,则根据机器描述文件,生成特定目标机指令代码文件。
优选的,所述的目标机为分组密码芯片。
优选的,还包括:目标机获取所述的特定目标机指令代码文件,所述目标机的功能单元将所述特定目标机指令代码文件进行处理,执行分组密码运算,输出密文或明文。
本发明实施例的一些有益效果可以包括:
密码算法在专用指令集处理器中的实现依赖编程语言和编译工具的支持,现有技术无法生成特定目标机指令输出文件,利用本发明所提出的分组密码编程语言编写分组密码代码,可以较为快捷的编写分组密码算法程序代码,结合配套的利用编译基础设施读取程序代码,可编译输出特定目标机指令代码文件,该指令代码文件可以直接操作特定目标机的运算功能单元,目标机实现对数据的加密或解密计算,可以提高编程的灵活性,降低应用密码学研究人员在编写算法实现代码时的复杂度。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于铁道警察学院,未经铁道警察学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010356206.3/2.html,转载请声明来源钻瓜专利网。