收藏 分享(赏)

区块宝 - 区块链产品和行业解决方案.docx

上传人:oceanpvg 文档编号:2301175 上传时间:2018-09-10 格式:DOCX 页数:42 大小:278.22KB
下载 相关 举报
区块宝 - 区块链产品和行业解决方案.docx_第1页
第1页 / 共42页
区块宝 - 区块链产品和行业解决方案.docx_第2页
第2页 / 共42页
区块宝 - 区块链产品和行业解决方案.docx_第3页
第3页 / 共42页
区块宝 - 区块链产品和行业解决方案.docx_第4页
第4页 / 共42页
区块宝 - 区块链产品和行业解决方案.docx_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、1区 块 宝 简 介区块宝创办于 2015 年 , 以 区 块 链 技 术 服 务 为 核 心 , 为 全 球 的 用 户 提 供 区 块 链 的 产 品 和 行 业 解 决 方案,满足不同用户的场景化服务需求。 区块宝公有云是专业可信赖的区块链基础云平台,定位于为行业用户提供区块链即服务(BaaS) 平台,在此平台上构建可信赖、可扩展的区块链应用基础平台产品,集成相关领域的基础产品功能,帮助企业快速搭建区块链应用场景; 区 块宝 企业云 是区块宝 为企业用户提供的个性化 、 差异化、 定制化的 区块链解决方案, 覆盖资产、股 权 、 版 权 、 保 险 、 医 疗 、 征 信 等 多 个 领

2、 域 , 基 于 用 户 的 不 同 需 求 及 对 安 全 和 数 据 隔 离 的 考 虑 , 提 供 定制化的区块链行业解决方案; 区 块宝 研究院 致力于区 块链与数字资产行业研究, 建立了庞大的区块链商业信息数据库, 为政府、企业、投资机构提供决策依据; 区 块 宝 范 范 而 谈 是 记 录 数 字 世 界 的 新 媒 体 平 台 , 关 注 数 字 资 产 和 区 块 链 企 业 家 、 创 业 者 、 投资 人 、 监 管 者 , 以 视 频 、 直 播 、 音 频 等 多 层 次 产 品 形 态 , 打 造 前 沿 、 专 业 、 有 趣 的 数 字 资 产 和 区 块 链 垂

3、直领域新媒体平台。 2前 言在之前的报告中,区块宝研究院曾将 2016 年 列 为 区 块 链 元 年 , 2017 年为区块链“合规元年”。 实际上,2017 年 不 仅 是 区 块 链 “合 规 元 年 ”, 也 是 区 块 链 “应 用 元 年 ”。2017 年 , 我 们 见 证 了 很 多 , 区 块 链 行 业 经 历 了 很 多 。 我 们 见 证 了 美 国 内 华 达 州 立 法 为 区 块 链 免 除赋税; 见证了中国人民银行成立数字货币研究院; 见证了全球多地 为引领金融科技的发展而设立监 管沙盒; 见证了多国政府为规范区块链行业稳健发展而遏制投机行为; 见证了以太坊如期

4、成功步入大 都 会 ( Metropolis) 阶 段 ; 见 证 了 区 块 链 技 术 在 金 融 、 农 业 、 法 律 、 艺 术 、 能 源 、 医 疗 、 物 流 、 电 商 等领域的相继落地。在区块链的发展史上, 2017 年注定是要被载入 史册的一年, 是永远不 会被忘记的一年。 因为 2017 年, 是区块链行业产业生态链初步成型的一年, 是区块链行业产业价值获得全球广泛认可的一年 , 是 区块链技术在商用中上下求索的一年,是区块链从概念走向商业应用的关键一年。自区块链技术诞生以来, 伴随着 国内外研究机构对区块链技术的研究和应用, 区块链的应用前景 受到各行各业的高度重视,

5、区块链被认为是继大型机、个人电脑、互联网、移动/社交网络之后计算 范式的第 5 次 颠 覆 式 创 新 , 是 人 类 信 用 进 化 史 上 继 血 亲 信 用 、 贵 金 属 信 用 、 央 行 纸 币 信 用 之 后 的 第 4 个里程碑,是从信息互联网时代过渡到价值互联网时代的引擎。经过近几年的商用实践, 业界对区块链的认识更加透彻的同时, 对区块链的商用价值、 定位也更 加明确。 随着区块链 技术的进一步成熟与更大范围、 更多行业的普及, 未来的区块链应用将更大程度 的脱虚向实,更多的行业、企业将使用区块链技术来降低成本、提升协作效率。3目 录第一章 区块链技术概述 .11.1 区块

