欢迎来到蚂蚁金融网 - 一家专业分享股市行情的正规金融网站!
访问时间:2021年08月10日 15:08:46

区块链的工作原理(揭秘)

原创 金融领域创作者:妙菡金融领域创作者 浏览: 2020-12-23 09:32:01 文章一共有 字,阅读需要 分钟

  区块链的工作原理

区块链的工作原理(揭秘)

  区块链的核心部分就是挖矿算法,接来下我们就以比特币的算法为例。它被称为SHA-256.也就是“256位元安全散列算法”的缩写,它可接受任何内容的输入,包括文本、数位,或者任何长度的文档。而输出结果称为“杂凑”,且每次长度都相同为256位机器代码。

  同样的输入将得到同样的输出,并不会随机。但如果你对输入进行了微小的改变,则输出会完全不同。

  而且该演算法也被称为单向函数,这就意味着你不能根据输出来计算出输入。你只能对输入进行猜测,然而你猜对的几率是2^256分之一,这几乎是不可能的,换句话该演算法是安全的。

  现在我们已经知道什么是演算法,那接下来我们就用一个简单的交易示例来演示区块链是如何运行的。

  现有Alice和Bob两个人,且我们知道他们俩的比特币余额。我们假设Alice欠Bob2个比特币。

  Alice如果想要向Bob发送那两枚比特币,则Alice需要向网路中的矿工们广播她想要进行交易的消息。

  在广播中,Alice将Bob的公共地址、她想要发送的比特币数量,以及数位签章和她公开金钥提供给矿工们。该签名是通过Alice的私密金钥生成的,由此矿工们就可以验证那些比特币是属于Alice的,且她也想要进行交易。

  一旦矿工确定该交易是有效的,则他们就会将该交易与其他交易一起纳入到区块中,并尝试对该区块进行挖矿。且区块中的这一输入是通过SHA-256演算法来完成的。而输出则需要从具体的0's数值开始,以便才能被认为有效。具体0's的数值则将根据所谓的“difficulty(难度)”来决定,而“difficulty”也将根据网路中的计算能力进行更改。

  想要根据最开始要求的0's数值来生成输出杂凑值,矿工则需要在区块中添加一个“noncee number(乱数)”。由于输入的很小改变会完全更改输出,所以矿工要不断随机nonces,直到找到一个有效的输出杂凑值为止。

  如果该区块已经被挖掘,则该矿工就会向其他矿工们广播该新的已被挖掘的区块。之后矿工们就开始检查该区块以确保是有效的,之后再将该区块添加到他们的区块链副本中,至此交易就完成了。并且矿工也需要在已完成的区块中纳入前一区块的输出杂凑值,以此才能使得所有的区块都相互连接,而区块相互连结的线性链也就被命名为区块链。因为系统是基于信任工作的,所以这一过程尤为重要。

  每一位矿工的电脑上都有他自己的区块链副本,且所有人都相信投入计算工作最多的区块链,就将成为最长的区块链。如果一位元矿工更改了之前区块中交易,则该区块的输出杂凑值也将改变,而这就导致了其后的所有杂凑值都会改变(因为区块是通过杂凑值连结的)。该矿工就不得不重新开始所有的工作,以便于其他人接收到正确的区块链。因此,如果一位矿工想要作弊,则他的算力就必须要超过网路计算能力的50%,这几乎是不可能的。而网路中类似的攻击也就被称为51%攻击。

  为了生成区块而使电脑运行的模式被称为工作量证明(PoW)。也存在其他模式列入权益证明(PoS),而该模式下则不需要太多的计算能力,这就意味着只需要相对较少的电力,并且该模式也将扩展到更多的用户。

  以上就是区块链的基本原理!

版权声明:本网站发布的文章《区块链的工作原理(揭秘)》为妙菡整理编辑发布,版权归原创作者所有,转载请注明出处:http://xcjcy.org/qukuailian/2434.html

上一篇:关于区块链的10个问题(疑难解答)
下一篇:对加密货币和区块链带来重大影响的名人介绍(免费分享)

猜您还喜欢

说点什么吧
  • 全部评论(0
    还没有评论,快来抢沙发吧!