【交易】区块链交易模型解读

|全链社 2018-05-05 09:07:17 997 来源:全链社
摘要:(unspent transaction output)是指未花费的交易输出,这是比特币交易中核心概念。 UTXO是比特币拥有者的公钥锁定的一个数字,实际是是拥有者的公钥加密的数字

首先我们要先了解比特币UTXO记账模式的基本概念。


比特币UTXO系统


UTXO


(unspent transaction output)是指未花费的交易输出,这是比特币交易中核心概念。

UTXO是比特币拥有者的公钥锁定的一个数字,实际是是拥有者的公钥加密的数字,只有拥有者的私钥才能解开。


UTXO就是比特币,是比特币系统中虚拟货币的底层实现,也就是说比特币系统中没有一个虚拟货币的概念,只有UTXO。


UTXO可以用于支付,新的UTXO可以由挖矿或交易产生。


说通俗一些,UXTO就是交易中交易接收者应该收到的支付金额和交易发起者的收到的找零。


1.jpeg


UTXO存在全节点的数据库里


转账交易消耗自己的UTXO,同时生成新的UTXO,并用接收者的公钥锁定。


比特币系统中用户的“余额”实际上并不直接存在,而是通过计算得来。


比特币系统交易模型解读


1.交易输出(UTXO)


锁定的比特币数量


锁定脚本(用接收者的公钥哈希)


2.交易输入(UTXO+解锁脚本)


解锁脚本(发送者的签名和公钥)


3.签名


对发送者和接收者的公钥哈希以及整个交易签名


下图是简单交易模型


2.jpeg


交易全流程


起初,第一个挖出的区块里面包含了一个coinbase交易。在coinbase交易中,没有输入,所以也就不需要签名。coinbase交易的输出包含了一个哈希过的


公钥


(使用的是 RIPEMD16(SHA256(PubKey)) 算法)

当一个人发起交易时,就会创建一笔交易。这笔交易的输入会引用之前交易的输出。每个输入会存储一个公钥(没有被哈希)和整个交易的一个签名。


比特币网络中接收到交易的其他节点会对该交易进行验证。


除了一些其他事情,他们还会检查:在一个输入中,公钥哈希与所引用的输出哈希相匹配(这保证了发送方只能花费属于自己的币);签名是正确的(这保证了交易是由币的实际拥有者所创建)。


当一个矿工准备挖一个新块时,他会将交易放到块中,然后开始挖矿。


当新块被挖出来以后,网络中的所有其他节点会接收到一条消息,告诉其他人这个块已经被挖出并被加入到区块链。


当一个块被加入到区块链以后,交易就算完成,它的输出就可以在新的交易中被引用。


审核人:

标签: 区块链 交易模型

觉得不错,给小编个打赏吧

评论
0
0

登录后才可以评论

查看全部(0)

相关阅读

单公子

评论(0

荣格财经名家专栏

展示荣格财经专栏名家个人发布的最新、最热区块链资讯文章。

推荐名家 更多>

最新快评更多>

推荐阅读 更多>

徐小平们还是跑了

徐小平们还是跑了

2018-11-20 15:40:52

关注微博

关注荣格财经微信公众号

荣格财经读者11群

加入荣格财经技术交流群