CN114650141A - 一种基于fpga的sdn网络策略合法性的验证方法 - Google Patents

一种基于fpga的sdn网络策略合法性的验证方法 Download PDF

Info

Publication number
CN114650141A
CN114650141A CN202210168042.0A CN202210168042A CN114650141A CN 114650141 A CN114650141 A CN 114650141A CN 202210168042 A CN202210168042 A CN 202210168042A CN 114650141 A CN114650141 A CN 114650141A
Authority
CN
China
Prior art keywords
application program
controller
access
fpga
information
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.)
Granted
Application number
CN202210168042.0A
Other languages
English (en)
Other versions
CN114650141B (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.)
Guilin University of Electronic Technology
Original Assignee
Guilin University of Electronic Technology
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 Guilin University of Electronic Technology filed Critical Guilin University of Electronic Technology
Priority to CN202210168042.0A priority Critical patent/CN114650141B/zh
Publication of CN114650141A publication Critical patent/CN114650141A/zh
Application granted granted Critical
Publication of CN114650141B publication Critical patent/CN114650141B/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/3236Cryptographic 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 using cryptographic hash functions
    • 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
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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

Landscapes

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

Abstract

本发明公开一种基于FPGA的SDN网络策略合法性的验证方法,通过在应用平面和控制器平面中间加入基于FPGA计算设备的验证平面来验证SDN网络策略的合法性,利用FPGA并行处理和快速计算的优势,降低应用程序的身份验证时延,减少了控制器的计算负载,并在合法性的验证过程中对网络应用程序对控制器的信任度进行评估,有效的防止了恶意应用程序的网络策略对控制器的攻击,快速的验证SDN网络下发策略的合法性。

Description

