μ译林——【NIST区块链技术综述】系列连载01

in cn •  6 years ago 

翻译:子轩 校对:Neo MA

2018年8月,美国国家标准与技术研究院(NIST)发布了"Blockchain Technology Overview"一文,较为全面、客观地梳理了区块链技术。文章颇具价值,μNEST将其译成中文,以飨读者,并用十期进行系列连载。本期为系列连载的第一期。

1导言

区块链是分布式潮流(换言之,没有中心化存储)中的一种防篡改数字账本,通常也不存在中心化的权力机构(如银行、企业或政府)。区块链可以保证一个社区内的使用者在一个共享账本上记录交易信息,这就保证了区块链网络正常操作下交易记录一旦在链上发布便无法更改。2008年,区块链的想法结合多种其他技术和计算理念,创造了现代加密货币:由密码学技术而非中心化存储或权力机构保护的电子现金。

2009年,区块链技术因第一个现代加密货币——比特币网络的运行而被大众熟知。在比特币和其他类似系统中,代表电子现金流通的数字信息的转移发生在了分布式系统。比特币用户利用数字签名将那些信息的所有权转给其他用户,而比特币区块链将公开地记录这些交易,这使得网络中所有的参与者都可以独立地验证这些交易的合法性。比特币区块链被独立的分布式参与者共同维护和管理。同时,借助密码学技术,区块链能够有效防止通过修改区块或伪造交易记录而更改账本的行为。区块链技术使得类似比特币、以太坊这样的加密货币系统得以蓬勃发展。正因如此,区块链技术通常被看作是绑定比特币或其他加密货币的解决方案而已。然而这项技术拥有广阔的应用场景,不同领域均处在积极探索中。

区块链是基于密码学技术和分布式系统上的、结合众多技术的复杂综合体,真正弄懂区块链并非易事。为了更好地理解复杂的区块链系统,可以对其组成要素进行简化。因此,我们可以这样定义区块链:

区块链是分布式的数字账本,所有交易记录通过密码学签名的方式打包储存在区块上。每个区块被验证后通过密码学技术连接到前一个区块上,而这也组成了链上的共识决定。随着新块的不断上链,老的区块越来越难被更改。新块在分布式网络内被复制拷贝,而任何冲突都会根据共识规则被自动解决。

1.1背景和历史

区块链技术的核心理念早在上世纪80年代末、90年代初就已经萌芽了。1989年,Leslie Lamport开发了Paxos协议,并于1990年向ACM TOCS(美国计算机学会计算机系统汇刊)提交了论文“兼职议会(The Part-Time Parliament)”,该文章最终于1998年登刊。文章提出了共识模型的概念,用来实现一个计算机网络在计算机或者网络本身不稳定的情况下达成共识。1991年,一串带有签名的链式信息被用做存储数字签名文本的电子帐本,这样就可以很容易证明,所有收集到的签名都没有被改动。2008年,一个化名为中本聪的人在他的论文:比特币—— 一个点对点的电子现金系统,结合并应用了上述构想,并于次年搭建了比特币区块链网络。尽管存在差异性,中本聪的文章涵盖了绝大多数现代加密货币的设计蓝图。比特币仅仅是诸多区块链应用中的第一个而已。

许多电子现金的设计构想早于比特币(例如,ecash,NetCash),但没有一个被如此大规模地使用。区块链的使用使比特币在实现中没有任何人可以单独控制这些电子现金,而且也消除了单点故障问题,这促成了比特币的使用。最显而易见的优势是,用户在不需要第三方信任中介下可以直接实现转账交易。相应的,它给那些产生新块并维护账本副本的用户发放新的加密货币,这些用户在比特币中被称为“矿工”。用定义好的方式规定了新加密货币的发行。矿工报酬的自动支付也保证了分布式系统的自治。通过运用区块链和维护共识机制,自治系统被创建出来并确保仅有效的交易和区块才能上链。

