一种有向网络中节点攻击成本与鲁棒性关系的预测方法与流程

文档序号:18020304发布日期:2019-06-26 01:10阅读:310来源:国知局
一种有向网络中节点攻击成本与鲁棒性关系的预测方法与流程

本发明涉及有向复杂网络鲁棒性与节点攻击成本之间关系研究领域,尤其涉及一种有向网络中节点攻击成本与鲁棒性关系的预测方法。



背景技术:

可以用网络来描述许多实际复杂系统,不将节点的实际位置和边的实际特征考虑在内所展现出来的性质叫做网络的拓扑性质,其结构为网络的拓扑结构。网络可用集合G=(V,E)来表示。N=|V|表示节点数,M=|E|表示边数。V={1,2,...N}表示节点集合,而E={eij|i∈V,j∈V,eij≠0}表示边的集合,若eij≠0则表示节点i与j之间有边,否则表示这两个节点间无边。假设网络中任意两个节点i与j,存在eij≠eji,就称该网络为有向网络,否则就称作无向网络。

当考虑有向网络中节点的重要性时,一种简单的方法是把有向网络视为无向网络,从而可以直接利用无向网络中节点的重要性指标。然而,有向网络中边的方向对于节点的重要性往往是非常重要的。例如,在论文引用网络中,一篇论文的出度是它的参考文献的数量,而入度是该论文的他引次数。显然,即使一篇论文的出度很大,即参考文献数量很多,也不能反映该论文是否一定重要,否则每个人都可以轻而易举的写出重要的文章了。关于刻画有向网络中节点重要性的一个典型例子当推WWW上的搜索,当输入一个关键词后,搜索引擎就会基于某种排序算法对与该关键词有关的网页按照某种重要性指标进行排序。有向网络节点排序算法包括PageRank算法、HITS算法和LeaderRank算法等。

目前关于对有向网络鲁棒性方面的研究主要集中在按排序算法对节点进行重要性排序并移除后并未考虑节点的攻击成本因素,然而有向网络中每个节点的PageRank值,Authority值,Hub值,LeaderRank值并不一定相同,考虑有向网络节点的攻击成本因素显得尤为重要。



技术实现要素:

针对现有技术存在的不足之处,本发明的目的在于提供一种有向网络中节点攻击成本与鲁棒性关系的预测方法,在考虑了节点重要性排序的攻击成本情况下,可以有效得出节点攻击成本与鲁棒性之间的关系曲线图,便于更深入地进行有向网络鲁棒性的分析,对有向网络的网络安全性检测和安全性提升提供了重要的研究数据。

本发明的目的通过下述技术方案实现:

一种有向网络中节点攻击成本与鲁棒性关系的预测方法,其方法步骤如下:

A、得到有向网络,该有向网络包括人工合成网络和实际使用的有向网络;

B、对步骤A中的有向网络相关属性进行计算,得到有向网络的节点入度、节点出度,节点入度是指从其他节点指向该节点的边的数目,节点出度是指从一个节点指向其他节点的边的数目,并采用如下三种算法之一得到所对应的值:

B1、PageRank算法:对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值;

B2、HITS算法:对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,所述Authority值为根据HITS算法得到的节点的权威值,所述Hub值为根据HITS算法得到的节点的枢纽值;

B3、LeaderRank算法:对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值;

本发明还可以对步骤B有向网络所采用的三种算法之一得到所对应的值随节点入度或节点出度的变化关系曲线图,具体如下:

a1、若有向网络选择PageRank算法,对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值,将有向网络的所有节点的PageRank值通过软件得到PageRank值随节点入度或节点出度的变化关系曲线图;

a2、若有向网络选择HITS算法,对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,将有向网络的所有节点的Authority值通过软件得到Authority值随节点入度或节点出度的变化关系曲线图,将有向网络的所有节点的Hub值通过软件得到Hub值随节点入度或节点出度的变化关系曲线图;

a3、若有向网络选择LeaderRank算法,对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值,将有向网络的所有节点的LeaderRank值通过软件得到LeaderRank值随节点入度或节点出度的变化关系曲线图。

C、对步骤B所采用的算法所得到的值排序后并进行有向网络节点的攻击,具体如下:

C1、若有向网络选择PageRank算法得到所有节点的PageRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C11、将有向网络的所有节点的PageRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C12、将有向网络的所有节点的PageRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C13、将有向网络的所有节点的PageRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