一种基于FPGA的SDN网络策略合法性的验证方法
技术领域
本发明涉及SDN(Software Defined Networking软件定义网络)技术领域,具体涉及一种基于FPGA的SDN网络策略合法性的验证方法。
背景技术
SDN是一种新型的网络架构,其将控制平面和转发平面分离,提供了网络的开放性和可编程性。随着网络规模的不断增大,SDN使用多个控制器将整个网络划分为多个域,每个控制器负责控制管理一个域的交换机,不仅能够降低每个控制器的负载,而且能够满足大规模流量处理需求。
在SDN中,操作人员通过应用程序以制定网络策略,通过控制器以流规则形式下发到底层交换设备中,网络数据包根据交换设备中的流表项进行转发处理,实现对应的网络策略。由于控制器开放了其北向接口,网络应用程序无论是否经过验证都可以向控制器发送网络策略,所以应用程序的网络策略的合法性需要控制器验证。此外,还需要在应用程序发送合法的网络策略过程中,避免攻击者窃听或篡改网络报文信息。为此,对应用程序制定的网络策略的合法性进行验证,能够防止恶意应用的非法的网络策略的执行,保障SDN网络的正确运行。
目前很多文献使用复杂的算法来保证网络策略的合法性,但在大量网络策略集中发送的情况下,控制器的计算负载和网络策略的合法性验证的时延非常大。随着网络规模的不断增大,迫切的需要一种合理的网络策略合法性验证方法,既能防止消息在传输过程中被篡改,也能够保证在较短的时间内完成网络策略的合法性验证。
发明内容
本发明所要解决的是现有SDN网络策略合法性方法在面对大规模网络和大量网络策略集中发送的情况下存在时延大的问题,提供一种基于FPGA的SDN网络策略合法性的验证方法。
为解决上述问题,本发明是通过以下技术方案实现的:
一种基于FPGA的SDN网络策略合法性的验证方法,包括步骤如下:
步骤1、SDN网络的应用程序先将网络策略信息使用哈希算法生成信息摘要,并使用应用程序私钥对信息摘要进行加密生成数字签名;再将网络策略信息和数字签名封装为策略签名消息,并将策略签名消息通过基于FPGA计算设备的验证平面发送至SDN网络的控制器;
步骤2、基于FPGA计算设备的验证平面的FPGA计算设备接收应用程序发送至控制器的策略签名消息,解析并提取其网络策略信息和数字签名信息;
步骤3、FPGA计算设备先将网络策略信息使用与步骤1相同的哈希算法生成策略摘要信息,同时使用应用程序的公钥对数字签名信息解密得到签名摘要信息;再判断策略摘要信息和签名摘要信息是否相同:
如果两者相同,则认定应用程序发送到控制器的策略签名消息是完整的,并转至步骤4;
如果两者不相同,则认定应用程序发送到控制器的策略签名消息在传输过程中被篡改,并拒绝此次应用程序对控制器的访问请求;
步骤4、FPGA计算设备依据解密数字签名信息的公钥确定应用程序的身份,并查询应用程序对控制器的当前信任值:
若当前信任值高于设定的信任阈值,则认定应用程序通过验证,并转至步骤5;
若当前信任值低于等于设定的信任阈值,则认定应用程序未通过验证,拒绝此次应用程序对控制器的访问请求;
步骤5、FPGA计算设备依据其所存储的各控制器对不同应用程序的授予的权限集,对应用程序进行权限检查:
若权限检查通过,则将应用程序的网络策略信息发送至控制器执行,同时探测此次应用程序下发的网络策略对其他网络策略转发行为有无影响,以判定此次应用程序对控制器的访问行为是正常访问或非法访问,并将探测结果写入应用程序的行为记录中,并转至步骤6;
若权限检查未通过,则认定此次应用程序对控制器的访问为越权操作,并拒绝此次应用程序对控制器的访问请求;
步骤6:FPGA计算设备依据应用程序的行为记录对应用程序对控制器的当前信任值进行更新,即:当此次应用程序对控制器的访问行为是正常访问时,则令应用程序对控制器的当前信任值增加;当此次应用程序对控制器的访问行为是非法访问时,则令应用程序对控制器的当前信任值减少;
步骤7、FPGA计算设备将应用程序对控制器的当前信任值并发送至应用程序。
上述步骤5中,当应用程序下发的网络策略对其他网络策略转发行为无影响时,则判定此次应用程序对控制器的访问行为是正常访问;当应用程序下发的网络策略对其他网络策略转发行为有影响时,则判定此次应用程序对控制器的访问行为是非法访问。
上述步骤6,当前信任值的更新公式为:
Figure BDA0003517373100000021
式中,
Figure BDA0003517373100000022
表示更新前即第t次应用程序i对控制器j访问的信任值,
Figure BDA0003517373100000023
表示更新后即第t+1次应用程序i对控制器j访问的信任值,ft为第t次返回的评估值,当第t次应用程序i对控制器j的访问是正常访问时,第t次返回的评估值ft为正值,当第t次应用程序i对控制器j的访问是非法访问时,第t次返回的评估值ft为负值。
上述方案中,每次返回的评估值ft的绝对值为固定值或可变值。
与现有技术相比,本发明通过在应用平面和控制器平面中间加入基于FPGA计算设备的验证平面来验证SDN网络策略的合法性,利用FPGA并行处理和快速计算的优势,降低应用程序的身份验证时延,减少了控制器的计算负载,并在合法性的验证过程中对网络应用程序对控制器的信任度进行评估,有效的防止了恶意应用程序的网络策略对控制器的攻击,快速的验证SDN网络下发策略的合法性。
附图说明
图1为基于FPGA的SDN网络策略合法性验证系统框架图。
图2为基于FPGA的SDN网络策略合法性验证方法流程图。
图3为应用程序网络策略的权限集示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实例,对本发明进一步详细说明。
参见图1,本发明通过在应用平面和控制器平面中间加入基于FPGA计算设备的验证平面来验证SDN网络策略的合法性,其所实现的一种基于FPGA的SDN网络策略合法性的验证方法,如图2所示,其具体包括步骤如下:
步骤1:SDN网络的应用程序先将网络策略信息使用MD5哈希算法计算生成信息摘要,并使用应用程序的私钥对信息摘要进行加密生成数字签名;SDN网络的应用程序先再将网络策略信息和数字签名封装为策略签名消息,并将策略签名消息通过基于FPGA计算设备的验证平面发送至SDN网络的控制器。
步骤2:基于FPGA计算设备的验证平面的FPGA计算设备接收应用程序发送至控制器的策略签名消息,解析并提取其网络策略信息和数字签名信息。
步骤3:FPGA计算设备先将网络策略信息和控制器中的操作权限信息使用MD5哈希算法生成策略摘要信息,同时使用应用程序的公钥对数字签名信息解密得到签名摘要信息;再判断策略摘要信息和签名摘要信息是否相同:
如果策略摘要信息和签名摘要信息相同,则认定应用程序发送到控制器的策略签名消息是完整的(即消息在传输的过程中未被篡改)并转至步骤4;
如果策略摘要信息和签名摘要信息不相同,则认定应用程序发送到控制器的策略签名消息在传输过程中被篡改,拒绝此次应用程序对控制器的访问请求。
步骤4:FPGA计算设备依据解密数字签名信息的公钥确定应用程序的身份,并查询应用程序对控制器的当前信任值:
若当前信任值高于设定的信任阈值,则认定应用程序通过验证,并转至步骤5;
若当前低于等于设定的信任阈值,则认定应用程序未通过验证,拒绝此次应用程序对控制器的访问请求。
步骤5:对于通过验证的应用程序下发的网络策略,FPGA计算设备依据FPGA计算设备所存储的各控制器对不同应用程序的授予的权限集,对应用程序进行权限检查:
若权限检查通过,则将其网络策略信息发送至控制器执行,同时探测此次应用程序下发的网络策略对其他网络策略转发行为有无影响,以判定此次应用程序对控制器的访问行为是正常访问或非法访问,即当应用程序下发的网络策略对其他网络策略转发行为无影响时,则判定此次应用程序对控制器的访问行为是正常访问;当应用程序下发的网络策略对其他网络策略转发行为有影响时,则判定此次应用程序对控制器的访问行为是非法访问,并将探测结果写入应用程序的行为记录中,并转至步骤6;
若权限检查未通过,则认定此次应用程序对控制器的访问为越权操作,并拒绝此次应用程序对控制器的访问请求。
上述权限集如图3所示,设计基于功能的权限集,包含若干细粒度的权限矩阵,包括流表的修改(flow_mod)、设置流表优先级(set_flow_priority)等等。每个权限矩阵中,行为控制器编号、列为应用程序编号,其中“1”表示该应用程序在此控制器具有这项权限,“0”表示该应用程序在此控制器没有这项权限。
步骤6:FPGA计算设备依据应用程序的行为记录对应用程序的当前信任值进行更新,即:当此次应用程序对控制器的访问行为是正常访问时,则令应用程序对控制器的当前信任值增加;当此次应用程序对控制器的访问行为是非法访问时,则令应用程序对控制器的当前信任值减少。
FPGA计算设备依据应用程序的下发网络策略行为记录,动态评估其应用程序与控制器的信任值,防止恶意应用程序的重复访问。该行为记录包含应用程序下发网络策略后,探针探测的所有历史行为记录,若为正常访问,则返回的评估值ft为正值,若为非法访问,则返回的评估值为ft为负值,并动态修改其应用程序此次网络策略涉及的操作权限。
在本发明中,可以在此次应用程序对控制器访问时信任值即更新前信任值
Figure BDA0003517373100000041
的基础上,加入第t次返回的评估值ft,得到应用程序下一次对控制器访问时的信任值即更新后的信任值
Figure BDA0003517373100000042
应用程序对控制器的信任值通过以下公式进行更新:
Figure BDA0003517373100000043
式中,
Figure BDA0003517373100000051
表示更新前(即第t次)应用程序i对控制器j访问的信任值,
Figure BDA0003517373100000052
表示更新后(即第t+1次)应用程序i对控制器j访问的信任值,ft为第t次返回的评估值,i∈[1,N],N为应用程序的数量,j∈[1,M],M为控制器的数量。
每次返回的评估值ft的符号根据访问的类型决定,即若第t次应用程序i对控制器j的访问是正常访问时,第t次返回的评估值ft为正值,若第t次应用程序i对控制器j的访问是非法访问时,第t次返回的评估值ft为负值。每次返回的评估值ft的大小(即返回的评估值ft的绝对值|ft|)可以是固定值,也可以是可变值。当每次返回的评估值ft的大小都相同时,每次返回的评估值ft的绝对值|ft|便是固定值,当每次返回的评估值ft的大小由此次应用程序下发的网络策略对其他网络策略转发行为影响大小决定时,每次返回的评估值ft的绝对值|ft|便是可变值。
步骤7:FPGA计算设备将更新后的信任值
Figure BDA0003517373100000053
视为当前信任值并发送至应用程序。
需要说明的是,尽管以上本发明所述的实施例是说明性的,但这并非是对本发明的限制,因此本发明并不局限于上述具体实施方式中。在不脱离本发明原理的情况下,凡是本领域技术人员在本发明的启示下获得的其它实施方式,均视为在本发明的保护之内。

