详细解说比特币到账时间交易为什么不能实时到账

登录以解锁更多InfoQ新功能
获取更新并接收通知
给您喜爱的内容点赞
关注您喜爱的编辑与同行
966,690 一月 独立访问用户
语言 & 开发
架构 & 设计
文化 & 方法
您目前处于:
揭秘比特币和区块链(五):深入理解比特币交易的脚本
揭秘比特币和区块链(五):深入理解比特币交易的脚本
7&他的粉丝
日. 估计阅读时间:
:开启与Netflix、微软、ThoughtWorks等公司的技术创新之路!
亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的。
Author Contacted
语言 & 开发
235 他的粉丝
架构 & 设计
605 他的粉丝
6 他的粉丝
0 他的粉丝
1 他的粉丝
相关厂商内容
相关赞助商
告诉我们您的想法
允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p
当有人回复此评论时请E-mail通知我
允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p
当有人回复此评论时请E-mail通知我
允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p
当有人回复此评论时请E-mail通知我
赞助商链接
InfoQ每周精要
订阅InfoQ每周精要,加入拥有25万多名资深开发者的庞大技术社区。
架构 & 设计
文化 & 方法
InfoQ.com及所有内容,版权所有 ©
C4Media Inc. InfoQ.com 服务器由 提供, 我们最信赖的ISP伙伴。
极客邦控股(北京)有限公司
找回密码....
InfoQ账号使用的E-mail
关注你最喜爱的话题和作者
快速浏览网站内你所感兴趣话题的精选内容。
内容自由定制
选择想要阅读的主题和喜爱的作者定制自己的新闻源。
设置通知机制以获取内容更新对您而言是否重要
注意:如果要修改您的邮箱,我们将会发送确认邮件到您原来的邮箱。
使用现有的公司名称
修改公司名称为:
公司性质:
使用现有的公司性质
修改公司性质为:
使用现有的公司规模
修改公司规模为:
使用现在的国家
使用现在的省份
Subscribe to our newsletter?
Subscribe to our industry email notices?
我们发现您在使用ad blocker。
我们理解您使用ad blocker的初衷,但为了保证InfoQ能够继续以免费方式为您服务,我们需要您的支持。InfoQ绝不会在未经您许可的情况下将您的数据提供给第三方。我们仅将其用于向读者发送相关广告内容。请您将InfoQ添加至白名单,感谢您的理解与支持。详细解说比特币交易为什么不能实时到账?
来源:&&&&阅读数量&8713
用过钱包或者交易所交易比特币的用户,应该对交易的实时性深有体会:
发起转账后,需要过至少10分钟的时间,有时甚至半个小时、几个小时,才能完成一笔交易。
其实,发起转账后需要大概10分钟才能完成交易,是因为比特币机制就是这么设计的,不可更改的;
而有时候延迟半小时、几个小时才能完成交易,是因为交易的量实在是太多了导致的(其实这种情况也是由于比特币机制设计的缺陷导致的,但是理论上是可以修改的,后面我们会聊为什么不修改成支持很多人交易的机制)。
我们今天先聊为什么需要花10分钟才能完成一笔交易。
大家可能联想到,一个区块的出块时间平均为10分钟:比特币挖矿为什么10分钟挖出一个区块?,其实,实际上10分钟完成一笔交易也就是因为出块时间的原因。
在那篇文章下方,我曾写了这样的声明:
声明:为了理解流程,我按照“验证交易、获得权力、打包区块”的流程讲解的,但实际上,是每个矿工在得知前一个区块被人抢走之后,马上打包下一个区块,只是马上打包的下一个区块并是不被认证的区块,区块里包含了这段时间的未确认交易(未确认交易,以后会提到这个词,很重要),并开始答题,第一位得出答案的矿工,广播全网,得到认证,加入到主链中。
实际上,流程并不是①验证交易②获得权力③写入区块④发币。
正确的挖矿流程应该是这样的:
①一边验证在交易池中已有的未确认交易,一边计算数学题,一边收集新的未进入交易池的未确认交易作为下一个区块的候选验证交易,一边持续监听全网是否有人比自己先算出结果。
②解出答案,打包区块,全网广播区块,并将自己打包的区块加入到自己保存的主链中;或者是发现有人先算出来结果,那么就将别人广播的区块加入到自己保存的主链中。
用个例子来说明:
假设此时全球所有矿工都在解第20013号区块的数学题(),我们假设矿工A也参与其中,那么从20013号数学题开始解题,到开始解20014号数学题,我们分为两个时间段:“解20013号数学题的过程中”、“20013号数学题被解答了”,来详细了解矿工A做了什么事:
(一)解20013号数学题的过程中
矿工A需要做:
拼命计算第20013号数学题。
2、验证交易。
矿工A需要验证几百条未确认的交易的合法性、真实性。这些交易从哪来?是在20012号区块结束之后、20013开始时,矿工A整理了到20012号区块结束时所有的未确认交易,此时矿工A做了个优先级排序,挑出几百条,作为了打包20013号区块时附带的交易。
3、收集交易。
在矿工A拼命计算20013号数学题的过程中,肯定会有普通用户在用钱包交易比特币,于是,这些新产生的交易在很短的时间内被传达到矿工A这之后,矿工A由于已经定了20013号区块想包含哪些交易记录了,新来的交易只能放在之后的区块中验证了,所以矿工A先将这些新的未确认交易记录存储在他自己的交易池中。
4、监听区块。
矿工A一边拼命计算20013号数学题,一边监听全网是否有人已经先解答出来。结果有两种,一种是矿工A第一个解答出来了,另一种是监听到别人先解答出来了。这两种情况,我们继续说:
(二)20013号数学题被解答了
· 如果矿工A是第一个解答出来的,他需要做:
1、立刻将他自己准备的区块广播到网络中,让其他矿工知道。
2、将自己的区块写入自己之前准备好的主链中。
3、开始建立第20014号区块,此时,全球任何矿工一旦收到了矿工A发出的20013号区块,都可以开始迅速建立20014号区块作为候选。只是这些20014号区块都是候选区块,都是无效的,必须要等解题成功并被其他矿工验证之后才算有效。
4、从交易池中挑出要放入20014号区块的几百个交易,开始验证。(交易池中包括了老的未确认交易,以及在计算20013号数学题新生成的新交易。)
5、马上开始准备第20014道题的计算。
·如果矿工A不是第一个解答出来的,他需要做:
1、立刻丢掉正在计算的20013号数学题。
2、立刻放弃自己建立的20013号候选区块。
3、将“计算20013号区块过程中,现实世界产生的新交易”放入交易池中。
4、将自己准备的20013号候选区块中的交易挪出,并对比真正生效的20013号区块里面的交易信息,如果自己生成的20013号候选区块里,有一些交易已经存在于别人发过来的真正生效的20013号区块中,那么这些交易已经是被验证过的了,那么矿工A需要把这些交易删掉,然后需要将自己生成的候选区块中剩余未出现在真正生效的20013号区块中的交易,重新放入交易池中,以保证自己的交易池都是未确认的交易。
5、差不多处理好了,于是矿工A迅速建立第20014号区块。(其他矿工也能建立20014号区块,只是,这些20014号区块都是候选区块,都是无效的,必须要等解题成功并被其他矿工验证之后才算有效。)
6、从更新之后的交易池中,挑出准备打包到第20014号区块的几百条交易。
7、开始循环【解题过程中】的几个步骤:解第20014号区块的数学题、验证交易、收集交易、监听区块。
至此,一个大流程就完成了。20014区块、20015区块,甚至之后的所有区块,都是这个流程,如此往复循环。
理解之后,你就会发现,如果的这笔交易是在矿工们计算第20013号数学题时发起交易的,那么这笔交易肯定不能被记录到20013号区块中,因为矿工们早已在20012号答题结束之后选好了哪些交易该进20013号区块。所以这笔交易目前是被矿工们收集了而已,需要等矿工们开始计算第20014号数学题时,这笔交易才能被验证,然后等20014号数学题解答之后,这笔交易才能真正地被认为是合法的交易,然后钱包才能真正地将10个比特币()的余额展示给李四。比特币交易确认的时间设定成了10分钟。然后。。。
网上说为了安全起见。最好6次确认。也就是60分钟以后。确认收款。这就是说。收款方是可以选择的,10分钟确认,或者是60分钟确认,那么怎么做这个选择,是不是有个确认收款的按钮?本帖悬赏20金币,奖励那些认真回答我问题的人,本人小白,啥也不懂,没有水贴的意图,希望大家不要见怪。
对于小额支付,接受方甚至可以使用0确认。一般的1确认也就可以了,对特别大额的支付6确认保险一点。
确认与否,接收方是可以清楚看到的,没有也不需要什么按钮,这个你只要使用过比特币钱包就会明白
补充内容 ( 20:13):
10分钟只是大概,有可能12分钟,有可能8分钟,不是定死10分钟的
钱包里可以看到有几个确认
去blockchain.info或类似网站可以查到交易已经有几个确认,确认的数量最重要,时间不是很准确
这是个概率问题,中本聪经过计算6个确认后交易已经不可能被逆转,要逆转一个交易(51%)攻击者需要花费大量的算力,所以对日常的小额支付是不要等待的。
买卖比特币来币看,找小宝
自动确认。。。可以参考qt用法
对于小额支付,接受方甚至可以使用0确认。一般的1确认也就可以了,对特别大额的支付6确认保险一点。
确认与否,接收方是可以清楚看到的,没有也不需要什么按钮,这个你只要使用过比特币钱包就会明白
补充内容 ( 20:13):
10分钟只是大概,有可能12分钟,有可能8分钟,不是定死10分钟的
您需要登录后才可以发帖
作者的其他主题“为什么我的比特币交易需要那么长时间? ” 原因在这儿_巴比特_服务于区块链创新者
“为什么我的比特币交易需要那么长时间? ” 原因在这儿
可能您还没注意到这个问题,但我确实遇到了。最近我的比特币钱包接收一笔比特币转账所需的时间越来越长,屡现延迟,甚至有时候提示我为什么还在等着。这个问题两三个月前还没发生过,尽管一整年内区块链一直时不时出现交易延迟的问题。根据我的总结,这应该有两方面的问题,让我们一起来探寻其中的主要问题及可能的解决方案吧。
区块大小之争有待解决
2015年夏,比特币协议首次展露交易疲软的迹象后,区块大小的争论也随之全面展开。一些大公司曾想将区块扩容到8MB以便缓解区块链交易拥堵的情况。最终,社区对此实行了缓冲之计。不过今年年底前,我们就会迎来更高效的解决方案,比如即将到来的隔离见证(Segregated Witness)方案,将对区块有效大小的提升率高达70%。还有(Lightning Network)应该也会不久后实现。
假如存在一堆空白区块,假如全世界没有抢着要用比特币,假如比特币真如主流媒体所喜欢宣扬地那样“灭亡”了,那就不会出现当前这些问题了。然而,现实是比特币还是一如既往地流行,不过现在每日总交易趋缓了,可能主要是因为当前1MB的限制。似乎交易超过了总空间的承载能力,所以区块大小是首要原因。不过正如上述所提到的,解决方案即将来临。
交易费是关键
我的钱包提示交易延迟源于支付给矿工的交易费。 因此21.co 发现导致延迟问题的另一个原因,具体如下:
如上述图标,其中的信息可以实时查询,您可以看到图表上方黄色长条框,其代表区块链内存池(mempool)72小时内的交易数量,不难发现交易出现延迟。图标右侧的两个指标分别表示落后的区块和所需的时间,我们可以发现所有延迟交易一个共同之处,即矿工费是10聪或者更少,此情况下交易显示延迟20个区块或者还需要4小时之久。矿工费超过10聪的,延迟就有所缓解。而矿工费超过50聪的几乎没有发生延迟问题,其享受的可谓是VIP服务待遇。
所以,如果您想快速交易,可以询问交易所或者钱包提供方是否可以手动调整矿工费。上个月我曾经为了一笔交易等了两三个小时,看来这是可以避免的,不过需要自己主动解决,当然也不是所有钱包服务方都能提供这种灵活服务。
估计一旦实现了隔离见证和闪电网络,2017年将会见证比特币交易的大幅提升和进步。当前的僵局只不过将变成21世纪金融技术前沿第一批“吃螃蟹”的体验者们的回忆罢了。未来有一天,您可能会对自己的孙辈讲述道:”曾经在我们那个年代,比特币交易要等3个小时!”
发文时比特币标准价格 买价:¥4483.00
卖价:¥4478.00
您需要登录后才可以回复
赞助0.0083964 BTC浅谈比特币交易平台的监管机制_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
浅谈比特币交易平台的监管机制
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 比特币提现多久到账 的文章

 

随机推荐