6、结构基础 .11.1.1 区块链概念 11.1.2 区块结构相关概念 11.1.3 区块结构的链接 51.2 区块链基础架构 .51.2.1 基础架构解析 51.2.2 基础架构特点 71.3 区块链核心技术 .81.3.1 哈希函数 81.3.2 非对称加密算法 101.3.3 共识机制 12第二章 区块链行业概述 .152.1 区块链产业生态链 .152.2 区块链产业价值链 .182.3 区块链数字资产统计 .192.3.1 数字资产总市值 192.3.2 比特币市值分析 20第三章 2017 年回顾 233.1 政策保驾护航:各国政府纷纷出台专项政策 .233.2 监管引领规范:多个地

7、方政府引入监管沙盒 .253.3 行业上下求索:前路漫漫,道阻且长 .26第四章 2018 年前瞻 324.1 企业应用是主战场,联盟链/私有链将成为主流 324.2 跨链需求增多,互联互通的重要性凸显 .324.3 整合趋势即将呈现,龙头地位越发明显 .33免责声明 35参考文献 364图 表 目录图表 1: P2P 网络 .2图表 2:区块结构 3图表 3:区块中的 Merkle 树 .4图表 4: 区 块 链 基 础 架 构 模 型 .6图表 5:非对称加密解密过程 .10图表 6:生成比特币地址流程 .11图表 7:非对称加密算法种类 .11图表 8 : 共 识 机 制 汇 总 .13

8、图表 9:区块链行业价值传导图 .18图表 10:币值 TOP10 及占比 20图表 11: 比 特 币 财 富 分 布 情 况 .21图表 12: 各 国 区 块 链 政 策 摘 要 .23图表 13: 全 球 监 管 沙 盒 的 用 例 .25图表 14: 2016 年 Gartner 曲线之区块链 .27图表 15: 2017 年 Gartner 曲线之区块链 .27图表 16: 以 太 坊 的 规 划 路 线 .28图表 17: 比 特 币 分 叉 币 统 计 表 .30图表 18: 区 块 链 历 年 历 轮 投 资 占 比 .331第 一 章 区 块 链 技 术 概 述1.1 区

9、块 结 构 基 础1.1.1 区块链概念区 块 链 本 质 上 是 一 个 对 等 网 络 ( peer-to-peer) 的 分 布 式 账 本 数 据 库 。 区 块 链 本 身 其 实 是 一 串 链 接的数据区块, 其链接指针是采用密码学哈希算法对区块头进行处理所产生的区块头哈希值。 每一个 数据块中记录了一组采用哈希算法组成的树状交易状态信息, 这样保证了每个区块内的交易数据不可 篡改,区块链里链接的区块也不可篡改。狭义上讲, 区块链技术是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据 结构,并以密码学方式保证的不可篡改、不可伪造的分布式账本。广义上讲, 区块链技术是

10、利用块链式数据结构来验证与存储数据 、 利用分布式节点共识算法来生 成和更新数据、 利用密码学的方式保证数据传输和访问的安全 、 利用由自动化脚本代码组成的智能合 约来编程和操作数据的一种全新的分布式基础架构与计算范式。1.1.2 区块结构相关概念区块链技术并不是单一信息技术, 而是依托于现有技术, 加以独创性的组合与创新, 从而实现以 前 未 实 现 的 功 能 。 其 关 键 技 术 包 括 : P2P 动 态 组 网 、 哈 希 函 数 、 非 对 称 加 密 算 法 、 共 识 机 制 、 智 能 合 约等。 只是如果没有中本聪那一篇开创性的关于比特币的白皮书, 这些强大的技术, 都还

11、只是埋藏在 学术论文堆里。因为这些技术单独使用, 并不能解决商业问题, 但这一系列技术的结合, 出人意料地形成了一个 系统的可实践的解决方案。 但是, 在探讨区块链行业的产业发展动态之前, 在探讨区块链的整体架构 之前,仍然有必要先探讨区块链的区块结构细节及一些细节技术。P2P 网 络P2P 网 络 ( peer-to-peer network, 对 等 网 络 ) 是 一 种 在 对 等 者 ( peer) 之 间 分 配 任 务 和 工 作 负 载 的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式。区块链系统是建立在 IP 通信协议和分布式网络的基础上的,它不依靠传统的电路

12、交换,而是建 立于网络通信之上, 完全通过互联网去交换信息。 网络中所有的节点具有同等的地位, 不存在任何特 殊化的中心节点和层级结构,每个节点均会承担网络路由、验证数据区块等功能。2图 表 1: P2P 网络网络的节点根据存储数据量的不同,可以分为全节点和轻量级节点: 全节点全节点存储了从创始区块以来的所有区块链数据, 全节点的优点是进行数据校验时不需要依靠别的节点,仅依靠自身就可以完成校验更新等操作,缺点是硬件成本较高。 轻量级节点轻量级节点只需要存储部分数据信息, 当需要别的数据时可以通过简易支付验证方 式 ( Simplified Payment Verification, SPV)