Claims (4)

1.一种基于FPGA的SDN网络策略合法性的验证方法,其特征是,包括步骤如下:
步骤1、SDN网络的应用程序先将网络策略信息使用哈希算法生成信息摘要,并使用应用程序私钥对信息摘要进行加密生成数字签名;再将网络策略信息和数字签名封装为策略签名消息,并将策略签名消息通过基于FPGA计算设备的验证平面发送至SDN网络的控制器;
步骤2、基于FPGA计算设备的验证平面的FPGA计算设备接收应用程序发送至控制器的策略签名消息,解析并提取其网络策略信息和数字签名信息;
步骤3、FPGA计算设备先将网络策略信息使用与步骤1相同的哈希算法生成策略摘要信息,同时使用应用程序的公钥对数字签名信息解密得到签名摘要信息;再判断策略摘要信息和签名摘要信息是否相同:
如果两者相同,则认定应用程序发送到控制器的策略签名消息是完整的,并转至步骤4;
如果两者不相同,则认定应用程序发送到控制器的策略签名消息在传输过程中被篡改,并拒绝此次应用程序对控制器的访问请求;
步骤4、FPGA计算设备依据解密数字签名信息的公钥确定应用程序的身份,并查询应用程序对控制器的当前信任值:
若当前信任值高于设定的信任阈值,则认定应用程序通过验证,并转至步骤5;
若当前信任值低于等于设定的信任阈值,则认定应用程序未通过验证,拒绝此次应用程序对控制器的访问请求;
步骤5、FPGA计算设备依据其所存储的各控制器对不同应用程序的授予的权限集,对应用程序进行权限检查:
若权限检查通过,则将应用程序的网络策略信息发送至控制器执行,同时探测此次应用程序下发的网络策略对其他网络策略转发行为有无影响,以判定此次应用程序对控制器的访问行为是正常访问或非法访问,并将探测结果写入应用程序的行为记录中,并转至步骤6;
若权限检查未通过,则认定此次应用程序对控制器的访问为越权操作,并拒绝此次应用程序对控制器的访问请求;
步骤6:FPGA计算设备依据应用程序的行为记录对应用程序对控制器的当前信任值进行更新,即:当此次应用程序对控制器的访问行为是正常访问时,则令应用程序对控制器的当前信任值增加;当此次应用程序对控制器的访问行为是非法访问时,则令应用程序对控制器的当前信任值减少;
步骤7、FPGA计算设备将应用程序对控制器的当前信任值并发送至应用程序。
2.根据权利要求1所述的一种基于FPGA的SDN网络策略合法性的验证方法,其特征是,步骤5中,当应用程序下发的网络策略对其他网络策略转发行为无影响时,则判定此次应用程序对控制器的访问行为是正常访问;当应用程序下发的网络策略对其他网络策略转发行为有影响时,则判定此次应用程序对控制器的访问行为是非法访问。
3.根据权利要求1所述的一种基于FPGA的SDN网络策略合法性的验证方法,其特征是,步骤6,当前信任值的更新公式为:
Figure FDA0003517373090000021
式中,
Figure FDA0003517373090000022
表示更新前即第t次应用程序i对控制器j访问的信任值,
Figure FDA0003517373090000023
表示更新后即第t+1次应用程序i对控制器j访问的信任值,ft为第t次返回的评估值,当第t次应用程序i对控制器j的访问是正常访问时,第t次返回的评估值ft为正值,当第t次应用程序i对控制器j的访问是非法访问时,第t次返回的评估值ft为负值。
4.根据权利要求3所述的一种基于FPGA的SDN网络策略合法性的验证方法,每次返回的评估值ft的绝对值为固定值或可变值。
CN202210168042.0A 2022-02-23 2022-02-23 一种基于fpga的sdn网络策略合法性的验证方法 Active CN114650141B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210168042.0A CN114650141B (zh) 2022-02-23 2022-02-23 一种基于fpga的sdn网络策略合法性的验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210168042.0A CN114650141B (zh) 2022-02-23 2022-02-23 一种基于fpga的sdn网络策略合法性的验证方法

