【小哈划重点:当小白们去网上搜相关的科普文章时,却往往被里面枯燥的文章和晦涩的概念所吓走。本文另辟蹊径,用用Emoji表情符号生动地科普了比特币的相关知识,实乃出门在外、居家旅行、杀人越货之必备良文。】
比特币是一种节省或花费数字货币的革命性方式,它的发展也有可能为其他领域带来转变。你不需要成为一名数学家或密码学家才能理解它,当你能够理解整个系统如何运作后,你一定会充满成就感。开始之前先说明一下,这篇文章是emoji解读比特币三部曲中的第一部。
假设我通过互联网给你发送电影或歌曲,我把它们作为附加上传到电子邮件里,一旦我点击发送,你就能拥有它们。你可以看电影或者把它删除——也就是说,对于这部电影,你想怎么处理都没有问题。
但是记住了:在我这里,仍然有一个这部电影的副本。
这就是数字信息通常在互联网上流转的方式。你不会真正地传输内容本身,你只是可以复制它。 到目前为止,这种方式运转得都很顺利——虽然可能不合法或不公平,但复制歌曲或电影并不太可能破坏经济。
那要是把复制电影换成复制钱呢?
如果我发给你一美元,那么我不保留它的副本是很重要的。使用电子邮件制作无限的数字金钱听上去似乎很有吸引力,但一旦每个人都开始这样做,会发生什么呢?无疑,通货膨胀会立马变得猖獗,经济也会开始快速下滑。
从传统来说,在电汇和借记卡的世界中,数字货币被集中追踪以防止重复。例如,银行的数据库能够验证谁拥有什么。这个系统依赖于中央集权——所以当然——中央当局可以完全控制你的资金。
但如果有另一种方式呢? 如果我们不依靠一个可能发生错误的中央集权来向我们保证谁拥有什么,而是依靠分散的权力而不是单一的一方控制呢? 如果钱的价值的来源不是因为我们相信政府对其的支持,而是因为我们相信数学的力量呢?
这样我们就来到了比特币的世界。
什么是比特币?
比特币是一种与任何政府或机构无关的数字货币系统。
有点令人困惑的是,“比特币”这个词也是货币本身的名字。这个系统(比特币)创建于2009年,但货币单位(比特币)通过称为“采矿”的过程不断产生。这有点类似于在数字化21世纪里的“黄金开采”。
比特币网络上的所有交易都被永久记录在称为区块链的长列表中。这不是中央当局保护的秘密名单。 它是一个分布广泛的公共清单,每个参与计算机都有它的副本。
比特币区块链是一个不可改变的公共分布式账本:
不可改变的,我的意思是说,一旦一条记录在区块链上几个小时之后,改变或删除它就变得不可行。这是因为在这段时间内,已经有很多其他的事务被建立。
对于公众来说(我的意思是任何人,不仅仅限于银行员工)都可以看到区块链。 这并不意味着你可以确切地看到谁在发送或接收金钱,因为记录中一般都会使用暂时性的假名字来掩盖身份。
通过分发,区块链的同步副本会由全世界的电脑持有。没有规范的主副本, 所有副本都是平等的。
这种分布式分类账被称为之所以被称为“区块链”,是因为单个交易被分组到更大的“区块”中,这些区块按顺序链接在一起。这比逐个添加事务更快,并且每10分钟创建一个新的事务块。
为了更好地说明不可变的公共分布式账本的力量,让我们想象一个常见的但是假设的情况,这种情况涉及到价值5美元的比特币。 (比特币的价值可能会上升或下降,但5美元可能只是单个比特币的一小部分。)
假设我的朋友伊丽莎白发给我5美元的比特币。想每笔交易一样,这笔交易会马上被记录在区块链中。反过来,我给你发去5美元,因为每个区块链副本现在都表明我拥有过去属于伊丽莎白的5块钱。 不需要有人介入——我、你或者伊丽莎白,也不需要去询问某个权威的中央数据库谁拥有什么或者是否需要许可。这就是权力下放,它位于区块链的每一个副本中,无处不在。
你可能想知道:伊丽莎白从哪里得到她寄给我的比特币?
简而言之,有人可能会把它发给她——几乎每个人都能获得比特币。
但有一点需要注意,这些比特币最初必须被创建出来。
比特币是如何诞生的?
美元在美国政府印刷他们时产生,其他传统货币也由各国或各地区政府印制发行。很久以前,美元在美国财政部得到了相当数量的黄金的支持,并且在那段时间里创造额外的货币需要提供相应数量的黄金,因此黄金开采开始变得额外受欢迎。
比特币也是通过一个称为挖掘的过程创建的。不过这是用计算机和软件而不是炸药和铲子完成的“数字挖掘”。为了将新的交易块添加到区块链中,必须解决繁重的数学问题,而首先解决问题的“矿工”将获得全新的比特币奖励——比特币就是这样开采的。
换句话说,挖掘有两件事:一是它为区块链增加了新区块,二是创造了新的比特币。那些矿工们正在努力解决的数学问题包括哈希法(散列法)。
什么是散列?
散列算法是指,将一个特定的对象(照片、相册、电影、文本、密码)通过hash运算,转成一个特定的字符串,字符串可能有字母、数字以及其他符号组成。
散列算法是计算机科学中的核心概念。广泛应用于后端计算。为了增加安全性,在线服务通常将明文密码通过特定散列函数转化成暗文散列码,在登录时,将暗文散列码传到服务器端,进行验证。Facebook通过散列算法识别图像。Facebook将被举报的图片进行散列处理,形成违规图片的散列库。每次讲新照片与已有的散列库进行对比,如果匹配上,说明图片违规。
通常情况下,计算机运行散列函数,它将输入数据(如照片)转化成gobbledygook字符串,这就是散列算法。
举个例子,让我们把这张小狗的图片称为一个叫SHA-256的散列函数:
很明显,任何人都能看出这张可爱的小狗图片并未违反任何Facebook规则。Facebook上的软件会检查图片的散列,这就是:
8EC9D4718F919C6087CA589EDA09E7DD9A7ACCDB820F42B4196E1D0D4BEDE77A
这是该图片的SHA-256结果,以十六进制表示。恩,确实不如小狗本身可爱。
散列函数的一个有趣特征是,如果我们稍微改变输入,输出将完全不同。 比方说,例如,我们通过在他的眼睛上方放置一个1像素的黑色跳蚤来改变小狗照片的一个像素:
你能看到那个小黑点了吗?
当我们对照片进行散列处理时,即使只有一个像素发生了变化,我们也会得到完全不同的散列:现在,我们可以在本文的其余部分使用真实内容和真正的哈希值,但哈希值真的不太好理解。所以我们来使用emoji来表示这些输入和输出。 在下面的示例中,输入(要进行散列处理的内容)由cat的脸部表示,而输出(它是生成的散列)由蝴蝶结表示:
想象一下,Facebook已经在以下两张不合适的图片上运行了散列函数:
后来有人上传了一张照片,我们先称为“?”,因为目前Facebook还不知道它是什么。在Facebook对照片进行散列处理后,结果是:
尽管没有人看过这张神秘的照片,但Facebook已经知道这是我们上传的的是不合适的照片了。
当然了,照片识别只是散列的一个应用。比特币采矿创造了新的比特币,并为区块链增加了新的交易。