C2、若有向网络选择HITS算法得到所有节点的Authority值与Hub值,若以所有节点的Authority值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C21、将有向网络的所有节点的Authority值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C22、将有向网络的所有节点的Authority值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C23、将有向网络的所有节点的Authority值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C3、若有向网络选择HITS算法得到所有节点的Authority值与Hub值,若以所有节点的Hub值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C31、将有向网络的所有节点的Hub值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C32、将有向网络的所有节点的Hub值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C33、将有向网络的所有节点的Hub值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C4、若有向网络选择LeaderRank算法得到所有节点的LeaderRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C41、将有向网络的所有节点的LeaderRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C42、将有向网络的所有节点的LeaderRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C43、将有向网络的所有节点的LeaderRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

D、在步骤C中攻击有向网络的节点时,通过计算机软件同步计算出有向网络节点的攻击成本ρ;

D1、若有向网络选择PageRank算法并按照步骤C1以PageRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,PR为PageRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,PRi是节点i的PageRank值,PRl是被攻击节点对应的PageRank值;

D2、若有向网络选择HITS算法并按照步骤C2以Authority值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Authorityi是节点i的Authority值,Authorityl是被攻击节点对应的Authority值;

D3、若有向网络选择HITS算法并按照步骤C3以Hub值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Hubi是节点i的Hub值,Hubl是被攻击节点对应的Hub值;

D4、若有向网络选择LeaderRank算法并按照步骤C4以LeaderRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,LR为LeaderRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,LRi是节点i的LeaderRank值,LRl是被攻击节点对应的LeaderRank值;

E、在步骤D攻击有向网络的节点过程中,通过计算机软件根据最大连通子图同步计算出有向网络的网络鲁棒性,计算方法如下:

E1、在攻击有向网络的节点前,通过计算机软件计算出原始有向网络的所有节点个数的总数N;

E2、在攻击有向网络的节点时,每攻击一个节点,就移除有向网络的该节点,并依次计算出被攻击后的有向网络的最大连通子图所含有的节点个数N';将有向网络分解成两个及以上的分支,把各连通分支中包含节点数最多的分支叫做最大连通子图;

E3、在攻击有向网络的节点完毕后,通过如下公式计算出在节点攻击过程中所有的最大连通子图相对值S;

其中,N'为有向网络受攻击后的最大连通子图所含有的节点个数;N为有向网络被破坏前的节点总数;

最大连通子图相对值S的值越大,则说明该有向网络鲁棒性越强;

F、通过计算机软件按照有向网络节点攻击过程绘制出有向网络的鲁棒性与节点的攻击成本之间的关系曲线图:

在有向网络的节点攻击过程中关联出如下的同步数据,所述同步数据包括步骤E中有向网络的最大连通子图相对值S和步骤D中有向网络节点的攻击成本ρ,然后通过计算机软件以步骤D中有向网络节点的攻击成本ρ为横坐标、以步骤E中有向网络的最大连通子图相对值S为纵坐标绘制出关系曲线图。

一种有向网络中节点攻击成本与鲁棒性关系的预测方法,其方法步骤如下:

A、得到有向网络,该有向网络包括人工合成网络和实际使用的有向网络;

B、对步骤A中的有向网络相关属性进行计算,得到有向网络的节点入度、节点出度,节点入度是指从其他节点指向该节点的边的数目,节点出度是指从一个节点指向其他节点的边的数目,并采用如下三种算法分别得到所对应的值:

B1、PageRank算法:对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值;

B2、HITS算法:对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,所述Authority值为根据HITS算法得到的节点的权威值,所述Hub值为根据HITS算法得到的节点的枢纽值;

B3、LeaderRank算法:对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值;

对步骤B有向网络所采用的三种算法分别得到所对应的值随节点入度或节点出度的变化关系曲线图,具体如下:

a1、若有向网络选择PageRank算法,对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值,将有向网络的所有节点的PageRank值通过软件得到PageRank值随节点入度或节点出度的变化关系曲线图;

a2、若有向网络选择HITS算法,对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,将有向网络的所有节点的Authority值通过软件得到Authority值随节点入度或节点出度的变化关系曲线图,将有向网络的所有节点的Hub值通过软件得到Hub值随节点入度或节点出度的变化关系曲线图;

a3、若有向网络选择LeaderRank算法,对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值,将有向网络的所有节点的LeaderRank值通过软件得到LeaderRank值随节点入度或节点出度的变化关系曲线图;

通过上述方法分别得到PageRank值、Authority值、Hub值、LeaderRank值分别随节点入度或节点出度的变化关系曲线图。

