已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档 1欢迎下载 区块链以及区块链技术总结区块链以及区块链技术总结 区块链是目前一个比较热门的新概念 蕴含了技术与金融两层概念 从技术角度来看 这 是一个牺牲一致性效率且保证最终一致性的的分布式的数据库 当然这是比较片面的 从 经济学的角度来看 这种容错能力很强的点对点网络 恰恰满足了共享经济的一个必须要 求 低成本的可信环境 本次分享一下聊聊区块链技术 以及目前区块链技术架构 并且介绍一下价值互联网 由于区块链是一个新兴的技术概念 本文所有的观点仅代表个人观点 未必全部正确 1 1 技术人员看待区块链的正确姿势技术人员看待区块链的正确姿势 区块链虽然是一个新兴的概念 但它依赖的技术一点也不新 如非对称加密技术 P2P 网 络协议等 好比乐高积木 积木块是有限的 但是不同组合却能产生非常有意思的事物 我接触过一些工程师 初次接触区块链时 不约而同的表达了 都是成熟的技术 不就是 分布式存储嘛 站在工程师的角度 第一反应将这种新概念映射到自己的知识框架中 是 非常自然的 但是细究之下发现 这种片面的理解可能将对区块链的理解带入一个误区 那就是作为一个技术人员 忽略了区块链的经济学特性 一个权力分散且完全自治的系 统 区块链本质上是一个基于 P2P 的价值传输协议 我们不能只看到了 P2P 而看不到价值传 输 同样的 也不能只看到了价值传输 而看不到区块链的底层技术 可以这么说 区块链更像是一门交叉学科 结合了 P2P 网络技术 非对称加密技术 宏观 经济学 经济学博弈等等知识 构建的一个新领域 针对价值互联网的探索 精品文档 2欢迎下载 那什么是价值互联网 价值互联网可以是当下如日中天的电子商务所衍生的支付业务 但 真的只是支付领域吗 很显然这是不够的 一级资本市场 实体资产确权与转移 证券登 记交割 证信与反欺诈 我们再仔细想想 我们的各大电商平台的专业差评师 恶意刷单 还少吗 如今的金融领域 除了支付比较便利之外 在其他绝大部分的业务中 我们就像是被套着 锁链走路一样 我们反复确认 反复审核 反复监督 我们反复构建一个又一个的大大小 小的高可用集群 保证线上服务的可靠性与连续性 我们雇佣一个又一个的安全工程师 交付一个又一个的渗透测试项目 为什么 因为作弊的成本太低了 低到只要改数据库的 一行记录就可以提取上百万的资金 强大的互联网给了我们成本几乎为零的高速信息传输通道 却没有一个成本低廉可靠的高 速价值传输通道 那么这也就是区块链即将带来的 区块链是一个公共的分布式总账 下面从技术角度简单介绍一下 想象有一个 100 台的分布式数据库集群 现在的情况是这 100 个节点实际上的拥有者是一 个机构 并且所有节点处在该机构的内网当中 所以这个机构想让这 100 个数据库节点干 嘛就干嘛 换句话说这 100 个节点之间是处于一个可信任的环境 并且受控于一个实体 这个实体具有绝对仲裁分配权 另外的情况是这样的 想象这 100 个节点分别归不同的人所有 且每个人的节点数据都是 一样的 即完全冗余 并且所有的节点是处在广域网当中 换句话说就是这 100 个节点之 间是不信任的 且不存在一个实体 它拥有绝对仲裁权 现在考虑第二种情况 采用什么样的算法 共识模型 能够提供一个可信任的环境 使 1 每个节点交换数据过程不被篡改 交换历史记录不可被篡改 2 每个节点的数据会同步到最新数据 且承认经过共识的最新数据 3 基于少数服从多数的原则 整体节点维护的数据本身客观反映了交换历史 精品文档 3欢迎下载 区块链本质上就是要解决以上第二种情况的一种技术方案 更确切的说应该叫分布式的冗 余的链式总帐本方案 有关区块链的一些要素 在我以往的文章里有总结过一些 1 包含一个分布式数据库 2 分布式数据库是区块链的物理载体 区块链是交易的逻辑载体 所有核心节点都应包 含该条区块链数据的全副本 3 区块链按时间序列化区块 且区块链是整个网络交易数据的唯一主体 4 区块链只对添加有效 对其他操作无效 5 基于非对称加密的公私钥验证 6 记账节点要求拜占庭将军问题可解 避免 7 共识过程 consensus progress 是演化稳定的 即面对一定量的不同节点的矛盾数据 不会崩溃 8 共识过程能够解决 double spending 问题 所以作为一个技术人员 不应当只看到了区块链所依赖的技术 更应该关注区块链以外的 点和面 综合来看 区块链将会有趣得多 2 2 区块链的一般性架构介绍区块链的一般性架构介绍 有关区块链本身的发展史 网络上资料比较多 本文不再赘述 而有关区块链技术的介绍 在各个区块链平台的社区是有详细资料的 但是针对这些资料 的总结 以及抽象出一共通概念的介绍 还是凤毛麟角 本文尝试总结一下 在介绍之前 我想稍微介绍一下公有链 联盟链的概念 这些概念是以太坊创始人 Vitalik 提出的 我在这些概念的基础上做了一些研究 精品文档 4欢迎下载 其实区分公有链 联盟链很简单 只要看这个区块链的访问权限就可以了 如果访问该区 块链需要获得链上节点的许可 那么这是一个联盟链 否则是公有链 根据名称 我们也可以 望文生义 公有表示一个完全开放的网络 联盟表示一个半开 放的网络 成员之间是共享的 非成员身份是没有自由访问权限的 所以我们也称联盟链 为许可链 下面我们来看几个比较主流的区块链平台 公有链 皆开源 1 比特币 Bitcoin 2 以太坊 Ethereum 经典以太坊 Ethereum Classic 3 比特股 Bitshares 我一般戏称为 三巨头 从生态上来看 比特币是最为成熟稳定的 以太坊更像是一个 冲在前面的勇士 比特股相比前两位生态要小很多 但是从创新的角度 也不亚于前两位 其他的很多项目 是从这三个区块链上衍生出来的 所以以这三个为基础 基本上可以吃 透区块链了 不得不提的还有 Linux 基金会项目 HyperLedger 项目 主打联盟链 开源 也是旨 在打造一个通用的区块链技术 不过我认为目前尚在开发迭代当中 还没有具体的应用案 例 按下不讲 另外还有一些好玩的联盟链项目 R3 CEV 项目 联盟链 闭源 以及中国的 R3 项目 ChinaLedger 联盟链 闭源 当然这些不是开源的 我无法获得有用的资料进行分 析 所以就不展开了 精品文档 5欢迎下载 从技术上来看 针对不同的业务场景 对区块链有不同需求 比如实时结算业务 要求区 块链提供秒级的交割 相对应的就是出块速度的要求 而出块速度过快往往会导致区块链 分叉 fork 形成孤儿链 孤儿链是无效的 那么交易也就作废了 影响了区块链的最 终一致性 如果频繁产生分叉造成相当比例的用户交易失效 那么可以认为系统是不可靠的 如果我们将这种实时性要求比较高的业务安插到联盟链中 就可以控制风险 通过调整共 识算法 利用快速一致共识模型 Consensus Model 来避免上述问题 虽然不如公有链那 么健壮 但对某些特殊场景足够了 所以架构层面 对公有链和联盟链的技术也要差异化对待 不过客户端整体的设计还是有一些通用的概念的 如下图 图 1 精品文档 6欢迎下载 一个区块链至少分为三层 最底层是一些通用的基础模块 比如基础加密算法 网络通讯库 流处理 线程封装 消 息封装与解码 系统时间等 中间一层是区块链的核心模块 一般包含了区块链的主要逻辑 如 P2P 网络协议 共识模 块 交易处理模块 交易池模块 简单合约或者智能合约模块 嵌入式数据库处理模块 钱包模块等等 最上面一层 往往都是基于 Json Standard RPC 的交互模块 基于 Json RPC 我们还可以 做出更好的 UI 界面 也可以是一个 web service 如果区块链 支持智能合约 可能还要分更多的层 比如增加 BaaS 层 区块链上的智能合 约提供自治的服务 比如下面这张以太坊的架构图 来自 google 仅作参考 图 2 精品文档 7欢迎下载 这种分层更加关注的是区块链本身的分层 即业务上的视角 而不完全是技术的 我们再转向比特币的设计 图 3 比特币几个模块之间的耦合度其实比较高 而且有不少历史包袱 比特币的发明者 中 本聪在开发比特币的时候 使用 VC 开发 而 VC 的标准库中的 sstream 流处理性能非常 感人 不得不放弃 自行实现了了基于 vector的流处理容器 而随着 c 11 的推出 以及标准库的更新迭代 性能不可同日而语 从整张图我们可以看出 比特币的模块比较少 也比较简单 chain paramters 描述了整 个区块链的参数设置 wallet 是与地址 加密还有存储相关的 mem pool 是未确认的交易 池 得益于比特币核心开发者的不朽贡献 相比中本聪时代的比特币代码 现在的比特币 代码质量已经相当不错了 精品文档 8欢迎下载 以上无论哪种设计 一般都要从 P2P 网络协议作为切入 作为一个 P2P 钱包 既要提供 Service 也要提供 Client 作为 Service 依赖 P2P 网络协议 作为 Client 依赖 Json RPC 需要指出的是 目前 三巨头 所使用的账户模型是不同的 所谓账户模型是指账户记账 方法 比特币使用 UXTO 模型 以太坊和比特股使用账户余额模型 UXTO 模型 Unspent Transaction Outputs UTXOs 此模型表达了一种转移的概念 即任何产生的新币 在以后的生命周期中 只有转移 没有消亡 转移实质上是由加密算 法的签名与验证控制的 图 4 账户余额模型 账户余额模型摒弃了这种强验证的账户模型 即账户余额回归到数字加减 这样做提升了交易的效率 3 3 共识算法与分布式共识算法与分布式 终于来到重点了 本文每节其实都可以展开成为独立的文章 内容所限 简单讲 精品文档 9欢迎下载 所谓区块链共识过程 在上文有所提及 是指如何将全网交易数据客观记录并且不可篡改 的过程 目前 三巨头 分别使用不同的共识算法 Consensus Algorithm 比特币使用 工作量证明 PoW Proof of Work 以太坊即将转换为权益证明 PoS Proof of Stake 比特股使用授权权益证明 DPoS Delegated Proof of Stake 以上这些算法我称之为 经济学 的算法 所谓经济学的算法 是指让作弊成本可计算 且让作弊成本往往远大于作弊带来的收益 即作弊无利可图 通过这种思想构造一个用于 节点之间博弈的算法 并使之趋向一个稳定的平衡 相对应的我们还有计算机领域的分布式一致性算法 例如 Paxos Raft 我也称之为传统 分布式一致性算法 他们之间的最大区别是 系统在拜占庭将军 Byzantine Generals Problem 情景下的可 靠性 即拜占庭容错 PBFT 算法支持拜占庭容错 然而无论是 Paxos 还是 Raft 算法 理论上都可能会进入无法表决通过的死循环 尽管这个概率其实是非常非常低的 但是他 们都是满足 safety 的 只是放松了 liveness 的要求 PBFT 也是这样 下面是一些传统分布式一致性算法和区块链共识过程的异同点 相同点 1 Append only 2 强调序列化 3 少数服从多数原则 4 分离覆盖的问题 即长链覆盖短链区块 多节点覆盖少数节点日志 不同点 1 传统分布式一致性算法大多不考虑拜占庭容错 Byzanetine Paxos 除外 即假设所 有节点只发生宕机 网络故障等非人为问题 并不考虑恶意节点篡改数据的问题 精品文档 10欢迎下载 2 传统分布式一致性算法是面向日志 数据库 的 即更通用的情况 而区块链共识模 型面向交易的 所以严格来说 传统分布式一致性算法应该处于区块链共识模型的下面一 层 考虑上面的不同点 结合公有链和联盟链的特征 我们有 1 联盟链 半封闭生态的交易网络 存在对等的不信任节点 如房地产行业 A B C D 公司 2 公有链 开放生态的交易网络 这层主要是为行业链和私有链提供全球交易网络 由于联盟行业链其半封闭半开放特性 使用 Delegated Proof of XXX 是可行的 可以考 虑以传统一致性算法作为基础加入拜占庭容错 安全防护机制进行改进也是可以的 而针对公有链 PoW Pos DPos 等 经济学 的算法可能是最优算法 技术上 以上不同的共识算法 我们很多新开发区块链都相应的支持一个特性 共识模块 可插拔 以应对不同场景下的要求 下图是一张未来区块链生态示意图 精品文档 11欢迎下载 图 5 公有链提供可信可靠的价值传输网络 上面可以继续组建去中心化应用 DAPP 或者部署 联盟链 甚至传统数据库都行 在上层搭建 C 端应用 ref1 浅谈区块链共识机制与分布式一致性算法 blockchaindev org ref2 从 Paxos 到拜占庭容错 兼谈区块链的共识协议 转 blockchaindev org 4 4 数字资产与价值流通网络数字资产与价值流通网络 这里有张图 精品文档 12欢迎下载 ref Metaverse 元界白皮书 CN 概要 三巨头 中 比特币在 数字货币 处 比特股在 去中心化交易所 附近 以太坊在 去中心化组织 处 而实际上 区块链和现实的接触点 还在图示位置 所以区块链仍是一个正在成长的少年 结合图 5 我们希望构建一个基础设施完善的价值 传输网络 上层应用丰富的区块链生态 仍然需要付出巨大的努力 下一步目标 是将资产数字化 类比资产证券化 例如我们可以将珍稀物品 艺术品 古 董 数字化 知识产权数字化 票据基金等收益权数字化 将极大的提升市场运作效率 配备智能合约 甚至人工智能 可编程社会不再是梦想 Q 还是感觉太抽象 至今都还不能具象化的理解这个区块链 也没找到具象化的解释 费 解 精品文档 13欢迎下载 A 正如区块链这个名词一样 它是被创造出来的 并没有以往的概念可以映射到上面 所 以容易费解 我们不谈这个概念 我们只需要想想我们的互联网还需要什么 正如比特币 白皮书提到的 一个点对点的现金系统 他使用的前提要求是很低的 不需要注册 不需 要手机号 一个点对点的网络 只要你用设备接入 那么你就可以使用 区块链这个概念 也一样 目的是构建一个点对点的生态 解构权力带来的不对称 它本身只是一个共享的 总账本 不同于网络中多节点自己记账 再对账 这就瓦解了中心权力 Q 区块链技术在互联网身份认证方面如何应用 A 这个问题很好 我目前所做的区块链项目是涵盖了这个概念的 也就是你所说的互联网 身份认证 我们认为它是使区块链接入现实业务的必要一环 在我们的设想中 首先什么是身份 身份不单单是一个 ID 号 一个密码 而是一个使用者 所有的操作记录集 这个记录集的代号才是身份 正如账户丢失 然后申诉一样 申诉的 内容才是真正定位到你这个人 区块链也一样 它需要一样 ID 同样它也需要自动验证你 历史记录的合法性 目前互联网的身份认证是依赖公安系统的 最简单的方案就是把公安 系统中的身份系统映射到区块链中 另外一个方案也是用户自定义记录集 根据交易历史 核对身份 当然再更远的未来 结合人工智能 区块链可能有更好的表现 Q 实时交割数据如果放到联盟链中 联盟链的数据是否要最终同步到公有链 按分享所说 联盟链的数据对公有链来说是不可信任的 联盟链和公有链中数据是什么关系 此处没有 理解 谢谢老师分享 A 我认为不可能所有机构都愿意把资产放到公有链上的 一定会出现并存的现象 理想的 情况当然完全使用公有链搭建去中心化应用 联盟链和公有链直接的数据是单纯的引用关 系 我认为开放的关键数据集 如用户身份应该沉淀到公有链 让用户自己管理 而机构 比较私有的关键数据 应该使用访问权限将它与公有链隔离 所以联盟链的数据和公有链 的数据我认为是互补的 也就是说 联盟链的数据是否要同步到公有链 这个要是视机构 本身的需求而定 另外 公有链的外部数据引用 我们称之为 data feed 这个东西就要 把人的因素引入了 比方说法务 律师 政府机构等等 作为一个仲裁者帮助引用数据 好坏可以让市场评价信用 正如对一个机构评级一样 如果这样就很透明开放了 Q 有一些很有趣的实体项目比如智能门锁 无人租车 这些都是线下项目 怎么做到互联 互通呢 精品文档 14欢迎下载 A 首先区块链的项目都是跨平台的 也就是说嵌入式设备可以依托区块链的低信用成本的 优势 自动记账 可以是联盟链的 也可以是直接基于某个公有链的 DAPP 这些账本是共 享的 这些数据在发生引用关系的时候 可以进入公有链通道 打通两者关系 其次
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年泰安航空职业学院高职单招职业技能考试题库及参考答案详解AB卷
- 保险AI在保险行业标准制定
- 2027年吉林长白山职业学院高职单招职业技能考试题库及参考答案详解【典型题】
- 2024年雅砻江职业学院单招职业技能考试题库及参考答案详解AB卷
- 2024年沧州滨海职业学院高职单招职业技能考试题库及答案详解【网校专用】
- 2026年石家庄幼儿师范高专高职单招职业适应性测试考试题库含答案详解(突破训练)
- 2026年多组学数据的联合富集分析方法
- 2024年张家界文旅职业学院单招综合素质考试题库及参考答案详解【培优A卷】
- 2025年碣远职业学院高职单招职业技能考试题库带答案详解(A卷)
- 2026年秋季大学新生军训 早操与晨练制度
- 数控机床装调维修工综合知识理论考试题库
- 布鲁菌病课件
- (正式版)QC∕T 1207-2024 燃料电池发动机用空气压缩机
- 2024年越南自动X射线检测(AXI)行业现状及前景分析2024-2030
- 烧烤视频拍摄脚本
- 廉洁应征承诺书
- 《抹灰工程》课件
- PCIe-SSD在数据中心的应用分析
- 格鲁夫给经理人的第一课-学习分享
- DB4401-T 166-2022《1:500+1:1000+1:2000地形图图式》地方标准
- LY/T 1814-2009自然保护区生物多样性调查规范
评论
0/150
提交评论