火星链 火星链
Ctrl+D收藏火星链

以太坊:科普:UTXO未使用的交易输出,比特币核心概念之一

作者:

时间:1900/1/1 0:00:00

在比特币系统上其实并不存在“账户”,而只有“地址”。只要你愿意,你就可以在比特币区块链上开设无限多个钱包地址,你拥有的比特币数量是你所有的钱包地址中比特币的总和。比特币系统并不会帮你把这些地址汇总起来形成你的账户。从我到你的一笔比特币转账,是从我的一个钱包地址转到你的一个钱包地址上去。接下来的讨论就涉及比特币系统的一个关键技术性细节:UTXO。通证经济专家孟岩曾撰写一篇文章,标题是“其实没有什么比特币,只有UTXO”,这个标题指出了,对于计算机来说比特币是什么——比特币是区块链账本上的交易输出。我们来看一个两个人进行转账交易的过程,以深入理解UTXO:假设我有8个比特币,这其实意味着,之前有一个交易把这些比特币转入我的地址,这个交易的输出未被使用,我拥有了这8个比特币。现在,我要发起一个转账交易,这个交易中的输入是让我拥有这些比特币的上一个交易。我要转账给你,我做的是,对让我拥有这些8个比特币的上一个交易进行签名,把这一新转账交易的输出地址设为你的钱包地址。这样,我就发起了一个转账支付交易。等矿工将这一交易打包进新的区块,转账交易完成,这8个比特币就属于你了。你拥有的是你我这个交易的未使用的交易输出。对于一个交易签名所涉及的比特币的公钥和私钥的非对称加密机制,之后再讨论。为便于理解可类比看,钱包地址相当于房间号和锁,私钥则相当于钥匙,钥匙可以打开对应的锁。以上两个人的转账交易过程是:我用私钥取出比特币,并用私钥对从我的地址转到你的地址的新交易进行签名。一旦交易完成,这些比特币就转到你的钱包地址中去。你的钱包中新交易的未使用交易输出,只有你的私钥才可以打开。从以上讨论中我们可以看到,的确不存在比特币,只有未使用的交易输出。每一笔比特币都源自上一个交易,可以一直向上追溯上去。而一直向上追溯,在每一笔比特币的源头,都有一种特殊的交易,即比特币矿工因挖矿获得奖励的创币交易,每一个比特币都是通过挖矿被创造出来的。假设我作为比特币矿工挖矿成功赢得了25个比特币,那么这个特殊交易是,它的输入是0,而输出是25个比特币进到矿工的钱包地址中。未使用的交易输出和我们熟悉的银行账户有着很大的不同。为什么要采用这样的设计?对比银行账户和比特币的UTXO,我们可以看到UTXO的优点。

声音 | 上海股交所总经理:区块链想要大规模发展要做好社会科普工作:金色财经报道,上海股交所总经理张云峰表示,区块链当前还处于一个“概念”的阶段,距离成熟应用,影响到百姓的日常生活还有很长的路要走。对于“区块链”和其会带来的社会和经济效果,沈阳应当持审慎的态度。区块链想要大规模发展,一方面要做好这项复杂技术的社会科普工作,加快社会大众对区块链的了解。另一方面,要充分发挥市场的作用,让企业用实实在在的技术创新,赋能实体经济的发展。[2019/11/17]

1)UTXO设计易于确认比特币的所有权

如果采用传统的账户设计,当我要转账8个比特币出去时,为了完全避免造假,我们就需要逐一向上追溯,确认之前的每一笔交易,从而证明我的确拥有8个比特币。采用现在的UTXO设计,要确认我拥有8个比特币,只要确认上一个交易我的确获得了它们即可。通常只要上一个交易是真实的,我就的确拥有这些比特币。而我们都知道,一个区块经过6次确认,其中的交易可被认为是真实无误的。

声音 | CNBC主持人:加密货币最大的缺点之一就是难以向外行快速科普:CNBC主持人Ran NeuNer近期发推称,加密货币最大的缺点之一就是很难向外行快速解释。当人们要求我向他们解释比特币时,我知道他们至少需要一个小时才能真正理解。[2019/9/10]

2)UTXO设计与区块链账本是完全融为一体的

区块链账本存储的是状态。以太坊是对比特币区块链的改进,在白皮书中,以太坊创始人维塔利克分析了比特币,他认为,“比特币账本可以被认为是一个状态转换系统”。以太坊也是采用这种状态转换系统的设计,但对之进行了改进。

微观地看,每一个区块链中的交易都是一个状态转换函数,以太坊白皮书就用“以太坊状态转换函数”来讨论在区块链上一个交易的进行过程。

