主页 > 怎么看出来imtoken真伪 > 开始使用区块链:开始使用区块链的 7 个步骤

开始使用区块链:开始使用区块链的 7 个步骤

怎么看出来imtoken真伪 2023-01-17 09:17:22

结果,块 1 的新签名“W10”与之前添加到块 2 数据串中的旧签名“X32”冲突。块 1 和块 2 之间的链接被破坏。链上的其他用户会知道区块 1 中的数据已更改。为了保持区块链的不变性,其他用户会拒绝同步改变的交易信息,原始交易记录(即达米安向乔治发送100 BTC)保持不变,整条链保持不变。这意味着为了不留痕迹地篡改交易,区块2的数据串中区块1的旧签名必须被新的签名替换。但是,一旦块 2 中的数据串发生变化,块 2 的签名也会发生变化。假设块 2 的签名从“

区块链小白入门:7个步骤入门区块链

区块链上的块对每个人都是可见的。因此,如果篡改者真想篡改交易不留痕迹,必须保证篡改后的区块仍然是连通的(否则容易让人发现哪个区块没有与其他区块连通,进而判断块。块已更改)。也就是说,更改一个块需要为所有后续块计算新的签名。可以认为这几乎是不可能的,但要了解原因,请参见下文。

三阶 - 生成签名(哈希值)

那么,我们以block 1为例,再画一个示意图。假设区块 1 只记录一笔交易,即 Thomas 向 David 发送了 100 BTC。需要根据这个数据串生成一个签名。在区块链上,此签名是通过加密哈希函数生成的。密码散列函数是一个极其复杂的数学公式:将任意数据串代入公式作为输入值会产生唯一的 64 位输出值。例如,您可以将单词“Jinglebells”插入此哈希函数(哈希函数的类型很多,这只是一个示例),输出将是:

761A7DD9CAFE34C7CDE6C1270E17F773025A61E511A56F700D415F0D3E199868

只要在这个输入中有单个字符的变化,包括改变大小写或添加空格和标点符号,你就会得到非常不同的输出。如果你在这个输入之后加上一个句号变成“Jinglebells.”,结果输出变成:

B9B324E2F987CDE8819C051327966DD4071ED72D998E0019981040958FEC291B

如果我们删除句点,我们仍然会得到与以前相同的输入:

761A7DD9CAFE34C7CDE6C1270E17F773025A61E511A56F700D415F0D3E199868

对于相同的密码散列函数,相同的输入必然产生相同的输出,不同的输入必然产生不同的输出。比特币区块链使用哈希函数为区块生成签名。块中的数据作为输入,得到的输出是块的签名。让我们再看一下只有一笔交易的区块 1 图表(Thomas 向 David 发送了 100 BTC)。

区块链哈希值怎么查看

区块链小白入门:7个步骤入门区块链

假设块 1 中的数据字符串如下所示:

区块 1 托马斯 -100 大卫 +100

将此数据字符串输入哈希函数,生成的输出(签名)如下所示:

BAB5924FC47BBA57F4615230DDBC5675A81AB29E2E0FF85D0C0AD1C1ACA05BFF

这个签名将被添加到区块 2。假设现在大卫将 100 BTC 转移到 Jimi,并且这笔交易包含在区块 2 中。那么如下图所示:

区块链小白入门:7个步骤入门区块链

块2的数据串如下:

Block 2 David -100 Jimi +100 BAB5924FC47BBA57F4615230DDBC5675A81AB29E2E0FF85D0C0AD1C1ACA05BFF

将此数据字符串输入哈希函数,生成的输出(签名)如下所示:

区块链哈希值怎么查看

25D8BE2650D7BC095D3712B14136608E096F060E32CEC7322D22E82EA526A3E5

这是块 2 的签名。每个块通过这个加密哈希函数生成一个数字签名。哈希函数有很多种,比特币区块链使用的是 SHA-256 哈希算法。

但是,(仅上述措施显然是不够的)如果有人要篡改区块中的数据,TA可以在篡改后生成新的签名,塞入下一个区块,然后逐块生成新的签名,这些变化后面的区块还是形成了一条链,其他人无法分辨出数据发生了变化。如何预防这种情况?

答案是只有满足特定要求的哈希(签名)才会被区块链接受。这是第四关介绍的挖矿。

第 4 层 - 什么是合格签名?谁在区块上签名?

并非所有签名都符合条件。区块链协议预先确定了一些要求。例如,在比特币区块链上,只有以连续零开头的数字签名对应的区块才能上链。例如,如果数字签名以不少于 10 个连续的零开头,则相应的块才能上链。

但是,从第三小节可以看出,每个数据串对应的哈希值是唯一的。如果一个区块的签名(哈希)以少于 10 个零开始怎么办?为了获得一个合格的区块签名,需要反复修改输入数据串,直到可以生成一个以连续 10 个零开头的签名。但是,由于交易数据和元数据(区块号、时间戳等)需要保持原样(否则含义会改变)区块链哈希值怎么查看,每个区块还添加了特定长度的可以更改的数据。当人们想在链上添加一个块时,可以不断地改变这条数据,直到找到一个合格的签名,然后确定这条数据的具体价值。该数据是块的随机数。随机数不是预先确定的数据,

综上所述,区块包含:1)交易数据;2)前一个区块的签名;3)nonce。这种反复更改随机数、对块数据进行哈希处理、找到合格签名的过程称为挖掘,这就是矿工所做的。矿工投入大量电力,将其转化为算力,不断用nonce代替哈希运算,直到找到合格的签名(输出)。矿工手头的计算能力越强,哈希运算越快,首先找到合格签名的概率就越高。这是一个反复试验的过程,如下图所示:

区块链小白入门:7个步骤入门区块链

-注意:nonce必须是数字(详情请阅读r/BlockchainSchool上的解释)-

区块链哈希值怎么查看

区块链网络上的任何用户都可以通过下载并启动挖矿软件来参与挖矿,实际上是利用他们的硬件计算能力来计算一个区块的随机数。以比特币区块链上的 Block #521,477 为例:

区块链小白入门:7个步骤入门区块链

- 源自区块链浏览器 blockchain.com -

可以看出,这个区块的哈希值(签名)和前一个区块的哈希值都以相同数量的零开头。找到这样的哈希值并不容易,需要大量的计算能力和时间,或者说是运气。

是的,有时一个幸运的矿工可以在几分钟内计算出一个合格的签名区块链哈希值怎么查看,而计算能力非常小。Block #523034 是一个极其罕见的例子。

一个算力很少的小矿工很快就找到了一个合格的签名,而其他矿工的算力加起来是他的7万亿倍。相比之下,赢得强力球彩票头奖的几率是 92 亿分之一,而幸运儿中奖的几率是 24,000 分之一。

不要低估这些零。本小节的重点是很难找到合格的签名。

Level 5 - 区块链的不变性是如何实现的?

如第三条所述,更改一个区块会导致其签名发生变化,与后续区块的记录不匹配,从而与后续区块断开连接。为了让网络中的其他参与者接受这个更改的块,它需要与后续块重新链接。也就是说,如果一个区块的签名改变了,那么它后面的所有区块的签名都必须改变,才能让别人觉得这是一条一致的链。

你还记得什么吗?

区块链哈希值怎么查看

如第4节所述,签名必须符合要求!虽然更改所有区块的签名似乎是可行的,但由于所涉及的成本和时间,这被认为是不可能的,原因如下:

假设一个矿工恶意篡改了一个区块中的一笔交易,然后根据哈希运算为这个区块和它后面的所有区块生成一个新的签名,以便网络中的其他参与者可以接受它被篡改的交易。问题是网络中的其他矿工也在不断地计算原始链上新区块的签名。随着新区块不断添加到链中,恶意矿工必须重新计算这些区块的签名。他必须确保所有区块都链接在一起,包括不断添加到链中的新区块。除非这个矿工的计算能力超过网络其余部分的总计算能力,否则他永远不会赶上其他矿工。

(校对注:这一段的实际意思是,只要矿工在他们见过的最长的区块链上挖矿,随着时间的推移,所有的算力自然会汇聚到一条主链上,而攻击者只能创建一条区块链。只有一条链比现在的主链更长,可以成功改变大家都认同的交易记录,这个始终以最长链为主链(有效链)的原则,就是所谓的“最长链规则”,也就是中本聪共识(Part中本共识机制)。此外,并非所有区块链都使用中本共识。)

区块链小白入门:7个步骤入门区块链

今天有数百万用户在比特币区块链上挖矿,可以假设恶意行为者或实体的计算能力不能超过整个网络的剩余计算能力。这意味着网络中的其他参与者不可能接受对区块链的任何修改,从而实现了区块链的不变性。数据一旦添加到区块链中,就无法修改。

只有一个例外,那就是恶意行为者的算力确实超过了网络其余部分的算力之和。理论上,这种情况下是可以篡改区块链的(也就是改变大家都认同的历史记录)。这被称为 51% 攻击(我写了另一篇文章来解释这种情况),过去许多区块链都遭受过这种攻击。

(校对注:到目前为止,遭受 51% 攻击的知名区块链有 bitGold、Verge、Ethereum Classic。)

事实上,对比特币区块链进行 51% 攻击所带来的好处远远不值得攻击的高额成本。为了获得足够的算力,除了硬件、散热设备和存储空间的成本外,还要承担被千人指点的风险,更重要的是会对生态造成极度破坏被攻击的区块链。如果伤害很大,那么攻击的收益也会大打折扣。51% 攻击实际上是在自己与区块链上的其他用户作战。这就是为什么参与挖矿的用户越多,整个链的安全性就越高。

恭喜你,你又向前迈进了一步!到目前为止,您应该了解为什么(大型)区块链被认为是不可变的。但是现在一个非常重要的问题出现了:如何防止矿工向区块链添加虚假交易数据?技术上是做不到的。可以在本文中找到有关区块链交易的详细说明。

(校对注:只有私钥的拥有者才能花对应地址的资金,矿工不知道你的私钥。其他人只能通过你的公钥验证交易是否是你发起的。所以伪造交易不可行)

区块链哈希值怎么查看

第 6 级 - 如何治理区块链?谁来决定规则?

…区块链协议自动将最长链上的交易记录作为代表绝大多数参与者的交易记录。构建最长的链需要整个网络的大部分计算能力。被篡改的区块与最长链断开,因此会被全网绝大多数节点自动拒绝。

在比特币区块链上,所有交易历史和钱包余额都是公开可见的(blockchain.info)。任何人都可以查看任何钱包的余额,或第一笔交易(2009 年 1 月 3 日)的所有交易记录。虽然任何人都可以查看钱包余额,但这些钱包的所有者大多是未知的。例如,一个钱包持有 6.90,000 个比特币,在撰写本文时价值约 5 亿美元。该钱包在 2015 年 4 月使用过一次,此后一直没有交易。

(校对注:这部分实际上并没有回答“谁来决定规则”的问题,而只是粗略的说“根据现有的规则,这个技术是可以实现的”。公链治理是一个超越这个的复杂问题文章需要说明范围。)

7 级 - 这对加密货币意味着什么?

加密货币本质上是比特币的变体。绝大多数加密货币都是根据自己的区块链协议构建的,并且遵循与比特币不同的规则。比特币应该被归类为货币,这意味着它具有明确的货币功能。门罗币是一种做同样事情的加密货币,但它的区块链协议增加了一些规则来增强隐私(使得追踪交易变得更加困难)。

但是,在区块链上发行的资产可以被赋予多种不同的用途,这是由发行人决定的,这样发行的资产通常被称为“代币”。这些代币可以赋予其所有者某些权利,例如游戏许可证、社交媒体渠道、实用程序等。所有这些资产交易都记录在不同的区块链上,可以通过币安等交易所进行在线交易。

代币实际上是一种新型的互联网货币,可能会影响一些行业,其中一个典型的例子就是股市。未来,公司股份等产权很可能以代币的形式存储在区块链上。区块链不仅限于以代币的形式代表实物价值,还可以安全地记录病历、身份、历史记录、税务记录等数据。这就是区块链技术的伟大之处,更何况区块链的另一个重要特点区块链:去中心化。

以上就是区块链的介绍:区块链入门的7个步骤。更多关于区块链上手的7个步骤,请关注Scripting Home的其他相关文章!

本站提醒:投资有风险,入市需谨慎。此内容不作为投资和财务建议。

标签:区块链