主页 > imtoken服务器验证签名错误 > 区块链和区块链技术总结.doc

区块链和区块链技术总结.doc

区块链和区块链技术总结 区块链是一个比较流行的新概念,它包含了技术和金融两个概念。从技术角度来看,这是一个牺牲一致性效率,保证最终一致性的分布式数据库。当然,这是一方面。从经济角度看,这种容错能力强的点对点网络正好满足了共享经济的一个必要要求——低成本的可信环境。这一次,我将与大家分享区块链技术,当前区块链技术架构,以及价值互联网的介绍。由于区块链是一个新兴的技术概念,本文所有观点仅代表个人观点,未必全部正确。#1. 技术人员看待区块链的正确态度虽然区块链是一个新兴概念,但它所依赖的技术一点也不新鲜,比如非对称加密技术、P2P网络协议等。就像乐高积木一样,积木是有限的,但是不同的组合可以产生非常有趣的东西。我接触过一些工程师。当我第一次接触区块链时,他们都表达了同一个意思:都是成熟的技术,而不仅仅是分布式存储。从工程师的角度来看,第一反应是将这个新概念映射到自己的知识框架中是很自然的。但细究起来发现,这种片面的理解可能会导致对区块链的理解出现误区,即作为技术人员,忽略了区块链的经济特性——一个去中心化和完全自治的系统。区块链本质上是一个基于 P2P 的价值转移协议,我们不能只看到没有价值转移的 P2P。

同样,我们也不能只看价值传递而看不到区块链的底层技术。可以说,区块链更像是一门交叉学科,结合了P2P网络技术、非对称加密技术、宏观经济学、经济博弈等知识,构建了一个新的领域——价值互联网的探索。那么什么是价值互联网?价值互联网可以是从当前蓬勃发展的电子商务衍生出来的支付业务。但它真的只是支付领域吗?显然这还不够,一级资本市场、实物资产的确认与转让、证券登记与交割、认证与反欺诈。我们再想一想,我们各大电商平台的恶意评论者还少吗?在当今的金融领域,除了支付的便利,在其他大部分业务中,我们就像是在镣铐上行走。我们反复确认、审核、监督,反复搭建大大小小的高可用集群,保证了线上服务的可靠性和连续性。我们一个接一个地雇佣安全工程师,一个接一个地交付一个渗透测试项目。为什么?因为作弊的成本太低,低至数据库中的一行记录就可以提取数百万的资金。强大的互联网给了我们一个成本几乎为零的高速信息传输通道,但没有低成本可靠的高速价值传输通道,所以这就是区块链即将带来的。区块链是一个公共分布式账本。我们从技术角度简单介绍一下:想象有一个100个分布式数据库集群,目前的情况是这100个节点的实际拥有者是一个组织,而所有节点都在组织的内网,所以组织可以为这100个数据库节点做任何想做的事情。也就是说,这 100 个节点处于一个可信环境中,由一个实体控制,这个实体拥有绝对的仲裁分配权。

另一种情况是这样的,假设这100个节点属于不同的人,每个人的节点数据都是一样的,也就是完全冗余,所有节点都在广域网,也就是说,这100个节点之间没有信任节点,不存在具有绝对仲裁权的实体。现在考虑第二种情况,可以用什么样的算法(共识模型)来提供可信环境,使得:“1.每个节点交换数据的过程不可篡改;交换历史不可篡改with; 1. @2. 每个节点的数据会同步到最新数据,共识后的最新数据会被认可; 3. 本着少数服从多数的原则,整个节点本身维护的数据客观地反映了交易历史。” 区块链本质上是解决上述第二种情况的技术方案,更准确地说,应该称为分布式冗余链账本方案。区块链的一些要素在我之前的文章中已经总结过:“1.包含分布式数据库<@2.分布式数据库是区块链的物理载体,而区块链是交易的逻辑载体,所有核心节点都应包含区块链数据的完整副本3.区块链按时间序列化区块,区块链是全网交易数据的唯一主体4.区块链仅对添加有效, 不适用于其他操作5.

