专栏名称: IT时代网
解读信息时代的商业变革;以调查见深度;以商业故事见功力。
目录
相关文章推荐
FT中文网  ·  《封神》展现的是何种民族心理? ·  16 小时前  
斑马消费  ·  中顺洁柔卷不动了? ·  2 天前  
51好读  ›  专栏  ›  IT时代网

六百多年前的区块链项目

IT时代网  · 公众号  · 商业  · 2018-03-30 11:45

正文

文 | 浮生

来源 | 财链社


今天文章的开头我们先不聊区块链,先聊聊民间最受大众喜爱的娱乐项目——麻将。

麻将起源于中国,原属皇家和王公贵胄的游戏,其历史可以追溯到三四千年以前。在长期的历史演变过程中,麻将也逐步从宫廷流传到了民间。

关于麻将的起源说法不一,其中最有趣的莫过于“水浒麻将”。

传说万秉迢生于明朝,此人甚爱《水浒》,被梁山上的108位好汉深深折服,于是便想做一副娱乐工具来纪念他们。


经过几天精心设计,终于研制出了麻将牌。他把麻将牌设计为 108 张,暗喻《水浒》中的 108 位好汉。例如九索就是“九纹龙”史进,二索就是“双鞭”呼延灼 ... 等等。

这108位好汉,因分别来自四面八方,于是牌中有东、南、西、北各四张。而梁山泊聚义的群雄有贫有富,出身各异,因此又设中、发、白。发者是发财之家,白者是白丁、贫民,中者是中产人家。麻将又分万、筒(北方称饼)、索(北方称条),即是发明万秉(饼)迢(条)的谐音。

从此,麻将也就诞生了!

之所以要从麻将的起源说起,是因为 麻将就是中国最早的区块链落地应用 !今天我们就来说说麻将关于区块链那些事 ...


01

“麻将白皮书”


周末到了,张三准备约上几个好友出来打麻将,于是就打电话约了李四、王五、赵六组了个麻将局。

而张三想打麻将的想法就相当于创建一个区块,而他再以打电话点对点的形式通知了李四、王五、赵六这个动作就做到了 “去中心化”的点对点传输

于是张三、李四、王五、赵六就形成了共识,坐到了一起开始打麻将。四个人会分别摸 13 张随机分配的麻将,通过摸一张打一张的形式来将麻将规范化的排序来和牌。而这里面摸打的动作就可以理解为“挖矿”,四个人就是“矿工”, 108 张麻将就是哈希值。而 胡牌就是碰撞出了正确的哈希值 ,就可以获得相应的筹码奖励,也就是所谓的比特币。


那么问题来了,为什么其他三个人都会主动给和牌的人奖励呢?那是因为这三个人都自动达成了共识,这人确实赢了,大家都记录了这笔账,想抵赖是不行的,不然以后传出去这人品不行,就没人再和他一起打麻将了,毕竟圈子很重要。

同时,在大家达成共识时,我们看不到任何中介或者第三方出来评判谁赢了,大家给赢得人的奖励也不需要通过第三方转交给他,都是直接点对点交易,这一过程就是去中心化。

四个人(矿工)各自记录了第一局的战绩,王五大胡自摸七小对,赵六杠了张三的幺鸡,记录完成后就生成了一个完整的区块,但要记住,这才只是第一局,在整个区块链上,这才仅仅是一个节点,如果那天一共打了 20 盘麻将,也就是 20 个节点(区块), 20 个区块连接在一起就形成了一个完整账本,这就是区块链

因为这个账本每人都有一个,所以就是 分布式账本 ,目的就是为了防止有人篡改记录,打到最后,谁输谁赢一目了然。

整个过程,将区块链技术体现得淋漓尽致。


02

什么是哈希值?


上面我们说到了和牌就是凑出了正确的哈希值,那哈希值是什么呢?


会打麻将的人都知道,第一首摸起来的13张牌是随机分配的,杂乱无章,毫无规律,所以打麻将的人需要把这 13 张麻将凑成规律的牌就赢了,也就是俗称的“和牌”。

那么实际上在区块链里,比特币挖矿也是一个道理,比特币“矿机”就是运算特定的哈希值,谁先算出来,谁就赢得一个比特币的奖励。

也就是说 哈希值是文件的身份证 ,不过比身份证还严格。他是根据文件大小,时间,类型,创作着,机器等计算出来的,很容易就会发生变化,谁也不能预料下一个号码是多少,也没有更改他的软件。

哈希算法将任意长度的二进制值映射为固定长度的较小二进制值,这个小的二进制值称为哈希值。 哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的。

如果上述的概念太过于抽象,笔者就给大家举个简单的例子:

互联网上的每一张图片都具有其特定的哈希值,就是这张图片在互联网时间的编号。比如把下图进行映射,会获得一个全宇宙独一无二的哈希值。


这个值是:

5088698dc898f8e5c86ef0a8948b68e02c6c1c6e


这个哈希值,就是这张图片在互联网时间的编号。

那互联网中的信息接近无穷大,哈希值真的够用吗?答案是肯定的,而且过剩。哈希值的数量达到2的 80 次方个以上,这个数量超过宇宙中所有原子的总和。

那哈希值是如何得出来的呢?

哈希值其实上是数学里的一种散列函数,上中学时我们都学过函数知识,举个简单的例子(+1)就是一种简单的函数计算公式。

给到任意一个数字都可以算出最终结果,例如给出1,运行这个计算公式则是:1+1=2。如果给出 100 运行这个计算公式则是: 100+1=101

而在哈希算法里,拥有一个复杂的函数计算,每一个东西映射后都会产生一串独一无二的哈希值用于加密。


而哈希值除了加密性之外,还有两个特性:

1、 不可倒推。 也就是说,你可以把一个图片映射成哈希值,却没办法通过哈希值去倒推它之前是什么图片,甚至连之前是不是图片都无从得知。这就是区块链技术不可篡改的底层逻辑。







请到「今天看啥」查看全文