比特币世界中,区块链确保了用户的匿名性,但账户ID和所有交易是公开可见的。由于开户并不需要任何的身份信息或验证程序(现实世界一般需要KYC程序),比特币可以提供一定的隐匿性。

既然比特币是匿名的,在一个用户身份无法被轻易识别的环境中建立信任机制就显得尤为重要。在区块链技术使用之前,信任的传递通常有赖于被交易双方同时认可且信任的媒介。在没有可信任的媒介的情况下,下述区块链技术的四个关键特征确保了区块链网络内必要的信任:

账本(Ledger):只可追加的账本技术将记录所有历史交易。不同于传统的数据库,区块链中的交易和数值不可撤销。

安全(Secure):区块链通过密码学技术保证安全,防止了账本中的数据被篡改,保证了账本中数据的可证性。

共享(Shared):账本可以在众多参与者之间共享,保证了区块链网络内各节点参与者的透明化。

分布式(Distributed):区块链是分布式的,可以通过对区块链网络内节点数量的增加,更有效地抵御恶意攻击。随着节点数量的增加,恶意行动者破坏共识协议的能力也随之减弱。

那些允许任何人匿名在无需预先认识无需互相信任的前提下创建账户并加入的区块链网络称之为无许可区块链(即,公链)。公链提供的信任可以确保个体或组织更快速、更低成本的实现直接交易。而那些严格控制接入网络的区块链网络称之为许可链(例如,联盟链),他们在此之前就已经建立了信任,许可链可以巩固这种信任。

1.2目的和范围

本文从基础技术视角,对区块链技术进行了综述。它着眼实施路径的不同分类。它讨论了区块链技术的不同组成部分,并辅以必要的图表和实例。它从一个高纬度讨论了区块链网络中常用的共识模型。它也回顾了区块链技术的发展(如分叉)对区块链网络的影响。它提供了一些关于区块链技术如何从可验证交易的范畴不断发展到涵盖可验证应用程序(其中智能合约最为著名)的细节。它也涉及了目前关于区块链技术的局限和曲解。最后,本文档列举了几个可以探索区块链技术的领域。我们尝试帮助读者理解组成区块链网络的这些技术发展。

1.3术语注释

区块链技术的专业术语因具体实施情况而大相径庭。但在谈论技术的时候,有些术语是通用的。下列术语的使用在本文贯穿始终:

区块链(Blockchain)——实际的账本

区块链技术(Blockchain technology)——描述技术的通用名词

区块链网络(Blockchain network)——使用区块链的网络

区块链实现(Blockchain implementation)——一个特定的区块链

区块链网络用户(Blockchain network user)——使用区块链网络的个人、组织、实体、商业、政府等

节点(Node)——区块链网络内的单个系统。

全节点:储存整个区块链的节点,确保交易有效。

发布节点:全节点也可以发布新块。

轻量级节点:不储存或维护区块链的全备份,交易时必须与全节点交互。

1.4文档结构

文档剩余部分将以如下顺序呈现:

第二部分 讨论区块链技术的一般分类:无许可区块链和许可链

第三部分 定义区块链网络架构中的组成,包括哈希,交易,账本,区块以及区块链

第四部分 讨论区块链技术中常用的几种共识模型

第五部分 介绍分叉的概念

第六部分 讨论智能合约

第七部分 讨论有关区块链技术的局限和误解

第八部分 讨论区块链应用不同的可能性,尤其从政府、学者和技术爱好者的视角。

第九部分 结论

附录A 本文用到的术语与缩略词表

附录B 本文用到的一些术语的定义、解释

附录C 参考索引

联系我们

homepage.png
Homepage:iotee.io

facebook.png
Facebook:NESTchain

twitter.png
Twitter:@miuNEST

telegram.png
Telegram:@miuNEST

reddit.png
Reddit:r/miuNEST

medium.png
Medium:r/miuNEST

steemit.png
Steemit:μNEST

公众号二维码.png
微信公众号二维码

小助手二维码.gif

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

拜读了。谢谢分享!