其实,区块链并不是一个新型的技术,更多的应该是传统技术上的一个融合,再通过一定的规则和机制去实现了区块链独特性质。
我们前面主要普及一些关于区块链的基本概念以及市场概况,今天来讲讲区块链的技术原理,希望能让你对区块链有一个更深的认识和理解。
区块链的技术本质
区块链技术有4个最为本质的技术,分别是:
1、分布式储存
区块链以链式结构储存区块,并且区块数据分布式存储在网络上的每一个节点上,每一个全节点都有数据的完整备份。
2、点对点传输(p2p)
所有节点通过p2p网络自动发现其他节点,并建立连接。用户发送的交易、矿工新产生的块都是通过p2p网络广播至所有节点。
3、共识机制
同一高度只能产生一个块,由谁产生新块需要节点间通过共识机制进行协商,确保某一高度的块最终是由
某一个特定的共识节点唯一产生。
4、加密算法
区块链中的交易转账都是要添加数字签名来证明对账户的所有权。账户所有者实际上是账户对应私钥的持有者,因为私钥可以创造出合法的交易签名。
技术特征
1、开放、共识
因为区块链本身是一个分布式系统,节点可以随意加入或离开,并且可以同步完整的数据备份;节点间基于预定的共识机制协同维护数据副本,任意少数节点失效,其余的节点都能正常工作。
2、去中心、去信任
区块链网络由众多节点通过p2p自主发现、链接,因此不存在中心化的设备和管理机构;链上的数据有效性都是通过密码学进行验证,无需同中心化机构进行确认。
3、交易透明、双方匿名
区块链的运行规则是公开透明的,所有的信息也是公开的,每一笔交易都对所有节点可见。
由于节点间通过共识机制和加密学机制进行验证,验证交易只需要知道公钥或签名信息,无需知道对应实体用户的真实身份。比如,a账户转账到b账户10元,我们只能看到一串数字,就是账户的地址,但是账户地址对应到谁(具体的某个人)是不知道的。
4、不可篡改,可追溯
链式存储结构 数字签名,确保数据无法被轻易篡改和伪造;共识机制确保大多数节点都能够正确出块,任意少数节点都无法破坏整个规则;区块链中的块都是链式单项追加,可以追溯到所有的历史数据。
链式的存储有一个特点,就是“牵一发而动全身”。因为一旦修改了链上的某一个块,后面所有块的信息就不能对应,就得修改到链上所有块的信息,否则,修改的数据信息将不会通过区块链规则、机制的验证,那么修改的块也将作废。如此,保证了数据信息的不可篡改性。
hash算法
1、单项不可逆
只能单项从数据内容本身快速计算出对应的hash值,反之无法从hash值推算出数据内容本身。
2、唯一性
不同的数据具有不同的hash值。很难找到两个hash值一致,但数据本身不一致的数据。
3、不可预测性
数据内容对应的hash值完全随机,轻微的内容变化都会导致hash值的完全不一致。
这里简单了解一下hash,下期内容将详细讲解hash算法。