区块链二层扩展研究综述-part1

2020年5月15日12:00:43 发表评论

什么是Layer 2扩展?

区块链和加密货币世界中,交易处理扩展是一个很难解决的问题。这受平均区块创建时间,区块大小限制以及确认交易所需的更新区块数(确认时间)的限制。这些因素使得如果在主区块链(链上)上进行交易,类似于万事达卡或Visa的“场外交易”类型交易几乎是不可能的。

让我们假设区块链和加密货币“占领了世界”,并负责执行的所有全球非现金交易,即2014年至2015年的4331亿。这意味着平均每秒13,734个事务(tx/s)!(总而言之,VisaNet目前每年处理1600亿笔交易,每秒能够处理超过65,000笔交易消息。)这意味着,如果所有这些都是简单的单输入单交易, 输出非现金交易并执行以下操作:

· 支持SegWit的比特币“类”区块链理论上可以处理约21.31tx/s,我们需要约644个并行版本,并且SegWit事务大小为190字节,合并后的区块链每天将增长约210GB!

· 以太坊“类”区块链,并且考虑到当前的天然气价格,以太坊理论上可以处理〜25.4tx/s,那么将需要〜541个并行版本,并且交易大小为109字节 ,则区块链的总增长将达到每天约120GB!

这就是为什么我们需要一个适当的扩展解决方案,不会使区块链膨胀。

开放系统互连(OSI)模型为计算系统的通信功能定义了七个层。第1层是指物理层,第2层是指数据链路层。第1层从不关心第2层及更高层的功能;它只是提供原始数据的传输和接收。反过来,第2层只知道第1层,并定义了提供节点到节点数据传输的协议。

类似于用于通讯的OSI层,在区块链技术中,分散的第2层协议(通常也称为第2层缩放)是指事务吞吐量缩放解决方案。分散的第2层协议在主区块链(链外)之上运行,同时保留了主区块链的属性(例如加密经济共识)。与每个事务不同,只有多个事务的结果嵌入到链中。

区块链二层扩展研究综述-part1

同时

· 每笔交易都需要世界上每个父区块链节点进行验证吗?
· 如果我能让他们立即生效,我愿意为我的大多数日常交易提供(临时的)较低的安全保证吗?

如果您可以回答“否”和“是”,那么您正在寻找第二层扩展解决方案。

这将如何适用于Tari?

Tari是一种高吞吐量协议,需要处理现实世界中的交易量。例如Big Neon是要在Tari区块链之上构建的初始业务应用程序,需要在短时间内进行大量交易,尤其是在门票销售开张以及在活动中兑换门票时。想象一下在比赛日有85,000个座位的体育场充满72个入场队列。串行化的现实世界扫描在四分钟内分解为大约500张票或者每个队列每秒大约允许两个观众访问。

这与父区块链扩展解决方案是不可能的。

当前的二层扩展计划

小额支付通道

小额支付通道是一类旨在允许用户进行多个比特币交易而无需将所有交易提交到比特币区块链的技术。在典型的支付渠道中,只有两个交易被添加到区块链中,但是参与者之间可以进行无限制或几乎无限制的支付次数。

这些年来,已经提出或实施了几种通道设计,包括:

Nakamoto高频交易;
Spillman式付款渠道;
CLTV风格的支付渠道;
Poon-Dryja付款渠道;
Decker-Wattenhofer双向支付渠道;
Decker-Russell-Osuntokun eltoo频道;
哈希时间锁定合约(HTLC);

特别关注哈希时间锁定合约:这项技术可以让支付安全地通过多个支付通道进行路由。HTLCs是设计更先进的支付通道(如闪电网络使用的支付通道)不可或缺的一部分。

闪电网络是在区块链之上运行的二层支付协议。它启用参与节点之间的即时交易。闪电网络具有点对点系统,可通过双向支付渠道网络进行数字加密货币的小额支付,而无需委托资金保管,并最大程度地减少了第三方的信任。

闪电网络的正常使用包括通过向相关区块链进行资金交易来打开支付通道。随后进行任何数量的闪电交易,这些交易会更新通道资金的暂定分配,而无需广播到区块链;然后选择通过广播交易的最终版本来关闭支付通道,以分配通道的资金。

区块链二层扩展研究综述-part1

