主页 > 华为imtoken无法安装 > 区块链技术的流派

区块链技术的流派

华为imtoken无法安装 2023-01-17 13:05:02

如果你已经关注区块链技术几个月了,你可能和我一样。无休止地介绍原则、前景描述、行业讨论和连锁新闻,你会感到审美疲劳。是的,区块链必须与行业紧密结合。它还具有颠覆人类协作方式的力量。但归根结底,它仍然是一项技术活动。它需要编写代码。整天坐在咖啡店里谈论赚钱是不可能的。从链条。技术人员的逻辑简单明了。这件事有未来(金钱)的方式吗?是的,你是怎么做到的?

本文试图概述区块链的相关技术流派和主流平台,作为学习区块链技术体系的指南,旨在促进区块链开发社区的讨论和共识。

区块链技术的流派

在战斗之前,如果你想投资区块链开发领域,至少你首先要弄清楚现在有哪些玩家,他们各自的主张和优势是什么。

区块链技术的流派没有固定的划分规则。据我所知,可能有以下四种方式:

首先根据节点访问规则分为公链、私链和联盟链

公链的代表自然是比特币和以太坊,私链最著名的是R3 Corda,联盟链的代表作是Hyperledger名下的Fabric。公链注重匿名性和去中心化,而私有链和联盟链注重高效率,往往设置准入门槛。公链、私链和联盟链的这些差异体现在技术上。例如,私有链和联盟链假设节点数量不大,可以使用 PBFT 算法形成共识。另一方面,公链假设有大量不断变化的节点网络。使用PBFT的效率太低,只能用类似于抽奖的算法来判断意见领袖。这意味着私有链和联盟链很难成为公链,而公链作为联盟链或私有链很容易使用,但不是即插即用的。学者们不能忽视这种差异。

二、根据共享目标分为共享账本和共享状态机两组

比特币平台出不了金

比特币是典型的共享账本,Chain 和 BigchainDB 也应该属于这一类。这些区块链系统在每个节点之间共享一个总账,因此更方便地连接到金融应用程序。在另一种主要类型的区块链系统中,每个节点共享一个可以完成图灵完备计算的状态机,例如以太坊和Fabric。它们都是通过执行智能合约来改变共享状态机的状态,从而实现各种复杂的功能。 .

第三个是将区块链系统按照Melanie Swan所描述的世代进化分为1.0、2.0和3.0三代

1.0 支持去中心化交易和支付系统,2.0 通过智能合约支持行业应用,3.0 支持去中心化社交系统。比特币和Chain应该属于区块链1.0系统,而以太坊和Fabric是区块链2.0系统,目前还没有成功的区块链3.0系统。 ,有一次失败的尝试,著名的 The DAO。

四、根据核心数据结构分为区块链和分布式账本两大类

区块链群在系统中真正实现了区块链作为核心数据结构,而分布式账本群只是吸收了区块链的精神,并没有真正使用区块链作为核心数据结构。核心数据结构,还是暂时用的,但声明说无相庄无区块链是为了分发总账。如果需要时间,可能会被命运所取代。

主流区块链技术平台

理解流派的划分,仍然只能用来指点国家,吹牛,开始,总要有一个切入点。据说区块链货币已经上千种,但值得关注的技术平台却只有几十种。想要进入区块链开发领域,需要打好基础,练好技能,掌握好几个。提供,值得深入研究和研究的平台屈指可数。

比特币平台出不了金

首先,当然是比特币

比特币作为区块链迄今为止第一个也是最成功和最重要的示范项目,已经运行了八年多,没有发生任何严重的安全和运维事故。它被称为当代软件系统的模型。 Bitcoin Bitcoin Core 是一个开源软件,具有高代码质量和良好的文档。从学习区块链原理和掌握核心技术的角度来看,Bitcoin Core 是学习正宗区块链技术的最佳切入点。 当然,Bitcoin Core 是用 C++ 编写的,并且使用了 C++11 和 Boost 库的一些机制,这对学习者的 C++ 水平提出了更高的要求。

学习比特币平台开发的另一个好处是你可以与繁荣的比特币技术社区建立联系。目前围绕比特币在改进和完善的人很多,人越多,力量越大。隔离验证、闪电网络和侧链等较新的想法和技术是比特币社区最先实施的。例如,侧链技术的主要领导者 Blockstream 由密码学资深人士 Adam Back 领导,而 Blockstream 是 Bitcoin Core 的最大贡献者之一,因此一些侧链技术是比特币社区讨论最多的技术。

但作为典型的区块链1.0系统,比特币是支持其他类型区块链应用的最佳技术平台,存在很多争议。另外,并不是每个人都有能力和必要精通区块链底层技术。所以对于那些渴望跳入区块链领域做(quān)事(qián)的人来说,或许更直接的学习目标是以太坊和Hyperledger Fabric。

