区块链之前世今生

2018-04-08作者:黄步添, 蔡亮, 编著编辑:Solomon

互联网领域最知名的“预言家”凯文·凯利在《失控》一书中指出,未 来世界的趋势是去中心化的。亚当·斯密的“看不见的手”就是对市场去中 心化本质的一个很好的概括。点与点之间直线距离最短,人与人之间沟通的 最佳模式也应该是直接沟通,无论从哪个方面切入,去中心化的市场本质都 是无可辩驳的。


我们可能正面临一场革命的晨曦,这场革命始于一种新的、边缘的互 联网经济。世界经济论坛(即达沃斯论坛)创始人克劳斯·施瓦布(Klaus Schwab)说:“自蒸汽机、电和计算机发明以来,人们又迎来了第四次工 业革命——数字革命,而区块链技术就是第四次工业革命的成果。”区块链 作为下一代的可信互联网,必将颠覆所有在其之上的业务,让整个基于互联 网的企业、生态、产业链彻底做一次变革创新。


马云曾经说过:“很多人还没搞清楚什么是 PC 互联网,移动互联网来了, 我们还没搞清楚移动互联的时候,大数据时代又来了。”现在,我们是否可 以 在 后 面 加 上 一 句 :“ 人 们 还 没 搞 清 楚 大 数 据 是 什 么 , 区 块 链 又 来 了 。 ” 威 廉 · 吉 布森曾说过:“未来已经发生,只是尚未流行。”相信区块链技术能够引领 未来 5 ~ 10 年的计算机和互联网领域的发展,我们已隐约能听见不远的未来, 由区块链技术掀起的革命的滚滚风雷。首先感谢清华大学出版社的大力支持,才会促成本书的出版。本书全面 阐述了区块链的技术原理、应用场景,以及未来的发展方向。


asda.jpg


一、比特币

1.1  产生背景

比特币(Bit Coin)的概念最初是由中本聪a在2008年发表的论文《比 特币:一种点对点的电子现金系统》[1]中提出的。这种电子现金系统起始于 按中本聪的思路设计、发布的开源软件及建构于其上的P2P(Peer to Peer) 网络。比特币是一种P2P形式下的数字货币。点对点的传输意味着一个去中 心化的支付系统。


与大多数货币不同,比特币不依靠特定的货币机构发行,它依据特定 算法,通过大量的计算产生。比特币经济是指通过使用整个P2P网络中众多 节点构成的分布式数据库来确认并记录所有的交易行为,并使用密码学的设 计来确保货币流通中各个环节的安全性。P2P的去中心化特性与算法本身可 以确保任何人都无法通过大量制造比特币来人为操控币值。基于密码学的设 计可以使比特币只能被真实的拥有者转移或支付,同时确保了货币的所有权 与流通交易的匿名性。比特币与其他虚拟货币最大的不同是其总数量非常有限,具有极强的稀缺性。该货币系统曾在4年内只有不超过1050万个,之后 的总数量将被永久地限制在2100万个。


1.2  技术原理

比特币网络通过随机哈希值为全部交易加上时间戳,将它们合并入一个 不断延伸的、基于随机哈希值的工作量证明(Proof of Work)链条作为交易 记录,除非重新完成全部的工作量证明,否则形成的交易记录将不可更改。 最长的链条不仅将被作为观察到的事件序列(Sequence)的证明,而且被看 做是来自CPU计算能力最大的池(Pool)。只要大多数的CPU计算能力都没 有打算联合起来对全网进行攻击,那么诚实的节点将会生成最长的、超过攻 击者的链条。


    1、交易

交易是比特币系统中最重要的部分。系统中任何其他部分都是为确保 比特币交易可以被生成,能在比特币网络中得以传播和通过验证,并最终被 添加至全球比特币交易总账本(比特币区块链)。比特币交易的本质是数据 结构,这些数据结构中存放的是货币所有权的流转信息,所有权登记在比特 币地址上。表1-1给出了比特币交易记录的详细结构。这些信息是全网公开 的,以明文形式存储(比特币系统里的所有数据都是明文),只有当需要转 移货币所有权时,才需要用私钥签名来验证。