#<@2.区块链的总体架构介绍区块链本身的发展历史。网上资料很多,本文不再赘述。关于区块链技术的介绍,在各个区块链平台的社区里都有详细的资料,但是这些资料的总结和抽象通用概念的介绍还很少见。本文试图总结。介绍之前先简单介绍一下公链和联盟链的概念。这些概念是以太坊创始人Vitalik提出的,我在这些概念的基础上做了一些研究。其实区分公链和联盟链很简单。看看区块链的访问权限就知道了。如果需要链上节点的权限才能访问区块链,那么这就是联盟链,否则就是公链。顾名思义,我们也可以“按字面意思”,public表示完全开放的网络,alloy表示半开放的网络,成员之间共享,非成员没有自由访问权限,所以我们也称联盟链作为License链。再来看看几个比较主流的区块链平台(公链,全部开源):1.Bitcoin比特币<@2.Ethereum/Classic Ethereum Ethereum Classic3.Bit“Bitshares”我一般称其为“三巨头”,从生态的角度来看,比特币是最成熟稳定的,以太坊更像是前方的勇士,

其他很多项目都是从这三个区块链衍生出来的,所以基于这三个,我们就可以基本了解区块链了。不得不提Linux基金会项目——HyperLedger项目(主要是联盟链,开源),也是为了打造一个通用的区块链技术,但我觉得还在开发和迭代中,没有具体的应用案例。, 按不说话。还有一些有趣的联盟链项目——R3 CEV项目(联盟链,闭源),还有中国的R3项目——ChinaLedger(联盟链,闭源),当然这些都不是开源的,我拿不到有用的资料分析,所以就不展开了。从技术上看,针对不同的业务场景,对区块链的要求是不同的,比如实时结算业务,要求区块链提供秒级交割,对应出块速度的要求,出块速度太快,往往会导致区块链出现分叉,形成孤链. 如果孤链无效,则交易无效,影响区块链的最终一致性。如果频繁的分叉导致相当比例的用户交易失败,那么系统可以被认为是不可靠的。如果我们将这种实时性要求高的业务插入到联盟链中,可以控制风险,通过调整共识算法,使用快速共识模型(Consensus Model)来避免上述问题。虽然没有公链那么健壮,但是对于一些特殊场景来说已经足够了。所以,

我们还可以做出更好的 UI 界面也可以是 Web 服务。如果区块链支持智能合约,可能会分成更多的层,比如增加一个BaaS层,区块链上的智能合约提供自治服务,比如下面一张以太坊的架构图(来自google,仅供参考):(图2)这个分层更关注区块链本身的分层,也就是从业务角度来说,不完全是技术层面的。我们再来看看比特币的设计:(图3)比特币的几个模块之间的耦合度其实是比较高的,历史包袱很多,比特币的发明者——中本聪在开发比特币的时候,我是用VC++开发的,

