Substrate Connect是基于浏览器的基于Substrate链的轻客户端,已成为Substrate技术堆栈的最新成员。这个备受期待的区块链基础设施组件提供了以去中心化方式与基于Substrate的区块链同步的最简单和最快的方式,为更多用户友好的dapps和服务以及dapp开发人员更好的体验铺平了道路。Substrate Connect代表着在追求Web3愿景方面向前迈出了一大步,并将允许用户在他们日常使用的浏览器中快速无缝地与区块链交互。Substrate Connect网址如下:https://substrate.io/substrate-connect/基于使区块链开发尽可能灵活和简单的愿景,自Parity Technologies创始人Gavin Wood在2018年Web3峰会上首次展示其功能以来,Substrate吸引了丰富的区块链建设者生态。Substrate Connect更进了一步,为开发人员和最终用户提供了一种更简单、更快速的方式,以完全去中心化、无需信任的方式连接到基于Substrate的链。
Substrate Connect是一个Javascript库,它提供了一个功能齐全的基于浏览器的轻客户端和一个附带的浏览器扩展,并取代了通过RPC节点连接到Substrate链的需要。只需几行代码即可为基于Substrate的去中心化应用程序提供更好的最终用户体验。使用Substrate Connect,dapp开发人员不再需要经历运行他们自己的本地完整节点的麻烦,并可以在他们的dapp中轻松访问轻客户端集成。
虽然Substrate Connect专用于基于Substrate的链,但轻客户端本身将很快成为行业标准,因为它们将使dapps能够在用户浏览器或移动设备中快速同步来自区块链的信息,同时保持去信任和去中心化。
为什么Web3需要Substrate Connect?
去中心化是区块链网络的核心特征,然而,生态系统中的大多数区块链用户界面通过服务器连接到一个相当于是中心故障点的中心化可信区块链节点来工作。一般来说,如果一个人想要安全地和“无需信任”地与区块链交互,同步一个完整的节点是必要的,但这需要大量的知识、努力和资源。强迫每个最终用户运行一个完整的节点在笔记本电脑上会是一种非常糟糕的用户体验,而在移动设备上几乎是不可能的。因此,dapp开发人员依赖外部服务将他们的应用程序连接到区块链。这些节点运营商服务大规模运行,但以中心化为代价。
因为运行本地节点对大多数用户来说是不切实际的,所以很少有人选择这样做。为了使区块链技术和Web3在广泛采用方面取得进一步进展,最终用户需要一种快速、轻量级的方式在他们每天使用的应用程序中与区块链进行交互。
轻客户端功能
轻客户端解决了可用性和采用技术时的主要障碍。作为Web3基础设施的基石组件,轻客户端允许以比运行完整节点更少资源密集的方式与区块链交互,并且可嵌入桌面、Web和移动应用程序——这是人们与互联网交互的最常见方式。最重要的是,它们保持不信任(trustless),直接从对等节点同步区块头。轻客户端通过向单个全节点发出请求、同步区块链的区块头来验证全节点提供的特定响应(例如账户余额)来工作。
波卡生态系统的真正去中心化应用程序
直到最近,在浏览器中运行轻客户端还需要开发人员用JavaScript重新实现整个区块链客户端。Substrate Connect提供了直接在浏览器中运行轻客户端所需的基础设施,而无需进行更深入的额外编程工作。
它不仅可以用于为最终用户提供更好的体验,还可以提供更好的开发人员体验,使dapp开发人员无需运行自己的本地节点。除了为dapp构建者提供更好的开发工作流程和更短的开发时间之外,Substrate Connect还提供了一个界面,使开发人员能够毫不费力地在其应用程序中使用轻客户端功能。
使用Substrate Connect
Substrate connect提供了一个连接到捆绑节点(bundled node)的PolkadotJS API,在JavaScript中运行在实际的Substrate兼容节点上。请注意,此API以后可能会发生一些变化:
您也可以在浏览器中尝试。前往PolkadotJS/Apps,网址如下:https://polkadot.js.org/apps/#/explorer
选择Polkadot & Parachains然后选择“light client (experimental)”选项,如下所示。
浏览器扩展
浏览器扩展是一项可选的优化,它将实现跨浏览器标签页的资源共享。如果没有扩展,Substrate Connect在浏览器中运行时会是每个浏览器标签页都运行一个Substrate Connect轻客户端。这种实现路径无疑会对页面加载速度产生负面影响,提供次优的用户体验,尤其是与Web2替代方案相比。
除了速度,TLS(传输层安全)验证也会影响Web3应用程序的可用性。每个TLS连接都需要一个证书验证过程,就目前而言,此验证的负担由TLS客户端(互联网浏览器本身)承担。Substrate Connect的另一个好处是它不需要TLS证书来连接到节点,因为连接是从浏览器扩展中启动的,它比网站具有更多的访问权限。
Substrate Connect适用于所有主流浏览器,在使用扩展程序时,它充当桥梁,因为只有当扩展程序连接到区块链时,才能使每个标签页或网站都可以与链同步。
DApp开发的新标准
轻客户端对于采用区块链和开发Web3应用程序的重要性不可低估。没有像Substrate Connect这样的工具,去中心化应用程序永远不会真正去中心化。
与传统区块链网络相比,Substrate和波卡特别适合集成轻客户端,后者在设计时并未考虑轻客户端。在许多情况下,在以前的网络中所做的设计选择使得轻客户端的集成不是最优的和不切实际的。另一方面,Substrate和波卡是从头开始构建的,考虑了轻客户端功能。