一枚电子货币是这样的一串数字签名:每一位所有者通过对前一次交易 和下一位拥有者的公钥(Public Key)签署一个随机哈希的数字签名,并将 这个签名附加在这枚电子货币的末尾,电子货币就发送给了下一位所有者, 而收款人通过对签名进行检验,就能够验证该链条的所有者。该过程的问题在于,收款人将难以检验之前的某位所有者是否对这枚电

子货币进行了双重支付。通常的解决方案是引入可信的第三方权威,或者类 似于造币厂的机构,来对每一笔交易进行检验,以防止双重支付。在每一笔 交易结束后,这枚电子货币就要被造币厂回收,同时造币厂将发行一枚新 的电子货币;而只有造币厂直接发行的电子货币才算作有效,这样就能够 防止双重支付。该解决方案的问题在于,整个货币系统的命运完全依赖于 运作造币厂的公司,因为每一笔交易都要经过该造币厂的确认,它就像是 一家银行。


我们需要收款人能够采取某种方法,来确保之前的所有者没有对更早发 生的交易实施签名。从逻辑上看,为了达到目的,实际上需要关注的只是本 次交易之前发生的交易,而不需要关注这笔交易发生之后是否会有双重支付 的尝试。为了证明某一次交易是不存在的,唯一的方法就是获悉之前发生过 的所有交易信息。在造币厂模型里,造币厂获悉所有的交易,并且决定交易 完成的先后顺序。如果想要在电子系统中排除第三方中介机构,那么交易信 息就应当公开宣布[2]。这就需要整个系统内的所有参与者,都有唯一公认的 历史交易序列。收款人需要确保在交易期间绝大多数的节点都认同该交易是 首次出现。


    2、区块

在比特币网络中,数据以文件的形式被永久记录,这些记录称之为区 块。一个区块是一些或所有最新比特币交易的记录集,且未被其他先前的区 块记录。可以把区块想象为一个股票交易账本。在绝大多数情况下,新区块 一旦被加入到记录的最后(在比特币中的名称为块链),就再也不能改变或 删除。每个区块记录了它被创建之前发生的所有事件。

区块主要由两部分构成,即块头和块体。块头用于链接到前面的块并 且为区块链数据库提供完整性的保证,块体包含了经过验证的、块创建过程 中发生的价值交换的所有记录。具体地讲,每个数据区块包括神奇数、区块 大小、区块头部信息、交易计数、交易详情6部分。


区块头中记录了版本号、父区块哈希值、Merkle根哈希、时间戳、难 度目标、随机数(Nonce)等信息,具体的结构如表1-3所示[4]。随机数 (Nonce)是一个挖矿难度的答案,该答案对于每个区块都是唯一的。新 区块如果没有正确的答案,是不能被发送到网络中的。“挖矿”过程的本 质是在竞争中“解决”当前区块,即确认该区块的记账权。每个区块中的 数学问题难以解决,但是一旦发现了一个有效解,其他网络节点很容易验 证这个解的正确性。对于给定的区块可能有多个有效解,但对于要解决的区 块来说只需要一个解。每解决一个区块,都会得到新产生的比特币奖励,因 此每个区块包含一个记录,记录中的比特币地址是有权获得比特币奖励的地 址。这个记录被称为生产交易或者Coinbase交易,它经常是每个区块的第一笔交易。


