采用区块链之前务必注意几大认知误区

2016-07-26 10:15 来源:Coindesk 阅读:5064
本文作者是比特币和区块链顾问,曾经供 职于比特币交易所itBit。他分析了试图调整区块链技术,开发其他技术应用领域的企业,提出普遍存在的几大认知误区,包括区块链安全性、隐私性、真实 性、去中介化等。指出技术完善的过程是不断的应用和调整的过程,因此鼓励在正确认知的前提下,积极的参与技术研发。

采用区块链之前务必注意几大认知误区暴走时评:本文作者是比特币和区块链顾问,曾经供 职于比特币交易所itBit。他分析了试图调整区块链技术,开发其他技术应用领域的企业,提出普遍存在的几大认知误区,包括区块链安全性、隐私性、真实 性、去中介化等。指出技术完善的过程是不断的应用和调整的过程,因此鼓励在正确认知的前提下,积极的参与技术研发。

翻译:Annie_Xu  

采用区块链的原因有好有坏。

我与有志于区块链应用的人交谈,注意到普遍存在的困惑。一开始很多相关语汇被用于狭窄的场景中(通常用于描述比特币的区块链),现在逐渐延伸到其他区块链,甚至那些不再适用的领域。

我希望用这篇文章理清常见的几个误区。


主题:区块链是安全的  

写入数据  

比特币的工作量证明共识使其在数据写入方面具有独特的安全性。就是说,为了把交易区块加入区块链,必须在区块中验证所有交易(操作简单),然后重复计算 (被称为哈希),找到某个神奇的数字,让其他参与者按照网络规则接纳和认可你的区块(操作简单,但是算力成本高,因此能耗高,成本高)。工作量证明和最长 的区块链规则增加了在新链中挖矿的成本。

而私有链有确定的区块验证者,其机制可能代替工作量证明这种妨碍其他人更新区块链的东西。

这些规则可以规定,区块链必须有已知的、一定数量的签名。这种各方轮流写入区块的环形签名方式可以限制单方的恶意行为。

读取数据  

比特币和区块链没有固有的信息读取安全限制。事实上,区块链是向所有相关参与者抄送数据的机制,也就是我们所说的共识。

如果你认为某个中央数据库存在限制读取的网络安全难题,只要用你的区块链节点数量乘以这个数据库,就可以在你的区块链中增加更多攻击面(攻击向量的集合)。

你可以一定程度上控制信息读取,把区块链上某些元素加密,之后把密钥交给相关参与者。但是工业间谍活动会把密钥卖给同样运行节点的竞争机构,对手就可以绕过你的系统,直接读取你的数据,因为区块链直接把数据抄送到他的数据中心。

密钥交接也许有解决办法,但是还要考虑历史数据。第三方的价值就在于,他们可以更加严格地控制数据获取。而且,如果第三方泄露私钥或者违反合同义务,还可以让单个团体提起诉讼。

拒绝服务攻击  

区块链应对拒绝服务攻击的方式比中心化系统要灵活的多,因为它有点对点、多冗余特性。即使一个节点失效,其他节点不受影响。

与失效节点连接的用户无法连入系统,除非有支持他们连入其他节点的机制。

主题:区块链是加密的  

人们可能会混淆比特币的加密方法(哈希,数字签名)与区块链上的加密数据(存储为加密文本的数据)。

这可能会让人觉得区块链上的数据默认加密。

而事实上,区块链上的数据是默认不加密的,尤其是需要节点验证的那些。比特币中交易数据没有加密,任何比特币区块链中的交易都可以证明。

区块链中数据加密的最显著问题是加密数据无法验证,因为节点必须知道验证的对象是什么。

假设我在验证你钱包支出的2个比特币的合法性,我就需要知道你钱包的信息(比如之前的进款),以及你在消费2个比特币的事实(以及消费了哪两个)。

在私链中,如果所有进行验证的节点可以用密钥解密你的数据,那么一开始为什么要加密呢。

最初的加密研究得出了一些解决方案,对数据进行事实验证,而且前提是底层数据未知。这被称为“零知识证明”(zero-knowledge proofs),但是这项技术还不成熟。

如果隐私性很重要,就要考虑哪些需要加密。所有动态数据?所有静态数据?全部数据库?特定数据库字段的数据?谁可以解密,什么时候可以?怎么授权?可以撤销授权吗?如果第三方从不诚实员工处获得解密密钥该怎么办?如果合法用户丢失解密密钥又该怎么办?

密钥管理是数据安全的重要部分,尤其在竞争者共享信息的行业;区块链解决方案需要考虑到这个问题。

