李逍遥

区块链(比特币)怎么样的运行机制

李逍遥 比特币 2018-03-02
区块链(比特币)怎么样的运行机制 区块链(比特币)怎么样的运行机制 比特币

1、 我们需要的是一个账本。

看一下我们现在每天的生活:早上从关联的银行卡里转了2000元到支付宝的余额宝,下午从支付宝转了500元给朋友,晚上在淘宝上购物支付了100元。第二天又将余额宝的钱提到了银行卡,并通过网银转给了外地的亲戚。在整个过程中,你并没有取出一点纸币,只是银行在帮你把每一次的消费和转账记了一个流水账,你相信他们记账没错,在任何时候你都可以可以打印明细查询,并确认自己的余额(也是一个数字而已)。事实上,货币交易的本质就是一个“不会被篡改的账本”,比特币就是这样一个通过底层算法确保不会被篡改的大账本,它详细的记录并且检查、确认每一笔钱的去向。

2、怎么记账呢?

区块链(比特币)怎么样的运行机制 区块链(比特币)怎么样的运行机制 比特币
节点

节点就是运行比特币客户端的计算机,正是通过这些分布在全世界各个角落的成千上万的计算机节点,实现了比特币的各项功能。他们通过互联网连接,却又没有一个中心。任何一台或者大多数节点断网或者损毁,都不会影响比特币的运行。只要还有一个节点存在,数据就不会丢失,后来的节点仍然可以从该节点获取比特币诞生以来所有的交易数据。

区块链(比特币)怎么样的运行机制 区块链(比特币)怎么样的运行机制 比特币

区块链

如同故事里讲的一个一个的账本,编号以后堆叠起来。比特币也是每隔10分钟左右把全网发生的交易打包编号,就像一个“区块”。一个一个的区块连接起来,就像是由区块组成的链条,所以这种分布式账本被称为“区块链”(Blockchain)。

区块链(比特币)怎么样的运行机制 区块链(比特币)怎么样的运行机制 比特币

争夺记账权—POW

比特币的分布式记账系统,每个区块开头都有一个哈希(请忽略这两个字)计算的难题,要想得到答案,没有好办法,只能不断的输入不同的数值去猜,但一旦猜对了,别人都可以很容易核实,代入验算就行了。这就是工作量证明(Proof of Work,简称POW),通俗的讲就是,只要你猜对了难题的答案,系统就可以认为你一定是经过了大量的计算工作的,否则是不可能猜对的。既然付出劳动了,而且得到了答案,那就把记账权给你吧。

交易输出—UTXO

在比特币的世界里,一笔交易产生的每个输出被称为UTXO,它一旦生成,就不能被分割了,是比特币交易的最小单位,就像是被直接铸造成了一个硬币,你不能切开使用了。我们从银行取了100元钱,这100元实实在在就躺在了我们的钱包里,如果我不小心弄丢了,别人捡到就可以花掉。在比特币的世界,我们并不“拥有”比特币,我们所拥有的是这样一种权力:通过自己的密钥向全网声明我拥有将某个UTXO放行(转账、消费)的权力。我们的比特币钱包向你展示的你“账户”里的余额,实际上是钱包计算了整个比特币大账本中,你可以通过密钥支配的UTXO的总额。比特币管理的就是这些UTXO。

我们再举一个例子来说明一下:

A在B店里买了一个面包,需要付1个比特币(为了举例方便,就不要纠结是什么面包了),A通过钱包向B支付1个BTC(比特币的货币符号),此时钱包会自动在比特币网络搜索所有A可以支配的UTXO(也就是A此前接收到的别人的付款),发现有一笔0.6BTC的UTXO、一笔0.3BTC的UTXO、一笔0.2BTC的UTXO,于是把这三个UTXO合计1.1BTC合在一起,创建了一笔交易的输入,输入密钥,转到B的收款地址后,产生了两笔输出:其中1BTC给了B,另外的0.1BTC找零,又发送给了A。该笔交易就产生了两个新的UTXO,一个是A的0.1BTC,一个是B的1BTC,这两个新的UTXO不能分割了,只能被用来创建下一个新的交易输入。

交易确认

一笔交易被打包进一个区块中,就意味着一次“确认”,在此区块后面继续不断的产生新的区块,每增加一个区块就意味着该交易多了一次确认。一笔交易经过了6个确认以后,在数学上基本就可以说,该交易已经不可能被篡改。

区块链(比特币)怎么样的运行机制 区块链(比特币)怎么样的运行机制 比特币

一笔比特币交易是怎么完成的

现在我们以上面买面包的例子来完整的看一下一笔比特币的交易过程:

(1)A向B购买面包,通过比特币钱包向B支付1BTC;

(2)钱包开始自动在A所有可以支配的UTXO进行拼凑,结果凑了3个UTXO合计1.1BTC,创建了一个交易;

(3)A输入了密钥,以及B的收款地址,将UTXO放行,产生了给B的1BTC和给A的0.1BTC找零这两个新UTXO,并向比特币系统广播了这笔交易;

(4)附近收到信息的矿工C,将这笔交易放到想要打包的区块里,并快速解题希望获得打包权;

(5)很幸运,矿工C获得了打包权,验证刚才这笔交易是否合法(可以一直追溯这笔钱的源头,确认其是否合法),并广播给其他矿工,这样其他矿工就放弃这笔交易,去找别的交易打包了;

(6)矿工C打包完这个区块D,继续找其他交易打包去了,而新的区块不断的在D的基础上叠加,交易得到多次确认;

(7)B拥有了支配这笔钱的权力,可以通过自己的密钥继续下一次的消费了。

 区块链(比特币)怎么样的运行机制 比特币
继续浏览有关 区块链比特币 的文章
发表评论