比特派app中文版下载苹果|比特币挖矿程序段

作者: 比特派app中文版下载苹果
2024-03-16 06:49:29

比特币挖矿算法详解 - 知乎

比特币挖矿算法详解 - 知乎首发于清源的区块链实验室切换模式写文章登录/注册比特币挖矿算法详解清源区块链工程师比特币网络中,源源不断的收到交易,需要节点不断的打包这些交易,而网络中的所有节点都是对等的,如何判断谁可以打包这些交易,如何避免重复打包这些交易呢?这个时候就需要用到工作量证明(PoW,Proof-of-Work)的方式决定记账权。网络中的任何全节点,都可以试图创建区块,但区块只有在至少满足下列条件时创建的区块才会被其他节点认可和接受。 区块中包含的交易都是合法的; 区块哈希要小于等于一个目标值;要满足第一个条件很简单,节点只要将每笔交易都验证一遍,丢弃掉不合法的交易即可。但要满足第二个条件就需要挖矿。挖矿比特币挖矿就是找到一个随机数(Nonce)参与哈希运算Hash(Block Header),使得最后得到的哈希值符合难度要求,用公式表示就是Hash(Block Header)<= target 比特币采用的哈希算法是 SHA-256 ,也就是说最后会产生256位的输出,一共2^256种可能的取值。 最后得到的哈希值小于target的意思是把哈希后得到的bytes转换成数字后小于target转换成的数字。举个例子,直观的感受一下挖矿的难度;SHA-256计算123的值

a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3

下面这段字符是比特币第1000个区块的哈希(2009年1月产生);

00000000c937983704a73af28acdec37b049d214adbda81d7e2a3dd146f6ed09

可以看到前面有8个0,虽然哈希值的生成是随机的,但是生成前面有8个0的值对计算机穷举来说也并不算太难。

再看一下这段字符,是比特币第560000个区块的哈希(2019年1月产生);

0000000000000000002c7b276daf6efb2b6aa68e2ce3be67ef925b3264ae7122

可以看到前面有18个0,要生成满足这个条件的哈希对于普通电脑来说几乎是不可能完成的任务了。简单来看挖矿难度的高低就是生成区块头的哈希值有多少0。挖矿难度在比特币系统中出块时间被设置为一个常数10分钟,但是挖出区块的速度并不是固定的,而是随着挖矿难度的变化在10分钟上下浮动, 挖矿难度越大,出块时间就越长,为了得到相对平均的出块时间,需要动态调整挖矿难度。 比特币每产生2016个区块调整一次挖矿难度,一个块10分钟,2016个块大概是两周的时间,而调整挖矿难度的这些逻辑都在代码中,当大多数诚实节点采用这个策略的时候整个网络就会自动遵循这个策略。挖矿难度的计算公式如下:diffculty = difficulty_1_target / target此处的 difficulty_1_target 为一个常数,非常大的一个数字( 2^(256-32)−1 )。表示挖矿的初始难度,目标值越小,区块生成难度越大。 2^(256-32)−1 是比特币的初始难度,是前2016个块的难度。 这个难度被存储在比特币的区块头nBits字段中,当有恶意节点篡改这个策略时,挖矿产生的区块头的哈希值就会和诚实节点产生冲突,不会被接收,白白浪费了算力。 因为策略不同,也就是nBits不同,恶意节点产生的区块哈希无法被诚实节点验证。 调整出块时间比特币系统中区块的生产速度是根据之前产生区块速度调整的,之前出块速度大于10分钟,则认为需要降低难度,则需要提高第一个公式中target的值,而target则通过如下公式计算;target = current_target * ( actual time / excepted time )current_target是当前系统中的难度值,target是调整后的难度值,actual time是实际产生区块的时间,excepted time是期望出块时间(2016块*10分钟),actual time有上下限,actual time最多8周,最小二分之一周。挖矿算法比特币中nBits标识了挖矿的难度,也就是说这个区块头进行SHA-256哈希算法后得到的bytes转换成数字后要小于这个难度,而SHA-256计算后的结果有256位,如果直接存储需要32个字节比较占用空间,所以采用了一种压缩算法。压缩算法nBits有4个字节32位,将SHA-256计算得到的值经过如下算法压缩到32位;将数字转换为 256 进制。如果第一位数字大于 127(0x7f),则前面添加 0。压缩结果中的第一位存放该256进制数的位数。后面三个数存放该256进制数的前三位,如果不足三位,从后补零。举个例子,将十进制1000压缩;1. 1000转换256进制数,1000 = 3 * 256 + 232 = 3*256^(2-1) + 232*256^(1-1)

2. 3小于127,不需要补0,跳过

3. 从第一部看到1000转换成256位数有2位,压缩结果第一位应该存放2

4. 因为只有两位,所以最后一位补0,得到存放的值为 [2, 3, 232, 0]十进制,转换十六进制 [0x02, 0x03, 0xe8, 0x00] 合并存储到nbits为 0x0203e800难度计算在第一个公式中difficulty_1_target的值为 2^(256-32)-1,转换成256进制为;FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF第一位大于0x7f,前面补0,变为00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF其长度等于 28+1=29 (0x1d),且长度超过三位,无需补零,则压缩结果为:0x1d00FFFF,因为压缩存储容量只有才4个字节,前两字节已经被长度和添加的 00 所占用,只剩下2个字节来存储数字,这样后面的26个 FF 值被丢弃。T=0x00FFFF * 256^(0x1b-3) = 0x00000000FFFF0000000000000000000000000000000000000000000000000000比特币中的difficulty就是0x1d00FFFF,如果区块中的nBits为0x1d00FFFF则说明这个区块挖矿难度为最小挖矿难度1.实际上专业的矿池程序会保留被截断的FF:00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF我们算一下比特币101799号区块的挖矿难度,通过区块链浏览器可以看到101799号区块的nBits为0x1b0404cbD = 0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF / 0x00000000000404CB000000000000000000000000000000000000000000000000 = 16307.669773817162 (pdiFF)pdiFF也被称为矿池难度。算力为了找到符合条件的值在挖矿的时候需要不断的调整区块头中Nonce的值,但是又会有一个问题,在比特币中Nonce的值是32位的,如果挖矿难度太大,就算穷尽Nonce的所有可能还是不能算出符合条件的值。铸币交易在一个区块产生的时候,会有一个铸币交易(coinbase),也就是矿工为自己铸币,产生新的比特币。铸币交易没有UTXO输入,只有输出指向自己的比特币地址,当挖矿成功,这个区块被网络接收的时候,新产生的币就转移到这个矿工地址了。看一下铸币交易包含的字段; transaction hash:“交易哈希”字段32个字节全部填充0(因为其没有UTXO输入);ouput index:“交易输出索引”字段全部填充0xFF(十进制的255); coinbase data:coinbase数据长度最小2字节,最大100字节。除了开始的几个字节外,矿工可以任意使用coinbase的其他部分,随意填充任何数据。以创世块为例,中本聪在coinbase中填入了这样的数据“The Times 03/Jan/ 2009 -Chancellor on brink of second bailout for banks“; - coinbase data size:coinbase数据大小; sequence number:现在未使用,设置为0xffffffff可以看到铸币交易的coinbase data字段是我们可以控制的,当Nonce不能满足挖矿难度的时候,我们可以通过调整coinbase data字段,从而影响区块头的默克尔树根的值,提供更多的可能来满足挖矿难度的要求。算力单位通过上面的流程,进行一次可能的挖矿尝试被称为H。 1 H/s = 每秒可执行一次哈希运算。 1 KH/s = 每秒1,000哈希(一千次)。 1 MH/s = 每秒1,000,000次哈希(百万次)。 1 GH/s = 每秒1,000,000,000次哈希(十亿次)。 1 TH/s = 每秒1,000,000,000,000次哈希(万亿次)。 1 PH/s = 每秒1,000,000,000,000,000次哈希。 1 EH/s = 每秒1,000,000,000,000,000,000次哈希。挖矿收益矿机挖矿的时候就会出现很长的时间找不到符合条件的哈希值,如果找不到哈希值不能打包区块就没有收益,显然对矿工十分不友好,但是如果挖到就像中彩票一样获得非常丰厚的回报。矿池为了避免单个矿工挖矿收益的不稳定性,就出现了矿池,矿池集合了大量的矿工,平均挖矿的收益,避免了挖矿收益的不稳定性。 矿池组织大量的矿工挖矿面临很重要的一个问题就是如何把高难度计算哈希的任务拆解成相对简单的任务,发送给单个矿工,回顾之前挖矿难度的计算,可以简单的认为前面0的多少表明了挖矿的难易。 0越多,挖矿难度越高,为了降低挖矿难度我们就要增加挖矿哈希0的数量,举个例子假设挖矿目标值 0x000abc,只要满足这个值就可以打包区块获得挖矿收益;

降低挖矿难度为 0x001abc,发送给矿工,矿工只要计算区块头满足这个相对低一点的难度就可以得到一个分片(shared),但是单个矿工挖到这个简单难度的块是无法发布到整个网络中的,但是矿池可以把这个分片记录下来,作为以后给这个矿工奖励的凭证。

0x001abc是0x000abc的子集,只要子集足够多总有一个会满足目标值。

当有一个矿工挖出一个满足目标值之后就可以获得挖矿收益,而挖矿就可以根据矿工分片多少来获得收益。

矿工收益 = 挖矿收益 / 挖到的分片数量但是现在还有一个问题没有解决,单个矿工挖到目标值以后如果私吞收益,私自广播区块怎么办?矿池有集中托管式的,也有分布式的。 集中托管式矿池,矿工可以把挖矿的机器托管给矿池,由矿池统一操作维护,只需要支付一些电费管理费即可,这样就避免了私自广播。 分布式矿池,矿工将机器自行管理,通过矿池协议从网络连接矿池即可,这样就会出现私自广播的可能。回顾一下铸币交易coinbase,可以看到有output字段,UTXO模型中币的来源都是上一个交易的output,所以可以把铸币交易的output字段设置为矿池的地址,然后随机生成一些coinbase data的填充后生成区块头的默克尔树,最后发由矿工去尝试目标值。通过这样的方式,即使矿工找到满足条件的哈希值,铸币交易的地址也是矿池的地址,私自广播区块没有任何收益,如果调整铸币交易的地址,这样又回到了独立挖矿的场景。全网算力如果要获知全网算力,可以通过出块时间,挖矿难度大致反推出全网算力。区块确认当一个区块产生之后,它不是立即可信的,网络上的节点总是相信最长的区块链,当一条交易记录被打包进一个区块之后,就有了一个确认,而这个区块所在的链后面被再加入一个区块,就是第二个确认,如此下去,一个交易有了6个确认,我们就认为这个交易已经确定了,会被永远记录在区块链中。 为什么是6个确认呢?因为每一个确认就是一个挖矿过程,需要大量的工作量证明,因此,这6个区块被同一个矿工创建的可能性微乎其微(可以说是不可能),因此矿工伪造交易也基本不可能。由于比特币的区块平均产生时间是10分钟,所以一个交易要1小时左右才能保证成功(最快),不过也不是所有的系统都这样认为,有些网站在接受比特币支付时,认为4个确认就可以给客户发货了,区块确认越多则越难被逆转。区块广播在区块链中,为了尽快收到其他节点的信息,节点间并不是直接传递区块信息的。 节点向附近节点发送一个Inv消息,Inv消息中包含已经被发送者(sender)接收并验证过的“交易记录的哈希”、以及“区块哈希”。接收者(receiver)收到Inv消息后,如果他还尚未从其他节点收到过相同的信息,他会发送一个getdata消息给发送者,要求得到交易记录及区块哈希包含的具体信息。此时,区块和交易记录的信息才会进行整体传递。 其中Inv消息结构如下;type MsgInv struct {

InvList []*InvVect

}

type InvVect struct {

Type InvType // Type of data

Hash chainhash.Hash // Hash of the data

}欢迎关注我的博客(qyuan.top),不定期分享一些区块链底层技术文章,博客排版要比知乎好一点(ㄟ( ▔, ▔ )ㄏ)。编辑于 2020-05-12 11:18挖矿区块链(Blockchain)比特币 (Bitcoin)​赞同 83​​11 条评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录清源的区块链

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Error 403 Forbidden - This request is blocked.

For security reasons you can't connect to the server for this app or website at this time.

It maybe that you have too many requests or the illegal request payload is identified as an attack.

Please try again later.

详解比特币挖矿— 应该是史上最通俗易懂的版本 - 知乎

详解比特币挖矿— 应该是史上最通俗易懂的版本 - 知乎切换模式写文章登录/注册详解比特币挖矿— 应该是史上最通俗易懂的版本S-Maruko从入门到精通,看我就够了!​​ 比特币挖矿就是矿工将一定数量的交易打包到同一个区块,然后共同去计算同一道数学题来决定以谁的区块链为准,并且决定谁赢得新发行的比特币和交易费。  相信很多人都听说过比特币挖矿的说法,不知道有多少人真正理解这个概念。在矿产领域,挖矿的概念其实很容易理解,就是从富含某种矿物质的矿石中提炼出矿物质的过程,而所谓的矿工就是那些头戴安全头盔,从事提炼矿物质的工人,他们的形象在我们的脑海中恐怕一点也不陌生。  比特币世界的挖矿和矿产领域的挖矿还是有很多相似之处的,都是在挖掘有价值的资产,都需要花费一定的代价,都能给挖矿的人带来一定的收益。矿产领域的挖矿可以得到相对稀缺的矿产资源,同时要付出体力和承担安全风险的代价;而比特币的挖矿可以得到比特币奖励,同时要付出计算机算力的代价。  矿产领域的矿工是靠大型的机械设备,而比特币世界里的矿工是靠专业的计算机设备,伴随着激烈竞争,比特币的挖矿设备从最开始的普通计算机,到现在的越来越专业的挖矿设备。  不过比特币世界的挖矿和矿产领域的挖矿也还是有很多不同的,比特币世界的挖矿还是发行新比特币的唯一方式,同时也是在去中心化的网络中保证民主和竞争的重要手段,但是它也不是一点坏处都没有,比如浪费了大量的计算机算力和电力。至于为什么会这么说,看完接下来的文字我想你就会明白了。  文章导读:​  1.什么是挖矿​  2.如何证明谁的工作量最多​  3.什么是工作量证明(POW)​  4.挖矿是一场接力赛​  5.小结  1. 什么是挖矿  如果还不了解区块链的话,可以参考不懂技术?老司机带你轻松理解区块链知识,比特币的网络中传播着大量的交易信息,既然没有中心化的统一服务,那么谁来确认这些交易的合法性,以及达成统一的共识呢?我们可以想想中心化服务的支付宝是如何解决这两个问题的,支付宝其实是买卖双方的中间担保,它负责确认每一笔交易是否合法,并且等双方在线下的交易没有问题时,才将资金转给卖方,这就保证了不会出现某一方作弊或者不认账的问题。  但是比特币网络中没有像支付宝这样的担保角色,那么它是如何做到交易的正常进行的呢?其实答案也很简单,就是由网络中的所有全节点共同决定这份交易是否合法,通过共同维护同一份帐薄来确保交易不会违约和篡改。  这就如同有10个人共同见证了两个人的交易,并一起确认这笔交易的合法性,同时每个人都维护了一份账本,这笔交易会记录到每个人各自维护的同一套账本上,如果有人要违约或篡改交易数据,他需要同时改掉至少6个人的账本(少数服从多数)。否则如果只改自己的那一份账本,别人很容易就看出他的作弊行为,想想掩耳盗铃的故事应该就能明白了。  说回到比特币世界的挖矿,挖矿就是比特币世界里的矿工确认每一笔交易是否合法(关于如何确认交易合法,可以参考一文看懂比特币交易的全过程),并将合法的交易写入到统一的公共帐薄上,同时会获得一定的新比特币和交易费的奖励的过程。奖励是为了鼓励更多的矿工加入进来,确保不会出现某一个节点独断专权的情况,至于奖励给哪一个矿工,这就要看谁的工作量更多了,在比特币的世界里,是靠共同解决某一个数学问题来证明工作量的多少。  这就如同在竞争激励的市场经济中,每个公司都会拼尽全力提供更好的服务和产品才能生存下去,这样就不太容易产生垄断和腐败,而竞争的结果促进了资源的有效配置,社会的整体财富就会不断增长,最终所有人都会受益,当然受益最大的还是对社会贡献最大的企业家。  而在计划经济下,所有的生产安排和资源分配,都掌握在少数人手中,权力的过度集中必然会导致腐败,也不利于资源的合理配置,长远来看,只能是绝大大多数人普遍赤贫,而受益最大的往往是掌握更多资源的人。想想改革开放前后的中国,就能明白计划经济和市场经济的不同效果了。  总结一下,挖矿就是矿工为了得到新发行的比特币和交易费的奖励,主动去确认交易是否合法,并将合法的交易写入共同维护的帐薄中的过程。而奖励是为了确保矿工有更多的积极性,避免权力集中在少数人手中,同时奖励也是比特币发行的唯一方式。 2. 如何证明谁的工作量更多  刚才提到了挖矿的奖励会给工作量最多的那个人,那么如何证明谁的工作量最多呢。其实也很简单,就是大家共同去解同一道数学题,这道数学题需要一定的计算量才能做出来,而率先得到答案的矿工就是最终的胜出者,分享最终的奖励。  相信大家以前都玩过数独游戏(没玩过的同学请自行搜索游戏规则),简单来说就是每一行与每一列必须出现1~9的数字,每个小九宫格内也必须有1~9的数字,并且每个数字在每行、每列和每个小九宫格里出现且仅能出现一次。游戏刚开始只会给出有限的几个位置上的数字,其他的位置都需要计算分析才能得出来正确的数字。​  由这张游戏图可以看出,想要计算分析出每一个位置上的数字,还是需要花费不少力气的,但是填完之后来验证是否正确就简单很多,看一下横排、竖排以及小九宫格是否没有重复的数字即可。  而比特币挖矿的数学题也有这样的特性,就是计算起来很费事,但是验证起来却很简单。当然了,挖矿的数学题不是求解一道数独题目,而是计算一道概率题。  先举一个简单的掷骰子游戏,假如说有两个骰子,如果我说掷出一个骰子之和小于等于12的组合,你肯定会说这还不简单,随便掷,任一个组合都肯定小于等于12,一点难度都没有。好,那假如我把条件设为小于等于8呢,可能就不是每次都能掷出来了,它的概率是0.72;如果我再把条件设小呢,如果是4呢,那么掷出来的可能性就会进一步减小,概率为0.11。(这里默认大家都会计算概率,如果不懂的话,只需要知道概率在不断减小就可以,想想现实的场景,这点应该不难理解)3. 什么是工作量证明(POW)  理解了掷骰子游戏,再来介绍挖矿的工作量证明(POW Proof-Of-Work)算法就很简单了,在之前一篇介绍区块链的文章不懂技术?老司机带你轻松理解区块链知识中,曾经提到过区块的数据结构,当时提到了两个数据是和挖矿相关的,当时没有详细说明,现在就可以拿出来分析了。  这里的难度目标和Nonce就是和挖矿相关的参数,我们都知道比特币网络平均每10分钟产生新的比特币,也就是说挖矿的平均时间为10分钟,也许你会问怎么确保刚好是10分钟呢。其实答案很简单,就是控制数学题目的难度,假如某个人的解题速度在不断提升,那么我只要提高题目难度,就可以保证他解答的时间大致衡定。  在比特币世界中,解题速度和计算机的算力有直接的关系,想想今天的一台计算机和20年前的一台计算机去解同一道复杂的数学题,谁先计算出来,我想你肯定也认同是今天的计算机率先求出答案。如果我告诉你,谁先解出答案,就给谁丰厚的奖励,大家肯定会拼命提高计算机的性能,这也是全球各个矿工在不断提高算力的原因,因为大家都想快速解出答案,以获得奖励。  说回到难度目标和Nonce两个参数,挖矿的题目是这样的,每一个区块头都有唯一的哈希值,我现在要求你在这个哈希值后面添加一个随机数字(一般是从零开始递增),然后再去计算这个结果的哈希值,直到求出来的哈希值小于某一个数字,而这个数字是由一个常数除以上面的难度目标得出来的。  如果你理解了上面的掷骰子游戏应该能看懂这道题目,其实就是通过不同的数字不断地计算哈希值,直到答案小于某一个目标数字,这个目标数字越小,难度就越大,跟上面的骰子一样,结果越小,掷出来的概率就越小。而这个目标数字是由难度目标决定的,难度目标数字越大,除出来得到的目标数字就越小。  Nonce计数器主要是统计总共计算了多少次,就如同掷骰子一样,虽然可以一把掷出要求的数字,但是多次平均下来,肯定是符合概率统计的,这样别的矿工就可以根据Nonce数字大小再一次印证这个矿工是否有作弊。  至此你应该已经明白工作量证明算法的大致逻辑了吧,本质上就是在求一个概率题,谁先算出来就算谁赢,奖励就归谁。难度随着答题的速度会动态调整,而这个难度就是由上面的难度目标值决定,这样就能保证平均每10分钟完成一次挖矿。  4. 挖矿是一场接力赛  一旦一个矿工成功挖矿,根据数独游戏的逻辑,其他矿工很快就能验证是否成功,一旦验证通过就会将区块放入自己维护的区块链中,并赶紧投入到下一次的挖矿,不带有一丝一毫的犹豫。如此激烈的竞争伴随的结果,就是每个矿工都不断提升自己的计算机性能,结果就是大家的挖矿设备都不断升级,以至于现在的矿场都是紧挨发电厂,用最先进的专用挖矿芯片。  这里其实还有一个问题,就是假如说有两个矿工同时计算出结果怎么办?这个时候就会出现分叉,也就是说区块链的末端区块存在分歧了,其实这只会临时出现,并不会长久存在。原因是一旦其他矿工确认了本次挖矿成功,就会投入到下一次挖矿,如果其他矿工又挖矿成功了,这条区块链路就会比另一条区块链路多出一个区块,区块链中的原则就是只认最长的链路,所以另一个挖矿成功的矿工很快就会舍弃之前的区块,以最长的区块链为准。  而奖励也是要得到大多数的矿工认可后才会有效,毕竟账本是所有的人一起维护的,只有大多数人的账本上认可你的挖矿结果才有效。所以临时的分叉并不会影响最终的奖励,其实10分钟的挖矿时间也是比特币之父“中本聪”对效率和共识的一种平衡。  看到这里也许你就会明白,为什么会说挖矿浪费了很多算力和电力,因为胜出者往往只有一个,其他的矿工就相当于白忙活了,但是他们的计算机已经投入计算了,这笔算力和与之相对应的电力也就此浪费了。  这恐怕就是为了维护民主化的代价,如果让中心化的节点去统一确认交易,并写入公共帐薄,那么很容易滋生出腐败,这也不符合中本聪一开始的去中心化的设计理念,但是靠挖矿决定输赢又会导致资源浪费,只能说任何事情都是有成本和代价的,只要收益大于成本,这件事就有做的价值,比特币现在的价格相比用于计算的电费还是划算得多。5. 小结  关于比特币的挖矿到此就全部介绍完了,不知道你有没有看明白。总结一下就是矿工将一定数量的交易打包到同一个区块,然后共同去计算同一道数学题来决定以谁的区块链为准,并且决定谁赢得新发行的比特币和交易费。这种靠竞争来解决交易共识的问题,避免了单一节点垄断整个网络的风险,让整个网络形成了良性竞争的局面。  当然随着全网算力的提高,篡改的难度就越来越大了,因为你要改至少51%的全节点的账本,这就要求你的算力至少是其他51%全节点的总和,这个难度现在已经大到无法想象的程度,而且即便能做到,为此付出的电费代价也会让篡改者掂量一下这么做是否划算。关于比特币的挖矿到此就全部介绍完了,不知道你有没有看明白。总结一下就是矿工将一定数量的交易打包到同一个区块,然后共同去计算同一道数学题来决定以谁的区块链为准,并且决定谁赢得新发行的比特币和交易费。这种靠竞争来解决交易共识的问题,避免了单一节点垄断整个网络的风险,让整个网络形成了良性竞争的局面。  ——The End——『声明:本文转载于公众号“扬帆沧海”』发布于 2021-05-13 13:48比特币 (Bitcoin)btc挖矿挖矿​赞同 39​​4 条评论​分享​喜欢​收藏​申请

挖矿原理 - 廖雪峰的官方网站

挖矿原理 - 廖雪峰的官方网站

Index

廖雪峰的官方网站

Blog

Java教程

手写Spring

手写Tomcat

Makefile教程

Python教程

JavaScript教程

区块链教程

SQL教程

Git教程

文章

问答

More

Java教程

手写Spring

手写Tomcat

Makefile教程

Python教程

JavaScript教程

区块链教程

SQL教程

Git教程

文章

问答

Java教程

手写Spring

手写Tomcat

Makefile教程

Python教程

JavaScript教程

区块链教程

SQL教程

Git教程

文章

问答

 

Profile

Passkey

Sign Out

Sign In

English

简体中文

Index

区块链教程

比特币

区块链原理

P2P交易原理

私钥

公钥和地址

签名

挖矿原理

可编程支付原理

多重签名

UTXO模型

Segwit地址

HD钱包

钱包层级

助记词

地址监控

以太坊

账户

区块结构

交易

智能合约

编写合约

部署合约

调用合约

编写Dapp

常用合约

ERC20

Wrapped Ether

关注公众号不定期领红包:

加入知识星球社群:

关注微博获取实时动态:

挖矿原理

Last updated: ...

/

Reads: 3281445

Edit

在比特币的P2P网络中,有一类节点,它们时刻不停地进行计算,试图把新的交易打包成新的区块并附加到区块链上,这类节点就是矿工。因为每打包一个新的区块,打包该区块的矿工就可以获得一笔比特币作为奖励。所以,打包新区块就被称为挖矿。

比特币的挖矿原理就是一种工作量证明机制。工作量证明POW是英文Proof of Work的缩写。

在讨论POW之前,我们先思考一个问题:在一个新区块中,凭什么是小明得到50个币的奖励,而不是小红或者小军?

当小明成功地打包了一个区块后,除了用户的交易,小明会在第一笔交易记录里写上一笔“挖矿”奖励的交易,从而给自己的地址添加50个比特币。为什么比特币的P2P网络会承认小明打包的区块,并且认可小明得到的区块奖励呢?

因为比特币的挖矿使用了工作量证明机制,小明的区块被认可,是因为他在打包区块的时候,做了一定的工作,而P2P网络的其他节点可以验证小明的工作量。

工作量证明

什么是工作量证明?工作量证明是指,证明自己做了一定的工作量。例如,在驾校学习了50个小时。而其他人可以简单地验证该工作量。例如,出示驾照,表示自己确实在驾校学习了一段时间:

比特币的工作量证明需要归结为计算机计算,也就是数学问题。如何构造一个数学问题来实现工作量证明?我们来看一个简单的例子。

假设某个学校的一个班里,只有一个女生叫小红,其他都是男生。每个男生都想约小红看电影,但是,能实现愿望的只能有一个男生。

到底选哪个男生呢?本着公平原则,小红需要考察每个男生的诚意,考察的方法是,出一道数学题,比如说解方程,谁第一个解出这个方程,谁就有资格陪小红看电影:

因为解高次方程没有固定的公式,需要进行大量的计算,才能算出正确的结果,这个计算过程就需要一定的工作量。假设小明率先计算出了结果x=2.5,小红可以简单地验证这个结果是否正确:

可以看出,解方程很困难,但是,验证结果却比较简单。所以,一个有效的工作量证明在于:计算过程非常复杂,需要消耗一定的时间,但是,验证过程相对简单,几乎可以瞬间完成。

现在出现了另一个问题:如果其他人偷看了小明的答案并且抢答了怎么办?

要解决这个问题也很容易,小红可以按照男生的编号,给不同的男生发送不同的方程,方程的第一项的系数就是编号。这样,每个人要解的方程都是不一样的。小明解出的x=2.5对于小军来说是无效的,因为小军的编号是3,用小明的结果验证小军的方程是无法通过验证的。

事实上如果某个方程被验证通过了,小红可以直接从方程的第一项系数得知是谁解出的方程。所以,窃取别人的工作量证明的结果是没有用的。

通过工作量证明,可以有效地验证每个人确实都必须花费一定时间做了计算。

在比特币网络中,矿工的挖矿也是一种工作量证明,但是,不能用解多项式方程来实现,因为解多项式方程对人来说很难计算,对计算机来说非常容易,可以在1秒钟以内完成。

要让计算机实现工作量证明,必须找到一种工作量算法,让计算机无法在短时间内算出来。这种算法就是哈希算法。

通过改变区块头部的一个nonce字段的值,计算机可以计算出不同的区块哈希值:

直到计算出某个特定的哈希值的时候,计算结束。这个哈希和其他的哈希相比,它的特点是前面有好几个0:

hash256(block data, nonce=0) = 291656f37cdcf493c4bb7b926e46fee5c14f9b76aff28f9d00f5cca0e54f376f

hash256(block data, nonce=1) = f7b2c15c4de7f482edee9e8db7287a6c5def1c99354108ef33947f34d891ea8d

hash256(block data, nonce=2) = b6eebc5faa4c44d9f5232631f39ddf4211443d819208da110229b644d2a99e12

hash256(block data, nonce=3) = 00aeaaf01166a93a2217fe01021395b066dd3a81daffcd16626c308c644c5246

hash256(block data, nonce=4) = 26d33671119c9180594a91a2f1f0eb08bdd0b595e3724050acb68703dc99f9b5

hash256(block data, nonce=5) = 4e8a3dcab619a7ce5c68e8f4abdc49f98de1a71e58f0ce9a0d95e024cce7c81a

hash256(block data, nonce=6) = 185f634d50b17eba93b260a911ba6dbe9427b72f74f8248774930c0d8588c193

hash256(block data, nonce=7) = 09b19f3d32e3e5771bddc5f0e1ee3c1bac1ba4a85e7b2cc30833a120e41272ed

...

hash256(block data, nonce=124709132) = 00000000fba7277ef31c8ecd1f3fef071cf993485fe5eab08e4f7647f47be95c

比特币挖矿的工作量证明原理就是,不断尝试计算区块的哈希,直到计算出一个特定的哈希值,它比难度值要小。

比特币使用的SHA-256算法可以看作对随机输入产生随机输出,例如,我们对字符串Hello再加上一个数字计算两次SHA-256,根据数字的不同,得到的哈希是完全无规律的256位随机数:

hash256("Hello?") = ????????????????????????????????????????????????????????????????

大约计算16次,我们可以在得到的哈希中找到首位是0的哈希值,因为首位是0出现的概率是1/16:

hash256("Hello1") = ffb7a43d629d363026b3309586233ab7ffc1054c4f56f43a92f0054870e7ddc9

hash256("Hello2") = e085bf19353eb3bd1021661a17cee97181b0b369d8e16c10ffb7b01287a77173

hash256("Hello3") = c5061965d37b8ed989529bf42eaf8a90c28fa00c3853c7eec586aa8b3922d404

hash256("Hello4") = 42c3104987afc18677179a4a1a984dbfc77e183b414bc6efb00c43b41b213537

