主页 > imtoken钱包最新版下载 > 比特币系统中的区块链是如何形成的?如何挖矿?

比特币系统中的区块链是如何形成的?如何挖矿?

imtoken钱包最新版下载 2023-01-16 21:52:00

2008年金融危机期间,11月1日,互联网极客中本聪(化名)在网上发表了一篇全名为《比特币点对点电子交易系统》的文章《白皮书》,他书中提到了这样一个概念,去中心化的电子会计系统。这是一个什么样的会计制度?这个系统是干什么用的?比特币什么?什么是区块链?什么是挖矿,背后的原理是什么?

这篇文章的组织纯粹是出于兴趣。我想根据自己的想法整理出这片知识,分享给和我一样是区块链新手的朋友。如果您认为以下某些内容不正确,请在最后的评论部分告诉我。

01 什么是比特币?

电子货币又称数字货币,是一种基于密码学的货币。总数将永久限制在 2100 万左右。现在 1BTC == 9287.01USD

在这里插入图片描述

02 什么是区块链?

区块链,最初是块链,是一个不断增长的记录列表,称为块,使用密码学链接。每个块都包含前一个块的加密哈希、时间戳和交易数据。根据设计,区块链可以抵抗数据的修改。

维基百科

在这里插入图片描述

区块链是一些交易记录数据并且是增长的,并且使用密码学原理将区块链接在一起。每个区块(创世区块除外)主要包含:

前一个区块的加密哈希值

比特币到底能不能挖到

哈希值

时间戳

交易数据(奖励交易和转账交易两种)

这种设计主要是为了防伪和防篡改。

03 区块链的形成?

区块链由多个相连的区块组成。每个区块记录一段时间内网络中的比特币交易。区块可以看作是账簿中的一个账页。要构建的第一个块称为创世块,并具有唯一的 ID 号。除了创世块,每个后续块都包含两个 ID 号,一个是块本身的 ID 号,另一个是前一个块的 ID 号。通过ID号之间的前向和后向指向关系,将所有区块依次连接起来,形成区块链。

在这里插入图片描述

主链(黑色)由创世区块(绿色)到当前区块最长的一系列区块组成,孤块(紫色)存在于主链之外,紫色区块相当于记账不成功。

04 比特币系统中的交易是如何产生的?

比特币到底能不能挖到

首先,交易必须由人发起。人们如何在比特币系统(去中心化电子会计系统)中体现?

在注册新用户时,BTC系统会为用户生成一个随机数,然后根据该随机数生成一个称为私钥的字符串。有了私钥后,用椭圆曲线乘法生成对应的公钥(这个过程是不可逆的)。关键,我们可以使用哈希函数来生成比特币地址。这个地址相当于一个比特币钱包,比特币就是钱包里的钱。交易过程是从一个钱包到另一个钱包,一个地址到另一个。

拥有 BTC 私钥意味着拥有和控制钱包中的资金。私钥必须备份,以防意外丢失,因为一旦私钥丢失,就很难恢复(公钥无法反向生成私钥)比特币到底能不能挖到,它所保护的比特币将永远消失。私钥可以加密字符串,公钥可以解密加密的字符串。这种加密方法称为非对称加密。只有你可以加密交易信息,任何人都可以使用公钥解密你的加密信息。

在这里插入图片描述

05 如何判断交易是否安全?

如果A现在想把5个比特币转给B,你怎么知道这笔交易真的是A发起的,不是别人伪造的?上面的私钥和公钥是为防伪设计的。

A首先对交易信息进行哈希运算,计算出数字摘要(实际上是一个字符串),然后使用自己的私钥加密生成密码(加密后的字符串)。

在这里插入图片描述

然后A广播这个交易记录,公钥和密码,所有的记账人(矿工)都会收到这个交易,他们会验证交易的真实性。这个过程包括对交易信息进行哈希运算,计算数字摘要(digest1),然后使用公钥和密码解密数字摘要(digest2))。@>,验证摘要1和2是否正确一样,从而保证了交易的安全。

比特币到底能不能挖到

在这里插入图片描述

06 交易生成后,如何记账?谁会来?记账?

我们做交易的时候,最重要的是记账,我付给你多少钱,付款后卡里还剩多少钱,这个交易记录目前是银行在记账,不管是信用卡、支付宝、微信等,都是银行做的。我们信任银行,因为银行的背后是国家的信用。但是现在在区块链系统中,系统中的每个人都可以有机会参与记账。为什么要做簿记?因为记账是有回报的。

假设有四个人,A、B 和 C,他们彼此进行交易。 A支付B 5比特币,B支付3比特币给C,支付2比特币给D。

在这里插入图片描述

这些交易会广播给所有想参与记账的人(矿工),因为很多人可以记账,但谁占优势?

比特币系统必须每 10 分钟生成一个区块。如果计算最好最快,那么 Ta 将拥有记账权,因此会获得一定的比特币奖励和手续费。 2100 万比特币是通过复杂的分时分配的。在这个时间段内发生的交易被打包成一个区块,称为一个区块,大小约为1M,可存储约4000条交易记录,然后将这个区块链接到其他区块,形成一条链。 ,所以叫区块链。

⭐️谁会占上风?

中本聪想到了一种称为工作量证明的方法。这意味着每个参与记账的用户都需要做一道难题。一旦你这样做了,你就有权保留账户并将其打包成块。这个问题有多难?难度太大,没有人可以通过大脑直接计算出来。一定是你要一一数数,直到和结果相符。就算算出来了,谁先算谁就有预定的权利。

比特币到底能不能挖到

⭐️奖励如何计算?

奖励包括系统发行的比特币和每笔交易的手续费。 A转账给B,A会多付一点手续费。记账人的奖励不固定,每10分钟就会产生一笔新的交易。一开始,第一个区块的奖励是 50 BTC。四年后,每个生成的区块将仅获得 25 BTC 的奖励。再过4年,就是12.5,也就是每四年,奖励减半,最后总共有2100 BTC。

07 究竟什么是挖矿?

在了解挖矿之前,先了解一下什么是哈希函数?

字符串可以通过一定的运算转换成汇总形式,比较容易计算,但是逆向计算比较困难

哈希算法中一个非常重要的算法是SHA256,它是美国国家安全局发明的算法

给这个算法输入一个字符串,它会输出一个二进制数,一个256位的二进制数。

SHA256(“BTC”) = 00000010…SHA256(“BTC,”) = 00000110…

输入略有不同比特币到底能不能挖到,输出可能完全不同,虽然是一个由1和0组成的字符串一个256位的数字,但结果可能完全不同。难点在于前向计算容易,通过输出很难将输入向后推。

比特币到底能不能挖到

挖矿是基于SHA256算法的计算过程。

在这里插入图片描述

在这个计算过程中,SHA256算法的输入字符串包括什么?主要包括前一个区块的头部信息(区块N-1)的头部hash,要打包成区块的交易记录账单(Transactions),时间戳等,最重要的是是一个随机数。对这个组合字符串执行两次 SHA256 操作将得到一个 256 位的二进制数。

SHA256(SHA256("string")) = "0101010101...";//一个256位二进制数二进制数

这个值必须满足前N位必须为0。如何计算前N位为0?您只能更改随机数并一一尝试,只有在满足要求的情况下才有资格预订和包装。这个新计算出来的值作为新区块的头部,然后打包成一个新的区块,然后链接到后面,链接成功后,你会收到奖励和手续费,这就是挖矿的过程背景 一般来说,计算机(矿机)的计算能力越强,计算成功的可能性就越大。

前 N 位必须为 0。这 N 是如何设置的? N值不同。显然,前面的0越多,问题就越难。 0出现的概率是1/2。如果前面的N为0,那么概率是(1/2)@>的N次幂。如果需要保证每10分钟必须产生一个新块,则需要调整N来实现。

参考资料:

YouTube 视频 - 李永乐老师谈比特币:

Think Tank.Wiki:%E5%8C%BA%E5%9D%97%E9%93%BE#.E5.8C.BA.E5.9D.9< @7.E9.93.BE.E7.9A.84.E8.B5.B7.E< @6.BA.90

维基百科:

还有很多内容没有涉及到,不过整理一下,对于我这个区块链新手来说,费了很多时间,希望这篇文章能帮助大家对比特币有所了解、区块链和挖矿。