13、向 邻 近 节 点 请 求 所 需 数 据 来 完 成 验 证 更 新 。 在 比 特 币 出 现 之 前 , P2P 网 络 计 算 技 术 已 被 广 泛 用 于 开 发 各 种 应 用 , 如 即 时 通 讯 软 件 、 文 件 共 享和 下 载 软 件 、 网 络 视 频 播 放 软 件 、 计 算 资 源 共 享 软 件 等 。 P2P 网 络 技 术 是 区 块 链 技 术 架 构 的 核 心 技 术 之一。分布式数据库 比特币系统中的区块就像一个记账本一样 , 记录了比特币系统中发生的这段时间内的所有交易信息。每一个比特币用户的比特币收支情况都被永久地嵌入数据区块中以供别人查询。

14、 这些数据区块中的交易数据存放在每一个比特币用户的客户端节点中, 所有的这些节点组成了比特币及其坚韧的分布式数据库系统。任何一个节点的数据被破坏都不会影响整个数据库的正常运转, 因为其他的健康节点中都保存了完整的数据库。数 据区 块比 特 币 的 交 易 记 录 会 保 存 在 数 据 区 块 之 中 , 每 个 数 据 区 块 一 般 包 含 区 块 头 ( Header) 和 区 块 体( Body) 两 部 分 。 如 图 1 所示:3图 表 2:区块结构区 块 头 区 块 头 封 装 了 当 前 的 版 本 号 ( Version) 、 前 一 区 块 地 址 ( Pre-block)

15、 、 时 间 戳( Timestamp) 、 随 机 数 ( Nonce) 、 当 前 区 块 的 目 标 哈 希 值 ( Bits) 、 Merkle 树 的 根 值 ( Merkle-root) 等信息;区块头的大小为 80 字节,由 4 字 节 的 版 本 号 、 32 字 节 的 上 一 个 区 块 的 哈 希 值 、 32 字节的 Merkle 根 哈 希 值 、 4 字 节 的 时 间 戳 ( 当 前 时 间 ) 、 4 字节的当前难度值、4 字节的随机数组成。区块体 区块体中主要包含交易计数和交易详情。 交易详情就是比特币系统中的记账本, 每一 笔交易都会被永久地计入数据区块中,

16、而且任何人都可以查询。区块体中的 Merkle 树 会 对 每 一 笔 交 易进行数字签名, 以确保每一笔交易都不可伪造且没有重复交易。 所有的交易将通过 Merkle 树的 Hash 过程产生一个唯一 Merkle 根值记入区块头。Merkle 树Merkle 树 是 数 据 结 构 中 的 一 种 形 式 , 可 以 是 二 叉 树 , 也 可 以 是 三 叉 树 , 它 具 有 树 结 构 的 所 有 特 点。比特币区块链系统中采用的是 Merkle 二 叉 树 , 它 的 作 用 主 要 是 快 速 归 纳 和 校 验 区 块 数 据 的 完 整 性。它会将区块链中的数据分组进行哈希运

17、算 , 向上不断递归运算产生新的哈希节点 , 最终只剩下一 个 Merkle 根 存 入 区 块 头 中 , 每 个 哈 希 节 点 总 是 包 含 两 个 相 邻 的 数 据 块 或 其 哈 希 值 。4图 表 3:区块中的 Merkle 树在比特币系统中使用 Merkle 树有诸多优点: 首先是极大地提高了区块链的运行效率和可扩展性 , 使得区块头只需包含根哈希值而不必封装所有底层数据,这使得哈希运算可以高效地运行在智能手机甚至物联网设备上;其次是 Merkle 树可支 持 “简化支付验证协议” (S PV) , 即在不运 行完整区块链网络节点的情况 下 , 也 能 够 对 交 易 数 据

18、 进 行 检 验 。 所 以 , 在 区 块 链 中 使 用 Merkle 树 这 种 数 据 结 构 是 具 有 重 要 意 义 的 。时间戳时间戳是指从格林威治时间 1970 年 01 月 01 日 00 时 00 分 00 秒起 至现在的总秒数, 通常是一个 字符序列, 唯一地标识某一刻的时间。 在比特币系统中, 获得记账权的节点在链接区块时需要在区块 头中加盖时间戳, 用于记录当前区块数据的写入时间。 每一个随后区块中的时间戳都会对前一个时间 戳进行增强,形成一个时间递增的链条。时间戳本身并没有多复杂 , 但在区块链技术中应用时间戳却是一个重大创新, 时间戳为未来基于 区块链的互联网和

19、大数据增加了一个时间维度,使得数据更容易追溯,重现历史也成为可能。同时, 时 间 戳 可 以 作 为 存 在 性 证 明 ( Proof of Existence) 的 重 要 参 数 , 它 能 够 证 实 特 定 数 据 必 然 在 某 特 定 时 刻是的确存在的,这保证了区块链数据库是不可篡改和不可伪造的,这也为区块链技术应用于公证、知识产权注册等时间敏感领域提供了可能。UTXO 交易模式UTXO( Unspent Transaction Outputs) 是 未 花 费 的 交 易 输 出 , 它 是 比 特 币 交 易 过 程 中 的 基 本 单 位 。5除 创 世 区 块 以 外

