区块链以及区块链技术总结2_第1页
区块链以及区块链技术总结2_第2页
区块链以及区块链技术总结2_第3页
区块链以及区块链技术总结2_第4页
区块链以及区块链技术总结2_第5页
已阅读5页,还剩12页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

区块链以及区块链技术总结

区块链是目前一种比较热口的新概念,蕴含了技术与金融两层概念。从技术角度来看,这是

一种牺牲一致性效率且保证最终一致性时的分布式的数据库,当然这是比较片面的。从经济

学的角度来看,这种容错能力很强的点对点网络,恰恰满足了共享经济的一种必须规定一

一低成本的可信环境。

本次分享一下聊聊区块链技术,以及目前区块链技术架构,并且简介一下价值互联网。

由于区块链是一种新兴的技术概念,本文所有的观点仅代表个人观点,未必所有对时。

#1.技术人员看待区块链的对的姿势

区块链虽然是一种新兴的概念,但它依赖的技术一点也不新,如非对称加密技术、P2P网

络协议等。好比乐高积木,积木块是有限的,不过不一样组合却能产生非常故意思的事物。

我接触过某些工程师,初次接触区块链时,不约而同时体现了:都是成熟的技术,不就是分

布式存储嘛。站在工程师的角度,第一反应将这种新概念映射到自己的知识框架中,是非常

自然的。不过细究之下发现,这种片面的理解也许将对区块链的理解带入一种误区,那就是

作为一种技术人员,忽视了区决链的经济学特性一一种权力分散且完全自治的系统,

区块链本质上是一种基于P2P的价值传播协议,我们不能只看到了P2P,而看不到价值传

播。同样的,也不能只看到了价值传播,而看不到区块链的底层技术。

可以这样说,区块链更像是一门交叉学科,结合了P2P网络技术、非对称加密技术、宏观

经济学、经济学博弈等等知识,构建的一种新领域一针对价值互联网的探索。

那什么是价值互联网?价值互联网可以是当下如日中天的电子商务所衍生的支付业务。但,

真的只是支付领域吗?很显然这是不够的,一级资本市场,实体资产确权与转移,证券登记

交割、证信与反欺诈。我们再仔细想想,我们的各大电商平台的专业差评师,恶意刷单还少

吗?

如今的金融领域,除了支付比较便利之外,在其他绝大部分的业务中,我们就像是被套着锁

链走路同样,我们反复确认,反复审核,反复监督,我们反复构建一种又一种的大大小小的

高可用集群,保证线上服务的可靠性与持续性,我们雇佣一种又一种B勺安全工程师,交付一

种又一种的渗透测试项目,为何?由于作弊B勺成本太低了,低到只要改数据库的一行记录就

可以提取上百万的资金。

强大B勺互联网给了我们成本几乎为零的高速信息传播通道,却没有一种成本低廉可靠的高速

价值传播通道,那么这也就是区块链即将带来的。

区块链是一种公共的分布式总账,下面从技术角度简朴简介一下:

想象有一种100台的分布式数据库集群,目前的状况是这100个节点实际上的拥有者是一

种机构,并且所有节点处在该机构的内网当中,因此这个机设想让这100个数据库节点干

嘛就干嘛,换句话说这100个节点之间是处在一种可信任的环境,并且受控于一种实冰,

这个实体具有绝对仲裁分派权。

此外的)状况是这样的,想象这100个节点分别归不一样的人所有,且每个人的节点数据都

是同样的,即完全冗余,并且所有的节点是处任广域网当中,换句话说就是这100个节点

之间是不信任的,且不存在一种实体,它拥有绝对仲裁权。

目前考虑第二种状况,采用什么样的算法(共识模型)可以提供一种可信任的环境,使:

"1.每个节点互换数据过程不被篡改;互换历史记录不可被篡改;

2.每个节点的数据会同步到最新数据,且承认通过共识的最新数据;

3.基于少数服从多数的原则,整体节点维护的数据自身客观反应了互换历史。”

区块链本质上就是要处理以上第二种状况的一种技术方案,更确切的说应当叫分布式的冗余

的链式总帐本方案。有关区块链的某些要素,在我以往的文章里有总结过某些:

"1.包括一种分布式数据库

在简介之前,我想稍微简介一下公有链,联盟链日勺概念,这些概念是以太坊创始人Vitalik

提出的,我在这些概念的基础上做了某些研究。

