公链这么火,难道真的这么完美吗?

区块链 作者:海豚区块链 2018-05-09 17:58:21 阅读:38
毫无疑问,区块链技术拥有很大的潜力,例如去中心化交易所,预测市场和资产管理平台等等,但是这些也只是所有区块链应用中很少的一部分。不过在我们高谈阔论区块链的时候,大家是否想过为何这些去中心化的应用却还没有普及开来,似乎大家对于区块链的认知还停留在比特币上。 blockchain 其实这也很好理解,因为当前区块链底层技术正在面临着几个非常严重的技术壁垒,它们从某种角度来说抑制了区块链应用成为主流。当然,随着技术的发展,我们最终都会解决这些问题。不过我们需要知道这些问题的存在,以及它们究竟是什么: 如何完成呢?   信息的发出者和接受者可以共享ECDHM地址,然后使用它们共享的秘钥来产生一个匿名的比特币地址。这些比特币地址只能由拥有秘钥的人才可以打开。公众可以看到地就只有重复使用的ECDHM地址。因此,用户不用担心转账被跟踪。 图片 1 混合器(mixer)  
混合器的原理就是将很多人的支付放入一个池子里,在私人账本中跟踪这些资金。然后,当一个池子中的资金发出,每笔转账的源头就被掩盖。区块链上的任何人可以看到资金的数额,以及接受者,但是理论上说,确认这笔支付的人是没办法追踪的。
图片 1 不过,混合器(mixer)的效果却不是很好,不能称为可靠的方案。例如,研究人员能够很容易地就确定CoinJoind的转账,通过支付32,000美元,攻击者就有90%的概率对交易去匿名化。而且,研究者也发现,混合器(mixer)对Sybil和DoS攻击的保护功能也比较弱。 Monero   另一种方法就是直接创造天生就带有匿名性质的虚拟货币,例如Monero。和很多山寨币不同,Monero不是比特币的分叉,它是基于另一个协议,CryptoNote。Monero最基本的特性是提供“环形签名”(ring signature)结构。 环形签名是一种群体性签名方法,整个群体中每个签名者都有一个私钥和公钥。和传统的加密签名不同,群体性签名是证明某固定群体的一个签名者来确认这项转账,无需暴露到底是谁。 零知识证明   零知识证明是一个证明方(prover)说服验证方(verifier)他们有秘密内容,但是却不用揭露其具体内容的加密协议。换句话说,你可以将秘密输入,但是证明方却不会告诉验证方这个秘密是什么。零知识证明提供了基本的原理,可以用来创建隐私的机制。 使用零知识证明,最好的例子就是Zcash(零币)。Zcash是一种匿名加密货币,有着“转账防护”功能,这种功能使用了“防护地址”,需要转账发送者和接收者建立零知识证明,可以让其他人验证转账的加密信息,但是却不需要揭露信息 图片 1
代码混淆  
代码混淆是要找到某种方法,能够混淆程序P,然后混淆器可以生成另外一个程序O(P) = Q,然后程序P和Q在相同输入的情况下,会生成相同的输出。但是程序Q不会揭露任何程序P内部的信息。这样就可以保护Q内部的隐私信息,例如密码,身份信息等等,但是仍然只能在程序中使用。 预言机(Oracles)   在区块链世界,预言机连接外部数据资源和智能合约,是智能合约和区块链外部数字资源之间的数据载体。所以其中一种保证信息“私密”的方法就是使用预言机从外部数据资源中拿到私密信息。 可信执行环境 (TEE)  
TEE是在主处理器上的安全区域,保证了代码和数据的安全性,隐秘性和完整性。这个可信环境和用户操作界面一起运行,但是可以比用户操作系统更加隐私和安全。
图片 1 3. 缺少正规的合约验证   智能合约的正规审核和验证一直是很大的问题。那么为什么对于智能合约来说,验证是如此重要呢?首先,智能合约是不可改变的,也就是说一旦智能合约部署到以太坊主链上,你就没办法去更改或者更新它。所以,在使用这些智能合约之前,就要确保它们是完全正确的。而且,智能合约是对外开放的,里面的内容也是公众都可见的,很容易成为黑客的目标。事实上,在编写智能合约的时候,也很难确保没有错误。例如验证以太坊虚拟机代码就非常困难。 4. 存储量的限制   大多数在公有链上构建的应用,都需要很多的存储空间。(用户信息,财务信息等等) 但是,在区块链上存储信息,其实就意味着将信息存储在网站中所有的全节点中。同时存储空间也有限,因为区块链数据库是不可变的。 对于这类问题,现在也有一些解决方案,将数据分开成不同的片区,并进行分布式储存。主要的原理是,并不需要每个节点来存储所有的信息,有一系列的节点在他们之间来分散信息。例如Swarm,Stroj,IPFS,Decent等项目都是这些解决方案。 5. 不可持续发展的共识机制   矿工挖矿需要花费巨大的算力解决工作量证明算法,但是这些计算工作对社会没有任何价值,并且比特币现在耗费的电力已经占到了全球电力总消耗的0.13%,非常的浪费资源。 想要解决这个问题,可以让计算量证明机制变得有意义, 比如让矿工去计算负责的人工智能问题,而不是计算没有意义的SHA256问题。同时,还可以考虑权益证明共识机制,让挖矿过程虚拟化。使用网络中的“验证者”代替矿工。 6. 缺乏管理和标准   现在的区块链,没有中心化机构去对其制定标准。一方面,这实现了我们的梦想,一个无需第三方信任的世界,但是另一方面,对于整体区块链协议的更新,却没有很安全的途径,没人对制定标准负责。Tezos就是个很好的例子,它试图通过协议内部链上的管理,来对整个协议进行升级。 总体来说,区块链管理是非常困难的,需要在中心化和分布式控制中找到平衡,这才是关键。 7. 量子计算机的威胁   对加密货币和加密算法来说,最重要的威胁就是量子计算机。尽管现在量子计算机如今还不确定到底能解决什么样的问题,但是这些总会被发现。而且,现在大多数著名的公链算法都能够很容易地被量子计算机攻破,是不是很恐怖!所以我们在构建区块链的时候,也要考虑到防量子措施。 其他需要注意的挑战: 我们需要内部区块链的通信,来完成多链沟通(例如比特币,以太坊,莱特币等等),并且能够无缝转账。 我们需要更好的链内秘钥管理系统。 我们需要更有效的签名架构和其他加密系统。 结论   很不幸地是,太多的区块链资金都在推动着ICO的发展。同时,少数的研究员和开发者还在努力解决这些问题,但是却没有足够的资源。很多最有影响力的开发人员,因为利益,也忽视这些问题的存在。 不论现有的投资环境是不是泡沫,我都坚信区块链一定会继续存在。我们只需要解决阻碍区块链称为主流使用的障碍。同时,也需要投资者发现并且资助这些事情。

[广告]赞助链接:

关注数据与安全,洞悉企业级服务市场:http://www.ijiandao.com/
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

图库
关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接