区块链的概况
区块链的概况从数字货币说起,货币是人类文明发展过程中的一大文明,最重要的职能包括价值尺度、流通手段、贮藏手段。历史上,货币的形态经历了多个阶段的演化,包括实物货币、金属货币、代用货币、信用货币、电子货币和数字货币。货币的自身的价值依托也从实物价值、发行方信用价值,到今天的对信息系统的信任价值。2014年开始,比特币背后的区块链技术受到大家的关注,并正式引发了分布式记账本技术的革新浪潮。目前,区块链技术已经脱离比特币,在包括金融、贸易、征信、物联网、共享经济等诸多领域崭露头角。区块链从技术特点上看具有:分布式容错性、不可篡改性和隐私保护性,随之带来的业务特性包括:可信任性、降低成本和增强安全。
分布式一致性
随着摩尔定律碰到瓶颈,越来越多的系统要依靠分布式集群架构来实现海量的数据处理和计算能力。中央式架构改成分布式架构,碰到的第一个问题就是一致性的达成。分布式的一致性算法应该满足:(1)可终止性,一致性的结果在有限时间内能完成;(2)一致性,不同节点最终完成决策的结果应该相同,(3)合法性,决策的结果必须是其他进程提出的方案。
拜占庭将军问题是Lesile Lamport1982年提出来用来解释一致性问题的一个虚构模型。比特币的区块链网络设计时提出了创新的PoW算法思路。一个是限制一段时间内整个网络中出现提案的个数,另一个是放宽对最终一致性确认的需求。
密码学相关知识
hash算法是信息科技领域非常基础也非常重要的技术。它能将任意长度的二进制值映射为较短的固定长度的二进制值,并且不同的明文很难映射为相同的hash值。一个优秀的hash算法,将能实现:(1)正向快速:给定明文和hash算法,在有限时间和有限资源内能计算出hash值。(2)逆向困难:给定hash值,在有限时间内很难逆推出明文。(3)输入敏感:原始输入信息修改一点信息,产生的hash值看起来应该都有很大不同。(4)冲突避免:很难找到两段内容不同的明文,使得它们的hash值一致。
比特币项目
比特币网络是一个分布式的点对点网络,网络中的矿工通过挖矿来完成对交易记录的记账过程,维护网络的正常运行。比特币通过区块链网络提供一个公共可见的记账本,用来记录发生过的交易的历史信息。每次发生交易,用户需要将新交易写到比特币区块链网络中,等网络确认后即可认为交易完成。每个交易包括一些输入和一些输出,未经使用的交易的输出可以被新的交易引用作为合法的输入。
传统的共识问题是考虑在一个相对封闭的体系中,存在好节点、坏节点,然后如何达成一致。对比特币网络来说,它是开放的,网络质量也是完全无法保证的,导致问题更加复杂,难以依靠传统的一致性算法来实现。
Hyperledger超级账本项目
Hyperledger项目是开源的面向开放、标准区块链技术的首个重要探索,在Linux基金会的支持下,吸引来众多科技和金融巨头的参与。
网友评论