C、对步骤B所采用的算法所得到的值排序后并进行有向网络节点的攻击,具体如下:

C1、将有向网络根据PageRank算法得到所有节点的PageRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C11、将有向网络的所有节点的PageRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C12、将有向网络的所有节点的PageRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C13、将有向网络的所有节点的PageRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

C2、将有向网络根据HITS算法得到所有节点的Authority值与Hub值,然后以所有节点的Authority值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C21、将有向网络的所有节点的Authority值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C22、将有向网络的所有节点的Authority值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C23、将有向网络的所有节点的Authority值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C3、将有向网络根据HITS算法得到所有节点的Authority值与Hub值,然后以所有节点的Hub值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C31、将有向网络的所有节点的Hub值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C32、将有向网络的所有节点的Hub值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C33、将有向网络的所有节点的Hub值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C4、将有向网络根据LeaderRank算法得到所有节点的LeaderRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C41、将有向网络的所有节点的LeaderRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C42、将有向网络的所有节点的LeaderRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C43、将有向网络的所有节点的LeaderRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

D、在步骤C中攻击有向网络的节点时,分别通过计算机软件同步计算出有向网络节点的攻击成本ρ;

D1、若有向网络选择PageRank算法并按照步骤C1以PageRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,PR为PageRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,PRi是节点i的PageRank值,PRl是被攻击节点对应的PageRank值;

D2、若有向网络选择HITS算法并按照步骤C2以Authority值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Authorityi是节点i的Authority值,Authorityl是被攻击节点对应的Authority值;

D3、若有向网络选择HITS算法并按照步骤C3以Hub值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Hubi是节点i的Hub值,Hubl是被攻击节点对应的Hub值;

D4、若有向网络选择LeaderRank算法并按照步骤C4以LeaderRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,LR为LeaderRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,LRi是节点i的LeaderRank值,LRl是被攻击节点对应的LeaderRank值;

E、在步骤D攻击有向网络的节点过程中,分别通过计算机软件根据最大连通子图同步计算出有向网络的网络鲁棒性,计算方法如下:

E1、在攻击有向网络的节点前,通过计算机软件计算出原始有向网络的所有节点个数的总数N;

E2、在攻击有向网络的节点时,每攻击一个节点,就移除有向网络的该节点,并依次计算出被攻击后的有向网络的最大连通子图所含有的节点个数N';将有向网络分解成两个及以上的分支,把各连通分支中包含节点数最多的分支叫做最大连通子图;

E3、在攻击有向网络的节点完毕后,通过如下公式计算出在节点攻击过程中所有的最大连通子图相对值S;

其中,N'为有向网络受攻击后的最大连通子图所含有的节点个数;N为有向网络被破坏前的节点总数;

最大连通子图相对值S的值越大,则说明该有向网络鲁棒性越强;

F、分别通过计算机软件按照有向网络节点攻击过程绘制出有向网络的鲁棒性与节点的攻击成本之间的关系曲线图:

在有向网络的节点攻击过程中关联出如下的同步数据,所述同步数据包括步骤E中有向网络的最大连通子图相对值S和步骤D中有向网络节点的攻击成本ρ,然后通过计算机软件以步骤D中有向网络节点的攻击成本ρ为横坐标、以步骤E中有向网络的最大连通子图相对值S为纵坐标绘制出关系曲线图,并在同一坐标系中得到四条关系曲线图,根据四条关系曲线图综合判断节点的攻击成本对有向网络鲁棒性的影响。

本发明较现有技术相比,具有以下优点及有益效果:

(1)本发明在考虑了节点重要性排序的攻击成本情况下,可以有效得出节点攻击成本与鲁棒性之间的关系曲线图,便于更深入地进行有向网络鲁棒性的分析,对有向网络的网络安全性检测和安全性提升提供了重要的研究数据。

(2)通过观察本发明攻击成本与鲁棒性之间的关系曲线图中参数之间的变化关系可以得知在考虑成本时不同节点的攻击策略对已知拓扑结构的网络鲁棒性的影响,同时可以比较不同节点重要性排序方法在考虑节点的攻击成本时对有向网络鲁棒性的影响。

(3)本发明首次把有向复杂网络节点的攻击成本考虑进来,对于有向复杂网络节点的攻击更符合实际,并且提出了有向复杂网络鲁棒性领域的一种新的研究思路与方法,为将来研究各种实际有向网络具有重要借鉴意义。