区块哈希值更准确的名称应该是区块头哈希值,通过SHA-256算法对区 块头进行二次哈希运算得到。区块哈希值可以唯一、明确地标识一个区块, 并且任何节点通过简单地对区块头进行哈希运算都可以独立地获取该区块的 哈希值。但是,区块哈希值实际上并不包含在区块的数据结构里,不管该区 块是在网络上传输,还是它作为区块链的一部分被存储在某节点的永久性存 储设备上时。实际上区块哈希值是当该区块从网络中被接收时,由每个节点 计算出来的。区块的哈希值可能会作为区块元数据的一部分被存储在一个独 立的数据库表中,以便于索引和更快地从磁盘中检索区块。


由于每一个区块的块头都包含了前一区块的哈希值,这就使得从第一个 区块至当前区块连接在一起后形成一条长链,即比特币区块链。第一个区块 由中本聪在北京时间2009年1月4日02:15:05创建,该区块也被称为 “创世 区块”(Genesis Block)[5]。新版本的比特币系统将它设定为0号区块,而 旧版本的比特币系统设定它的序号为1。它是比特币区块链里所有区块的共 同祖先,这意味着从任一区块循链向前回溯,最终都将到达创世区块。每一 个节点都“知道”创世区块的哈希值、结构、被创建的时间和里面的一个交 易。因此,每个节点都把该区块作为区块链的首区块,从而构建成了一个安 全的、可信的区块链的根。


    3、时间戳服务器

比特币的本质是构造了一个永不停息、无坚不摧的时间戳系统。时间 戳服务器通过对以区块形式存在的一组数据实施随机哈希运算,并加上时间 戳,然后将该随机哈希值进行广播,就像在新闻或世界性新闻网络组的发帖 一样[6],如图1-3所示。显然,该时间戳能够证实特定数据必然于某特定时刻 是的确存在的,因为只有在该时刻存在了,才能获取相应的随机哈希值。每 个时间戳应当将前一个时间戳纳入其随机哈希值中,每一个随后的时间戳都 对之前的一个时间戳进行增强,这样就形成了一个链条。


    4、双花问题

加密数字货币和其他数字资产一样,具有无限可复制性的缺陷,例如同 一个文件可以通过附件的形式保存并发送任意多次。如果没有一个中心化的 机构,人们无法确认一笔数字现金或资产是否已经被花掉或提取。为了解决 “双花”问题,可以通过可信赖的第三方机构保留交易总账,从而保证每笔 现金或资产只被花费或提取过一次。在区块链中,每一个区块都包含了上一 个区块的哈希值,从创始区块开始链接到当前区块,从而形成块链。每一个 区块都要确保按照时间顺序在上个区块之后产生,否则前一个区块的哈希值 是未知的。同时,由于区块链中所有交易都要进行对外广播,所以只有当包 含在最新区块中的所有交易都是独一无二且之前从未发生过,其他节点才会 认可该区块。因此在区块链中,要想“双花”会非常困难。


    5、拜占庭将军问题

拜占庭将军问题[10]是一个共识问题,其核心描述的是军中可能有叛徒, 却要保证进攻的一致。由此引申到计算领域,发展成为一种容错理论。随着 比特币的出现和兴起,这个著名的问题又重新进入大众视野。

关于拜占庭将军问题,一个简易的非正式描述如下:拜占庭帝国想要进 攻一个强大的敌人,为此派出了10支军队去包围这个敌人。这个敌人虽不比 拜占庭帝国强大,但也足以抵御5支常规拜占庭军队的同时袭击。基于一些 原因,这10支军队不能集合在一起单点突破,必须在分开的包围状态下同时 攻击。他们中的任意一支军队单独进攻都毫无胜算,除非有至少6支军队同时袭击才能攻下敌国。他们分散在敌国的四周,依靠通信兵相互通信来协 商进攻意向及进攻时间。困扰拜占庭将军们的问题是,他们不确定军队内 部是否有叛徒,而叛徒可能擅自变更进攻意向或者进攻时间。在这种状态 下,拜占庭将军们能否找到一种分布式的协议来让他们能够远程协商,从而 赢取战斗?