以太坊

在以太坊上使用 Solidity 开发智能合约是进入区块链开发的最简单方法,没有人。以太坊的理想非常宏大。因为它搭载了强大的图灵完备的智能合约虚拟机,可以成为所有区块链项目的母平台和支撑整个区块链世界的大乌龟。在以太坊上开发类似比特币的加密货币是一个毫不妥协的小目标。一般有经验的开发者在文档的指导下半天到一天就可以上手。问题是,开始之后会发生什么?你能通过编写 Solidity 来征服世界吗?这是非常值得怀疑的。我们也可以反过来说,如果以太坊 + Solidity 是区块链的终极解决方案,为什么会有这么多区块链技术学校?尤其是以太坊似乎并没有给现实世界中的巨型中心化组织留下出路,而这种完全不妥协的革命态度也可能成为以太坊推广的障碍。

目前以太坊项目的发展并不顺利。一个比较突出的问题是项目过多,权力分散,导致项目质量参差不齐。但尽管如此,与其他区块链2.0平台相比,以太坊提供的开发环境是最简单、最完善的。对于初学者来说,学习以太坊是绝对必要的,以建立对区块链和智能合约的最“真实”的理解。

比特币平台出不了金

面料

主流区块链技术平台的第三个分支是Fabric,它是Hyperledger的第一个也是最知名的孵化项目。 Fabric 最初来自 IBM 的 Open Blockchain 项目。到 2015 年 11 月,IBM 将当时开发的 44000 行 Go 语言代码交给了 Linux 基金会比特币平台出不了金,并将其纳入 Hyperledger 项目。在 2016 年 3 月的黑客马拉松期间,Blockstream 和 DAH 将各自的代码合并到 Open Blockchain 中,后来更名为 Fabric。到目前为止,英特尔提供的 Fabric 和 Sawtooth Lake 被列为 Hyperledger 的一级孵化项目,但前者受到的关注远远超过后者。

从技术上看,Fabric 有一个很好的想法,重点是满足企业商业用途的需求,比如解决交易量的问题。众所周知,比特币最大的缺点是每秒7笔交易的上限,完全不能满足实际需求。 Fabric的目标是达到每秒10万笔交易,接近刚刚过去的双11交易量的瞬时峰值,完全可以满足正常情况下的行业级应用。 Fabric 是用 Go 语言开发的,也提供了多种语言的 API。特别值得一提的是,Fabric 充分利用了容器技术,例如其智能合约在容器中运行。这也是 Go 语言给 Fabric 带来的一个好处,因为 Go 语言的静态编译和部署特性非常适合在容器中开发程序。

Fabric 也有一些功能。例如,其会员服务可以设置节点访问审查,这是典型的联盟链功能。另一个例子是它的共识算法是可定制的。 Fabric自带PBFT共识算法实现,但是PBFT的算法效率是O(n²),其中n是节点数。因此,在节点数有限的联盟链上使用PBFT是没有问题的,但是在公有链上使用效率太低了。

Fabric 的缺点是系统比较复杂。虽然有文档,但是缺乏经验的开发者学习难度很大。但由于其定位清晰,迎合了众多企业的心态,业内已经有不少机构基于Fabric Secret开发了联盟链项目。

少数民族学校

上述区块链开发的三大主流平台在活跃度、关注度和参与度上都远超其他平台。但俗话说,不要欺负穷人,一些目前还不为人知的平台也不容忽视。

比特币平台出不了金

锯齿湖

Hyperledger 的另一个一级孵化项目 Sawtooth Lake 是英特尔开发的区块链平台。是一个很少受到关注的项目,可能是因为被同样在 Hyperledger 下的 Fabric 掩盖了,名字也很别扭,所以很少看到有人讨论,项目也不是很活跃。但实际上,Sawtooth Lake 是一个非常周到、设计非常用心的区块链项目。以数字金融资产管理为目标,整体结构清晰比特币平台出不了金,模块化程度高,可定制性强。从概念上讲,创建了“交易族”的概念,同时也支持PoET和Quorum两种共识机制。当节点数量较多时(公链环境),使用第 6 代 Intel Core CPU 提供的 SGX 扩展,提供了一种称为经过时间证明 (PoET) 的机制来形成共识,这与比特币采用的机制类似。 PoW 也是一种“彩票彩票”共识算法,但通过 ASIC 专用硬件消除了“作弊”的可能性,消除了比特币算力过度集中的隐患。可靠性由 Intel CPU 硬件保证。它是一个公链系统中非常有价值的共识机制。另一方面,当节点数量较少且受控时,Sawtooth Lake 可以采用 Quorum 共识机制,这是 Ripple 提出并验证的共识机制,非常适合联盟链场景,让 Sawtooth Lake 转成为一个非常有用的联盟链。

