利索能及
我要发布
收藏
专利号: 2017105099888
申请人: 中南民族大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种Swift语言实施的安全协议的安全性验证方法,其特征在于,包括以下步骤:映射建模步骤,建立Swift语言到Blanchet演算的映射模型,并根据映射模型建立Swift语言语句到Blanchet演算语句、类型的BNF映射规则;

实施抽取步骤,从Swift语言实现的安全协议实施中抽取出自动化验证工具CryptoVerif可以识别的安全协议形式化语言Blanchet演算实施;

安全验证步骤,根据自动化验证工具CryptoVerif的输入语法,向从安全协议Swift语言实施中抽取出来的安全协议Blanchet演算实施添加安全性验证目标,然后在CryptoVerif中进行安全性分析。

2.根据权利要求1所述的一种Swift语言实施的安全协议的安全性验证方法,其特征在于,所述映射建模步骤中,建立Swift语言到Blanchet演算的映射模型包括:将Swift语言中的套接字声明转化为Blanchet演算中的通道声明;

将Swift语言中的消息发送和接收接口映射至Blanchet演算中的通道输出和通道输入;

将Swift语言中的类型声明、变量/常量声明、方法声明、语句等分别映射至Blanchet演算中的类型声明、创建项声明、函数声明、语句。

3.根据权利要求1所述的一种Swift语言实施的安全协议的安全性验证方法,其特征在于,所述映射建模步骤中,根据映射模型建立Swift语言语句到Blanchet演算语句规则包括:将Swift语言中的常量映射为Blanchet演算中的常量;

将Swift语言中的变量映射为Blanchet演算中的项;

将Swift语言中的赋值表达式映射为Blanchet演算中的let…in语句;

将Swift语言中的逻辑表达式映射为Blanchet演算中的逻辑表达式cond。

4.根据权利要求1所述的一种Swift语言实施的安全协议的安全性验证方法,其特征在于,所述映射建模步骤中,根据映射模型建立Swift语言语句到Blanchet演算语句规则包括:在转换Blanchet演算模型过程中,忽略Swift语言中的import导入包;

将Swift语言中的常量声明转换为Blanchet演算中的new语句;

将Swift语言中的未初始化的变量声明映射为Blanchet演算中的new语句;

将Swift语言中的已初始化的变量声明映射为Blanchet演算中的let…in语句;

将Swift语言中的函数声明function_declaration:func f(x:T,...){fun_body;}转换为Blanchet演算中对应的函数fun ident(seq):T[compos].;

将Swift语言中的类声明转换为Blanchet演算中的进程。

5.根据权利要求1所述的一种Swift语言实施的安全协议的安全性验证方法,其特征在于,所述映射建模步骤中,根据映射模型建立Swift语言语句到Blanchet演算语句规则包括:将任意一条Swift语句statement:S转换为Blanchet演算中输入或输出进程中的语句

6.根据权利要求1所述的一种Swift语言实施的安全协议的安全性验证方法,其特征在于,所述映射建模步骤中,根据映射模型建立Swift语言中的数据类型与Blanchet演算的映射规则包括对于Swift语言中的基本数据类型,在Blanchet演算中声明一个同名的数据类型,直接进行调用;

对于Swift语言中与密码体制、签名机制相关的数据类型需映射到Blanchet演算中对应的密码体制、签名机制中的数据类型。