(4)本发明对于有向复杂网络鲁棒性的研究将节点的攻击成本因素考虑在内,可以将有向网络节点的重要性PageRank算法、HITS算法和LeaderRank算法与节点的攻击成本相结合,得出三种算法下的攻击成本与鲁棒性之间的关系曲线图,然后进行数学综合分析并综合判断节点的攻击成本对有向网络鲁棒性的影响。

附图说明

图1为本发明以PageRank算法为例的流程示意图。

具体实施方式

下面结合实施例对本发明作进一步地详细说明:

一、有向网络

人工合成有向复杂网络:NetworkX是一个用Python语言开发的图论与复杂网络建模工具,内置了常用的图与复杂网络分析算法,可以方便的进行复杂网络数据分析、仿真建模等工作。NetworkX提供了一些生成有向网络的函数:gn_graph(N)、gnr_graph(N,p)、gnc_graph(N)、scale_free_graph(N)。其中,参数N为节点数。实际有向的复杂网络:实际的有向网络数据集可以通过国外的实验室提供的数据集或网上公开的数据集,如Fackbook-like社会网络数据集,它来自一个在加州大学欧文分校的在线学生社区,该数据集的用户至少发送或收到过一条信息,总共有1899个用户,在这些用户之间总共有59835封经过20296条定向连接线路进行传送。数据集可以包含很多节点的属性(如性别、年龄和参加课程),但为了保护隐私,这些信息没有提供,该数据集是一个静态的有向复杂网络。

二、有向复杂网络中节点属性值。

(1)入度和出度:有向网络中节点的度包括出度(OutDegree)和入度(InDegree),节点的出度是指从一个节点指向其他节点的边的数目,节点的入度是指从其他节点指向该节点的边的数目。

(2)PageRank算法:①给定所有节点的初始PageRank值(简称PR值)PRi(0),i=1,2,..,N,满足②基本的PageRank校正规则:把每个节点在第k-1步时的PR值平分给它所指向的节点。也就是说,如果节点i的出度为那么节点i所指向的每一个节点分得的PR值为如果一个节点的出度为0,那么它就始终把PR值只给自己。每个节点j的新的PR值校正为它所分得的PR值之和,即有

(3)HITS算法:①初始步:设定网络中所有节点的权威值和枢纽值的初始值xi(0),yi(0),i=1,2,..,N。②迭代过程:在第k步(k≥1)进行如下3种操作:1)权威值校正规则:每一个节点j的权威值校正为指向它的节点的枢纽值之和,即枢纽值校正规则:每一个节点j的枢纽值校正为它所指向的节点的权威值之和,即3)归一化:

(4)LeaderRank算法:该算法通过在网络中添加一个节点g(Ground node),将其与网络中所有节点相连接,得到一个N+1个节点的新网络,该网络是强连接的。算法首先给节点g之外N个节点分配1单位LR值(LeaderRank值),将这1单位的值分配给其直接相连的邻居节点,这一过程不断进行迭代,直到达到稳定状态,如式所示。其中节点i与j直接相连则eij=1,否则为0。代表节点j的出度,表示节点i随机游走到j的概率。初始状态下除g外的所有节点的si(0)=1,而sg(0)=0。LeaderRank的值的计算公式为Si=si(tc)+sg(tc)/N,其中:sg(tc)是稳定状态下节点g的LeaderRank值,tc表示收敛次数。

三、有向网络节点的攻击策略

所述节点的攻击策略采用3种攻击策略,即基于有向网络节点重要性排序的攻击,以PageRank值为例,这3种攻击策略分别为:

①将网络节点的PageRank值按照大小随机排序,按照此排序结果对节点进行攻击,简记为RPRS(Random PageRank Remove Strategy)策略。

②将网络节点的PageRank值按照由小到大的顺序排序,按照此排序结果对节点进行攻击,简记为LPRS(Low PageRank Remove Strategy)策略。

③将网络节点的PageRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击,简记为HPRS(High PageRank Remove Strategy)策略。

另外,节点Authority值、Hub值和LeaderRank值的方式与上述PageRank值类似。

四、网络鲁棒性测度

连通子图为网络中的一个子图,该子图是连通的且任意两节点之间都存在最短路径。对于非连通的图而言,可以将网络分解成两个及以上的分支,这里,把各连通分支中包含节点数最多的分支叫做最大连通子图。不断移除网络中的节点/边,网络的结构也在改变,网络受此影响会分解为多个子分支(子图),研究复杂网络鲁棒性可以采用最大连通子图的变化趋势来衡量。

