CN108833381A - 软件定义网络的可信连接方法及系统 - Google Patents
软件定义网络的可信连接方法及系统 Download PDFInfo
- Publication number
- CN108833381A CN108833381A CN201810549020.2A CN201810549020A CN108833381A CN 108833381 A CN108833381 A CN 108833381A CN 201810549020 A CN201810549020 A CN 201810549020A CN 108833381 A CN108833381 A CN 108833381A
- Authority
- CN
- China
- Prior art keywords
- controller
- information
- interchanger
- certification request
- credible
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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)
Abstract
本发明涉及软件定义网络安全领域,具体提供一种软件定义网络的可信连接方法及系统,方法包括:控制器向交换机发送第一认证请求,交换机基于第一认证请求向控制器发送第一反馈信息,控制器基于一第一预设PCR值、第一认证请求以及第一反馈信息以认证交换机是否可信,并在可信时向交换机发送配置查询请求,交换机向所述控制器发送第二认证请求,控制器接收基于第二认证请求向交换机发送第二反馈信息,交换机基于一第二预设PCR值、第二认证请求以及第二反馈信息以认证控制器是否可信,并在可信时,基于配置查询请求向控制器反馈配置信息。通过上述设置以在软件定义网络中建立交换机与控制器之间的可信连接,进而避免出现网络因受到影响而瘫痪的情况。
Description
技术领域
本发明涉及软件定义网络安全领域,具体而言,涉及一种软件定义网络的可信连接方法及系统。
背景技术
软件定义网络(Software Defined Networking,SDN)的控制层和数据转发层分离,且通常由控制层对数据转发层进行统一管理,以简化网络管理,提高网络灵活性,降低网络调整配置成本。
经发明人研究发现,现有的软件定义网络中,位于控制层的控制器与数据转发层的OVS(交换机)在建立连接时仅进行协议版本的交互握手,并未对即将连接的对端设备进行平台完整性认证,进而可能会造成控制器或OVS(交换机)因与带有风险的设备进行连接而遭受攻击。控制层中的控制器作为SDN的核心,其安全状况尤为重要,一旦遭受攻击而无法正常工作,甚至导致网络的瘫痪。OVS(交换机)作为数据转发工作的执行者,被危险设备利用可能对数据转发等功能造成影响甚至导致网络瘫痪。
发明内容
有鉴于此,本发明的目的在于提供一种软件定义网络的可信连接方法及系统,以有效避免出现网络因受到影响而瘫痪的情况。
为实现上述目的,本发明实施例采用如下技术方案:
一种软件定义网络的可信连接方法,应用于包括交换机和控制器的软件定义网络的可信连接系统,所述方法包括:
所述控制器向所述交换机发送第一认证请求;
所述交换机接收所述第一认证请求并基于所述第一认证请求向所述控制器发送第一反馈信息;
所述控制器基于一第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机是否可信,并在可信时向所述交换机发送配置查询请求;
所述交换机向所述控制器发送第二认证请求;
所述控制器接收所述第二认证请求并基于所述第二认证请求向所述交换机发送第二反馈信息;
所述交换机基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信,并在可信时,基于所述配置查询请求向所述控制器反馈配置信息。
可选的,在上述软件定义网络的可信连接方法中,所述控制器向所述交换机发送第一认证请求的步骤包括:
所述控制器将产生的第一随机数和需要验证的第一寄存器编号进行连接后采用第一私钥进行签名以得到第一验证信息,采用第二公钥对第一验证信息进行加密以得到第一加密信息,并根据第一请求信息和所述第一加密信息得到第一认证请求并发送至所述交换机;
所述交换机接收所述第一认证请求并基于所述第一认证请求向所述控制器发送第一反馈信息的步骤包括:
所述交换机在接收到所述第一认证请求时响应所述第一请求信息,以采用与所述第二公钥对应的第二私钥对所述第一加密信息进行解密,并对解密后的第一加密信息采用与第一私钥对应的第一公钥进行签名认证以得到所述第一验证信息,获取第一预设PCR值和所述第一验证信息中的第一随机数,并根据所述第一随机数与所述第一预设PCR值进行连接后得到第一哈希离散值,将所述交换机的平台编号、所述第一随机数以及所述第一哈希离散值采用第二私钥进行签名后利用第一公钥进行加密以得到第一反馈信息并发送至所述控制器;
所述控制器基于第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机是否可信的步骤包括:
所述控制器对所述第一反馈信息采用第一私钥进行解密之后采用第二公钥进行签名验证,并在验证通过后,验证所述第一随机数是否被更新,并在未被更新时,将所述第一哈希离散值与所述第一寄存器编号和第一随机数生成的值进行比对。
可选的,在上述软件定义网络的可信连接方法中,所述交换机向所述控制器发送第二认证请求的步骤包括:
所述交换机将产生的第二随机数和需要验证的第二寄存器编号进行连接后采用第二私钥进行签名以得到第二验证信息,采用第一公钥对第二验证信息进行加密以得到第二加密信息,并根据第二请求信息和所述第二加密信息得到第二认证请求并发送至所述控制器;
所述控制器接收所述第二认证请求并基于所述第二认证请求向所述交换机发送第二反馈信息的步骤包括:
所述控制器在接收到所述第二认证请求时响应所述第二请求信息,以采用与所述第一私钥对所述第二加密信息进行解密,并对解密后的第二加密信息采用第二公钥进行签名认证以得到所述第二验证信息,获取第二预设PCR值和所述第二验证信息中的第二随机数,并根据所述第二随机数与所述第二预设PCR值进行连接后得到第二哈希离散值,将所述控制器的平台编号、所述第二随机数以及所述第二哈希离散值采用第一私钥进行签名后利用第二公钥进行加密以得到第二反馈信息并发送至所述控制器;
所述交换机基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信的步骤包括:
所述交换机对所述第二反馈信息采用所述第二私钥进行解密之后采用所述第一公钥进行签名验证,并在验证通过后,验证所述第二随机数是否被更新,并在未被更新时,将所述第二哈希离散值与所述第二寄存器编号和第二随机数生成的值进行比对。
可选的,在上述软件定义网络的可信连接方法中,所述交换机中存储有多个第一预设版本信息,所述控制器中存储有多个第二预设版本信息,在执行所述控制器向所述交换机发送第一认证请求的步骤之前,所述方法还包括:
所述交换机获取所述多个第一预设版本信息中版本最高的一个作为第一版本信息并发送至所述控制器;
所述控制器接收所述第一版本信息,并将所述第一版本信息与所述控制器中的各所述第二预设版本信息分别进行匹配,当存在与所述第一版本信息匹配的第二预设版本信息时,向所述交换机反馈第一版本确认信息,当不存在与所述第一版本信息匹配的所述第二预设版本信息时,获取多个所述第二预设版本信息中版本最高的一个作为第二版本信息并发送至所述交换机,以使所述交换机在存在与第二版本信息匹配的第一预设版本信息时向所述控制器反馈第二版本确认信息。
可选的,在上述软件定义网络的可信连接方法中,在执行所述交换机基于第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信,并在可信时,基于所述配置查询请求向所述控制器反馈配置信息的步骤之后,所述方法还包括:
所述控制器在接收到所述配置信息时,开始计时,并在计时达到预设时长时向所述交换机发送连接查询信息:
所述交换机在接收到所述连接查询信息时,基于所述连接查询信息向所述控制器反馈连接确认信息;
所述控制器在接收到所述连接确认信息时再次开始计时。
本发明还提供一种软件定义网络的可信连接系统,包括控制器和交换机;
所述控制器用于向所述交换机发送第一认证请求;
所述交换机用于在接收到所述第一认证请求时,基于所述第一认证请求向所述控制器发送第一反馈信息;
所述控制器还用于基于一第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机是否可信,并在可信时向所述交换机发送配置查询请求;
所述交换机还用于向所述控制器发送第二认证请求;
所述控制器还用于接收所述第二认证请求并基于所述第二认证请求向所述交换机发送第二反馈信息;
所述交换机还用于基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信,并在可信时,基于所述配置查询请求向所述控制器反馈配置信息。
可选的,在上述软件定义网络的可信连接系统中,所述控制器还用于将产生的第一随机数和需要验证的第一寄存器编号进行连接后采用第一私钥进行签名以得到第一验证信息,采用第二公钥对第一验证信息进行加密以得到第一加密信息,并根据第一请求信息和所述第一加密信息得到第一认证请求并发送至所述交换机;
所述交换机还用于在接收到所述第一认证请求时,采用与所述第二公钥对应的第二私钥对所述第一加密信息进行解密,并对解密后的第一加密信息采用与第一私钥对应的第一公钥进行签名认证以得到所述第一验证信息,获取第一预设PCR值和所述第一验证信息中的第一随机数,并根据所述第一随机数与所述第一预设PCR值进行连接后得到第一哈希离散值,将所述交换机的平台编号、所述第一随机数以及所述第一哈希离散值采用第二私钥进行签名后利用第一公钥进行加密以得到第一反馈信息并发送至所述控制器;
所述控制器还用于对所述第一反馈信息采用第一私钥进行解密之后采用第二公钥进行签名验证,并在验证通过后,验证所述第一随机数是否被更新,并在未被更新时,将所述第一哈希离散值与所述第一寄存器编号和第一随机数生成的值进行比对。
可选的,在上述软件定义网络的可信连接系统中,所述交换机还用于将产生的第二随机数和需要验证的第二寄存器编号进行连接后采用第二私钥进行签名以得到第二验证信息,采用第一公钥对第二验证信息进行加密以得到第二加密信息,并根据第二请求信息和所述第二加密信息得到第二认证请求并发送至所述控制器;
所述控制器还用于在接收到所述第二认证请求时,采用与所述第一私钥对所述第二加密信息进行解密,并对解密后的第二加密信息采用所述第二公钥进行签名认证以得到所述第二验证信息,获取第二预设PCR值和所述第二验证信息中的第二随机数,并根据所述第二随机数与所述第二预设PCR值进行连接后得到第二哈希离散值,将所述控制器的平台编号、所述第二随机数以及所述第二哈希离散值采用所述第一私钥进行签名后利用所述第二公钥进行加密以得到第二反馈信息并发送至所述控制器;
所述交换机还用于对所述第二反馈信息采用所述第二私钥进行解密之后采用所述第一公钥进行签名验证,并在验证通过后,验证所述第二随机数是否被更新,并在未被更新时,将所述第二哈希离散值与所述第二寄存器编号和第二随机数生成的值进行比对。
可选的,在上述软件定义网络的可信连接系统中,所述交换机中存储有多个第一预设版本信息,所述控制器中存储有多个第二预设版本信息;
所述交换机还用于获取所述多个第一预设版本信息中版本最高的一个作为第一版本信息并发送至所述控制器;
所述控制器还用于接收所述第一版本信息,并将所述第一版本信息与所述控制器中的各所述第二预设版本信息分别进行匹配,当存在与所述第一版本信息匹配的第二预设版本信息时,向所述交换机反馈第一版本确认信息,当不存在与所述第一版本信息匹配的所述第二预设版本信息时,获取多个所述第二预设版本信息中版本最高的一个作为第二版本信息并发送至所述交换机,以使所述交换机在存在与第二版本信息匹配的第一预设版本信息时向所述控制器反馈第二版本确认信息。
可选的,在上述软件定义网络的可信连接系统中,所述控制器还用于在接收到所述配置信息时,开始计时,并在计时达到预设时长时向所述交换机发送连接查询信息:
所述交换机还用于在接收到所述连接查询信息时,基于所述连接查询信息向所述控制器反馈连接确认信息;
所述控制器还用于在接收到所述连接确认信息时再次开始计时。
本发明提供的一种软件定义网络的可信连接方法及系统,通过对控制器和交换机分别进行可信认证,并在交换机可信时,控制器向交换机发送配置查询请求,以及在控制器可信时,交换机基于所述查询请求向控制器反馈配置信息,以实现在软件定义网络中建立交换机与控制器之间的可信连接,进而避免出现网络因受到影响而瘫痪的情况。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
图1为本发明实施例提供的一种软件定义网络的可信连接系统的连接框图。
图2为本发明实施例提供的软件定义网络的可信连接方法的方法流程示意图。
图3为本发明实施例提供的软件定义网络的可信连接方法的另一方法流程示意图。
图4为本发明实施例提供的软件定义网络的可信连接方法的另一方法流程示意图。
图标:10-软件定义网络的可信连接系统;100-控制器;200-交换机。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明的一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
请结合图1和图2,本发明实施例提供了一种软件定义网络的可信连接方法,应用于包括控制器100和交换机200的软件定义网络的可信连接系统10。所述软件定义网络的可信连接方法应用于所述软件定义网络的可信连接系统10时执行步骤S110-S160六个步骤:
步骤S110:所述控制器100向所述交换机200发送第一认证请求。
其中,所述第一认证请求可以包括所述控制器100的信息,所述控制器100产生的随机数。只要能使所述交换机200能够认证即可。
步骤S120:所述交换机200接收所述第一认证请求并基于所述第一认证请求向所述控制器100发送第一反馈信息。
其中,所述第一反馈信息可以是基于所述第一认证请求回复的包括所述交换机200身份标识的信息,或可以确认所述交换机200是否被恶意修改的信息,例如所述交换机200的寄存器值。
步骤S130:所述控制器100基于一第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机200是否可信,并在可信时向所述交换机200发送配置查询请求。
其中,所述第一预设PCR值为存储于所述控制器100中的交换机200的寄存器值,因为PCR值对于设备完整性认证至关重要,所以为避免被恶意篡改或伪造,寄存器不能通过端口随意读写,仅能通过重置操作和扩展操作来变更,因此,通过验证第一预设PCR值、所述第一认证请求以及所述第一反馈信息可以准确地认证所述交换机200是否可信。
步骤S140:所述交换机200向所述控制器100发送第二认证请求。
其中,所述第二认证请求可以包括交换机200的信息和交换机200产生的随机数。只要能使所述控制器100能够认证即可。
步骤S150:所述控制器100接收所述第二认证请求并基于所述第二认证请求向所述交换机200发送第二反馈信息。
其中,所述第二反馈信息可以是基于所述第二认证请求回复的包括所述控制器100身份标识的信息,或可以确认所述控制器100是否被恶意修改的信息,例如所述控制器100的寄存器值。
步骤S160:所述交换机200基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器100是否可信,并在可信时,基于所述配置查询请求向所述控制器100反馈配置信息。
其中,所述第二预设PCR值为存储于所述交换机200中的控制器100的寄存器值,基于与步骤S130相同的理由,通过验证第一预设PCR值、所述第一认证请求以及所述第一反馈信息可以准确地认证所述交换机200是否可信。并在可信时,基于所述配置查询请求向所述控制器100反馈配置信息,以实现建立所述控制器100与所述交换机200之间的互信连接。
通过上述设置,以实现交换机200与控制器100之间互信认证,避免了控制器100和/或交换机200被攻击进而对网络造成影响或导致网络瘫痪的情况。
为保障在进行连接时认证的可靠性,可选的,在本实施例中,所述控制器100向所述交换机200发送第一认证请求的步骤包括:
所述控制器100将产生的第一随机数和需要验证的第一寄存器编号进行连接后采用第一私钥进行签名以得到第一验证信息,采用第二公钥对第一验证信息进行加密以得到第一加密信息,并根据第一请求信息和所述第一加密信息得到第一认证请求并发送至所述交换机200。
其中,所述第一随机数可以为28字节,需要验证的第一寄存器编号为4字节,所述控制器100将所述第一随机数和该第一寄存器编号进行连接后采用32字节的第一私钥进行签名得到64字节的第一验证信息,并采用64字节的第二公钥进行加密后将产生的第一加密信息和一第一请求信息得到第一认证请求发送至所述交换机200,所述第一私钥为控制器100的私钥,所述第二公钥为所述交换机200的公钥。
所述交换机200接收所述第一认证请求并基于所述第一认证请求向所述控制器100发送第一反馈信息的步骤包括:
所述交换机200在接收到所述第一认证请求时响应所述第一请求信息,以采用与所述第二公钥对应的第二私钥对所述第一加密信息进行解密,并对解密后的第一加密信息采用与第一私钥对应的第一公钥进行签名认证以得到所述第一验证信息,获取第一预设PCR值和所述第一验证信息中的第一随机数,并根据所述第一随机数与所述第一预设PCR值进行连接后得到第一哈希离散值,将所述交换机200的平台编号、所述第一随机数以及所述第一哈希离散值采用第二私钥进行签名后利用第一公钥进行加密以得到第一反馈信息并发送至所述控制器100。
其中,交换机200在接收到所述第一认证请求时,采用第二私钥对所述第一加密信息进行解密,并对解密后的第一加密信息采用与第一公钥进行签名认证以得到所述第一验证信息,并得到所述第一随机数和第一预设PCR值的第一哈希离散值,将该第一哈希离散值的起始4字节和结尾4字节以及所述交换机200的4字节的平台编号附在所述第一哈希散列值后,最后采用128字节的第二私钥上述连接后信息进行签名后,利用64字节的第一公钥进行消息加密。
所述控制器100基于第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机200是否可信的步骤包括:
所述控制器100对所述第一反馈信息采用第一私钥进行解密之后采用第二公钥进行签名验证,并在验证通过后,验证所述第一随机数是否被更新,并在未被更新时,将所述第一哈希离散值与所述第一寄存器编号和第一随机数生成的值进行比对。
其中,所述控制器100采用第一私钥解密消息、并采用第二公钥验证签名。签名验证通过后,将控制器100预存PCR值与第一随机数生成的散列值与消息中散列值进行对比,对比一致则认证成功,反之认证失败。
为进一步保障在进行连接时认证的可靠性,可选的,在本实施例中所述交换机200向所述控制器100发送第二认证请求的步骤包括:
所述交换机200将产生的第二随机数和需要验证的第二寄存器编号进行连接后采用第二私钥进行签名以得到第二验证信息,采用第一公钥对第二验证信息进行加密以得到第二加密信息,并根据第二请求信息和所述第二加密信息得到第二认证请求并发送至所述控制器100。
其中,所述第二随机数可以为28字节,需要验证的第二寄存器编号为4字节,所述交换机200将所述第二随机数和该第二寄存器编号进行连接后采用32字节的第二私钥进行签名得到64字节的第二验证信息,并采用64字节的第二公钥进行加密后将产生的第二加密信息和一第二请求信息得到第二认证请求发送至所述控制器100,所述第二私钥为交换机200的私钥,所述第一公钥为所述控制器100的公钥。
所述控制器100接收所述第二认证请求并基于所述第二认证请求向所述交换机200发送第二反馈信息的步骤包括:
所述控制器100在接收到所述第二认证请求时响应所述第二请求信息,以采用与所述第一私钥对所述第二加密信息进行解密,并对解密后的第二加密信息采用第二公钥进行签名认证以得到所述第二验证信息,获取第二预设PCR值和所述第二验证信息中的第二随机数,并根据所述第二随机数与所述第二预设PCR值进行连接后得到第二哈希离散值,将所述控制器100的平台编号、所述第二随机数以及所述第二哈希离散值采用所述第一私钥进行签名后利用所述第二公钥进行加密以得到第二反馈信息并发送至所述控制器100。
其中,所述控制器100在接收到所述第二认证请求时,采用第一私钥对所述第二加密信息进行解密,并对解密后的第二加密信息采用第二公钥进行签名认证以得到所述第二验证信息,并得到所述第二随机数和第二预设PCR值的第二哈希离散值,将该第二哈希离散值的起始4字节和结尾4字节以及所述控制器100的4字节的平台编号附在所述第二哈希散列值后,最后采用128字节的第一私钥上述连接后信息进行签名后,利用64字节的第二公钥进行消息加密。
所述交换机200基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器100是否可信的步骤包括:
所述交换机200对所述第二反馈信息采用所述第二私钥进行解密之后采用所述第一公钥进行签名验证,并在验证通过后,验证所述第二随机数是否被更新,并在未被更新时,将所述第二哈希离散值与所述第二寄存器编号和第二随机数生成的值进行比对。
其中,所述交换机200采用第二私钥解密消息、并采用第一公钥验证签名。签名验证通过后,验证所述第二随机数是否被更新,并在未被更新时,将交换机200预存PCR值与第二随机数生成的散列值与消息中第二散列值进行对比,对比一致则认证成功,反之认证失败。
可以理解,在所述交换机200与所述控制器100相互认证成功后,则所述控制器100与所述交换机200可以进行数据交互。
请结合图3,可选的,在本实施例中,所述交换机200中存储有多个第一预设版本信息,所述控制器100中存储有多个第二预设版本信息,在执行所述控制器100向所述交换机200发送第一认证请求的步骤之前,所述方法还包括:
步骤S170:所述交换机200获取所述多个第一预设版本信息中版本最高的一个作为第一版本信息并发送至所述控制器100。
步骤S180:所述控制器100接收所述第一版本信息,并将所述第一版本信息与所述控制器100中的各所述第二预设版本信息分别进行匹配,当存在与所述第一版本信息匹配的第二预设版本信息时,向所述交换机200反馈第一版本确认信息,当不存在与所述第一版本信息匹配的所述第二预设版本信息时,获取多个所述第二预设版本信息中版本最高的一个作为第二版本信息并发送至所述交换机200,以使所述交换机200在存在与第二版本信息匹配的第一预设版本信息时向所述控制器100反馈第二版本确认信息。
通过上述设置以实现使控制器100与所述交换机200实现协商双方共同支持的最高的协议版本,以在协商顺利进入可信连接认证的环节。
可以理解,上述的步骤S170-S180中版本协议的商定是由所述交换机200发起的,在实际执行过程中,也可以是由所述控制器100发起的,具体的执行过程可以参照上述步骤S170-S180的具体描述,在此不作一一赘述。
请结合图4,为保障在所述控制器100与所述交换机200在进行交互过程中的可靠性,可选的,在本实施例中,在执行所述交换机200基于第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器100是否可信,并在可信时,基于所述配置查询请求向所述控制器100反馈配置信息的步骤之后,所述方法还包括:
步骤S190:所述控制器100在接收到所述配置信息时,开始计时,并在计时达到预设时长时向所述交换机200发送连接查询信息。
步骤S200:所述交换机200在接收到所述连接查询信息时,基于所述连接查询信息向所述控制器100反馈连接确认信息。
步骤S210:所述控制器100在接收到所述连接确认信息时再次开始计时。
可以理解,当再次计时达到计时时长时,所述控制器100还用于再次向所述交换机200发送连接查询信息,以进一步保障所述交换机200与所述控制器100之间的连接可靠性。
需要说明的是,当所述控制器100未接收到所述连接确认信息时,所述控制器100可以停止与所述交换机200进行数据交互。
在上述基础上,本发明还提供一种软件定义网络的可信连接系统,包括控制器100和交换机200。
所述控制器100用于向所述交换机200发送第一认证请求。
所述交换机200用于在接收到所述第一认证请求时,基于所述第一认证请求向所述控制器100发送第一反馈信息。
所述控制器100还用于基于一第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机200是否可信,并在可信时向所述交换机200发送配置查询请求。
所述交换机200还用于向所述控制器100发送第二认证请求。
所述控制器100还用于接收所述第二认证请求并基于所述第二认证请求向所述交换机200发送第二反馈信息。
所述交换机200还用于基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器100是否可信,并在可信时,基于所述配置查询请求向所述控制器100反馈配置信息。
关于所述控制和所述交换机200的具体工作过程可以参照上述软件定义网络的可信连接方法的具体描述,在此不作一一赘述。
可选的,在本实施例中,所述控制器100还用于将产生的第一随机数和需要验证的第一寄存器编号进行连接后采用第一私钥进行签名以得到第一验证信息,采用第二公钥对第一验证信息进行加密以得到第一加密信息,并根据第一请求信息和所述第一加密信息得到第一认证请求并发送至所述交换机200。
所述交换机200还用于在接收到所述第一认证请求时,采用与所述第二公钥对应的第二私钥对所述第一加密信息进行解密,并对解密后的第一加密信息采用与第一私钥对应的第一公钥进行签名认证以得到所述第一验证信息,获取第一预设PCR值和所述第一验证信息中的第一随机数,并根据所述第一随机数与所述第一预设PCR值进行连接后得到第一哈希离散值,将所述交换机200的平台编号、所述第一随机数以及所述第一哈希离散值采用第二私钥进行签名后利用第一公钥进行加密以得到第一反馈信息并发送至所述控制器100。
所述控制器100还用于对所述第一反馈信息采用第一私钥进行解密之后采用第二公钥进行签名验证,并在验证通过后,验证所述第一随机数是否被更新,并在未被更新时,将所述第一哈希离散值与所述第一寄存器编号和第一随机数生成的值进行比对。
可选的,在本实施例中,所述交换机200还用于将产生的第二随机数和需要验证的第二寄存器编号进行连接后采用第二私钥进行签名以得到第二验证信息,采用第一公钥对第二验证信息进行加密以得到第二加密信息,并根据第二请求信息和所述第二加密信息得到第二认证请求并发送至所述控制器100。
所述控制器100还用于在接收到所述第二认证请求时,采用与所述第一私钥对所述第二加密信息进行解密,并对解密后的第二加密信息采用所述第二公钥进行签名认证以得到所述第二验证信息,获取第二预设PCR值和所述第二验证信息中的第二随机数,并根据所述第二随机数与所述第二预设PCR值进行连接后得到第二哈希离散值,将所述控制器100的平台编号、所述第二随机数以及所述第二哈希离散值采用第一私钥进行签名后利用第二公钥进行加密以得到第二反馈信息并发送至所述控制器100。
所述交换机200还用于对所述第二反馈信息采用所述第二私钥进行解密之后采用所述第一公钥进行签名验证,并在验证通过后,验证所述第二随机数是否被更新,并在未被更新时,将所述第二哈希离散值与所述第二寄存器编号和第二随机数生成的值进行比对。
可选的,在本实施例中,所述交换机200中存储有多个第一预设版本信息,所述控制器100中存储有多个第二预设版本信息。
所述交换机200还用于获取所述多个第一预设版本信息中版本最高的一个作为第一版本信息并发送至所述控制器100。
所述控制器100还用于接收所述第一版本信息,并将所述第一版本信息与所述控制器100中的各所述第二预设版本信息分别进行匹配,当存在与所述第一版本信息匹配的第二预设版本信息时,向所述交换机200反馈第一版本确认信息,当不存在与所述第一版本信息匹配的所述第二预设版本信息时,获取多个所述第二预设版本信息中版本最高的一个作为第二版本信息并发送至所述交换机200,以使所述交换机200在存在与第二版本信息匹配的第一预设版本信息时向所述控制器100反馈第二版本确认信息。
可选的,在本实施例中,所述控制器100还用于在接收到所述配置信息时,开始计时,并在计时达到预设时长时向所述交换机200发送连接查询信息。
所述交换机200还用于在接收到所述连接查询信息时,基于所述连接查询信息向所述控制器100反馈连接确认信息。
所述控制器100还用于在接收到所述连接确认信息时再次开始计时。
综上,本发明提供的一种软件定义网络的可信连接方法及系统,通过对控制器100和交换机200分别进行可信认证,并在交换机200可信时,控制器100向交换机200发送配置查询请求,以及在控制器100可信时,交换机200基于所述查询请求向控制器100反馈配置信息,以实现在软件定义网络中建立交换机200与控制器100之间的可信连接,进而避免出现网络因受到影响而瘫痪的情况。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种软件定义网络的可信连接方法,应用于包括交换机和控制器的软件定义网络的可信连接系统,其特征在于,所述方法包括:
所述控制器向所述交换机发送第一认证请求;
所述交换机接收所述第一认证请求并基于所述第一认证请求向所述控制器发送第一反馈信息;
所述控制器基于一第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机是否可信,并在可信时向所述交换机发送配置查询请求;
所述交换机向所述控制器发送第二认证请求;
所述控制器接收所述第二认证请求并基于所述第二认证请求向所述交换机发送第二反馈信息;
所述交换机基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信,并在可信时,基于所述配置查询请求向所述控制器反馈配置信息。
2.根据权利要求1所述的软件定义网络的可信连接方法,其特征在于,所述控制器向所述交换机发送第一认证请求的步骤包括:
所述控制器将产生的第一随机数和需要验证的第一寄存器编号进行连接后采用第一私钥进行签名以得到第一验证信息,采用第二公钥对第一验证信息进行加密以得到第一加密信息,并根据第一请求信息和所述第一加密信息得到第一认证请求并发送至所述交换机;
所述交换机接收所述第一认证请求并基于所述第一认证请求向所述控制器发送第一反馈信息的步骤包括:
所述交换机在接收到所述第一认证请求时响应所述第一请求信息,以采用与所述第二公钥对应的第二私钥对所述第一加密信息进行解密,并对解密后的第一加密信息采用与所述第一私钥对应的第一公钥进行签名认证以得到所述第一验证信息,获取第一预设PCR值和所述第一验证信息中的第一随机数,并根据所述第一随机数与所述第一预设PCR值进行连接后得到第一哈希离散值,将所述交换机的平台编号、所述第一随机数以及所述第一哈希离散值采用第二私钥进行签名后利用第一公钥进行加密以得到第一反馈信息并发送至所述控制器;
所述控制器基于第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机是否可信的步骤包括:
所述控制器对所述第一反馈信息采用第一私钥进行解密之后采用第二公钥进行签名验证,并在验证通过后,验证所述第一随机数是否被更新,并在未被更新时,将所述第一哈希离散值与所述第一寄存器编号和第一随机数生成的值进行比对。
3.根据权利要求2所述的软件定义网络的可信连接方法,其特征在于,所述交换机向所述控制器发送第二认证请求的步骤包括:
所述交换机将产生的第二随机数和需要验证的第二寄存器编号进行连接后采用第二私钥进行签名以得到第二验证信息,采用第一公钥对第二验证信息进行加密以得到第二加密信息,并根据第二请求信息和所述第二加密信息得到第二认证请求并发送至所述控制器;
所述控制器接收所述第二认证请求并基于所述第二认证请求向所述交换机发送第二反馈信息的步骤包括:
所述控制器在接收到所述第二认证请求时响应所述第二请求信息,以采用所述第一私钥对所述第二加密信息进行解密,并对解密后的第二加密信息采用第二公钥进行签名认证以得到所述第二验证信息,获取第二预设PCR值和所述第二验证信息中的第二随机数,并根据所述第二随机数与所述第二预设PCR值进行连接后得到第二哈希离散值,将所述控制器的平台编号、所述第二随机数以及所述第二哈希离散值采用所述第一私钥进行签名后利用所述第二公钥进行加密以得到第二反馈信息并发送至所述控制器;
所述交换机基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信的步骤包括:
所述交换机对所述第二反馈信息采用所述第二私钥进行解密之后采用所述第一公钥进行签名验证,并在验证通过后,验证所述第二随机数是否被更新,并在未被更新时,将所述第二哈希离散值与所述第二寄存器编号和第二随机数生成的值进行比对。
4.根据权利要求1所述的软件定义网络的可信连接方法,其特征在于,所述交换机中存储有多个第一预设版本信息,所述控制器中存储有多个第二预设版本信息,在执行所述控制器向所述交换机发送第一认证请求的步骤之前,所述方法还包括:
所述交换机获取所述多个第一预设版本信息中版本最高的一个作为第一版本信息并发送至所述控制器;
所述控制器接收所述第一版本信息,并将所述第一版本信息与所述控制器中的各所述第二预设版本信息分别进行匹配,当存在与所述第一版本信息匹配的第二预设版本信息时,向所述交换机反馈第一版本确认信息,当不存在与所述第一版本信息匹配的所述第二预设版本信息时,获取多个所述第二预设版本信息中版本最高的一个作为第二版本信息并发送至所述交换机,以使所述交换机在存在与第二版本信息匹配的第一预设版本信息时向所述控制器反馈第二版本确认信息。
5.根据权利要求1所述的软件定义网络的可信连接方法,其特征在于,在执行所述交换机基于第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信,并在可信时,基于所述配置查询请求向所述控制器反馈配置信息的步骤之后,所述方法还包括:
所述控制器在接收到所述配置信息时,开始计时,并在计时达到预设时长时向所述交换机发送连接查询信息:
所述交换机在接收到所述连接查询信息时,基于所述连接查询信息向所述控制器反馈连接确认信息;
所述控制器在接收到所述连接确认信息时再次开始计时。
6.一种软件定义网络的可信连接系统,其特征在于,包括控制器和交换机;
所述控制器用于向所述交换机发送第一认证请求;
所述交换机用于在接收到所述第一认证请求时,基于所述第一认证请求向所述控制器发送第一反馈信息;
所述控制器还用于基于一第一预设PCR值、所述第一认证请求以及所述第一反馈信息以认证所述交换机是否可信,并在可信时向所述交换机发送配置查询请求;
所述交换机还用于向所述控制器发送第二认证请求;
所述控制器还用于接收所述第二认证请求并基于所述第二认证请求向所述交换机发送第二反馈信息;
所述交换机还用于基于一第二预设PCR值、所述第二认证请求以及所述第二反馈信息以认证所述控制器是否可信,并在可信时,基于所述配置查询请求向所述控制器反馈配置信息。
7.根据权利要求6所述的软件定义网络的可信连接系统,其特征在于,所述控制器还用于将产生的第一随机数和需要验证的第一寄存器编号进行连接后采用第一私钥进行签名以得到第一验证信息,采用第二公钥对第一验证信息进行加密以得到第一加密信息,并根据第一请求信息和所述第一加密信息得到第一认证请求并发送至所述交换机;
所述交换机还用于在接收到所述第一认证请求时,采用与所述第二公钥对应的第二私钥对所述第一加密信息进行解密,并对解密后的第一加密信息采用与第一私钥对应的第一公钥进行签名认证以得到所述第一验证信息,获取第一预设PCR值和所述第一验证信息中的第一随机数,并根据所述第一随机数与所述第一预设PCR值进行连接后得到第一哈希离散值,将所述交换机的平台编号、所述第一随机数以及所述第一哈希离散值采用所述第二私钥进行签名后利用第一公钥进行加密以得到第一反馈信息并发送至所述控制器;
所述控制器还用于对所述第一反馈信息采用第一私钥进行解密之后采用第二公钥进行签名验证,并在验证通过后,验证所述第一随机数是否被更新,并在未被更新时,将所述第一哈希离散值与所述第一寄存器编号和第一随机数生成的值进行比对。
8.根据权利要求7所述的软件定义网络的可信连接系统,其特征在于,所述交换机还用于将产生的第二随机数和需要验证的第二寄存器编号进行连接后采用第二私钥进行签名以得到第二验证信息,采用第一公钥对第二验证信息进行加密以得到第二加密信息,并根据第二请求信息和所述第二加密信息得到第二认证请求并发送至所述控制器;
所述控制器还用于在接收到所述第二认证请求时,采用与所述第一私钥对所述第二加密信息进行解密,并对解密后的第二加密信息采用所述第二公钥进行签名认证以得到所述第二验证信息,获取第二预设PCR值和所述第二验证信息中的第二随机数,并根据所述第二随机数与所述第二预设PCR值进行连接后得到第二哈希离散值,将所述控制器的平台编号、所述第二随机数以及所述第二哈希离散值采用第一私钥进行签名后利用第二公钥进行加密以得到第二反馈信息并发送至所述控制器;
所述交换机还用于对所述第二反馈信息采用所述第二私钥进行解密之后采用所述第一公钥进行签名验证,并在验证通过后,验证所述第二随机数是否被更新,并在未被更新时,将所述第二哈希离散值与所述第二寄存器编号和第二随机数生成的值进行比对。
9.根据权利要求6所述的软件定义网络的可信连接系统,其特征在于,所述交换机中存储有多个第一预设版本信息,所述控制器中存储有多个第二预设版本信息;
所述交换机还用于获取所述多个第一预设版本信息中版本最高的一个作为第一版本信息并发送至所述控制器;
所述控制器还用于接收所述第一版本信息,并将所述第一版本信息与所述控制器中的各所述第二预设版本信息分别进行匹配,当存在与所述第一版本信息匹配的第二预设版本信息时,向所述交换机反馈第一版本确认信息,当不存在与所述第一版本信息匹配的所述第二预设版本信息时,获取多个所述第二预设版本信息中版本最高的一个作为第二版本信息并发送至所述交换机,以使所述交换机在存在与第二版本信息匹配的第一预设版本信息时向所述控制器反馈第二版本确认信息。
10.根据权利要求6所述的软件定义网络的可信连接系统,其特征在于,所述控制器还用于在接收到所述配置信息时,开始计时,并在计时达到预设时长时向所述交换机发送连接查询信息:
所述交换机还用于在接收到所述连接查询信息时,基于所述连接查询信息向所述控制器反馈连接确认信息;
所述控制器还用于在接收到所述连接确认信息时再次开始计时。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810549020.2A CN108833381A (zh) | 2018-05-31 | 2018-05-31 | 软件定义网络的可信连接方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810549020.2A CN108833381A (zh) | 2018-05-31 | 2018-05-31 | 软件定义网络的可信连接方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108833381A true CN108833381A (zh) | 2018-11-16 |
Family
ID=64147097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810549020.2A Pending CN108833381A (zh) | 2018-05-31 | 2018-05-31 | 软件定义网络的可信连接方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108833381A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109347889A (zh) * | 2018-12-24 | 2019-02-15 | 沈阳航空航天大学 | 一种针对软件定义网络的混合型DDoS攻击检测的方法 |
CN110830498A (zh) * | 2019-11-19 | 2020-02-21 | 武汉思普崚技术有限公司 | 一种基于挖掘的持续攻击检测方法及系统 |
CN114024780A (zh) * | 2022-01-06 | 2022-02-08 | 北京交研智慧科技有限公司 | 一种基于物联网设备的节点信息处理方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105933125A (zh) * | 2016-07-07 | 2016-09-07 | 北京邮电大学 | 一种软件定义网络中的南向安全认证方法及装置 |
CN105933245A (zh) * | 2016-06-23 | 2016-09-07 | 北京工业大学 | 一种软件定义网络中安全的可信接入方法 |
CN106973067A (zh) * | 2017-05-10 | 2017-07-21 | 成都麟成科技有限公司 | 一种平台环境完整性检测方法和装置 |
-
2018
- 2018-05-31 CN CN201810549020.2A patent/CN108833381A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105933245A (zh) * | 2016-06-23 | 2016-09-07 | 北京工业大学 | 一种软件定义网络中安全的可信接入方法 |
CN105933125A (zh) * | 2016-07-07 | 2016-09-07 | 北京邮电大学 | 一种软件定义网络中的南向安全认证方法及装置 |
CN106973067A (zh) * | 2017-05-10 | 2017-07-21 | 成都麟成科技有限公司 | 一种平台环境完整性检测方法和装置 |
Non-Patent Citations (1)
Title |
---|
李兆斌: "软件定义网络可信连接设计与实现", 《计算机应用研究-优先出版》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109347889A (zh) * | 2018-12-24 | 2019-02-15 | 沈阳航空航天大学 | 一种针对软件定义网络的混合型DDoS攻击检测的方法 |
CN109347889B (zh) * | 2018-12-24 | 2021-05-18 | 沈阳航空航天大学 | 一种针对软件定义网络的混合型DDoS攻击检测的方法 |
CN110830498A (zh) * | 2019-11-19 | 2020-02-21 | 武汉思普崚技术有限公司 | 一种基于挖掘的持续攻击检测方法及系统 |
CN114024780A (zh) * | 2022-01-06 | 2022-02-08 | 北京交研智慧科技有限公司 | 一种基于物联网设备的节点信息处理方法及装置 |
CN114024780B (zh) * | 2022-01-06 | 2022-03-18 | 北京交研智慧科技有限公司 | 一种基于物联网设备的节点信息处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111010410B (zh) | 一种基于证书身份认证的拟态防御系统及证书签发方法 | |
US11336641B2 (en) | Security enhanced technique of authentication protocol based on trusted execution environment | |
CN114900338B (zh) | 一种加密解密方法、装置、设备和介质 | |
CN106257861B (zh) | 通过控制设备来和汽车通信的认证方法及其系统 | |
CN106713279A (zh) | 一种视频终端身份认证系统 | |
CN105656862B (zh) | 认证方法及装置 | |
US11373762B2 (en) | Information communication device, authentication program for information communication device, and authentication method | |
US9942042B1 (en) | Key containers for securely asserting user authentication | |
US8688976B2 (en) | Method for issuing a digital certificate by a certification authority, arrangement for performing the method, and computer system of a certification authority | |
CN106850207B (zh) | 无ca的身份认证方法和系统 | |
CN111030814A (zh) | 秘钥协商方法及装置 | |
CN111181723B (zh) | 物联网设备间离线安全认证的方法和装置 | |
CN111163470B (zh) | 核心网网元通信方法、装置、计算机存储介质和电子设备 | |
CN108833381A (zh) | 软件定义网络的可信连接方法及系统 | |
CN106060078A (zh) | 应用于云平台的用户信息加密方法、注册方法及验证方法 | |
CN102638468A (zh) | 保护信息传输安全的方法、发送端、接收端及系统 | |
CN113609213B (zh) | 设备密钥的同步方法、系统、设备和存储介质 | |
KR20150135032A (ko) | Puf를 이용한 비밀키 업데이트 시스템 및 방법 | |
CN105610872B (zh) | 物联网终端加密方法和物联网终端加密装置 | |
JP2020120173A (ja) | 電子署名システム、証明書発行システム、証明書発行方法及びプログラム | |
WO2015178597A1 (ko) | Puf를 이용한 비밀키 업데이트 시스템 및 방법 | |
WO2015180399A1 (zh) | 一种认证方法及装置系统 | |
JP2023536614A (ja) | 固有の証明書を車両に安全に備えるための方法 | |
CN106027254A (zh) | 一种身份证认证系统中身份证读卡终端使用密钥的方法 | |
CN113014592A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181116 |
|
RJ01 | Rejection of invention patent application after publication |