简单回顾下挖矿的流程。
首先先要对所有的交易做验证,剔除有问题的,然后通过一套自定义的标准来选择哪些交易希望打包进区块,比如说提供的交易费与交易占用的字节大小的比值超过某个门槛,这样的交易才被认为有利可图。当然,节点也可以特意选择要加入某条交易,或者故意忽略某些交易。如果是通过矿池挖矿的话,矿池的服务器会去筛选交易,然后分配给每个参与的矿机一个独立的任务。
一旦筛选好交易数据,层层约减,通过这些交易就可以计算出一棵Merkle树,可以确定一个唯一的摘要,这就是Merkl树的根。
然后我们再依次获取挖矿需要的其他信息,这些信息组成一个区块的头。
区块头的字节分配
区块头只有80个字节,挖矿只需要对区块头进行运算即可。交易数据都通过merkle树固定了下来,不需要再包含进来。
这些信息中大部分已经是固定下来的,或者是可计算的。
我们以区块277316为例,其信息来自网站 http://blockchain.info
Bitcoin Block #277316blockchain.info
选择这个区块的原因是在《Mastering Bitcoin》一书中,中文社区译本和英文原版在介绍这部分内容时有出入,而且作者Antonopoulos并没有提到一个关键点,就是字节顺序的问题,相信很多人可能会踩这个坑。这里还原的细节可以帮助读者与书籍做相互参考。
请大家注意下面的每个步骤,注意每一个变化,这是比特币最核心的算法。
转换时间,记住,一定要转为utc的时间戳,此处遇到过坑,小心。
这一步的发现异常艰辛,耗费了大量的查询,大坑,大坑,谨记。发明人中本聪可能为了让机器计算更快,而变为了更接近机器的编码方式little-endian.
最终得到的结果就是
16进制下前面15个0,然后是1; 而难度目标对应的数字是
16进制下前面15个0,然后是3. 计算结果小于难度目标,符合要求。这个结果与网站上公布的数字一致。
在挖矿时,nonce随机数是未知的,要从0试到2^32,但是这个数字其实不大,只有4294967296,以现在的矿机动辄14T每秒的算力,全部算完到上限也不需要一秒。刚才提到在这种情况下,需要使用创币交易中的附带信息,额外的字符串成为extra nonce。
另外,创世区块也可以通过上面的方法来验证,有好奇的朋友可以尝试下。
提示:
㈡ 谁能比较通俗易懂的讲讲 比特币(bitcoin)到底是干嘛的啊百度出来的介绍看不懂
比特币是一种虚拟货币
类似Q币,但是其结算系统完全依附于Hash256加密系统和P2P(点对点)体系,没有总服务器(这就是所谓的去中心化,也就是说所有的产出和交易行为都是依赖于本地文件的)
挖矿:比特币在设计之初,就布置了N道“题目”,用计算机把这些“题目”算出来,得到的解或者答案就是比特币,现在容易算的题目早就被别人抢完了,所以不用在意这些细节
为什么有限?
卷子早就出好了,等着你去做,而且卷子的数量有限,并且计分方式很奇特,他会统计全互联网所有做卷子的人,然后根据出力的比例分配分数,只要别人做的比你好比你快,你就永远不能及格
危害性:
其大力鼓吹的”去中心化“,没有任何权威的管理机构,没有军事力量做担保,交易双方难追踪管理
经常被用于非法活动,有随时被政府强力取缔的可能性。
同样由于无中央记账平台,也就是相当于无记名,被偷被抢被骗根本追不回来,没法立案
-----------------------------------------------------------------
比特币的出现就像黄金出现在没有文字的原始社会,假如你在那个时代做生意,别人都拿东西换东西,有一个人突然拿着一坨黄橙橙的东西来换你的东西,如果来人没有强大的部落做后台,这坨东西你敢收么?
而且更要命的是,这坨东西还不是黄金,充其量贝壳,以目前的科学技术来看,更像是屎
当然,如果来人的的部落非常强大,就算是屎也能换到东西,如果是他们首领拉的屎,说不定在那个时代还真能当钱用
但比特币显然不是
㈢ 比特币是用户通过电脑解决一个特定数学问题而得到的奖励,数学问题那么为什么它数量有限
首先这个数学问题其实就是个猜随机数的游戏,比特币系统是出题者,矿工是答题者,矿工在不停地用猜的随机数去计算哈希值,直到满足比特币系统出题的要求,而比特币系统是中本聪开发的,他将题目数量设置了上限,故而是有限的,这样比特币的数量也就是有限的
㈣ 比特币是要完成什么特定的数学问题计算才会生产的
数学问题没有任何意义,只是增加计算的难度,让个人伪造交易记录的难度无止境的增大而已。你的交易记录会广播向所有节点,然后计算数学问题,确认交易,这个问题是个概率问题。计算的难度大到网络上所有挖矿的计算机拼命算,每小时也出不了几个结果。算出来后再把结果签到交易记录里,并入总块链,之后再发生的交易记录确认都被踢掉。你要伪造记录,一块钱花两次的话就必须比别人更快算出来,踢掉别人的记录。这个的难度是你掌握整个网络50%以上的计算力,但仍然只有50%的概率。做个假账这么费劲,没人会做
㈤ 比特币算的是什么题目
计算的就是比特币本身。这一计算过程就是比特币的发行过程。
只要有一台能接入互联网的计算机,从比特币网站下 载比特币程序,首次运行会产生一个数字账号,然后保持运行,这个程序就会一直不停地计算上一系列“数学题”,当你成功地计算完“一道数学 题”之后,就有可能得到一定数量的比特币(这里所说的“数学题”只是一个形象)。
㈥ 比特币挖矿到底是在计算什么
专业的说,是在算哈希值SHA-256。如果不懂计算机的话,简单地说,就是算一些没有意义的随机数,谁的随机数被比特币区块链接受了,谁就有钱拿。所以比特币计算除了赚钱之外,其实并没有任何实际作用。如果这些算力用来做科学计算,真的可以做很多事情,但是没办法,谁让比特币赚钱啊
㈦ 过去24小时比特币10万人爆仓,比特币是一场骗局吗
比特币不是骗局,但比特币的交易比骗局还可怕。
想要弄清比特币交易是不是一场骗局,首先要知道比特币是什么,要弄清比特币是什么,那区块链技术是快不过去的坎。
比特币没有官方监管,看就算有监管机构,怎么监管?这都是问题。庄家想让你涨,你觉得这样对庄家很难?一个十亿的盘子,庄家多扔进去一个亿,那比特币价格就涨了百分之十,但你想涨百分之十,你有没有能力准备一个亿的资金扔进去?
当然这只是打一个比方,有钱人收割韭菜的速度要远高于我们普通个人的理解。所以对于股票、期货尤其是比特币这一类的带有金融属性的东西,少碰为主,要不然你以为富人是怎么收割你的?
㈧ 比特币是货币吗论述题
比特币,严格来讲,算不上货币。因为很多国家并不承认比特币的合法性。连合法性都得不到的货币,自然也就谈不上具备货币的五大功能了。而且在我国,倒卖比特币是违法的。所以,比特币还不是真正的货币。