20、, 所 有 区 块 中 的 交 易 ( Tx) 会 存 在 若 干 个 输 入 ( Tx_in,也 称 资 金 来 源 ) 和 若 干 个 输 出(T x_out,也称资金去向 ) , 创世区块和后来挖矿产生的区块中给矿工奖励的交易没有输入 , 除此之外, 在比特币系统中, 某笔交易的输入必须是另一笔交易未被使用的输出, 同时这笔输入也需要上一笔输 出地址所对应的私钥进行签名。当前整个区块链网络中的 UTXO 会被储存在每个节点上,只有满足了来源于 UTXO 和数字签名条 件的交易才是合法的。 所以, 区块链系统中的新交易, 不必追溯整个交易历史, 就可以确认当前交易 是否合法。这些技术并不是

21、新技术, 而是已有的技术, 正 是这些已有的技术, 形成一个完整的区块链系统后, 使得区块链在无中心的网络上形成了运转不息的引擎, 为区块链的交易、 验证、 链接等功能提供了源 源不断的动力。同时,也带来了提高社会效率、促进和谐发展的一种新的可能。1.1.3 区块结构的链接区块链虽然是一个新兴的概念 , 但它依赖的技术都是很成熟的, 正是这些已经非常成熟的技术组 成了严谨的区块链。区块链技术是一项新兴技术, 不是指其组成技术新, 而是其组合呈现的方式新 ; 区块链技术的强 大, 不在于其单项基础技术的作用强大, 而在于其配套形成的账本系统功能强大。 比如: 时间戳本身 并没有多复杂, 但在区块

22、链技术中应用时间戳, 就相当于为未来基于区块链的互联网和大数据增加了 一个时间维度, 使得数据更容易追溯, 重现历史也成为可能; 分布式账本、 共识算法都是已经存在很 久的技术, 但是分布式账本和共识算法的结合, 解决了集体维护分布式账本的历史难题; 具有公钥和 私钥体系的数字签名, 也是一项很成熟的技术, 将数字签名引入分布式账本中应用, 则实现了去中心 化 身 份 管 理 , 保 障 了 区 块 链 的 隐 私 性 和 准 匿 名 性 ; 时 间 戳 、 UTXO 和数字签名的组合使用,完美地避免了双重支付(双花)问题。可以这么说,区块链更像是一门交叉学科,区块链技术是巧妙地结合了 P2P

23、 网 络 、 UTXO、 数 字 签名、哈希函数、非对称加密算法、共识算法等等技术,构建成的一个新技术。1.2 区 块 链 基 础 架 构1.2.1 基础架构解析 架构设计一般要考虑灵活性和稳定性的两个方面。一个有长久生命力的系统都有一个设计高明的架构 , 其精髓在于架构能支持系统功能的变化、 发 展 、 演 化 , 允 许 系 统 功 能 不 断 变 化 , 也 就 是 架 构 必 须 提 供 的 灵 活 性 ; 而 系 统 在 易 用 、 安 全 、 稳 定 和 各6种功能等方面则应该具备稳定性。 关于区块链的基础架构, 已有不少学者和专家进行过阐述 , 经区块宝研究院甄别, 其中比较有代

24、表性的是发表于 2016 年自动化学报的文章区块链技术发展现状与展望。 该文首次将区块链的框架划分为六层架构, 认为区块链系统由数据层、 网络层、 共识层、 激 励层、合约层和应用层组成。图 表 4:区块链基础架构模型数据层:封装了底层数据区块以及相关的数据加密和时间戳等技术; 网 络 层 : 包 括 分 布 式 组 网 机 制 、 数 据 传 播 机 制 和 数 据 验 证 机 制 等 ; 共 识 层 : 主 要 封 装 网 络 节 点 的 各 类 共 识 算 法 ; 激励层:将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等; 合 约 层 : 主 要 封 装 各 类

25、 脚 本 、 算 法 和 智 能 合 约 , 是 区 块 链 可 编 程 特 性 的 基 础 ; 应 用 层 : 封 装 了 区 块 链 的 各 种 应 用 场 景 和 案 例 。7区块链基础架构的设计, 经过区块链行业多年实践的考验, 已经充分证明了其可靠性。 对区块链 基础架构的这套 解析是比较合理的, 既能体现区块链架构中底层基础的稳定性, 也能兼顾因应用场景 不同而有不同架构的灵活性。1.2.2 基础架构特点在这一套基础架构下, 构建了区块链技术的去中心化、 时序数据、 集体维护、 可编程、 安全可信、 准匿名性等特点。去 中心 化区 块 链 数 据 的 记 账 、 验 证 、 存 储

