[发明专利]基于区块链思维的分布式SDN控制平面安全认证方法有效
申请号: | 201711403221.3 | 申请日: | 2017-12-22 |
公开(公告)号: | CN108173827B | 公开(公告)日: | 2020-09-08 |
发明(设计)人: | 朱晓荣;邵喆丹;董天才;陈美娟 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 江苏海越律师事务所 32402 | 代理人: | 唐小红 |
地址: | 210003 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 思维 分布式 sdn 控制 平面 安全 认证 方法 | ||
1.基于区块链思维的分布式SDN控制平面安全认证方法,其特征在于,包括如下几个步骤:
1).控制器初始化连接:控制器的初始化以及新控制器顺序加入控制平面;
2).控制平面认证:控制平面各个控制器相互认证身份;
3).控制平面和数据平面交叉认证:控制器和交换机以流表为关键信息相互认证身份;
控制器之间的网络相当于一个P2P网络,每个控制器平等存在,使用共享数据库来进行全局视图的存储,控制器通过读取共享数据库来获取全局视图,每个控制器独立管理一个区域,在数据不需要跨域时,在本地进行转发;当数据包的目的地址在别的控制器的域内,则由源目的地的控制器向目的地的控制器进行订阅操作,获取全局视图,构造路径;
当目的地址在控制器的域内时,控制器只需要掌握自己域内的交换机的信息即可;当目的地址在别的控制器的域内时,源目的地的控制器就需要全局视图来确定路径,将控制器每一次对全局视图的请求看作一次交易,选择请求作为认证的关键,记录每一次控制器对共享数据库的请求,此请求分布式存储在各控制器中,以方便追溯查验,请求的主要内容包括了请求的设备ID、时间、内容摘要;
控制器有数据包向控制器的域内转发,采取订阅分发的方法,控制器向共享数据库提出请求全局视图,同时将请求以及自身的信息即编号、主机信息发送给其他控制器用以认证;其他控制器收到请求认证的消息后,将控制器请求的信息记录在本地,各控制器认证后达成一致共识,若同意控制器的请求,则反馈给共享数据库,数据库接纳控制器的请求;若认证失败,则数据库视为无效信息,丢弃;同时,视该控制器为问题控制器,各控制器切除与该控制器的连接,并通知管理员进行查验;
通过控制器认证交换机的编号、端口、速率、链路、主机信息,进行第一重认证,当控制器给交换机下发流表时,也存储一份在控制器中;每添加一次流表,就相当于控制器区块上的交易就添加一条,记录下发的时间,根据时间顺序排列,在控制器和交换机上有相同的流表;Merkle树通过计算相邻两个流表的哈希值并一层层的向上运算,形成一个二叉树,最终以一个Merkle值归纳了全部流表信息,将其加在认证信息的头部;任何流表的修改都会使得生成的Merkle值改变;因此,若控制器中流表生成的Merkle值与交换机中的流表生成的Merkle值一致,则交换机和流表都是安全的,交换机将新生成的流表加入流表项;若不同,则有如下两种可能:(1)交换机被替换;(2)攻击者伪造了源地址为合法控制器IP地址的数据包,下发了伪造的流表。
2.如权利要求1所述的方法,其特征在于,所述步骤1)控制器初始化连接为:首先,管理员密码认证并开启所有控制器,这是对控制器的第一重保护;
接下来是各控制器进行连接,即控制器加入过程;管理员随机决定一个初始控制器A,接收其他控制器发出的连接请求;初始控制器A生成私钥,进而产生公钥;想要加入控制器层的控制器B向初始控制器A发出请求,获取初始控制器A的公钥;控制器B使用A的公钥对自己的信息进行加密,然后发送给初始控制器A;初始控制器A认证信息成功后,将B加入信任列表;其他新加入的控制器请求控制器A或B的认证获取权限;通过这种方式,使得整个控制器网络连接在一起,并且相互之间掌握公钥。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711403221.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:人工智能在线咨询答疑服务系统
- 下一篇:数据传输方法、装置及存储介质