一、区块链的优点:
1、去中心化;
由于使用的是分布式核算和存储,不存在中心化的硬件或管理机构,任意节点的权利和义务都是相互平等的,系统中的数据块由整个系统中具有维护功能的节点来共同维护。
2、开放性;
系统是开放的,除了交易各方的私有信息被加密外,区块链的数据对所有人公开,任何人都可以通过公开的接口查询区块链数据和开发相关应用,因此整个系统信息高度透明。
3、自治性;
区块链采用基于协商一致的规范和协议使得整个系统中的所有节点能够在去信任的环境自由安全的交换数据,使得对“人”的信任改成了对机器的信任,任何人为的干预不起作用。
4、信息不可篡改;
一旦信息经过验证并添加至区块链,就会永久的存储起来,除非能够同时控制住系统中超过51%的节点,否则单个节点上对数据库的修改是无效的,因此区块链的数据稳定性和可靠性极高。
5、匿名性;
由于节点之间的交换遵循固定的算法,其数据交互是无需信任的,因为区块链中的程序规则会自行判断活动是否有效,所以交易对手无须通过公开身份的方式让对方自己产生信任,对信用的累积非常有帮助。
二、区块链的缺点:
1.不可篡改,不可撤销;
其实这点总体来说既是优点也是缺点,因为在区块链里没有后悔药,你对区块链的数据变动几乎无能为力,主要体现在:如果转账地址填错,会直接造成永久损失且无法撤销;如果丢失密钥也一样会造成永久损失无法挽回。而现实中如果你银行卡丢了或者密码忘记了,还能到银行营业点处理,你的资产依旧还在。
2.交易账本必须公开;
区块链是分布式,在公有链上,等于每个人手上都有一份完整账本,并且由于区块链计算余额、验证交易有效性等等都需要追溯每一笔账,因此交易数据都是公开透明的,如果我知道某个人的账户,我就能知道他的所有财富和每一笔交易,没有隐私可言。
3.当数据越大伴随的性能问题;
就像前面说的,每个人都有一份完整账本,并且有时需要追溯每一笔记录,因此随着时间推进,交易数据超大的时候,就会有性能问题,如第一次使用需要下载历史上所有交易记录才能正常工作,每次交易为了验证你确实拥有足够的钱而需要追溯历史每一笔交易来计算余额。虽然可以通过一些技术手段(如索引)来缓解性能问题,但问题还是明显存在的。
4.区块链的延迟性;
区块链的交易是存在延迟性的,拿比特币举例,当前产生的交易的有效性受网络传输影响,因为要被网络上大多数节点得知这笔交易,还要等到下一个记账周期(比特币控制在10分钟左右),也就是要被大多数节点认可这笔交易。还受一个小概率事件影响,就是当网络上同时有2个或以上节点竞争到记账权力,那么在网络中就会产生2个或以上的区块链分支,这时候到底那个分支记录的数据是有效的,则要再等下一个记账周期,最终由最长的区块链分支来决定。因此区块链的交易数据是有延迟性的。