26、 、 传 输 等 过 程 均 基 于 分 布 式 系 统 结 构 , 采 用 纯 数 学 方 法 , 而 不 是 中心机构来建立分布式节点之间的信任关系,区块链网络中的所有参与节点都具有同等的权利和义 务,从而形成去中心化的可信任分布式系统。时 序数 据区块链采用带有时间戳的链式区块结构存储数据, 从而为数据增加了时间维度, 具有极强的可追 溯性。集 体维 护区块链系统中的数据区块由整个系统中所有具有记账功能的节点来共同维护, 任一节点的损坏或 失去都不会影响整个系统的运作。并通过共识算法来选择特定的节点将新区块添加到区块链中。可编程区块链技术可提供灵活的脚本代码系统, 支持用户创建高级智能合

27、约、 货币或其他去中心化应用。 最典型的是以太坊 (E thereum) , 以太坊平台提供了图灵完备的脚本语言, 以供用户来构建任何可以 精确定义的智能合约或交易类型。安 全可 信区块链技术采用非对称加密算法对交易进行签名, 使得交易不能被伪造; 同时利用哈希算法保证 交易数据不能被轻易篡改; 最后借助分布式系统各节点的共识算法形成强大的 算力来抵御破坏者的攻 击, 保证区块链中的区块以及区块内的交易数据不可篡改和不可伪造, 因此区块链具有极高的安全性。准 匿名 性由于节点之间的交换遵循固定的算法, 其数据交互是无需信任的。 用户只需要公开地址, 不需要 公开真实身份, 而且同一个用户可以不

28、断变换地址 。 因此, 在区块链上的交易不和真实身份挂钩, 只 是和用户的地址挂钩,具有交易的准匿名性。81.3 区 块 链 核 心 技 术区块链除了构建了强大的区块链基础架构以保证区块链系统的灵活性和稳定性之外 , 为保证存储 于区块链中的信息的安全与完整,还使用了一些强大的密码学核心技术。区块及区块链的定义和构造中使用了包含哈希算法 (哈希函数) 、 非 对称加密 算法 (公钥密码算 法)和共识算法(共识机制)在内的多种核心技术。区块链技术采用非对称加密算法对交易进行签名 , 使得交易不能被伪造 ; 利用哈希算法保证交易 数据不能被轻易篡改;借助分布式系统各节点的共识算法形成强大的算力来抵

29、御破坏者的攻击。1.3.1 哈希函数哈希函数,也称为哈希算法。哈希函数是一种密码学算法。在区块链中的作用是:为信息加密, 用于为原始信息添加“密码语言”。哈希函数是一类数学函数, 可以在有限合理的时间内, 将任意长度的消息压缩为固定长度的二进 制串, 其输出值称为哈希值 , 也称为散列值。 哈希函数在现代密码学中扮演着重要的角色, 常用于实 现数据完整性和实体认证,同时,也构成多种密码体制和协议的安全保障。在比特币系统中使用了两个密码学哈希函数, 一个是 SHA256, 另一 个是 RIPEMD160。 SHA256 算 法的一个主要用途是完成 PoW( 工 作 量 证 明 ) 计 算 , R

30、IPEMD160 则 主 要 用 于 生 成 比 特 币 地 址 。哈希函数的三个性质: 碰 撞阻 力 碰撞是与哈希函数相关的重要概念 , 体现着哈希函数的安全性。 所谓碰撞是指两个不同的消息在同一个哈希函数作用下,具有相同的哈希值。哈希函数的安全性是指在现有的计算资源(包括时间、 空间、资金等)下,找到一个碰撞是不可行的。举 例 : 如 果 无 法 找 到 两 个 值 , x 和 y, x y, 而 H( x) H( y) , 则 称 哈 希 函 数 H 具有碰撞阻力。 哈希函数的碰撞阻力是指寻找两个能够产生碰撞的消息在计算上是不可行的。 值得注意的是: 找到两个碰撞的消息在计算上不可行,

31、并不意味着不存在两个碰撞的消息。 由于哈希函数把大空间上的 消息压缩到小空间上,碰撞肯定存在。通过简单的计数论证,是可以证明碰撞的确存在的。哈希函数的输入空间包含所有长度的任意字符串,但输出空间则只包含特定固定长度的字符串。 因为输入空间比输出空间大 (输入空间是无限的, 而输出空间是有限的) , 一定会有输入字符串映射 到相同的输出字符串,也就是说,碰撞是存在的。打 个 比 方 : 输 入 100 个 值 , 经 哈 希 函 数 H 之 后 , 输 出 仅 80 个 值 。 因 为 输 出 的 数 量 小 于 输 入 的 数9量,我们可以确定,某个输出肯定对应多个输入。也就是说存在 xy,而