最大连通子图S定义为被攻击后的网络最大连通子图的规模N'与原始网络规模N的比值,即其中,N'为网络受攻击后的最大连通子图所含的节点个数;N为网络被破坏前节点总数。S的值越大说明该网络鲁棒性越强或攻击策略有效性越差。通过观察S的变化趋势可以得出网络的破坏程度。

五、有向网络节点的攻击成本

以节点的PageRank值为例,所述总的攻击成本定义为:其中,N为有向网络的节点数,PRi是节点i的PageRank值,PRl是被移除节点对应的PageRank值,Z是移除节点的数量总和。

节点Authority值、Hub值和LeaderRank值的方式与PageRank值类似。

实施例一

一种有向网络中节点攻击成本与鲁棒性关系的预测方法,其方法步骤如下:

A、得到有向网络,该有向网络包括人工合成网络和实际使用的有向网络;

B、对步骤A中的有向网络相关属性进行计算,得到有向网络的节点入度、节点出度,节点入度是指从其他节点指向该节点的边的数目,节点出度是指从一个节点指向其他节点的边的数目,并采用如下三种算法之一得到所对应的值:

B1、PageRank算法:对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值;

B2、HITS算法:对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,所述Authority值为根据HITS算法得到的节点的权威值,所述Hub值为根据HITS算法得到的节点的枢纽值;

B3、LeaderRank算法:对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值;

本实施例还可以对步骤B有向网络所采用的三种算法之一得到所对应的值随节点入度或节点出度的变化关系曲线图,具体如下:

a1、若有向网络选择PageRank算法,对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值,将有向网络的所有节点的PageRank值通过软件得到PageRank值随节点入度或节点出度的变化关系曲线图;

a2、若有向网络选择HITS算法,对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,将有向网络的所有节点的Authority值通过软件得到Authority值随节点入度或节点出度的变化关系曲线图,将有向网络的所有节点的Hub值通过软件得到Hub值随节点入度或节点出度的变化关系曲线图;

a3、若有向网络选择LeaderRank算法,对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值,将有向网络的所有节点的LeaderRank值通过软件得到LeaderRank值随节点入度或节点出度的变化关系曲线图。

C、对步骤B所采用的算法所得到的值排序后并进行有向网络节点的攻击,具体如下:

C1、若有向网络选择PageRank算法得到所有节点的PageRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C11、将有向网络的所有节点的PageRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C12、将有向网络的所有节点的PageRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C13、将有向网络的所有节点的PageRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

C2、若有向网络选择HITS算法得到所有节点的Authority值与Hub值,若以所有节点的Authority值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C21、将有向网络的所有节点的Authority值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C22、将有向网络的所有节点的Authority值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C23、将有向网络的所有节点的Authority值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C3、若有向网络选择HITS算法得到所有节点的Authority值与Hub值,若以所有节点的Hub值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C31、将有向网络的所有节点的Hub值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C32、将有向网络的所有节点的Hub值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C33、将有向网络的所有节点的Hub值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C4、若有向网络选择LeaderRank算法得到所有节点的LeaderRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C41、将有向网络的所有节点的LeaderRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C42、将有向网络的所有节点的LeaderRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C43、将有向网络的所有节点的LeaderRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

D、在步骤C中攻击有向网络的节点时,通过计算机软件同步计算出有向网络节点的攻击成本ρ;

D1、若有向网络选择PageRank算法并按照步骤C1以PageRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,PR为PageRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,PRi是节点i的PageRank值,PRl是被攻击节点对应的PageRank值;

D2、若有向网络选择HITS算法并按照步骤C2以Authority值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Authorityi是节点i的Authority值,Authorityl是被攻击节点对应的Authority值;

D3、若有向网络选择HITS算法并按照步骤C3以Hub值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Hubi是节点i的Hub值,Hubl是被攻击节点对应的Hub值;

D4、若有向网络选择LeaderRank算法并按照步骤C4以LeaderRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,LR为LeaderRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,LRi是节点i的LeaderRank值,LRl是被攻击节点对应的LeaderRank值;

E、在步骤D攻击有向网络的节点过程中,通过计算机软件根据最大连通子图同步计算出有向网络的网络鲁棒性,计算方法如下:

E1、在攻击有向网络的节点前,通过计算机软件计算出原始有向网络的所有节点个数的总数N;对于人工合成网络来说,原始有向网络的所有节点个数的总数N是人为设定的;而对于真实网络来说,通过网上有公开的数据集可以得到原始有向网络的所有节点个数的总数N。

