
今天,互联网已经成为人们日常工作、生活必不可少的一部分,全球网络设备、网络资源的使用已经相当普遍。随着互联网应用向各领域渗透,网络系统日趋复杂。恶意攻击者利用网络中的漏洞及缺陷对网络进行恶意攻击,给个人及社会带来极大损失。
由于当前网络多基于TCP/IP体系架构设计,设计之初是面向小规模,彼此相互信任的可谓“熟人网络”,即没有考虑在不可信的网络和终端存在的情况下如何建立可信通信,也没有充分考虑如何在具有未知安全风险的网络中进行安全可靠的通信,导致目前的网络安全是以不断增加“安全补丁”的方式进行局部的安全防护,不具备全局的、内生的安全可信能力。
当前主流网络安全手段以在进出口流量处增加安全检查机制的防火墙为主,逐步增加端到端全覆盖,检查网络中的流量。面对当前的情况,如何将这些碎片化(如各个出入口的防火墙)的方案拉通统一成一套整体的安全可信方案是非常困难的。另外,这些方案由于是局部方案,因此对与其他方案的相互兼容欠缺考虑。
内生安全可信的基础网络需求
将来的网络一定是一整套完整的、内生的安全可信机制,不仅要保证通信双方和网络基础设施的安全可信,还要保证端到端的真实性、可审计性、隐私性、机密性、完整性,以及面临网络故障和网络攻击时的可用性等。
针对端到端通信业务安全,源IP地址的真实性验证、面向IP头部信息的隐私保护以及审计追踪溯源、面向中间人攻击的密钥安全交换以及面向可用性保障的DDoS防御技术将成为未来网络安全中的关键技术需求。
针对网络基础设施安全,由于中心化的可信基础设施存在单点权威沦陷、不可信节点或证书难发现与验证等问题,基于去中心化的PKI技术,提供去中心化可信的DNS域名服务以及可信的BGP宣告信息及协议安全也将成为未来安全网络的关键需求。
区块链技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。它是一种按照时间顺序将数据区块以顺序相连的方式组合成的链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式公开账本技术,实现了链上数据可信不可抵赖,账本信息可溯源不可篡改。
在区块链系统中,当我们记录一条信息后,这条信息会被广播给区块链系统中的每一个节点。只有系统中大部分节点都认可了这条信息,这时信息会被存储到区块里。
通过哈希算法,每个区块的数据形成摘要,即哈希值,这个算法是不可逆的,决定了区块链的不可篡改性。每个区块的信息,通过哈希算法计算过后生成哈希值,把这个哈希值写入它之后的区块里,这样每个区块的信息里都保存了前一个区块的哈希值,最终将所有区块串联起来,形成区块链。
图1 区块链存储示意图
如果想要修改一条信息,那么必须再次发起新的交易进行修改,修改的过程在链上完全体现,为后续的审计做到全链条可溯源。
区块链技术具有几个核心特性:
1. 去中心化。
在这种去中心化的网络环境中,全网所有在网节点没有实质的区别,所有节点享有相同的权利和义务。
2. 数据及操作的透明性。
区块链通过对非对称加密算法、散列加密等密码学技术的组合应用,保证区块链信息在全网的高度透明性。并且,区块链网络运行的程序、规则、节点的接入方式都是公开的,这是区块链网络信任的基础。这些机制的运用,保证了区块链中记录的数据可以被全网所有节点审查、追溯。
3. 数据不可篡改性。
区块链区块中的数据,一旦被验证通过写入区块并加入区块链中,就无法被篡改。这种信息的不可篡改性保证了区块链数据的稳定性与可靠性。
互联网已经解决了分布式场景下传递信息的问题,分布式账本技术将解决传递可信信息的问题。分布式记账科技的演进,将促使商业协作形态发生变革,核心价值在于(通过合约)为多方协同网络提供可信基础。
安全可信基础网络架构
利用区块链技术作为底层可信不可篡改的分布式账本,构建安全可信的基础网络。整体分为三个层次:分布式账本层、资源管理层、分布式应用层。
图2 安全可信基础网络架
1. 分布式账本层
这一层利用区块链的分布式账本技术,搭建去中心化的、安全可信的基础层,为分散网络基础设施提供分散的系统结构、分布式共识机制、智能合约功能和可信不可篡改的数据保证。
2. 资源管理层
可信和可靠的名称属性和名称映射是可信和可靠基础设施的基础。因此,将名称空间管理层作为体系结构的中间层,通过分散的可信名称属性和映射来保证基础结构的安全性和可靠性,从而支持可信上层应用程序。
3. 分布式应用层
应用层基于分布式账本层和资源管理层提供的服务实现安全可信应用,如去中心的安全可信秘钥交换、安全可信的BGP路由宣告、安全可信的DNS查询、近源的DDOS防御服务等功能。
应用层通过智能合约处理资源,并记录到分布式账本的过程完全消除中心化带来的不公开性及恶意篡改可能性。
安全可信基础网络用例
应用一:从源头防止DDOS攻击
分布式拒绝服务攻击(DDoS)是指处于不同位置的多个攻击者同时向一个或数个目标发动攻击,或者一个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施攻击。
图3 目前的DDoS防御示意图
当前针对DDoS攻击的主要防范手段为:在网络入口增加安全设备,首先对流量进行检测,发现是DDoS攻击后,将流量引导到清洗中心进行清洗。这种手段只是整体网络中的一种补丁式的安全处理机制,攻击的所有流量仍然会占用大量的网络带宽,而且攻击者仍然在网络中活动,几乎很难对其做到有效控制。
未来在网络具有内生安全的机制下,基于区块链技术实现的分布式可信安全网络,在网络出入口地方将部署具有防范DDoS攻击能力的设备,并且这些设备作为区块链的部署节点,互相实时同步着本地的账本数据。
图4 基于安全可信基础网络的DDoS防御示意图
方案总体介绍:
1) 所有网络出入口部署Anti-DDoS能力的设备,并组成区块链网络。
2) Anti-DDoS具备包括源IP检测能力、疑似DDoS攻击报文检测能力、DDoS报文流量处理能力。
3) 任何从Anti-DDoS出去的报文都进行源IP检测,完全确保报文的源IP真实性,这点从源头屏蔽条DDoS攻击的源IP伪造问题。
4) Anti-DDoS对出报文进行初步的异常检测,如果检测到流量为疑似的DDoS攻击报文,讲报文特征提交到区块链上,进行账本同步。
5) 每个Anti-DDoS都将检测到的疑似DDoS报文同步到区块链账本,实现安全可信的共享,通过智能合约的分析代码进行总体分析,将分析出的目标IP是DDoS攻击的进行预警,并同步到区块链账本。
6) 各个Anti-DDoS通过同步了区块链账本,得到了预警的IP,触发过滤机制对发起者进行过滤,从近源端将DDoS流量全部清晰掉。
7) 基于区块链的安全可信网络,可以让DDoS攻击的影响缩减到几乎为零的程度,大大减少了网络的流量压力,同时可以取消掉全网的DDoS清洗中心,减少资源耗费。
应用二:去中心化的DNS系统
互联网经过多年的发展,域名系统(DNS)已经成为其基本组成部分。关于审查制度、域名没收、域名盗窃以及与隐私有关的争论层出不穷。DNS的中心化结构是导致大部分问题的根源所在,利用去中心化系统可以直接解决掉这些重要问题。
某些情况在域名的使用上必须遵从类似ICAAN这样中心化组织所制定的规则,同时某些情况下一个政府直接控制可能的信息来源,导致信息自由化传播受阻碍。
域名盗窃虽然人们不是很关注,但这样的情况其实仍时有发生。在隐私方面虽然现有制度有一定的便利之处,比如可以方便想要收购域名的买方快速找到域名持有者的个人信息,但是对于那些想对自己的私人信息保密的域名持有者来说,目前的情况就不太有利了,由于必须公开个人信息,这些持有域名的个人经常会沦为骗子的目标。
当然,如果全部去掉中心的分散组织来处理DNS也是不可取的,比如在控制打击用于提供儿童色情内容的域名几乎存在着全球共识,如果完的去中心化,那么这样的域名将处于非常难于管理的地步。采用联盟链技术实现分散的去中心DNS系统是相对可以兼顾当前所有问题的一个合理方案。
图5 去中心化的DNS业务架构
联盟成员包括ISP、ICANN、域名登记机构、域名注册机构、国家监管机构,整个域名系统由大家共同维护,所有的产生、使用、撤销都采用智能合约进行处理。智能合约的产生先由各个机构在线下达成统一共识,然后各自部署到自己的区块链节点上,后续关于DNS资源的使用就不能随意单方进行独裁,而是完全使用智能合约的方式自动处理。
联盟链方案可以消除政治原因产生的中心机构独裁行为,同时兼顾一些必要的监管可以正常进行。针对各国的政策不同,则提前线下商定背书策略和智能合约的校验策略,某些必须由所有参与方校验签名的,就必须大家同时校验其合法性,某些国家自身的文化导致的问题,则相对宽泛的进行智能合约的校验。
其次,对于一些域名的没收,自然不是单方面决定的,而是没收域名的规则是提前大家共同签订的,一旦某些域名使用方触犯了合约,则由链上的智能合约自动触发没收动作,这样保证了绝对的公平、公开、透明性。
区块链本身的加密、签名安全机制也自然解决了域名盗用以及个人隐私问题。
结束语
基于区块链技术可以实现网络的内生安全可信,既保证了通信双方和网络基础设施的安全可信,又保证了端到端的真实性、可审计性、隐私性、机密性、完整性,以及面临网络故障和网络攻击时的可用性等。
由于当下系统是中心化的,和区块链系统有很多背驰之处,距离去中心的安全可信网络落地,其间不仅仅是技术的演进与普及,还牵扯到多方各种利益的纠缠,道路任重而道远,但我们仍然相信,这样的内生安全可信系统终将到来,因为其必定会为整个社会带来巨大价值。