闪电网络遍布整个加密货币领域。它最初是为比特币设计的。然而莱特币,Zcash,以太坊和瑞波币只是计划实施或测试某种形式的网络的众多加密货币中的少数。

优点

· 小额支付渠道是提出的可扩展比特币的领先解决方案之一,不需要更改底层协议。
· 交易会立即得到处理,节点的帐户余额会更新,新所有者可以立即使用这些资金。
· 交易费用只是交易成本的一小部分。

缺点

· 小额支付通道不适合进行大额支付,因为多通道支付网络中的中间节点可能没有足够的资金来转移资金。
· 除非在交易时他们的节点已连接并在线,否则收件人无法收钱。

机遇

由于Tari的票务用例需要与许多方进行许多快速交易,而与单方却没有许多快速交易,因此机会比预期的要少。不可替代资产必须被“广播”,但是状态通道在两方之间是隐私的。

状态通道

状态通道是小额支付通道较为普遍的形式。它们不仅可用于支付,还可用于区块链上的任意“状态更新”,如智能合约内的更改。

状态通道允许在链外协议内进行多个交易,处理速度非常快,并在链上进行最终结算。它们保留了区块链协议的运行模式,但改变了使用方式,以应对可扩展性的挑战。

状态通道内的任何状态更改都需要得到该状态部分被指定为“感兴趣”的所有各方的明确密码同意。

雷电网络

· 使用状态通道来研究状态通道技术,定义协议并开发参考实现。
· 状态通道可与任何ERC20兼容的令牌一起使用。
· 双方之间的状态更新是通过数字签名和哈希锁定的传输作为共识机制(称为余额证明)完成的,该机制也被超时保护,称为余额证明。这些可以随时在以太坊区块链上结算。雷电网络使用HTLC的方式与闪电网路完全相同。

区块链二层扩展研究综述-part1

Counterfactual(反事实)

· 使用状态通道作为将本地状态通道集成到基于以太坊的分散式应用程序的通用框架。
· 通用状态通道通用框架是将状态存放一次,然后由任何应用程序或一组应用程序使用的框架。
· 反事实实例化意味着实例化合约,而无需实际将其部署在链上。它是通过使用户签署并共享对多签钱包的承诺来实现的。
· 实例化合约后,通道中的所有各方都将其视为已部署,即使尚未部署。
· 引入了全局注册表。这是一个链上合约,它将任何反事实合约的唯一确定性地址映射到实际的链上部署地址。用于产生确定性地址的哈希函数可以是考虑字节码,其所有者(即多签钱包地址)和唯一标识符的任何函数。
· 典型的反事实状态通道由反事实实例化的对象组成。

区块链二层扩展研究综述-part1

Funfair

· 使用状态通道作为分散的老虎机赌博平台,但仍使用基于集中式服务器的随机数生成。
· 实例化玩家和赌场之间的常规“雷电”状态通道(称为命运通道)。博彩游戏结束后,最终状态将提交给区块链。
· 研究使用阈值加密技术(例如Boneh-Lynn-Shacham(BLS)签名方案)以使一组参与者能够真正安全地生成随机数。

Trinity

· Trinity是基于NEP-5智能合约的开源网络协议。
· NEO的三位一体与以太坊的Raiden网络相同。
· Trinity使用与Raiden网络相同的共识机制。
· 已经引入了新的令牌TNC来资助Trinity网络,但支持NEO,NEP-5和TNC令牌。

优点

· 允许付款和更改智能合约。
· 状态通道具有很强的隐私属性。一切都在参与者之间的通道内部进行。
· 状态通道具有即时确定性。双方签署状态更新后,就可以视为最终状态。

缺点

· 状态频道取决于可用性;双方都必须在线。

机遇

由于Tari的票务用例需要与许多方进行许多快速交易,而与单方却没有许多快速交易,因此机会比预期的要少。不可替代资产必须被“广播”,但是状态通道在两方之间是隐私的。

Off-chain Matching Engines(链下匹配引擎)

订单在匹配的引擎中从链下匹配并在链上完成。这允许复杂的订单,支持跨链转移,并维护订单的公共记录以及行为的确定性说明。链外匹配引擎利用令牌表示智能合约,将全球资产转换为智能合约令牌,反之亦然。

Neon Exchange (NEX)