E2、在攻击有向网络的节点时,每攻击一个节点,就移除有向网络的该节点,并依次计算出被攻击后的有向网络的最大连通子图所含有的节点个数N';将有向网络分解成两个及以上的分支,把各连通分支中包含节点数最多的分支叫做最大连通子图;

E3、在攻击有向网络的节点完毕后,通过如下公式计算出在节点攻击过程中所有的最大连通子图相对值S;

其中,N'为有向网络受攻击后的最大连通子图所含有的节点个数;N为有向网络被破坏前的节点总数;

最大连通子图相对值S的值越大,则说明该有向网络鲁棒性越强;

F、通过计算机软件按照有向网络节点攻击过程绘制出有向网络的鲁棒性与节点的攻击成本之间的关系曲线图:

在有向网络的节点攻击过程中关联出如下的同步数据,所述同步数据包括步骤E中有向网络的最大连通子图相对值S和步骤D中有向网络节点的攻击成本ρ,然后通过计算机软件(本实施例优选Origin软件)以步骤D中有向网络节点的攻击成本ρ为横坐标、以步骤E中有向网络的最大连通子图相对值S为纵坐标绘制出关系曲线图。

实施例二

一种有向网络中节点攻击成本与鲁棒性关系的预测方法,其方法步骤如下:

A、得到有向网络,该有向网络包括人工合成网络和实际使用的有向网络;

B、对步骤A中的有向网络相关属性进行计算,得到有向网络的节点入度、节点出度,节点入度是指从其他节点指向该节点的边的数目,节点出度是指从一个节点指向其他节点的边的数目,并采用如下三种算法分别得到所对应的值:

B1、PageRank算法:对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值;

B2、HITS算法:对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,所述Authority值为根据HITS算法得到的节点的权威值,所述Hub值为根据HITS算法得到的节点的枢纽值;

B3、LeaderRank算法:对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值;

本实施例还可以对步骤B有向网络所采用的三种算法分别得到所对应的值随节点入度或节点出度的变化关系曲线图,具体如下:

a1、若有向网络选择PageRank算法,对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值,将有向网络的所有节点的PageRank值通过软件得到PageRank值随节点入度或节点出度的变化关系曲线图;

a2、若有向网络选择HITS算法,对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,将有向网络的所有节点的Authority值通过软件得到Authority值随节点入度或节点出度的变化关系曲线图,将有向网络的所有节点的Hub值通过软件得到Hub值随节点入度或节点出度的变化关系曲线图;

a3、若有向网络选择LeaderRank算法,对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值,将有向网络的所有节点的LeaderRank值通过软件得到LeaderRank值随节点入度或节点出度的变化关系曲线图;

通过上述方法分别得到PageRank值、Authority值、Hub值、LeaderRank值分别随节点入度或节点出度的变化关系曲线图。

C、对步骤B所采用的算法所得到的值排序后并进行有向网络节点的攻击,具体如下:

C1、将有向网络根据PageRank算法得到所有节点的PageRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C11、将有向网络的所有节点的PageRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C12、将有向网络的所有节点的PageRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C13、将有向网络的所有节点的PageRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

C2、将有向网络根据HITS算法得到所有节点的Authority值与Hub值,然后以所有节点的Authority值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C21、将有向网络的所有节点的Authority值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C22、将有向网络的所有节点的Authority值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C23、将有向网络的所有节点的Authority值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C3、将有向网络根据HITS算法得到所有节点的Authority值与Hub值,然后以所有节点的Hub值进行排序并按照如下三种攻击策略之一对有向网络的节点进行攻击:

C31、将有向网络的所有节点的Hub值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C32、将有向网络的所有节点的Hub值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C33、将有向网络的所有节点的Hub值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C4、将有向网络根据LeaderRank算法得到所有节点的LeaderRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C41、将有向网络的所有节点的LeaderRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C42、将有向网络的所有节点的LeaderRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C43、将有向网络的所有节点的LeaderRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

D、在步骤C中攻击有向网络的节点时,分别通过计算机软件同步计算出有向网络节点的攻击成本ρ;

D1、若有向网络选择PageRank算法并按照步骤C1以PageRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,PR为PageRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,PRi是节点i的PageRank值,PRl是被攻击节点对应的PageRank值;

D2、若有向网络选择HITS算法并按照步骤C2以Authority值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Authorityi是节点i的Authority值,Authorityl是被攻击节点对应的Authority值;