几乎所有的区块链都是采用这一设计,每一个新区块和它之前的所有区块一起形成了一个新的状态,如此重复、持续下去。在确认之后,之前的状态就不可篡改,即不可随意更改。UTXO是与这种状态的设计相对应的。

加深对UTXO的理解

UTXO是unspenttransactionoutputs的缩写,每一个比特币其实都是UTXO,它是比特币的最核心概念之一。

声音 | ETC Labs主管:科普教育是未来几年公链面临的巨大挑战:ETCLabs主管Darin Kotalik认为,科普教育是未来几年公链面临的巨大挑战,人们必须要对区块链有基本的认识,分清楚公链和私链的区别。[2019/8/25]

参考资料:《区块链:技术驱动金融》中相应的讨论,及文章“比特币和以太坊的记账方式——UTXO和账户余额”。

你的比特币就是UXTO

比特币的挖矿节点获得新区块的挖矿奖励,比如12.5个比特币,这时,它的钱包地址得到的就是一个UTXO,即这个新区块的币基交易的输出。币基交易是一个特殊的交易,它没有输入,只有输出。当甲要把一笔比特币转给乙时,这个过程是把甲的钱包地址中之前的一个UTXO,用私钥进行签名,发送到乙的地址。这个过程是一个新的交易,而乙得到的是一个新的UTXO。这就是为什么有人说在这个世界上根本没有比特币,只有UTXO,你的地址中的比特币是指没花掉的交易输出。

详看从甲转账给乙的过程

假设甲向乙转账,则转账过程可以分成三个阶段:1)假设Alice之前通过挖矿获得了12.5个比特币,在她的地址中,这些比特币是某个币基交易的UTXO。2)Alice发起一个交易,输入是自己的上一个交易,输出是Bob的地址,数量是12.5个比特币,Alice用自己的私钥对交易进行签名。

动态 | 美国演说家Anthony Robbins开始科普什么是比特币:美国演说家安东尼·罗宾(Anthony Robbins)在自己的网站上发布了一篇比特币的科普文章,并在推特上向自己的粉丝介绍什么是比特币,目前他的推特账户共有粉丝304万人。[2019/1/1]

这里简化了交易过程,只讨论了将上一个交易的输出全部转账的情况。如果试图转出上一个交易的输出的一部分比特币,则要进行略复杂的处理。按照比特币系统的设计,比特币交易还要遵循一个原则:每一次交易的输入值都必须全部花掉,不能只花掉部分。比如,我要转出比特币给你的钱包地址中只有8个比特币,那么很简单,我发起一个交易,把这8个比特币转到你的钱包地址中,我签名确认这个交易。但假如我的钱包地址中有25个比特币,那我发起的交易就不是转给你8个比特币,然后自己的钱包地址中还剩下17个比特币。这时,我发起的交易是:从我的钱包地址中转8个比特币给你,同时转17个比特币给我的同一地址。

3)当交易被区块链确认后,Alice的UTXO就变成了0。而在Bob的地址中就多了一个UTXO,数量是12.5。

声音 | 中科院姚建铨:要加快推进区块链与物联网融合的科普 培训:据新华网消息,日前,在区块链与物联网融合发展峰会上,中国科学院院士姚建铨说,关注区块链技术里面的大数据,跟区块链技术结合起来进行测量和检测,能更好地提升激光清洗技术。姚建铨建议,无锡今后要加快推进区块链与物联网融合的科普、培训,正确引导广大人民群众对技术的认知;同时,建立专业、权威,但又普适、成套的理论体系和标准,以此切入区块链的实际应用。[2018/9/18]

存在Bob的钱包地址中的这些比特币只有用Bob的私钥才可以签名转账给其他人。如果Bob要将这些比特币转账给其他人,则重复上述过程。简单地说,从一个地址向另一个地址转账比特币的过程,是用这个地址对应的私钥打开,再加密到另一个地址的过程。这个私钥的打开和加密就是签名的过程。在这个过程中,接收比特币的一方并不需要动用自己的私钥。

我的比特币是什么样的?它们存在哪儿

初次接触比特币的人会问:我的比特币是什么样的?它们存在哪儿?如果你头脑中参照的是在物理世界中购买金币,那么这里很不一样,你的比特币并不是存在家中或金库中,并不存在一个数字文件表示“你的比特币”。如果你头脑中参照的是银行的存款,那么你可以假设,你的比特币就“存在”于一个账本上,我们已经知道了,在数字世界中,价值是账本中的“记录”。不同的是,对比特币来说,这个账本不是一家银行的中心化数据库,比特币的账本是一个分布式账本,存在于一个去中心化的网络上。任何人都可以接入这个网络,把这个账本下载下来。但是,只有用你的私钥才能动用你的地址中的比特币。我们还可以再换一个角度看,你的比特币在哪儿?按前面说的,比特币就是UTXO,那么比特币可以被看成是上面的物理世界金币和银行存款两种概念的混合:

一方面,你的比特币是有一个“物理存在”的——对应着一个数据文件。比特币以一个交易的UTXO的形式存在着,每个交易都可被看成是一个数据文件。另一方面,所有这些交易被打包进区块链的区块中,后一个区块连着前一个区块,形成一条链,也就是独特的账本。这么看,你的比特币是这个账本上的记录。为什么采用UTXO的形式

UTXO与我们熟悉的账户概念的差别很大。我们日常接触最多的是账户,比如,我在银行开设一个账户,账户里的余额就是我的钱。但在比特币网络中没有账户的概念,你可以有多个钱包地址,每个钱包地址中都有着多个UTXO,你的钱是所有这些地址中的UTXO加起来的总和。中本聪发明比特币的目标是创建一个点对点的电子现金,UTXO的设计正可以看成是借鉴了现金的思路:我们可能在这个口袋里装点现金,在那个柜子角落里放点现金,在这种情况下不存在一个账户,你放在各处的现金加起来就是你所有的钱。采用UTXO设计还有一个技术上的理由,这种特别的数据结构可以让双重花费更容易验证。对比一下:

如果采用账户和账户余额设计,Alice要转账给Bob,为了确保Alice的确有钱,我们需要核查她之前所有的交易。随着时间的推移,比特币的交易越来越多,这个验证的难度会持续上升。采用UTXO设计,我们只要沿着每个交易的输入逐级向上核查,直到查到这笔比特币的创币交易即可。随着时间的推移,这个核查也会变难,但变难的速度要远低于采用账户和账户余额设计。这种设计使得比特币系统作为一种电子现金系统有着非常大的可扩展性。当然,我们很快会看到,通常被认为是区块链2.0的以太坊没有继续采用UTXO设计,而是考虑到其他因素,采用了账户余额的设计,其代价正是中本聪可能已经考虑到的复杂性。

标签:比特币区块链以太坊比特币中国官网联系方式40亿比特币能提现吗比特币最新价格行情走势区块链工程专业学什么区块链存证怎么弄区块链技术发展现状和趋势以太坊币是什么币

比特币交易热门资讯
比特币:中心化存储去中心化货币,是否破坏了加密货币的意义?

如果说有什么决定性文化特征促成了“币圈黄埔军校”成功的话,那就是该公司的实用主义。 2014年至2019年初这段时间里,我一直在Coinbase工作,见证了Coinbase公司从一家只有几十名员.

1900/1/1 0:00:00
比特币:币读币圈周报:比特币异动行情忽高忽低,以太坊领涨牛市?

币圈周末消息一览 1.BM:正在研究跨链通信协议相关技术。2.报告:USDT或将威胁以太坊作为支付工具的地位。3.CSW提交动议要求法院对其比特币地址清单保密.

1900/1/1 0:00:00
比特币:币聪快讯:彭博分析师观点,比特币价格可能跌至1,500美元

在经历了艰苦的季度之后,比特币的价格仍然会在未来看到更加艰难的时期。彭博社的一位分析师认为,旗舰加密货币可能会走向1,500美元.

1900/1/1 0:00:00
比特币:币聪-7月份收益黑马,恒星夺冠其收益率超过40%,能否再创佳绩

在加密货币的7月份市场中,比特币的26%反弹让许多加密货币陷入了困境。事实上,比特币优势率是一个广泛使用的指标,跟踪比特币贡献的总加密市值的百分比,从42%升至48%,在31天期间创下7个月新高.

1900/1/1 0:00:00
USC:区块链是否已准备好发行法币?银行为何认为加密现金具有巨大前景

暴走时评:多功能结算代币项目最初的目标旨在让金融机构能够直接使用得到抵押品支持的加密代币来实现彼此间的支付,从而最大限度地减少票据交换所发挥的作用.

1900/1/1 0:00:00
区块链:科普:如何用最简单的话说懂什么是区块链,它概念和意义是什么?

首先,区块链的主要作用是储存信息。任何需要保存的信息,都可以写入区块链,也可以从里面读取,所以它是数据库。其次,任何人都可以架设服务器,加入区块链网络,成为一个节点.

1900/1/1 0:00:00