Publications (2)

Publication Number Publication Date
CN114650141A true CN114650141A (zh) 2022-06-21
CN114650141B CN114650141B (zh) 2024-01-30

Family

ID=81994045

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210168042.0A Active CN114650141B (zh) 2022-02-23 2022-02-23 一种基于fpga的sdn网络策略合法性的验证方法

Country Status (1)

Country Link
CN (1) CN114650141B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150026794A1 (en) * 2013-07-18 2015-01-22 Palo Alto Networks, Inc. Packet classification for network routing
CN110537352A (zh) * 2017-04-13 2019-12-03 诺基亚技术有限公司 用于信任管理的装置、方法和计算机程序产品
CN110855695A (zh) * 2019-11-19 2020-02-28 武汉思普崚技术有限公司 一种改进的sdn网络安全认证方法及系统
CN112929299A (zh) * 2021-01-27 2021-06-08 广州市品高软件股份有限公司 基于fpga加速卡的sdn云网络实现方法、装置及设备
CN113595793A (zh) * 2021-07-30 2021-11-02 桂林电子科技大学 基于fpga的sdn网络策略一致性的分段验证方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150026794A1 (en) * 2013-07-18 2015-01-22 Palo Alto Networks, Inc. Packet classification for network routing
CN110537352A (zh) * 2017-04-13 2019-12-03 诺基亚技术有限公司 用于信任管理的装置、方法和计算机程序产品
CN110855695A (zh) * 2019-11-19 2020-02-28 武汉思普崚技术有限公司 一种改进的sdn网络安全认证方法及系统
CN112929299A (zh) * 2021-01-27 2021-06-08 广州市品高软件股份有限公司 基于fpga加速卡的sdn云网络实现方法、装置及设备
CN113595793A (zh) * 2021-07-30 2021-11-02 桂林电子科技大学 基于fpga的sdn网络策略一致性的分段验证方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吴晓亮: "SDN多控制器网络策略合法性和一致性验证方法研究", 《中国优秀硕士学位论文全文数据库》, no. 2023, pages 13 - 41 *