· NEX使用带有令牌的NEO分散应用程序(dApp)。
· 计划对NEO,ETH,NEP5和ERC20令牌提供初步支持。
· 计划在NEX上交易BTC,LTC和RPX的跨链支持。
· NEX链外匹配引擎将具有可伸缩性,分布式,容错性并且可以连续运行而不会停机。
· 使用密码签名的请求可以达成共识;公开指定的确定性链外匹配引擎算法;以及交易的公共分类帐和犯规行为的奖励。交换智能合约的交易方法将仅接受由匹配引擎持有的私钥签名的订单。
· 匹配引擎匹配订单,并将其提交给相应的区块链智能合约以执行。
· NEO上的单个调用事务可以包含许多智能合约调用。可以在一个链上交易中批量提交匹配的订单。

区块链二层扩展研究综述-part1

0X

· 基于以太坊ERC20的智能合约令牌(ZRX)。
· 提供开源协议,以dApp(Relayers)形式的链外匹配引擎在以太坊区块链上交换符合ERC20的令牌,以促进创客与收单者之间的交易。
· 链下订单中继+链上结算。
· 创客选择中继器,指定令牌汇率,到期时间,满足中继器费用表的费用,并使用私钥签署订单。
· 共识由公开可用的DEX智能合约控制:地址,代币余额,代币交换,费用,签名,订单状态和最终转移。

区块链二层扩展研究综述-part1

优点

性能{NEX,0x}:

· 链下请求/订单;
· 链外匹配;

NEX特定:

· 批处理链上提交
· 跨链转移;
· 支持本地货币;
· 公共JavaScript对象表示法(JSON)应用程序员接口(API)和Web扩展API,供第三方应用程序交易令牌;
· 开发环境-位于Erlang之上的Elixir,可启用可扩展,分布式和容错匹配引擎;
· Cure53对Web扩展进行全面的安全审核,NEX令牌将被视为注册的欧洲证券。

0X特定:

· 开源协议,可创建独立的链下dApp匹配引擎(Relayers);
· 完全透明的订单匹配,无单点控制:
· 只有遵守费用表,创客的订单才会进入中继器的订单簿;
· 交换只能在接受方愿意接受的情况下发生;
· 由公开可用的DEX智能合约管理的协商一致和解决方案;

缺点

NEX特定:

· 与传统交换类似,需要一定程度的信任;
· 封闭的流动资金池;

特定于0x:

· 将需要一个受信任的令牌注册中心来验证ERC20令牌地址和汇率;
· 前期交易和可能发生的交易冲突,需要更多的开发;
· 批处理能力未知;

机遇

匹配引擎通常会为Tari提供机会;具体方案有待进一步研究。

Masternodes(主节点)