32、 H( x) H( y) , 存 在 碰 撞 ; 但 在 计 算 上 , 找 不 出 来 x 和 y 这两个值, 所以称哈希函数 H 具有碰撞阻力。哈希函数的碰撞阻力特性常被用来进行完整性验 证。 完整性是信息安全的 3 个基本要素之一, 是 指传输、 存储信息的过程中 , 信息不被未授权的篡改或篡改后能被及时发现。 如果原消息在传输过程 中被篡改, 那么运行哈希函数后得到的新哈希值就会和原来的哈希值不一样, 这样就很容易 发现消息 在传输过程中完整性受损。在区块链中, 某个区块的头部信息中会存储着前一个区块的信息的哈希值 , 如果能拿到前一个区 块的信息, 任何用户都可以比对计算出来的哈希值

33、和存储的哈希值, 来检测前一个区块信息的完整性。SHA256 是 一 个 主 要 被 比 特 币 世 界 采 用 , 并 且 效 果 还 很 不 错 的 哈 希 函 数 , 而 且 SHA256 还 获 得 了 安 全哈 希算法 的美名。 但是, 我们必须谨记, 在理论上来讲, 世界上是没有哈希函数具有坚不可摧的 碰 撞 阻 力 的 。 我 们 实 践 中 使 用 的 安 全 哈 希 算 法 ( SHA256) , 仅 仅 是 人 们 经 过 不 懈 努 力 之 后 , 暂 未 成功找到碰撞的函数。如 果 有 一 天 , 我 们 最 终 找 到 了 SHA256 哈 希 函 数 的 碰 撞 ,

34、 那 么 , 就 如 之 前 的 MD5 哈 希 函 数 一 样 , 在找到 MD5 哈 希 函 数 的 碰 撞 之 后 , 该 函 数 在 实 践 应 用 中 被 逐 渐 淘 汰 。 原像不可逆原像不可逆,通俗地说,是指知道输入值 x, 很 容 易 通 过 哈 希 函 数 H 计算出哈希值 H(x);但 是知道哈希值 H(x ),却不能通过哈希函数 H 计算出原来的输入值 x。为什么哈希函数会具有这个特性 ?因为 x 的取值来自一个非常广泛的集 合 (输入空间是无限的) 。 原 像 不 可 逆 的 应 用 是 承 诺 方 案 ( Commitment Scheme) , 承 诺 方 案 被

35、认 为 是 密 码 学 领 域 中 一 类 重要的密码学基本模型,承诺具有隐藏性和约束性。 承诺模型可以看做一个密封信件的数字等价体。如果 Tom 想承诺某个信息 m,则他可以把 m 放进一个密封的信封内, 无论什么时候他想公开这个信息, 则只需要打开信封。 这个过程要求数字信件能够隐藏信息,即承诺的隐藏性,同时 Tom 也不能改变 m;而通过承诺的打开,任何人都能验证他 所得到的 m 其 实 就 是 Tom 最初承诺的信息 m,即承诺的约束性。利用哈希函数的碰撞阻力和原像不可逆两个特性,承诺的隐藏性和约束性均能成立: 隐 藏 性 如 果 仅 仅 知 道 承 诺 函 数 的 输 出 , 就 如

36、 同 只 看 到 信 封 并 不 能 得 到 信 中 的 内 容 ; 约 束 性 这 就 确 保 了 Tom 一旦承诺信封内的内容,就不能再改变主意。 谜 题友 好通俗地说, 难题友好性指的是没有便捷的方法去产生一满足特殊要求的哈希值 。 也就是说, 如果 有人想通过锁定哈希函数来产生一些特殊的输出 y, 而 部 分 输 入 值 以 随 机 方 式 选 定 , 则 很 难 找 到 另 外10一个值,使得其哈希值正好等于 y。 哈希函数的难题友好特性,构成了基于工作量证明的共识算法的基础。例如,给定字符串“blockchain”, 并在这 个字符串后面连接一个整数值串 x, 对连接后的字符串进行

37、 SHA256 哈希运算, 要求得到的哈希结果(以十六进制的形式表示)以若干个 0 开头的。按照这个规则,由 x 1 出发, 递增 x 的值,我们需要经过 2688 次 哈 希 计 算 才 能 找 到 前 3 位均为 0 的哈希值,而要找到前 6 位均为0 的哈希值,则需进行 620969 次 哈 希 计 算 。 也 就 是 说 , 没 有 更 便 捷 的 方 法 来 产 生 一 个 满 足 要 求 的 哈 希结果。这样通过哈希运算得出的符合特定要求的哈希值,可以作为共识算法中的工作量证明。正是因为哈希函数具备这三个核心性质 , 使得哈希函数具备 “保证交易数据不能被轻易篡改” 的 功能。1.

