比特币、区块链读书笔记3《区块链:价值互联网的基石》

in #bitcoin7 years ago (edited)

《区块链:价值互联网的基石》读书笔记
书籍封面

作者:赵刚。中国工信出版集团。电子工业出版社。
国际标准书号ISBN:9787121289750

一、区块链的前世
从2015年开始,一个新概念——区块链(Block Chain)在国内开始传播。

区块链最初是比特币的底层技术,是比特币的总账系统。比特币是区块链第一个成功的应用。
(一)发源于数字货币
比特是数字字节(Byte)的译音。比特币就是一种数字货币。
1、比特币的核心引擎
2008年11月1日,中本聪(Satoshi Nakamoto)在密码学讨论组上贴出一篇文章,题目是《比特币:一个点对点(P2P)的电子现金系统》(下载地址:https://bitcoin.org/bitcoin.pdf
或者:https://bitcoincore.org/bitcoin.pdf),阐述了比特币的技术原理。

数字货币,本质上就是电子化的数据。
比特币建立了一个全球共享的分布式账本系统,一个去中心化的、去信任的账本系统,中本聪称之为区块链。
比特币区块,每达到21万个区块,奖励就减半,从50比特币减到25比特币,再从25比特币减到12.5比特币,一直持续下去。到2140年,比特币将会达到预定的2100万枚上限。
2009年1月3日,中本聪成为挖到比特币的第一人,他创建了创世区块,获得50个比特币。中本聪也公布了比特币系统的开放源代码(下载地址: https://github.com/bitcoin/bitcoin)。

2010年5月22日,美国佛罗里达州的程序员拉斯勒•豪涅茨(Laszlo Hanyecz),用10000比特币购买了价值25美元的两块比萨。这是现实世界中的第一笔比特币交易,这一天后来被比特币界确立为比萨日!
2011年2月,比特币继续升值,和美元的兑换率达到了1:1。
2012年6月,1比特币兑换27美元。
2013年11月,比特币价格突破1000美元,最高达到1200美元。

2.扩展到了更多数字货币
比特币不是网上唯一的数字货币,还有以太坊(Ethereum)、莱特币(Litecoin)、瑞波币(Ripple)等其他数字货币(或称为数字代币),这些货币的支撑技术也多少区块链。

(二)认识区块链
1.区块链大事记
起初,区块链仅仅是比特币的分布式账本系统。
2008年,中本聪首次提出区块链的概念。
2009年,第一个区块,被称为“创世区块”诞生,比特币称为区块链的首个应用。
侧链,建立比特币区块链与其他类型区块链之间的连接。

2016年:区块链技术加速发展和传播。

2.给区块链下个定义
区块链是什么?
笔者认为:
首先,区块链是一项技术。从技术上看,区块链是在点对点(P2P)网络上构建的分布式数据库系统,利用非对称加密算法进行加密的每个数据存储单位被称为区块,区块与区块按照时间顺序相连形成的链条,称为区块链。

第二,区块链是一个账务系统。从货币学角度看,区块链是数字货币系统的分布式共享账本系统(Distributed Shared Ledger),一段时间内的账务交易信息被加密打包成一个区块,盖上时间戳,一个个区块顺序链接形成一个账本,这是一个去中心化的、网内用户共同维护的账本系统。

第三,区块链是一种互联网新系统。

(三)区块链:设计精妙的伟大发明
1.解决了拜占庭将军问题
拜占庭将军问题又称为两军问题,是由著名的计算机科学家莱斯利•兰伯特(Leslie Lamport)在1982年提出的。

区块链构建在点对点通信网络(P2P)上,用非对称加密算法和时间戳实现了将军们的“签名转发”机制,保证了区块链无须信任单个节点、却能创建共识网络。
区块链是用纯数学方法来建立各方的信任关系,交易各方信任关系的建立完全不需要借助第三方,建立信任关系的成本几乎降到了零。这也正是区块链的精髓所在!

2.点对点通信网络(P2P¬)是基础
P2P(Peer to Peer)网络是整个区块链的基础计算架构。P2P网络,或者称为对等网络,是一种常用的计算机通信架构。
VeryCd(电驴)就是一个基于P2P网络的互联网服务。P2P网络保障了区块链是一个分布式系统,没有中心枢纽,即所谓“去中心化系统”。

3.区块链是一个“资产账本”

区块(Block)。在区块链中,交易记录数据被以电子化的形式永久存储下来,存放这些记录数据的数据存储单元,称为“区块(Block)”。

区块结构(Block Structure)。每一种区块链的区块设计可能不完全相同,但一般区块的结构都包含区块头(Header)和区块体(Body)两部分。一个区块的区块头包含了关于区块的关键信息,最为重要的一个信息是上一个区块的哈希值(Hash,也称散列值),用于和上一个区块链接起来,它是区块形成“链”的关键。区块头还记录了区块高度(就是区块顺序编号)、本区块的生成时间(时间戳)、本区块中的交易数量、本区块的总交易金额、本区块大小等相关信息,区块头能为整个区块链数据库提供完整性的保护。一个区块的区块体则记录了经过验证的、区块创建过程中所发生的所有交易的记录。
区块结构有两个非常重要的特点。第一,每个区块上的交易记录是上一个区块形成之后、该区块被创建前发生的所有交易活动,这个特点保证了数据库的完整性。第二,在绝大多数情况下,一旦新区块完成并被加入区块链的尾部,则这个区块的数据记录就再也不能被改变或删除。即数据无法被篡改。

区块链就是把区块按照时间顺序连接在一起的链条。

4.密码学的新成就来保证真实、一致和安全
两个著名的密码学算法,一个是SHA-256哈希算法(或散列算法),另外一个是非对称加密算法。
什么是SHA-256哈希算法?SHA是安全哈希算法(Secure Hash Algorithm)的英文缩写,SHA是每个国家安全局(NSA)设计、美国国家标准与技术研究院(NIST)发布的一系列密码哈希函数。哈希算法将任意长度的一串数据转化为一个长度较短、位数固定的输出值,即哈希值(Hash),简单地理解,通过这样的哈希算法“明文”就变成了一个“代码”。SHA—256是SHA算法的一种,它把一串数据转化为0——2256位之间的一个哈希值。它具有以下特点:
首先,每个哈希值是唯一的。
第二,SHA—256生成的哈希值具有不可逆性,也就是不能从哈希值直接解码出之前的原始数据。
第三,SHA—256哈希算法能够保证相同的数据产生相同的哈希值,不同的数据产生不同的哈希值,哪怕只是一个标点符合的不同,哈希值也是不同的。

所以,一串数据的哈希值就可以用来检验数据的完整性。只要数据被改动了,哪怕是一点点蛛丝马迹,经过SHA—256哈希算法都能够辨识出来。SHA——256哈希算法一般被用于快速查找和加密。这样一种机制保证了区块链的完整性和不可篡改性,任何企图篡改区块链的行为,都会立即暴露,因为新的哈希值与旧的哈希值是不匹配的。

什么是非对称加密算法?
简单来说,就是在“加密”和“解密”的过程中,分别使用一个“密钥对”中的两个密钥,如果两个密钥满足以下两个条件:(1)对信息用其中一个密钥加密后,只有用另外一个密钥才能解开;(2)其中一个密钥公开后,根据公开的密钥别人也无法算出另一个,那么我们就称这个密钥对为非对称密钥对,公开的密钥称为公钥,不公开的密钥称为私钥。公钥是全网公开可见的,所有人都可以用自己的公钥来加密一段信息,生成一个哈希值,保证信息的真实性、完整性;私钥是只有信息拥有者才知道的,被公钥加密过的信息只有拥有相应私钥的人才能够解密,保证信息的安全性。常见的非对称加密算法包括RSA、Elgamal、D—H、ECC(椭圆曲线加密算法)、DSA等,比特币区块链是基于椭圆曲线数字签名算法(ECDSA)来实现的。

5.让区块有序链接起来
(1)区块哈希
区块链是按照时间顺序首尾连在一起的,简单地说,交易数据经过加密后形成区块的哈希值,这个哈希值将成为下一个区块的重要标记,表明“我是你的父亲”。这个哈希值会向全网广播出去。每个区块会被标记一个时间,称为“时间戳”。
(2)交易的哈希
每个交易会被一个称为默克尔树(Merkle)的数据结构来进行哈希值计算和存储,但只有根哈希值被记录在区块的哈希值中。
每笔交易都要做一个Merkle哈希,每个哈希值被记录在一个Merkle哈希树上。在一笔比特币被支出后,相应Merkle节点值会发生变化。

比特币的默克尔树结构支持一个叫“简化支付验证(SPA)”的协议,通过协议,一个没有下载完整区块链的客户端,也能够通过向其他节点索要包括从交易哈希沿默克尔树上溯至区链头处的根哈希的哈希序列,以此来快速确认交易输出的正确性。

对于默克尔树的任何部分进行改变的尝试都会最终导致链上某处的不一致。记录的交易是不可篡改的。

6、共识才是源源不断的动力
共识机制就是对区块链的记账权进行集体验证的机制。共识机制有几种,主要是工作量证明机制和股权证明机制,通过工作量或股权的证明,人们能够对记账优先权达成共识。
(1)工作量证明
工作量证明(Proof Of Work,简称POW),是区块链中最难懂的一个部分。简单地说,POW就是一份工作量的证书,它能够说明你为此工作了一定量的时间。
工作量证明的简单原理是,一方(通常为证明人)出示计算结果,这个结果众所周知是很难的。但验证计算结果很容易,通过验证这个结果,任何人都能够确认:证明人确实执行了一定量的计算工作量来产生这个结果。

比特币区块的生成过程中使用了哈希现金程序,比特币区块链采矿工作的方式,要求使用者(即矿工)拼全力找到一个“随机数”,称为Nonce,使得其SHA—256(信息+随机数)算法产生的哈希值以一串零开头,并和上一个区块的哈希值前面的0的数量刚好匹配,然后把找到的随机数与信息一起发送出去,作为工作量证明。

SHA—256算法也被称为单向函数,即其结果很难计算得出,但却很容易验证。

工作量证明如此之难,是为了阻止攻击者轻易伪装成数以百万计的节点,凌驾于比特币网络之上,引入另一个区块链,并推翻之前的交易,引入新的交易。要达到这样的目的,任何想要攻击比特币网络的人,都必须完成极其巨量的SHA—256运算,这样做的成本根本不划算。

POW确保只有合法的区块才能加进来。一旦一个基于哈希算力的POW的难题被求解了,矿工获得记账权,区块经过验证后链接到区块链中,就会永久地存储起来,任何人或机器都无法修改。而每个区块的合法性验证包括了对其中的所有交易的合法性检验和区块之间数据关联性规则的检验。只有第一个完成这个难题的矿工节点才能把新的区块加入区块链中。区块链网络为每次成功加入新区块的矿工节点奖励一定数量的代币,作为支付其哈希算力的报酬。新的区块被加入后,拥有完整数据的全节点即向网络中的其他节点通知更新本地的数据库。区块链就这样按照时间顺序和交易持续增加。

(2)股权证明(Proof of Stock)
股权证明(Proof of Stock,简称POS)要求证明人提供一定数量的加密货币的股权。在POS机制中,记账权随机地在全网产生,获得记账权的概率和每个矿工钱包中的代币持有量成正比。
(3)POW和POS的经济学比较

(4)股权代表证明机制(DPOS)
股权代表证明机制(Delegate Proof of Stock),相当于股东代表大会。

7.开发源码的自治系统

8.区块链持续衍生
(1)运行原理
第一步:新的交易广播给P2P网络上所有的节点。
第二步:每个节点把收到的一个时间段内多有新的交易信息打包,做哈希运算,盖上时间戳,记入区块(Block),一般是每10分钟挖出一个区块。
第三步:为了给它的区块竞争记账权,每个节点努力工作以提交工作量证明,也就是解决SHA—256问题。
第四步:如果一个矿工节点解开了这10分钟的SHA—256难题,就找到了工作量证明,赢得了这个区块的记账权,他将向全网所有节点广播这个区块,包括所有交易信息,并由全网其他矿工节点验证。
第五步:如果区块中所有交易是有效的,节点接受这个区块。它被链接到区块链的尾部。一般来说,每一笔甲乙,必须经过6次区块确认,也就是6个10分钟记账,才能最终在区块链上被承认是合法交易。每个比特币区块前4年每个奖励50个比特币。4年后每个区块奖励25个比特币。
第六步:所有节点转向创造下一个区块,也表示大家都接受了当前这个区块。被接受区块的哈希值,将作为父区块的哈希值记录在下一个区块的区块头中。
(2)矿工的计算节点
a.区块链的系统守护进程(Block Chain Daemon)
b.网络路由程序(Routing node)
c.接口应用
d.区块链数据库。
(3)挖矿算力的集中

矿工自发集结起来,建立矿池。矿池是一个矿组队挖矿的服务器。

(四)区块链价值与货币金融的创新
1.发行区块链的应用价值
去中心化、去信任。
分布式共享。
真实记录交易历史。
一切资产可编程。
构建分享经济的新秩序。
2.去中心化、去信任

3.分布式共享
4.真实记录历史
5.一切资产的智能化管理
6.构建分享经济的新秩序
7.货币金融应用仅仅是开始
8.比特币创新应用
(五)比特币区块链并不完美
1.交易效率低和交易确认时间长的问题
比特币每秒处理笔数的峰值一般小于7。
当前比特币交易的一次确认时间平均大约是10分钟,这也是一个区块的生成时间,6次确认的情况下,需要等待约1小时。
2.高耗能问题
3.技术性能问题
区块链容量问题。
4.安全性问题
5.与货币金融体系融合的问题
6.比特币区块链的升级和完善

二、区块链的今生
(一)从数字货币到智能合约
以太坊为代表的第二代区块链(区块链2.0)
1.更多数字化资产的区块链

资产的智能化转移是通过区块链和智能合约来实现的。

2.智能合约让资产转移自动化

3.以太坊:打造智能合约共同平台
以太坊(Ethereum):一个以区块链为基础的智能合约公共平台。

以太坊创始人Vitalik Buterin,出生于1994年。2013年11月,他发布了以太坊的白皮书的最初草稿。2014年8月,以太坊项目启动,向全世界发起众筹。
(1)什么是以太坊
以太坊就是第二代区块链技术平台,一个运行智能合约的基础平台,一个所有智能合约都能按照程序精确运行的“图灵完备”的平台。智能合约应用,也被称为去中心化应用(Dapp)。
出中心化自治组织(DAOs)、去中心化自治公司(DACs)。
(2)背景
以太坊希望建立一个不同于比特币区块链,创造密码货币学2.0时代的平台。
(3)以太坊的优越特性

(4)以太坊的体系架构
以太坊是新一代的智能合约平台,它提供了自己的智能合约脚本、脚本编程语言、虚拟机(EVM)运行平台、通信系统(细语系统—Whisper)、信息管理系统(蜂群系统—Swarm)、星际文件系统(IPFS)以及去中心化浏览器(Mist)等,以支持去中心化应用(DApp)的开发和运行。
从功能角度而言,可以将以太坊生态系统分成三层,核心层、应用层和外围辅助层。
核心层:点对点网络、虚拟机、智能合约、密钥、区块链、脚本编程语言和开发环境、以太币、技术整合和中间件服务。
应用层:客户端浏览器软件(Mist或者AlethZero)、挖矿、监控服务、去中心化应用和其他第三方应用。
外围辅助层:维基、论坛、以太坊学院、门户网站、赏金激励、潜在开发者的会议、教育、研究、学习和服务支持等。
(5)以太坊虚拟机
以太坊虚拟机是以太坊的运行环境,它是以太坊的“发动机”。
(6)以太坊区块链
以太坊区块链是智能合约的分布式记账系统。
(7)智能合约的脚本
以太坊是一个智能合约平台,是智能合约执行的引擎。

(8)编程语言
以太坊的软件编程语言:Serpent(受Python语言启发)、Solidity(受JavaScript脚本语言启发)、Mutan(受Go语言启发)和LLL(受Lisp语言启发),都是为面向智能合约编程而从底层开始设计的语言。

Solidity是以太坊的首选脚本语言。
(9)共识机制
工作量证明是以太坊目前所选择的共识机制,但是以太坊声称将进化到更加节省能源的共识机制——股权证明。

(10)以太币
以太币(Ether)的设计,主要目的不是用于商品或服务的货币支付。以太币更像是一种“加密燃料”形式的奖励,用于支付运行各种去中心化应用和以太坊服务所需要的运营费用。以太币类似于云计算服务费用。

(11)去中心化应用
一个DApp是由智能合约和客户端代码构成的。

(12)客户端浏览器
这个浏览器称为Mist,它是以太坊的终端用户的接口,将区块链技术展示给用户。
Mist是普通用户运行或者管理区块链去中心化应用不可或缺的工具。
你可以在Mist中使用DApp。
(13)几个应用案例

(14)生态系统建设

(二)整合优化区块链的新旧体系
1.侧链:将其他区块链挂接到比特币区块链
侧链:即建立一种能够挂钩比特币区块链的“侧链”。简单地说,就是建立比特币账本的一个副本,就像以前许多法定货币由黄金担保一样。在需要的时候,资产可以在两个区块链之间相互转换。
(1)侧链的提出
侧链能够实现比特币和其他区块链资产在多个区块链之间的转移,即跨链交易。
(2)侧链的工作原理
(3)商业化应用侧链Liquid
2015年10月13日,Blockstream公司宣布将推出第一个商业化应用侧链Liquid。

2.闪电网络:创建比特币区块链外的微支付渠道

3.合约币:在比特币区块链上构建以太坊
4.瑞波币:去中心化的支付清算网络
瑞波币系统是基于区块链技术的分布式支付清算系统。
5.公证通:让区块链真实地记录一切
公证通(Factom)是一个建立在比特币区块链上的重要数据记录平台。
6.彩色币:将比特币区块链应用扩展到数字资产

(三)传统力量的“推波助澜”
1.超级账本项目:推进区块链开源
超级账本项目(Hyperledger Project):意图打造新一代开源的区块链平台。
2.非区块链的分布式账本(Corda):保守的改进
(四)区块链生态系统的演变

1.公有区块链(Public Blockchains)
公有区块链是指全世界任何人都可读取区块信息、任何人都能发送交易信息且交易能够获得有效确认的、任何人都能参与共识过程的区块链。
2.私有区块链(Private Blockchains)
(1)联盟(合作伙伴)区块链(Consortium/Partner Blockchains)
(2)公司私有区块链(Intra Blockchains)
(3)开发者沙盘(Fully Private Blockchains)
即完全私有的区块链。

(五)区块链在数字金融资产中的应用
1.区块链在银行业的应用
Abra是一架比特币汇款APP公司。
2.区块链在证券及投资市场的应用

3.区块链在保险行业的应用

4.区块链在实物资产管理中的应用

5.区块链在无形资产保护方面的应用
(1)知识产权保护
(2)音乐版权保护
(3)数字艺术资产保护

6.应用的障碍

(六)区块链产业生态
Blockstream是亚当•贝克(Asam Back)等人的创业项目,他们发明了侧链和闪电网络。
Coinbase。比特币交易所。
OKcoin。比特币交易所。
Blockchain。比特币交易所。
Bitpay。比特币支付平台。
Abra比特币汇款应用APP公司。
Sia。比特币存储。
BitShares。数字资产交易。
Everledger。钻石区块链。

中国的区块链创业项目
巴比特。区块链的新闻网站。
币看。比特币信息服务平台。
OKcoin。比特币交易平台。
火币网。比特币交易平台。
币付宝。比特币管理平台。
小蚁。区块链技术服务平台。

三、区块链的未来
(一)划时代的意义
1.区块链是建立价值互联网的基础平台
第一代互联网TCP/IP协议的建立让整个社会的信息实现了自由传递。
区块链通过建立分布式账本,让信用去中心化,称为一个创造信任的机器。
2.区块链是支撑万物互联的万物账本。
万物互联网(Intenet of Everything)
万物账本(Ledger of Everything)
3.区块链是大数据时代的数据资产流通的关键支撑。

4.区块链是驱动分享经济发展的新引擎。
5.区块链是建立社会治理新体系的创新方法。
(二)新的计算架构
1.构建新一代互联网体系

区块链技术首次在互联网上建立了“信任”。
2.区块链即服务(BaaS)
区块链即服务(Blockchain as a Service,简称BaaS)。
3.去中心化应用(DApp)
DApp有四个特点:
一是以开放源码为开发模式。
二是以共识机制为制度保障。
三是以区块链为基础平台。
四是以加密代币为动力燃料。

(三)新的治理机制
1.信任的机制
2.共识的机制
3.契约的机制
4.开放共享的机制
5.安全的机制

(四)新的组织形式
1.区块链将改变企业组织
2.去中心化自治组织
3.区块链的辩证法

(五)新的商业模式:区块链定义世界
1.区块链平台模式

2.DApp应用的分享经济服务模式

3.区块链代币金融模式

4.区块链解决方案服务模式
5.区块链数据服务模式
(六)新应用不断涌现
区块链健康、
区块链能源(电网、新能源汽车)、
区块链与互联网管理(域名管理:namecoin公司。身份认证。社交网络。分布式存储。)
数据资产的区块链、
物联网的区块链
区块链在政府的应用
区块链商务(OpenBazaar)、
区块链物流、
区块链教育(慕课MOOC)、
区块链公益、
文化遗产的“记忆”、
区块链公证事实、
区块链预测未来(Augur)。