主节点是分散网络上的服务器。它被用来以普通采矿节点无法完成的方式(例如直接发送,即时交易和私人交易等功能。由于其功能增强,主节点通常需要投入资金才能运行。主节点运营商受到激励,并通过以他们所促进的加密货币赚取部分块奖励来获得奖励。主节点将获得其抵押的标准回报,但也有权获得部分交易费用,从而获得更大的投资回报(ROI)。

· Dash是第一个在其协议中实现masternode模型的加密货币。在Dash所谓的服务证明算法下,主节点的第二层网络与矿工的第一层网络并存,以在区块链上达成分布式共识。这个两层系统确保服务证明和工作证明执行Dash网络的共生维护。Dash主节点还启用了分散式治理系统,该系统允许节点运营商对区块链内的重要发展进行投票。Dash的主节点需要1000 DASH的抵押。达世币(Dash)和矿工各有45%的区块奖励。其余10%用于区块链的基金。运营商负责就如何分配这些资金以改善网络的提议进行投票。

· Dash确定性排序。一种特殊的确定性算法用于创建主节点的伪随机排序。通过为每个区块使用来自工作量证明的哈希,挖掘网络将提供此功能的安全性。

· Dash无信任Quorum。Dash主节点网络是不信任的,没有哪个实体可以控制结果。从总池中选择了N个伪随机主节点(仲裁A)作为对被选择执行实际任务的N个伪随机主节点(仲裁B)的预言。数学上,Quorum A节点是最接近当前区块哈希的节点,而Quorum B节点是最远的节点。对于区块链中的每个新区块重复此过程。

· Dash服务证明。坏角色也可以运行主节点。为了减少不良行为的可能性,节点必须对网络的其余部分执行ping操作,以确保它们保持活动状态。所有主节点验证都是通过Quorum系统由主节点网络本身随机完成的。每个区块大约验证了1%的网络。这导致整个主节点网络每天大约被验证六次。连续六次违反会导致主节点停用。

优点

Masternodes:

· 有助于维持和保护生态系统,保护区块链免受网络攻击;
· 可以通过有权拒绝或孤立块(如果需要)来执行矿工的分散治理;
· 可以通过监督交易和提供法定货币网关来支持去中心化交易所;
· 可用于促进智能合约,例如即时交易,匿名交易和去中心化付款处理器;
· 可以促进去中心化市场,例如与eBay等同行运营的商务站点的区块链等效;
· 补偿工作量证明的局限性-避免采矿集中化并消耗较少的能量;
· 承诺提高稳定性和网络忠诚度,因为较大的股息和较高的初始投资成本使运营商放弃其在网络中的地位的可能性降低;

缺点

· 维护主节点可能是一个漫长而艰巨的过程;
· 投资回报率无法保证且不一致。在某些应用中,主节点只有在挖出一个区块并且被随机选择领取报酬的情况下才能获得奖励;
· 通常主节点的IP地址是公开的,因此容易受到攻击;

机遇

· 主节点没有特定的标准或协议;存在许多不同的实现。如果Tari协议使用Masternodes,则可以使用它们来促进脱链智能合约并增强主区块链的安全性。
· 主节点增加了人们参与Tari的动机。

Plasma

Plasma区块链是区块链中的一个链,状态转换由根链上提交的绑定(退出时间)欺诈证明(块头散列)强制执行。Plasma允许管理分层区块链,而无需根区块链上的分类账的完整持久记录,也无需向任何第三方提供托管信任。欺诈证明执行了一个交互式的快速资金提取协议,以防恶意行为(如区块扣缴),以及在下层的不良行为者希望将区块提交到根链而不将其广播到上层的情况下。

区块链二层扩展研究综述-part1

Plasma是用于激励和强制执行智能合约的框架,可扩展到每秒大量的状态更新,从而使根区块链能够代表大量的dApp,每个dApp均以树格式使用其自己的区块链。

Plasma依赖于两个关键部分,即将所有区块链计算重新构造为一组MapReduce函数,以及在现有区块链(在链上智能合约中强制实施)之上进行股权证明(PoS)令牌绑定的可选方法。Nakamoto共识奖励措施不鼓励区块扣缴或其他拜占庭行为。如果一条链是拜占庭链,它可以选择前往其任何父链(包括根区块链)以当前的提交状态继续操作或退出。

区块链二层扩展研究综述-part1

MapReduce是用于处理和生成大型数据集的编程模型和相关的实现。用户指定一个处理键/值对以生成一组中间键/值对的映射函数,以及一个归约函数,该归约函数合并与同一中间键关联的所有中间值。Plasma的map reduce包括在map阶段作为输入对数据进行计算的承诺,并且在返回结果时包括reduce步骤中状态转移的merklee证明。

· Loom Network使用委托权益证明(DPoS)共识和验证,实现了在以太坊之上运行的可扩展的特定于应用的侧链(DAppChains)。

· OMG Network(OmiseGO),使用PoS共识和验证,一个运行在以太坊之上的Plasma区块链金融扩展解决方案。

优点

· 并非所有参与者都需要联机才能更新状态。
· 参与者不需要父区块链上的条目记录就可以参与Plasma区块链。
· 以树格式构建Plasma区块链时,在父区块链上确认交易所需的数据最少。
· 私有区块链网络可以通过根区块链来构建和实施。交易可能发生在本地私有区块链上,并由公共父区块链进行金融活动。
· 犯规时的快速退出策略。

机遇

· 有机会将Tari用作2层扩展解决方案。

· 是否可以创建运行Monero的Tari票务Plasma的dAppChain,而无需创建特定于Tari的根区块链?注意:这将使Tari区块链依赖于另一个区块链。

· Loom Network的软件开发套件(SDK)使任何人创建新的Plasma区块链都非常容易。在不到一年的时间内,成功推出了许多成功的dAppChains。

TrueBit

TrueBit是一种协议,可通过使无信任智能合约执行和卸载复杂计算来提供安全性和可伸缩性。这使其不同于状态通道和Plasma,后者对于提高以太坊区块链的总交易吞吐量更为有用。TrueBit依赖于求解器(类似于矿工),他们必须将其押金押入智能合约,求解计算并在正确的情况下将其押金取回。如果计算不正确,则求解器会损失其存款。TrueBit使用一种称为“验证博弈”的经济机制,在该机制中,在这种机制中,为其他方(称为挑战者)创建一个激励机制,来检查求解者的工作。

区块链二层扩展研究综述-part1

Golem引用TrueBit作为其即将推出的视频流平台外包计算网络LivePeer的验证机制。

优点

· 外包计算-世界上任何人都可以发布一个计算任务,其他任何人都可以获得完成任务的奖励。
· 可伸缩-通过将矿工的验证分离到一个单独的协议中,TrueBit可以在不面临验证者困境的情况下实现高事务吞吐量。

缺点
在撰写本文是,TrueBit还在开发中。

机遇
目前什么都没有,因为Tari不会做繁重/复杂的计算,至少短期内不会。

TumbleBit

TumbleBit协议是在波士顿大学发明的。这是一个单向,不可链接的支付中心,与比特币协议完全兼容。TumbleBit允许各方通过称为Tumbler的不受信任的中介机构进行快速,匿名的链下付款。在TumbleBit内(即重要的时间段)内,没有人,甚至是Tumbler,都无法说出哪个付款人向哪个收款人付款。

支持两种操作模式:

· 经典的混合/翻滚/洗涤模式;
· 成熟的支付中心模式;

TumbleBit由两个交错的公平交换协议组成,它们依赖于Rivest-Shamir-Adleman(RSA)密码系统的盲特性,以防止用户或Tumbler的不良行为,并确保匿名性。这些协议是:

· RSA-Puzzle-Solver Protocol;
· Puzzle-Promise Protocol;

TumbleBit还支持通过Tor进行匿名处理,以确保Tumbler服务器可以作为隐藏服务运行。

区块链二层扩展研究综述-part1

TumbleBit将链外密码计算与标准链上比特币脚本功能相结合,以实现不依赖隔离见证的智能合约。这里使用的最重要的比特币功能包括哈希条件、签名条件、条件执行、2/2多重签名和时间锁定。

波士顿大学在白皮书中提供了概念验证和参考实施。NTumbleBit正在开发为TumbleBit协议的C#生产实现,在撰写本文时(2018年7月),Stratis与其Breeze实现一起在TestNet的alpha/实验发行版中对其进行了部署。

NTumbleBit将成为TumbleBit付款方案的跨平台框架,服务器和客户端。TumbleBit分为两种模式即翻转模式和支付中心模式。翻转模式提高了交易的可替代性,并提供了无风险的不可链接交易。支付中心模式是一种无需进行隔离见证(Segwit)或闪电网络等实现即可进行链下支付的方式。

优点

· 匿名属性。TumbleBit提供了不可链接性,而无需信任Tumbler服务,即不受信任的中介。
· 拒绝服务(DoS)和Sybil保护。“ TumbleBit使用交易费用抵制DoS和Sybil攻击。”
· 余额。“即使当事各方串通,也不应利用该系统来印钞或偷钱。”
· 比特币兼容性。TumbleBit与比特币协议完全兼容。

· 可扩展性。每个TumbleBit用户只需要与Tumbler和相应的交易方进行交互;所有TumbleBit用户之间缺乏协调,使得翻转模式可扩展性成为可能。

· 批量处理。TumbleBit在支付中心模式下支持一对一,多对一,一对多和多对多交易。- 主节点兼容性。TumbleBit协议可以在主节点中完全实现为服务。“ Breeze钱包现在完全能够通过安全连接为比特币交易提供增强的隐私。利用通过安全,不信任的注册机制在网络上进行预注册的Breeze服务器,该机制可抵抗操纵和审查。”

· 即生产。NTumbleBit和Breeze实现已获得TestNet的地位。

缺点

· 隐私未经100%证明。与付款人相比,收款人具有更好的隐私权,并且从理论上讲,涉及收款人和Tumbler 的勾结可以发现付款人的身份。
· Tumbler服务不是分布式。如果Tumbler服务器发生故障,需要做更多的工作来确保持久的事务状态。
· 必须使用相同的面额。TumbleBit协议只能支持公共分母单位值。

机遇

TumbleBit作为具有可靠隐私功能的不受信任的Masternode匹配/批处理引擎,对于Tari来说是有好处的。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: