自从2008年中本聪的比特币白皮书发表,至今区块链已经发展了近十年的时间。但在最近的加密数字货币大浪潮中,许多人只是知道比特币、以太坊,却不知道区块链到底是什么。
实际上,以比特币为代表的各种加密数字货币都是区块链技术的一种应用。
只为寻找发财捷径而买币,难免沦为韭菜。在群体性疯狂之中,思考和认识水平要比账户上一时的数字更关键。
区块链相关概念
1. 哈希值
哈希值又叫“数字指纹”,无论多大的数据,经过一番计算后,都可以得到一个固定长度(例如256比特)的哈希值;数据的内容不同,哈希值必然不同,就像人和人不会有相同的指纹。
2. 区块链
一系列数据块(即区块)链接而成的链条,链接的方式是:其中第N+1个区块中,包含第N个区块的哈希值。而且这样的数据块的链条,同时被分布广泛、数量巨大的服务器节点所存储和维护,每个服务器节点都拥有一份区块链的完整拷贝(即区块链数据的存储是高度冗余的)。
3. 去中心化
数量巨大的服务器节点彼此平等,靠某种事先达成的协议来保证大家拥有数据是完全相同的拷贝,他们就构成了一个去中心化系统。而在一个中心化系统中,某个中心节点拥有更高的权力,它负责更新数据,所有其他节点从它那里获得更新后的数据。
4. 哈希碰撞
计算哈希碰撞的过程是不可逆的,预先给定一个值,如果请你构造出一段数据,希望它的哈希值正好是这个给定值,那么就算你拿最强大的计算机算到天荒地老,也构造不出来。而且这个构造的过程中没有任何巧妙的算法可以利用,只能一直去尝试所有可能的数据。
5. 工作量证明
区块链上的区块,除了包含上一个区块的哈希值之外,还至少要包括一串无意义的数字,他被称为nonce。改变nonce的值,就可以改变本区块的哈希值。服务器的节点尝试不同nonce的值,碰撞出一个足够小的哈希值,这个过程被称为工作量证明。所以说,哈希值越小,就会证明你大致尝试过多少个不同的nonce。
6. 共识协议
维护同一个区块链的服务器数量众多,要维护数据的一致性,他们就必须在“谁来决定下一个区块内容”这一问题上达成共识,目前所广泛采用的共识协议是,水献给自己的区块找到足够小的哈希值来完成工作量证明,谁的区块就是下一个区块。
7. 孤块
由于服务器的数量太多了,彼此通讯的延迟有大有小,有时候会产生区块链的分叉,比如说甲、乙两台服务器几乎同时找到了工作量证明,那么会导致有的服务器把甲的区块追加到自己所存储的区块链上,其他则是追加乙的。这个时候,区块链就出现了甲乙两个分支,在两个分支上都有服务器在持续追加块。为了解决这个问题,共识协议约定,以最长的链为准,即经过一段时间之后,如果在甲分支上追加了的区块的数量大于乙分支,就以甲为准,这个时候乙分支上的块,就成为了孤块,不被系统所承认。
8. 51%攻击
“以最长链为准”,其合理性在于,最长链上累计的哈希碰撞的工作最大,相当于服务器之间用哈希碰撞的算力来进行投票,投票选出的链,必然是最长链。只要系统中作恶的坏节点的算力不超过50%,他们就无法累积出最长链。反过来讲,如果有51%的节点都是坏节点,它们联合起来,能任意决定区块中的内容,破坏整个系统,这就是51%攻击。
9. 确认数
某一笔交易被加入区块链的某个区块中,称为得到了一次确认。这个区块之后,区块链每被追加一个区块,就增加了一次确认。确认的数量越多,这笔交易所在的块成为孤块的可能性就越低。
10. 智能合约
智能合约类似于数据库中的trigger(触发器),即特定事件出现的时候,自动执行的代码块。通俗的讲,它使得“钱自己会动”。比如说:老公账目上的钱如果超过一定限额,多出来的钱就会流到老婆账目上。
11. Token
这个词很难翻译,有人把它翻译成“代币”,感觉不是很全面,所以还是保留英文原文。它是某种资源、资产、股份在区块链上的表示。笼统地说就是资源、股份的拥有者,可以用自己的密钥为自己的数据片段加上自己的标签,这些数据片段就变成了Token,借助智能合约,Token可以被拆分成很多份,分配给很多个账户,以及在账户之间流动。
12. ICO
一家公司准备新创一种区块链来改变世界,但它没有钱,于是就号召大家给它捐助比较出名的数字货币,比如比特币,以太币。同时会承诺,这些捐助的币,将会比例折换成他们新创的数字代币送给大家,如果这个数字货币真的发达了,翻了多少多少倍,大家就会赚到一大笔钱。
13. IFO
和ICO很类似,但是含义却不一样,比如这样:我们是某个数字货币社区里的用户,我们觉得它不好,现在要分叉这个币、分裂它的社区了!我们分叉很辛苦,因此分叉后的链上,会凭空给我们记录一大笔数字货币的收益。请大家支持我们,支持的方式就是用好的数字货币,比如比特币,以太币等。
14. IMO
这个也是和ICO很类似,是号召大家来买创建的新链上专用的矿机。大家一起来用矿机挖代币。
15. 去中心化自治组织(DAO)
试想,如果在一个组织中,货币、资产、股份都变成了区块链上的Token,被链上的智能合约所管理,那么这个组织就可以不依赖于任何中心化的管理机构来运转。这个区块链的底层源代码即为这个组织的法律,将会实现真正意义上的法制。详细交流了解请加笔者!