首页 > 正文

由于比特币的区块链专门用于货币,因此将其调整为代表其他应用程序具有挑战性。在比特币世界中,你会发现很多人更喜欢比特币或其他区块链作为去中心化平台。在本文中,我们分析了两种方法。

方法一:直接在比特币之上

区块链融合的自然起点是比特币。这也是智能汽车示例中使用的方法。直接使用比特币的优势在于易于实现——代码易于运行,比特币网络具有强大的挖矿能力,共识过程完美无缺。但是,我们必须对比特币进行一些修改才能在我们的示例中使用它。

例如,用于授权比特币交易的加密与用于打开车门的加密相同。有时对比特币的修改是不可能的,而且从根本上说,如果你有涉及不同方的非常复杂的合约,比特币中的区块链不一定有足够的能力或不可分割的能力来执行。为了演示使用比特币区块链的危险,让我们看看如何构建一些中立的去中介化应用程序。

首先,让我们看一下众筹服务。2015 年,使用最广泛的众筹网站是 Kickstarter,它通过一个集中的网站连接企业家和资助者。局外人欣赏 Kickstarter 的想法,但希望通过建立一个完全去中心化的替代系统。该系统需要允许企业家向投资者请求捐款,但在他们收到一定的预设金额之前,不花一分钱。这一切都是无中介的。

使用比特币技术实施这样的众筹服务需要企业家创建一个具有特定输入(输入的数量可以随着过程而变化)和支付自己的输出的交易,比如 1,000 比特币(BTC)。该交易将在潜在的资助者之间传播。任何资助者都可以将资助金额添加到交易的输入中,并对其输入和总输出进行数字签名。只有当所有输入都等于或大于输出时,企业家才能获得交易的所有输入(如下图所示)。由于签名形式有限,需要比特币的一些鲜为人知的特性来花费最终的交易金额。虽然这可以在今天的比特币系统中完成,但必须深入研究比特币鲜为人知的角落。

另一种情况:支付认证费。这个案例起初可能看起来很奇怪,但它有重要的应用。为清楚起见,假设有一个哈希函数 H 和一个众所周知的数字 y,其中 y 是 H 输入 x 的输出。妙美知道这个x值,外人愿意付钱给妙美知道这个x值。从广义上讲,H 可以是任何计算程序,其中一个局外人想知道他感兴趣的输入值会产生一个特定的结果。这个问题的进一步演变是,外人可能愿意支付费用以将该输入值发布在区块链上。

为了安全地执行这个交易,我们必须确认交易的不可分割性。只有提交正确的输入,妙美才能收到钱。一旦收到输入,工作人员必须负责付款。请记住,我们在第 10 章“不可分割的跨链交换协议”中展示了如何绑定支付和呈现哈希函数输入值。这里可以使用类似的方法。

这些示例显示了直接使用比特币区块链的重要限制。在每个例子中,复杂的现实世界交易必须被编译成比特币的概念。这可能并不总是可能的。在智能汽车的例子中,假设汽车使用 ECDSA 签名技术来验证车主。这允许使用区块链和遥控器上的相同公钥/私钥解锁和启动汽车。在众筹的例子中,创业者只能拿到他们要求的金额,不多也不少。如果资助的金额大于需求,则超出部分将成为交易费用。最后,在支付证明的例子中,如果函数 H 不是比特币语言支持的哈希函数,那么链接支付和公众号的模式是困难的。

如果你不能,或者不想强制应用进入比特币交易系统,你可以选择使用附加货币。这样比特币就变成了数据存储,所以比特币的脚本语言如何表达就无关紧要了。这种附加硬币的方式不仅可以构建许多其他应用程序,而且可以使应用程序透明化。回到卖车的例子,如果区块链中物体的颜色是公开的(比如有色货币),任何人都可以通过区块链查看汽车的购买时间和价格,而无需知道买卖双方的真实身份。这种方法在某些情况下很有用。不利的是,有色物体可以保密。

然而,这种附着的硬币具有明显的缺点。附加币的用户不能依赖比特币矿工来验证交易(因为矿工无法理解附加币的交易语言含义)。这意味着所有附加硬币的用户都必须作为全网节点运行。SPV 也是不可能的。只要在构建时存在漏洞,无法达成共识信德融合区块链,附着的币就会变得非常不稳定。如果两个附加的硬币在交易的有效性上存在分歧,它将导致该硬币形成两个分叉的硬币。这可能导致灾难性后果。相反,如果矿工正在验证交易,则此类异议不太可能发生。如果确实发生了这种情况,它很快就会被注意到并很可能在不会导致货币分叉的情况下得到解决。

另一方面,比特币原始范围之外的交易会加剧或“污染”比特币的区块链,无论是否附加硬币。在比特币世界中信德融合区块链,双方在这个问题上存在分歧。我们不偏袒任何一方,但我们要指出有一个解决方案:将比特币视为时间戳服务,而不是数据存储。目前有一些新兴服务提供额外的区块链或数据存储服务。其中一项服务是通过比特币区块链的时间戳服务。这就像一个时间戳服务,但在报纸上每 10 分钟而不是每周添加一次哈希计算。使用比特币作为时间戳只需要每个块(或每个服务或协议)进行一次交易。不完美之处在于很难找到像比特币区块链一样容易获得和广泛复制的外部数据存储。同时,一般的非比特币数据存储更加集中。

总的来说,比特币的区块链已经产生了许多创新的应用,无论有没有嵌套技术。这些通过比特币区块链生成的应用程序被用户和矿工广泛接受。因此,使用比特币区块链是一种安全且易于实施的选择。

方法 2:替代区块链

另一种去中心化的方法是使用替代区块链,也有几种选择。最明显的方法是使用全新的区块链,拥有自己的规则、功能和货币(又名山寨币)。另一种选择是侧链。该方案的主要区别在于侧链的货币以 1:1 的比例与比特币挂钩。具有高级脚本语言的侧链可以满足复杂合约的要求,也可以实现去中介化。然而,侧链需要对比特币进行修改。

猜你喜欢
发表评论

电子邮件地址不会被公开。 必填项已用*标注

评论信息