区块链2.0-从比特币跳水说起
扫描二维码
随时随地手机看文章
近期虚拟币市场可谓风波不断,就在此文书写的当天,部分比特币交易平台出现了从上次跳水后价格继续下跌10%以上的窘境。。.
严峻的形势下
近一段时间的政策可以看出,国家正在着手控制比特币交易这一系列比较特殊的灰色产业。提到比特币,时常挂在嘴边的还有“区块链技术”,有些形容提到“基于区块链的比特币”,那么在大政策待见虚币的情况下,对区块链技术带来了哪些影响呢?确切的了解一下比特币与区块链的关系。
比特币的诞生2008年9月,以雷曼兄弟的倒闭为开端,金融危机在美国爆发并向全世界蔓延。为应对危机,各国政府采取量化宽松等措施,救助由于自身过失、陷入危机的大型金融机构。这些措施带来了广泛的质疑,并一度引发了“占领华尔街”运动。
在前人的工作基础之上,2008年,名不见经传的“中本聪”在metzdowd.com的密码学邮件组列表中发表了《比特币:一种点对点的现金支付系统》。
2009年1月3日,中本聪在位于芬兰赫尔辛基的一个小型服务器上挖出了比特币的第一个区块——创世区块(Genesis Block),并获得了首矿”奖励——50个比特币。在创世区块中,中本聪写下这样一句话:
区块链是什么区块链技术的数据共享是一个分布式的记账簿,可以理解为是一个巨型分布式去中心的数据库。区块链存储的基本单元是区块,区块采用链式结构,即新增的区块(类似数据库一行记录)都知道自己前一个区块(前一行记录)是什么,可以一直追溯到根,区块的标识是区块的哈希值,同时链式结构保留了业务产生的轨迹,可以在新增交易的时候根据前面的记录做校验,保证了区块的内容不容易篡改。既然是分布式、多中心的存储方式,就必须解决存储时的分布式一致性问题。在区块链的前身比特币应用中,解决这一问题的方式是工作量证明(POW Proof-Of-Work)方式,即通过工作以获得指定成果,用成果来证明曾经付出的努力。实用拜占庭容错(PBFT Practical ByzanTIne Fault Tolerance)方式,是一种通过技术规则达成共识的机制。
区块链技术是一组技术的组合,既然是一个分布式的记账簿,就要解决数据可靠传输问题。包括记账节点(信任节点)之间、非记账节点(非信任节点)、客户端与记账节点(信任节点)之间的数据传输。在以前我们的方案中,往往通过可靠消息或者P2P方式解决数据传输问题,这些技术也被用于区块链技术中。
区块链与比特币的关系比特币与区块链这两个概念,提到其中之一就会顺势想到另外一个。在比特币的系统中,最重要的并不是“币”的概念,而是上面提到的分布式去中心存储机构的数据库的概念。区块链技术是比特币的底层技术,比特币在没有任何中心化机构运营和管理的情况下,一直稳定的运行,后来比特币技术被抽象提取出来,称之为区块链技术,或者分布式账本技术。所以可以说,比特币是区块链第一个应用,而区块链是更加底层的技术,以后会扩展到越来越多的行业中。
区块链2.0:智能合约区块链1.0应用以比特币为代表,为了解决货币和支付手段的去中心化;而区块链2.0“智能合约”就是更宏观的对整个市场的去中心化,利用区块链技术来转换许多不同的资产而不仅仅是比特币,通过转让来创建不同资产单元的价值。
智能合约在一定条件满足的情况下,可以被自动执行数字化合约。实现这一特性,在数据库中就是由触发器和存储过程完成的。区块链技术中智能合约就是触发器和存储过程,他是一个在沙箱中运行的脚本,用于执行区块链业务中的业务逻辑,也可以用于各种检查。
“智能合约是密码学世界真正的杀手级应用”,在世界加密网络上发布密码学货币节目的主持人Chris Ellis如此说。
比特币系统区块链的制约将区块链的思想应用到其它领域的想法早就出现了,自2009年比特币系统的去中心化共识开发成功以来,许多区块链的其它应用开始快速出现。即使不对比特币协议进行扩展,它也能在一定程度上实现”智能合约”。比特币的UTXO可以被不只被一个公钥拥有,也可以被用基于堆栈的编程语言所编写的更加复杂的脚本所拥有。在这一模式下,花费这样的UTXO,必须提供满足脚本的数据。事实上,基本的公钥所有权机制也是通过脚本实现的:脚本将椭圆曲线签名作为输入,验证交易和拥有这一UTXO的地址,如果验证成功,返回1,否则返回0。
然而,比特币系统的脚本语言存在一些严重的限制:
缺少图灵完备性
价值盲(Value-blindness)
缺少状态
区块链盲(Blockchain-blindness)
Fabric
Linux基金会在2015年创立了Hyperledger,以推动跨行业块链技术。它鼓励通过社区过程开发区块链技术的协作方法,鼓励开放式开发和随时间采用关键标准的知识产权。Hyperledger Fabric是Hyperledger中的一个区块链项目,像其他块链技术一样,它有一个分类账,使用智能合同,是参与者管理其交易的系统。
Hyperledger Fabric从某些其他区块链系统的区别是它是私有认证的。通过会员服务提供商注册,Hyperblocker Fabric网络的成员不是使用“工作证明”来验证身份(允许符合这些条件的任何人加入网络)。
Fabric的6大优势获得许可的成员 Hyperledger Fabric 因作为许可网络 的平台而闻名,其中的所有参与者都有已知的身份。考虑许可网络时,您应该考虑自己的区块链用例是否需要遵守数据保护法规。许多用例 — 具体来讲,在金融领域和医疗行业 — 都需要遵守数据保护法律,要求知道网络成员和访问特定数据的人的身份。 例如,假设有一家私募股权公司。根据定义,私募股权不在证券交易所公开交易,而且它的投资者通常是风险投资公司、私募股权公司或天使投资者。此网络的参与者需要是已知的,而且在资本投资方面具有可信度,然后才能参与区块链。
性能、可伸缩性和信任水平 Hyperledger Fabric 构建于一种模块化架构之上,该架构将交易处理分为 3 个阶段:分布式逻辑处理和协商(“链码”)、交易订购,以及交易验证和提交。这种分离提供了一些优势:不同节点类型之间需要的信任和验证水平更低,网络可伸缩性和性能得到了优化。
以 “需要知道” 为原则来公开数据。 由于竞争形势、保护法律和有关个人数据机密性的法规,企业规定需要确保某些数据元素的隐私,这可以通过区块链上的数据分区来实现。Hyperledger Fabric 中支持的渠道允许仅将数据传递给需要知道的相关方。 例如,许多金融实体表明担忧竞争对手看到所处理的交易数量。一些金融机构没有考虑通过 “足够” 的加密来保护其数据。考虑到这种情况,一些金融工具可能需要 10 年或更长时间才会发挥价值,随着时间的推移,密码被破解的风险可能使私有信息变成公开信息。渠道有助于提供数据分区功能,只有需要知道数据的相关方才能看到交易数量和数据本身。
对不可变分布式账本的丰富查询 账本是区块链应用程序的状态过渡的有序记录。每个交易都会产生一组资产键值对,这些信息以创建、更新或删除数据的形式提交给账本。v1.0 的不可变事实来源被附加到嵌入了 LevelDB 的对等节点的文件系统中。 默认情况下,LevelDB 有一个键值数据库,支持键查询、组合键查询和键范围查询。如果还需要复杂的富格式查询,CouchDB 支持 LevelDB 的基本功能,并添加了全面的富数据查询。可以选择支持 CouchDB 等文档数据库,内容需是 JSON 格式,而且完全可查询,其数据模型应与现有的键/值编程模型兼容。因此,在利用 CouchDB 时,如果将链代码数据建模为 JSON,则不需要更改应用程序。 这种 JSON 格式有助于最大限度减少生成简单报告和执行审计功能所需的工作。例如,在供应链场景中,可以使用 JSON 文档样式来帮助列出商品和运输实体的特定数据。对于运送到资产最终目的地的过程中涉及的位置和运输实体,可以轻松地为它们生成资产报告。
支持插件组件的模块化架构 Hyperledger Fabric 架构的模块化使网络设计师能够插入其首选实现的组件,这是一个优势。呼声最高的模块化区域之一是 “自带身份”。一些多公司网络已拥有身份管理功能,并希望重用该功能,而不是重新构建它。该架构中可轻松插入的其他组件包括一致性或加密组件,其中一些国家/地区有自己的加密标准。
保护数字密钥和敏感数据 HSM(硬件安全模块)支持对保护和管理数字密钥来实现强身份验证至关重要。Hyperledger Fabric 提供了经过修改和未经修改的 PKCS11 来生成密钥,这支持处理各种情况,比如需要更多保护的身份管理。对于处理身份管理的场景,HSM 增加了对密钥和敏感数据的保护。