D3、若有向网络选择HITS算法并按照步骤C3以Hub值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Hubi是节点i的Hub值,Hubl是被攻击节点对应的Hub值;

D4、若有向网络选择LeaderRank算法并按照步骤C4以LeaderRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,LR为LeaderRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,LRi是节点i的LeaderRank值,LRl是被攻击节点对应的LeaderRank值;

E、在步骤D攻击有向网络的节点过程中,分别通过计算机软件根据最大连通子图同步计算出有向网络的网络鲁棒性,计算方法如下:

E1、在攻击有向网络的节点前,通过计算机软件计算出原始有向网络的所有节点个数的总数N;对于人工合成网络来说,原始有向网络的所有节点个数的总数N是人为设定的;而对于真实网络来说,通过网上有公开的数据集可以得到原始有向网络的所有节点个数的总数N。

E2、在攻击有向网络的节点时,每攻击一个节点,就移除有向网络的该节点,并依次计算出被攻击后的有向网络的最大连通子图所含有的节点个数N';将有向网络分解成两个及以上的分支,把各连通分支中包含节点数最多的分支叫做最大连通子图;

E3、在攻击有向网络的节点完毕后,通过如下公式计算出在节点攻击过程中所有的最大连通子图相对值S;

其中,N'为有向网络受攻击后的最大连通子图所含有的节点个数;N为有向网络被破坏前的节点总数;

最大连通子图相对值S的值越大,则说明该有向网络鲁棒性越强;

F、分别通过计算机软件按照有向网络节点攻击过程绘制出有向网络的鲁棒性与节点的攻击成本之间的关系曲线图:

在有向网络的节点攻击过程中关联出如下的同步数据,所述同步数据包括步骤E中有向网络的最大连通子图相对值S和步骤D中有向网络节点的攻击成本ρ,然后通过计算机软件(本实施例优选Origin软件)以步骤D中有向网络节点的攻击成本ρ为横坐标、以步骤E中有向网络的最大连通子图相对值S为纵坐标绘制出关系曲线图,并在同一坐标系中得到四条关系曲线图,根据四条关系曲线图综合判断节点的攻击成本对有向网络鲁棒性的影响。

实施例三

一种有向网络中节点攻击成本与鲁棒性关系的预测方法,其方法步骤如下:

A、得到有向网络,该有向网络包括人工合成网络和实际使用的有向网络;

B、对步骤A中的有向网络相关属性进行计算,得到有向网络的节点入度、节点出度,节点入度是指从其他节点指向该节点的边的数目,节点出度是指从一个节点指向其他节点的边的数目,并采用如下三种算法分别得到所对应的值:

B1、PageRank算法:对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值;

B2、HITS算法:对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,所述Authority值为根据HITS算法得到的节点的权威值,所述Hub值为根据HITS算法得到的节点的枢纽值;

B3、LeaderRank算法:对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值;

本实施例还可以对步骤B有向网络所采用的三种算法分别得到所对应的值随节点入度或节点出度的变化关系曲线图,具体如下:

a1、若有向网络选择PageRank算法,对有向网络根据PageRank算法得到有向网络的所有节点的PageRank值,将有向网络的所有节点的PageRank值通过软件得到PageRank值随节点入度或节点出度的变化关系曲线图;

a2、若有向网络选择HITS算法,对有向网络根据HITS算法得到有向网络的所有节点的Authority值与Hub值,将有向网络的所有节点的Authority值通过软件得到Authority值随节点入度或节点出度的变化关系曲线图,将有向网络的所有节点的Hub值通过软件得到Hub值随节点入度或节点出度的变化关系曲线图;

a3、若有向网络选择LeaderRank算法,对有向网络根据LeaderRank算法得到有向网络的所有节点的LeaderRank值,将有向网络的所有节点的LeaderRank值通过软件得到LeaderRank值随节点入度或节点出度的变化关系曲线图;

通过上述方法分别得到PageRank值、Authority值、Hub值、LeaderRank值分别随节点入度或节点出度的变化关系曲线图。

C、对步骤B所采用的算法所得到的值排序后并进行有向网络节点的攻击,具体如下:

C1、将有向网络根据PageRank算法得到所有节点的PageRank值,则按照如下三种攻击策略分别对有向网络的节点进行攻击:

C11、将有向网络的所有节点的PageRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C12、将有向网络的所有节点的PageRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C13、将有向网络的所有节点的PageRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

