一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于密码协议实现的逻辑安全检测方法与流程

2022-03-16 02:39:34 来源:中国专利 TAG:

基于密码协议实现的逻辑安全检测方法
【技术领域】
1.本发明属于信息安全技术领域,具体涉及基于密码协议实现的逻辑安全检测方法。


背景技术:

2.安全协议是以密码学为基础的消息交换协议,其目的是在网络环境中提供各种安全服务。密码学是网络安全的基础,但网络安全不能单纯依靠安全的密码算法。安全协议是网络安全的一个重要组成部分,我们需要通过安全协议进行实体之间的认证、在实体之间安全地分配密钥或其它各种秘密、确认发送和接收的消息的非否认性等。
3.密码协议的安全性是依赖于数学困难问题,这仅仅是理论上的安全。为了保证密码协议设计与实现上的安全,学者们提出了诸多方法来分析密码协议安全,形式化分析、计算模型和计算可靠的形式化分析方法,这些方法其本质上还是属于理论上的安全证明,为了缩小密码协议理论与实现安全之间的差距,提出形式化的符号执行分析工具,例如,密码协议分析的形式化分析工具有scyther、 tamarin、proverif和基于计算模型cryptoverif工具。它们用于分析密码协议实现的代码模型提取、代码自动生成、操作语语义分析和精化验证,这些密码协议分析工具在缩小密码协议理论与实现的安全之间的差距起到了关键作用,但是并没有解决密码协议成为软件(程序)实现时的安全性问题。
4.申请人发现,密码协议软件(程序)实现的安全性没有解决,导致许多动态感知安全问题时常频频发生,其中最典型态势感知安全问题的是隐私泄露和网络攻击(ddos攻击、代码重用攻击以及病毒攻击等),这些态势感知安全问题严重影响网络空间信息的安全。


技术实现要素:

