最近被比特币等虚拟货币刷屏了,比特币、以太坊、狗狗币,一大堆名词扑面而来,不明就里的人们被搞得晕头转向。
很多人都在非对称加密
首先,我们得先理解什么是非对称加密。非对称加密我们曾经详细地对它进行了介绍,这里只简单地说一下概念。
对称加密指的是加密和解密,用同一个密钥。而非对称加密其实很简单,加密和解密必须使用一个密钥对,密钥对包含一个公钥和私钥。
公钥是公开的,任何人都可以获取,而私钥只有自己知道。其他人可以使用公钥加密数据,再发送给你,你再使用相对应的私钥解密,得到数据。
当然也可以反向操作,使用私钥加密数据,其他人再用公钥解开。用自己私钥加密的数据,只有对应的公钥才能解开,所以这一方式可以用来验证数据的真实性,也叫数字签名。
别人用你的公钥能解密成功,说明这一数据来自于你,而不是其他人,也没有被篡改过。
虚拟货币原理明白了非对称加密,我们很容易理解虚拟货币背后的原理。
如果有人想转一些比特币给你,他就会使用你的公钥进行加密发送给你,由于私钥在你的手里,只有你能解密,因此这笔钱就变成你的了。
可以看出,在整个虚拟货币交易过程中,私钥非常重要,交易只针对私钥,不针对某一个人,这也是虚拟货币匿名性的体现。
如果私钥没有保管好,泄露了,那么自己的虚拟货币很容易被人偷走,因为别人可以拿着你的私钥,冒充你进行交易。
交易流程虚拟货币是如何进行交易的呢?
首先需要去虚拟货币交易所开户,平台会自动生成一个密钥对(公钥和私钥),存放在你的钱包里。
在进行比特币交易的时候,要用到比特币地址,这个比特币地址是怎么来的呢?
这个地址是由公钥演变而来的。
根据协议,公钥长度为512位,这么长显然不易于传播,因此协议又规定,应为公钥生成一个160位的“指纹。”所谓的指纹,其实就是一个哈希值。
160位是二进制,一般用十六进制表示,所以比特币地址一般在26到35个字符之间。这样一来,比特币的地址大幅缩短了。
在开始交易前,还有一个问题没有解决。
因为比特币等虚拟货币的交易记录,是全部公开的,哪个地址有多少个比特币都能被看到。
问题就出在这。
假如地址A说:“我向B地址支付了1个比特币。”比特币要怎么验证这个交易记录是真实发生的,而不是某一个人随意捏造的呢?
根据比特币的协议,当A说给B支付了1个比特币的时候,必须提供以下几种证明:
你是从哪里获得这些比特币的?你的比特币地址是多少?B的比特币地址是多少?你的公钥是什么?你用私钥生成的数字签名。如果A地址能提供以上文件,就能证明这次交易真实发生了。
当A地址和B地址的交易真实发生后,还需要将本次的交易数据写入到数据库里,B地址才能真正收到比特币。
挖矿的矿工们写入数据库的这项工作,由挖矿的矿工们承担,他们负责把这一交易记录写入到区块链中。
当A地址向B地址支付了1比特币后,这一行为会通知所有正在挖矿的矿工们。
交易行为发生后,会先通知离A地址最近的那些矿工,当这些矿工收到消息后,又会把消息扩散到离他们较近的矿工们,经过一圈又一圈的传播,所有人都会接收到这笔交易的信息。
根据比特币协议,一个区块大概可以包含2000多笔交易,矿工们负责把这2000多笔交易打包起来,组成一个区块,然后计算这一区块的哈希。
这一过程叫采矿,需要大量的计算,谁能先算出哈希值,谁就能第一个将这一区块添加进区块链,获得一定数量的比特币,而其他矿工会一无所获。
虚拟货币的交易,大概就是这样一个过程,说起来其实也并不复杂。但能提出这一革命性构想的人,真的很了不起。在全世界无数爱好者的支持下,虚拟货币经济越来越发达,其野蛮增长也受到了各国的