AlicA'sPrivateBo区块链技术是如何保证数据不可篡改的区块链网络中应用了各种技术来保障交易在传输、存储等各个环节的可靠性(可信任,不可变更等),本篇文章将会从不同方面去介绍相关技术,主要包括非对称加密技术、数字签名技术、区块链的存储结构设计以及工作量证明等
1、以签名验证交易的有效性如何保证交易在传输过程中不能被修改呢
对密码学有过了解的可能都知道数字签名的技术,这是一项非常成熟的技术,其基础是非对称加密技术
非对称加密技术指的是加密和解密过程使用不同密钥的加密技术,每个用户有公钥和私钥一组对应的密钥,使用公钥加密后的数据需要使用相对应的私钥进行解密,反过来使用私钥加密后的数据需要通过公钥进行解密
一般每个人的公钥是公开的,而私钥是保密的,具体应用的过程可以参考下图
数字签名技术是对非对称加密技术和数字摘要技术的综合应用,其解决的问题就是当 Alice 发送了一份数据之后,如何认定该数据是 Alice 发出的而且中途没有被人篡改过
其基本原理可以理解为先使用数字摘要技术(Hash 等)将数据缩短到某个固定长度,然后使用发送者(假设为 Alice)的私钥对数据摘要进行加密,这样就得到了一份数字签名,任何人都可以通过Alice 的公钥来解密数据以验证数据是否为 Alice 发出(如果解密DecryptFunctiotoBohA'sPublicEncryptedD 建taDataData失败则不是),同时可以验证解密后的数字摘要和收到的数据的数字摘要是否匹配来验证数据是否被篡改过
也就是通过数字签名技术,可以保证数据在传输过程中无法被篡改,实际区块链网络中会在记录数据时通过数字签名验证交易的有效性,只会将验证通过的交易打包到区块中,并且每个客户端在接收到一个新的区块时也会做这个验证
2 以公开记录对抗欺骗很多时候我们之所以无法验证事情的真实性,仅仅