5.为了解决背景技术中存在的现有问题,本发明提供基于密码协议实现的逻辑安全检测方法,通过引入数理逻辑规则和逻辑证明、π-演算移动通信系统规则,分析密码协议实现的安全性,缩小密码协议理论安全与实现安全之间的安全差距,提高网络空间中信息传输的安全性。
6.本发明采用以下的技术方案:
7.基于密码协议实现的逻辑安全检测方法,包括以下步骤实现:
8.s01:根据密码协议将要达成的安全目标,设计或改进密码协议;
9.s02:获取密码协议,实行编码;
10.s03:在不同的平台上运行密码协议,实现其行为轨迹和特征提取;
11.s04:分析密码协议存在的逻辑安全,构建密码协议实现的逻辑安全检测模型;
12.s05:以密码协议代码实现的安全性为前提,设计应用于新环境的新密码协议,逻辑安全检测模型对新密码协议实现时进行安全性检测,缩小密码协议理论安全与实现安全的差距。
13.进一步的,步骤s01具体为:基于密码学(数学困难问题:大整数因式分解、离散对
数以及椭圆曲线等)设计新的密码协议或改进现有的密码协议,其中新的密码协议是密钥协商协议和密钥交换协议,现有的密码协议是diffie-hellman算法、hmqv和 needham-schroeder等。
14.进一步的,步骤s02具体为:根据密码协议选择编程语言,对设计或改进的密码协议实行编码。
15.进一步的,步骤s04具体为:分析密码协议存在的逻辑安全具体包括引入逻辑学、π-演算理论、知识图谱和大数据技术,主要引入数理逻辑包括逻辑规则和逻辑证明,结合π-演算理论中强模拟、观察等价和结构同余计算以及大数据技术协同运算,运用到密码协议设计、编码和实现上,构建密码协议实现的逻辑安全检测模型。
16.进一步的,在步骤s05具体为:首先将密码协议实现的逻辑安全检测模型运用在新环境中设计成的新密码协议,该新环境包括云计算、大数据以及5g物联网,然后提取新密码协议在不同平台上实现的行为特征,分析提取的特征发现或预防密码协议实现的漏洞产生以及利用漏洞攻击的不安全事件,并通过逻辑安全检测模型对新的密码协议实现时进行安全性检测,缩小密码协议理论安全与实现安全之间的差距。
17.本发明的有益效果如下:
18.在基于数学困难问题作为设计密码协议实现时的安全理论基础,在不同平台上运行已经编码完成的密码协议,对密码协议代码实现的轨迹和特征进行获取;针对由自身存在缺陷的程序语言编码的密码协议软件(程序),把逻辑规则推理、逻辑规则证明和π
‑ꢀ
演算理论引入到其实现阶段构建形成密码协议实现的逻辑安全检测模型,分析密码协议存在的逻辑安全;针对密码协议软件(程序)时的函数调用,通过知识图谱、逻辑规则推理、逻辑规则证明发现密码协议软件(程序)实现的异常行为,从而检测出其是否遭受攻击;提取密码协议软件(程序)在不同平台上实现时的行为特征,通过大数据技术(数据挖掘、机器学习和人工智能等)分析提取的特征发现或预防密码协议软件实现的漏洞产生和利用漏洞攻击等不安全事件,缩小密码协议理论安全与实现安全的差距。
【附图说明】
19.图1为本发明基于密码协议实现的逻辑安全检测方法的流程示意图;图2为本发明基于密码协议实现的逻辑安全检测方法实施例中 diffie-hellman协议交互过程示意图;图3为本发明基于密码协议实现的逻辑安全检测方法实施例中 socket通信的tcp连接流程图;图4为本发明基于密码协议实现的逻辑安全检测方法实施例中 diffie-hellman协议交互流程图;图5为本发明基于密码协议实现的逻辑安全检测方法实施例中 a和b共享密钥的计算流程图;图6为本发明基于密码协议实现的逻辑安全检测方法实施例中 tcp连接的状态迁移图;图7为本发明基于密码协议实现的逻辑安全检测方法实施例中 diffie-hellman协议交互式密钥协商状态迁移图;
图8为本发明基于密码协议实现的逻辑安全检测方法实施例中 a和b共享密钥的计算流程状态迁移图;图9为本发明基于密码协议实现的逻辑安全检测方法实施例中 diffie-hellman协议整体状态迁移图。
【具体实施方式】
20.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后
……
)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
22.另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
23.在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
24.另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
25.参阅图1是本发明的一种基于密码协议实现的逻辑安全检测方法,包括以下步骤实现:
26.s01:根据密码协议将要达成的安全目标,设计或改进密码协议;详细的,密码协议的安全基于密码学(数学困难问题:大整数因式分解、离散对数以及椭圆曲线等)设计新的密码协议或改进现有的密码协议,其中新的密码协议是密钥协商协议和密钥交换协议,现有的密码协议是diffie-hellman算法、hmqv和needham-schroeder 等。
27.s02:获取密码协议,实行编码;具体为:根据密码协议选择合适的编程语言,对设计或改进的密码协议实行编码,由于兼顾物联网设备嵌入式,一般选择c语言。
28.s03:在不同的平台上运行密码协议,实现其行为轨迹和特征提取,其中,运行平台可以是pc平台(widows、linux和mac系统等)、.移动平台(ios、android和webos等)或.物联网嵌入式设备。
29.s04:分析密码协议存在的逻辑安全,构建密码协议实现的逻辑安全检测模型;这是最为关键的部分,具体为:分析密码协议存在的逻辑安全具体包括引入逻辑学、π-演算理论、知识图谱和大数据技术,主要引入数理逻辑包括逻辑规则和逻辑证明,结合π-演算理论
中强模拟、观察等价和结构同余计算以及大数据技术协同运算,运用到密码协议设计、编码和实现上,构建密码协议实现的逻辑安全检测模型。
30.s05:以密码协议代码实现的安全性为前提,设计应用于新环境的新密码协议,逻辑安全检测模型对新密码协议实现时进行安全性检测,缩小密码协议理论安全与实现安全的差距;具体为:首先将密码协议实现的逻辑安全检测模型运用在新环境中设计成的新密码协议,该新环境包括云计算、大数据以及5g物联网,然后提取新密码协议在不同平台上实现的行为特征,分析提取的特征发现或预防密码协议实现的漏洞产生以及利用漏洞攻击的不安全事件,并通过逻辑安全检测模型对新的密码协议实现时进行安全性检测,缩小密码协议理论安全与实现安全之间的差距,从而为新环境信息交换提供安全的密码协议,保障通信的信息安全。
31.以下通过实例的步骤举例说明:
32.以diffie-hellman协议为实例,构建密码协议实现的逻辑安全检测模型,共分为协议建立(基于离散对数的数学困难问题);程序语言编码;协议代码实现;模型建立四个部分。
33.第一部分:理论建立diffie-hellman协议,具体建立步骤如下:
34.1.根据离散对数困难问题:已知给定x,求非常简章,如果已知y,求是一个数学困难问题。
35.2.diffie-hellman协议描述:a和b协商一个大的素数n和g,g 是模n的本原元。协议如下:
36.(1)a选取一个大的随机数x并且发送b信息x=g
x mod n。
37.(2)b选取一个大的随机数y并且发送a信息y=g
y mod n。
38.(3)a计算k=y
x mod n=(gy)
x mod n。
39.(4)b计算k=x
y mod n=(g
x
)
y mod n。
40.最后得到共享密钥k=x
y mod n=(g
x
)
y mod n,具体的流程图如下图2所示。
41.第二部分:基于c语言和socket对diffie-hellman协议编码。运行环境openssl、window 10、visual studio2010。diffie-hellman 协议编码如下。
42.1阶段:建立tcp链接。
43.a向b链接:a》》b
[0044][0045]
b向a链接:b》》a
[0046][0047]
2阶段:diffie-hellman协议交互密钥协商。
[0048]
a向b握手:a》》b
[0049][0050]
b向a握手:b》》a
[0051][0052]
3阶段:通信双方a和b的共享密钥计算。
[0053]
a端计算共享密钥k=y
x
mod n=(gy)
x
mod n
[0054][0055]
b端计算共享密钥k=xymod n=(g
x
)ymod n
[0056][0057]
第三部分:流程图与状态迁移图。首先,根据图2程序执行顺序和基于socket通信的tcp协议原理可知,构建程序执行的流程图。协议交互的执行过程分为三个阶段:一是socket通信的tcp连接;二是diffie-hellman协议交互;三是通信双方a和b共享密钥的计算。构建流程图分别如下。
[0058]
1.socket通信的tcp连接流程图,如图3所示:
[0059]s′
ai
和s

