不可变的
什么是不可变的?
不变性是区块链的核心定义特征。 “不可变”一词意味着数据创建后任何人都无法更改或修改。
在区块链网络中,需要不变性,因为所有节点在传递数据之前必须就数据的有效性达成一致。使用区块链作为分布式账本技术(DLT)的全部目的是确保一旦记录添加到区块链中,任何单个实体都无法对其进行更改。
它能够记录合同、销售、购买等交易,一旦添加这些交易,这些记录中的数据就无法在不更改所有后续区块和网络串通的情况下追溯更改。
区块链如何变得不可变?
加密哈希使区块链变得不可变。
散列是一种加密技术,它采用任意长度的明文输入并生成唯一的散列值。哈希值始终具有固定长度,无论它们所基于的输入的属性如何。
哈希算法非常简单,但逆转起来却出人意料地困难。例如,如果您将 SHA-256 哈希算法应用于短语“the Quick Brown Fox Jumps Over the Lazy Dog”,它将返回一个 256 位(64 个字符)的十六进制数字,如“ebc637e1a3b4902dce844b8c1e1014f11ccb0d4e0240071aae71d453c3c509b5”。如果您将此算法应用于任何其他文本字符串(例如您的密码),您将始终获得相同的输出(64 个字符的十六进制数字)。
哈希值可用作数字签名以实现数据完整性目的。
当我们通过网络发送一些数据时,我们可以使用它的哈希值作为指纹。如果我们收到相同的数据,我们可以计算其哈希值并验证它是否等于我们的原始指纹。如果没有,我们就知道有人在数据传输过程中篡改了我们的数据。
值得注意的是,不变性并不能保证数据不能被更改。其目的只是确保区块链上的任何数据或记录都不会被更改而不会造成后果。
不变性的好处
不变性的好处与区块链上的安全性、数据完整性、易于审计和欺诈预防有关。
在传统的数据库系统中,如果有人获得了数据的访问权限,他们就可以破坏或破坏数据。在区块链中,任何数据更改都需要网络上的所有节点都采用该更改。这就是为什么区块链不存在数据丢失的风险,也被认为是不可变的。
区块链的不变性确保了数据完整性的保护。只需重新计算哈希值即可验证链的完整性。区块数据与其对应的哈希值之间的任何差异都表明交易无效。
由于不变性,组织可以生成无可争议的分类账,这可以防止他们在审计过程中面临复杂的情况。
由于加密哈希,区块链是不可变的。对链进行的任何更改或变更都会扰乱整个网络。