如果每支军队向其他9支军队各派出一名信使,那么就是10支军队每支 派出了9名信使,也就是在任何一个时间有总计90次的信息传输。每支军队 将分别收到9封信,每一封信可能写着不同的进攻时间。此外,部分军队会 答应超过一个的攻击时间,故意背叛发起人,因此他们将重新广播超过一条 的信息链。这使得整个系统迅速变质成不可信的信息和攻击时间相互矛盾的 纠结体。


比特币通过对这个系统做一个简单的修改并解决了这个问题,它为发 送信息加入了成本,这降低了信息传递的速率,并加入了一个随机元素以保 证在同一个时间只有一支军队可以进行广播。它加入的成本是“工作量证 明”,这是基于计算一个随机哈希的算法。


    6、工作量证明

为了在点对点的基础上构建一组分散化的时间戳服务器,仅仅像报纸 或世界性新闻网络组一样工作是不够的,我们还需要一个类似于亚当·柏克 (Adam Back)提出的哈希现金机制[11]。在进行随机哈希运算时,工作量证 明机制引入了对某一个特定值的扫描工作,比如在SHA-256下,随机哈希值 以1个或多个0开始。随着0的数目的增加,找到这个解所需要的工作量将呈 指数增长,但是检验结果仅需要一次随机哈希运算。


假设在区块中补增一个随机数,这个随机数要能使该给定区块的随机哈 希值出现所需的那么多个0。通过反复尝试来找到这个随机数,直到找到 为止,这样就构建了一个工作量证明机制。只要该CPU耗费的工作量能够 满足该工作量证明机制,那么除非重新完成相当的工作量,否则该区块的信息是不可更改的。由于之后的区块是链接在该区块上的, 所以想要更改该区块中的信息,就需要重新完成之后所有区块的全部工 作量。


同时,该工作量证明机制还解决了在集体投票表决时,谁是大多数的问 题。如果决定大多数的方式是基于IP地址的,一个IP地址一票,那么如果有 人拥有分配大量IP地址的权力,则该机制就被破坏了。而工作量证明机制的 本质则是一个CPU只能投一票。“大多数”的决定表达为最长的链,因为最 长的链包含了最大的工作量。如果大多数的CPU为诚实的节点控制,那么诚 实的链条将以最快的速度延长,并超越其他的竞争链条。如果想要对已出现 的区块进行修改,攻击者必须重新完成该区块的工作量,外加该区块之后所 有区块的工作量,并最终赶上和超越诚实节点的工作量。


另一个问题是,硬件的运算速度在高速增长,且节点参与网络的程度会 有所起伏。为了解决这个问题,工作量证明的难度将采用移动平均目标的方 法来确定,即难度根据预设的每小时生成区块的平均速度来调整。如果区块 生成的速度过快,那么难度就会提高。


二、区块链


2.1、区块链是什么

区块链是一种去中心化的、不可篡改的、可信的分布式账本,它提供 了一套安全、稳定、透明、可审计且高效的记录交易以及数据信息交互的方式。

(1)高度安全,不可篡改的分布式账本。

(2)存在于互联网,向所有用户公开。 

(3)帮助人与人、物与物之间实现点对点的交易和互换。 (4)无需第三方的介入即可完成价值的交换。


区块链可以存储数据,也可以运行应用程序。目前区块链技术主要应用 在存在性证明、智能合约、物联网、身份验证、预测市场、资产交易、文件 存储等领域,如图1-13所示。随着区块链技术的快速演变,新的技术在不断 结合,从而创造出更有效的应用解决方案。


2.2、区块链历史


    1、重要里程碑

2008年,化名为中本聪的人发表了论文《比特币:一种点对点的电子现 金系统(Bitcoin: A Peer-to-Peer Electronic Cash System)》,首次提出 了区块链的概念。


2009年,比特币开始在一个开源的区块链上运行,这是人类历史上的第 一个区块链。比特币是区块链的首个应用。