bi
分别表示a与b通信端的调用函数,两端都是从main()开始,通过握手方式建立tcp连接。
[0060]
2.diffie-hellman协议交互流程图,如图4所示:
[0061]
diffie-hellman协议交互式密钥协商,s

ai
和s

bi
分别表示a与b 通信端的调用函数,通过交互方式建立发送共享密钥信息。
[0062]
3.a和b共享密钥的计算流程图,如图5所示:
[0063]
a和b共享密钥的计算,s

ai
和s

bi
分别表示a与b通信端的调用函数,通过交互方式得到的共享信息计算密钥。
[0064]
根据π-演算理论,以函数调用的返回值作为输入条件,分别构建对应的状态迁移图。以下分别用υj表示被调用函数对应的返回值,下标分别对应通信双方a和b。
[0065]
4.tcp连接的状态迁移,如图6所示。
[0066]
5.diffie-hellman协议交互式密钥协商状态迁移,如图7所示。
[0067]
6.a和b共享密钥的计算流程状态迁移,如图8所示。
[0068]
7.从diffie-hellman协议设计到代码实现的流程可知,整个过程的状态迁移分为三个阶段:一是tcp连接的状态迁移,称为tcpconnection status阶段(简称tcs);二是diffie-hellman协议交互式密钥协商状态迁移,称为dh interaction status阶段(简称dhis);三是a和b共享密钥的计算流程状态迁移。称为shared keyscalculation阶段(简称skc)。以tcs、dhis和skc为节点,构建其状态迁移图,其中以tcs为开始状态,计算得到共享密钥k为终止状态。如图9所示。
[0069]
第四部分:引入逻辑规则证明与推理和π-演算理论
[0070]
1.引入ban逻辑:ban逻辑开创了密码协议形式化研究里程碑,基于ban逻辑对diffie-hellman协议的交互过程逻辑安全进行分析,分析过程如下:
[0071]
(1)建立diffie-hellman协议形式化描述(理想化协议模型)
[0072]
①a→
b:{x=g
x
modn}
x
;b

a:{y=gymodn}y[0073]

对协议的解释为:对协议的解释为:
[0074]

初始假设集合为:p1:a|≡#(x);p2:b|≡#(y)
[0075]
预期目标:a|≡{g
xy
modn};b|≡{g
yx
modn}
[0076]
(2)ban逻辑推理
[0077]

消息意义规则r3可知:同理,成立。
[0078]

