当前位置:文档之家› 区块链技术概述

区块链技术概述


– 交易确认的成本降低
多种替代方案
– 权益证明, 欺诈性交易产生时需要验证 (如债券交 易)
– 多个签名(如5个参与者中3人的同意)
企业级区块链需要“可插拔的”共识
12
什么是区块链?
© 2016 IBM Corporation
行业采用区块链的好处
减少成本及复杂度 提高可发现性
13
为什么与业务相关?
© 2016 IBM Corporation
区块链运营对比
17
© 2016 IBM Corporation
IBM开放区块链与Linux社区——开放持续投入
IBM区块链
应用部分
区块链行业应用
增值部分 (模块、工具、
封装)
SDK(API) 共识算法库(插入模块) 成员管理策略 区块链网关 开发工具 管理控制台
Hyperledger项目
IBM 社区贡献
项目核心范围内
18
© 2016 IBM Corporation
IBM 开放区块链: 贡献给Linux社区的架构及代码
Community + Code
MEMBERSHIP 包括OBC参与方的
身份识别,隐私, 可审计性。 BLOCKCHAIN | TRANSACTIONS 经过共识过程进行 分布式交易账本处 理。 CHAIN-CODE “智能合约”, 提供 在区块链上运行业 务逻辑的能力。 APIs, SDKs, CLI 为开发人员提供以 可编程方式控制区 块链网络的能力。
智能合约
合约中的商业规则内嵌在区块链系统中,在 交易时被执行
可验证的、被签署的 编码在编程语言中 案例:
– 在公司债权发生转移时执行定义的合同条 款
什么是区块链?
10
© 2016 IBM Corporation
隐私保护
什么是区块链?
账本是共享的,但是参与者要求其具有隐私保护 参与者需要:
私有链
4
区块链技术的分类?
© 2016 IBM Corporation
区块链是支撑比特币的底层关键技术
1.
是不受监管的,抗审查的影子货币
2. 区块链确保“类现金”的货币流通
• 唯一的,
• 不可篡改
• 确定的
3.
是区块链首个应用
• 区块链 不是
什么是区块链?
5
© 2016 IBM Corporation
共享账本
智能合约
交易条款和交易状态内 嵌在区块链系统中,驱动 交易执行
保证共享账本适当的可 见性;保证交易是真实 和可验证的
隐私保护
共识
所有参与者一致同意才 意味着交易在网络中通 过验证
更广泛的参与,更低的成本,更高的效率
6
© 2016 IBM Corporation
比特币帐本
7
什么是区块链?
© 2016 IBM Corporation
IBM开放区块链参考架构概览(模块与服务)
26
© 2016 IBM Corporation
成员管理(Membership)
成员管理提供会员注册、身份保护、内容保密、交易审计功能
OBC所有成员
– 首先,通过Registration Authority(RA)注册获得许可 – 然后,通过Enrollment Certificate Authority(ECA)获得注册安全证书(ECert), – 第三步(可选),通过Transaction Certificate Authority(TCA)获得交易安全证书(TCert) – 使用二者之一签名发起交易请求 – 与公有链不同(所有参与方不需要身份认证,可直接进行交易)
应用程序可以连接在验证节点,也可以连接在非验证节点
成员服务 Member Services
用户Client
用户Client
在OBC网络中需要有一个密钥管理结节,考虑到PBFT算法的3f+1共识机制,典型的容错(允许
一23 个节点故障)环境需要有4个Validation Peer节点
© 2016 IBM Corporation
– 交易信息需要保密 – 身份不和交易绑定 交易必须是真实的 密码学是这些步骤的核心
11
© 2016 IBM Corporation
共识
共识是交易验证与确认的过程
当参与方是匿名时
– 交易确认代价高昂