2012年,瑞波(Ripple)系统发布,利用数字货币和区块链进行跨国转账。


2013年9月,美卡币(MEC)区块链发生断裂,在数据更新中断1天 后,发布了新版本,重新接回一条区块链,艰难复活。


2014年4月,奥斯汀·希尔(Austin Hill)和亚当·贝克(Adam Back)披露,开始在比特币区块链的基础上打造侧链(Sidechain);5月, Storj宣布将采用区块链技术为客户提供去中心化的存储服务;6月,搜索引 擎DuckDuckGo接入区块链查询;8月,Coinbase收购区块链信息浏览服务 商Blockr.io,区块链API服务提供商Chain获950万美元A轮投资;10月, Tilecoin团队发布首个集成区块链技术的物联网实验设备。


2015年,大量银行和传统金融机构开始测试区块链技术,包括在内部系 统上使用比特币区块链系统和瑞波币系统。


    2、发展历史

Melanie Swan在其著作Blueprint for a New Economy中将区块链的应用 范围划分成3个层面,分别称其为区块链1.0、2.0和3.0。


(1)区块链1.0:可编程货币

区块链技术伴随比特币的产生而产生,其最初的应用范围完全聚集在数 字货币上。比特币的出现第一次让区块链进入了大众视野,而后产生了莱特 币、以太币、狗狗币等“山寨”数字货币。可编程货币的出现,使得价值在 互联网中直接流通成为可能。区块链构建了一种全新的、去中心化的数字支 付系统,随时随地进行货币交易、毫无障碍的跨国支付以及低成本运营的去 中心化体系,都让这个系统变得魅力无穷。这样一种新兴数字货币的出现, 强烈地冲击了传统金融体系。


(2)区块链2.0:可编程金融

受到数字货币的影响,人们开始将区块链技术的应用范围扩展到其他金融领域。基于区块链技术可编程的特点,人们尝试将“智能合约”的理 念加入到区块链中,形成了可编程金融。有了合约系统的支撑,区块链的 应用范围开始从单一的货币领域扩大到涉及合约功能的其他金融领域。彩 色币、比特股、以太坊、合约币等新概念的出现,让区块链技术得以在包 括股票、清算、私募股权等众多金融领域崭露头角。目前,许多金融机构都开始研究区块链技术,并尝试将其运用于现实,现有的传统金融体系正在被颠覆。


(3)区块链3.0:可编程社会

随着区块链技术的进一步发展,其“去中心化”功能及“数据防伪” 功能在其他领域逐步受到重视。人们开始认识到,区块链的应用也许不仅局 限在金融领域,还可以扩展到任何有需求的领域中去。于是,在金融领域之 外,区块链技术又陆续被应用到了公证、仲裁、审计、域名、物流、医疗、 邮件、鉴证、投票等其他领域中来,应用范围扩大到了整个社会。在这一应 用阶段,人们试图用区块链来颠覆互联网的最底层协议,并试图将区块链技 术运用到物联网中,让整个社会进入智能互联网时代,形成一个可编程的 社会。


借鉴Melanie Swan的思路,区分了区块链1.0、2.0和3.0,但其实这3个 层面并非区块链技术发展程度上的变化,而仅仅是应用范围的逐步扩展。区 块链技术本身在所有的应用中均有体现,发挥了各自领域应有的作用。


2.3、分叉问题

因为区块链是去中心化的数据结构,所以不同副本之间不能总是保持一 致。区块有可能在不同时间到达不同节点,导致节点有不同的区块链视角。 解决的办法是,每一个节点总是选择并尝试延长代表累计了最大工作量证明 的区块链,也就是最长的或最大累计难度的链。节点通过将记录在每个区块 中的难度汇总起来,得到建立这个链所要付出的工作量证明的总量。只要所 有的节点选择最长累计难度的区块链,整个比特币网络最终会收敛到一致的 状态。分叉即在不同区块链间发生的临时差异。当更多的区块添加到某个分 叉后,这个问题便会迎刃而解。


