查看原文
其他

比特币交易的手续费是如何计算的?| 区块链课堂第20问

2018-03-08 不碎 哈希派

比特币交易的手续费是如何计算的?


当你从一个比特币地址向另一个比特币地址转账时,通常需要附加一笔额外的手续费给矿工。在比特币的底层协议中,并没有规定这笔手续费具体的数额是多少,只是要求地址中总输入不小于总输出,即你钱包中比特币的总量必须大于你要转账的数额加上手续费数额。


手续费的高低是由交易数据的大小和交易次数等因素决定的。在之前的区块链课堂中介绍过,比特币遵循的是UTXO模型,每笔交易都包含了若干笔交易输入和交易输出。而实际上,每笔未花费交易输出的组成方式都取决于你的交易输入,当你需要向其他地址转1个BTC的时候,它可能是由你交易输入中的5个0.2BTC组成,也可能是10个0.1BTC组成。


通常,一笔普通比特币交易是由一个输入两个输出(交易输出和找零输出)构成,大小在200字节左右,按每1000字节默认收费0.0001BTC计算,普通的比特币转账费用大概在0.001-0.002BTC之间;但是当单笔输入不足以支付输出时,就会出现上述的多个交易输入构成未花费输出的问题,此时其数据量就会变大。而未花费交易输出的构成越复杂,需要处理的字节就越多,手续费也就相应越高。


由于区块容纳交易记录的容量有限,矿工一般会优先打包手续费高的交易。当然,目前在使用比特币钱包进行转账时,大部分钱包可以根据网络数据,自动将手续费调整为最佳状态;但如果你的交易需要紧急确认,那么也可以选择自定义费用。


昨日回顾:当比特币全部被挖出之后矿工怎么办?

明日预告:什么是比特币的找零机制?

※区块链课堂是哈希派围绕区块链技术推出的每日问答栏目,帮助大家从各方面了解区块链领域的相关知识。如果你对区块链有自己的想法以及相关疑惑,欢迎在评论区留言,我们将会在近期更新中为你解答。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存