交易及记账(上) | 小白学比特币之二

本文目录
01. 比特币记账方法
02. 交易链
03. 比特币系统中的找零
04. UTXO

精读「Mastering Bitcoin」1中, 提到比特币不仅是一个电子现金(系统),也是一个公开的账本,这账本上记录了每笔交易的信息。用比特币交易,其实就跟我们用人民币或者美元交易买卖东西一样。作者给比特币交易行为的定义是:

In simple terms, a transaction tells the network that the owner of some bitcoin value has authorized the transfer of that value to another owner. The new owner can now spend the bitcoin by creating another transaction that authorizes transfer to another owner, and so on , in a chain of ownership. (简单来说,一笔转账告诉网络,这些比特币的所有者授权将这些比特币转给另外一个所有者。新的所有者可以通过创建一笔新的交易,授权转账给其他所有者,来花费这比特币,以此类推。)

那么,在比特币系统里,是以什么样的形式将这些交易记录下来的呢?

01. 比特币的记账方法

1.1 复式记账

跟传统记账一样,在比特币系统中也对交易采用复式记账的方法 (double-entry bookkeeping ledger),直白点翻译就是双入口记账。复式记账,简单理解就是以下两点[1]

  • 每一笔交易都要在至少两个账户上进行记录。
  • 每一笔debit必须有一笔credit与之相匹配。(每单笔交易转账及所有交易转账总和都需要遵守基本会计等式 资产(Assets) = 负债 (Liabiliteis) + 所有者权益 (Equity))
    复式记账

每一笔交易都要至少在两个账户上进行记录,在会计记账中有三个基本账户也就是资产账户、负债账户以及所有者权益账户,跟会计等式资产(Assets) = 负债 (Liabiliteis) + 所有者权益 (Equity)是一一对应的。那么单独每个账户又是以怎么样的方式呈现出来的呢?方法是每个账户都需要记录这个账户的debits和credits(见上图):

  • debits,借出给其他账户,记在账户左边。
  • credits,从其他账户借入,记在账户右边。

1.2 比特币的复式记账

说完复式记账,再回到《Mastering Bitcoin》(精通比特币) ,在书中,作者给出的记账例子如下面那张截图;一笔交易中可以包含多个Input和output。这里的Input和output如何理解呢?

Each transaction contains one or more "inputs", which are like debits against a bitcoin account. On the other side of the transaction, there are one or more "outputs", which are like credits added to a bitcoin account. (每笔交易都包含一个或多个“输入”,就像存入比特币在比特币账户里。同样的,每笔交易也都包含一个或多个“输出”,就像在一个比特币账户增加一笔贷款。)


比特币复式记账

总结一下:

In summary, transactions move value from transaction inputs to transaction outputs. 交易是将价值从Input移到output。

通过作者这句话,可以看到比特币系统其实执行的是价值交易。更进一步地,可以理解为价值的输入和输出。

02.交易链(Transaction Chains)

上笔交易和下笔交易之间会形成一个“无形的链”:

The transactions form a chain, where the inputs from the latest transaction correspond to outputs from previous transctions. (这些交易会形成一个“链”,这个“链”上的input来自上一笔交易里相应的output,而这output又来自更早的一笔交易)。

作者用一张图形象的说明了什么是“交易链”。

  • 在第一个笔交易中,Joe转给Alice 0.1005BTC, 在output这一边,有Alice地址里的0.1BTC以及0.005BTC的转账费用,加起来等于左边input的0.1005BTC。
  • 在第二笔交易中,Alice转给Bob 0.0150BTC,output这一边里Bob钱包里的0.015BTC,加上Alice钱包里的0.0845BTC,再加上转账费用0.0005BTC等于左边input Alice钱包里的总额0.1BTC。


    比特币交易链

对于同一个地址而言,上一笔交易中的output将会作为下一笔交易的输入,这样就形成了一个交易链。

比特币交易链

03. 找零[2]

在上面的交易截图中,我们可以看到这几笔交易里有spentunspentchangechange为找零地址,为什么会有找零地址呢?

This is beacuse transaction inputs, like currency notes, cannot be divided. (这是因为交易输入就和纸币一样,不可以被分割)

比特币系统中的找零概念和平时用现金交易的找零概念是一样的,如果你要买一个1块钱的包子,但是你身上只有一张20块钱的纸币,这个时候就需要包子铺老板找给你19元零钱。

Inputs Outputs
20元 1 元 (给包子铺老板)
10 元 (unspent)
5元 (unspent)
1元 (unspent)
1元 (unspent)
1元 (unspent)
1元 (unspent)

在比特币系统中,每一个input就相当于一定面值的纸币。如果一笔交易中只包含一个Input,为20个BTC,当这个地址向其他地址支付1个BTC时候,就需要对方找还19个BTC。不同的是,比特币不像纸币那样只有几种面值固定的纸币,比特币系统可以随时创建“新面值”。

Inputs Outputs
20BTC-被销毁 1BTC (spent)
19BTC (新创建的面值,找还给你)

出于保护隐私的考虑,找零地址没必要跟原先的付款地址一样,通常钱包会生成一个新的找零地址。

在真实应用中,并不会在找零地址旁边标注change的字样,如下图显示(截图来自blockchain.info上的某笔交易),

交易详情

04. 比特币也有面值: UTXO

比特币系统可以随时创建“新面值”来用于找零,而且这“零钱”可以用于下次交易。在每个输出(output)记录里,可消费的比特币数量会被标记成unspent,这样的输出有一个专门的名字叫做Unspent Transaction Outputs(UTXO)。可以把unspent的输出理解为面值不同的、可用于下次消费的纸币,就好像10元面值纸币、100元面值纸币那样。

参考文献

[1] Mastering Bitcoin 第二版 https://github.com/bitcoinbook/bitcoinbook
[2] http://learnmeabitcoin.com


ChangeLog

  • 20180316 标题更改为“小白学比特币”, 增加参考文献
  • 20180315 修改标题

  1. https://www.myaccountingcourse.com/accounting-basics/double-entry-accounting

  2. https://en.bitcoin.it/wiki/Change

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

推荐阅读更多精彩内容

  • 一、快速术语检索 比特币地址:(例如:1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV)由一串...
    不如假如阅读 15,917评论 4 87
  • 最近电视、新闻、网站经常有讲到比特币,但普通人经常被比特币的各种信息搞得一头雾水,到底什么是比特币,它是谁开发的,...
    纳兰三少阅读 3,467评论 0 17
  • 今天仍然很冷,所幸是没再下雨。多云的空中不时会投射下久违的阳光。我和女儿出去散步,在一栋住宅楼门口,两个小女孩,...
    婉约的歌阅读 143评论 0 0
  • 昨夜已经很晚了,突然接到了一名同学的电话,说另一同学从北京回来了,想和同学们聚聚。 说实话的,对于同学聚会,我是很...
    小桥流水人家413阅读 359评论 0 2
  • 读完《摆渡人》这本书,心中无限感慨。其实,在我看到这个书名时,我就有一个疑问,摆渡人在摆渡什么?是幸福,是人的罪...
    风吹过指尖沙阅读 408评论 1 4