[发明专利]一种基于XML描述的安全协议代码自动实现系统有效
申请号: | 201110008729.X | 申请日: | 2011-01-17 |
公开(公告)号: | CN102055770A | 公开(公告)日: | 2011-05-11 |
发明(设计)人: | 李兴华;李帅团;李登;马建峰;李光松;马卓;姜奇;张俊伟;尚昭辉 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;G06F9/45 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 xml 描述 安全 协议 代码 自动 实现 系统 | ||
技术领域
本发明属于通信协议工程学领域,涉及一种基于XML描述的安全协议代码自动实现系统,具体地说是针对传统的安全协议手工编码过程中存在的各种问题,提出一种将安全协议的代码实现过程自动化的方案,以避免在传统手工编码中容易引入的缺陷,并极大的减少实现安全协议的时间开销。
背景技术
随着网络应用的飞速发展,接踵而至的是各种纷繁的安全问题,为了能在一个不安全的网络环境下提供安全的通信服务,提出了安全协议的概念。安全协议(密码协议)运用密码学方法实现与安全相关的功能,它定义了两个或者多个参与实体之间进行数据通信的规则集,以达到诸如身份认证,密钥分配等目的。
安全协议从最初的设计到最后正式投入使用,一般都会经历如图1所示的三个阶段:(1)设计分析;(2)编码实现;(3)协议测试。
在设计分析阶段,如何保证安全协议的正确性是比较棘手和易错的,有相当数量曾经认为是安全的协议经过若干年后被证明是不安全的。为了降低协议出错的可能性,在过去的几十年里,研究人员在该领域做了大量的工作,并提出了不少安全协议形式化设计与证明的方法。
在协议测试阶段也有不少方法,既有基于传统软件工程的黑盒测试和白盒测试,还有专门针对安全协议的测试方法,如一致性测试和安全性测试,而且这些方法大部分是靠机器自动化实现的。
而对于从安全协议设计分析到测试阶段起桥梁作用的代码实现,却仍然停留在手工编码水平,研究人员未对此开展广泛和深入的研究。手工编码效率低,存在大量重复性的工作,人工代价较高,这就影响了整个协议设计开发的速度。而且该过程是由程序员根据自己对协议的理解进行编码,而这些理解多来自于安全协议的非形式化描述,与抽象的形式化验证模型不太相关,从而导致协议实现的安全性与形式化验证阶段的安全性不一致。另外,手工编码难免会引入编程错误(如调用了不安全的函数,缓冲区溢出等)。因此,即使是对于已证明安全的协议,上述原因也使得最终实现的协议的安全性难以保证。由此可见,依靠传统方法要高效、正确地实现对安全协议的编码对程序员来说是一项有挑战性的工作。
对于已经证明安全的协议,如果可以设计一个编译器(解释器)来将协议的代码实现这一过程自动化,将会节约大量人工成本,从而投入更多的精力专注于安全协议的设计及测试;将设计的协议快速转化为代码实现,结合安全性的测试方法,可以提高协议设计开发的效率,缩短整个过程所需时间;对于某些对协议效率要求很高的应用来说,如果能够很快将设计的协议转化为代码进行部署,就可以快速验证所设计协议的有效性,从而加速设计出满足应用需求的协议;即使自动化实现的代码不能够被直接使用,也可以给编程人员提供参考,减少编程人员的工作量;同时,在自动化工具设计时可以避免调用那些不安全的函数(如:C语言中的strcpy()等),这在一定程度上提高了代码的安全性;另外,该工具对于那些编程水平不高的人员(如:从事科研的研究人员或高校学生)以及对代码质量要求不是很高的应用来说,也是有意义的。
安全协议自动化实现过程大致可分为两个步骤,如图2所示。首先,基于某种安全协议分析方法,采用一种安全协议形式化描述语言,对其进行形式化描述,并设计一个安全协议自动化分析工具,用于协议的安全性分析;其次,设计一种基于安全协议形式化描述的代码自动化实现工具,如:编译器或解释器。
而目前的研究人员在安全协议的代码自动化实现方面已经做了一些探索,但其中大多都采用了一些专用的形式化描述语言,而且都做了不同程度的条件限定,以牺牲部分灵活性为代价来便于编译器(解释器)的设计实现;选定了某一种特定语言作为安全协议实现目标语言;限定了安全操作算法和运算可选择性等,这些都限制了安全协议代码自动化实现的适用范围及使用环境。
发明内容
本发明的目的在于克服上述缺陷,采用XML作为安全协议形式化描述语言,并在此基础上设计开发了一个安全协议解释器,该解释器可以根据需要从安全协议的XML描述生成安全协议的多目标语言代码实现,如面向对象的Java、C#等以及非面向对象的C语言。同时,为了进一步提高代码生成的速度和降低对工具使用者的要求,将安全协议的XML描述过程通过一些简单的界面配置操作自动化。
本发明的目的是这样实现的:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110008729.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:机车轮对全周外形尺寸在线动态检测装置
- 下一篇:安全车轮