在接下来的图例中,读者可以了解到网络中发生分叉的过程。图例代表

简单的全球比特币网络,在真实的情况下,比特币网络的拓扑结构不是基于 地理位置组织起来的,而是在同一个网络中相互连接的节点。这些节点可能 在地理位置上相距遥远,此处采用基于地理的拓扑是为了能更加简洁地描述 分叉。在真实比特币网络里,节点间的距离按“跳”而不是按照真实位置来 衡量的。为了便于描述,不同的区块被标示为不同的线型,传播这些区块的 节点网络也被不同的线型标示。

网络有一个统一的区块链视角,以实线区块为主链的 “顶点”。当有两个候选区块同时想要延长最长区块链时,分叉事件就会 发生。正常情况下,分叉发生在两名矿工在较短的时间内,各自都算得了 工作量证明解的时候。两个矿工在各自的候选区块一发现解,便立即传播 自己的“获胜”区块到网络中:先是传播给邻近的节点而后传播到整个网 络。每个收到有效区块的节点都会将其并入并延长区块链。如果该节点在 随后又收到了另一个候选区块,而这个区块又拥有同样的父区块,那么节 点就会将这个区块连接到候选链上。其结果是,一些节点收到了一个候选 区块,而另一些节点收到了另一个候选区块,这时两个不同版本的区块链 就出现了。


可以看到两个矿工几乎同时挖到了两个不同的区块。这两 个区块是顶点区块——实线区块的子区块,可以延长这个区块链。为了便于 跟踪这个分叉事件,此处设定有一个被标记为虚线的、来自加拿大的区块, 还有一个被标记为点划线的、来自澳大利亚的区块。


假设有这样一种情况,一个在加拿大的矿工发现了“虚线”区块的工作 量证明解,在“实线”的父区块上延长了块链。几乎同一时刻,一个澳大利 亚的矿工找到了“点划线”区块的解,也延长了“实线”区块。那么现在就 有了两个区块:一个是源于加拿大的“虚线”区块;另一个是源于澳大利亚 的“点划线”区块。这两个区块都是有效的,均包含有效的工作量证明解并 延长同一个父区块。这两个区块可能包含了几乎相同的交易,只是在交易的 排序上有些许不同。当这两个区块传播时,一些节点首先收到“虚线”区块,一些节点首 先收到“点划线”区块。比特币网络上的节点对于区块链 的顶点产生了分歧,一派以虚线区块为顶点,而另一派以点划线区块为顶点。


从那时起,比特币网络中邻近(网络拓扑上的邻近,而非地理上的) 加拿大的节点会首先收到“虚线”区块,并建立一个最大累计难度的区块, “虚线”区块为这个链的最后一个区块(实线-虚线),同时忽略晚一些到 达的“点划线”区块。相比之下,离澳大利亚更近的节点会判定“点划线” 区块胜出,并以它为最后一个区块来延长区块链(实线-点划线),而忽略 晚几秒到达的“虚线”区块。那些首先收到“虚线”区块的节点,会即刻以 这个区块为父区块来产生新的候选区块,并尝试寻找这个候选区块的工作量 证明解。同样地,接受“点划线”区块的节点会以这个区块为链的顶点开始 生成新块,并延长这个链。


分叉问题几乎总是在一个区块内就被解决了。网络中的一部分算力专注 于以“虚线”区块为父区块,并在其之上建立新的区块;另一部分则将算力 专注于“点划线”区块上。即便算力在这两个阵营中平均分配,也总有一个 阵营抢在另一个阵营前发现工作量证明解并将其传播出去。在这个例子中, 假如工作在“点划线”区块上的矿工找到了一个“箭头”区块,延长了区块 链(实线-点划线-箭头),他们会立刻传播这个新区块,整个网络会都会认 为这个区块是有效的。