38、3.2 非对称加密算法非 对 称 加 密 算 法 , 也 叫 公 钥 密 码 算 法 。 非 对 称 加 密 算 法 也 是 密 码 学 算 法 , 在 区 块 链 中 的 作 用 是 : 为交易加密,用于对交易发起、确认、签名、验证。公钥密码算法是现代密码学发展过程中的一个里程碑 。 这类密码学算法需要两个密钥: 公开密钥 和私有密钥。 因为加密和解密使用的是两个不同的密钥, 另外, 私钥可以推导公钥, 而公钥不能倒推 私钥,所以这种算法也叫做非对称加密算法。(1)非对称加密算法的特点加密和解密使用的是两个不同的密钥; 公钥是全网可见的, 私钥只有信息拥有者才知道; 私钥可 以 推 导 公

39、钥 , 公 钥 不 能 倒 推 私 钥 。(2)非对称加密算法的用途非对称加密算法主要有两个用途: 一是在发送信息 过程中使用公钥加密私钥解密, 二是在数字签 名过程中使用私钥签名(加密)公钥验证(解密)。发送信息过程:公钥加密:发送方 A 用接收方 B 的公钥对信息加密,并将该加密后的信息传输到区块链网络。 私钥解密: 接收方 B 用 其独有的私钥对信息解密 , 从而确保信息获得传递的同时还保证信息的真实性。图 表 5:非对称加密解密过程11数字签名过程:私钥签名: 信息发布者用私钥对交易进行签名。 用户发起交易时, 用私钥对交易信息签名 (加密) , 表 明 对 交 易 具 有 所 有 权

40、 , 并 对 真 实 性 负 责 。公钥验证签名: 矿工用公钥对信息发布者的签名进行 验证。 矿工收到信息后, 用公钥对签名进行 验 证 ( 解 密 ) , 若 验 证 通 过 , 则 说 明 : 第 一 , 该 信 息 是 由 特 定 的 私 钥 的 拥 有 者 “签 名 ”的 ; 第 二 , 该 信息在签名后没有被改变过。那么,该信息可予以记录到区块链。在比特币系统中,生成比特币地址的流程中也会用到公钥和私钥。(3)生成比特币地址流程:比特币系统随机产生一个随机数为私钥;私钥通过 Secp256k1 椭圆曲线算法生成公钥;公钥通过双哈希运算+Base58 处 理 生 成 比 特 币 地 址

41、 。图 表 6:生成比特币地址流程私钥生成公钥过程所使用的 Secp256K1 椭圆曲 线算法是一种单向加密函数, 公钥生成比特币地址 的过程中所使用的也是单向加密哈希函数。 基于这些数学函数的密码学, 使得生成数字密钥和不可伪 造的数字签名成为可能。(4)非对称加密算法的种类非对称加密算法主要有以下几种:图 表 7:非对称加密算法种类名称 简写 备注椭圆曲线加密算法 ECC 生成比特币密钥的过程中椭圆曲线数字签名算法 ECDSA 比特币的签名算法RSA 公钥加密算法 RSA 使用最广泛的公钥加密算法Elgamal 算法 Elgamal 基于公钥密码体制和椭圆曲线加密体系Diffie-Hell

42、man 算法 D-H只是生成可用做对称密钥的秘密数值,不是一般意义上的加密算法。制表:区块宝研究院非对称加密算法在区块链中的使用 , 具有重大意义。 区块链系统中, 所有权验证机制的基础是非12对称加密算法。 从信任的角度来看, 区块链实际上是用数学方法解决信任问题。 在区块链系统中, 所 有的规则事先都以算法程序的形式表述出来 , 人们完全不需要知道交易的对手是 “君子” 还是 “小人” , 更不需要求助于中心化的第三方机构来进行交易 的信用背书, 区块链通过严谨的数学算法就可以建立 互信。区块链技术的背后,实质上是算法在为人们创造信用,达成共识背书。1.3.3 共识机制共识机制 , 也称为

43、共识算法。 在区块链中, 共识机制更多的是体现为: 一种确保记账一致性的措 施、机制。利用区块链构造基于互联网的分布式 账本, 需要解决的首要问题是如何实现不同账本节点上的账 本数据的一致性和正确性。 这就需要借鉴已有的在分布式系统中实现状态共识的算法, 确定网络中选 择记账节点的机制,以及如何保障账本数据在全网中形成正确、一致的共识。区块链中常用的共识机制主要有以下几类:PoW :工作量证明机制简 单 地 说 , PoW( Proof of Work) 就 是 一 份 确 认 工 作 端 做 过 一 定 量 工 作 的 证 明 。 PoW 机制的主要 特征是计算的不对称性。 工作端需要做一定