hash256("Hello5") = 652dcd7b75d499bcdc61d0c4eda96012e3830557de01426da5b01e214b95cd7a

hash256("Hello6") = 4cc0fbe28abb820085f390d66880ece06297d74d13a6ddbbab3b664582a7a582

hash256("Hello7") = c3eef05b531b56e79ca38e5f46e6c04f21b0078212a1d8c3500aa38366d9786d

hash256("Hello8") = cf17d3f38036206cfce464cdcb44d9ccea3f005b7059cff1322c0dd8bf398830

hash256("Hello9") = 1f22981824c821d4e83246e71f207d0e49ad57755889874d43def42af693a077

hash256("Hello10") = 8a1e475d67cfbcea4bcf72d1eee65f15680515f65294c68b203725a9113fa6bf

hash256("Hello11") = 769987b3833f082e31476db0f645f60635fa774d2b92bf0bab00e0a539a2dede

hash256("Hello12") = c2acd1bb160b1d1e66d769a403e596b174ffab9a39aa7c44d1e670feaa67ab2d

hash256("Hello13") = dab8b9746f1c0bcf5750e0d878fc17940db446638a477070cf8dca8c3643618a

hash256("Hello14") = 51a575773fccbb5278929c08e788c1ce87e5f44ab356b8760776fd816357f6ff

hash256("Hello15") = 0442e1c38b810f5d3c022fc2820b1d7999149460b83dc680abdebc9c7bd65cae

如果我们要找出前两位是0的哈希值,理论上需要计算256次,因为00出现的概率是162=256,实际计算44次:

hash256("Hello44") = 00e477f95283a544ffac7a8efc7decb887f5c073e0f3b43b3797b5dafabb49b5

如果我们要找出前3位是0的哈希值,理论上需要计算163=4096次,实际计算6591次:

hash256("Hello6591") = 0008a883dacb7094d6da1a6cefc6e7cbc13635d024ac15152c4eadba7af8d11c

如果我们要找出前4位是0的哈希值,理论上需要计算164=6万5千多次,实际计算6万7千多次:

hash256("Hello67859") = 00002e4af0b80d706ae749d22247d91d9b1c2e91547d888e5e7a91bcc0982b87

如果我们要找出前5位是0的哈希值,理论上需要计算165=104万次,实际计算158万次:

hash256("Hello1580969") = 00000ca640d95329f965bde016b866e75a3e29e1971cf55ffd1344cdb457930e

如果我们要找出前6位是0的哈希值,理论上需要计算166=1677万次,实际计算1558万次:

hash256("Hello15583041") = 0000009becc5cf8c9e6ba81b1968575a1d15a93112d3bd67f4546f6172ef7e76

对于给定难度的SHA-256:假设我们用难度1表示必须算出首位1个0,难度2表示必须算出首位两个0,难度N表示必须算出首位N个0,那么,每增加一个难度,计算量将增加16倍。

对于比特币挖矿来说,就是先给定一个难度值,然后不断变换nonce,计算Block Hash,直到找到一个比给定难度值低的Block Hash,就算成功挖矿。

我们用简化的方法来说明难度,例如,必须计算出连续17个0开头的哈希值,矿工先确定Prev Hash,Merkle Hash,Timestamp,bits,然后,不断变化nonce来计算哈希,直到找出连续17个0开头的哈希值。我们可以大致推算一下,17个十六进制的0相当于计算了1617次,大约需要计算2.9万亿亿次。

17个0 = 1617 = 295147905179352825856 = 2.9万亿亿次

实际的难度是根据bits由一个公式计算出来,比特币协议要求计算出的区块的哈希值比难度值要小,这个区块才算有效:

Difficulty = 402937298

= 0x18 0455d2

= 0x0455d2 * 28 * (0x18 - 3)

= 106299667504289830835845558415962632664710558339861315584

= 0x00000000000000000455d2000000000000000000000000000000000000000000

注意,难度值的数值越小,说明哈希值前面的0越多,计算的难度越大。

比特币网络的难度是不断变化的,它的难度保证大约每10分钟产生一个区块,而难度值在每2015个区块调整一次:如果区块平均生成时间小于10分钟,说明全网算力增加,难度也会增加,如果区块平均生成时间大于10分钟,说明全网算力减少,难度也会减少。因此,难度随着全网算力的增减会动态调整。

比特币设计时本来打算每2016个区块调整一次难度,也就是两周一次,但是由于第一版代码的一个bug,实际调整周期是2015个区块。

根据比特币每个区块的难度值和产出时间,就可以推算出整个比特币网络的全网算力。

比特币网络的全网算力一直在迅速增加。目前,全网算力已经超过了100EH/每秒,也就是大约每秒钟计算1万亿亿次哈希:

所以比特币的工作量证明被通俗地称之为挖矿。在同一时间,所有矿工都在努力计算下一个区块的哈希。而挖矿难度取决于全网总算力的百分比。举个例子,假设小明拥有全网总算力的百分之一,那么他挖到下一个区块的可能性就是1%,或者说,每挖出100个区块,大约有1个就是小明挖的。

由于目前全网算力超过了100EH/s,而单机CPU算力不过几M,GPU算力也不过1G,所以,单机挖矿的成功率几乎等于0。比特币挖矿已经从早期的CPU、GPU发展到专用的ASIC芯片构建的矿池挖矿。

当某个矿工成功找到特定哈希的新区块后,他会立刻向全网广播该区块。其他矿工在收到新区块后,会对新区块进行验证,如果有效,就把它添加到区块链的尾部。同时说明,在本轮工作量证明的竞争中,这个矿工胜出,而其他矿工都失败了。失败的矿工会抛弃自己当前正在计算还没有算完的区块,转而开始计算下一个区块,进行下一轮工作量证明的竞争。

为什么区块可以安全广播?因为Merkle Hash锁定了该区块的所有交易,而该区块的第一个coinbase交易输出地址是该矿工地址。每个矿工在挖矿时产生的区块数据都是不同的,所以无法窃取别人的工作量。

比特币总量被限制为约2100万个比特币,初始挖矿奖励为每个区块50个比特币,以后每4年减半。

共识算法

如果两个矿工在同一时间各自找到了有效区块,注意,这两个区块是不同的,因为coinbase交易不同,所以Merkle Hash不同,区块哈希也不同。但它们只要符合难度值,就都是有效的。这个时候,网络上的其他矿工应该接收哪个区块并添加到区块链的末尾呢?答案是,都有可能。

通常,矿工接收先收到的有效区块,由于P2P网络广播的顺序是不确定的,不同的矿工先收到的区块是有可能的不同的。这个时候,我们说区块发生了分叉:

在分叉的情况下,有的矿工在绿色的分叉上继续挖矿,有的矿工在蓝色的分叉上继续挖矿:

但是最终,总有一个分叉首先挖到后续区块,这个时候,由于比特币网络采用最长分叉的共识算法,绿色分叉胜出,蓝色分叉被废弃,整个网络上的所有矿工又会继续在最长的链上继续挖矿。

由于区块链虽然最终会保持数据一致,但是,一个交易可能被打包到一个后续被孤立的区块中。所以,要确认一个交易被永久记录到区块链中,需要对交易进行确认。如果后续的区块被追加到区块链上,实际上就会对原有的交易进行确认,因为链越长,修改的难度越大。一般来说,经过6个区块确认的交易几乎是不可能被修改的。

小结

比特币挖矿是一种带经济激励的工作量证明机制;

工作量证明保证了修改区块链需要极高的成本,从而使得区块链的不可篡改特性得到保护;

比特币的网络安全实际上就是依靠强大的算力保障的。

Comments

Make a comment

Sign in to

make a comment

Index

区块链教程

比特币

区块链原理

P2P交易原理

私钥

公钥和地址

签名

挖矿原理

可编程支付原理

多重签名

UTXO模型

Segwit地址

HD钱包

钱包层级

助记词

地址监控

以太坊

账户

区块结构

交易

智能合约

编写合约

部署合约

调用合约

编写Dapp

常用合约

ERC20

Wrapped Ether

廖雪峰的官方网站

©Copyright 2019-2021

Powered by iTranswarp

Feedback

License

比特币挖矿指南 - 比特币挖矿入门

比特币挖矿指南 - 比特币挖矿入门

Start

News

Pool

Cloud

Software

Hardware

Price

...

Global Vol.

...

Diff.

...

比特币挖矿指南 - 比特币挖矿入门

你将了解(1)如何进行比特币挖矿,(2)如何开始挖比特币,(3)最好的比特币挖矿软件是什么,(4)最好的比特币挖矿硬件是什么,(5)哪里能找到最好的比特币采矿池和(6)如何优化你的比特币收益。

比特币挖矿很难做到有利可图,但如果你尝试的话,那么这个比特币挖矿机可能是一个很好的机会。

如何进行比特币挖矿

在开始比特币挖矿之前,了解比特币挖矿到底是什么意思非常有用。比特币挖矿是合法的,通过运行SHA256双向哈希验证流程来完成,以验证比特币交易并为比特币网络的公开帐本提供必要的安全性。你挖比特币的速度是以每秒哈希为单位测算的。

比特币网络通过向贡献所需计算能力的人员发放比特币来作为比特币矿工的工作报酬。这以新发行的比特币和挖比特币时已验证交易中包含的交易费用的形式进行。你贡献的计算能力越大,你所获得的奖励份额就越多。

步骤 1 - 获得最好的比特币挖矿硬件

购买比特币 - 某些情况下,你可能需要使用比特币来购买挖矿硬件。今天,您可以在Amazon上购买大部分硬件。你也可能想查看比特币图表。

如何开始比特币挖矿

要开始挖比特币,您需要获取比特币挖矿硬件。在比特币早期,可以使用电脑CPU或高速视频处理器卡来挖矿。但今天这种作法已经不可行了。定制的比特币 ASIC芯片的性能最多可达旧系统的100倍,现在已经占据了比特币挖矿的主导地位。

使用性能比这低的硬件来挖比特币,消耗的电力比可能会赚到的钱还要多。使用专门为此目的而制作的最好硬件来挖比特币至关重要。像Avalon这样的多家公司提供专门针对比特币挖矿而设计的优质系统。

最好的比特币云挖矿服务

另一个选择是购买比特币云挖矿合同。这大大简化了过程,但是由于你无法控制实际的硬件,因此会增加风险。

本节列出的并不是对这些服务的认可。已经发生过许多比特币云挖矿诈骗事件了。

Hashflare 评价:Hashflare提供SHA-256 挖矿合同,也可以挖更有利可图的SHA-256 比特币,同时仍使用比特币自动付款。客户必须至少购买10 GH/s。