其实辨别公有链、联盟链很简朴,只要看这个区块链的访问权限就可以了,假如访问该区块

链需要获得链上节点的许可,那么这是一种联盟链,否则是公有链。

根据名称,我们也可以“望文生义",公有表达一种完全开放的网络,联盟表达一种半开放

的网络,组员之间是共享内,非组员身份是没有自由访问权限时,因此我们也称联盟镇为许

可链。

下面我们来看几种比较主流的区块链平台(公有链,皆开源):

"1.比特币Bitcoin

2.以太坊Ethereum/经典以太坊EthereumClassic

3.比特股BitsharesM

我一般戏称为“三巨头"从生态上来看,比特币是最为成熟稳定的,以太坊更像是一种

冲在前面B勺勇士,比特股相比前两位生态要小诸多,不过从创新的角度,也不亚于前两位。

其他的诸多项目,是从这三个区块链上衍生出来的,因此以这三个为基础,基本上可以吃透

区块链了。

不得不提日勺尚有Linux基金会项目一HyperLedger■项目(主打联盟链,开源),也是意

在打造一种通用的区块链技术不过我认为目前尚在开发迭代当中还没有详细的应用案例,

按下不讲。

此外尚有某些好玩的联盟链项目一R3CEV项目(联盟链,闭源),以及中国的R3项目

——ChinaLedger(联盟链,闭源),当然这些不是开源的,我无法获得有用的资料进行

分析,因此就不展开了。

从技术上来看,钊对不一样B勺业务场景,对区块链有不一样需求,例如实时结算业务,规定

区块链提供秒级的交割,相对应时就是出块速度的规定,而出块速度过快往往会导致区块链

分叉(fork),形成孤儿链,孤儿链是无效的,那么交易也就作废了,影响了区块链的最终

一致性。

假如频繁产生分叉导致相称比例的顾客交易失效,那么可以认为系统是不可靠的。

假如我们将这种实时性规定比较高的业务安插到联盟链中,就可以控制风险,通过调整共识

算法,运用迅速一致共识模型(ConsensusModel)来防止上述问题,虽然不如公有链那

么强健,但对某些特殊场景足够了。

因此架构层面,对公有链和联盟链的技术也要差异化看待。

不过客户端整体的设计还是有某些通用的概念的,如下图:

Use*interfaceLaye<

|$Snd<Kdjson-rpc&websd

Blockchainlayer

bkxkchainmodules

P2Ppfotocolmoduig(network)Transactionmodvle(bc)WalletModule(db)

P2Pnet-workprotocolSmartContractBCMgersRdcManagerAccount

dnsscrdBasicScriptsmetidetreeTrivwlUseraddressmanager

d»$covef-nodeAdvancedVMtran$actionrecofdiVaUdingPeerfee

dddress-bookindexsofledgersOf3<le$key-dUding

ping-pongkeepaliveCredit-Scores

shake-handVbye-bye

data-streamtransfertransaction-poolPhvacyManager

membership(blackltst,trustlist)blacklistblooms

tnntlist

EncrypuonModuteCon$en$u$ModuleConvoteModirte

