[发明专利]基于区块链思维的分布式SDN控制平面安全认证方法有效

专利信息
申请号: 201711403221.3 申请日: 2017-12-22
公开(公告)号: CN108173827B 公开(公告)日: 2020-09-08
发明(设计)人: 朱晓荣;邵喆丹;董天才;陈美娟 申请(专利权)人: 南京邮电大学
主分类号: H04L29/06 分类号: H04L29/06
代理公司: 江苏海越律师事务所 32402 代理人: 唐小红
地址: 210003 *** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了基于区块链思维的分布式SDN控制平面安全认证方法,该发明基于区块链的思想建立了一种分布式SDN架构的控制平面安全认证方法,旨在提升SDN的安全性能,防止控制器数据篡改和非法控制器的接入。主要途径是通过控制平面之间的身份认证,以及在控制平面和数据平面之间的平面间交叉认证,双重认证确保系统安全。
搜索关键词: 基于 区块 思维 分布式 sdn 控制 平面 安全 认证 方法
【主权项】:
1.基于区块链思维的分布式SDN控制平面安全认证方法,其特征在于,包括如下几个步骤:

1).控制器初始化连接:控制器的初始化以及新控制器顺序加入控制平面;

2).控制平面认证:控制平面各个控制器相互认证身份;

3).控制平面和数据平面交叉认证:控制器和交换机以流表为关键信息相互认证身份。

2.如权利要求1所述的方法,其特征在于,所述步骤1)控制器初始化连接为:首先,管理员密码认证并开启所有控制器,这是对控制器的第一重保护;

接下来是各控制器进行连接,即控制器加入过程;管理员随机决定一个初始控制器A,接收其他控制器发出的连接请求;初始控制器A生成私钥,进而产生公钥;想要加入控制器层的控制器B向初始控制器A发出请求,获取初始控制器A的公钥;控制器B使用A的公钥对自己的信息进行加密,然后发送给初始控制器A;初始控制器A认证信息成功后,将B加入信任列表;新加入的控制器请求A或B的认证获取权限;通过这种方式,使得整个控制器网络连接在一起,并且相互之间掌握公钥。

3.如权利要求1所述的方法,其特征在于,所述步骤2)所述控制平面认证为:假设控制器A有数据包向控制器B的域内转发,采取订阅分发的方法,A向共享数据库提出请求全局视图,同时将请求以及自身的信息,如编号、主机信息,发送给其他控制器用以认证;其他控制器收到请求认证的消息后,将请求的时间、内容摘要、设备编码记录在本地;各控制器认证后达成一致共识,若同意A的请求,则反馈给共享数据库;数据库接纳A的请求;若认证失败,则数据库视为无效信息,丢弃;同时,视该控制器为问题控制器,各控制器切除与该控制器的连接,并通知管理员进行查验。

4.如权利要求1所述的方法,其特征在于,所述步骤3)所述的控制平面和数据平面交叉认证为:通过控制器认证交换机的编号、端口、速率、链路、主机信息,进行第一重认证;当控制器给交换机下发流表时,也存储一份在控制器中;每添加一次流表,就相当于控制器区块上的交易就添加一条,记录下发的时间,根据时间顺序排列,在控制器和交换机上有相同的流表;Merkle树通过计算相邻两个流表的哈希值并一层层的向上运算,形成一个二叉树,最终以一个Merkle值归纳了全部流表信息,将其加在认证信息的头部;任何流表的修改都会使得生成的Merkle值改变;因此,若控制器中流表生成的Merkle值与交换机中的流表生成的Merkle值一致,则交换机和流表都是安全的,交换机将新生成的流表加入流表项;若不同,则有如下两种情况:(1)交换机被替换;(2)攻击者伪造了源地址为合法控制器IP地址的数据包,下发了伪造的流表。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201711403221.3/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top