Genesis Mining 评价:Genesis Mining 是最大的比特币云算力挖矿提供商。Genesis Mining提供三种比特币云挖矿计划,价格合理。另外也提供Zcash挖矿合同。

Hashing 24 评价:Hashing24自2012年以来就参与到比特币挖矿行业。他们在冰岛和格鲁吉亚有设施。他们使用BitFury的现代ASIC芯片,可以提供最佳的性能和效率。

Minex 评价:Minex是以经济模拟游戏格式呈现的区块链项目的创新聚合者。用户购买Cloudpack,然后可以使用它们为预先选定的云挖矿场、彩票、赌场、现实世界市场等建立索引。

Minergate 评价:提供比特币矿池以及合并的挖矿和云挖矿服务。

Hashnest 评价:Hashnest由比特币蚂蚁矿机的生产商Bitmain 运营。 HashNest目前有超过600台蚂蚁矿机 S7 供出租。你可以在Hashnest的网站上查看最新的价格和可租用的数量。在撰写本文时,一台蚂蚁矿机 S7的哈希率可以租$1200。

Bitcoin Cloud Mining 评价:当前 Bitcoin Cloud Mining 的合同已经售罄。

NiceHash 评价:NiceHash独一无二的原因在于,它使用订单来匹配采矿合同买家和卖家。查看其网站以了解最新价格。

Eobot 评价:刚开始时比特币云挖矿的价格可以低至$10。Eobot声称客户可以在14个月后实现盈亏平衡。

MineOnCloud 评价:MineOnCloud目前在云端有约35 TH/s的挖矿设备可供出租。另外还有一些挖矿机出租,其中包括蚂蚁矿机S4和S5。

步骤 2 - 下载免费的比特币挖矿软件

在收到比特币挖矿硬件后,你需要下载一个用于比特币挖矿的特殊程序。比特币挖矿可以使用很多程序,但两个最受欢迎的是CGminer和BFGminer,它们都是命令行程序。

如果你喜欢图形用户界面的易用性,你可能想试试EasyMiner,这是一个点击运行Windows / Linux / Android程序。

更多详细信息,请访问最佳比特币挖矿软件。

步骤 3 - 加入比特币矿池

在你准备好开始挖比特币时,我们建议你加入一个比特币矿池。比特币矿池是许多比特币挖矿机一起工作,共同解决一个数据块并分享其奖励。没有比特币矿池,你可能挖一年多也不会挖到任何比特币。与更大的比特币挖矿机群体一起工作并分享奖励,会让挖矿变得更为方便。这里有一些选择:

对于全分散控制矿池,我们强烈推荐p2pool。

以下矿池被认为目前正在使用比特币核心钱包 0.9.5或更高版本的有效数据块(由于DoS漏洞而推荐使用0.10.2或更高版本)

BitMinter

CK Pool

Eligius

Slush Pool

步骤 4 - 设置比特币钱包

挖比特币的下一步是设置一个比特币钱包,或使用现有的比特币钱包来接收你挖到的比特币。Copay是一个很棒的比特币钱包,并可在许多不同的操作系统上运行。也可以使用比特币硬件钱包。

比特币通过使用仅属于您的唯一地址发送到您的比特币钱包。设置比特币钱包最重要的一步是通过启用双因素身份验证或将其保存在无法访问互联网的离线电脑上,从而防止潜在的威胁。可以通过将软件客户端下载到电脑上来获得钱包。

有关选择比特币钱包的帮助,你可以从这里开始

您还需要能够购买和出售你的比特币。为此,我们建议:

SpectroCoin - 同日 SEPA 的欧洲交易平台,可以使用信用卡购买

Kraken - 最大的欧洲交易平台,具有同日SEPA

Buying Bitcoin Guide - 帮助你寻找你所在国家的比特币交易平台。

Local Bitcoins - 这个奇妙的服务可让你在你的社区寻找愿意直接出售给你比特币的人。不过要小心!

购买比特币时,Coinbase 是一个很好的开始之地。我们强烈建议你不要在其服务中保存任何比特币。

步骤 5 - 关注最新的比特币新闻

关注最新的比特币新闻对于比特币挖矿利润很重要。如果你想要了解一般的比特币新闻,那么我们推荐WeUseCoins news。

这是比特币挖矿新闻部分,这里有 5 篇最新的文章:

[警告] - 1 August 2017 年 8 月 1 日将发生 BIP 148 UASF 。这可能会大大影响比特币挖掘机传统挖矿或挖BIP 148 区块链的收益。

要做好准备,我们建议阅读 UASF 指南。

Written by Bitcoin Mining on .

Recommended posts

Contribute

Advertise

FAQ

About Us

Español

Deutsch

Français

Nederlands

Pусский

Português

Bitcoin Mining™® © 2010-2022 Hesiod Services LLC | Terms | Privacy

什么是比特币挖矿和比特币挖矿的运作方式? 完整指南

什么是比特币挖矿和比特币挖矿的运作方式? 完整指南

完成 Web3 考试即可获得免费的 NFT 证书!立即开始

加密货币:

21,341

交易所:

1,863

市值:

$2.63T

4.16%

24小时成交量:

$207,822,614,713

19.71%

主导地位:

BTC: 51.3%

ETH: 16.8%

Gas:

31 GWEI

连接

学会获得真正的回报

收集Bits,提高你的学位并获得实际奖励!

连接来获取增益

新的

视频课程

已弃用

通过在线视频课程扩展您的职业生涯。投入你的学习冒险吧!

课程

Claim Free NFT Certificate

Complete the official BitDegree Web3 Exam & get rewarded!

Most Secure Wallets To Start With

Check the analysis report on Top-rated Crypto Wallets that are safest for your funds.

Exclusive Crypto Deal List of 2023

Get huge savings on the biggest crypto brands with custom discounts & deals.

1st Lucky Draw Rewards Distributed

Phase 1 Lucky Draw winners have just been rewarded. Join the Phase 2!

教育

加密货币

交易所

钱包

dApps

NFT

新闻

日历 很快

数据

3

Web3 Exam Rewards

搜索 加密货币

/

学会获得真正的回报

收集Bits,提高你的学位并获得实际奖励!

连接来获取增益

新的

视频课程

已弃用

通过在线视频课程扩展您的职业生涯。投入你的学习冒险吧!

课程

Claim Free NFT Certificate

Complete the official BitDegree Web3 Exam & get rewarded!

Most Secure Wallets To Start With

Check the analysis report on Top-rated Crypto Wallets that are safest for your funds.

Exclusive Crypto Deal List of 2023

Get huge savings on the biggest crypto brands with custom discounts & deals.

1st Lucky Draw Rewards Distributed

Phase 1 Lucky Draw winners have just been rewarded. Join the Phase 2!

领取您的奖励

您有加密货币奖励等待领取。

已解锁:加密手册!

恭喜,您已被授予访问独家 Crypto 101 手册的权限!

获取 Binance 600 美元奖金

在币安上完成简单任务即可领取 600 美元的欢迎礼券。

Web3 Starter

Tackle the fundamental questions of Web3 & prove your expertise!

Web3 Explorer

Showcase your Web3 expertise & earn exclusive rewards!

Web3 Evangelist

Face the ultimate challenge - earn your right to be called a Web3 expert!

什么是比特币挖矿?关于比特币挖矿的完整指南

不确定什么是比特币挖矿?您来对地方了!

查看最受好评的交易所

撰写者

Aaron S.,

主编

✓ 事实检查

最近更新时间:

January 01, 2024

✓ 事实检查

什么是比特币挖矿?随着越来越多的人开始了解比特币,比特币的受欢迎程度正在上升。但是,仍然很难理解一些与比特币有关的想法-比特币挖矿无疑是其中之一。

比特币挖矿如何工作?挖一个比特币需要多长时间?当我们第一次阅读有关比特币和采矿的知识时,我们会问自己很多问题。 令人困惑,对不对?

没关系,但是。我是来帮忙的!在本指南中,您将找到所需的所有答案。我将使比特币的挖掘变得简单,并以一种易于理解的方式向您解释。我将讨论挖矿的工作原理,挖矿的工作原理以及如何开始自己进行比特币挖矿。到本指南结束时,您将对该概念有了更好的了解。

不仅如此,如果您发现挖矿这种加密货币可能会让您感兴趣,那么您可能也想出售或交易它。对于这一点,您应该依靠一些加密交流平台- Coinbase和币安 是两个更好的选择。

所以,让我们开始吧!

Did you know?

想从加密货币中变的更聪明更富有吗?

订阅我们 - 我们每周都会发布新的加密解释器视频!

What is Polygon in Crypto? (Animated Explainer)

订阅

在YOUTUBE上

目录

1. 什么是比特币采矿?1.1. 比特币采矿解释2. 什么是比特币挖矿:比特币挖矿如何工作?2.1. 什么是区块链技术?2.2. 比特币采矿如何运作?3. 什么是比特币挖矿:如何开始比特币挖矿?3.1. 获取比特币采矿硬件3.2. 加入比特币矿池3.3. 下载比特币采矿软件3.4. 打开比特币钱包4. 什么是比特币挖矿:比特币挖矿是否对您有价值?4.1. 什么是比特币采矿奖励?4.2. 比特币采矿有多难?4.3. 比特币采矿要多少钱?4.4. 开采比特币可以赚多少利润?4.5. 更重要的一件事5. 什么是比特币采矿:最后的话

什么是比特币采矿?

比特币挖矿是验证,存储和保护比特币交易的过程。当然,还有更多的东西。但是,在深入了解什么是比特币挖掘及其工作原理之前,请留意关于比特币本身的这两件重要事情:

最新优惠现在有效:

已验证

CLAIM $600 REWARD

Exclusive Binance Referral Code

Don't miss this limited-time deal that's only available for our readers. Use the Binance referral code 49316610 & receive up to $600 in rewards and bonuses!

截止日期:

18/03/2024

7,847 使用人数

仅剩49

评分

5.0

获取优惠券

当您使用信用卡付款时,信用卡公司会验证并记录交易。现在,当您使用比特币付款时,没有像信用卡公司这样的中央/第三方来验证交易。相反,它已由比特币矿工验证。

与银行印制的传统货币(美元,日元,欧元等)不同,任何人都不能印制比特币。使用传统货币时,由于没有最大限额,银行可以根据需要打印任意数量的货币。但是,比特币的最大限额为2100万。这意味着只能创造2100万比特币!

这就是比特币的全部,它不需要中间人(例如银行或信用卡公司)就可以工作。