44、难度的工作得出一个结果, 验证方却很容易通过结果来检 查工作端是不是做了相应的工作。PoW 机 制 的 用 例 : 比 特 币 。PoS: 权 益 证 明 机 制PoS( Proof of Stake) 机 制 在 创 始 区 块 内 写 明 了 股 权 分 配 比 例 , 之 后 通 过 转 让 、 交 易 的 方 式 , 逐 渐 分 散 到 用 户 手 里 , 并 通 过 “利 息 ”的 方 式 新 增 货 币 , 实 现 对 节 点 的 奖 励 。 PoS 机制使用一个确定性算法以随机选择一个持币者来产生下一个区块,该算法中账户余额决定了节点被选中的概率。简 单 地 说 , 就 是 一

45、个 根 据 用 户 持 有 代 币 的 数 量 和 时 间 ( 币 龄 ) , 发 放 利 息 的 一 个 制 度 。 类 似 于 股 票或者银行存款, 如果用户想要获得更多的代币, 那么就要打开客户端, 让它保持在线, 这样就能通 过“利息”来获益,同时保证网络的安全。PoS 机 制 的 用 例 : 未 来 币 。 PoW+PoS: PoW 发 行 新 币 , PoS 维护网络安全PoW+PoS 结 合 的 机 制 是 指 , 采 用 工 作 量 证 明 机 制 PoW 发 行 新 币 , 采 用 权 益 证 明 机 制 PoS 维 护 网 络安全。这种共识机制最早是于 2012 年 8 月

46、 , 由 一 个 化 名 Sunny King 的 极 客 推 出 Peercoin 时 采 用 。 该 机 制 中 , 区 块 被 分 为 两 种 形 式 : PoW 区 块 及 PoS 区 块 。 在 这 种 新 型 区 块 链 体 系 中 , 区 块 持 有13人可以消耗他的币龄获得利息,同时获得为网络产生一个区块和用 PoS 造币的优先权。在 PoW+PoS 机 制 下 , 只 要 是 持 币 人 , 不 论 持 币 的 数 量 是 多 少 , 都 可 以 挖 到 数 据 块 , 而 不 用 采 用 任 何 的 矿 池 导 致 算 力 集 中 ; 同 时 , 由 于 多 采 用 币 龄

47、 生 成 区 块 , 而 不 是 算 力 , 所 以 降 低 了 资 源 消 耗 , 解 决了单纯 PoW 机 制 在 维 护 网 络 安 全 方 面 的 先 天 不 足 。PoW+PoS 机 制 的 用 例 : Peercoin。DPoS: 授 权股 权证明 机制PoS 面 临 的 挑 战 是 如 何 通 过 及 时 而 高 效 的 方 法 达 成 共 识 。 为 了 达 到 这 个 目 标 , 每 个 持 币 节 点 可 以 将其投票权授予一名代表。 获票数最多的前 100 位代表, 按既定时间表轮流产生区块。 每名代表分配 到一个时间段来生产区块,所有的代表将收到等同于一个平均水平的区块

48、所含交易费 1%作 为 报 酬 。 如果一个平均水平的区块含有 100 股作为交易 费, 则 1 名代表将获得 1 股作为报酬, 这样可 以大大提 高共识效率,这就是 DPoS( Delegated Proof of Stake) 的 核 心 思 想 。这 100 位 代 表 可 以 理 解 为 100 个 “矿 池 ”, 这 100 个 “矿 池 ”之 间 的 权 利 是 完 全 相 等 的 。 如 果 这 些代表提供的算力不稳定、 计算机宕机、 或者试图利用手中的权利作恶, 那么, 那些手里握着代币的 用户可以通过投票的方式随时更换这些代表,后备代表则可以代替他们。DPoS 机 制 的 用

49、 例 : 比 特 股 。其他分布式一致性算法除了以上详列的 PoW、 PoS、 PoW+PoS、 DPoS 等共识机制外, 还有一些分布式一致性算法, 比如:PBFT、 Paxos 和 Raft 等 。 这类分布式一致性算法常用于联盟链 、 私有链。 而这些分布式一致性算法又分为解决拜占庭将军问 题 的 拜 占 庭 容 错 算 法 ( PBFT) 和 非 解 决 拜 占 庭 问 题 的 分 布 式 一 致 性 算 法 ( Paxos、 Raft) 。图 表 8:共识机制汇总 算法名称 适用环境 用例PoW 公有链 BitcoinPoS 公有链 NextcoinPoW+PoS 公有链 PeercoinDPoS 公有链 BitsharesPBFT 联盟链、私有链 IBM Hyperledger fabricPaxos 联盟链、私有链 Chubby lockRaft 联盟链、私有链 CITARPCA 公有链、联盟链 Ripple14PoET 公有链、联盟链 Hyperledger Sawtooth制表:区块宝研究院这些共识机制各有优劣。例如 PoW 共 识 机 制 在 安 全 性 和 公 平 性 上 比 较 有 优 势 , 也 依 靠 其 先 发 优 势已经形成成熟的挖矿产业链,但也因为其对能源的消耗而饱受诟病。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 金融证券 > 金融资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报