比特币诞生于2008年的一篇论文。
一个名叫中本聪的人提出了一个革命性的想法:让我们创造一种不受政府或其他任何人控制的货币!这个想法很疯狂:一串数字,背后没有资产,也没有人负责。你把它当钱交,怎么会有人接受?
然而,幻想实际上变成了现实。随后几年,在全球无数爱好者的支持下,比特币网络开始运营。越来越多的人和资本参与进来,星星之火,终于燎原。在刚刚过去的2017年,比特币经历了爆发式的增长,从年初的1000美元涨到了最高的20000美元。整个世界都被它震惊了,从政府到普通百姓都在关注它。事实是,比特币已经改变并将继续改变世界。
新闻媒体往往只关注其火爆的表现,忽略或无法回答一些基本问题。
比特币的原理是什么?
为什么这个无人系统能成功运行?
比特币交易的流程是怎样的?
它和区块链有什么关系?
边肖为您推荐一个C/C学习小组496926338。无论你是大牛还是小白,想转行或者入行都可以来认识,一起进步,一起学习!群里有很多干货和技术分享!
下面,我试着回答这些问题,希望能帮助你了解比特币。抛开技术细节,还是很好解释的。
有一点要注意,本文只讨论技术问题,不讨论如何投资比特币,也不讨论如何预测价格走势。其实我也不知道。如果我知道如何致富,我可能就不会在这里写博客了。
首先,不对称加密
首先,要了解比特币,就要了解非对称加密。
你可能听过这个词,所谓的非对称加密其实很简单,就是加密和解密都需要两个密钥:一个公钥和一个私钥。
公钥是公开的,任何人都可以获得。私钥是保密的,只有所有者才能使用。别人用你的公钥加密信息,然后发给你。你用私钥解密,取出信息。另一方面,你可以用私钥加密信息,别人可以用你的公钥解密,从而证明这个信息确实是你发的,没有被篡改。这就是所谓的数字签名(详情请见《什么是数字签名》)。
现在想象一下,如果公钥加密了一笔钱而不是普通的信息发给你会怎么样?
首先你可以解锁加密包,取出里面的钱,因为私钥在你手里。其次,别人偷不到钱,因为他们没有你的私钥。所以,支付才能成功。
这就是比特币(以及其他数字货币)的原理:非对称加密保证支付的可靠性。
由于支付的钱必须通过私钥取出,所以你是谁并不重要,重要的是谁拥有私钥。只有有了私钥,你才能取出付给你的钱。(其实真实交易流程略有不同。私钥保证只有你能把属于你的钱拿出来,而不是把付给你的钱拿出来。详见后文。)
二、比特币钱包
对于比特币来说,钱不是付给个人的,而是付给某个私钥的。这就是交易匿名的根本原因,因为没有人知道那些私钥背后的主人是谁。
所以,比特币交易的第一点就是,你必须有自己的公钥和私钥。
在那些网上比特币交易所开个账户,他们会让你的第一个老师变成比特币钱包。这个钱包不是用来存放比特币的,而是你的公钥和私钥。软件会帮你生成这两把钥匙,放在你的钱包里。
根据协议,公钥的长度是512位。这个长度不容易传播,所以协议规定要为公钥生成160位的指纹。所谓指纹,就是一个短且容易传播的哈希值。60位是二进制,写成十六进制,大概是26到35个字符,比如1 bvbmseystwetqtfn 5au 4 M4 gf G7 xjanvn 2。这个字符串叫做钱包的地址,并且是唯一的,即每个钱包的地址必须是不同的。
当你向别人收钱的时候,只需要告诉他们你的钱包地址,并支付到这个地址。因为你是这个地址的主人,你会收到这笔钱。
既然是否拥有钱包地址是通过私钥来证明的(具体证明方法后面会介绍),那么就一定要保护好私钥。这是极其重要的。如果你的私钥被偷了,你的比特币就没了,因为别人可以利用你的身份,把你钱包里的钱全部转走。
同样,你在给别人支付比特币的时候,一定不要写错别人的钱包地址,否则你的比特币会支付给另一个不同的人。
第三,交易流程
下面,我把整个过程串起来,看看比特币是如何完成一笔交易的。
一笔交易是比特币在一个地址,转到另一个地址。由于比特币的交易记录都是公开的,所以可以查到哪个地址有多少比特币。因此,付款人是否有足够的比特币来完成这笔交易,很容易被验证。
问题在于如何防止别人用你的名字申报交易。比如有人申报了一笔交易:地址A向地址b支付了10个比特币,我怎么知道这个申报是真的,申报人是地址A的主人?
比特币协议规定,在申报交易时,除交易金额外,转让比特币的一方还必须提供以下数据。
最后一笔交易的哈希(你从哪里得到这些比特币的)
交易双方的地址
付款人的公钥
付款人私钥生成的数字签名
验证这个交易是真是假需要三个步骤。
第一步,找到最后一笔交易,确认付款人的比特币来源。
第二步,计算付款人公钥的指纹,确认与付款人地址一致,确保公钥真实。
第三步,用公钥解锁数字签名,保证私钥是真的。
经过以上三步,我们可以得出结论,这笔交易是真实的。
四。交易确认和区块链
确认交易的真实性后,交易不完成。交易必须在建立之前写入数据库,另一方才能实际收到钱。
比特币使用一种叫做区块链的特殊数据库。详细介绍请见《区块链入门教程》。本文仅讨论如何将交易写入区块链。
首先,所有的交易数据将被发送给矿工。矿工负责将这些交易记入区块链。
根据比特币协议,一个区块的最大大小是1MB,而一个交易大约是500字节,所以一个区块最多可以包含2000多个交易。矿工负责把这2000多个事务打包在一起形成一个块,然后计算这个块的Hash。
计算Hash的过程叫做挖掘,需要大量的计算。矿工之间也存在竞争。谁先算出哈希值,谁就可以第一个将新区块加入区块链,从而享受这个区块的所有好处,而其他矿工将一无所获。
一旦交易被写入区块链,就不能撤销。这里有必要确立一个理念:比特币不存在钱包或其他地方,只存在区块链上。区块链记录了你参与的每一笔交易,你收到了多少比特币,支付了多少比特币,你就可以算出你拥有多少资产。
动词(verb的缩写)矿工的收入
交易的确认取决于矿商。为什么会有人想当矿工?
比特币协议规定,挖掘新区块的矿工将获得奖励。一开始(2008年)是50比特币,后来每4年减半。目前(2018年)是12.5比特币。这也是增加比特币供给的机制,所有流通中的新比特币都是这样诞生的。
正如你可能看到的,如果奖励每4年减半,那么到2140年,矿工将不会获得任何奖励,比特币的数量将停止增加。这时候矿工的收入完全靠交易费。
所谓交易费,就是矿工可以从每笔交易中抽取,具体数额由支付者自愿决定。你可以什么都不给矿工,但那样的话,你的交易就会无人问津,就会被延迟写入区块链并被确认。矿商总是优先考虑收费最高的交易。
目前由于交易笔数飙升,手续费水涨船高,一笔2000多的交易总手续费可达3 ~ 10比特币。如果你的手续费降低,可能要一个星期才能确认交易。
一块的奖金是12.5比特币,加上手续费,收入可观。按照现在的价格,可以达到100万到200万人民币。想想吧。运气好的话,几分钟就能挖到一块,还能拿到这么大一笔钱。难怪人们都涌向我的。
不及物动词块的扩展
055-79000说比特币协议规定平均10分钟诞生一个区块。块的大小只有1MB,最多只能包含2000多个事务。换句话说,每10分钟,比特币网络最多只能处理2000多笔交易,换算成每秒3 ~ 5笔交易的处理速度。
世界上有如此多的比特币交易,但区块链每秒最多只能处理5笔交易,这成为了制约比特币发展的瓶颈。
很久以前就有人呼吁改革比特币协议,提高处理速度。这件事在2017年8月得到了一点关注,当时区块链出现了一个分叉,一个新的协议诞生了,叫做比特币现金(简称BCH)。这种新货币的其他方面与比特币一致,即每个块的大小从1MB增加到8MB,因此处理速度提高了8倍,手续费也低了很多。该协议是原区块链的一个分叉,所以当时持有比特币的人等于一个人获得了等量的BCH。
BCH相当于创造了一种新的货币。也有人建议将原比特币的块大小提高到2MB,称为SegWit2x。这一提案原定于2017年11月实施,但因缺乏共识而在最后一刻取消,目前仍在讨论中。
七。对等网络
比特币在全世界都是一个开放的网络。只要有服务器,就可以加入这个网络,成为一个节点。每个节点包含整个区块链(目前大约100 GB),并且信息在节点之间不断同步。
当你付款时,你的节点将把交易告诉另一个节点,直到交易传遍整个网络。矿工们从网上收集各种新交易,打包后写入区块链。一旦写入成功,矿工节点的区块链成为最新版本,其他节点会复制新添加的块,保证全网区块链一致。
最后,您的节点还获得了最新的区块链,因此知道您以前的事务已经写入其中。到目前为止,已经确认交易成功。
八,还有一个问题。
写到这里,我已经介绍了比特币的基础知识。希望你已经明白比特币是怎么回事了。但还有一个根本问题我没有回答:比特币的本质是什么?
归根结底,比特币只是区块链的一个记录。它是凭空产生的。为什么可以当钱用?比如矿工获得12.5比特币的奖励。事实上,在区块链有一项记录:“xxx地址获得12.5个比特币”。正是这一记录导致了矿工的巨款。如果区块链中突然增加了一条记录,说明你的地址获得了1000个比特币,那么你就真的拥有了1000个比特币。这到底是为什么?
边肖为您推荐一个C/C学习小组496926338。无论你是大牛还是小白,想转行或者入行都可以来认识,一起进步,一起学习!群里有很多干货和技术分享!
这篇文章够长了,我就留到下次吧。请关注本系列的最后一篇文章,《区块链入门教程》。