1. 研究目的与意义
ASN.1广泛应用于现代通信、信息系统中,用于描述系统间交互的抽象信息数据和规范数据编码规则。在ASN.1应用系统的开发过程中,系统内平台需要将ASN.1描述的抽象数据语法转换为与平台相关的应用语言语法,以及实现与传输语法相关的编解码函数。现代的ASN.1应用系统开发均借助ASN.1编译器,完成ASN.1抽象语法到平台相关语言的转变过程,ASN.1编译器给开发工作带来了极大的便利,缩短了开发周期,提高了代码效率,减少了缺陷引入。
2. 国内外研究现状分析
目前asn.1工具基本覆盖了所有的操作系统,不仅能完成当前主流应用语言如java、c、c 的编译,同时还支持cobol等早期的应用语言。现在asn.1已经广泛应用于150种不同的系统平台中。
较为成功的asn.1商用化编译器有:1、oss公司的ossasn.1tools具有比较完善的asn.1编译功能,能生成相应的编解码函数库,支持1994/1997/2002版本的asn.1标准,及ber、der、per、ecn、xer和exterded等系列编码规则。同时支持目标语言为c、c 、java等。2、objectivesystems公司的asn.1ccompiler支持1994/1997/2002版本的asn.1标准,ber、der、per、xer编码规则。支持目标语言为c、c 、java、c#等。
目前国内尚无成熟的asn.1应用工具商用,仅少数大学、科研所的学者在asn.1编译器方面有所研究。国外商用化的asn.1工具价格昂贵,国内中小型企业、科研单位往往无力承担其使用费用。
3. 研究的基本内容与计划
在ASN.1编译器前端的设计与实现,在此基础上实现了ASN.1工具的功能,BER自动编解码。首先介绍ASN.1的抽象语法及其编码规则,然后结合编译理论以及ASN.1文法规范,分析了ASN.1的词法、语法规则,在此基础上给出了本文ASN.1编译器前端的设计方案,结合ASN.1的BER编码规则,给出实现BER自动编解码方案的过程以及其中相关算法的优化比较,最后介绍软件界面实现,BER编解码图形接口实现等。
4. 研究创新点
设计的ASN.1语法分析与自动编解码软件是一个ASN.1工具,用来处理使用ASN.1描述的数据结构,其包含ASN.1编译器前端功能,在编译器前端基本上,引入PUD结构模板用于承载编译器前端的输出结果。
