半岛协议(简称BAND,英文名Band Protocol)的目标是打造一个最安全的,最具可扩展性的去中心化世界的数据库,为去中心化应用程序 (dApp)提供可信的数据。使用Band Protocol的开发者和dApp公司通过公共智能合约数据点进行数据消费,而并不是基于剥离于区块链的中心化预言机。如此一来,dApp在利用互联网已有数据的同时保证了安全性,在Web 2.0和Web 3.0的用例间架起一座桥梁。
项目愿景
Band的愿景是成为去中心化的世界数据库,任何去中心化应⽤都可以依赖这些数据库来获取可信数据。
市场需求
智能合约无法自行存取数据,即对于去中⼼化的应⽤程序,没有内置且有效的功能用来接收现实世界的数据。目前,区块链智能合约的数据可⽤性解决⽅案,要不⾼度依赖于中⼼数据库⽽可能导致单点故障或受限于非同步交互,从⽽导致延迟并使智能合约逻辑复杂化。
项目解决方案
Band Protocol是⼀个Web3.0元件层解决⽅案,⽤于管理数据,解决Web3中区块链的数据可⽤性和可靠性问题的技术栈,Band Prorocol的Dapps通过Band的公⽤智能合约数据端存取数据,⽽不是通过区块链外部的预⾔机存取数据。Band的数据是经过社区优化的数据来源,为dApp使⽤者和开发者提供⼀个可以⾃⾏操作、优化和管理的数据源框架。通过创建社区治理型数据的标准框架,Band可以创建⼀种社区可扩展型的⽅法,以让所有的dApp可以⼴泛采⽤和集成可信数据。
项目实现机制
Band由链上和链下两部分组成。链上的合约主要负责代币的发行和托管,以及对预言机数据进行验签这两部分工作。而链下的协议则包含了一个由数据提供者们所组成的P2P网络。这个网络中的每个节点都是为某个数据集提供数据的供应商。对于每一个数据集来说,都会有多个数据供应节点存在,为该数据集提供数据。而只有当某个数据经过了数据供应商网络中的2/3的节点进行签名后,这个数据才会被发送到链上,提供给链上应用。
同时,在链下的网络中还存在着一个特殊的节点,即协调者(Coordinator Node)。协调者节点将负责从所有的数据提供商那里收集数据。在协调者收到来自链上的数据请求后,它会将该请求解析并转发到所有相关的数据提供商节点那里,然后所有的数据提供商们会按照请求返回相应的数据,发送给这个协调者节点。接着,协调者节点将对这些数据进行合并处理(Aggregation),并将合并处理后的数据再次发送到各个数据提供节点那里,由它们进行签名。最后,协调者节点需要再次从各个数据提供商节点收集签名后的最终数据,并进行验签来确认签名节点数是否达到2/3以上。
成功之后,协调者会将数据发送到链上的数据集智能合约中。链上的其他智能合约即可从该数据集智能合约中读取到最新链外数据。
BAND代币使用场景
①为数据治理组提供流动性并保证代币价值当发⾏数据集代币时,需要使⽤BAND代币来进⾏抵押。
②保持所有数据集的价值当要铸造任何新的数据集代币时,都需要有BAND代币来当抵押。因此,随着数据集代币需求的增加,BAND的需求也会增加。
③未来协议升级的治理BAND可以被⽤来对于未来协议改进的提案和投票上。
④通过已优化数据集注册表控制数据集品质当Band Protocol逐渐朝向去中⼼化,创建或是优化数据集都将会变成是⽆需许可的。为了控制⽣态内部数据集的品质,BAND代币持有者将共同维护⼀个已认证的数据集注册表。
采用算法
联合曲线(Bonding Curve)模型是一个可以在没有交易对手方的情况下,为某个交易对提供流动性的资金池模型。可视为一个指定代币交易对汇率与其代币供应量之间的关系曲线。
在Band协议中,每个数据集都包含一个专属Token,可在各自系统中进行价值流转。因此,每个数据集就有着专属的一个资金池和一条对应的价格/供应量曲线(通过链上智能合约实现)。资金池中预先存放该数据集对应的代币,开发者和数据提供者们可以使用BAND代币从每个对应的池子中购买相应的数据集代币。而购买的价格会随着每个数据集代币的供应量的变化,基于预先规定的联合曲线由系统作出相应的调整。
Band使用联合曲线模型一方面让所有人在没有对手方的情况下以近似市场价的汇率换取需要的数据集代币,满足了资金池的流动性;另一方面,基于曲线购买,早期购买的价格会相对便宜,这对代币的早期购买者提供一定程度的激励,对每个数据集各自生态的建设和发展有着积极的作用。
BAND技术特点
Band Protocol的设计中,每一个数据流合约都会拥有多个数据来源。Band协议的经济模型设计可以保证每一个数据源提供商都可以获得应有的奖励,并且在其作恶时对其作出惩罚。对于每一个数据库,都有一个单独的Token,对应一个单独的经济模型,使该数据库的数据提供商的利益与用户和开发者的成本对齐,保证整个机制能够可持续的运行。
BAND激励机制
Band Protocol依靠查询费⽤来⽀付给数据提供者,并激励诚实的数据优化。每当智能合约发出数据查询函数呼叫时,它必须附加区块链的本地货币(以太坊的情况下则为ETH)。查询费⽤则根据数据集的提供者及代币持有者在治理参数设置的费⽤表来决定。
决定接受该区块链的原⽣货币主要是为了简化载入和集成的过程,因为要去假设每个程序都愿意去持有数据集代币或是BAND代币都是不太合理的。在实际运作中,Band Protocol利⽤去中⼼化交易协议,如Uniswap,即时将接受的货币转换成BAND代币,然后通过同⼀交易中的联合曲线函数转换为数据集代币。因此,尽管Dapps以原⽣货币⽀付,数据供应者和代币持有者仍会分得在数据集代币中的收入。此过程中,当越来越多的BAND被锁定到联合曲线函数中,数据集代币的供应量将会增加,从⽽导致这两种代币的价格升⾼。
需要注意的是,在特定的数据管理办法中不⼀定需要收入才能给予参与者⼀定经济上的收入,像是优化代币注册表。在这种情况下,数据集社区可能集体决定将查询费⽤设置为零。
预期发展路线
BandChain将分四个阶段发布,将启动账户创建、代币转移、验证者Staking质押。阶段1将使用创世纪验证器(Genesis Validator)进行主网部署,阶段2将启动 BandChain生态系统合作伙伴,例如钱包、交易所和Staking质押池,以确保所有Band Protocol利益相关者都能访问该生态系统。在此阶段,BAND令牌持有者将能够进行代币交易和Staking质押。阶段3将启动公共验证程序。目前已启动阶段1。