消息新鲜规则r
15
可知:同理,成立。
[0079]

随机数验证规则r4:同理,
[0080]
根据





a与b分别计算 k=(gy)
x
modn=(g
x
)ymodn=g
xy
modn,达到预期目标。根据

可知, diffie-hellman协议是可抵抗重放攻击,但是在

处,或不一定成立,有可能得到的是{gy′
modn}y′
或 {g
x

modn}
x

。故diffie-hellman协议是不可抵抗中间人攻击(man-in-the-middle attack)。
[0081]
2.引入霍恩子句逻辑(horn clauses):霍恩子句逻辑是一个逻辑系统和程序设计系统,主要用于验证程序执行过程的稳定性和安全性。一般的表示为:p

q1,q2,q3,

q,m其中,p表示过程名, {q1,q2,q3,
…q,m
}表示过程体,qi可解释为过程调用。
[0082]
基于霍恩子句逻辑理论,分别对tcp连接、diffie-hellman协议交的互式和a和b共享密钥的计算三个过程进行程序执行的逻辑分析,不妨设p1,p2和p3分别表示三者的过程名。
[0083][0084][0085][0086][0087][0088][0089][0090][0091][0092][0093][0094][0095][0096][0097][0098]
[0099][0100][0101]
(1)tcp连接
[0102]

p
11
←s′
a0
,s

a1
,s

a2
,s

a4
,s

a5


p
12
←s′
b0
,s

b1
,s

b2
,s

b4
,s

b5
,s

b6
,s
′b;

p1←
p
11
,p
12

[0103]
(2)diffie-hellman协议交的互式
[0104]

p
21
←s″
a0
,s

a1
,s

b2


p
22
←s″
b0
,s

b1
,s

a2


p2←
p
21
,p
22

[0105]
(3)a和b共享密钥的计算
[0106]

p
31
←s″′
a0
,s
″′
a1
,s
″′
a2
,s
″′
a3


p
23
←s″′
0b
,s
″′
1b
,s
″′
2b
,s
″′
3b


p3←
p
13
,p
23

[0107]
3.引入π-演算理论进程的arden法则
[0108]
根据图9,令tcs为x0,dhis为x1,skcsa为x2,skcsb为x4, key为x5,以所由arden法则得到下面方程。
[0109]
(1)x0=υ

x1[0110]
(2)x1=υ
″ax2 υ
″bx3[0111]
(3)x2=υ
″′ax4[0112]
(4)x3=υ
″′bx4[0113]
(5)x4=ε
ꢀꢀꢀ
(*)
[0114]
在这里ε表示接受状态。根据arden法则解方程组(*)得到解为:
[0115]
x0=υ

υ
″aυ
″′a υ

υ
″bυ
″′bꢀꢀꢀ
(**)
[0116]
其中, 表示集合的并。即(**)可表示为{υ

υ
″aυ
″′a,υ

υ
″bυ
″′b}。由此可知,协议diffie-hellman代码实现时,如果其执行轨迹是 {υ

υ
″aυ
″′a,υ

υ
″bυ
″′b},从逻辑上确保了他实现的安全性,否则是不安全的。
[0117]
本发明的优点在于:
[0118]
在基于数学困难问题作为设计密码协议实现时的安全理论基础,在不同平台上运行已经编码完成的密码协议,对密码协议代码实现的轨迹和特征进行获取;针对由自身存在缺陷的程序语言编码的密码协议软件(程序),把逻辑规则推理、逻辑规则证明和π-演算理论引入到其实现阶段构建形成密码协议实现的逻辑安全检测模型,分析密码协议存在的逻辑安全;针对密码协议软件(程序)时的函数调用,通过知识图谱、逻辑规则推理、逻辑规则证明发现密码协议软件(程序)实现的异常行为,从而检测出其是否遭受攻击;提取密码协议软件(程序)在不同平台上实现时的行为特征,通过大数据技术(数据挖掘、机器学习和人工智能等)分析提取的特征发现或预防密码协议软件实现的漏洞产生和利用漏洞攻击等不安全事件,缩小密码协议理论安全与实现安全的差距。
[0119]
由技术常识可知,本发明可以通过其他的不脱离其精神实质和必要特征的实施方案来实现。因此,上述公开的实施方案,就各方面而言,都只是举例说明,并不是仅有的。所有在本发明范围内或在等同于本发明的范围内的改变均被本发明包含。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献