安全协议分析的形式化理论与方法
【摘要】:安全的密码协议是网络通信和应用必不可少的组件之一,是构筑信息安全体系的基础。设计安全和有效的密码协议是协议工程领域中的主要研究内容。在设计、描述(建模)、验证、性能分析、实现、测试和维护等协议工程的各个环节中,协议验证是最为关键的一个环节。协议分析和协议综合是实现协议验证的两种有效途径,前者更为有效和实用。
自上个世纪七十年代末以来,人们提出多种安全协议分析的形式化理论,包括Dolev-Yao模型、模态逻辑、Paulson归纳法、串空间模型以及Spi演算理论等,并从这些理论中归纳出基于模态逻辑推理、基于模型状态检验、基于定理证明和基于类型检测等安全目标验证方法。前两类方法只能推理密码协议的不安全性,不能给出其安全目标的可信证明,而后一类方法又不具有完备性,唯有基于定理证明的安全目标验证方法试图给出密码协议的安全性证明。
本文在基于定理证明的安全协议形式化建模方面系统地研究了安全协议的消息语句空间和消息事件空间的性质、主体进程表示理论以及安全目标的分类、形式化描述和安全协议的可验证性等问题,主要工作和贡献如下:
1.研究消息语句空间性质,提出用于消息语句结构定性和定量分析的理论与方法。消息语句空间及其语句运算构成消息代数。其语句运算包括f-语句运算、求逆密钥运算以及语句的加密和连接运算。这些运算可以完备地生成现有安全协议运行中主体角色(包括攻击者)的各种消息语句。消息代数中的代数运算规则和子句关系是定量和定性语句结构分析的理论工具。
2.研究消息事件空间性质,提出用于消息事件动态分析的消息交换关系理论。由利用前驱关系排序主体角色消息事件集中的消息事件得到的消息事件序列为进程顺序合成运算提供了语义模型。通过定义可达路径对特征消息语句单元在消息交换中的迁移状况的刻画,给出组合(并发运行)协议中的主协议(观察对象)保持其独立性的判定定理。