[go: up one dir, main page]

CN112636919B - BAN—n逻辑的NLSR安全模型安全分析和验证方法 - Google Patents

BAN—n逻辑的NLSR安全模型安全分析和验证方法 Download PDF

Info

Publication number
CN112636919B
CN112636919B CN202011442806.8A CN202011442806A CN112636919B CN 112636919 B CN112636919 B CN 112636919B CN 202011442806 A CN202011442806 A CN 202011442806A CN 112636919 B CN112636919 B CN 112636919B
Authority
CN
China
Prior art keywords
key
ban
nlsr
data
logic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011442806.8A
Other languages
English (en)
Other versions
CN112636919A (zh
Inventor
费媛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Industrial Control Safety Innovation Technology Co ltd
Shanghai Normal University
Original Assignee
Shanghai Industrial Control Safety Innovation Technology Co ltd
Shanghai Normal University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Industrial Control Safety Innovation Technology Co ltd, Shanghai Normal University filed Critical Shanghai Industrial Control Safety Innovation Technology Co ltd
Priority to CN202011442806.8A priority Critical patent/CN112636919B/zh
Publication of CN112636919A publication Critical patent/CN112636919A/zh
Application granted granted Critical
Publication of CN112636919B publication Critical patent/CN112636919B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明BAN‑n逻辑的NLSR安全模型安全分析和验证方法,涉及命名数据网络的域内路由协议安全技术领域。本发明包括:步骤A分析NLSR安全模型,提出BAN‑n逻辑;步骤B抽取NLSR安全模型涉及的节点间LSA数据包的收发过程,应用BAN‑n逻辑进行刻画建模;步骤C利用BAN‑n逻辑的推理规则对数据安全目标和密钥安全目标进行验证;步骤D抽取带入侵者NLSR安全模型涉及的节点间LSA数据包的收发过程,应用BAN‑n逻辑进行刻画建模;步骤E利用BAN‑n逻辑的推理规则对伪造数据入侵目标和伪造密钥入侵目标进行验证。通过BAN‑n逻辑在NLSR安全模型可被验证入侵者无法用伪造密钥和伪造数据实现入侵。

Description

BAN—n逻辑的NLSR安全模型安全分析和验证方法
技术领域
本发明涉及命名数据网络域内路由协议安全模型技术领域,具体指一种BAN-n逻辑的NLSR安全模型安全分析和验证方法。
技术背景
随着互联网用户的不断增长,用户越来越多的关注于信息内容,而拥有端到端的通信机制的IP网络结构对此支持薄弱。因此,信息中心网络(Information CentricNetworking, ICN)得以被提出,它的重点在于信息内容的传播和分发。命名数据网络(Named Data Networking,NDN)是一个源自于ICN架构的针对未来互联网变革性的网络框架。命名数据网络通过使用名字来标记数据包,从而避免携带IP地址。请求方需要数据则发送对应兴趣包(Interest Packet),在达到有数据的节点会返回数据包(Data Packet)。兴趣包会依照自身所带的内容进行路由,而数据包会沿着兴趣包发送过来的路径返回。
NLSR(Named-data Link State Routing Protocol)是一个命名数据网络的域内路由协议。NLSR使用分发链路状态通告(Link State Advertisement,LSA)来完成网络拓扑结构的构建。每个路由器拥有一个链路状态数据库(Link State Data Base,LSDB)用于存储LSA。如果路由器检测到周围的网络拓扑结构变动或者本地的名字前缀被修改,都会生成一个新的LSA同时传播给整个网络。
每个NDN数据包包括内容名(Content Name)、签名(Signature)和数据(Data) 等。它是经过数字签名认证的,并且在签名信息里有密钥定位器(Key Locator)可以指出签名密钥的名字。为了保证一个拥有有效签名的LSA的合法性,NLSR协议基于信任锚(TrustAnchor)构建了五层安全模型(如附图1所示)。在顶层,有一个根节点(Root),即信任锚(Trust Anchor),它用于向站点(Site)发送证书;每个站点有一个或更多操作器(Operator),而每个操作器管理同属于一个站点的路由器(Router)。每个路由器可以产生一个NLSR路由进程来产生LSA。这种等级信任模型能够建立一串验证LSA密钥。LSA 必须被有效NLSR进程签名。而有效的NLSR密钥必须由对应的路由器密钥签名。同时路由器密钥必须被它所属的站点的操作器密钥签名。每个站点的操作器密钥必须被站点密钥签名,而站点密钥必须被根节点密钥签名。最后根节点密钥完成自我签名。
安全模型属于安全协议范畴为安全提供保障。如果设计出现错误,就无法提供较好的安全服务,其安全性的分析验证显得尤为重要。因此,使用形式化方法对安全模型进行建模和分析是极其合适的。1987年,Needham和Schroeder最早提出了对安全协议的形式化分析。之后,大多数的形式化工具都基于状态检测技术。随着1989年BAN逻辑的提出,安全协议的形式化分析有了一种截然不同的方法。这是一种模态逻辑系统,它是由命题和推理规则组成,是基于知识和信念的推理。
常见的BAN逻辑的推理规则如下表所示
Figure BDA0002823042670000021
如上所述,BAN逻辑的推理规则简单明了,使用方便,已经被一些著名的安全协议分析应用。
发明内容
本发明的目的在于克服现有技术存在的缺失和不足,提出BAN- n逻辑的NLSR安全模的安全性分析和验证的方法。
本发明思路是,对NLSR安全模型进行了分析,由于安全模型涉及到密钥验证,需要引入密钥验证的相关逻辑符号构件,同时为了描述Data包中内容(Content)部分和签名(Signature)部分,同时引入了相关逻辑符号构件。在此基础上,设定了消息意义规则、管辖权验证规则、密钥验证规则和接收消息规则,即以NLSR安全模型和形式化为基础,提出BAN-n逻辑,同时将其应用于NLSR安全模型,针对其数据安全目标和密钥安全目标进行验证。并且将BAN- n逻辑应用于引入入侵者的NLSR安全模型,针对伪造数据入侵目标和伪造密钥入侵目标来进行验证。
本发明的技术方案:提出BAN- n逻辑并应用于NLSR安全模型,对其进行安全性分析和验证,包括如下步骤:
1.对NLSR安全模型进行分析,提出BAN- n逻辑。
2.提取NLSR安全模型涉及到节点间LSA数据包的收发过程,使用BAN- n逻辑进行刻画。
3.利用BAN- n逻辑中的推理规则,对数据安全目标和密钥安全目标进行验证。
4.提取带入侵者的NLSR安全模型涉及到节点间LSA数据包的收发过程,使用BAN-n逻辑进行刻画。
5.利用BAN- n逻辑中的推理规则,对伪造数据入侵目标和伪造密钥入侵目标进行验证。
如上所述,通过BAN- n逻辑,在NLSR安全模型中应用对其进行安全性分析和验证,可以被验证入侵者无法用伪造密钥和伪造数据来实现入侵。
附图说明
图1为现有NLSR协议基于信任锚(Trust Anchor)构建的五层安全模型;
图2为本发明BAN- n逻辑的NLSR安全模型安全分析和验证方法流程框图;
图3为本发明实施例在NLSR安全模型下节点之间的LSA数据包收发过程图;
图4为本发明实施例在带入侵者的NLSR安全模型下节点之间的LSA数据包收发过程图。
具体实施方式
以下结合附图和实施例对本发明作进一步描述。
实施例,分析的对象为L.Wang等人在IEEE Access杂志上发表的《A Secure LinkState Routing Protocol for NDN》,他们提出了一种命名数据网络NDN的安全链接状态路由协议NLSR,并为该协议的安全性构建出五层的分层信任模型(如附图1所示)。
本发明方法的具体步骤(如附图2所示):
步骤A.通过对NLSR安全模型进行分析,改进为:BAN- n逻辑,包括BAN- n逻辑符号构建和其语义描述,BAN- n逻辑的推理规则。
所述BAN- n逻辑符号包括如下四个逻辑符号:
P|≈K表示主体P对密钥K进行了密钥验证;
Figure BDA0002823042670000041
表示由私钥K-1加密的公式X形成的消息为Data包中Content部分;
({X}K)s表示由密钥K加密的公式X形成的消息为Data包中Signature部分;
(K)c表示由密钥K组成的消息为Data包中Content部分;
所述BAN- n逻辑的推理规则有四种:
包括消息意义规则、管辖权验证规则、密钥验证规则和接收消息规则;
消息意义规则(MM1)
Figure BDA0002823042670000051
表示如果P相信K为Q的公钥,P收到消息
Figure BDA0002823042670000058
并且P对密钥K进行了密钥验证,则P相信Q曾经发送过消息X;
管辖权验证规则(JV)
Figure BDA0002823042670000052
表示如果P和Q对密钥K进行了密钥验证,并且P 收到密钥K,则P相信Q对X拥有管辖权;
密钥验证规则(KV1)
Figure BDA0002823042670000053
表示对于密钥k属于VK集合,如果P收到{k}K,P相信K为Q的公钥,并且P收到(k)c,则P对密钥k进行了密钥验证;
密钥验证规则(KV2)
Figure BDA0002823042670000054
表示对于密钥k属于DK集合,如果P对所有VK集合中的密钥进行密钥验证,同时VK集合中存在某个密钥k2使得P满足收到
Figure BDA0002823042670000059
并且P相信k为Q的公钥,则P对密钥k进行了密钥验证;
接收消息规则(SEE3)
Figure BDA0002823042670000055
表示如果P收到消息
Figure BDA00028230426700000510
则P收到消息
Figure BDA00028230426700000511
接收消息规则(SEE4)
Figure BDA0002823042670000056
表示如果P收到消息({X}K)s,则P收到消息
Figure BDA00028230426700000512
接收消息规则(SEE5)
Figure BDA0002823042670000057
表示如果P收到消息(K)c,则P收到消息X。
步骤B.抽取NLSR安全模型中的节点间LSA数据包的收发过程,给出NLSR安全模型涉及到的相关符号,定义使用到的公式和密钥;保留收发消息中内容部分和签名部分,并给出NLSR安全模型的数据密钥集合DK和验证密钥集合VK,使用BAN- n逻辑对NLSR安全模型进行建模。
步骤C.提取出需要验证的两种安全目标,一个是数据安全目标即保证读者收到了数据、读者相信邻居节点相信数据为真,同时读者相信数据为真,另一个是密钥安全目标即保证读者收到了所有密钥,读者相信邻居相信所有密钥为真,同时读者相信所有密钥为真。使用BAN- n逻辑这两种安全目标进行理想化表达,并使用BAN- n逻辑的推理规则对这两种安全目标进行验证。
步骤D.抽取带入侵者的NLSR安全模型中的节点间LSA数据包的收发过程,使用改进的BAN- n逻辑对其进行建模。
步骤E.提取出需要验证的两种入侵目标,一个是伪造数据入侵目标即保证读者收到了伪造数据、读者相信邻居节点相信伪造数据为真,同时读者相信伪造数据为真,另一个是伪造密钥入侵目标即保证读者收到了伪造的NLSR密钥,读者相信邻居相信伪造的NLSR密钥为真,同时读者相信伪造的NLSR密钥为真。使用BAN- n逻辑这两种入侵目标进行理想化表达,并使用BAN- n逻辑的推理规则对这两种入侵目标进行验证。
(1)改进BAN逻辑得到BAN- n逻辑
实施例,对BAN逻辑进行改进,在表1中给出了BAN逻辑的符号构件及其语义描述。
表1 BAN逻辑的符号构件及其语义描述
Figure BDA0002823042670000061
对NLSR安全模型进行了分析,由于安全模型涉及到密钥验证,需要引入密钥验证的相关逻辑符号构件,同时为了描述Data包中Content部分和Signature部分,也引入了相关逻辑符号构件。在此基础上,设定了消息意义规则、管辖权验证规则、密钥验证规则和接收消息规则。通过对NLSR进行分析,BAN- n逻辑,如表2。
表2 BAN- n逻辑符号构件及其语义描述
Figure BDA0002823042670000073
常见的BAN逻辑,如表3。
表3常见的BAN逻辑的推理规则
Figure BDA0002823042670000071
通过对NLSR进行分析,BAN- n逻辑的推理规则,如表4。
表4 BAN- n逻辑的推理规则
Figure BDA0002823042670000072
Figure BDA0002823042670000081
(2)使用BAN- n逻辑对NLSR安全模型进行建模
通过对NLSR安全模型的分析,抽取出了当前路由节点Router和邻居路由节点Neighbor的LSA数据包收发过程(如附图3所示)。
同时,将给出用到安全模型相关的符号及其符号描述,如表5所示。
表5 NLSR安全模型涉及的符号
Figure BDA0002823042670000082
附图3中节点之间的LSA数据包收发过程,可以写为如下12条消息:
消息1.Router->Neighbor:nameData
消息2.Neighbor->Router:
Figure BDA0002823042670000091
Figure BDA0002823042670000092
消息3.Router->Neighbor:
Figure BDA0002823042670000093
消息4.Neighbor->Router:
Figure BDA0002823042670000094
keyNLSR
消息5.Router->Neighbor:
Figure BDA0002823042670000095
消息6.Neighbor->Router:
Figure BDA0002823042670000096
keyrouter
消息7.Router->Neighbor:
Figure BDA0002823042670000097
消息8.Neighbor->Router:
Figure BDA0002823042670000098
keyoperator
消息9.Router->Neighbor:
Figure BDA0002823042670000099
消息10.Neighbor->Router:
Figure BDA00028230426700000910
keysite
消息11.Router->Neighbor:
Figure BDA00028230426700000911
消息12.Neighbor->Router:
Figure BDA00028230426700000912
keyroot
首先,Router向邻居节点Neighbor发送LSA的Interest包包括了对应LSA的Data包的名字(消息1);
然后,邻居节点Neighbor向节点Router发送LSA数据包,包括数据名部分、数据部分和签名部分。
数据名部分包括nameData,内容部分包括由keyNLSR的私钥数据加密得到的
Figure BDA00028230426700000913
签名部分包括
Figure BDA00028230426700000914
Figure BDA00028230426700000915
(消息2)。
其次,节点Router向邻居节点Neighbor发送名字为
Figure BDA0002823042670000101
的兴趣包,即请求密钥keyNLSR(消息3)。然后,邻居节点Neighbor向节点Router回复有对应名字的带有数据keyNLSR的数据包(消息4)。节点Router向邻居节点Neighbor发送名字为
Figure BDA0002823042670000102
的兴趣包,即请求密钥keyrouter(消息5)。
之后,邻居节点Neighbor向节点Router回复有对应名字的带有数据keyrouter的数据包(消息6)。节点Router向邻居节点Neighbor发送名字为
Figure BDA0002823042670000103
的兴趣包,即请求密钥keyoperator(消息7)。邻居节点Neighbor向节点Router回复有对应名字的带有数据keyoperator的数据包(消息8)。节点Router向邻居节点Neighbor发送名字为
Figure BDA0002823042670000104
的兴趣包,即请求密钥keysite(消息9)。邻居节点Neighbor把附带keysite的数据包发送给节点Router(消息10)。
节点Router向邻居节点Neighbor发送名字为
Figure BDA0002823042670000105
的兴趣包,即请求keyroot密钥(消息11)。
最后,邻居节点Neighbor向节点Router携带数据为keyroot的数据包(消息12)。
基于NLSR的安全模型场景,对要用到的公式X和密钥K进行定义,公式X为数据密钥集DK、验证密钥集VK和数据Data,密钥K为数据密钥集DK和验证密钥集VK,定义如下:
X∈DK∪VK∪{Data}
K∈DK∪VK
为了给出NLSR安全模型精简的理想化,只对所有数据包进行理想化(即消息2、消息 4、消息6、消息8、消息10和消息12),并只保留其中的内容部分和签名部分,因为这两者是涉及到加密解密,从而可以使用改进的BAN逻辑得到如下理想化结果。
对消息2的LSA数据包进行理想化得到:
M1.1:
Figure BDA0002823042670000111
M1.2:
Figure BDA0002823042670000112
M1.3:
Figure BDA0002823042670000113
M1.4:
Figure BDA0002823042670000114
M1.5:
Figure BDA0002823042670000115
M1.6:
Figure BDA0002823042670000116
消息4、消息6、消息8、消息10和消息12携带密钥的数据包进行理想化得到:
M2:RΔ(keyNLSR)c
M3:RΔ(keyrouter)c
M4:RΔ(keyoperator)c
M5:RΔ(keysite)c
M6:RΔ(keyroot)c
首先根据已知安全模型,对数据密钥的基础信息给出初始化假设定义。
定义DK={keyNLSR},VK={keyrouter,keyoperater,keysite,keyroot}。
同时定义假设集合如下:
A1:
Figure BDA0002823042670000117
其中key∈DK∪VK
A2:RΔkey→R|≡#key,其中key∈DK∪VK
A3:N|≈key,其中key∈DK∪VK
A4:RΔData→R|≡#Data
A5:
Figure BDA0002823042670000125
(3)验证模型的数据安全目标和密钥安全目标
同时针对NLSR安全模型的形式化模型,提取需要验证的两种安全目标,一个是数据安全目标即保证读者收到了数据、读者相信邻居节点相信数据为真,同时读者相信数据为真,另一个是密钥安全目标即保证读者收到了所有密钥,读者相信邻居相信所有密钥为真,同时读者相信所有密钥为真。
使用BAN- n逻辑,对数据安全目标进行理想化表达,需要验证:
G1:RΔData
G2:R|≡N|≡Data
G3:R|≡Data
使用BAN- n逻辑,对数据安全目标进行理想化表达,对于key∈KEY需要验证:
G4:RΔkey
G5:R|≡N|≡key
G6:R|≡key
证明过程:
通过把看见规则SEE3应用于消息M1.1得到:
S1:
Figure BDA0002823042670000121
把看见规则SEE4应用于消息M1.2-M1.5会得到:
S2:
Figure BDA0002823042670000122
S3:
Figure BDA0002823042670000123
S4:
Figure BDA0002823042670000124
S5:
Figure BDA0002823042670000131
S6:
Figure BDA0002823042670000132
通过把看见规则SEE5应用于消息M2-M6会得到:
S7:RΔkeyNLSR
S8:RΔkeyrouter
S9:RΔkeyoperator
S10:RΔkeysite
S11:RΔkeyroot
将分离规则(MP)应用于S7-S11和假设A1来获得:
S12:
Figure BDA0002823042670000133
S13:
Figure BDA0002823042670000134
S14:
Figure BDA0002823042670000135
S15:
Figure BDA0002823042670000136
S16:
Figure BDA0002823042670000137
将验证密钥规则KV1应用于S3、S14和消息M3得到:
S17:R|≈keyrouter
将验证密钥规则KV1应用于S4、S15和消息M4得到:
S18:R|≈keyoperator
将验证密钥规则KV1应用于S5、S16和消息M5得到:
S19:R|≈keysite
将验证密钥规则KV1应用于S6、S16和消息M6会得到:
S20:R|≈keyroot
将验证密钥规则KV2应用于S17-S20、S2和S12得到:
S21:R|≈keyNLSR
将看见规则SEE2应用于S1和S12可以得到:
S22:RΔData
将分离规则(MP)应用于S22和假设A4得到:
S23:R|≡#Data
将消息含义规则MM1应用于S12、S1和S21得到:
S24:R|≡N|~Data
将临时值验证规则NV应用于S23和S24得到:
S25:R|≡N|≡Data
把管辖规则J应用于假设A5和S25得到:
S26:R|≡Data
把分离规则(MP)应用于S7-S11和假设A2得到:
S27:R|≡#keyNLSR
S28:R|≡#keyrouter
S29:R|≡#keyoperator
S30:R|≡#keysite
S31:R|≡#keyroot
把管辖权验证规则JV应用于假设A4、S17-S21和S7-S11可得:
S32:
Figure BDA0002823042670000141
S33:
Figure BDA0002823042670000142
S34:
Figure BDA0002823042670000143
S35:
Figure BDA0002823042670000151
S36:
Figure BDA0002823042670000152
把消息含义规则MM1应用于S2、S13和S17得到:
S37:R|≡N|~keyNLSR
把消息含义规则MM1应用于S3、S14和S18得到:
S38:R|≡N|~keyrouter
把消息含义规则MM1应用于S4、S15和S19得到:
S39:R|≡N|~keyoperator
把消息含义规则MM1应用于S5、S16和S20得到:
S40:R|≡N|~keysite
把消息含义规则MM1应用于S6、S16和S20得到:
S41:R|≡N|~keyroot
把临时值验证规则NV应用于S27-S31和S37-S41可以得到:
S42:R|≡N|≡keyNLSR
S43:R|≡N|≡keyrouter
S44:R|≡N|≡keyoperator
S45:R|≡N|≡keysite
S46:R|≡N|≡keyroot
将管辖规则J应用于S32-S36和S42-S46得到:
S47:R|≡keyNLSR
S48:R|≡keyrouter
S49:R|≡keyoperator
S50:R|≡keysite
S51:R|≡keyroot
S22、S25和S26分别对应了数据安全性目标G1、G2和G3,因此数据安全性目标得到了验证。S7-S11、S42-S46和S47-S51分别对应了密钥安全目标G4、G5和G6,因此密钥安全目标得到了验证。
(4)使用BAN- n逻辑对NLSR安全模型(带入侵者)进行建模
通过对带有入侵者的安全模型的分析,这里只考虑前四步有入侵者Intruder伪造消息的情况,前四步与节点Router进行通信的是入侵者Intruder,而节点Router误以为Intruder是邻居节点Neighbor,抽取出了当前节点Router和邻居节点Neighbor的LSA 数据包收发过程,如附图4所示。
附图4中节点之间的LSA数据包收发过程,可以写为如下12条消息:
消息1′.Router->Neighbor(Intruder):nameData
消息2′.Neighbor(Intruder)->Router:
Figure BDA0002823042670000161
Figure BDA0002823042670000162
消息3′.Router->Neighbor(Intruder):
Figure BDA0002823042670000163
消息4′.Neighbor(Intruder)->Router:
Figure BDA0002823042670000164
keyNLSR_fake
消息5.Router->Neighbor:
Figure BDA0002823042670000165
消息6.Neighbor->Router:
Figure BDA0002823042670000166
keyrouter
消息7.Router->Neighbor:
Figure BDA0002823042670000167
消息8.Neighbor->Router:
Figure BDA0002823042670000168
keyoperator
消息9.Router->Neighbor:
Figure BDA0002823042670000171
消息10.Neighbor->Router:
Figure BDA0002823042670000172
keysite
消息11.Router->Neighbor:
Figure BDA0002823042670000173
消息12.Neighbor->Router:
Figure BDA0002823042670000174
keyroot
首先,Router向Inturder假冒的邻居节点发送LSA的Interest包,包括了对应LSA的Data包的名字(消息1′);Inturder假冒邻居节点Neighbor向节点Router发送LSA 数据包,包括数据名部分、数据部分、签名部分和签名信息部分。数据名部分包括nameData,数据部分包括由私钥
Figure BDA0002823042670000175
签名部分包括
Figure BDA0002823042670000176
签名信息部分包括
Figure BDA0002823042670000177
(消息2′);其次,节点Router向Inturder假冒的邻居节点Neighbor发送名字为
Figure BDA0002823042670000178
的兴趣包,即请求密钥keyNLSR_fake(消息3′)。然后,Inturder假冒邻居节点Neighbor向节点Router 回复有对应名字的带有数据keyNLSR_fake的数据包(消息4′)。节点Router向邻居节点 Neighbor发送名字为
Figure BDA0002823042670000179
的兴趣包,即请求密钥keyrouter(消息5)。之后,邻居节点Neighbor向节点Router回复有对应名字的带有数据keyrouter的数据包(消息6)。节点 Router向邻居节点Neighbor发送名字为
Figure BDA00028230426700001710
的兴趣包,即请求密钥keyoperator(消息7)。邻居节点Neighbor向节点Router回复有对应名字的带有数据keyoperator的数据包 (消息8)。节点Router向邻居节点Neighbor发送名字为
Figure BDA00028230426700001711
的兴趣包,即请求密钥keysite(消息9)。邻居节点Neighbor把附带keysite的数据包发送给节点Router(消息 10)。节点Router向邻居节点Neighbor发送名字为
Figure BDA00028230426700001712
的兴趣包,即请求keyroot密钥(消息11)。最后,邻居节点Neighbor向节点Router携带数据为keyroot的数据包(消息12)。
基于带入侵者的NLSR安全模型场景,重新对公式X和密钥K进行定义,公式X为数据密钥集DK、验证密钥集VK、伪造数据Data_fake和伪造的NLSR密钥keyNLSR_fake,密钥K为数据密钥集DK、验证密钥集VK和伪造的NLSR密钥keyNLSR_fake,定义如下:
X∈DK∪VK∪{Data_fake,keyNLSR_fake}
K∈DK∪VK∪{Data_fake}
为了给出带入侵者的NLSR安全模型精简的理想化,我们只对所有数据包进行理想化 (即消息2′、消息4、消息6、消息8、消息10和消息12),并只保留其中的内容部分和签名部分,因为这两者是涉及到加密解密,从而可以使用改进的BAN逻辑得到如下理想化结果。
对消息2的LSA数据包进行理想化得到:
M1.1′:
Figure BDA0002823042670000181
M1.2:
Figure BDA0002823042670000182
M1.3:
Figure BDA0002823042670000183
M1.4:
Figure BDA0002823042670000184
M1.5:
Figure BDA0002823042670000185
M1.6:
Figure BDA0002823042670000186
对消息4′、消息6、消息8、消息10和消息12携带密钥的数据包进行理想化得到:
M2′:RΔ(keyNLSR_fake)c
M3:RΔ(keyrouter)c
M4:RΔ(keyoperator)c
M5:RΔ(keysite)c
M6:RΔ(keyroot)c
(5)验证模型的伪造数据入侵目标和伪造密钥入侵目标
同时针对带有入侵者的NLSR安全模型的形式化模型,继续验证伪造数据入侵目标和伪造密钥入侵目标。
使用BAN- n逻辑,需要完成验证的伪造数据入侵目标如下:
G7:RΔData_fake
G8:R|≡N|≡Data_fake
G9:R|≡Data_fake
使用BAN- n逻辑,需要完成验证的伪造密钥入侵目标如下:
G10:RΔkeyNLSR_fake
G11:R|≡N|≡keyNLSR_fake
G12:R|≡keyNLSR_fake
证明过程:
通过把看见规则SEE3应用于消息M1.1得到:
S1′:
Figure BDA0002823042670000191
通过把看见规则SEE4应用于消息M1.2-M1.5会得到:
S2′:
Figure BDA0002823042670000192
S3:
Figure BDA0002823042670000201
S4:
Figure BDA0002823042670000202
S5:
Figure BDA0002823042670000203
S6:
Figure BDA0002823042670000204
通过把看见规则SEE5应用于消息M2-M6会得到:
S7′:RΔkeyNLSR_fake
S8:RΔkeyrouter
S9:RΔkeyoperator
S10:RΔkeysite
S11:RΔkeyroot
将分离规则(MP)应用于消息S7′-S11和假设A1来获得:
S12′:
Figure BDA0002823042670000205
S13:
Figure BDA0002823042670000206
S14:
Figure BDA0002823042670000207
S15:
Figure BDA0002823042670000208
S16:
Figure BDA0002823042670000209
将验证密钥规则KV1应用于S3、S14和消息M3得到:
S17:R|≈keyrouter
将验证密钥规则KV1应用于S4、S15和消息M4得到:
S18:R|≈keyoperator
将验证密钥规则KV1应用于S5、S16和消息M5得到:
S19:R|≈keysite
将验证密钥规则KV1应用于S6、S16和消息M6得到:
S20:R|≈keyroot
因为不存在
Figure BDA0002823042670000211
无法使用验证密钥规则KV2得到S21′:R|≈keyNLSR_fake
将看见规则SEE1应用于S1和S12可以得到:
S22:RΔData_fake
将分离规则(MP)应用于S22和假设A4得到:
S23:R|≡#Data_fake
同时由于没有S21′,无法将消息含义规则MM1应用于S1、S12和S21′得到:
S24′:R|≡N|~Data_fake
同时也无法将临时值验证规则NV应用于S23和S24′得到:
S25′:R|≡N|≡Data_fake
也无法把管辖规则J应用于假设A5和S25′得到:
S26′:R|≡Data_fake
由于仅仅可以得到S22对应伪造数据入侵目标G7,而无法得到S25′和S26′对应伪造数据入侵目标G8和G9。因此无法完成伪造数据入侵目标的证明,即入侵者无法成功用伪造数据欺骗reader。
把分离规则(MP)应用于S7′-S11和假设A1得到:
S27′:R|≡#keyNLSR_fake
S28:R|≡#keyrouter
S29:R|≡#keyoperator
S30:R|≡#keysite
S31:R|≡#keyroot
由于没有S21′:R|≈keyNLSR_fake因此无法使用管辖权验证规则JV应用于假设A4、S21′和S7′得到S32′:
Figure BDA0002823042670000221
同时由于没有S21′,无法将消息含义规则MM1应用于S2、S13和S21′得到:
S37′:R|≡N|~keyNLSR_fake
进而由于没有S37′,无法把临时值验证规则NV应用于S27′和S37′得到:
S42′:R|≡N|≡keyNLSR_fake
也由于没有S37′和S42′,无法将管辖规则J应用于S37′和S42′得到:
S47′:R|≡keyNLSR_fake
由于仅仅可以得到S7对应伪造密钥入侵目标G10,而无法得到S42′和S47′对应伪造数据入侵目标G11和G12。因此无法完成伪造密钥入侵目标的证明,即入侵者无法成功用伪造密钥欺骗reader。
综上所述,通过BAN- n逻辑对NLSR安全模型的应用,完成了对该NLSR安全模型的安全分析和验证。该模型具有BAN逻辑的推理规则简单明了,使用方便,并可以被验证保证数据安全目标和密钥安全目标,同时能保证在有入侵者的情况下,入侵者无法用伪造密钥和伪造数据来完成入侵,即验证了伪造数据入侵目标和伪造密钥入侵目标。BAN- n逻辑可以被应用于更多命名数据网络相关的协议上,具有可拓展性,有利于提高在现实生活中协议具体实现时的鲁棒性,为个人隐私安全保驾护航。

Claims (3)

1.BAN-n逻辑的NLSR安全模型安全分析和验证方法,其特征在于,包括如下步骤:
步骤A.对NLSR安全模型进行分析,改进BAN逻辑为BAN-n逻辑;
BAN-n逻辑符号包括如下:
PI≈K表示主体P对密钥K进行了密钥验证;
Figure FDA0003778579400000018
表示由私钥K-1加密的公式X形成的消息为Data包中Content部分;
({X}K)s表示由密钥K加密的公式X形成的消息为Data包中Signature部分;
(K)c表示由密钥K组成的消息为Data包中Content部分;
BAN-n逻辑推理规则有:
包括消息意义规则、管辖权验证规则、密钥验证规则和接收消息规则;
消息意义规则
Figure FDA0003778579400000011
表示如果P相信K为Q的公钥,P收到消息
Figure FDA0003778579400000019
并且P对密钥K进行了密钥验证,则P相信Q曾经发送过消息X;
管辖权验证规则JV:
Figure FDA0003778579400000012
表示如果P和Q对密钥K进行了密钥验证,并且P收到密钥K,则P相信Q对X拥有管辖权;
密钥验证规则KV1:
Figure FDA0003778579400000013
表示对于密钥k属于VK集合,如果P收到{k}K,P相信K为Q的公钥,并且P收到(k)c,则P对密钥k进行了密钥验证;
密钥验证规则KV2:
Figure FDA0003778579400000014
表示对于密钥k属于DK集合,如果P对所有VK集合中的密钥进行密钥验证,同时VK集合中存在某个密钥k2使得P满足收到
Figure FDA00037785794000000113
并且P相信k为Q的公钥,则P对密钥k进行了密钥验证;
接收消息规则SEE3:
Figure FDA0003778579400000015
表示如果P收到消息
Figure FDA00037785794000000110
则P收到消息
Figure FDA00037785794000000111
接收消息规则SEE4:
Figure FDA0003778579400000016
表示如果P收到消息({X}K)s,则P收到消息
Figure FDA00037785794000000112
接收消息规则SEE5:
Figure FDA0003778579400000017
表示如果P收到消息(K)c,则P收到消息X;
步骤B.对NLSR安全模型进行总结和分析,抽取安全模型中节点间LSA数据包的收发过程,使用BAN-n逻辑推理对该过程进行建模,得到NLSR安全模型的形式化模型;
还包括:
给出NLSR安全模型涉及到的相关符号;
保留收发消息中内容部分和签名部分;
给出NLSR安全模型的数据密钥集合DK和验证密钥集合VK,使用BAN-n逻辑对NLSR安全模型进行建模;
步骤C.使用BAN-n逻辑刻画数据安全目标和密钥安全目标,使用BAN-n逻辑的推理规则进行验证;
步骤D.针对带入侵者的命名数据网络NLSR安全模型中节点间LSA数据包的收发过程,保留收发消息中内容部分和签名部分,使用BAN-n逻辑刻画收发过程,即把收发过程以BAN-n逻辑符号的形式描述出来,从而完成BAN-n逻辑对该过程的建模,得到带入侵者的命名数据网络NLSR安全模型;
步骤E.使用BAN-n逻辑刻画伪造数据入侵目标和伪造密钥入侵目标,使用BAN-n逻辑的推理规则进行验证。
2.如权利要求1所述的BAN-n逻辑的NLSR安全模型安全分析和验证方法,其特征在于,所述步骤C.还包括:
C1.提取需要验证的两种安全目标:
一个是数据安全目标即保证读者收到了数据、读者相信邻居节点相信数据为真,同时读者相信数据为真;
另一个是密钥安全目标即保证读者收到了所有密钥,读者相信邻居相信所有密钥为真,同时读者相信所有密钥为真;
C2.使用BAN-n逻辑对两种安全目标进行理想化表达,并使用BAN-n逻辑的推理规则对两种安全目标进行验证。
3.如权利要求1所述的BAN-n逻辑的NLSR安全模型安全分析和验证方法,其特征在于,所述步骤E,还包括:
E1.提取出需要验证的两种入侵目标,一个是伪造数据入侵目标即保证读者收到了伪造数据、读者相信邻居节点相信伪造数据为真,同时读者相信伪造数据为真;
另一个是伪造密钥入侵目标即保证读者收到了伪造的NLSR密钥,读者相信邻居相信伪造的NLSR密钥为真,同时读者相信伪造的NLSR密钥为真;
E2.使用BAN-n逻辑对这两种入侵目标进行理想化表达,使用BAN-n逻辑的推理规则对这两种入侵目标进行验证。
CN202011442806.8A 2020-12-08 2020-12-08 BAN—n逻辑的NLSR安全模型安全分析和验证方法 Active CN112636919B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011442806.8A CN112636919B (zh) 2020-12-08 2020-12-08 BAN—n逻辑的NLSR安全模型安全分析和验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011442806.8A CN112636919B (zh) 2020-12-08 2020-12-08 BAN—n逻辑的NLSR安全模型安全分析和验证方法

Publications (2)

Publication Number Publication Date
CN112636919A CN112636919A (zh) 2021-04-09
CN112636919B true CN112636919B (zh) 2022-10-18

Family

ID=75309547

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011442806.8A Active CN112636919B (zh) 2020-12-08 2020-12-08 BAN—n逻辑的NLSR安全模型安全分析和验证方法

Country Status (1)

Country Link
CN (1) CN112636919B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299752A (zh) * 2008-06-26 2008-11-05 上海交通大学 基于信任的新鲜性建立密码协议安全性的方法
WO2012069919A1 (en) * 2010-11-24 2012-05-31 Alcatel Lucent A method, device and system for verifying communication sessions
CN105049420A (zh) * 2015-06-23 2015-11-11 天津大学 基于扩展uml的轻量级安全协议形式化验证方法
CN106209768A (zh) * 2016-06-20 2016-12-07 广东工业大学 一种可扩展的rfid双向认证方法
CN107147498A (zh) * 2017-05-15 2017-09-08 吉林大学 一种基于Hash函数和动态共享密钥的强匿名RFID认证协议

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9769658B2 (en) * 2013-06-23 2017-09-19 Shlomi Dolev Certificating vehicle public key with vehicle attributes
CN107396350B (zh) * 2017-07-12 2021-04-27 西安电子科技大学 基于sdn-5g网络架构的sdn组件间安全保护方法
CN111756704A (zh) * 2020-05-27 2020-10-09 西南大学 一种密码协议验证方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299752A (zh) * 2008-06-26 2008-11-05 上海交通大学 基于信任的新鲜性建立密码协议安全性的方法
WO2012069919A1 (en) * 2010-11-24 2012-05-31 Alcatel Lucent A method, device and system for verifying communication sessions
CN105049420A (zh) * 2015-06-23 2015-11-11 天津大学 基于扩展uml的轻量级安全协议形式化验证方法
CN106209768A (zh) * 2016-06-20 2016-12-07 广东工业大学 一种可扩展的rfid双向认证方法
CN107147498A (zh) * 2017-05-15 2017-09-08 吉林大学 一种基于Hash函数和动态共享密钥的强匿名RFID认证协议

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Fei, Y.Security Analysis of the Access Control Solution of NDN Using BAN Logic.《MOBILE NETWORKS & APPLICATIONS》.2020, *
于金刚等.一种改进的NSSK认证协议及其实现方法.《小型微型计算机系统》.2018,(第03期), *
杜金辉等.NS对称密钥认证协议安全性分析.《微计算机信息》.2008,(第12期), *
王正才等.BAN逻辑的可靠性分析与改进.《计算机工程》.2012,(第17期), *

Also Published As

Publication number Publication date
CN112636919A (zh) 2021-04-09

Similar Documents

Publication Publication Date Title
Pourvahab et al. An efficient forensics architecture in software-defined networking-IoT using blockchain technology
Aiello et al. Origin authentication in interdomain routing
US10257161B2 (en) Using neighbor discovery to create trust information for other applications
US9043884B2 (en) Autonomic network protection based on neighbor discovery
Zhang et al. Towards a SDN-based integrated architecture for mitigating IP spoofing attack
CN111726368B (zh) 一种基于SRv6的域间源地址验证的方法
Wu et al. A source address validation architecture (sava) testbed and deployment experience
US20180115520A1 (en) Dark virtual private networks and secure services
He et al. ROAchain: Securing route origin authorization with blockchain for inter-domain routing
Siddiqui et al. A survey on the recent efforts of the Internet Standardization Body for securing inter-domain routing
US20230054738A1 (en) Advertising bgp destination secure path requirement in global internet
CN111241549B (zh) 一种异构标识体系下的可信解析方法
Kantola Trust networking for beyond 5G and 6G
CN104270383B (zh) 一种电力移动终端跨子网访问控制方法
CN115883088B (zh) 基于bgp路由的自治域安全参数更新方法
Klenze et al. Formal verification of secure forwarding protocols
Venkatramulu et al. IP spoofing controlling with design science research methodology
CN106687983A (zh) 用于在包括虚拟网络的网络中通信的方法和包括虚拟网络实体的通信节点
CN112636919B (zh) BAN—n逻辑的NLSR安全模型安全分析和验证方法
CN112600672B (zh) 基于真实身份的域间可信度共识方法和装置
Yue et al. A privacy-preserving route leak protection mechanism based on blockchain
Singh et al. Framework for a decentralized web
Brunato et al. WilmaGate: A new open access gateway for hotspot management
US20230077053A1 (en) Authentication using a decentralized and/or hybrid dencentralized secure crypographic key storage method
He et al. Securing route origin authorization with blockchain for inter-domain routing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant