编辑: LinDa_学友 | 2019-07-02 |
不过, 区块链在发展的过程中, 也暴露出了不少问题, 受到业界质疑, 如它的技术尚未成熟,不能支持规模化应用,它的安全性、性能都亟 待提升等.因而,厘清区块链目前的技术与应用状况,对我们理性地 认识区块链技术,将区块链的应用价值最大化有着重要的意义. 区块链关键技术 从技术角度看,区块链是一项集成了计算机科学、数学、经济学 等多学科领域研究成果的组合式创新技术, 是有效地实现安全、 可信、 容错的去中心化分布式的记账系统. ? 密码学 密码学是区块链的基石.密码学属于数学和计算机科学的分支, 主要研究信息保密、信息完整性验证、分布式计算中的信息安全问题 等.区块链中使用了哈希算法、加解密算法、数字证书与签名、零知 识证明等现代密码学的多项技术成果. 区块链采用哈希算法和非对称加密技术来保证区块链账本的完 整性和网络传输安全. 哈希算法被用于生成区块链中各个单元 (区块) 的头信息, 并通过在区块头中包含上一区块头信息的方式来实现区块 之间的连接.同时,使用默克尔树(一种基于哈希算法的树结构)对 区块中的具体事务或状态进行结构化组织并将概要信息(根哈希)存 入区块头,使得人们对数据或状态的篡改变得极其困难.
2 随着区块链技术的进步和应用的日益广泛,比特币、以太坊
1 等 早期公有链项目完全公开化的账本难以满足人们对应用场景中对隐 私的更高需求,所以,无须泄露数据本身即可证明某些数据真实的零 知识证明技术被使用, 在新兴的区块链项目中扮演着日益重要的角色. 零知识证明指证明者(被验证者)能够在不向验证者提供任何有用的 信息的情况下,使验证者相信某个论断是正确的协议.Zcash 是首个 使用零知识证明概念的区块链加密货币项目, 而目前最大的智能合约 平台以太坊也在
2017 年底的 拜占庭 分叉过程中引入了使用同态 加密的零知识证明技术zkSNARKs(zero knowledge Succinct Non-interactive ARguments of Knowledge). ? 分布式存储 区块链账本采用的分布式存储记账方式, 是一种从分布在不同物 理地址或不同组织内的多个网络节点构成的网络中进行数据分享与 同步的去中心化数据存储技术. 不同于传统的分布式存储, 区块链网络中各参与节点拥有完整的 数据存储,并且各节点是独立、对等的,它依靠共识机制保证存储的 最终一致性, 也通过这些方式来保证分布式存储数据的可信度与安全 性, 即只有能够影响分布式网络中大多数节点时才能实现对已有数据 的篡改.相应的,参与系统的节点增多,会提升数据的可信度与安全 性. 有别于传统数据库,区块链只提供 增加 与 查询 操作,通过 增加 交易来实现 修改 和 删除 操作,比如产生区块硬分 叉来实现交易的回滚,避免数据的恶意篡改.但这也有缺点,会带来 区块链存储无限增大的问题. ? 共识机制 共识机制用于解决分布式系统的一致性问题, 其核心为在某个协