本节书摘来自华章出版社《Node.js区块链开发》一书中的第1章,第1.2节,作者:朱志文 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1.2 什么是加密货币
我在网上搜索了一下这个问题,非常奇葩的是,直接回答这个问题的竟然是一个传销币(把加密货币当作幌子,通过传销发售的产品),当然,内容也没有直接回答,只是谈了谈加密货币与法币(像美元、人民币等由银行或国家发行的纸币)的区别。可见,界定一下这个概念,还是非常有必要的。
我们所说的“加密货币”,英文是“cryptocurrency”,也有人在百科上将其翻译成“密码货币”,可以解释为一种加密电子货币(或数字货币),典型的例子就是比特币。所以,我们不妨使用比特币来定义加密货币:
加密货币,是一种基于点对点网络(P2P网络)、没有发行机构、总量基本固定的加密电子通货。
具体解读如下。
1)?P2P网络:这个已经不是新鲜概念了,最早我们使用的Bit下载就是基于P2P网络的,现在很多下载工具都支持。它的好处就是分布式下载(“去中心化”),也就是没有中心服务器,要下载的文件都在用户自己的电脑上,而且下载的人越多速度就越快。
2)没有发行机构:即不是哪个公司、银行或国家控制发行的。要做到这一点,同时还要防止通货膨胀等因素,需要在编程中使用非常复杂的机制和规则(后文会讲到的共识机制)来实现。
3)总量基本固定:这是保证加密货币价值的一种策略,“物以稀为贵”,任何东西若没有上限就会失去它的吸引力。关于这一点,它与很多网络社区使用的积分是有区别的,比如:A币、C币、Q币、S币等,这些虚拟币没有固定数量,可以无限释放。
4)加密:这里所说的加密,不是用户使用的输入用户名、密码等那种简单的权限控制,而是对每一个产生电子货币本身的交易与传输的加密。密码学本身就很复杂,但是使用它并不复杂,明白这个就足够了。
5)电子通货:是指加密货币就是货币,与黄金类似,可以自由交易,只不过是一种电子(数字)形式而已。那么像A币、Q币之类的就不是货币吗?不是,下面将详细解释这一点。