随着C++11的引入和标准库的更新迭代,性能也不尽相同。从整体来看,我们可以看到比特币的模块较少,相对简单。chain-paramters 描述了整个区块链的参数设置,wallet 与地址/加密和存储有关,mem-pool 是未确认交易的池。得益于比特币核心开发者的不朽贡献,现在的比特币代码质量相比中本聪时代的比特币代码已经相当不错了。不管上面的设计,一般都是从P2P网络协议开始的。作为 P2P 钱包,它同时提供服务和客户端。作为一个Service,它依赖于P2P网络协议,作为一个Client,它依赖于Json-RPC。需要指出的是,“三巨头”使用的活期账户模型不同(所谓账户模型是指账户记账方式),比特币使用UXTO模型,以太坊和比特股使用账户余额模型。UXTO模型(Unspent Transaction Outputs (UTXOs)):这个模型表达了一个转移的概念,即任何新产生的币都只会在后期的生命周期中转移,而不会死掉。转账本质上是通过加密算法签名和验证控制:(图4)账户余额模型:账户余额模型抛弃了这种强验证账户模型,即账户余额回归数字加减法,提高了交易的效率。不同(所谓账户模型是指账户记账方式),比特币采用UXTO模型,以太坊和比特股采用账户余额模型。UXTO模型(Unspent Transaction Outputs (UTXOs)):这个模型表达了一个转移的概念,即任何新产生的币都只会在后期的生命周期中转移,而不会死掉。转账本质上是通过加密算法签名和验证控制:(图4)账户余额模型:账户余额模型抛弃了这种强验证账户模型,即账户余额回归数字加减法,提高了交易的效率。不同(所谓账户模型是指账户记账方式),比特币采用UXTO模型,以太坊和比特股采用账户余额模型。UXTO模型(Unspent Transaction Outputs (UTXOs)):这个模型表达了一个转移的概念,即任何新产生的币都只会在后期的生命周期中转移,而不会死掉。转账本质上是通过加密算法签名和验证控制:(图4)账户余额模型:账户余额模型抛弃了这种强验证账户模型,即账户余额回归数字加减法,提高了交易的效率。UXTO模型(Unspent Transaction Outputs (UTXOs)):这个模型表达了一个转移的概念,即任何新产生的币都只会在后期的生命周期中转移,而不会死掉。转账本质上是通过加密算法签名和验证控制:(图4)账户余额模型:账户余额模型抛弃了这种强验证账户模型,即账户余额回归数字加减法,提高了交易的效率。UXTO模型(Unspent Transaction Outputs (UTXOs)):这个模型表达了一个转移的概念,即任何新产生的币都只会在后期的生命周期中转移,而不会死掉。转账本质上是通过加密算法签名和验证控制:(图4)账户余额模型:账户余额模型抛弃了这种强验证账户模型,即账户余额回归数字加减法,提高了交易的效率。

#3. 共识算法和分布终于说到点子上了。其实这篇文章的每一节都可以展开成一篇独立的文章。内容有限。所谓区块链共识过程,上面提到的,是指如何客观记录全网交易数据,不可篡改的过程。目前,“三巨头”使用不同的共识算法(Consensus Algorithm),比特币使用PoW(Proof of Work),以太坊即将转换为Proof of Stake(权益证明),BitShares使用DPoS。(委托权益证明)。我将上述算法称为“经济学”算法。所谓经济算法是指让作弊的成本可计算,而作弊的成本往往远大于作弊带来的收益,即 作弊是无利可图的。这一思想为节点之间的博弈构建了一个算法,并使其趋于稳定平衡。相应的,我们在计算机领域也有分布式共识算法,比如Paxos、Raft区块链是干嘛的,我也称它们为传统的分布式共识算法。它们之间最大的区别在于:拜占庭将军问题场景下系统的可靠性,即拜占庭容错(PBFT算法支持拜占庭容错)。但是,Paxos 和 Raft 算法理论上都可能进入一个无法被投票通过的无限循环(虽然这个概率实际上非常非常低),但它们都满足安全性,但放宽了对 liveness 的要求,PBFT 也是如此。这一思想为节点之间的博弈构建了一个算法,并使其趋于稳定平衡。相应的,我们在计算机领域也有分布式共识算法,比如Paxos、Raft,我也称它们为传统的分布式共识算法。它们之间最大的区别在于:拜占庭将军问题场景下系统的可靠性,即拜占庭容错(PBFT算法支持拜占庭容错)。但是,Paxos 和 Raft 算法理论上都可能进入一个无法被投票通过的无限循环(虽然这个概率实际上非常非常低),但它们都满足安全性,但放宽了对 liveness 的要求,PBFT 也是如此。这一思想为节点之间的博弈构建了一个算法,并使其趋于稳定平衡。相应的,我们在计算机领域也有分布式共识算法,比如Paxos、Raft,我也称它们为传统的分布式共识算法。它们之间最大的区别在于:拜占庭将军问题场景下系统的可靠性,即拜占庭容错(PBFT算法支持拜占庭容错)。但是,Paxos 和 Raft 算法理论上都可能进入一个无法被投票通过的无限循环(虽然这个概率实际上非常非常低),但它们都满足安全性,但放宽了对 liveness 的要求,PBFT 也是如此。比如 Paxos 和 Raft,我也称之为传统的分布式共识算法。它们之间最大的区别在于:拜占庭将军问题场景下系统的可靠性,即拜占庭容错(PBFT算法支持拜占庭容错)。但是,Paxos 和 Raft 算法理论上都可能进入一个无法被投票通过的无限循环(虽然这个概率实际上非常非常低),但它们都满足安全性,但放宽了对 liveness 的要求,PBFT 也是如此。比如 Paxos 和 Raft,我也称之为传统的分布式共识算法。它们之间最大的区别在于:拜占庭将军问题场景下系统的可靠性,即拜占庭容错(PBFT算法支持拜占庭容错)。但是,Paxos 和 Raft 算法理论上都可能进入一个无法被投票通过的无限循环(虽然这个概率实际上非常非常低),但它们都满足安全性,但放宽了对 liveness 的要求,PBFT 也是如此。