所有在上一轮选择“点划线”区块为胜出者的节点会直接将这条链延 长一个区块。然而,那些选择“虚线”区块为胜出者的节点现在会看到两个 链:“实线-点划线-箭头”和“实线-虚线”。这些节点会根 据结果将“实线-点划线-箭头”这条链设置为主链,将“实线-虚线”这条链 设置为备用链。这些节点接纳了新的更长的链,被迫改变了原有对区块链的 观点,这就叫做链的重新共识。因为“虚线”区块做为父区块已经不在最长 链上,导致了他们的候选区块已经成为“孤块”,所以现在任何原本想要在 “实线-虚线”链上延长区块链的矿工都会停下来。全网将“实线-点划线-箭 头”这条链识别为主链,“箭头”区块为这条链的最后一个区块。全部矿工 立刻将他们产生的候选区块的父区块切换为“箭头”区块,来延长“实线- 点划线-箭头”这条链。


三、总结


在区块链协议下,数据呈现分布式存储,有不可篡改删除、可验证等重 要特点。

区块链首先带来的是交易方式的改变,数据存储的去中心化,也会带来 交易的去中心化,双边、多边交易不再依赖于唯一的清算中心。交易的去中 心化,会使得交易更加平等。

更重要的是,区块链将开启新的信用时代,说谎将无比困难。任何人都 无法篡改其历史数据,而历史数据又公开分享在区块链中,信用更加坚固。 然而,要想让区块链技术真正地解决信用问题,却没那么容易,至少面临以 下5个问题。


(1)历史数据如何承接和转化。已有的不按照区块链产生的数据,如 何与新区块链协议的数据进行互通。

(2)可以预见,区块链技术将率先在金融等安全性要求很高的领域先行 试用,而海量的数据仍然是现有技术下的数据,区块链下的可靠数据有限。

(3)区块链的分布式记账方式,能够覆盖主要的经济和金融交易领 域,并能够被网络化共享,其前提是区块链技术的成本足够低。

(4)区块链技术的大规模应用,需要政府推动。只有中央银行、财政 部等国家主要的经济管理部门牵头,制定区块链协议的规范,并以法律的形式要求金融交易、不动产交易、重要的动产交易采用区块链技术,区块链才 会快速推广。

(5)如何平衡信息共享和隐私保护,在区块链时代,会成为一个关键 问题。信息保护和信息分享的立法推动和完善,将是区块链时代的大数据商 用的前提。


关注微信公号“书问”免费领取万本好书


内容来源:书问

作者黄步添、蔡亮
出版清华大学出版社
定价49.8元
书籍比价

分享到

扫描二维码 ×

参与讨论

电子纸书

日不落帝国金融战:伦敦金融城的前世今生

李引亚
清华大学出版社[2012] ¥18

金融危机的前世今生:周末咖啡馆的金融话题

李铁峰 著
清华大学出版社[2009] ¥11

区块链实战

吴为, 著
清华大学出版社[2017] ¥29

区块链解密:构建基于信用的下一代互联网

黄步添, 蔡亮, 编著
清华大学出版社[2016] ¥32

数字图书馆服务链——服务模式·体系架构·关键技术

黄梦醒, 著
清华大学出版社[2013] ¥17

《多多看世界系列》之《多多去小岛》

纸飞机
北京理工大学出版社[2018] ¥10

《多多看世界系列》之《多多的小熊呢》

纸飞机
北京理工大学出版社[2018] ¥10

《多多看世界系列》之《多多逛公园》

纸飞机
北京理工大学出版社[2018] ¥10

《多多看世界系列》之《多多想要长高》

纸飞机
北京理工大学出版社[2018] ¥10

出版业领先的TMT平台

使用社交账号直接登陆

Copyright © 2018 BookAsk 书问   |   京ICP证160134号


注册书问

一键登录

Copyright © 2018 BookAsk 书问   |   京ICP证160134号