Also Published As

Publication number Publication date
CN114650141B (zh) 2024-01-30

Similar Documents

Publication Publication Date Title
US11509679B2 (en) Trust topology selection for distributed transaction processing in computing environments
Wang et al. Perm-guard: Authenticating the validity of flow rules in software defined networking
US11210387B2 (en) Detecting and preventing unauthorized credential change
CN114553540B (zh) 基于零信任的物联网系统、数据访问方法、装置及介质
CN106899561B (zh) 一种基于acl的tnc权限控制方法和系统
CN114139203A (zh) 基于区块链的异构身份联盟风险评估系统、方法及终端
CN117040896A (zh) 一种物联网管理方法及物联网管理平台
CN115296916A (zh) 一种基于决策树模型的零信任安全系统
EP3817320A1 (en) Blockchain-based system for issuing and validating certificates
Gupta et al. Fog computing and its security challenges
US9485229B2 (en) Object level encryption system including encryption key management system
CN112364360B (zh) 一种财务数据安全管理系统
CN117201077A (zh) 一种物联网接入场景身份建模及信任评估方法
US20230254302A1 (en) Authentication of device in network using cryptographic certificate
Lin et al. MDFS: A mimic defense theory based architecture for distributed file system
US20210067739A1 (en) Systems and methods of using a blockchain to secure a building management system
CN114650141B (zh) 一种基于fpga的sdn网络策略合法性的验证方法
Halgamuge Latency estimation of blockchain-based distributed access control for cyber infrastructure in the iot environment
US20220343095A1 (en) Fingerprint-Based Device Authentication
US20210367934A1 (en) Secure system and method for preventing cross-site credential reuse
CN111587434A (zh) 对修改的调节
CN111131550B (zh) 基于密码算法的局域网内ip地址计算方法
Ahmed et al. A secure provenance scheme for detecting consecutive colluding users in distributed networks
CN111970223B (zh) 一种内生安全的单体wlan控制系统及方法
CN117294465B (zh) 一种基于跨域通信的属性加密系统及方法

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