47 快速交易问题研究
中本聪在本章中解释说支付处理公司将为商家的交易利益监控比特币网络, 并监控其他冲突的交易。由于节点只接受第一笔交易,随后会拒绝与之冲突的其他交易,所以商家的交易理应首先被收到。如果支付处理公司看到了冲突的交易 ,就会通知商家交易有问题。当然,如果正确的那笔交易被正式接受了,商家可以选择给客户退款或者继续销售。
回复:比特币零食售卖机(快速交易问题)
中本聪,2010年7月17日,下午10:29:13
引自:Insti,2010年7月17日,上午02:33:41
比特币零食售卖机怎么工作?
1. 走到机器前。给它一枚比特币。
2. 这一步干什么
3. 离开机器,享受美食。(获利!)
您不想等一个小时来确认交易。
售卖机公司不想送出去一堆免费糖果。
第二步到底是做什么的?
我相信支付处理公司有可能提供快速交易处理服务,在不超过10秒的时间内进行充分的检查。
网络节点只接受一笔交易的第一个版本,以将其合并到正在生成的区块中。 当广播一笔交易时,如果其他人同时也广播了双重消费的交易,这就称为一场节点传播赛。如果一方的动作稍微早一些,就会几何级快速传播至整个网络到达大部分的节点。
一个粗略的简单例子:
1 0
4 1
16 4
64 16
80% 20%
因此,如果一笔双重消费慢一秒钟发出,就会承受巨大不利。
支付处理器与许多节点连接。当它收到一笔交易,立刻发送给这些节点,同时监控网络的双重消费。如果在监听的节点上收到一笔双重消费,那么它就发出交易警告。如果任意一个监听节点都没收到双重消费,则这笔双重消费也必然传播得不好。双重消费可能只能等到监听期结束,但是到那时,支付处理器的广播已经到达了大多数节点,或者在传播上遥遥领先,双重消费根本没希望在剩余节点里取得显著比例。
后来又有一组讨论涉及可扩展性和交易速度。中本聪把上面那组讨论又点了出来。
回复:可扩展性和交易速度
中本聪,2010年7月29日,上午02:00:38
引自:Red, 2010年7月22日,上午05:17:28
我很好奇开发者对可扩展性的感受。例如,系统是否可以处理一百万用户? 这些用户每人每天平均做5笔交易,每天500万笔交易差不多相当于每十分钟35000笔。
要在区块链的一百万个节点上传播35000笔交易,是否存在瓶颈?系统是否就是这么设计的呢?
当前系统的每个用户都是比特币网络上的一个节点,这不是大规模下的预期配置。这就像每个Usenet用户都运行自己的NNTP服务器。在设计上支持让用户仅仅是用户。运行节点的负担越重,节点就越少。少量几个节点将会是大型服务器集群。剩下的就是只进行交易而不生产区块的客户端。
引自:bytemaster,2010年7月28日,下午08:59:42
此外,需要10分钟才能证明支付有效,这个时间太长了。需要像现在刷信用卡那样快才可以。
参见零食售卖机的讨论,我概述了支付处理器如何进行充分的支付验证,实际上真的非常好(欺诈率比信用卡要低得多),不超过10秒就可以完成。如果您不信或者不明白,那我也没时间来说服您,反正我信了。
http://bitcointalk.org/index.phptopic=423.msg3819#msg3819