传统网路架构
在目前的网际网路架构中,负责在不同设备之间传递信息的系统称作边界闸道通讯协定 (Border Gateway Protocol,简称 BGP)。 BGP 就像是互联网中的邮政服务,当有人透过互联网提交资料时,BGP 就会寻找资料到达目的地的所有可用路由 (Routing),并自动选择最佳路径。
每一个连接至互联网的设备都隶属于一个自治系统(Autonomous System,简称AS),AS 是一个小型的网路单位,内部会连接多个设备,通常是由单一组织(如学校、公司或政府单位) 运行和管理,隶属于同一个AS 的设备会有相同的路由策略,也就是说相同AS 内的设备A 和设备B 若都想要连接到外部的伺服器C,其资料传输的路径会一样。简单来说,AS 就像是分布在各地的邮政分局,其编号代表该地区的邮递区号,而设备提交的资料就像是信件,AS 汇整这些资料后,将使用BGP 路由将数据包传输至各个目的地。
AS 之间并不是完全的 P2P 网路,每个 AS 只会和相邻的 AS 相连接,并互相宣告其所能到达的目的地 (如图 一)。假设现在有一个数据包要从 AS1 传到 AS4,有两个路径,分别是:
AS1 → AS2 → AS3 → AS4
AS1 → AS5 → AS5
由于路径 2 所经过的路径长是最短的,因此 BGP 会自动帮该数据包选择最佳路径。若路径 2 因为某些缘故中断,则 BGP 会重新计算出新的最佳路径来传输资料。 BGP 就像一个自动导航员,会纪录到其他 AS 的最佳路径,如此一来,一旦终端机发起传输资料的需求,BGP 就可以自动将其以最快的速度传送到目的地。
然而,BGP 在开发的初衷仅是要让少数电脑能够互相传输资料,并没有顾及到更多安全性和流量的问题,因此在使用上会有一些隐忧。首先在安全性的部分,由于数据传输的路径是由 BGP 自动选择,使用者并无法主动调整,因此其传输路径很容易遭受攻击。例如攻击者可以架设一个恶意的 AS,并宣布错误的路由信息,将数据引导到错误的地方,进而导致数据被拦截或网路中断。
接着在效率层面,一旦 AS 的整体配置有所改变,BGP 就需要一定的时间更新所有路由信息,过程中会导致部分路径无法使用,出现延迟以及丢包率会往上升。再来就是BGP 并没有内建一个流量负载的机制,虽然会选择最短的路径,但当该路径吞吐量超过负荷时,除非AS 配置出现变动,否则BGP 也不会将流量平均分散至其他路径上。
BGP 潜在的种种问题也引发了许多重大的网路事件,例如在2008 年,隶属于政府管辖的巴基斯坦电信,欲在境内对Youtube 的IP 进行审查,而其上游的网路服务提供商在阴错阳差下将不正确的路由资讯广播至网际网路,导致全球对Youtube 的访问流量全部导向巴基斯坦电信,全球的Youtube 服务因此中断。
且除了传统 Web2 的公司之外,攻击者亦可以透过 BGP 的攻击窃取用户的加密资产。 2018 年,攻击者发起 BGP 劫持攻击,将访问 MyEther 钱包的流量重新导向恶意伺服器,诱使用户进入钓鱼网站,进而清空用户钱包中的资产,并转进攻击者的钱包中。此次攻击事件维持了约两小时,共有 214 枚以太币失窃,当时价值超过 15 万美金。由此可见,BGP 已成为企业和公司在营运时面临的最大问题之一,因此便发展出新的网路通协定 SCION。
什么是 SCION?
SCION (Scalability, Control, and Isolation On Next-Generation Networks) 是一种提升互联网安全性和性能的网路架构,由瑞士苏黎世联邦理工学院和其附属公司Anapaya Systems 所开发,目的是解决现有网路架构中存在的种种安全问题。
首先,SCION 导入了隔离域 (Isolation Domains, ISDs) 的概念,每个 ISD 由数个相同管辖区或地理位置的 AS 组成,并会选出由各方信赖的实体运行核心 AS,负责管理 ISD。每个 ISD 内部皆有自己的公钥基础设施 (PKI),用于验证 AS 之间的身分,确保不会有恶意 AS 参杂其中,并能够对传输的信息进行加密,提高通信的安全性。除了保证内部AS 是可受信赖的之外,ISD 就像在网际网路中设置了一道道防火墙,当系统出现安全漏洞时,其影响仅会受限于出问题的ISD 中,而不会扩散至整个网路,能够有效避免大规模的网路攻击或瘫痪出现。
而在数据传输的部分,SCION 具有自证明路径(Proof-of-Path) 机制,每条路径信息都经过加密和签名,路径中的AS 都会验证其参与的路径的真实性,防止路径被任意窜改,确保SCION 中的每条路径都是安全且可信任的。同时,SCION 会为传输资料的源点提供多条路径选择,用户可以评估不同路径的延迟、待宽和安全性等,根据自己的需求选择最适合的路由。如此一来,网路中的流量就不会全部都堵在同一条路径上,可以有效提升资料传输的效率。
和 BGP 相比,SCION 系统中的 ISD 可以审查每个 AS 的来历和真实性,并将安全问题控制在小部分范围,极大地提高了网路的安全和稳定性。除此之外,和BGP 会自动替用户选择路由不同,SCION 允许用户对资料传输的路径拥有绝对的控制权,提供多条路径让用户选择,用户可以知道该路径会经过的AS 有哪些,并将选定的路径规划嵌入欲传输的数据包中,使途中经过的每个AS 都可以清楚知道该数据包接下来要传递至何处,而不需要像BGP 一样,事先建立一个巨大的路由表,从路由表中读取下一站的资讯,如此便能释放路由器的储存空间,并避免了更新路由表所带来的延迟。
SCION 对 Sui 网路的影响
目前所有的区块链网路,不论是Layer 1、Layer 2 或是模块化区块链,节点之间的通信仍是使用BGP 协议,间接导致所有区块链都暴露于BGP 的潜在风险中,历史上也确实经历过几次著名的BGP 攻击。例如,2018 年,攻击者发起 BGP 劫持攻击,将访问 MyEther 钱包的流量重新导向恶意伺服器,诱使用户进入钓鱼网站,进而清空用户钱包中的资产,并转进攻击者的钱包中。此次攻击事件维持了约两小时,共有214 枚以太币失窃,当时价值超过15 万美金;2022 年,KLAYswap 被骇客通过BGP 劫持窜改前端的第三方连结,使用户将资产授权给恶意地址,导致约有190 万美金的资产被盗。
除了资产窃盗的风险外,攻击者亦可以利用 BGP 劫持操纵路由,提高节点之间的通信延迟,甚至完全阻断传输路径。这会严重影响区块链共识形成的速度,导致网路暂停出块而陷入停机状态,破坏网路的共识安全。而共识对于区块链而言至关重要,基本上就是支持网路能否正常运作的基础,可以避免双重支付以及窜改帐本的情况发生,确保网路的可靠性。过去,Solana 便因为发生了多次长时间的停机,导致当时不少人对其安全性提出质疑。
因此,鉴于 BGP 的系统性风险,Sui 决定开始和 Aanpaya Systems 合作建立 SCION 基础设施,并在其测试网上开始运行,预计将会对 Sui 带来以下几点帮助:
更具弹性的共识参与
对全节点而言,若其中一个网路遭遇攻击,可以立即从该网路切换至其他网路,弹性选择其他未受影响的路径传递信息,防止共识的形成因这类试图使验证者离线的攻击而中断。
增加可用的状态同步
SCION 的引入,允许全节点拥有多条路径连结至其他的节点和验证者,当进行状态同步时,可以避免连接至更远的节点,并可以绕过网路瓶颈以更快达成整体网路的同步。
提升对 IP DDoS 攻击的抗性
当发生 DDoS 攻击时,由于 ISD 的设置,其攻击范围将会限缩于单一网路,而节点和验证者可以选择其他路径绕过恶意流量,因而不受 DDoS 攻击的影响。
整体而言,SCION 的多路径选择和路径隔离赋予 Sui 网路更高的安全性,面对外来的网路攻击时具备更多的弹性去应对,降低网路停机的概率。而在安全性之外,SCION 将路径资讯包含在数据包中的做法,将再进一步提升Sui 的网路速度,根据官方的实验显示,Sui 节点透过SCION 的自动路径选择和优化,远距节点之间的延迟可以比原来降低10% 以上,加强网路的效能,有助于Sui 成为产业内领先的公链。
结语
Sui 作为一条新兴的Layer 1 公链,除了是以少见的MOVE 语言建构而成外,也是第一条以物件导向设计的公链,如今又将成为第一个采用SCION 网络架构的区块链协议,可见其开发团队Mysten Lab 一直致力于在技术上有所突破,不断优化Sui 的性能和安全性。此次 SCION 的升级倘若成功,不排除将会吸引其他公链的效仿,这对于区块链技术将会是一项重大革新,也为将成为未来大规模采用的重要基石。
声明:本网站所有相关资料如有侵权请联系站长删除,资料仅供用户学习及研究之用,不构成任何投资建议!