如您所见,比特币与传统的支付系统(如银行和信用卡公司)有很大的不同。然而,由于加密货币不是打印出来的,新的比特币是如何被创造出来的?

你能猜出答案是什么吗?

如果您认为这可能是比特币挖矿,那是对的!所以,是的,这就是比特币挖矿的目的-验证交易并创建新的比特币。但是,如果那样做的话,它是如何工作的呢?让我们深入了解比特币挖矿,并回答我们仍然想知道的问题:什么是比特币挖矿?

比特币采矿解释

如您现在所知,比​​特币挖矿是验证比特币交易并创建新比特币的过程。开采比特币的人被称为比特币矿工。好吧,我说的是“人”,但实际上,它们是由人操作的计算机。

这些计算机(我们称为“节点”)必须非常强大,因为比特币挖矿需要大量的计算机功能。他们运行将其连接到比特币区块链并解决数学问题的软件。

解决了这些数学问题后,便会验证新的交易数据并将其存储在比特币区块链上。因此,比特币矿工正在核实交易,而不是银行和信用卡公司。这意味着没有第三方可以信任或依赖。聪明吧?

比特币挖矿的基本要求是:

专用电脑

强大的互联网连接

 电力(很多!)

您可能在想,为什么这些“矿工”会全力以赴?当然很贵吗?好吧,这是一个好问题。简而言之,他们之所以这样做,是因为他们获得了比特币的奖励。

没错,比特币矿工获得了新的比特币报酬。这是可以创建新比特币的唯一方法!

目前,已经开采了超过1800万个 比特币,而开采一个完整区块(我将在稍后解释)的奖励 定为12.50比特币。请留意,总共只能开采2100万比特币。当所有2100万比特币都被开采时,将无法创建新的比特币!所以,现在您知道什么是比特币挖矿了。

那现在-什么是比特币区块?

最喜欢的发现

寻找有关相关主题的更深入信息吗? 我们收集了类似的文章供您节省时间。 来看一看吧!

comparisons

瑞波币和比特币: 了解瑞波币和比特币的区别并了解瑞波币是否会是下一个比特币?

cryptocurrencies

如何购买瑞波币:综合指南

cryptocurrencies

狗狗币挖矿:如何挖掘狗狗币 - 初学者指南

什么是比特币挖矿:比特币挖矿如何工作?

让我们谈谈区块链和涉及比特币挖掘的技术。您知道比特币使用区块链吧? 对吧?这就是“区块”这个词的由来。

什么是区块链技术?

许多比特币交易同时发生。同时发生的交易被分组。这些组称为“区块”。比特币矿工必须验证的是这些区块,他们成组地验证交易,而不是单独验证它们。

验证完一个区块后,会将其添加到已验证的一系列区块中。这就是为什么比特币背后的技术被称为区块链!

注意:您可以在本指南中阅读有关区块链的更多信息。

当我解释挖掘比特币的逐步过程时,这将变得更容易理解。

比特币采矿如何运作?

第1步:假设您想购买一张床并使用比特币付款。如果床的成本是$ 300,它将约为0.046510比特币(在撰写本文时,即)。当您购买床具时,世界各地的其他人也用比特币购买东西。

步骤2:比特币挖矿节点(计算机)被告知正在发生的这些交易。

步骤3:现在,比特币矿工必须验证您的交易。在比特币矿工验证您的交易之前,您无法将床带回家。

可是等等。验证交易的含义是什么,如何完成?

比特币矿工运行解决数学问题的比特币采矿软件-想象一台计算机完成了一个非常复杂的难题/拼图!对于每一笔交易,他们必须解决的问题/难题都不同。

许多比特币矿工试图同时解决问题,但是首先解决这个问题的矿工就是获得新比特币奖励的人。就像一场比赛!

比特币矿工保留过去发生过的所有比特币过去交易的数据。我们称其为“旧交易数据库”。

那么什么是比特币挖矿交易?当您发送比特币时,比特币矿工会在验证之前检查“旧交易数据库”。这可以确保您在过去的任何交易中都没有花费相同的比特币。

他们还会检查您是否拥有足够的比特币。在床示例中,交易为0.046510比特币。因此,比特币矿工将在验证之前检查您是否拥有0.046510比特币。如果您没有0.046510比特币,则不会验证您的交易,也无法购买床。

好吧,回到买床...

步骤4:第一个解决难题的矿工(我们称此矿工为“ John”),必须告知其余节点他已解决难题。然后其他矿工检查约翰对难题的解决方案是否正确。

步骤5:当51%的其他矿工同意John提供了正确的解决方案时,将验证并发送您的0.046510比特币。

注意:验证交易的最短时间为10分钟。但是随着比特币交易数量的增加,有时可能需要35-40分钟或更长时间。

第6步:比特币矿工完成验证交易所在的区块/组。交易现已完成!是的-您可以将床带回家!

关于什么是比特币挖矿,最好的事情之一就是选择成为矿工的人不需要知道如何解决问题或擅长数学。他们只需要比特币挖掘硬件(功能强大的计算机)和比特币挖掘软件。

如您所见,比特币挖矿并不难理解。就是说,您想到的下一个大问题可能类似于“您如何开采比特币?'好吧,让我们开始吧。

 

什么是比特币挖矿:如何开始比特币挖矿?

请按照以下步骤操作,您可以自己成为比特币矿工。如果您不想这么做,也很好-学习如何开采比特币仍然可以帮助您更好地了解开采本身的过程。

Did you know?

想从加密货币中变的更聪明更富有吗?

订阅我们 - 我们每周都会发布新的加密解释器视频!

What is a Rug Pull in Crypto? (Meaning + Examples)

订阅

在YOUTUBE上

获取比特币采矿硬件

开始比特币挖矿的第一步是购买挖矿硬件。选择正确的硬件对于采矿的成功至关重要。那么,什么是比特币挖矿的最好硬件?

早在2009年开始比特币开采时,您就可以使用基本计算机进行开采,例如我们从零售商店购买的计算机!该计算机的CPU(中央处理器)具有足够的能力来快速解决数学问题。

随着比特币开始变得越来越流行,矿工们也开始使用功能更强大的计算机。他们使用了更快的图形处理单元(GPU/显卡),可以更快地解决问题,这意味着他们将赢得比赛并获得新的比特币奖励!

猜猜当比特币变得更加流行时会发生什么?矿工们变得更快。他们没有使用CPU和GPU,而是开始使用称为ASIC(专用集成电路)的专用比特币挖掘硬件。因此,如果您想赢得比赛并立即开采比特币,则需要ASIC。

资料来源:buybitcoinworldwide

为挖掘而创建的ASIC 非常强大且快速。他们除了采矿以外不做任何其他事情。

如果要购买ASIC,则应使用以下方法比较不同的ASIC:

价格;

哈希率(这个数字告诉你ASIC矿机 的计算速率,哈希速率越高,则这颗ASIC矿机的速度越快);

电力需求(此数字越小,使用的电量越少)。

您可以检查以下在初学者中流行的不同ASIC的比较。

ASIC模型

哈希率(TH / s)

电(W)

价格(美元)

蚂蚁矿机S9

14.0

1372

2,694

阿瓦隆矿工821

11.0

1200

3,190

蚂蚁矿机R4

8.4

845

1,000

您还可以检出Amazon和eBay上可用的ASIC 。

加入比特币矿池

您可以通过两种方式开始比特币挖矿。一种是自己开始,这称为独采矿。另一种方式是加入一组其他比特币矿工-这些被称为矿池。

那么,什么是比特币挖矿池?将比特币矿池想象成大型的比特币农场。许多矿工都结合了比特币采矿硬件的功能。他们还分摊了收到的比特币奖励。

想象一下:您在比特币采矿池中。您的计算机功率是采矿池中总功率的2%。如果您的矿池赢得了验证区块的竞赛,您将获得矿池奖励的2%的新比特币。

如果你是一个初学者,比特币养殖(加入采矿池)建议。有许多不同的池供您选择。但是要小心,只能选择信誉​​良好的知名矿池!当然,他们收取费用,但通常很小(1-3%)。

我推荐给新矿工的一些受欢迎的矿池是:

Slushpool:2%的费用。

Pool.BTC.com:费用为2-3%。

卡诺普尔(Kanopool):0.9%的费用(这三个中最便宜的!)。

下载比特币采矿软件

您可能拥有世界上最好的采矿硬件,但是如果没有比特币采矿软件,该硬件将毫无用处。

需要使用采矿软件来访问比特币网络和“旧交易数据库”。如果要加入采矿池,则也需要它。

有不同类型的比特币挖掘软件 可用。不同的操作系统(例如Mac OS,Windows和Linux)有不同的操作系统。支持使用ASIC进行挖掘的一些最受欢迎的软件是:

CG矿工(在这里下载)

适用于Windows,Linux和Mac;

可以与GPU / ASIC一起使用;

免费下载!

BitMinter(在此处下载)

适用于Windows,Linux和Mac;

可以与GPU / ASIC一起使用;

免费下载!

如果您想了解更多选项,还可以查看hashflare.io,minergate.com和nicehash.com。

注意:我建议您检查您所在国家/地区的比特币采矿法规。来自不同国家的监管机构正试图控制和监管加密货币市场。这可能会影响您的比特币挖矿。

打开比特币钱包

一旦您设置了比特币挖矿硬件,下载了软件并加入了挖矿池,就可以开始挖矿比特币了!但是,等等,您将获得比特币的奖励,对吧?那么,您是否考虑过将这些比特币存储在哪里?

与传统货币不同,比特币不能存储在您的银行帐户中。相反,您将它们存储在比特币钱包中!那么,什么是比特币钱包?

选择钱包时必须非常小心,否则可能会丢失比特币。许多人损失了很多钱,因为他们的比特币钱包被黑了。

有三种类型的Bitcoin钱包-网络钱包,软件钱包和硬件的钱包。

Web钱包和软件钱包始终连接到Internet。要使用/访问网络钱包,请访问网站。要使用/访问软件钱包,请转到一个应用程序。

我 不建议使用网络钱包,因为这是最不安全的选择。如果要下载软件钱包,建议使用Exodus。

硬件钱包没有连接到互联网,因此更加安全。它们是可以存储比特币的实际物理设备;您可以通过USB将硬件钱包连接到计算机。

 

我推荐的三个最受欢迎的硬件钱包是:

安全的

价格-110美元

强大的安全功能,包括无法感染病毒的USB连接(+)

可以链接到Dropbox帐户(+)

除比特币(-)之外,无法存储许多其他加密货币