的挖矿过程为匿名者提供验证,但需巨
大计算成本(工作证明)
当参与者都是已知且可信时
第二,永不宕机。因为成员的动态运算机制,所有成员节点,
进行实时同步,无法实现局部控制,全球节点的随机分布和相 应在运算时钟和动态时间戳的控制下,永远不停机, 信用连续。
第三,成员监管。区块链强信任的技术特点,来自其节点成
员无中心的安全职责,成员局部的协作综合实现了体系安全的 监管全部,融监管与过程之中,实现了系统学中安全的正反馈 机制,在目前的计算条件下,尚无法通过跨越动态时间戳的可 靠超越, 信用连续。
更进一步——什么是(企业级)区块链
什么是区块链?
区块链是一种分布式多节点“共识”实现技术,通过区块链可以完整、“不可篡改”地记 录价值转移(交易)的全过程。区块链的形成按照时间先后顺序进行连接,每一个参与共 识形成的节点都有一份区块链信息的完整副本。
跨商业网络共享的,不 可更改的,分布式交易 记录系统
2
© 2016 IBM Corporation
区块链介绍
什么是区块链?
区块链是一种共享账本技术 ,商业网络中的任何参与方 都可以查看交易系统记录(账本)
3
© 2016 IBM Corporation
区块链是支撑比特币的底层关键技术
公有链
Pow/Pos/DPos
联盟链
OBC/Etherenum pbft共识
19
© 2016 IBM Corporation
IBM开放区块链名词解释
Transaction – 交易。账页中的一笔记录,用于确认一个事实,执行一段代码(chaincode)
Ledger – 账薄(账册)。由首尾相连的一组区块(block,有时也称为一个账页)构成,记录交易和区块世界的状 态
基础部分 共享账簿 (Shared Ledger)
核心API
代码运行环境 账簿数据结构 模块化(可插式)共识框架 模块化(可插式)身份服务 P2P网络技术升级包
IBM在Blockchain 上持续投入,致力于 行业应用 – 是Linux开源社区 Hyperledger的主 要贡献方,致力于协同其他公司共同 研发,公布Open Ledger标准(规 格说明书),创建基于Linux的开源 共享账簿(比Bitcoin更适合行业应 用) – 推动区块链技术在行业中的应用(行 业区块链) – Blockchain已经作为一种实验性 (网络)服务在Bluemix上推出 – 基于LinuxOne的开放计算平台对 Blockchain的支持 – ……
Confidentiality – 保密。OBC中只有交易相关方可以看到交易内容,其它无关节点只能验证交易的真实性
Auditability – 审计。如果把审计方加入OBC交易,则它可以看到交易,从而审计是否合规
20
© 2016 IBM Corporation
帐本结构示意
21
© 2016 IBM Corporation
单节点和多节点网络
若OBC网络中只有一个VP节点(极端简化),则应用程序可以直接与该节点连接,执行其上 的Chaincode代码,这时VP节点只需要记账,不需要共识
若OBC网络中有多个VP节点,则应用程序可以通过NVP节点(NVP与应用程序可以一对多) 间接访问VP(NVP与VP之间多对一),这时VP节点需要验证交易、运行代码、记录账薄、达 成共识
Non-validating Peer – 非验证节点。 OBC区域链网络中的半功能节点,负责验证交易,但不执行交易,也不记录账薄,通常用 于代理 Validating Peer,提供REST service转发功能
Permissioned – 许可。只接受成员接入,不接受匿名接入
Privacy – 隐私。OBC中任何成员都能发起交易,但只有相关方才能知道,其它无关节点无法从交易回溯到交易方
27
© 2016 IBM Corporation
成员管理模型
28
© 2016 IBM Corporation
业务网络动态组建示例:第一个节点
OBC节点相关配置位于/openblockchain/obcpeer/openchain.yaml
在配置文件的peer小节中, – validator_enabled为true表示节点是验证节点,否则是非验证节点 – discovery_rootnode在启动时使用,当这个参数被设置时节点会使用 discovery protocal查找其他节点。这个参数是网络上另外一个节点的 IP,这个节点作为网络上所有节点进行discover的起始点。 – rest_enabled表明节点是否接受REST请求,对于生产环境一般把验证节 点设置为false,只让非验证节点接受来自应用的REST请求
World State – 区块世界的状态。由一组变量组成,指明交易的执行结果
Chaincode – 交易中记录的一段代码,其执行结果会改变区块世界的状态(World state)
Validating Peer – 验证节点。OBC区域链网络中的全功能节点,负责验证交易、记录账薄、达成共识
Application
Chaincode
Validating Peer
Application
Non-Validating Peer
相关主题