懒人包#京东区块链技术实践白皮书
浓缩心得
1.京东拥有可用区块链解决的场景需求。例如供应链。
2.京东区块链的目标是打造面向企业级应用的区块链基础设施, 是联盟链的概念。
3.区块链的交易并发能力、数据存储能力、通用性、功能完备性、易用性都还存在明显不足。
3-1.交易并发能力(效能) 及数据存储能力
3-1-1.采用微服务处理架构, 支持横向伸缩, 动态扩容, 实现海量交易处理与数据存储
3-1-2.采用NoSQL使持久性存储
3-2.通用性:
3-2-1.以及标准化的方式, 解决多链并存的问题
3-2-2.模组化共识网路, 账本, 存储, 合约引擎; 使其可以调换。
3-3.功能完备性:
3-3-1.采用通用事件驱动模型框架。目前已接入 AKKA 的 Actor 模型
3-4.易用性:
3-4-1.透过使用主流的编程语言(Java, Go), 解决运用区块链技术的问题
3-4-2.提供好的调试功能
4.京东认为, 区块链是未来的方向, 但用户愿意上链的动力不足, 通过商模建立好的应用场景激励机制, 是核心挑战之一
前言
* 区块链技术天然解决了京东业务场景中多个主题的信息纪录与分享, 可信数据交换与传递的业务诉求。
* 存储数据, 共有数据, 分布式, 防篡改与保护隐私, 数字化合约
京东认为的应用机会:
1.建立社会化共享的可信数据库
2.提升交易效率,降低交易成本
3.推动供应链创新
要解决的问题
区块链的交易并发能力、数据存储能力、通用性、功能完备性、易用性都还存在明显不足。
京东区块链主要应用场景
2.1 供应链领域
供应链由众多参与主体构成,存在大量交互协作,信息被离散地保存在各自环节各自系统中,缺乏透明度。
1.商品防伪追溯
2.贸易融资 : 为与大型企业的多频次交易信用背书
2.2 金融领域
1.交易清结算: 可信, 互认的账本, 再加上智能合约。减少人力核对。
2.资产证券化 ABS (Asset-backed Securities) : 底层资产数据的真实性, 降低发行成本, 对全生命周期便于管理。
2.3 政务及公共服务领域
合同及发票防伪
公益追溯
2.4 其他领域
保险防欺诈
大数据安全
京东区块连架构体系
目标:
区块链协议: 账本状态, 历史证明, 账本操作集, 合约指令集
组件模型: 共识网络, 账本, 持久化引擎, 合约引擎
服务平台: 网关, 服务, 节点网路, SDK, 工具
特色:
标准化 : 设计了标准化的协议和数据结构,解决企业间数据的交互问题,避免多链并存的区块链技术演进过程中形成数据孤岛
松耦合与模块化
简洁与高效 : 采用 Go 语言
3.2 应用模型
(1)定义参与业务的各个主体的身份帐户。
(2)编写智能合约对业务过程做出定义。
(3)联合签署智能合约并触发业务初始条件。
京东希望能达到
(1) 让智能合签在签署上更具可读性
(2) 支持主流的开发语言(Java, Go)作为合约的编程语言
(3)支持智能合约的模拟调试功能。
(4)支持灵活的合约间调用和数据访问控制策略。
3.3 账本协议
账本状态: 身份, KV数据, 合约代码, 权限
账本操作集: 是为了实现跨链互操作而定义的一个通用标准。
合约指令集: 可以用一种通用的方式来表述各种复杂的业务逻辑。
3.4 组件模型
共识网络: 选择类BFT的算法进行优化, 针对通用阶段进行封装, 抽象出可扩展的标准接口。
账本: 账本状态和合约分离, 不同的身份, 会有不同的访问权限。
持久化存储: 采用NoSQL
合约引擎: 语法分析, 编译器, 执行引擎, 账本操作代理
3.5 服务平台
3.5.1 区块链网关 : 私钥管理, 隐私保护, 协议转换
3.5.2 区块链节点服务: 面向应用的账户管理, 账户的认证授权, 面向对像的账本数据访问框架, 事件通知机制, 智能合约管理
3.5.3 区块链共识网路
3.5.4 工具
3.5.5 部署架构
4.京东区块链的特点
4.1 性能
采用优化的BFT共识协议和P2P通讯, 支持多链并行共识
采用微服务处理架构, 支持横向伸缩, 动态扩容, 实现海量交易处理与数据存储
4.2 功能
支持事件驱动的业务协作模型
4.3 加密
4.4 合约
4.5 合规
参考资料
白皮书下载 http://ledger.jd.com/