主题:区块链增加数据获取  

现有中心化解决方案已经有很好的数据获取方法,有严格的数据读取和写入控制。主要数据所有者的可靠性很高,可以对道德约束和法律条款做出反应。

比如脸书在保证全球可获取的同时,屏蔽仇恨言论和有版权的材料。

区块链来可以增加数据获取控制的复杂性,不可篡改性也有一定缺陷。在很多潜在用例中,独立团体或组织运营节点(如果他们不是独立的,又何必用区块链呢),各自控制和管理自己的数据获取权限。

对于所有团体持有一个区块链数据副本的情况下,数据获取权限管理存在很多挑战。

主题:区块链允许终端用户进行点对点货币转移,无需中间商

这篇文章似乎是来自于比特币白皮书,它指出比特币避开中间商,让人们进行点对点数字货币转移。如果你把增加区块的矿工看作收取费用和奖励的中间商,那么比特币中也有中间商。但是他们不是固定的(一个矿工可以顶替另一个),而且你的交易的成败与矿工无关。

各行各业常说的私有链中,也有中间商。也就是运行节点的参与者,或者以区块链解决方案获利的技术供应商。

主题:用户会在手机上运营区块链  

我偶然听到一个创意,用户在手机上存储区块链数据(尤其是用户需要掌控自有数据的用例)。

手机区块链意味着手机要一直与网络交流,不停地下载、上传其他人的数据,才能保持保持达成共识。

主题:区块链是记录所有事件的不可篡改记录

比特币中所有历史交易会被追踪,以确定新交易的有效性。

而且只有向比特币网络提前告知并获得区块认可的交易才可以执行和结算。每个比特币事件都是完善账本状态的必需品。

这并不是说用区块链解决随机问题,就可以马上精确地捕捉到每个事件。

某个人或某个东西需要输入事件,然后被预知和认可,才可以进行记录。

区块链中的数据不保证其精确性,而是首先要确保事件记录的精确性。数据不可篡改的情况下,更要重视这个问题。

主题:区块链上的都是真实的  

这个困惑围绕的是真实这个词。

比特币中的真实指的是,网络认同交易发生了,节点也是同样的意见。

区块链中的真实概念没有其他的延伸意义。如果心脏监控硬件设备出现故障,在区块链上记录了错误的心率数据,这些可以称为真实的吗?显然不能。

区块链也许可以记录汽车所有权的转移,而且不可篡改。如果交易记录本身就是错误的,或者用户手机遭遇黑客导致信息诈骗,所谓真实又是什么呢?如果警察发现交易涉及诈骗,需要撤销,该怎么做,因为数字签名具有加密安全性(它们是解决方案,但是需要深思)。

区块链中的真实意味着“大多数节点最初记录和认可的”。

有效不一定意味着真实。不要把区块链事实与“真相”混淆。

主题:区块链中的数据  

这是用于满足客户需求(KYC)的区块链和用于文件存储的数据。

“存储在区块链上”这样的评价可能引起困惑,如果文件(PDF、JPEG等)的哈希值发布在区块链上。哈希值不是加密的原始文件的加密版本,哈希值存储 后,不可以解密哈希,恢复原始数据。如果某个数据的指纹对应一个哈希值,存储在区块链上,存储精确数据的人(链下的)可以证明特定数据存在于时间戳的时间 段。

尽管可以在区块链上存储完整文件(所有区块链只是数据库,与软件关联,验证和分享其他参与者的新增信息),高速的传输数据块可能带来一些问题。

主题:区块链的参与者  

参与者这个词也会引起困惑。

一般情况下,区块链有三种参与者。

1、写入区块的参与者(比特币中指的是矿工,他们会分析数据);

2、维护整个区块链,验证和宣传新增信息的参与者(比特币中通常被称为全节点);

3、区块链功能的终端用户,通常会连接全节点,进入区块链(比特币中被称为用户)。

最好时刻搞清楚具体指哪种参与者。

主题:用区块链干嘛呢?  

在多方读取相同信息的情况下,区块链很有用。但是无论如何任何一方都不能控制数据。

Gideon Greenspan写了一篇文章,关于怎么避免无意义的区块链项目。

主题:区块链这个词让我获得预算  

不妨大胆一试。

技术进步的唯一方法是人们为了更好的解决特定问题,进行应用和修改。

试着尽早理解和认清它的复杂性和限制性,谨慎过分关联某个流行技术解决方案与某个问题。


声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。

点击阅读全文

相关阅读