CN108494581A - Sdn网络的控制器分布式日志生成方法及装置 - Google Patents
Sdn网络的控制器分布式日志生成方法及装置 Download PDFInfo
- Publication number
- CN108494581A CN108494581A CN201810136497.8A CN201810136497A CN108494581A CN 108494581 A CN108494581 A CN 108494581A CN 201810136497 A CN201810136497 A CN 201810136497A CN 108494581 A CN108494581 A CN 108494581A
- Authority
- CN
- China
- Prior art keywords
- management
- control member
- chain
- block
- log
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000007726 management method Methods 0.000 claims abstract description 163
- 238000012795 verification Methods 0.000 claims abstract description 36
- 238000012550 audit Methods 0.000 claims abstract description 25
- 230000002159 abnormal effect Effects 0.000 claims abstract description 8
- 238000012546 transfer Methods 0.000 claims abstract description 7
- 230000007246 mechanism Effects 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 11
- 230000009897 systematic effect Effects 0.000 claims description 7
- 239000004744 fabric Substances 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 6
- 241000208340 Araliaceae Species 0.000 description 5
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 5
- 235000003140 Panax quinquefolius Nutrition 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 235000008434 ginseng Nutrition 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/042—Network management architectures or arrangements comprising distributed management centres cooperatively managing the network
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
- H04L9/3013—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- 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
-
- 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/3297—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 time stamps, e.g. generation of time stamps
Abstract
本发明公开了一种SDN网络的控制器分布式日志生成方法及装置,其中,方法包括:系统初始化:部署管控元进入交换机集群,生成系统公共参数,收集该时段内广播的所有有效日志记录;分布式记录步骤:将日志记录到本地存储的流表记录单中,并使得其他管控元进行签名验证,以验证日志单的有效性;共识达成步骤:输入系统公共参数,以生成联盟链所需的共享密钥和联盟链公钥;联盟链生成步骤:生成不可篡改的信息记录表,以当异常数据发生或执行跨域流表下发付费时,调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。该方法可以解决各运营商在非信任环境下的审计和计费问题,具有良好的可靠性,适合在实际SDN网络中部署。
Description
技术领域
本发明涉及信息安全技术领域,特别涉及一种SDN(Software Defined Network,软件定义网络)网络的控制器分布式日志生成方法及装置。
背景技术
网络通信已成为现代社会发展和技术进步的重要基础设施之一。随着云计算的快速发展,传统网络体系结构的安全性、灵活性和可扩展性面临性能瓶颈,海量数据处理和新型互联网服务的迫切需求使得传统网络结构已越来越不能满足当今企业、运营商和用户的需求。SDN作为一种新的网络体系架构引起了人们广泛的关注,SDN网络结构基于Open Flow技术搭建,通过分离网络设备的控制平面与数据平面,向上将应用程序接口提供给应用层,构建开放可编程的网络环境,向下将路由策略下发到路由器,实现网络设备的集中管理。SDN的出现解决了传统网络缺乏统一管理、灵活性差、升级缓慢、可扩展性弱等缺点,使得它一经提出便成为学术界产业界的热门话题。
控制器是SDN网络架构中的核心设备,它负责对整个网络的状态和拓扑信息进行集中管控,实现SDN系统中网络安全配置和网络服务访问控制等应用。最早对SDN控制器的研究主要是单一的集中部署的控制器,但单一的控制器节点在可靠性、扩展性等方面存在问题。随着网络规模的日益增大,用户的应用需求也越来越高,单一的SDN控制器一旦达到性能瓶颈会导致全网服务能力的降级甚至是瘫痪,同时也无法应对跨域的SDN网络转发和付费问题。
相关技术中,提出分布式SDN控制器集群的概念。分布式SDN控制器是一种新型的在逻辑上集中,物理上分布的SDN控制器网络架构。相关技术中较早提出的是一个分布式控制器,采用网络实体策略,使得每个交换机在控制器中对应着一个网络实体实例。它首次实现分布式控制器的实际应用,但缺陷在于无法动态地改变控制器实例和底层网络设备之间的管理映射。之后出现大量的分布式控制器,这些控制器使用一组开放的接口将多个控制器连接成一个分布机群。与此同时,相关技术中提出多领域分布式的SDN网络架构,它将整个网络分成多个分布式域,每个领域内可以有一个或者多个控制器控制该域内交换机的资源转发和接收编排来维护和支持网络拓扑。同时,将各个控制器之间通过AMQP(AdvancedMessage Queuing Protocol,高级消息队列协议)协议进行连接,交换机之间通过LLDP(Link Layer Discovery Protocol,链路层发现协议)协议进行连接。目前,用于多个控制器之间沟通和联系的东西向接口还没有统一的标准,但随着网络技术的不断发展,分布式SDN控制器系统将成为一种发展趋势。
对于分布式控制器系统,其控制器数量众多,若无法保证控制器的自身安全和可信任问题将会带来巨大的安全隐患。控制器自身存储的日志信息很可能规避开自身违规的记录,因此,设计一种有效的实时监测控制器的流表和日志记录的安全审计系统具有十分现实的意义。审计监测在安全领域发挥着不可或缺的积极作用,对攻击行为的准确记录、对安全事件的追踪回溯及事故责任的归属等都是安全审计的核心功能。通过对开源控制器Floodlight进行扩展后增加了安全审计子系统,但该审计系统的设计和实现很大程度上依赖于控制器自身的安全特性,没有从客观的角度实现对控制器行为的监管。相关技术的SDN架构中,网络基础设施根据其归属的运营商不同而被划分到不同的网络域内。当不同网络域所属的用户之间进行通信时,或网络应用的数据路径横跨多网络域时,为保障各运营商诚实转发并按劳计费,各运营商之间网络通信的审计及计费工作便尤为重要。然而,控制器自身存储的日志信息可能规避自身违规记录,并对控制器进行实时管控会对流表下发速率产生影响,传统监管规则难以满足高速的SDN网络需求。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本发明的一个目的在于提出一种SDN网络的控制器分布式日志生成方法,该方法具有良好的可靠性,适合在实际SDN网络中部署。
本发明的另一个目的在于提出一种SDN网络的控制器分布式日志生成装置。
为达到上述目的,本发明一方面实施例提出了一种SDN网络的控制器分布式日志生成方法,包括以下步骤:系统初始化步骤:定义交换机设备为S1至Sn与对应接收的流表及日志信息来自于控制器C1至Cm,部署管控元W1至Wn进入交换机集群,生成系统公共参数,且所述管控元W1至Wn之间轮流当矿工,以负责收集该时段内广播的所有有效日志记录;分布式记录步骤:将每个管控元W1至Wn收集本时段对应控制器下发至相应交换机的流表规则及日志记录到本地存储的流表记录单中,并将自身的记录单使用预设签名算法进行数字签名,并广播给其余管控元,使得其他管控元进行签名验证,以验证日志单的有效性;共识达成步骤:输入所述系统公共参数,并使得当值管控元生成准区块并发布,其中,所述每个管控元W1至Wn运行分布式密钥生成协议进行共识达成阶段,并获取生成联盟链所需的共享密钥和联盟链公钥;联盟链生成步骤:通过所述当值管控元对该时段通过验证的各条流表记录单利用多方分享的所述共享密钥进行数字签名,并打包生成最新的区块,而所述其他管控元利用所述联盟链公钥进行签名验证,及加上时间戳机制,将所述区块有序链接成区块链,生成不可篡改的信息记录表,以当异常数据发生或执行跨域流表下发付费时,调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。
本发明实施例的SDN网络的控制器分布式日志生成方法,基于区块链机制实现,能够保证基于联盟链中各运营商的共识达成一致,确保记录的日志合规、可信;将分布式记录下方在交换机层面,从而保证记录和审计过程不会影响SDN网络系统的效率;利用二次验证机制的区块生成与确认方案,保证共识达成过程中不会被少数运营商恶意控制;采用高效的共识达成机制,保证系统计算效率的高效性。
另外,根据本发明上述实施例的SDN网络的控制器分布式日志生成方法还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,所述系统初始化步骤具体包括:所述系统为基于离散对数的公钥系统,所述公钥系统参数为(p,q,g,h),其中,p,q均是大素数,q|(p-1),Gq是的唯一q阶子群,g,h是Gq的生成元,且无法计算离散对数loggh;所述部署管控元W1至Wn形成管控元群体,W={W1,W2,…,Wn}上有一个单调接入结构Γ,以Γ={T1,T2,…,Tt}表示Γ的基;公共参数(p,q,g,h)由所述管控元群体生成和/或第三方生成。
进一步地,在本发明的一个实施例中,所述分布式记录步骤,具体包括:管控元W1,W2,…,Wn生成各自的公私钥对,运行ECDSA(The Elliptic Curve Digital SignatureAlgorithm,ECDSA算法)签名算法,对最近10分钟内控制器下发至相应交换机的流表及日志记录进行签名运算,之后广播给其余管控元;所述ECDSA签名算法系统参数为Fq,E,G,n,a,b,h,其中,Fq为有限域,E为Fq上的椭圆曲线,G为E上的一个基点,G的阶为n,n为素数,a,b为椭圆曲线E的系数,h为单向安全的hash函数,所述管控元Wi的密钥对为(wpki,wski)=(Q,d),其中,Q=dG,待签名日志消息为m。
进一步地,在本发明的一个实施例中,所述共识达成步骤,具体包括:所述管控元之间轮流当矿工,当值管控元负责收集该时段内广播的所有有效日志记录,生成准区块并用所述当值管控元的私钥对所述准区块进行签名和发布,各管控元运行分布式密钥生成协议进行共识达成阶段,以计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
进一步地,在本发明的一个实施例中,联盟链生成步骤,具体包括:所述当值管控元通过所述共享密钥sk和所述ECDSA签名算法将所述准区块签名生成新的区块;其他各管控元利用所述联盟链公钥pk进行签名验证,若验证通过,则将该区块加入到现有区块链,更新生成最新的区块链;最终生成的区块链形式的流表日志,以获得不可篡改的信息表,用于对控制器的审计。
为达到上述目的,本发明另一方面实施例提出了一种SDN网络的控制器分布式日志生成装置,包括:初始化模块,用于系统初始化:定义交换机设备为S1至Sn与对应接收的流表及日志信息来自于控制器C1至Cm,部署管控元W1至Wn进入交换机集群,生成系统公共参数,且所述管控元W1至Wn之间轮流当矿工,以负责收集该时段内广播的所有有效日志记录;记录模块,用于分布式记录:将每个管控元W1至Wn收集本时段对应控制器下发至相应交换机的流表规则及日志记录到本地存储的流表记录单中,并将自身的记录单使用预设签名算法进行数字签名,并广播给其余管控元,使得其他管控元进行签名验证,以验证日志单的有效性;共识达成模块,用于共识达成:输入所述系统公共参数,并使得当值管控元生成准区块并发布,其中,所述每个管控元W1至Wn运行分布式密钥生成协议进行共识达成阶段,并获取生成联盟链所需的共享密钥和联盟链公钥;生成模块,用于联盟链生成:通过所述当值管控元对该时段通过验证的各条流表记录单利用多方分享的所述共享密钥进行数字签名,并打包生成最新的区块,而所述其他管控元利用所述联盟链公钥进行签名验证,及加上时间戳机制,将所述区块有序链接成区块链,生成不可篡改的信息记录表,以当异常数据发生或执行跨域流表下发付费时,调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。
本发明实施例的SDN网络的控制器分布式日志生成装置,基于区块链机制实现,能够保证基于联盟链中各运营商的共识达成一致,确保记录的日志合规、可信;将分布式记录下方在交换机层面,从而保证记录和审计过程不会影响SDN网络系统的效率;利用二次验证机制的区块生成与确认方案,保证共识达成过程中不会被少数运营商恶意控制;采用高效的共识达成机制,保证系统计算效率的高效性。
另外,根据本发明上述实施例的SDN网络的控制器分布式日志生成装置还可以具有以下附加的技术特征:
进一步地,在本发明的一个实施例中,所述初始化模块具体包括:所述系统为基于离散对数的公钥系统,所述公钥系统参数为(p,q,g,h),其中,p,q均是大素数,q|(p-1),Gq是的唯一q阶子群,g,h是Gq的生成元,且无法计算离散对数loggh;所述部署管控元W1至Wn形成管控元群体,W={W1,W2,…,Wn}上有一个单调接入结构Γ,以Γ={T1,T2,…,Tt}表示Γ的基;公共参数(p,q,g,h)由所述管控元群体生成和/或第三方生成。
进一步地,在本发明的一个实施例中,所述记录模块具体包括:管控元W1,W2,…,Wn生成各自的公私钥对,运行ECDSA签名算法,对最近10分钟内控制器下发至相应交换机的流表及日志记录进行签名运算,之后广播给其余管控元;所述ECDSA签名算法系统参数为Fq,E,G,n,a,b,h,其中,Fq为有限域,E为Fq上的椭圆曲线,G为E上的一个基点,G的阶为n,n为素数,a,b为椭圆曲线E的系数,h为单向安全的hash函数,所述管控元Wi的密钥对为(wpki,wski)=(Q,d),其中,Q=dG,待签名日志消息为m。
进一步地,在本发明的一个实施例中,所述共识达成模块具体包括:所述管控元之间轮流当矿工,当值管控元负责收集该时段内广播的所有有效日志记录,生成准区块并用所述当值管控元的私钥对所述准区块进行签名和发布,各管控元运行分布式密钥生成协议进行共识达成阶段,以计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
进一步地,在本发明的一个实施例中,所述生成模块具体包括:所述当值管控元通过所述共享密钥sk和所述ECDSA签名算法将所述准区块签名生成新的区块;其他各管控元利用所述联盟链公钥pk进行签名验证,若验证通过,则将该区块加入到现有区块链,更新生成最新的区块链;最终生成的区块链形式的流表日志,以获得不可篡改的信息表,用于对控制器的审计。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为根据本发明一个实施例的SDN网络的控制器的基本架构示意图;
图2为根据本发明一个实施例的区块链的链式结构示意图;
图3为根据本发明实施例的SDN网络的控制器分布式日志生成方法的流程图;
图4为根据本发明一个实施例的SDN网络的控制器分布式日志生成的系统架构示意图;
图5为根据本发明一个实施例的管控元流表记录单示意图;
图6为根据本发明一个实施例的联盟链生成流程图;
图7为根据本发明一个实施例的流表日志区块链结构示意图;
图8为根据本发明实施例的SDN网络的控制器分布式日志生成装置的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
在介绍本发明实施例的SDN网络的控制器分布式日志生成方法及装置之前,先简单介绍下本发明实施例中的主要的数学符号及算法解释。
(1)SDN系统架构:SDN系统的典型架构分为三层,分别为应用层、控制层和基础设施层,如图1所示。最上面为控制层,包括不同类型的业务和应用;中间为控制层,主要负责对整个网络的状态和拓扑信息进行集中管控;一方面通过南向接口与基础设施层进行通信,实现数据平面的资源编排;一方面通过北向接口向应用层提供可扩展的编程接口;最下面为基础设施层,由网络底层的转发设备组成,主要负责数据的处理、转发和状态收集。
(2)区块链:区块链是随着比特币等数字加密货币的日益普及而逐渐兴起的一种去中心化基础架构,全网认证的独特工作机制使得其在分布式系统和P2P(Peer-to-peernetworking,对等网络)节点中具备防欺骗、防双重支付的特点,从而保证比特币系统的安全与稳定。经过几年的发展和改进,区块链逐渐成为了一种新型的分布式、去中心化、去信任化的技术方案。特别是近两年以来,区块链已逐步脱离比特币,独立地成为网络技术创新的热点,开创了一种全新的数据分布式存储技术,其应用受到了越来越多的关注。区块链本身包含了“区块+链”的含义,即区块链由数据区块和链式结构组成。区块由一系列基于密码学方法产生的数据块组成,每个区块的块头包含前一个区块的哈希值,该值是对前区块的块头进行哈希函数计算而得到的。区块之间都会由这样的哈希值与先前的区块环环相扣形成一个链条。同时对数据区块打上时间戳,形成的链式结构记录区块链数据的完整历史。它可以提供数据的可追溯性和位置功能。任何数据都可以通过这个链结构被追溯到。区块链的链式结构如图2所示。
(3)秘密分享方案:秘密分享是门限密码系统的重要组成部分,其概念分别基于拉格朗日差值和射影几何定理提出。秘密共享是由一组参与者利用一个分发算法和一个重构算法组成的共享秘密体制。在秘密分发算法阶段,秘密分发者首先对秘密信息进行分割处理,然后对合法的参与者分发相应的秘密份额,每个参与者得到该秘密的一个份额;而在秘密的重构算法阶段,只有授权的参与者子集采用相应的技术才能重构出正确的秘密,其它没有被授权的参与者子集得不到关于该秘密的任何信息。利用秘密分享方案保管秘密信息,一方面有利于防止权力过分集中被滥用,另一方面可保证秘密信息的安全性和完整性。大多数秘密分享方案都有一个秘密分发者,而在分布式安全环境中并不存在这样的可信任第三方。首先研究了没有秘密分发者的秘密分享方案,使得访问结构中的授权子集可以生成同一个分享秘密,而合作之前没有人知道他们所分享的秘密,但该方案的缺点是每个参与方需要保存n个份额,需要占用大量存储空间。通过将上述方案进行改进,基于Feldman的VSS(Verifiable Secret Sharing,可验证秘密分享协议),设计出每个参与者只需保存一个秘密份额的方案,同时提出DKG(Distributed Key Generation,分布式密钥生成)的概念。DKG协议允许多个参与者共同合作以生成一个密码系统的公钥和私钥,使得公钥以公开的形式输出,私钥被参与者按照某一秘密分享方案所分享。DKG协议是其它一些分布式算法中的重要组成部分,如分布式数字签名协议中随机数的生成及密钥的更新等。目前基于离散对数的分布式密钥生成协议中,运用最多的是基于Feldman-VSS和Pedersen-VSS秘密分享构造的DKG协议。
下面参照附图描述根据本发明实施例提出的SDN网络的控制器分布式日志生成方法及装置,首先将参照附图描述根据本发明实施例提出的SDN网络的控制器分布式日志生成方法。
图3是本发明实施例的SDN网络的控制器分布式日志生成方法的流程图。
如图3所示,该SDN网络的控制器分布式日志生成方法包括以下步骤:
在步骤S301中,系统初始化步骤:定义交换机设备为S1至Sn与对应接收的流表及日志信息来自于控制器C1至Cm,部署管控元W1至Wn进入交换机集群,生成系统公共参数,且管控元W1至Wn之间轮流当矿工,以负责收集该时段内广播的所有有效日志记录。
进一步地,在本发明的一个实施例中,系统初始化步骤具体包括:系统为基于离散对数的公钥系统,公钥系统参数为(p,q,g,h),其中,p,q均是大素数,q|(p-1),Gq是Zp *的唯一q阶子群,g,h是Gq的生成元,且无法计算离散对数loggh;部署管控元W1至Wn形成管控元群体,W={W1,W2,…,Wn}上有一个单调接入结构Γ,以Γ={T1,T2,…,Tt}表示Γ的基;公共参数(p,q,g,h)由管控元群体生成和/或第三方生成。
可以理解的是,本发明实施例为了实现对SDN网络中控制器的行为监管,基于区块链原理,本发明实施例提出基于区块链的SDN控制器分布式日志系统。如图4所示,在SDN体系结构的交换机层面进行分布式监测设备的部署,通过在不同交换机所属区域内安装单独的主机或具备数据处理技术的集群,各管控元进行流量监控、局域流拓扑、日志等信息记录,方案灵活利用分布式系统优势,实现对控制器的审计功能。文中定义S1,S2,…,Sn代表交换机Switch,W1,W2,…,Wn代表其部署的管控元Watcher,C1,C2,…,Cn代表需要被审计的控制器Controller。
其中,本发明实施例所构造的基于区块链的SDN控制器分布式日志系统主要包括4个步骤:系统初始化,分布式记录,共识达成和联盟链生成。
在系统初始化步骤中,本发明实施例可以定义交换机设备为S1,S2,…,Sn,其接收的流表及日志信息来自于控制器C1,C2,…,Cm。部署管控元W1,W2,…,Wn进入交换机集群。系统输出生成公开参数param。管控元之间轮流当矿工,负责收集该时段内广播的所有有效日志记录。
具体地,本发明实施例可以设系统为基于离散对数的公钥系统,其参数为(p,q,g,h)。其中p,q是大素数,q|(p-1),Gq是的唯一q阶子群,g,h是Gq的生成元,且无法计算离散对数loggh。参与者是由n个管控元W1,W2,…,Wn所形成的群体,W={W1,W2,…,Wn}上有一个单调接入结构Γ,以Γ={T1,T2,…,Tt}表示Γ的基。公共参数(p,q,g,h)由管控元群体以某种公开的方式产生或者由一可信的第三方生成。
在步骤S302中,分布式记录步骤:将每个管控元W1至Wn收集本时段对应控制器下发至相应交换机的流表规则及日志记录到本地存储的流表记录单中,并将自身的记录单使用预设签名算法进行数字签名,并广播给其余管控元,使得其他管控元进行签名验证,以验证日志单的有效性。
进一步地,在本发明的一个实施例中,分布式记录步骤,具体包括:管控元W1,W2,…,Wn生成各自的公私钥对,运行ECDSA签名算法,对最近10分钟内控制器下发至相应交换机的流表及日志记录进行签名运算,之后广播给其余管控元;ECDSA签名算法系统参数为Fq,E,G,n,a,b,h,其中,Fq为有限域,E为Fq上的椭圆曲线,G为E上的一个基点,G的阶为n,n为素数,a,b为椭圆曲线E的系数,h为单向安全的hash函数,管控元Wi的密钥对为(wpki,wski)=(Q,d),其中,Q=dG,待签名日志消息为m。
可以理解的是,在分布式记录步骤中,各管控元W1,W2,…,Wn收集本时段(如10分钟内)控制器下发至相应交换机的流表规则及日志记录到本地存储的流表记录单中,并将自身的记录单使用ECDSA签名算法进行数字签名,之后广播给其余管控元。其他管控元将各管控元W1,W2,…,Wn的ECDSA签名进行签名验证,验证日志单的有效性。
具体地,各管控元W1,W2,…,Wn生成各自的公私钥对,运行ECDSA签名算法,对最近10分钟内控制器下发至相应交换机的流表及日志记录进行签名运算,之后广播给其余管控元。
设ECDSA签名算法系统参数为Fq,E,G,n,a,b,h,其中Fq是有限域,E是Fq上的椭圆曲线,G是E上的一个基点,G的阶为n(n为素数),a,b是椭圆曲线E的系数,h是单向安全的hash函数。设管控元Wi的密钥对为(wpki,wski)=(Q,d),其中Q=dG,待签名日志消息为m。具体签名过程如下:
(1)选取一个随机数k,1≤k≤n-1;
(2)计算k·G=(x1,y1);
(3)计算r=x1modn,若r=0,返回至步骤(1);
(4)计算e=H(m),s=k-1(e+dr),若s=0,返回至步骤(1);
(5)生成管控元对日志消息为m的签名为σ=(r,s)。
最终,管控元Wi签名后所生成的流表记录单如图5所示。之后管控元Wi将签名广播给其余管控元。其他管控元将各管控元W1,W2,…,Wn的ECDSA签名进行签名验证。其中,管控元Wj的签名验证操作如下:
(1)获得签名σ=(r,s)后,计算e=H(m),w=s-1modn;
(2)计算u1=ew modn,u2=rw modn,u1G+u2Q=(x0,y0);
(3)计算v=x0modn;
(4)若v=r,则签名通过验证,否则验证失败。
在步骤S303中,共识达成步骤:输入系统公共参数,并使得当值管控元生成准区块并发布,其中,每个管控元W1至Wn运行分布式密钥生成协议进行共识达成阶段,并获取生成联盟链所需的共享密钥和联盟链公钥。
进一步地,在本发明的一个实施例中,共识达成步骤,具体包括:管控元之间轮流当矿工,当值管控元负责收集该时段内广播的所有有效日志记录,生成准区块并用当值管控元的私钥对准区块进行签名和发布,各管控元运行分布式密钥生成协议进行共识达成阶段,以计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
可以理解的是,在共识达成步骤中,本发明实施例的输入系统公共参数param,当值管控元(矿工)生成准区块并发布。各管控元W1,W2,…,Wn运行分布式密钥生成协议进行共识达成阶段,计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
具体地,管控元之间轮流当矿工,当值管控元(矿工)负责收集该时段内广播的所有有效日志记录,生成准区块并用自己的私钥对准区块进行签名和发布。各管控元运行分布式密钥生成协议进行共识达成阶段,计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
1、准区块的生成。
矿工收集该时段内广播的所有日志记录,对其进行ECDSA签名和SHA-256杂凑运算,具体过程同步骤S302,以生成准区块。
2、分享密钥及各自私钥的生成。
输入系统公共参数(p,q,g,h),各管控元W1,W2,…,Wn运行基于VSS的分布式密钥生成协议构成联盟链,以x∈Zq表示管控元联盟链将要生成的私钥,y=gx(modp)表示对应的联盟链公钥。方案中的分布式密钥生成协议参考张等人的基于广义可验证秘密分享的分布式密钥生成。
(1)群体W中的每一成员Wj在Zq中按均匀分布随机地选一元素xj,并把xj根据可验证秘密分享VSS协议在全体成员中以Γ为接入结构分享。具体过程如下:
i)Wj公布对要分享的秘密xj∈Zq的一个承诺:其中ej是在Zq中随机选取的一个秘密值。
ii)Wj随机选取Zq[x]中的n-1次多项式Fj(x)=xj+Fj1x+…+Fj,n-1xn-1,计算xjk=Fj(k),k=1,2,…,n。之后Wj随机选取Gj1,Gj2,…,Gj,n-1∈Zq,计算并广播对Fji的承诺
iii)令Gj(x)=ej+Gj1x+…+Gj,n-1xn-1,ejk=Gj(k),j=1,2,…,n。对每一个最小合格子集Ti={Wi1,Wi2,…,Wik},Wj由(i1,Fj(i1)),(i2,Fj(i2)),…,(ik,Fj(ik))及(0,xj)共k+1个点,利用拉格朗日插值公式确定出一个k次多项式Fj(x),由(i1,Gj(i1)),(i2,Gj(i2)),…,(ik,Gj(ik))及(0,ej)共k+1个点,利用拉格朗日插值公式确定出一个k次多项式Gj(x),计算并向所有参与者公布Fj(n+1)及Gj(n+1)的值,i=1,2,…,t。
iv)Wj把(xjk,ejk)秘密地发送给Wk作为其持有的关于xj的秘密份额,j=1,2,…,n。
v)收到自己的秘密份额后,Wk检验是否有以验证自己的份额是否有效。对每一最小合格子集所有参与者都可通过检验是否有来验证公开数据Fj(n+1)及Gj(n+1)的有效性,其中,
(2)若Wk验证失败(即(xjk,ejk)无效),则广播(xjk,ejk)及对Wj的一个抱怨。
(3)Wj接收到Wk的抱怨后,应广播他给Wk的有效份额。
(4)若Wj在步骤3中的广播份额仍然无效,或受到某一合格子集全体成员的抱怨,子集中的每一成员用0替换自己曾收到的Wj发送的份额,记xjk=ejk=0。相当于把Wj所选取的xj记作0,多项式Fj(x)和Gj(x)记作零多项式对待。
(5)子集中的成员Wk计算出自己关于x的份额sk=x1k+x2k+…+xnk(modq),uk=e1k+e2k+…+enk(modq)。生成的共享私钥x=x1+x2+…+xn(modq)。即,sk=x。
3、联盟链公钥的提取。
根据生成的共享私钥,可提取出共同生成的公钥y=gx(modp),具体过程如下:
(1)子集中的每一成员Wk广播
(2)成员Wj验证Wk广播数据的有效性,即检验是否有
(3)子集中的每一成员Wj计算自己的公钥
(4)最后生成共享私钥对应的公钥为即,pk=y。
在步骤S304中,联盟链生成步骤:通过当值管控元对该时段通过验证的各条流表记录单利用多方分享的共享密钥进行数字签名,并打包生成最新的区块,而其他管控元利用联盟链公钥进行签名验证,及加上时间戳机制,将区块有序链接成区块链,生成不可篡改的信息记录表,以当异常数据发生或执行跨域流表下发付费时,调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。
进一步地,在本发明的一个实施例中,联盟链生成步骤,具体包括:当值管控元通过共享密钥sk和ECDSA签名算法将准区块签名生成新的区块;其他各管控元利用联盟链公钥pk进行签名验证,若验证通过,则将该区块加入到现有区块链,更新生成最新的区块链;最终生成的区块链形式的流表日志,以获得不可篡改的信息表,用于对控制器的审计。
可以理解的是,在联盟链生成步骤中,本发明实施例的矿工可以对该时段通过验证的各条流表记录单利用多方分享的秘密值sk进行数字签名,打包生成最新的区块。其他管控元利用联盟链公钥pk进行签名验证,之后加上时间戳机制,将区块有序链接成区块链,生成不可篡改的信息记录表。
当异常数据发生或执行跨域流表下发付费时,需要对相应数据进行流表分析。此时,可以调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。
具体地,当值管控元利用共享密钥sk将准区块签名生成新的区块。其他管控元利用联盟链公钥pk进行签名验证。之后加上时间戳机制,将区块有序链接成区块链,生成不可篡改的信息记录表。具体流程如图6所示。
(1)区块生成。
当值管控元利用共享密钥sk和ECDSA签名算法将准区块签名生成新的区块,具体过程同步骤S302。
(2)区块加入。
其他各管控元利用联盟链公钥pk进行签名验证,具体过程同步骤S302。若验证通过,则将该区块加入到现有区块链,更新生成最新的区块链。
如图7所示,最终生成的区块链形式的流表日志,该不可篡改的信息表用于对控制器的审计。
根据本发明实施例提出的SDN网络的控制器分布式日志生成方法,基于区块链机制实现,能够保证基于联盟链中各运营商的共识达成一致,确保记录的日志合规、可信;将分布式记录下方在交换机层面,从而保证记录和审计过程不会影响SDN网络系统的效率;利用二次验证机制的区块生成与确认方案,保证共识达成过程中不会被少数运营商恶意控制;采用高效的共识达成机制,保证系统计算效率的高效性。
其次参照附图描述根据本发明实施例提出的SDN网络的控制器分布式日志生成装置。
图8是本发明实施例的SDN网络的控制器分布式日志生成装置的结构示意图。
如图8所示,该SDN网络的控制器分布式日志生成装置10包括:初始化模块100、记录模块200、共识达成模块300和生成模块400。
其中,初始化模块100用于系统初始化:定义交换机设备为S1至Sn与对应接收的流表及日志信息来自于控制器C1至Cm,部署管控元W1至Wn进入交换机集群,生成系统公共参数,且管控元W1至Wn之间轮流当矿工,以负责收集该时段内广播的所有有效日志记录。记录模块200用于分布式记录:将每个管控元W1至Wn收集本时段对应控制器下发至相应交换机的流表规则及日志记录到本地存储的流表记录单中,并将自身的记录单使用预设签名算法进行数字签名,并广播给其余管控元,使得其他管控元进行签名验证,以验证日志单的有效性。共识达成模块300用于共识达成:输入系统公共参数,并使得当值管控元生成准区块并发布,其中,每个管控元W1至Wn运行分布式密钥生成协议进行共识达成阶段,并获取生成联盟链所需的共享密钥和联盟链公钥。生成模块400用于联盟链生成:通过当值管控元对该时段通过验证的各条流表记录单利用多方分享的共享密钥进行数字签名,并打包生成最新的区块,而其他管控元利用联盟链公钥进行签名验证,及加上时间戳机制,将区块有序链接成区块链,生成不可篡改的信息记录表,以当异常数据发生或执行跨域流表下发付费时,调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。本发明实施例的装置10可以解决各运营商在非信任环境下的审计和计费问题,具有良好的可靠性,适合在实际SDN网络中部署。
进一步地,在本发明的一个实施例中,初始化模块100具体包括:系统为基于离散对数的公钥系统,公钥系统参数为(p,q,g,h),其中,p,q均是大素数,q|(p-1),Gq是Zp *的唯一q阶子群,g,h是Gq的生成元,且无法计算离散对数loggh;部署管控元W1至Wn形成管控元群体,W={W1,W2,…,Wn}上有一个单调接入结构Γ,以Γ={T1,T2,…,Tt}表示Γ的基;公共参数(p,q,g,h)由管控元群体生成和/或第三方生成。
进一步地,在本发明的一个实施例中,记录模块200具体包括:管控元W1,W2,…,Wn生成各自的公私钥对,运行ECDSA签名算法,对最近10分钟内控制器下发至相应交换机的流表及日志记录进行签名运算,之后广播给其余管控元;ECDSA签名算法系统参数为Fq,E,G,n,a,b,h,其中,Fq为有限域,E为Fq上的椭圆曲线,G为E上的一个基点,G的阶为n,n为素数,a,b为椭圆曲线E的系数,h为单向安全的hash函数,管控元Wi的密钥对为(wpki,wski)=(Q,d),其中,Q=dG,待签名日志消息为m。
进一步地,在本发明的一个实施例中,共识达成模块300具体包括:管控元之间轮流当矿工,当值管控元负责收集该时段内广播的所有有效日志记录,生成准区块并用当值管控元的私钥对准区块进行签名和发布,各管控元运行分布式密钥生成协议进行共识达成阶段,以计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
进一步地,在本发明的一个实施例中,生成模块400具体包括:当值管控元通过共享密钥sk和ECDSA签名算法将准区块签名生成新的区块;其他各管控元利用联盟链公钥pk进行签名验证,若验证通过,则将该区块加入到现有区块链,更新生成最新的区块链;最终生成的区块链形式的流表日志,以获得不可篡改的信息表,用于对控制器的审计。
需要说明的是,前述对SDN网络的控制器分布式日志生成方法实施例的解释说明也适用于该实施例的SDN网络的控制器分布式日志生成装置,此处不再赘述。
根据本发明实施例提出的SDN网络的控制器分布式日志生成装置,基于区块链机制实现,能够保证基于联盟链中各运营商的共识达成一致,确保记录的日志合规、可信;将分布式记录下方在交换机层面,从而保证记录和审计过程不会影响SDN网络系统的效率;利用二次验证机制的区块生成与确认方案,保证共识达成过程中不会被少数运营商恶意控制;采用高效的共识达成机制,保证系统计算效率的高效性。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种SDN网络的控制器分布式日志生成方法,其特征在于,包括以下步骤:
系统初始化步骤:定义交换机设备为S1至Sn与对应接收的流表及日志信息来自于控制器C1至Cm,部署管控元W1至Wn进入交换机集群,生成系统公共参数,且所述管控元W1至Wn之间轮流当矿工,以负责收集该时段内广播的所有有效日志记录;
分布式记录步骤:将每个管控元W1至Wn收集本时段对应控制器下发至相应交换机的流表规则及日志记录到本地存储的流表记录单中,并将自身的记录单使用预设签名算法进行数字签名,并广播给其余管控元,使得其他管控元进行签名验证,以验证日志单的有效性;
共识达成步骤:输入所述系统公共参数,并使得当值管控元生成准区块并发布,其中,所述每个管控元W1至Wn运行分布式密钥生成协议进行共识达成阶段,并获取生成联盟链所需的共享密钥和联盟链公钥;以及
联盟链生成步骤:通过所述当值管控元对该时段通过验证的各条流表记录单利用多方分享的所述共享密钥进行数字签名,并打包生成最新的区块,而所述其他管控元利用所述联盟链公钥进行签名验证,及加上时间戳机制,将所述区块有序链接成区块链,生成不可篡改的信息记录表,以当异常数据发生或执行跨域流表下发付费时,调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。
2.根据权利要求1所述的SDN网络的控制器分布式日志生成方法,其特征在于,所述系统初始化步骤具体包括:
所述系统为基于离散对数的公钥系统,所述公钥系统参数为(p,q,g,h),
其中,p,q均是大素数,q|(p-1),Gq是的唯一q阶子群,g,h是Gq的生成元,且无法计算离散对数loggh;所述部署管控元W1至Wn形成管控元群体,W={W1,W2,…,Wn}上有一个单调接入结构Γ,以Γ={T1,T2,…,Tt}表示Γ的基;公共参数(p,q,g,h)由所述管控元群体生成和/或第三方生成。
3.根据权利要求1所述的SDN网络的控制器分布式日志生成方法,其特征在于,所述分布式记录步骤,具体包括:
管控元W1,W2,…,Wn生成各自的公私钥对,运行ECDSA签名算法,对最近10分钟内控制器下发至相应交换机的流表及日志记录进行签名运算,之后广播给其余管控元;
所述ECDSA签名算法系统参数为Fq,E,G,n,a,b,h,
其中,Fq为有限域,E为Fq上的椭圆曲线,G为E上的一个基点,G的阶为n,n为素数,a,b为椭圆曲线E的系数,h为单向安全的hash函数,所述管控元Wi的密钥对为(wpki,wski)=(Q,d),其中,Q=dG,待签名日志消息为m。
4.根据权利要求1所述的SDN网络的控制器分布式日志生成方法,其特征在于,所述共识达成步骤,具体包括:
所述管控元之间轮流当矿工,当值管控元负责收集该时段内广播的所有有效日志记录,生成准区块并用所述当值管控元的私钥对所述准区块进行签名和发布,各管控元运行分布式密钥生成协议进行共识达成阶段,以计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
5.根据权利要求1所述的SDN网络的控制器分布式日志生成方法,其特征在于,联盟链生成步骤,具体包括:
所述当值管控元通过所述共享密钥sk和所述ECDSA签名算法将所述准区块签名生成新的区块;
其他各管控元利用所述联盟链公钥pk进行签名验证,若验证通过,则将该区块加入到现有区块链,更新生成最新的区块链;
最终生成的区块链形式的流表日志,以获得不可篡改的信息表,用于对控制器的审计。
6.一种SDN网络的控制器分布式日志生成装置,其特征在于,包括:
初始化模块,用于系统初始化:定义交换机设备为S1至Sn与对应接收的流表及日志信息来自于控制器C1至Cm,部署管控元W1至Wn进入交换机集群,生成系统公共参数,且所述管控元W1至Wn之间轮流当矿工,以负责收集该时段内广播的所有有效日志记录;
记录模块,用于分布式记录:将每个管控元W1至Wn收集本时段对应控制器下发至相应交换机的流表规则及日志记录到本地存储的流表记录单中,并将自身的记录单使用预设签名算法进行数字签名,并广播给其余管控元,使得其他管控元进行签名验证,以验证日志单的有效性;
共识达成模块,用于共识达成:输入所述系统公共参数,并使得当值管控元生成准区块并发布,其中,所述每个管控元W1至Wn运行分布式密钥生成协议进行共识达成阶段,并获取生成联盟链所需的共享密钥和联盟链公钥;以及
生成模块,用于联盟链生成:通过所述当值管控元对该时段通过验证的各条流表记录单利用多方分享的所述共享密钥进行数字签名,并打包生成最新的区块,而所述其他管控元利用所述联盟链公钥进行签名验证,及加上时间戳机制,将所述区块有序链接成区块链,生成不可篡改的信息记录表,以当异常数据发生或执行跨域流表下发付费时,调取生成的区块链信息对流表规则和日志记录进行审计,获得不可篡改的信息表。
7.根据权利要求6所述的SDN网络的控制器分布式日志生成装置,其特征在于,所述初始化模块具体包括:
所述系统为基于离散对数的公钥系统,所述公钥系统参数为(p,q,g,h),
其中,p,q均是大素数,q|(p-1),Gq是的唯一q阶子群,g,h是Gq的生成元,且无法计算离散对数loggh;所述部署管控元W1至Wn形成管控元群体,W={W1,W2,…,Wn}上有一个单调接入结构Γ,以Γ={T1,T2,…,Tt}表示Γ的基;公共参数(p,q,g,h)由所述管控元群体生成和/或第三方生成。
8.根据权利要求6所述的SDN网络的控制器分布式日志生成装置,其特征在于,所述记录模块具体包括:
管控元W1,W2,…,Wn生成各自的公私钥对,运行ECDSA签名算法,对最近10分钟内控制器下发至相应交换机的流表及日志记录进行签名运算,之后广播给其余管控元;
所述ECDSA签名算法系统参数为Fq,E,G,n,a,b,h,
其中,Fq为有限域,E为Fq上的椭圆曲线,G为E上的一个基点,G的阶为n,n为素数,a,b为椭圆曲线E的系数,h为单向安全的hash函数,所述管控元Wi的密钥对为(wpki,wski)=(Q,d),其中,Q=dG,待签名日志消息为m。
9.根据权利要求6所述的SDN网络的控制器分布式日志生成装置,其特征在于,所述共识达成模块具体包括:
所述管控元之间轮流当矿工,当值管控元负责收集该时段内广播的所有有效日志记录,生成准区块并用所述当值管控元的私钥对所述准区块进行签名和发布,各管控元运行分布式密钥生成协议进行共识达成阶段,以计算出生成联盟链所需的共享密钥sk和联盟链公钥pk。
10.根据权利要求6所述的SDN网络的控制器分布式日志生成装置,其特征在于,所述生成模块具体包括:
所述当值管控元通过所述共享密钥sk和所述ECDSA签名算法将所述准区块签名生成新的区块;
其他各管控元利用所述联盟链公钥pk进行签名验证,若验证通过,则将该区块加入到现有区块链,更新生成最新的区块链;
最终生成的区块链形式的流表日志,以获得不可篡改的信息表,用于对控制器的审计。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810136497.8A CN108494581B (zh) | 2018-02-09 | 2018-02-09 | Sdn网络的控制器分布式日志生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810136497.8A CN108494581B (zh) | 2018-02-09 | 2018-02-09 | Sdn网络的控制器分布式日志生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108494581A true CN108494581A (zh) | 2018-09-04 |
CN108494581B CN108494581B (zh) | 2020-12-29 |
Family
ID=63340330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810136497.8A Expired - Fee Related CN108494581B (zh) | 2018-02-09 | 2018-02-09 | Sdn网络的控制器分布式日志生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108494581B (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109257430A (zh) * | 2018-09-30 | 2019-01-22 | 北京奇虎科技有限公司 | 基于区块链的互联网应用的系统、方法及服务器 |
CN109388639A (zh) * | 2018-09-29 | 2019-02-26 | 四川赢才多多科技有限公司 | 基于区块链技术的存储记录模组 |
CN109472698A (zh) * | 2018-10-30 | 2019-03-15 | 四川大学 | 基于区块链的公益监督方法及系统 |
CN109525397A (zh) * | 2018-10-12 | 2019-03-26 | 南京邮电大学 | 一种面向sdn网络流规则安全保障的区块链及方法 |
CN109815203A (zh) * | 2019-02-12 | 2019-05-28 | 山东超越数控电子股份有限公司 | 一种基于区块链的日志审计方法及系统 |
CN109902480A (zh) * | 2019-03-01 | 2019-06-18 | 重庆邮电大学 | 一种针对联盟链的高效认证方法 |
CN110213171A (zh) * | 2019-06-03 | 2019-09-06 | 杭州云象网络技术有限公司 | 一种基于联盟链技术的数据流量监测与控制方法 |
CN110417553A (zh) * | 2019-08-07 | 2019-11-05 | 北京阿尔山区块链联盟科技有限公司 | 多方保密通信方法、装置及用户终端 |
CN110572281A (zh) * | 2019-08-23 | 2019-12-13 | 华南理工大学 | 一种基于区块链的可信日志记录方法及系统 |
TWI686066B (zh) * | 2018-11-30 | 2020-02-21 | 國立中興大學 | 利用區塊鏈的日誌資料保全方法 |
WO2020062211A1 (zh) * | 2018-09-30 | 2020-04-02 | 北京大学深圳研究生院 | 一种融合区块链技术拟态存储防篡改日志的方法及系统 |
CN111404947A (zh) * | 2020-03-19 | 2020-07-10 | 李子钦 | 一种OpenFlow网络中的轻量级控制通道通信保护方法及系统 |
CN112235252A (zh) * | 2020-09-21 | 2021-01-15 | 西安电子科技大学 | 基于区块链的安全识别方法、安全识别系统及存储介质 |
CN114389836A (zh) * | 2021-12-06 | 2022-04-22 | 重庆邮电大学 | 一种基于sdn的具有隐私保护的车载云计算方法 |
US11316668B2 (en) | 2018-11-16 | 2022-04-26 | Safetech Bv | Methods and systems for cryptographic private key management for secure multiparty storage and transfer of information |
CN114448900A (zh) * | 2022-04-02 | 2022-05-06 | 南京邮电大学 | 基于扩展raft算法的SDN控制器交互方法及系统 |
CN117176472A (zh) * | 2023-10-30 | 2023-12-05 | 杭州海康威视数字技术股份有限公司 | 基于智能密码安全设备数据防篡改方法、装置及系统 |
CN109257430B (zh) * | 2018-09-30 | 2024-04-19 | 北京奇虎科技有限公司 | 基于区块链的互联网应用的系统、方法及服务器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101488958A (zh) * | 2009-02-20 | 2009-07-22 | 东南大学 | 一种使用椭圆曲线进行的大集群安全实时通讯方法 |
CN106910051A (zh) * | 2017-01-11 | 2017-06-30 | 中国互联网络信息中心 | 一种基于联盟链的dns资源记录公证方法及系统 |
CN107124278A (zh) * | 2017-03-30 | 2017-09-01 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置以及数据共享系统 |
CN107222478A (zh) * | 2017-05-27 | 2017-09-29 | 暨南大学 | 基于区块链的软件定义网络控制层安全机制构建方法 |
US20170364700A1 (en) * | 2015-06-02 | 2017-12-21 | ALTR Solutions, Inc. | Immutable logging of access requests to distributed file systems |
-
2018
- 2018-02-09 CN CN201810136497.8A patent/CN108494581B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101488958A (zh) * | 2009-02-20 | 2009-07-22 | 东南大学 | 一种使用椭圆曲线进行的大集群安全实时通讯方法 |
US20170364700A1 (en) * | 2015-06-02 | 2017-12-21 | ALTR Solutions, Inc. | Immutable logging of access requests to distributed file systems |
CN106910051A (zh) * | 2017-01-11 | 2017-06-30 | 中国互联网络信息中心 | 一种基于联盟链的dns资源记录公证方法及系统 |
CN107124278A (zh) * | 2017-03-30 | 2017-09-01 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置以及数据共享系统 |
CN107222478A (zh) * | 2017-05-27 | 2017-09-29 | 暨南大学 | 基于区块链的软件定义网络控制层安全机制构建方法 |
Non-Patent Citations (2)
Title |
---|
刘洋: ""SDN安全通信架构关键技术研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
王蒙蒙等: ""软件定义网络:安全模型、机制及研究进展"", 《软件学报》 * |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388639A (zh) * | 2018-09-29 | 2019-02-26 | 四川赢才多多科技有限公司 | 基于区块链技术的存储记录模组 |
CN109257430A (zh) * | 2018-09-30 | 2019-01-22 | 北京奇虎科技有限公司 | 基于区块链的互联网应用的系统、方法及服务器 |
WO2020062211A1 (zh) * | 2018-09-30 | 2020-04-02 | 北京大学深圳研究生院 | 一种融合区块链技术拟态存储防篡改日志的方法及系统 |
CN109257430B (zh) * | 2018-09-30 | 2024-04-19 | 北京奇虎科技有限公司 | 基于区块链的互联网应用的系统、方法及服务器 |
CN109525397B (zh) * | 2018-10-12 | 2021-05-28 | 南京邮电大学 | 一种面向sdn网络流规则安全保障的区块链及方法 |
CN109525397A (zh) * | 2018-10-12 | 2019-03-26 | 南京邮电大学 | 一种面向sdn网络流规则安全保障的区块链及方法 |
CN109472698A (zh) * | 2018-10-30 | 2019-03-15 | 四川大学 | 基于区块链的公益监督方法及系统 |
US11316668B2 (en) | 2018-11-16 | 2022-04-26 | Safetech Bv | Methods and systems for cryptographic private key management for secure multiparty storage and transfer of information |
TWI686066B (zh) * | 2018-11-30 | 2020-02-21 | 國立中興大學 | 利用區塊鏈的日誌資料保全方法 |
CN109815203A (zh) * | 2019-02-12 | 2019-05-28 | 山东超越数控电子股份有限公司 | 一种基于区块链的日志审计方法及系统 |
CN109902480B (zh) * | 2019-03-01 | 2023-03-31 | 重庆邮电大学 | 一种针对联盟链的高效认证方法 |
CN109902480A (zh) * | 2019-03-01 | 2019-06-18 | 重庆邮电大学 | 一种针对联盟链的高效认证方法 |
CN110213171A (zh) * | 2019-06-03 | 2019-09-06 | 杭州云象网络技术有限公司 | 一种基于联盟链技术的数据流量监测与控制方法 |
CN110417553B (zh) * | 2019-08-07 | 2022-12-27 | 北京阿尔山区块链联盟科技有限公司 | 多方保密通信方法、装置及用户终端 |
CN110417553A (zh) * | 2019-08-07 | 2019-11-05 | 北京阿尔山区块链联盟科技有限公司 | 多方保密通信方法、装置及用户终端 |
CN110572281A (zh) * | 2019-08-23 | 2019-12-13 | 华南理工大学 | 一种基于区块链的可信日志记录方法及系统 |
CN111404947A (zh) * | 2020-03-19 | 2020-07-10 | 李子钦 | 一种OpenFlow网络中的轻量级控制通道通信保护方法及系统 |
CN111404947B (zh) * | 2020-03-19 | 2023-04-18 | 李子钦 | 一种OpenFlow网络中的轻量级控制通道通信保护方法及系统 |
CN112235252A (zh) * | 2020-09-21 | 2021-01-15 | 西安电子科技大学 | 基于区块链的安全识别方法、安全识别系统及存储介质 |
CN114389836A (zh) * | 2021-12-06 | 2022-04-22 | 重庆邮电大学 | 一种基于sdn的具有隐私保护的车载云计算方法 |
CN114389836B (zh) * | 2021-12-06 | 2023-12-15 | 山东格仑特电动科技有限公司 | 一种基于sdn的具有隐私保护的车载云计算方法 |
CN114448900A (zh) * | 2022-04-02 | 2022-05-06 | 南京邮电大学 | 基于扩展raft算法的SDN控制器交互方法及系统 |
CN114448900B (zh) * | 2022-04-02 | 2022-08-02 | 南京邮电大学 | 基于扩展raft算法的SDN控制器交互方法及系统 |
CN117176472A (zh) * | 2023-10-30 | 2023-12-05 | 杭州海康威视数字技术股份有限公司 | 基于智能密码安全设备数据防篡改方法、装置及系统 |
CN117176472B (zh) * | 2023-10-30 | 2024-01-09 | 杭州海康威视数字技术股份有限公司 | 基于智能密码安全设备数据防篡改方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108494581B (zh) | 2020-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108494581A (zh) | Sdn网络的控制器分布式日志生成方法及装置 | |
CN108985089B (zh) | 互联网数据共享系统 | |
Wang et al. | B-TSCA: Blockchain assisted trustworthiness scalable computation for V2I authentication in VANETs | |
Chaudhary et al. | SDN-enabled multi-attribute-based secure communication for smart grid in IIoT environment | |
CN108880863B (zh) | 一种基于区块链技术的智能电网设备安全诊断服务系统 | |
Shi et al. | Blockchain‐based trusted data sharing among trusted stakeholders in IoT | |
CN112418860A (zh) | 一种基于跨链技术的区块链高效管理架构及工作方法 | |
CN108471350A (zh) | 基于区块链的可信数据计算方法 | |
CN108390891A (zh) | 基于私有区块链的信息保护方法 | |
DE102016224537B4 (de) | Masterblockchain | |
CN108429759A (zh) | 去中心化存储安全实现方法 | |
US20230316273A1 (en) | Data processing method and apparatus, computer device, and storage medium | |
WO2019232946A1 (zh) | 医疗数据记录方法、系统、计算机设备和存储介质 | |
CN109245894B (zh) | 一种基于智能合约的分布式云存储系统 | |
Feng et al. | System architecture for high-performance permissioned blockchains | |
CN113556363B (zh) | 基于去中心化和分布式代理重加密的数据共享方法及系统 | |
US20210021412A1 (en) | Method and apparatus for electing representative node device, computer device, and storage medium | |
Zhang et al. | Data security sharing method based on CP-ABE and blockchain | |
CN112019349B (zh) | 一种基于跨链技术的电力物联网跨域认证方法 | |
CN113079215B (zh) | 一种基于区块链的配电物联网无线安全接入方法 | |
He et al. | ROAchain: Securing route origin authorization with blockchain for inter-domain routing | |
Zhang et al. | Blockchain-based secure equipment diagnosis mechanism of smart grid | |
Germanus et al. | Increasing the resilience of critical scada systems using peer-to-peer overlays | |
Xue et al. | Research on key technologies of software-defined network based on blockchain | |
CN112865962A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20201229 |
|
CF01 | Termination of patent right due to non-payment of annual fee |