也就是在更一般的情况下,区块链共识模型是面向事务的,所以严格来说,传统的分布式共识算法应该处于区块链共识模型的下层。公链和联盟链,我们有:“1. 联盟链:一个半封闭的生态交易网络,拥有点对点的不可信节点,如房地产中的A、B、C、D公司行业。<@2.公链:开放生态交易网络,这一层主要是为产业链和私有链提供一个全球性的交易网络。”由于联盟产业链半封闭半开放的特点,它是可以使用 XXX 的委托证明,并且可以考虑在传统共识算法的基础上增加拜占庭容错。还可以完善安全保护机制。对于公链来说,PoW/Pos/DPos 等“经济”算法可能是最优算法。

从技术上讲,对于上述不同的共识算法,我们新开发的很多区块链都支持一个特性:共识模块是可插拔的,以满足不同场景的需求。下图为未来区块链生态示意图:(图5)公链提供可信可靠的价值传输网络,您可以在其上继续构建去中心化应用(DAPP)或部署联盟链,以及就算是传统数据库也OK,上层搭建一个C端应用。 -#4. 数字资产与价值流通网络 这是一张图片:ref: 元界白皮书-CN(摘要) 在“三巨头”中,比特币在“数字货币”,比特股在“去中心化交易所”附近,以太坊在“去中心化组织”。事实上,区块链与现实的接触点还在图中所示的位置。因此,区块链仍是一个成长中的少年。结合图5,我们希望构建一个基础设施完备的A价值传输网络和一个上层应用丰富的区块链生态系统,仍然需要付出巨大的努力。下一个目标是资产数字化(类似于资产证券化)。例如,我们可以将稀有物品(艺术品/古董)数字化。) 数字化,知识产权数字化,票据基金等收益权的数字化,将大大提高市场运作效率。配备智能合约甚至人工智能,可编程社会不再是梦想。———————————— Q:感觉还是太抽象了。到目前为止,我还没有能够具体的理解区块链,也没有找到具体的解释。没有以前的概念可以映射到它,所以很容易理解。

我们不谈论这个概念,我们只需要考虑我们的互联网还需要什么。正如比特币白皮书中提到的,点对点现金系统对其使用要求非常低,无需注册,无需手机号码,点对点网络,只要连接设备,那么你可以使用它。区块链的概念是一样的,目的是建立一个点对点的生态,解构权力带来的不对称。它本身只是一个共享的总账,有别于网络中的多节点记账和对账,瓦解了中心权力。问:区块链技术如何应用​​于互联网身份认证?答:这是个好问题。我目前正在从事的区块链项目涵盖了这个概念,这就是你所说的互联网身份认证。我们相信这是使区块链成为真正业务的必要组成部分。在我们的愿景中,身份首先是什么?身份不仅仅是一个ID号,一个密码,而是用户所有操作记录的集合,而这个记录集的代号就是身份。就像丢了账号然后申诉一样,申诉的内容真的是针对你的。区块链也是一样,需要相同的ID,还需要自动验证你历史的合法性。目前,互联网的身份认证依赖于公安系统。最简单的解决方案是将公安系统中的身份系统映射到区块链上。另一种解决方案是用户定义的记录集,它根据交易历史检查身份。当然,在更远的未来,结合人工智能,区块链可能会有更好的表现。

