1.1 区块链究竟是什么 - 数据结构 - 机器学习
数据结构 - 机器学习
深度学习

当前位置:首页 » 区块链精品文章 » 正文
1.1 区块链究竟是什么
1031 人参与 2018年09月28日 17:44 分类 : 区块链精品文章 评论
我们来看一下区块链在维基百科上被大家公认的官方定义:
一个区块链是一个基于比特币协议的不需要许可的分布式数据库,它维护了一个持续增长的不可被篡改和修改的数据记录列表,即使对于数据库节点的运营者们也是如此。
区 块链究竟是什么?说得笼统一点,区块链实现的是一种全新的信用系统。另外一个同义的说法是,区块链系统是一个“Trustless”(无须信用)的系统, 无须信用的系统本身就实现了自己的信用。这个信用系统不基于任何法律法规,是用机器语言来实现的。在系统运作时,这种信用不受使用者的影响,也无法被破 坏。借助互联网的传播,这个区块链系统能覆盖全球任何一个角落,并且是简单易用的。
简而言之,区块链(blockchain)说的是由区块(block)用某种方式组织起来的链条(chain)。
在本书中,我们说的区块链技术实际上是一种分布式数据库技术。在区块链中,信息或者记录被放在一个个的区块(block)中,然后用密码签名的方式“链接”(chain)到下一个区块。这些区块链在系统的每一个节点上都有完整的拷贝,所有的信息都带有时间戳,是可追溯的。
在 区块链概念创建之初,谈的主要是比特币底层的实现方式,所以很多人会把比特币和区块链技术的概念互换。在本书中,我们讨论的主要是区块链技术,比特币并不 是我们的重点,这二者是不可混为一谈的。不过在第2章介绍技术原理和第3章讲述比特币的时候,我们必须要借力于最初的算法,所以在这两章中,比特币和区块 链的概念是合在一起讨论的。
寻找中本聪
2008年,神秘人物中本聪(Satoshi Nakamoto)在一家隐秘的密码论坛上提出了一种全新的互联网货币设计方案——比特币。该技术别具匠心地使用了P2P技术(点到点技术)和不对称加密技术,使得人类历史上第一个真正具有金融意义的互联网货币得以诞生。
基于区块链的比特币拥有四大跨时代的显著特点:
(1)去中心化。比特币使用点到点网络技术,发行机制不依赖于特定的中心机构,不管是银行还是大型公司,都无法掌控比特币的发行。
(2)总量有限。比特币以一种递减的、可预测的速率产生,直到预计在2140年达到2100万枚的发行上限。由于上限固定,增速递减,所以从设计上来说,比特币具有通缩倾向。
(3)匿名性。比特币依靠加密技术,实现了完全匿名的自由使用。
(4)流通无界限。互联网的无界特征和比特币的开源特性决定了比特币交易活动的无界。它让跨国交易不再受到国家或者银行的限制。
比 特币的发明者中本聪是一个有着神秘色彩的人物。在密码学论坛贴出他的研究报告之前,没有人知道他是谁。这样一个有着深厚密码学功底的人显然不可能是随便冒 出来的,但是中本聪非常注意保护隐私——简介显示他住在日本,他的电子邮箱来自德国的一个免费服务站点,而他熟练的英语又让人觉得他是一个美国人,不过他 写的某些单词又使用着英式的拼法。
美国《新闻周刊》2014年3月13日的封面
(来源:《新闻周刊》)
在一次对于比特币发展的争吵后,中本聪从社区中消失得无影无踪。不管中本聪到底是谁,我们已经可以停止追踪中本聪了,因为极客们有这样的惯常说法:
“不管是谁写了代码,重要的是代码本身。就算有人在比特币交易中偷窃、欺骗,有人放弃了比特币,但是,代码就在这里”。
其 实比特币的思想并不是在一夜之间就冒出来的。在很早之前,自由主义经济学家哈耶克和弗里德曼就提出过废除中央银行、去国家化、非主权货币的构想。1998 年,在东南亚金融危机肆虐时,戴伟首次阐述了一种新的货币形态,建议通过采用加密学原理控制货币发行和交易,而不是依赖于中央权威机构。
比特币从技术上实现了这一构想。
区块链的DACT特性
基于区块链的系统和以往的其他系统有很多不同。我们认为,以区块链技术为核心的系统有以下三大最主要的特点:
去中心化
不需要一个管理机构
不需要第三方仲裁
区 块链的去中心化指的是整个系统上的节点是对等的,每个节点可以自由加入和离开,而且对整个系统的运行没有影响;不需要管理机构的另外一个词是 autonomous(自治的),也就是说所有的节点都是按照一个规则来行事并达成共识的;而不需要第三方仲裁指的是系统上所有的交易和过程都是按照一定 的规则或合约来进行的,所有的交易都是可追溯的和不可逆的。
区块链系统是全球化的,系统上的节点是运行在太平洋上某个小岛的笔记本电脑上,还是运行在美国西部某个小镇的服务器上,对系统本身来说都是一样的,除网络连接速度外,没有任何区别。
区块链系统的底层是开源的软件,对于所有的人都是公开的。任何人都可以查看这些代码,不过如果他们想要对代码加以修改,就得通过开源社区上其他程序员的审核。
虽然区块链的节点遍布全球,不过这并不会影响它的执行效率,因为系统的分布式设计意味着应用并不需要连接到所有的节点,只需要连接到最近的节点就可以获取所需要的信息。
总结一下,我们可以用四个词来描述区块链的特点:
Distributed(分布式的)
Autonomous(自治的,共同约定的)
Contractual(按照合约执行的)
Trackable(可追溯的)
在本书中,我们就用Distributed、Autonomous、Contractual和Trackable这四个单词的英文首字母DACT来代表区块链技术的特点。
有一种说法提到互联网的四大特点是“公平、分享、公开、透明”。DACT的四个特性正好对应这四大特点。
Distributed——分享
Autonomous——透明
Contractual——公平
Trackable——公开
区块链技术是完全符合互联网特点的一项技术,而通过区块链技术实现的系统恰巧也都符合互联网的四个特点。
在后文中我们会看到,当数据存放在区块链系统中之后,所有的交易都是可追溯的,在系统的每个节点上都有所有附带时间戳交易的完整拷贝,添加交易信息需要得到系统的共识,因而系统上的数据是不可被篡改的。
当我们的应用是基于区块链的时候,我们不用担心数据会被篡改或者丢失,不用担心交易的结果会有错误,因为所有的操作都是由系统自动完成的。事实上,当使用基于区块链的系统时,人们对中心机构的信任转而被对数学的信任所取代。
数 据是公开的并不等于所有的人都可以随意访问基于区块链系统上的数据。恰恰相反,基于区块链的系统可以有最严格的权限设置。在一个共同约定的协议被写入代码 之后,系统的Contractual(按照合约执行的)特性使得只有确定权限的用户才能访问加密的数据,即使是参与系统运营的节点也无法访问数据。因而, 基于区块链的系统是安全的。
区块链系统是不可篡改的
(来源:http://dcebrief.com/)
关于区块链的社区和讨论非常多,在第2章我们会为读者整理出一些相关的社区资源,有兴趣的读者不妨去多看看百家争鸣的说法。从根本上看,笔者认为关于区块链主要有两大流派:
(1)区块链就是为比特币或者其他虚拟货币服务的技术。
(2)区块链技术可以应用在金融和其他领域。
在比特币圈子里有这么一个说法:区块链技术的兴起使得币圈逐渐变得泾渭分明起来,一边是看不惯区块链的比特币死守派,另一边是不带比特币玩的新区块链派。
如果必须二选一,那么笔者属于后者。不过我们并没有把自己归类于比特币圈子,所以想法可能更加激进一些,因而不见得能被区块链主流社区所接受。我们看中和研究的是区块链技术及其背后的设计思想,在意的是区块链技术在各个领域的应用。
我 们是对比特币持中立态度,却对区块链技术倍感兴趣的第三派。或者按照我们在前言中的说法,我们是趋势派,认为区块链技术(Blockchain Technology)会在未来的10年中引领信息技术的潮流。如果我们能够用区块链设计思想来改造一个行业系统,那么我们认为这才是区块链对行业的贡 献。
智能合约
很 多讲区块链技术的文章都会提到“智能合约”的概念,似乎它就是区块链的孪生兄弟。不过笔者从头到尾研读了中本聪的文章不下十遍,不但没有发现“smart contract”或者“smart”和“contract”,连与“smart contract”定义近似的相关词语都没有发现。
把“区块链技术”和“智能合约”的大概念联系在一起其实是区块链研究者和践行者们所为,因为他们认为区块链技术是实现智能合约最好的技术。
按照维基百科的说法,最早提出smart contract(智能合约)这个词的人,有据可查的是计算机科学家Nick Szabo(尼克·萨博)。他的出发点就是要在互联网和电子商务上让陌生人之间实现类似于法律合同效用的商业行为。
在Nick Szabo自己的主页(网站http://szabo.best.vwh.net/smart.contracts.html)上,他所认为的智能合约的定义如下:
A smart contract is a computerized transaction protocol that executes the terms of a contract.
(一个智能合约就是能够执行合约条款的计算机化的交易协议。)
设计智能合约的目的是:
满足合约条款。
不出现意外的情形,无论是恶意的还是无意的。
不需要中间的第三方。
Nick Szabo认为,通过密码学的协议和数字安全技术,可以有效地在互联网上实现智能合约,从而减少欺诈,降低仲裁成本和交易成本。在他写的“Distributing Authorities and Verifying Their Claims”一文中,引用了美国前总统里根的一句话:
“Trust but verify.”
(信任,不过还是要验证一下。)
Trust but verify(信任,不过还是要验证一下)
(来源:Pinterest)
那么究竟什么是智能合约呢?我们以股票交易为例来说明这个概念。
在Peter的账户上有100股Facebook的股票,每股的价值约为100美元,而Jeff的账户上有4000美元的现金。所以他们的账户状态是这样的:
账户名 | 股票 | 资金 |
Peter | 100股Facebook | 0 |
Jeff | 0 | $4000 |
他 们签订一个智能合约:Jeff以每股100美元的价格从Peter这里购买40股Facebook的股票。那么当4000美元从Jeff的账户转到 Peter的账户上时,智能合约会发现条件满足,就把40股股票从Peter的账户转到Jeff的账户上。在智能合约执行之后,他们账户的状态是这样的:
账户名 | 股票 | 资金 |
Peter | 60股Facebook | $4000 |
Jeff | 40股Facebook | $0 |
智能合约会依照约定自行完成这个交易。如果没有智能合约的存在,那么这个交易需要有一个中立的第三方。
如果我们想要运用密码学的原理,采用电子合约的方式,在区块链系统中保证数据不被第三方篡改,就会用到智能合约。智能合约的用途很广泛,凡是需要辨别真伪、有多方接入、需要追溯本源的、需要合规的交易,都可以应用智能合约来维护系统中数据的真实可靠性和不被篡改性。
《经济时报》在2015年预测会有十个岗位在近期内被机器人所取代,包括银行职员和金融交易系统的中间人角色,而且其中也提到了区块链技术是促成这个取代的决定性技术之一。
最早会被机器人替代人的十个岗位
(来源:http://economictimes.com/)
智能合约可以应用的领域很多,包括:
金融
健康医疗
药材
食品
能源
电力
交通
房地产
农业
政府
军事
讲到这里,读者可能会对智能合约有自己的想法。其实任何一个用代码实现的动作都可以被称作智能合约,而在区块链上最早实现的智能合约就是把比特币从一个账户中转到另外一个账户中的动作。
来源:我是码农,转载请保留出处和链接!
本文链接:http://www.54manong.com/?id=870
微信号:qq444848023 QQ号:444848023
加入【我是码农】QQ群:864689844(加群验证:我是码农)
- 第7章 创建投注App2018-09-15 11:06
- 8.2 反ASIC解谜算法2018-09-12 13:29
- 大家谈之《区块链大革命》2018-09-05 23:38
- 7.2 Fabric项目2018-08-23 19:07
网站分类
- 数据结构
- 数据结构视频教程
- 数据结构练习题
- 数据结构试卷
- 数据结构习题解析
- 数据结构电子书
- 数据结构精品文章
- 区块链
- 区块链精品文章
- 区块链电子书
- 大数据
- 大数据精品文章
- 大数据电子书
- 机器学习
- 机器学习精品文章
- 机器学习电子书
- 面试笔试
- 物联网/云计算
标签列表
- 数据结构 (39)
- 数据结构电子书 (20)
- 数据结构习题解析 (8)
- 数据结构试卷 (10)
- 区块链是什么 (261)
- 数据结构视频教程 (31)
- 大数据技术与应用 (12)
- 百面机器学习 (14)
- 机器学电子书 (29)
- 大数据电子书 (37)
- 程序员面试 (10)
- RFID (21)
最近发表
- 找出数组中有3个出现一次的数字
- 《百面机器学习》电子书下载
- 区块链精品电子书《深度探索区块链:Hyperledger技术与应用_区块链技术丛书》张增骏
- 区块链精品电子书《比特币:一个虚幻而真实的金融世界》
- 区块链精品电子书《图说区块链》-徐明星 & 田颖 & 李霁月
- 区块链精品电子书《是非区块链:技术、投机与泡沫》-英国《金融时报》
- 区块链精品电子书《商业区块链:开启加密经济新时代》-威廉·穆贾雅
- 区块链精品电子书《人工智能时代,一本书读懂区块链金融 (互联网_时代企业管理实战系列)》-马兆林
-
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https'){
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else{
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
全站首页 | 数据结构 | 区块链| 大数据 | 机器学习 | 物联网和云计算 | 面试笔试
var cnzz_protocol = (("https:" == document.location.protocol) ? "https://" : "http://");document.write(unescape("%3Cspan id='cnzz_stat_icon_1276413723'%3E%3C/span%3E%3Cscript src='" + cnzz_protocol + "s23.cnzz.com/z_stat.php%3Fid%3D1276413723%26show%3Dpic1' type='text/javascript'%3E%3C/script%3E"));本站资源大部分来自互联网,版权归原作者所有!
评论专区