EncryptionAlgorithmConMnsus-proc«ts(plug-inytnerinterface&enime

HASHProof9f-w(xksettings

keygenalgorithmTinyqueryServer

switchmode

CommonL4yer_______________________

|coEtnonlibrary

etKrpytnetworkhashstorage(level-db?SQLite)tventCore

streamtimethredd-managefbasictypedefinitionrandom

file,log.net.stfingcompressionsignals

(图1)

一种区块链至少分为三层:

最底层是某些通用的基础模块,例如基础加密算法,网络通讯库,流处理,线程封装,消息

封装与解码,系统时间等;

中间一层是区块链的关键模块,一般包括了区块链的重要逻辑,如P2P网络协议,共识模

块,交易处理模块,交易池模块,简朴合约或者智能合约模块,嵌入式数据库处理模块,钱

包模块等等;

最上面一层,往往都是基于JsonStandardRPCB勺交互模块,基于Json-RPC,我们还可以

做出更好日勺UI界面,也可以是一种web-service。

假如区块链支持智能合约,也许还要分更多的层,例如增长BaaS层,区块链上8勺智能合

约提供自治的服务,例如下面这张以太坊的架构图(来自google,仅作参照):

(图2)

这种分层愈加关注的是区块链自身的分层,即业务上的视角,而不完全是技术的。

我们再转向比特币的设计:

baseclass

typedefinition

definition

transactionp2p-network

scripts/transaction

/block/merkie「net-buffer,

tree/coin/ctxin/ctxNaddr;

out11

ledger

chain-paramters

(图3)

比特币几种模块之间的耦合度其实比较高,并且有不少历史包袱,比特币的发明者一中

本聪在开发比特币的时候,使用VC++开发,而VC++的原则库中的sstream流处理性能

非常感人,不得不放弃,刍行实现了了基于vector<char>的流处理容器。而伴随C++11

的推出以及原则库的更新迭代,性能不可同日而语。

从整张图我们可以看出,比特币的模块比较少,也比较简朴。chain-paramters描述了整

个区块链日勺参数设置,wallet是与地址/加密尚有存储有关的,mem-pool是未确认的交易

池。得益于比特币关健开发者的不朽奉献,相比中本聪时代的比特币代码,目前8勺比特币代

码质量已经相称不错了。

以上无论哪种设计,一般都要从P2P网络协议作为切入,作为一种P2P钱包,既要提供

Service也要提供Client,作为Service依赖P2P网络协议,作为Client依赖Json-RPC。

需要指出日勺是,目前"三巨头”所使用的账户模型是不一样的(所谓账户模型是指账户记账

措施),比特币使用UXTO模型,以太坊和比特股使用账户余额模型。

UXTO模型(UnspentTransactionOutputs(UTXOs)):此模型体现了一种转移的概念,

即任I可产生的新币,在后来的生命周期中,只有转移,没有消灭,转移实质上是由加密算法

的签名与验证控制的:

Eachinputspendsapreviousoutput

TheMainPartsOf

VersionInputsOutputsLocktime

Transaction0

/

_______

TheMainPartsOf

VersionInputsOutputsLocktime

Transaction1

EachoutputwaitsasanUnspentTXOutput(UTXO)untilalaterinputspendsit

(图4)

账户余额模型:账户余额模型摒弃了这种强验证的账户模型,即账户余额回归到数字加减,

这样做提高了交易的效率。

#3.共识算法与分布式

终于来到重点了,本文每节其实都可以展开成为独立的文章,内容所限,简朴讲。

所谓区块链共识过程,在上文有所提及,是指怎样将全网交易数据客观记录并且不可篡改的

过程。目前"三巨头”分别使用不一样的共识算法(ConsensusAlgorithm),比特币使用

工作量证明PoW(ProofofWork),以太坊即将转换为权益证明PoS(ProofofStake),

比特股使用授权权益证明DPoS(DelegatedProofofStake).

以上这些算法我称之为“经济学"的算法,所谓经济学的算法,是指让作弊成本可计算,且

让作弊成本往往远不小于作弊带来的收益,即作弊无利可图,通过这种思想构造一种用于节

点之间博弈B勺算法,并使之趋向一种稳定B勺平衡。

相对应的我们尚有计算机领域的分布式一致性算法,例如Paxos.Raft,我也称之为老式分

布式一致性算法。

他们之间的最大区别是:系统在拜占庭将军(ByzantineGeneralsProblem)情景下的可

靠性,即拜占庭容错(PBFT算法支持拜占庭容错)。然而无论是Paxos还是Raft算法,

理论上都也许会进入无法表决通过的死循环(尽管这个概率其实是非常非常低的),不过他们

都是满足safety时,只是放松了liveness的规定,PBFT也是这样。

下面是某些老式分布式一致性算法和区块链共识过程的异同点:

相似点:

"1.Appendonly

2.强调序列化

3.少数服从多数原则

4.分离覆盖的问题:即长链覆盖短链区块,多节点覆盖少数节点日志"

不一样点:

”L老式分布式一致性算法大多不考虑拜占庭容错(ByzanetinePaxos除外),即假设所有

节点只发生宕机、网络故障等非人为问题,并不考虑恶意节点篡改数据的问题;

2.老式分布式一致性算法是面向日志(数据库)的,即更通用的状况,而区块链共识模

型面向交易的,因此严格来说,老式分布式一致性算法应当处在区块链共识模型的下面一

层。“

考虑上面的不一样点,结合公有链和联盟链的特性,我们有:

"1.联盟链:半封闭生态的交易网络,存在对等的不信任节点,如房地产行业A、B、C、

D企业。

2.公有链:开放生态的交易网络,这层重要是为行业链和私有链提供全球交易网络,"

由于联盟行业链其半封闭半开放特性,使用DelegatedProofofXXX是可行的,可以考

虑以老式一致性算法作为基础加入拜占庭容错/安全防护机制进行改善也是可以的。

而针对公有链,PoW/Pos/DPos等"经济学"的算法也许是最优算法。

技术上,以上不一样的共识算法,我们诸多新开发区块链都对应时支持一种特性:共识模块

可插拔,以应对不一样场景下R勺规定。

下图是一张未来区块链生态示意图:

封闭的应

用逐端

半开放的

区比价伯

网络

完全开放

的全球价

他网络

(图5)

公有链提供可信可靠的价道传播网络,上面可以继续组建去中心化应用(DAPP)或者布署

联盟链,甚至老式数据库都行,在上层搭建C端应用。

refl:浅谈区块链共识机制与分布式一致性算法-

ref2:从Paxos到拜占庭容错,兼谈区块链的共识协议(转)-

#4.数字资产与价值流通网络

这里有张图:

ref:Metaverse元界白皮书-CN(概要)

“三巨头"中,比特币在"数字货币"处,比特股在"去中心化交易所”附近,以太坊在"去

中心化组织"处。而实际上,区块链和现实的接触点,还在图示位置。

因此区块链仍是一种正在成长日勺少年,结合图5,我们但愿构建一种基础设施完善日勺价值传

播网络,上层应用丰富的区块链生态,仍然需要付出巨大的努力。

下一步目的,是将资产数字化(类比资产证券化),例如我们可以将珍稀物品(艺术品/古

董)数字化、知识产权数字化、票据基金等收益权数字化,将极大的提高市场运作效率,配

置智能合约,甚至人工智能,可编程社会不再是梦想。

Q:还是感觉太抽象,至今都还不能具象化的理解这个区块链,也没找到具象化的解释,费

解???

A:正如区块链这个名词同样,它是被发明出来的,并没有以往B勺概念可以映射到上面,囚

此轻易费解。我们不谈这个概念,我们只需要想想我们的互联网还需要什么。正如比特币白

皮书提到的,一种点对点的现金系统,他使用的前提规定是很低的,不需要注册,不需要

号,一种点对点的网络,只要你用设备接入,那么你就可以使用。区块链这个概念也同样,

目的是构建一种点对点的生态,解构权力带来的不对称。它自身只是一种共享的总账本,不

一样于网络中多节点自己记账,再对账,这就瓦解了中心权力。

Q:区块链技术在互联网身份认证方面怎样应用?

A:这个问题很好。我目前所做的区块链项目是涵盖了这个概念的,也就是你所说的互联网

身份认证。我们认为它是使区块链接入现实业务的必要一环。

在我们的设想中,首先什么是身份?身份不单单是一种ID号,一种密码,而是一种使用者

所有的操作记录集,这个记录集的代号才是身份。正如账户丢失,然后申诉同样,申诉的内

容才是真正定位到你这个人。区块链也同样,它需要同样ID,同样它也需要自动验证你历

史记录B勺合法性。目前互联网的身份认证是依赖公安系统的,最简朴的方案就是把公安系统

中的身份系统映射到区块链中。此外一种方案也是顾客自定义记录集,根据交易历史查对身

份。当然再更远的未来,结合人工智能,区块链也许有更好的体现。

Q:实时交割数据假如放到联盟链中,联盟链的数据与否要最终同步到公有链?按分享所说,

联盟链的数据对公有链来说是不可信任的,联盟链和公有链中数据是什么关系?此处没有理

解,谢谢老师分享!

A:我认为不也许所有机构都乐意把资产放到公有链上的,一定会出现并存的现象。理想的

状况当然完全使用公有链搭建去中心化应用。联盟链和公有链直接的数据是单纯的引用关

系,我认为开放的关键数据集,如顾客身份应当沉淀到公有链,让顾客自己管理,而机构比

较私有的关键数据,应当使用访问权限将它与公有链隔离,因此联盟链的数据和公有链的数

据我认为是互补的。也就是说,联盟链的数据与否要同步到公有链,这个要是视机构自身的

需求而定。此外,公有链的外部数据引用,我们称之为data-feed,这个东西就要把人的原

因引入了,比方说法务,律师

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论