美文网首页@IT·互联网
区块链的故事 - 16 - UTXO

区块链的故事 - 16 - UTXO

作者: 灯下鼠 | 来源:发表于2019-04-16 09:14 被阅读20次

    UTXO

    比特币是一种货币,但这个系统中并不存在一枚金光闪闪的 “币”。 中本聪在设计的时候,让比特币以交易记录的形式出现。你并非拥有一个比特币,而是拥有别人转给你比特币的一笔记录。这个记录叫做 UTXO (Unspent Transaction Output - 未花费的输出)。

    听起来拗口,但说穿了,和古老的现金模式在本质上有相似之处。你打开你的钱包,发现里面有 1 张 100 元,2 张 50 元, 1 张 10 元,这些钞票就是你的 UTXO (Unspent Transaction Output - 未花费的输出)。如果你想知道自己一共有多少钱,并没有一个余额表给你查看,你需要将钞票从钱包里拿出来,一五一十的点清楚。 如果你要付钱给别人,也是在钱包中的 UTXO 钞票挑出一张交给别人。

    我们被银行的余额制荼毒太久,脑袋中的思维极易被余额制所固化。

    但比特币的 UTXO 比黄金、纸钞等实物货币,更进了一步。它抛弃了类似纸钞这样的独立实体,而是用交易记录来体现货币。

    让我们设想一个故事,1000 人乘飞机降落到了无人荒岛,建设了一个与世隔绝的社会。 他们耕种、打猎、纺织,开展各种经济活动,并且建设了自由市场,开展贸易。但荒岛上没有印钞机,也没有黄金,用什么做货币呢?难道真用贝壳做货币?可是这荒岛上那贝壳真是遍地都是,不具备稀缺性

    其中有一位叫中本聪的聪明人,他深思熟虑之后,提了一个建议。干脆我们不用实物做货币,改用记账的方式来表征货币。 比如,Alice 要买 Bob 的大麦 100 斤,Bob 标价 10 美元,他们来到荒岛之前都用美元,所以现在也沿用美元计价。 那么 Alice 支付 Bob 10 美元。记录在纸上为:

    Alice  支付  Bob 10 美元 20170909

    Bob 收到这张纸条记录,这就是 Bob 的一张 UTXO。 Bob 在需要支付其他人,比如 Eva 款项的时 候,就可以用这张 UTXO 记录去支付,这笔交易可以呈现为:

    在 90011 这笔交易中,Bob 支付 Eva 10 美元,记录在交易信息的右边。 Bob 为了支付这 10 美元,从自己的 UTXO 库中,找到了 Alice 支付他的这笔收入,假设交易编号为 90000。 Bob 用这笔收入的 UTXO 作为支付 Eva 10 美元的输入。

    而 Bob 支付 Eva 的 10 美元,在交易记录到达 Eva 后,便成为了 Eva 的 UTXO。

    在复杂的交易中, 比如 Eva 需要支付 12 美元到不同的人,她从 UTXO 记录中,找到了两条记录,分别是 10 美元和 3 美元。 Eva 用这两笔 UTXO 共计 13 美元,支付给 TOM、Jason 和 Alice 共 12 美元。但还多余的 1 美元怎么处理? 在比特币系统中,没有对方找零这么一说的。 解决方法是 Eva  在交易中构造一个输出给自己支付 1 美元。交易的信息如下:

    所以,一笔交易的输出,就会形成收款方的 UTXO,而收款方使用 UTXO 支付的时候,这个输出将 成为新交易中的输入。

    区块链的故事 - 1

    区块链的故事 - 2

    区块链的故事 - 3

    区块链的故事- 4

    区块链的故事 - 5

    区块链的故事 - 6

    区块链的故事 - 7

    区块链的故事 - 8

    区块链的故事 - 9

    区块链的故事 - 10

    区块链的故事 - 11

    区块链的故事 - 12

    区块链的故事 - 13

    区块链的故事 - 14

    区块链的故事 - 15

    相关文章

      网友评论

        本文标题:区块链的故事 - 16 - UTXO

        本文链接:https://www.haomeiwen.com/subject/gllvwqtx.html