C2、将有向网络根据HITS算法得到所有节点的Authority值与Hub值,然后以所有节点的Authority值进行排序并按照如下三种攻击策略分别对有向网络的节点进行攻击:

C21、将有向网络的所有节点的Authority值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C22、将有向网络的所有节点的Authority值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C23、将有向网络的所有节点的Authority值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C3、将有向网络根据HITS算法得到所有节点的Authority值与Hub值,然后以所有节点的Hub值进行排序并按照如下三种攻击策略分别对有向网络的节点进行攻击:

C31、将有向网络的所有节点的Hub值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C32、将有向网络的所有节点的Hub值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C33、将有向网络的所有节点的Hub值按照由大到小的顺序排序,按照此排序结果对所有节点进行攻击;

C4、将有向网络根据LeaderRank算法得到所有节点的LeaderRank值,则按照如下三种攻击策略之一对有向网络的节点进行攻击:

C41、将有向网络的所有节点的LeaderRank值按照大小随机排序,按照此排序结果对所有节点进行攻击;

C42、将有向网络的所有节点的LeaderRank值按照由小到大的顺序排序,按照此排序结果对所有节点进行攻击;

C43、将有向网络的所有节点的LeaderRank值按照由大到小的顺序排序,按照此排序结果对节点进行攻击;

D、在步骤C中攻击有向网络的节点时,分别通过计算机软件同步计算出有向网络节点的攻击成本ρ;

D1、若有向网络选择PageRank算法并按照步骤C1中的其中一种攻击策略以PageRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,PR为PageRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,PRi是节点i的PageRank值,PRl是被攻击节点对应的PageRank值;

D2、若有向网络选择HITS算法并按照步骤C2中的其中一种攻击策略以Authority值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Authorityi是节点i的Authority值,Authorityl是被攻击节点对应的Authority值;

D3、若有向网络选择HITS算法并按照步骤C3以Hub值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,Hubi是节点i的Hub值,Hubl是被攻击节点对应的Hub值;

D4、若有向网络选择LeaderRank算法并按照步骤C4中的其中一种攻击策略以LeaderRank值进行排序攻击,则总的攻击成本ρ通过如下公式计算得到:

其中,LR为LeaderRank值的简写,Z为有向网络中被移除节点的数量总和,N为有向网络的节点总数,LRi是节点i的LeaderRank值,LRl是被攻击节点对应的LeaderRank值;

E、在步骤D攻击有向网络的节点过程中,分别通过计算机软件根据最大连通子图同步计算出有向网络的网络鲁棒性,计算方法如下:

E1、在攻击有向网络的节点前,通过计算机软件计算出原始有向网络的所有节点个数的总数N;对于人工合成网络来说,原始有向网络的所有节点个数的总数N是人为设定的;而对于真实网络来说,通过网上有公开的数据集可以得到原始有向网络的所有节点个数的总数N。

E2、在攻击有向网络的节点时,每攻击一个节点,就移除有向网络的该节点,并依次计算出被攻击后的有向网络的最大连通子图所含有的节点个数N';将有向网络分解成两个及以上的分支,把各连通分支中包含节点数最多的分支叫做最大连通子图;

E3、在攻击有向网络的节点完毕后,通过如下公式计算出在节点攻击过程中所有的最大连通子图相对值S;

其中,N'为有向网络受攻击后的最大连通子图所含有的节点个数;N为有向网络被破坏前的节点总数;

最大连通子图相对值S的值越大,则说明该有向网络鲁棒性越强;

F、分别通过计算机软件按照有向网络节点攻击过程绘制出有向网络的鲁棒性与节点的攻击成本之间的关系曲线图:

在有向网络的节点攻击过程中关联出如下的同步数据,所述同步数据包括步骤E中有向网络的最大连通子图相对值S和步骤D中有向网络节点的攻击成本ρ,然后通过计算机软件(本实施例优选Origin软件)以步骤D中有向网络节点的攻击成本ρ为横坐标、以步骤E中有向网络的最大连通子图相对值S为纵坐标绘制出关系曲线图,并在坐标系中得到十二条关系曲线图,根据十二条关系曲线图综合判断节点的攻击成本对有向网络鲁棒性的影响。通过观察曲线图中参数之间的变化关系可以得知在考虑成本时不同节点的攻击策略对已知拓扑结构的网络鲁棒性的影响,同时可以比较不同节点重要性排序方法在考虑节点的攻击成本时对有向网络鲁棒性的影响。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1