2.比特币的原理 - 精通比特币笔记

与传统银行和支付系统不同,比特币系统是以去中心化信任为基础的。由于比特币系统中没有中央权威信任机构,信任成了比特币节点之间的一种突出的特性。

概述

image.png

如上图所示,我们可以看到比特币系统由用户(用户通过密钥控制钱包)、交易(每一笔交易都会被广播到整个比特币网络)和矿工(通过竞争计算生成在每个节点达成共识的区块链,区块链是一个分布式的公共权威账簿,包含了比特币网络发生的所有的交易)组成。

交易

比特币的交易就像是复式记账中的行,每笔交易包含一个或多个输入,产生一个或多个输出。一个或多个输入的总金额和一个或多个输出总金额的差值就是矿工的手续费。
当一笔比特币交易产生时,节点会将这笔交易广播给所有比特币节点,让所有比特币节点同时记录这笔交易,并通过共识算法,选出一个节点将交易记录在区块链上,让所有节点都认同这笔交易的有效性,信任这笔交易确实发生了。


image.png

交易也包含了每一笔被转移的比特币(输入)的所有权证明,它以所有者的数字签名形式存在,并可以被任何人独立验证。在比特币属于中,“消费”指的是签署一笔交易,转移一笔以前交易的比特币给另一个比特币地址所标识的新所有者。


image.png

上图第一笔交易是Joe转给Alice0.1个比特币,并支付了0.0005个比特币作为给矿工的手续费,此时这0.1个比特币的所有者变成了Alice。Alice将这0.1个比特币转了0.015给Bob,并支付了0.0005个比特币作为给矿工的手续费,得到剩余的0.0845个比特币的所有权,即找零钱的过程,以此类推(这里图中Bob给Gopesh的转账好像有问题,应该是原著中的图弄错了,Bob的交易输入总金额比输出总金额小,交易应该不会成功)。

常见交易形式

一般的交易通常包含一个支付地址和一个接收地址,这种交易也常常包含找零的过程。


image.png

另一种是集合交易,这种情况可能是一笔较大额的支付,需要多个不同金额的比特币才能支付。类似现实生活中一个橡皮擦居然卖100,我只能摸摸包,一张50的,两张20的,一张10块的,还好能凑足100,我就买了个价值100块的,为了举例说明的高端商务橡皮擦。

image.png

还有一种是一个输入多个输出,一笔钱转给多个人的情况。比如思聪哥高兴,拿出100w,给10个人分了。


image.png

创建交易输出

交易输出会被创建成为一个包含这笔数额的脚本的形式,只能在提供给脚本一个解答后才能兑换里面的比特币。以之前Alice转给Bob0.015个比特币为例,Alice转给Bob一笔比特币的交易输出会包含一个脚本,这个脚本说“谁能拿出一个签名和Bob的公开地址匹配上,谁就能使用这个交易输出”。因为只有经过Bob的私钥签名的信息才能匹配这个地址(非对称加密的特点之一,数字签名),所以只有保存着Bob的地址的钱包才能使用这个交易输出。这个交易还包含另一个交易输出,即给Alice的找零。所以这笔交易包含两个支付,一个支付给Bob,一个支付给Alice自己。另外,为了让这笔交易尽快被网络处理,Alice的钱包程序会多付一小笔费用。这不是明显的包含在交易中的,而是通过输入和输出的差值(除找零外)所隐含的。

挖矿

上述的Alice转给Bob比特币的交易通过P2P网络在比特币网络中传播开来。但只有通过被称为“挖矿”的过程验证,并且加入到一个区块中之后,这笔交易才会成为比特币公共账簿(区块链)中的一部分。

比特币的信任是建立在计算的基础之上。交易被验证并放入到区块中需要极大的计算量才能完成,但只需要少量计算就能验证他们已经被证明加入到区块链中。挖矿在比特币系统中有两个作用:

  1. 挖矿过程会构建出新区块,这时会创造出新的比特币。这和中央银行印发新的货币一样。每个区块创造的比特币数量是稳定的,但会随着时间推移而减少。
  2. 挖矿创建信任。挖矿确保只有在经过大量计算后才能验证交易并将其放入区块中。想要推翻这些验证过的交易,需要推翻所有的交易记录,也就意味着需要重新进行挖矿过程,进行更大量的计算才能完成,这个难度大到不可能完成。所以区块越多,以为着更多的信任。

挖矿的过程可以简单描述为所有节点共同参与一个很难的数学计算,只有算出答案的人才有权力将验证过的交易放入区块中,并获得产生区块而创造出的新比特币。这个数据计算题的难度是动态调整的,以达到大约10分钟就可以被解决。比特币中的这个数学计算题是基于哈希加密算法的,这使得这个数学计算题难以求解,但很容易验证解答正确与否。

区块中的挖矿交易记录

网络中产生的比特币交易必须被加入到整个比特币公开账簿(区块链)中后,才会被认为是有效的。平均每10分钟,矿工会将自上一个区块产生后所发生的所有交易打包进一个新区块中。新交易会不断通过各种比特币钱包程序流入到比特币网络中,当比特币网络中的节点(矿工)看到这些交易后,会先将它们放到各自独立维护的临时的未验证交易池中。当矿工构建新区块时,会将未验证交易池中的交易拿出来验证,并打包到新区块中,然后通过成为第一个计算出一道很难的数学难题(也叫工作量证明)后,得到将区块加入到区块链中的权力,并把这个区块加入到区块链中,得到相应的新创造出的比特币作为奖励。

这些交易被加入到新区块时,会以手续费高的优先及其它策略进行排序,优先打包手续费高的,或其它策略选出来的交易。当一个矿工收到新区块时,这就意味着有人计算出了当前数学难题的答案,它会立即开始下一个新区块的创建。它会将之前的交易和这个新区块的数字指纹放在一起构建新的区块。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,236评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,867评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,715评论 0 340
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,899评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,895评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,733评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,085评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,722评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,025评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,696评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,816评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,447评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,057评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,254评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,204评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,561评论 2 343

推荐阅读更多精彩内容