Q:如果将实时交付数据放入联盟链,联盟链的数据最终会同步到公链吗?根据分享,联盟链的数据不能信任公链。联盟链和公链中的数据是什么关系?这里看不懂,谢谢老师分享!A:我不认为所有机构都愿意把资产放到公链上,会共存。理想的情况当然是完全使用公链来构建去中心化的应用程序。联盟链与公链之间的直接数据是简单的引用关系。我认为开放的关键数据集,比如用户身份,应该存放在公链上,让用户自己管理,而更私密的关键数据应该被机构用来访问它。它与公链是隔离的,所以我认为联盟链的数据和公链的数据是互补的。也就是说,联盟链的数据是否应该同步到公链区块链是干嘛的,取决于组织本身的需求。另外,公链的外部数据引用,我们称之为data-feed,这个东西会引入人的因素,比如律师、律师、政府机构等,作为仲裁者帮助引用数据,好坏让市场评价信用,就像评价一个机构,如果这是非常透明和公开的。Q:有一些非常有趣的实体项目,比如智能门锁和无人驾驶汽车租赁。这些都是线下项目。如何实现互联?A:

其次,任何特定的区块链项目都需要依赖公链。就像很多落地项目都是以“三巨头”为基础的,其实目前还没有一个大家特别满意的标准。所以我将不得不拭目以待。问:谢谢分享。能否谈谈上一张图中区块链发展的各个阶段对传统金融行业,尤其​​是银行业的影响?A:对银行业的影响,我认为现阶段影响不大,尤其是在中国。这取决于区块链的发展程度。据我所知,央行已经开始开发自己的数字货币。对银行来说,最多不过是又一次IT架构升级,有利于银行业降低IT成本,有利于加强监管。但如果在更远的将来,银行可能不会特别封闭,成为一些区块链的代理节点,也会受到大家的监督,而不是少数特殊机构。Q:如果公链可以记录所有的历史,有没有什么技术可以销毁或者封禁,有没有生命终结的一天?A:有一点技术风险。当通用量子计算商业化时,目前很多加密技术都失效了,而基于密码学的区块链受到的影响最大(当然,目前的中心化架构也会受到影响)。这取决于理论研究的结果,如果有新的密码学理论可以抵抗量子计算,那就没问题了。从 P2P 网络的角度来看,任何机构和个人都不能被封禁,只要有两个节点还能做交易和记账,区块链就是活的。从经济学的角度来看,区块链的生死主要不是加密技术是否被破解,而主要是链上聚集了多少财富和利益,链上的数据有多少价值。如果没有价值,链条自然会消亡。相反,如果被攻破,只是等待新的加密算法出来后的分叉或数据迁移,这与恢复中心化数据库的备份没有太大区别。只要有两个节点仍然可以进行交易并记账,区块链就是活着的。从经济学的角度来看,区块链的生死主要不是加密技术是否被破解,而主要是链上聚集了多少财富和利益,链上的数据有多少价值。如果没有价值,链条自然会消亡。相反,如果被攻破,只是等待新的加密算法出来后的分叉或数据迁移,这与恢复中心化数据库的备份没有太大区别。只要有两个节点仍然可以进行交易并记账,区块链就是活着的。从经济学的角度来看,区块链的生死主要不是加密技术是否被破解,而主要是链上聚集了多少财富和利益,链上的数据有多少价值。如果没有价值,链条自然会消亡。相反,如果被攻破,只是等待新的加密算法出来后的分叉或数据迁移,这与恢复中心化数据库的备份没有太大区别。以及链上的数据有多少价值。如果没有价值,链条自然会消亡。相反,如果被攻破,只是等待新的加密算法出来后的分叉或数据迁移,这与恢复中心化数据库的备份没有太大区别。以及链上的数据有多少价值。如果没有价值,链条自然会消亡。相反,如果被攻破,只是等待新的加密算法出来后的分叉或数据迁移,这与恢复中心化数据库的备份没有太大区别。