巴比特论坛

发表于 2018-11-5 18:12:24 | 显示全部楼层

转账的手续费是怎么计算的,看网上的资料一脸懵逼。说是按字节,那我怎么知道自己钱包的币多少字节的?

13条回复 跳转到指定楼层

luyexunfeng | 船员 | 发表于 2018-11-5 19:04:34 | 显示全部楼层
无可奈何花落去 发表于 2018-11-5 18:47
以太的话是一个函数,转账前自己可以设定的,一般用IM默认。其他链就不清楚了,该收多少就收多少呗,反正你 ...

感觉迷迷糊糊的不爽啊
luyexunfeng | 船员 | 发表于 2018-11-6 13:11:47 | 显示全部楼层
比如当前最佳手续费   0.00004 BTC/kVB(virtual) ,我怎么和我要转出的币对应上。
面条来五碗 | 副船长 | 发表于 2018-11-6 15:30:10 | 显示全部楼层
转账不同金额 手续费是不是不同的
luyexunfeng | 船员 | 发表于 2018-11-6 16:59:25 | 显示全部楼层
面条来五碗 发表于 2018-11-6 15:30
转账不同金额 手续费是不是不同的

网上查的好像不是这样子的,说是按字节,而多与少的字节可能是相同的。所以感觉懵逼。
BurntCoins | 副船长 | 发表于 2018-11-7 11:16:10 | 显示全部楼层

大概这样说吧……其实UTXO本来就是一个蛋疼反直觉的设计……

一个UTXO=一个金额固定不动的账户
每次收到转账=新开一个账户(哪怕是同一个地址多次收款也是一样的,每次收款都是新创建UTXO)
把收到的币转出去=消耗自己的UTXO+为收款方创建新的UTXO+为自己创建找零UTXO=销户+开户
找零=给自己开一个新账户,用来存放本次转账没用完的余额

无论开户还是销户都要收手续费,大体上是按照开户/销户的户头数量收,与具体金额没有直接关系,但是一般动用的金额多了,就需要调动(销毁)更多UTXO,所以需要更多手续费。

所以,用户还需要趁手续费低的时候“整理碎币”,也就是把小额的UTXO都销毁、合并到一个大额的UTXO里,这样碰到未来手续费高的时候就可以大幅减少手续费,而且这么做对网络上的每一个节点都有好处,因为UTXO数据库越大,验证交易越慢。

任凭那时光流逝 | 船长 | 发表于 2018-11-7 11:30:22 | 显示全部楼层
在平台上面就是固定的。。。。
luyexunfeng | 船员 | 发表于 2018-11-7 11:38:27 | 显示全部楼层
BurntCoins 发表于 2018-11-7 11:16
[md]大概这样说吧……其实UTXO本来就是一个蛋疼反直觉的设计……

一个UTXO=一个金额固定不动的账户

按户头计算的,不是按字节数计算的?
BurntCoins | 副船长 | 发表于 2018-11-7 11:54:05 | 显示全部楼层
luyexunfeng 发表于 2018-11-7 11:38
按户头计算的,不是按字节数计算的?

我只是打一个比方。
手续费当然是按照字节数计算的。不过销毁/创建的UTXO越多,字节数也越多。
比特币是没有账户的。Bitcoin Core原来搞过模拟账户,现在开发者也决定要把它干掉了。
面条来五碗 | 副船长 | 发表于 2018-11-8 14:52:10 | 显示全部楼层
luyexunfeng 发表于 2018-11-6 16:59
网上查的好像不是这样子的,说是按字节,而多与少的字节可能是相同的。所以感觉懵逼。

一脸懵 字节不应该都是一样的么?
luyexunfeng | 船员 | 发表于 2018-11-9 14:24:00 | 显示全部楼层
面条来五碗 发表于 2018-11-8 14:52
一脸懵 字节不应该都是一样的么?

不一样    看每笔交易大小    还有你自己的地址的币组成  。。。
面条来五碗 | 副船长 | 发表于 2018-11-19 09:27:38 | 显示全部楼层
luyexunfeng 发表于 2018-11-9 14:24
不一样    看每笔交易大小    还有你自己的地址的币组成  。。。

这样啊 这个还真不知道是怎么算出来的
luyexunfeng | 船员 | 发表于 2018-11-22 17:30:14 | 显示全部楼层
BurntCoins 发表于 2018-11-7 11:16
[md]大概这样说吧……其实UTXO本来就是一个蛋疼反直觉的设计……

一个UTXO=一个金额固定不动的账户

从哪拿那个UTXD,遍历交易记录吗?那么如何把几个UTXD打包交易签名呢?
BurntCoins | 副船长 | 发表于 2018-11-22 22:57:56 | 显示全部楼层
luyexunfeng 发表于 2018-11-22 17:30
从哪拿那个UTXD,遍历交易记录吗?那么如何把几个UTXD打包交易签名呢?

目前每个新上线的全节点确实都要从头遍历一遍自2009年创世以来的所有交易,一边跑一边更新UTXO数据库(存放在chainstate目录),直到追上最新的区块。
PS:老区块在自身被验证完后就不再需要被读取了,后续验证工作只需要查询UTXO数据库即可,所以老区块数据可以直接被删掉,这就是目前实现的修剪(prune)功能,并不是白皮书上说的剪枝。

一条交易可以有多个输入,每个输入都包含解锁脚本(scriptSig),这个脚本包括操作码、公钥和数字签名。对于SW交易来说,原来写解锁脚本地方是留空的,整个脚本,包括公钥和数字签名都被放到另一块数据(即见证部分,witness)里。
高级模式
您需要登录后才可以发帖 登录 | 立即注册 | 用新浪微博登录

本版积分规则

搜索

0关注 4粉丝 61主题

作者的其他主题

返回顶部 返回列表

登录

分享 发帖