Ledger Nano S

价钱$ 116

易于使用(+)

可以同时存储10种以上的不同加密货币和ERC-20硬币(+)

KeepKey

价钱$ 49

用户友好(+)

很棒的设计(+)

非常新,仍然必须证明自己(-)

注意: ERC-20硬币是在以太坊上运行的dApp(分布式应用程序)的基于以太坊的硬币。您可以在我们的以太坊VS比特币指南中阅读有关dApp和以太坊的更多信息。

什么是比特币挖矿:比特币挖矿是否对您有价值?

这个问题的答案因人而异。它可能适合您,但可能不适用于其他人。

什么是比特币采矿奖励?

当前,矿工每块获得奖励的比特币数量为12.5。没错,第一个矿工将获得12.5比特币,以解决每个区块的问题(验证交易)。

不过,这个数字每4年减半。因此,在2023年的某个时候,奖励将降至每区块6.25比特币。

现在每块是12.5比特币吗?那么,开采比特币需要多长时间?好吧,一个块需要10分钟才能开采。这意味着每48秒开采一次比特币。

比特币采矿有多难?

随着越来越多的比特币矿工加入网络,挖矿的难度也随之增加。这仅意味着具有更强大硬件的矿工/矿池将获胜。而且,这意味着您将需要购买更昂贵的硬件。

比特币采矿要多少钱?

让我们看一下比特币的采矿成本是多少?比特币挖掘涉及的两个主要成本是:

硬件/计算机成本:即使对于初学者来说,比特币采矿硬件的成本也将在600-1000美元之间,如果您想购买最好的硬件,则价格会更加昂贵。

电力成本:比特币采矿消耗大量电力!您所在位置的电力成本可能会大大影响比特币采矿的成本。如果您所在地区的电价太贵,您可能会通过开采比特币而不是赚钱而蒙受损失。

如果您加入矿池,请留意也要考虑矿池费用1-3%。

开采比特币可以赚多少利润?

找出可以赚到多少利润的最简单方法是使用在线计算器!互联网上有许多不同的比特币挖矿计算器。我建议使用CryptoCompare的Mining Calculator。

您需要输入:

散列能力-硬件的能力(选择了要购买的硬件后就可以找到它);

功耗-您的硬件使用了多少电量(同样,选择要购买的硬件后,您就可以查到);

每千瓦时($)的成本-您的电费多少(如果您不使用美元,则可以使用Google的Currency Converter);

矿池费-您要加入的矿池的费用。

确保您考虑了比特币采矿硬件的成本。您应该将硬件成本包括在计算中,以便找出您的实际利润。

优点

一个非常著名的加密货币交换平台

超过500种不同的加密货币可供交易

双因素认证

主要特点

超过500种不同的加密货币可用

强大的安全性

小额提款费

CLAIM $600 REWARD

优点

安全可靠

费用低

接受大量法定货币

主要特点

信誉良好的交易所

接受多种法定货币

相对较低的交易费用

KICK OFF WITH ONLY $10

优点

法定货币 - 已接受

简单易用

仅接受最值得信赖的加密货币

主要特点

领先的加密货币交易平台

最适合初学者

接受法定货币

GET $200 REWARD

更重要的一件事

不要忘记比特币的价格!

众所周知,比特币的价格每天都在变化。这完全是您无法控制的,但是可以改变一切。

例如,您计算当比特币价格为$12,000时的利润。如果价格跌至6,000美元,您的利润可能会亏损。您必须始终记住,这是可能的。一方面,我们看到比特币从2017年12月的19,000美元跌至2018年2月初的7000美元以下。

资料来源:steemit

最新趋势的发现

浏览我们最全面的与加密货币相关的文章,指南和教程的集合。 始终保持了解并做出明智的决定!

comparisons

代币与硬币:代币与硬币有什么区别?

cryptocurrencies

如何购买莱特币:完整指南

cryptocurrencies

关于如何购买比特币以及在哪里购买的完整指南

什么是比特币采矿:最后的话

所以,现在您应该很自信地知道-什么是比特币挖矿。

我希望您对它是什么,它如何工作以及如何开始自己的比特币挖掘有一个很好的了解。显然,您可以通过开采比特币来赚很多钱,但这取决于很多事情-其中大部分都不在您的控制范围内(电费,比特币价格等)。

开始开采比特币需要大量的计划和资金-与在交易所进行交易一样。它可以给您带来丰厚的利润,但也可能导致巨大的损失。说到损失,如果要保护资产安全,则应始终选择可靠的硬件钱包。一些最好选择包括Ledger Nano X和Trezor ModelT。 

如果您的电力成本很低,那么您可能会非常乐于开采比特币。如果它们很高,则情况可能恰好相反。好吧,或者您正在考虑搬迁国家!

如果您决定购买比特币并开始交易,则可以查看诸如Coinbase和币安之类的加密货币交换平台,它们是一些最可靠的平台。

那么,告诉我们 - 您打算做什么?

关于本文的专家和分析师

由 Aaron S.

主编

Aaron已完成经济学、政治学和经济学硕士学位。针对东亚地区的文化,Aaron 撰写了科学论文,对美国与东亚地区的文化差异进行了比较分析。西方和日本的资本主义集体形式,1945-2020。

Aaron在金融科技行业拥有近十年的经验,了解加密货币爱好者面临的所有最大问题和困境。他是一位充满热情的分析师,关注数据驱动和基于事实的内容,以及与 Web3 本地人和行业新手相关的内容。

Aaron是与数字货币相关的一切事务的首选人。怀着对区块链的巨大热情Web3 教育,Aaron 致力于改变我们所知...

完整简历

每个内容背后都有一位专家。

了解我们的专家贡献者和分析师

Aaron S.,

主编

Aaron已完成经济学、政治学和经济学硕士学位。针对东亚地区的文化,Aaron 撰写了科学论文,对美国与东亚地区的文化差异进行了比较分析。西方和日本的资本主义集体形式,1945-2020。

Aaron在金融科技行业拥有近十年的经验,了解加密货币爱好者面临的所有最大问题和困境。他是一位充满热情的分析师,关注数据驱动和基于事实的内容,以及与 Web3 本地人和行业新手相关的内容。

Aaron是与数字货币相关的一切事务的首选人。怀着对区块链的巨大热情Web3 教育,Aaron 致力于改变我们所知道的领域,并使其更适合初学者。

Aaron已被多家知名媒体引用,并且他本人也是一位出版作家。即使在空闲时间,他也喜欢研究市场趋势,寻找下一个超新星。

完整简历

所有专家贡献者和分析师

TOP3推荐的加密货币交易所:

9.8

阅读评论

9.4

阅读评论

9.1

阅读评论

我们如何评测虚拟货币交易所

1. 根据用户评测收集数据。

2. 在线调查虚拟货币交易所。

3. 通常,自己测试虚拟货币交易所。

4. 评测和排名在线虚拟货币交易所。

5. 发布虚拟交换评测和指南。

查看最受好评的交易所

BitDegree.org

事实核查标准

×

为确保最高水平的准确性和最新信息,BitDegree.org 会按照严格的编辑指南定期进行审计和事实检查。遵守明确的链接规则以满足参考信誉标准。

精心挑选的行业专家将他们的现实生活经验和专业知识贡献给 BitDegree 的内容。我们广泛的 Web3 专家网络 由来自领先公司、研究组织和学术界的专业人士组成。

BitDegree.org 上的所有内容都符合这些标准:

创作内容时仅使用学术协会或期刊等权威来源作为研究参考。

必须始终向读者揭示每个涵盖主题背后的真实背景。

如果参考研究背后存在利益分歧,则必须始终告知读者。

如果您认为内容已过时、不完整或有疑问,请随时与我们联系。

最新的加密视频和新闻

查看更多新闻

TOP3最受欢迎的优惠券代码

已验证

CLAIM $600 REWARD

Exclusive Binance Referral Code

评分

5.0

获取优惠券

查看所有提供商优惠券

已验证

CLAIM 10% DISCOUNT

On Ledger Nano S Plus 3-Pack

评分

5.0

获取优惠券

查看所有提供商优惠券

已验证

KICK OFF WITH ONLY $10

Join Kraken Now

评分

5.0

获取优惠券

查看所有提供商优惠券

留下您的真实反馈

留下您的真实意见并帮助数千人选择最佳的加密货币交易所。 只要诚实,就可以接受所有正面或负面的反馈。 我们不会发布有偏见的反馈或垃圾邮件。 因此,如果您想分享您的经验,意见或建议 - 现场就在您身边!

留下您的反馈

常问问题

开采比特币值得吗?

这主要取决于您要这样做的时间点。诸如比特币的价格,与您的矿机有关的电力和维护成本,矿机本身等因素都可以影响和影响答案。无论哪种方式,如果您真的想从比特币开始,那么最好先尝试一些加密货币交易所,这是一个更好的主意。

开采比特币难吗?

简短的答案 - 是的。您会看到,当比特币首次被发明时,只有少数人知道它,情况就大不相同了 - 开采起来要容易得多。现在,竞争非常激烈 - 大量的矿工试图自己获得一些比特币,难怪该过程变得更加困难了!同样,尽管如此 - 如果您想全面了解“比特币折磨”并尝试一下,那么最好的选择是从可靠的交易所购买一些硬币。

如何为自己选择最好的加密货币交易所?

为自己挑选最佳加密货币交易所时,您应该始终专注于在所有顶级加密货币交易所应具备的功能和对您而言重要的功能之间保持平衡。 例如,所有最好的交易所都应具有顶级安全功能,但是如果您只想交易主要的加密货币,那么您可能就不太在乎在这个交易所能够使用的硬币的种类了。这视情况而定!

哪种加密货币交易所最适合初学者?

在网上阅读各种最佳的加密货币交易所评论时,您一定会注意到,大多数这些交易所的共同点之一是,它们使用起来非常简单。。 对于初学者而言,与其他人相比,它更友好,您在这两个顶级交流平台上都不会遇到任何困难。 就是说,许多用户认为 KuCoin是当前市场上较简单的交易所之一。

加密货币交易所和经纪人之间有什么区别?

用外行的术语来说,加密货币交易所是您与他人见面和交换加密货币的地方。交换平台(即Binance)充当中间人,它将您(您的要约或要求)与 其他人(卖方或买方)。 但是,有了经纪人,就不会有“其他人”,您可以在没有任何第三方干预的情况下,使用相关平台来兑换您的加密货币或法定货币。 但是,在考虑加密货币交易所排名时,通常将这两种类型的业务(交易所和经纪业务)归入总称之列 - 交易所。 这样做是为了简单起见。

所有顶级加密货币交易所都设在美国吗?

不,绝对不是! 尽管确实有一些顶级加密货币交易所位于美国(即KuCoin或Kraken),但世界各地还有其他非常知名的行业领袖。 例如,Binance的总部位于日本东京,而Bittrex的总部位于列支敦士登。 尽管有很多原因导致交易所希望将其设在一个位置而不是另一个位置,但大多数原因归结为业务错综复杂,通常对平台用户没有影响。

订阅

在YOUTUBE上

轻松了解加密货币

每周都有新的解说视频!

顶级加密货币

Bitcoin

(BTC)

Ethereum

(ETH)

Tether

(USDT)

BNB

(BNB)

Solana

(SOL)

顶级现货交易所

Binance

Coinbase

Bybit

OKX

Upbit

购买加密货币

购买 Bitcoin

(BTC)

购买 Ethereum

(ETH)

购买 Tether

(USDT)

购买 BNB

(BNB)

购买 Solana

(SOL)

热门评论

• 币安评测

• Kraken评测

• Coinbase评测

• KuCoin评测

• eToro评论

加密货币指南

dApp和加密货币投资组合追踪器

最好的加密货币评测

加密货币新闻

加密货币视频

所有加密货币交易所

项目

关于BitDegree

BitDegree 专家

我们的分析方法

欧盟项目

在 BitDegree 上做广告

BitDegree 加密货币赞助商

线上教学

招聘

联系

关注我们

BitDegree 加密货币学习中心旨在发现、简化和与大众分享加密货币教育。 根据“学习和获得”原则,加密货币新手、学生和研究人员能够通过在学习时收集奖励来收集核心加密货币知识。 加入数百万行列,在一个地方轻松发现和了解加密货币、价格图表、顶级加密货币交易所和钱包。

© BitDegree.org - 将加密货币知识带给大众的独立教育计划 |

[email protected]

我们努力尽可能准确地呈现所有信息和定价,但我们无法确保数据始终是最新的。附加条款可能适用于免费优惠。 披露:为确保我们网站的评论数据始终免费并保持最新状态,如果读者通过我们的网站链接购买,有时我们可能会收取少量佣金,额外费用为零。

本网站发布的内容并非旨在提供任何形式的金融、投资、交易或任何其他形式的建议。 BitDegree.org 不认可或建议您购买、出售或持有任何类型的加密货币。在做出金融投资决定之前,请务必咨询您的财务顾问。

法律&隐私

Cookie政策

广告商披露

×

已验证

$600 WELCOME BONUS

Earn Huge Exclusive Binance Learners Rewards

评分

获取优惠券

查看所有提供商优惠券

区块链系列教程之:比特币中的挖矿 - 知乎

区块链系列教程之:比特币中的挖矿 - 知乎首发于程序那些事切换模式写文章登录/注册区块链系列教程之:比特币中的挖矿flydean程序那些事简介我们知道比特币就是挖矿产生的,那么在比特币网络中,挖矿有什么特点呢?怎么分配挖矿收入呢?在这篇文章中你都能找到答案。比特币的节点构造上篇文章我们提到了,比特币是一个P2P网络,P2P网络中就有很多个节点,从P2P的定义来看,各个节点的地位是相同的,其实不然。比特币网络的节点各有作用。我们先来看一个总体的图,比特币节点总共有4种类型:这四种类型分别是钱包,挖矿节点,全节点,和网络路由节点。不同的角色组合成了一个庞大的比特币网络。根据功能的不同,不同的角色可能需要不同的类型。上面我们介绍了7个常见的节点。Bitcoin Core 这个是你在官方下载的bitcoin软件,它包含了4中类型的功能。Full Block Chain Node,这个节点包含了所有的比特币区块链历史的信息,叫做全节点,全节点主要用来做历史交易的验证。Solo Miner,这个是独立的挖矿节点。SPV wallet, 这个是我们之前介绍的轻量级的钱包。Pool Protocol Servers, 这个是矿池连接比特币网络的网关。注意,比特网网络除了自身的P2P网络协议之外,还有一个Stratum协议,Stratum协议被应用于挖矿、以及轻量级或移动端比特币钱包之中。Mining Nodes,这是连接到比特币矿池的矿机节点。SPV stratum wallet, 使用Stratum协议的轻量级钱包。这些节点组合在一起,构成了庞大的比特币网络。挖矿挖矿是增加比特币货币供应的一个过程。挖矿同时还保护着比特币系统的安全,防止欺诈交易,避免“双重支付”,“双重支付”是指多次花费同一笔比特币。矿工们通过为比特币网络提供算力来换取获得比特币奖励的机会。每10分钟就会有一个新的区块被“挖掘”出来,每个区块里包含着从上一个区块产生到目前这段时间内 发生的所有交易,这些交易被依次添加到区块链中矿工们在挖矿过程中会得到两种类型的奖励:创建新区块的新币奖励,以及区块中所含交易的交易费。为了得到这些奖励,矿工们争相完成一种基于加密哈希 算法的数学难题,这些难题的答案包括在新区块中,作为矿工的计算工作量的证明,被称为”“工作量证明”。该算法的竞争的机制以及获胜者有权在区块链上进行 交易记录的机制,这二者比特币安全的基石。新比特币的生成过程被称为挖矿是因为它的奖励机制被设计为速度递减模式,类似于贵重金属的挖矿过程。比特币的货币是通过挖矿发行的,类似于中央银行 通过印刷银行纸币来发行货币。矿工通过创造一个新区块得到的比特币数量大约每四年(或准确说是每隔210,000个块)减少一半。开始时为2009年1月 每个区块奖励50个比特币,然后到2012年11月减半为每个区块奖励25个比特币。之后将在2016年的某个时刻再次减半为每个新区块奖励12.5个比 特币。基于这个公式,比特币挖矿奖励以指数方式递减,直到2140年。届时所有的比特币(20,999,999,980)全部发行完毕。换句话说在 2140年之后,不会再有新的比特币产生。(通货紧缩货币)挖矿节点在比特币网络中,一些节点被称为专业节点矿工。与其他任一完整节点相同,这些节点在比特币网络中进行接收和传播未确认交易记录。然而,这些节点也能够在新区块中整合这些交易记录。矿工间的竞争以新区块的传播而 结束,如同宣布谁是最后的赢家。对于矿工们来说,获得一个新区块意味着某个参与者赢了,而他们则输了这场竞争。然而,一轮竞争的结束也代表着下一轮竞争的 开始。新区块并不仅仅是象征着竞赛结束的方格旗;它也是下一个区块竞赛的发令枪。创币交易区块中的第一笔交易是笔特殊交易,称为创币交易或者coinbase交易。这个交易是由挖矿节点构造并用来奖励矿工们所做的贡献的。挖矿节点会创建“向XX的地址支付25.09094928个比特币”这样一个交易,把生成交易的奖励发送到自己的钱包。矿工挖出区块获得的奖励金额 是coinbase奖励(25个全新的比特币)和区块中全部交易矿工费的总和。与常规交易不同,创币交易没有输入,不消耗UTXO。它只包含一个被称作coinbase的输入,仅仅用来创建新的比特币。创币交易有一个输出,支付到这个矿工的比特币地址。矿池收入分配根据矿池的收入分配不同,可以分为两种。PPLNS全称Pay Per Last N Shares,意思是说“根据过去的N个股份来支付收益”,这意味着,所有的矿工一旦发现了一个区块,大家将根据每个人自己贡献的股份数量占比来分配区块中的货币。PPSPPS矿池(类似于打工模式)PPS全称为Pay Per Share。为了解决PPLNS那种有时候收益很高,有时候没有收益的情况,PPS采用了新的算法。PPS根据你的算力在矿池中的占比,并估算了矿池每天可以获得的矿产,给你每天基本固定的收益。挖矿方向从2009年开始,原来普通的计算机就可以“挖矿”,但是到了2014年,所有挖矿的计算机也变成由专业设计芯片公司为比特币度身定制的“矿机”。随着参与挖矿的计算机变得越来越昂贵,比特币生产的成本也水涨船高。截止到2014年10月,每个比特币生产的成本已经达到接近3000元人民币。这个生产包括计算机的生产制造成本,生产过程中产生的电费,以及人员费用和场地费用。也就是说在2016年年底之前,因为每天生产3600个比特币,每天所投入的资金就达到1000万元人民币。并且随着竞争越来越激烈,这个成本还在处于上升阶段。算力浪费那么挖矿花了这么多电费到底做了什么事情呢?无他,就是算一个hash值而已。所以这造成严重的浪费。当然也有人想出了一些解决办法,使用这些算力去做些有用的事情:Sunny King的素数币质数币(PrimeCoin代码XPM)寻找质数格雷德币(GridCoin代码GRC)分布式科学计算算力调整注意比特币的挖矿难点并不是一定增加的。它是动态调整的。如果在上个周期(2016个区块)中平均区块产生时间大于10分钟,也就是全网算力下降的情况下,则在当前周期的难度就会下降,使得区块产生时间加快。不过目前为止好像还没有出现过全网算力下降的情况,难度是一直增加。由于是基于事后统计,所以难度的变化会滞后于全网算力的变化1~2个周期。如果全网算力增加,则在这1~2个周期中挖矿速度加快,则挖矿收益增多;反之,收益减少。但是从长期来看还是保持平衡。总结本文介绍了比特币网络中挖矿相关的内容,希望大家能够喜欢。本文作者:flydean程序那些事本文链接:http://www.flydean.com/bitcoin-mine-consensus/本文来源:flydean的博客欢迎关注我的公众号:程序那些事,更多精彩等着您!发布于 2020-06-26 11:14比特币 (Bitcoin)挖矿区块链(Blockchain)​赞同​​添加评论​分享​喜欢​收藏​申请转载​文章被以下专栏收录程序那些事懂程序,更

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Error 403 Forbidden - This request is blocked.

For security reasons you can't connect to the server for this app or website at this time.

It maybe that you have too many requests or the illegal request payload is identified as an attack.

Please try again later.

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Error 403 Forbidden - This request is blocked.

For security reasons you can't connect to the server for this app or website at this time.

It maybe that you have too many requests or the illegal request payload is identified as an attack.

Please try again later.

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Buy/Sell Bitcoin, Ether and Altcoins | Cryptocurrency Exchange | Binance

Error 403 Forbidden - This request is blocked.

For security reasons you can't connect to the server for this app or website at this time.

It maybe that you have too many requests or the illegal request payload is identified as an attack.

Please try again later.