上海易威数码科技有限公司

  • W-Jet320SW 追寻质感乐趣
新闻中心

比特币交易是如何实现的?

作者:大发体育-大发国际网址-大发体育官网    发布时间:2020-04-19 19:13:39    来源:大发体育-大发国际网址-大发体育官网    浏览:13

  比特币看得眼花缭乱,希望高手帮忙理理思路。谢谢。 已知:A转给B一个比特币。这笔交易要被记录在区块链中才能实现不可抵赖。这个记录过程需要矿工找到一个nonce,满足哈希的难度系数。 问:1. 记录过程是不是就是挖矿?2. 这个时间不是要很长么?3. 如果挖不到nonce不就无法记录交易导致交易失败么?4. 那么比特币转账过程的节奏怎么能和挖矿同步呢?5. 矿工挖到nonce得到比特币奖励,这个奖励的比特币怎么在区块链上被记录?6.…

  A要转给B一些比特币,就把“A付出N个币,B收到M个币”这句话加上A的电子签名发到网上就行了。N和M可以是小数(这就是比特币可拆分的由来);N要比M大,多的部分就是给矿工的服务费。

  电子签名用A的私钥生成,可以用A的帐号(也就是A的公钥)解开,矿工们按此验证这句话确实是A发出来的。然后这句线P下载的模式广播到所有的矿工们都收到。矿工再把整个区块链搜一遍,看A的帐号里有没有足够的钱(大于N),有的话这句话就成立了,准备放进新包里。

  矿工同时会收到很多这样的交易请求,但每十分钟只能打包4000条,所以,他们会挑选交易费最高的4000条,剩下的排队等着呗。

  区块链就是这么个帐本,记录的就是这样的原始交易信息。矿工们只管打包,并不再处理这些信息,如计算记录A现在还有多少币,B还有多少。下次A再想交易,矿工理论上会再把整个链再搜一遍,来确认A的帐号里还有没有足够的钱。这就是区块链解决了信任问题的真相,保留每一笔原始交易信息和电子签名,随时可查,随时可验证,因此做不了假。至于搜索整个链这么浪费时间的事,交给越来越强大的计算机做,并不难实现。

  矿工X打包好4000条交易信息后,再加上一条福利信息“X得到12.5个币”和一条服务费信息“X得到(4000条信息里的N与M差值和)个币”,和前一个区块的验证码,还有一个随机数。这个包就算打好了,以上全过程说起来多,其实电脑处理起来极快的。

  然后最关键的步骤才来了:计算现在这个块的验证码,用哈希算法,本来十万分之一秒的时间就能算好,但是要求这个验证码必须小于某个数(难度值)。不够小就把包里的那个随机数改一改,再算一次;还不行再改随机数,再算。。。。。经过这样上亿亿次的计算,终于找到了附合条件的验证码。矿工X就能把整个包广播到网络上了,其它矿工会验证一下这个包里的所有交易信息,验证一下这个包算出的验证码,都没问题就承认这个块了,区块链就此长长了一块。然后处理一下自己的交易信息池,把新块已记录的清掉,重新找4000个交易费最高的,把这个新块的验证码打包进下一个块(重点:这就是“链”的意思),开始下一个块的计算。

  2、挖矿就是找合适的验证码,通过调整难度,保证这一过程耗时稳定在十分钟左右。

  3、计算次数够多总能算出来的。难度值自己通过历史块上的时间戳确定,大家都守同一个规则,难度值都一样。

  4、转帐和挖矿是两码事,不需要同步,你想快点被链记录下你的转帐交易,就把交易费给高点。

  7、块被一个矿工打包好以后就不好改了,改动里面的任意一点点,验证码都会变,变得不再符合难度要求。其他矿工只能完完整整的接受这个块,也就是接受了里面的“X得到12.5个币”这条信息。硬是要不接受继续算你自己的块也行,但别人全都算下个块去了,别人的链都比你长了,你再算出自己的块也没人接受。除非你的计算速度大于所有其他人之和,那你才有可能追上其它人,这就是传说中的51%算力攻击。不是网上传说的51%能随便改交易信息,交易信息都是有电子签名的根本改不了,是说你有51%算力了,你的链就永远能最长,别的矿工就都没得玩了。

产品中心更多>>

12
耗材超市 点击了解