Sawtooth Lake 使用 Python 开发并提供 Java SDK。由于这两种语言的流行,它实际上应该有很大的潜在开发人员群体。事实上,R3 CEV 已经测试了 Sawtooth Lake 并进行了成功的证券交易实验。目前它的主要问题是缺乏关注,不知道英特尔是否有足够的耐心和毅力坚持下去。如果英特尔的策略更清晰、更支持,建议大家多加关注。

科达

R3 Corda 是一个备受瞩目的分布式账本项目。 R3是一家由数十家银行和金融机构支持的区块链企业,融资数亿美元。 R3分布式账本系统的核心Corda,时隔11月30日正式开源。

令人惊奇的是,Corda 是用 JetBrain 的原始小众语言 Kotlin 开发的,它向 Java 世界敞开了大门。此外,Corda 更重要的特点是其在现有世界中与大银行和大型中央机构全面妥协和全面合作的姿态,与以太坊革命的清白和理性反叛的形象形成鲜明对比。 Corda 在设计中有许多独特的考虑,即与现有业务规则的接口。例如,在几乎所有其他区块链平台中,每笔交易对每个节点都是可见的,只有可见才能被验证,只有能被验证才能达成共识,所以交易的全网可​​见性是合乎逻辑。但是,对于现实世界中金融机构之间的交易,只有参与交易的各方才能看到交易详情。工行和建行之间的交易,是绝对没必要让招行看到的。为了应对这一现实,Corda 设计了一种不同的机制,牺牲了交易验证的全局可见性,确保只有参与交易的各方才能看到和验证交易本身。但另一方面,银行业务是一项受到严格监管的业务。不能因为使用了区块链系统就搁置了辉煌的巴塞尔协议。监管机构的职能应该如何体现?这在其他区块链系统中没有被考虑太多。 Corda 设计了独特的 Notary 和 Oracle 节点,为监管系统的进入留出了空间。如果您仔细品尝,这些都是为现实世界中的大型机构保留的美丽差异。这些设计考虑无疑大大增加了 Corda 被现有大型金融机构采用的机会。不过这一切看起来都很好,但是目前 Corda 的实现基本是耍花招,很多想法都处于 TODO 状态。

Chain 和 BigchainDB

比特币平台出不了金

另外两个值得命名的区块链学校是 Chain 和 BigchainDB。前者与Visa合作,后者是基于RethinkDB开发的分布式账本。两者都有自己的理念和特点,也都获得了可观的投资。不排除未来会有很大的发展。限于篇幅,这里不再介绍。

区块链开发技术基础以开发基于区块链的网络或移动应用程序

可以预见,未来从事区块链开发的开发者主要有三类。一是开发基于区块链的网络或移动应用程序。此类开发人员所需的技能类似于当今的 Web 和移动开发人员。没什么区别,这里就不赘述了。

开发智能合约开发人员

第二类开发者是开发智能合约的人。这类开发者使用Solidity之类的智能合约语言,或者直接用Go、Java、Python等语言进行开发。开发智能合约所需的语言和算法能力不高,并发、多线程等东西一般不会用到,普通开发者可以胜任。但智能合约的难点在于业务和安全。本质上,智能合约是用代码编写的商业合约。为了能够编写正确的智能合约,需要对业务有非常清晰的理解和对安全性的深刻理解。因此,我认为未来智能合约的开发者可能主要是特定应用领域的行业专家,因为他们掌握 Python 语言比程序​​员了解进出口贸易规则或商业票据业务要容易得多。

区块链核心应用系统及核心平台开发

第三类开发者是区块链核心应用系统和核心平台的开发者。当然,这些人一定是技术专家。按照流行的说法,他们必须是后端专家。语言方面,C++、Java、Python、Go、JavaScript 都可能被触及。在基础知识方面,需要对密码学、分布式系统、网络编程、系统架构和部署有相当程度的理解和实践经验。这种开发者显然会成为区块链技术浪潮的浪潮,也将是最大的受益者之一。

关于密码学的特别说明。密码学是大多数开发者的短板,但如果想在区块链核心技术领域拿出能够碾压竞品的创新,密码学是最有可能产生成果的地方。不用说,要在密码学上有所突破,也就是充分利用区块链已有的密码学成果,就有可能想出一些逆天的创新。例如,使用零知识证明协议构建高度匿名的区块链系统,例如,使用私有计算外包技术,让其他节点在不知道交易内容本身的情况下验证交易。众所周知,这些都是可以激发大量商业模式创新的技术,等待密码学黑客去发现和实施。因此,我相信密码学的显化时代即将到来。

原文: