当前位置: 首页 > 科技观察

区块链常用名词解释-区块链知识普及

时间:2023-03-21 14:06:25 科技观察

【.com原稿】区块链从小圈子走向大众视野。名词未知;下面带大家认识一些常见的名字,比如wallet、hash等。区块链相关(AboutBlockChain):区块链实际上是一个链表结构,链表中的元素是一个区块,每个区块结构如下:时间戳:每个区块产生的时间戳nonce:连同区块的哈希值header,证明计算量(工作量)data:存储在区块链上的所有数据prevHash:上一个区块的哈希值hash:区块链的哈希值,由以上属性组成哈希计算得到的区块链本质上是一个分布式的交易账本,所有用户本地都有完整的账本信息。当用户想要更改某个区块的信息时,由于在区块哈希的计算过程中使用了prevHash作为参数,因此该区块之后的所有区块都将变为非法,需要重新计算哈希才能让系统识别这个要改,51%的用户的账本信息都要同步改,所以区块链上的账本信息很难被篡改,保证了它的安全性。上面提到的工作量证明(PoW),在挖矿过程中,矿工必须更快地计算出一个nonce,那么这个nonce是如何计算出来的呢?nonce是一个整数值。一般先对区块头信息加上nonce得到的字符串,再进行SHA256哈希运算。如果结果开头0的个数小于设定的难度值,则验证失败,将nonce值加1,重复上述操作,直到计算出的nonce满足开头0的个数得到的哈希值不小于设定的难度值。nonce值是挖矿过程中工作量的证明。在工作量证明中,一个成员要成为领导者并选择下一个要添加到区块链的区块,他们必须找到特定数学问题的解决方案;计算能力的成员。这些成员也被称为矿工。每解决一个数学问题,矿工都会得到一定的货币奖励,整个系统机制会奖励每个参与挖矿的矿工一定数量的代币,以鼓励更多的矿工参与。回到工作量证明,其他节点通过检查区块的哈希值是否小于预设数来验证区块的有效性。股权证明(PoS)在继续之前,让我把领导人选举(选择下一个区块的成员)比作彩票:在彩票中,如果Bob的票数比Alice多,他就更有可能获胜。与此类似:在工作量证明中,如果Bob比Alice拥有更多的计算能力和能量,因此可以输出更多的工作——他更有可能获胜(挖掘下一个区块)。再次类似:在股权证明中,如果Bob的股权比Alice多,他更有可能获胜(“挖掘”下一个区块)。股权证明消除了工作证明的能源和计算能力要求,并以股权取而代之。Stake是成员愿意在一段时间内锁定的货币数量。作为回报,他们有机会成为下一个领导者并选择下一个区块,这与他们的股份成正比。有些硬币只使用股权证明,例如Nxt和Blackcoin。矿工(minner)和挖矿(mining)挖矿本质上是一群节点(矿机)利用它们的计算资源创建一个包含有效交易的区块的过程。参与这个过程的节点(矿机)称为矿工。如果矿工想向区块链提交一个区块,他必须更快地计算一个随机数。nonce和区块头信息可以共同证明一个区块是有效的。钱包(Wallet)钱包本质上是一个包含私钥的文件。它通常包括一个软件客户端,钱包的地址是由私钥计算出来的,也就是公钥。对于每笔交易,发送方必须提供私钥才能将公钥地址拥有的代币转移到其他公钥地址,因此私钥决定了比特币的归属。这里需要注意的是,一个钱包地址所拥有的代币数量并不是存储在私钥中,而是存储在区块链中。区块链拥有所有的历史交易账户,每个地址拥有的代币都可以根据账户进行计算。货币。区块链最流行的两个应用是比特币系统和以太坊系统。这两个系统都是公共区块链平台并拥有自己的虚拟货币(比特币和以太币)。但是它们之间有很多不同之处。比特币(Bitcoin),最原始的加密货币,使用未花费的交易输出(UTXO)模型作为账本。它使用简单的工作量证明算法来猜测一个随机字符串,结合最后一个交易块的SHA-256哈希值,该字符串在数值上应该小于一个小阈值。成功猜出答案“挖出了一个区块”的参与者以及区块中包含的交易被添加到账本中。这允许使用一种非常简单的方法来确定共识——参与者只需同意最长的链应被视为挖掘下一个交易块的基础。比特币不是为智能合约设计的。因此,可用的函数非常有限,得到的函数肯定不是图灵完备的,但大多数对比特币的分析都忽略了这一点。因此,由此产生的系统纯粹是一个安全的加密分类账。除了使用加密签名来验证交易的来源之外,它没有身份语义并且完全不需要信任。以太坊(Etherum)以太坊的账本也参考了一些比特币的设计模型,但是模拟的是单个全局虚拟机的状态,而不是使用UTXO模型。以太坊相比比特币的关键创新在于加入了图灵完备的智能合约能力。以太坊虚拟机(EVM)-设计用于具有智能合约的分布式账本环境的虚拟机。在以太坊中,程序状态是私有的,属于单一合约地址,通过一系列EVM字节码指令修改,是智能合约的内容。然后,通过聚合每个合约地址的程序状态来获得整体全局状态。以太坊网络中的所有全节点都遵循该模型的规则。他们可以在自己的机器上计算任何合约地址状态的系统状态,只要他们使用相同的交易(形成以太坊模型中的输入数据),他们就会得到相同的结果。但由于以太坊采用全球共识算法,具有全球最新区块的概念,因此以太坊虚拟机整体的交易处理速度受到区块生成率的限制。向以太坊网络添加更多硬件和计算能力并不能使其更快或更强大,它只会增加防篡改能力。使用图灵完备的智能合约可以为网络添加额外的功能,而不需要所有参与者都知道它们。例如,以太坊网络因此可以发行在以太坊虚拟机中状态附加的软件令牌。这构成了所谓的首次代币发行(ICO)的基础。从表面上看,EVM类似于JVM和其他类似环境,但在一些重要方面的设计有所不同。特别是EVM字节码的设计,使得编译后代码的静态分析变得更加困难。这不是需要高度透明性和可验证性的执行环境的卖点。EVM底层环境并不是一个特别友好的编程环境,所以有一些高级语言可以编译成EVM字节码。其中最著名的就是Solidity。受JavaScript和Java等更主流编程语言的启发,Solidity语言还融入了与以太坊区块链交互的新功能。在某种程度上,以太坊是其自身成功的牺牲品。它作为ICO首选平台的角色导致ETH(以太坊代币)在2018年初的价格上涨。由于以太坊团队本身拥有大量这种加密货币,因此许多主要参与者对其拥有巨大的既得利益,并希望成为能够实现它。【原创稿件,合作网站转载请注明原作者和出处为.com】