From 82c2233fed8a88853b30d2a9ae54e24e3bf89de5 Mon Sep 17 00:00:00 2001 From: huanghaiquan Date: Tue, 27 Aug 2019 03:05:41 +0800 Subject: [PATCH] Upgraded readme; --- README.md | 649 +++++---------------------------------------- docs/design.md | 630 +++++++++++++++++++++++++++++++++++++++++++ docs/images/deployment.jpg | Bin 0 -> 131011 bytes 3 files changed, 700 insertions(+), 579 deletions(-) create mode 100644 docs/design.md create mode 100644 docs/images/deployment.jpg diff --git a/README.md b/README.md index 6b98db84..6854f3b7 100644 --- a/README.md +++ b/README.md @@ -6,621 +6,112 @@ ------------------------------------------------------------------------ -### 版本修订历史 - - - - - - - - - - - - - - - - - - - - - - - - - -
版本号作 者修改日期备 注
0.0.6黄海泉2017-11-10 - 定义JD区块链项目的目标与关键能力;
- 定义JD区块链的核心对象模型;
- 定义“账户”的生成算法和“区块/交易/操作/账户”的关键属性;
- 描述了编程接口的示例代码; -
0.0.7黄海泉2017-11-17 - 丰富了对“节点共识”、“节点分区”两项关键能力的详细描述; -
0.0.8黄海泉2018-07-17 - 增加部署图;增加智能合约开发的示例; -
------------------------------------------------------------------------- - -## 一、概述 -JD区块链项目的目标是提供一个面向广泛的应用场景、满足企业核心需求的灵活和易用的区块链系统。 -以下是 JD 区块链用以满足企业核心需求的关键能力,也是显著区别于其它区块链的重要特征: - - - 快速共识 - - 节点分区 - - 并行多账本 - - 大数据伸缩存储 - - 条件检索 - - 面向对象的合约代码编程模型 - - 节点快速部署 - - 多终端灵活接入 - - 分布式自治的账户权限管理模型 - -JD区块链对于关键能力的定义是建立在深入理解和抽象各种多样化需求的基础上的。 - - - 快速共识(Efficient Consensus) - 我们认为,“快速”不仅仅体现在“用更短时间”达成共识,还要体现在交易(Transaction)要得到可靠地执行。 - 需要在算法和实现层面做出保障,确保所有提交的合法的交易会被系统在一个“确定性”和“足够短”的时间之内被严格地执行,系统不主动作出随机性地丢弃(不包括系统故障因素)。注:POW类算法产生的链分叉处理是一种系统随机性地丢弃交易的行为。 - 从使用者的视角来看,这种能力就是区块链系统的“可靠性”,这对于企业、金融场景而言尤其重要。 - - - 节点分区(Peer Partition) - “分区”是一种分布式系统架构原则,通过将大范围目标按照某种相似特征分隔为一个个小范围目标,分别进行更高效地处理,这能从整体上提升整个系统的处理能力。 - 区块链系统也是一种分布式系统,沿用“分区”的思想这点来自以往的系统架构实践的经验,是有可能让区块链系统获得可媲美现有系统的处理能力。这种能力将可以无障碍地把区块链在应用于广泛的企业场景中。 - 在此,我们所说的“节点分区(Peer Partition)” 是共识过程中的物理通讯层面的分区,在共识过程中只有相关的物理节点才会建立通讯链路并复制和存储共识的状态数据。在一个区块链系统中,可以从节点全集中选择一个或多个节点子集,分别组成一个或多个节点分区(Peer Partition) - - - 并行多账本 - 账本(Ledger) - - 大数据伸缩存储 - - 条件检索 - - 面向对象的合约代码编程模型 - - 节点快速部署 - - 多终端灵活接入 - - 分布式自治的账户权限管理模型 - -## 二、对象模型 -JD区块链的核心对象包括: - - - 账本(Ledger) - 一份账本(Ledger)实质上是由两部分组成: - - 一组以“账户(Account)”表示的状态数据; - - 以“区块的链条(Block-chain)”表示的状态数据的变更历史; - - JD区块链的“账本(Ledger)”是一个最顶层的管理数据的逻辑单元。在一个区块链节点构成的共识网络中,可以维护多套并行的“账本(Ledger)”。 - - - 账户(Account) - - 在JD区块链中,账户(Account)被设计为包含“身份(Identity)”、“权限(Privilege)”、“状态(State)”、“控制规则(Control Rule)” 这4种属性的对象。 - - 其中,“身份(Identity)”、“权限(Privilege)”这两种属性是一个面向应用的系统的基本功能; - - “状态(State)”、“控制规则(Control Rule)” 这两种属性这是一个具备“图灵完备性”的系统的基本属性,使系统可以处理任意多样化的任务; - - 在这里,“身份(Identity)”是一个抽象表述,其形式上就是一个“区块链地址(Address)”和相应的“非对称秘钥钥对(KeyPair)”/证书。 简单来说,一个“账户(Account)”就是一个区块链地址、公私钥对以及一套的权限配置. - - 一个“账户(Account)”的“状态(State)”、“控制规则(Control Rule)” 这2种属性则是可选的,这提供了不同于其它区块链的账户/合约的一种新的使用方式,即一种数据和逻辑分离的应用设计思路(这在传统的web应用编程中被称为“贫血模型”)。同时,也意味着一个特定“账户”中的数据状态是可以跨账户/合约代码进行共享访问的。 - - 从应用的视角来看,对“账户”的使用方式可以有几种模式: - - 用于表示业务角色/用户: - - 用于表示业务数据:仅有“状态(State)”没有“控制规则(Control Rule)”的账户,可称为数据账户,就有些类似于关系数据库中的“表(Table)”的作用,不同业务类别的数据则使用不同的账户来管理。 - - 用于表示业务逻辑:仅有“控制规则(Control Rule)”没有“状态(State)”的账户,即所谓的合约账户,可表示某种用于处理数据的通用逻辑,可被授权访问特定的数据账户。 - - - 区块(Block) - 在概念上,与通常所说的区块的概念是一致的。 - 在实现上,一个区块的主要内容是包含了某一时刻提交的所有交易以及交易执行之后的状态数据的快照的hash,而不存储具体的交易操作和状态数据。 - - - 交易(Transaction) - 在概念上,与通常所说的Transaction的概念是一致的,表示一组需要原子执行的操作。 - - - 操作(Operation) - 操作是针对“账户(Account)”的“写”指令,包括以下几类: - - 注册账户 - - 更新账户的状态数据 - - 更新账户的合约代码定义 - - 调用账户的合约代码 - - - 合约代码(Contract Code) - 合约代码是一段用于对“账户(Account)”的状态数据执行操作的代码程序。 - -## 三、部署模型 - - 1. 总体部署 -![deployment architecture](docs/images/deployment.png) - - 2. 系统组件 - - 共识节点 - - 复制节点 - - SDK - - 网关 - - 终端 - - 3. 配置和管理 - -## 四、账本结构 - -### 1. 账户生成算法 - - - 公私钥对 - - 算法:默认ED25519 ,支持 SM2、CA; - - 公钥存储格式:版本 + 算法标识 + 公私钥原始内容 + 校验码 - - 字符编码方式:Base64 - - 地址 - - 算法 - - 给定公钥 P (或由私钥 R 算出公钥 P) - - 中间值 H1 = SHA256( P ) - - 中间值 H2 = RIPEMD-160( H1 ) - - 中间值 X = 版本 + 公钥算法标识 + H2 - - 校验和 C = 前4字节( SHA256( SHA256( X )) ) - - 地址 Address = Base58( X + C ) - -### 2. 区块 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
属性名称说明
BlockHash当前区块 hash对区块中除此之外的其它所有属性一起进行哈希运算生成
BlockVersion 区块版本表示区块-交易的属性结构的版本号;
PreviousBlockHash上一区块 hash
BlockNumber区块高度区块高度是一个区块在链中的序号;
创始区块的高度为 0,每个新区块的高度依次递增;
AccountHash账户树hash账户的 Merkle Tree 根的 hash
AccountCount账户数量区块生成时账本中的全部账户的总数
TxTreeHash交易树 hash本区块的交易集合的 Merkle Tree 根的 hash
TxCount区块交易数量当前区块包含的交易的数量;
TxTotalCount账本交易总数截止到当前区块为止当前账本的所有交易的总数量;
CloseTime区块关闭时间生成当前区块时的区块链节点的网络时间;
- -### 3. 交易 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
属性名称说明
Hash当前交易 hash对交易中除此之外的其它所有属性一起进行哈希运算生成
LedgerNumber区块高度交易被包含的区块高度
BlobHash交易数据块hash交易的数据块是交易的原始数据,包含客户端提交的交易的全部操作及其参数; -
交易的参与者需要使用私钥对交易数据块进行签名;
Operations操作列表交易的操作列表;
Sponsor交易发起人交易发起人的账户地址;
SequenceNumber交易序号交易序号记录了一个特定的发起人的交易的顺序号,等同于该发起人历史上发起的交易的总数;
Signatures签名列表由交易发起人和其它参与者对交易数据块的签名的列表;
Result交易结果0 - 表示执行成功;非零表示执行失败;
注:最终的账本只包含成功的交易;
- -### 4. 操作 - - - - - - - - - - - - - - - - - - - - - -
属性名称说明
OpType操作类型 - 一级操作类型包括:注册账户、配置权限、写入键值数据、写入对象数据、定义合约代码、调用合约代码;
- “键值数据写入”操作的子操作类型包括:填入键值、移除键、数值增加、数值减少;
- “对象数据写入”操作的自操作类型包括:插入对象、更新对象、移除对象; -
Args参数列表与操作类型相对应的参数列表;
SubOps子操作列表“子操作”是“操作”的递归定义,由“操作类型”来标识;
- -### 5. 账户 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
属性名称说明
Address地址账户的唯一标识
RegNumber注册号账户被注册到区块链的区块高度;
TxSquenceNumber交易序列号由账户发起的交易的序列号,初始为 0,账户每发起一个交易则增加1;
ModelVersion账户模型版本表示构成一个账户结构的属性模型的程序版本号;
Version账户版本初始为 0,对账户的每一次变更(包括对权限设置、状态和合约代码的变更)都会使账户状态版本增加 1 ;
注:交易序号的改变不会导致账户版本的增加;
PrivilegeHash权限 hash权限树的根hash;
PrivilegeVersion权限版本初始为 0, 每次对权限的变更都导致版本号加 1;
StateType状态类型账户的状态类型有3种:空类型(NIL);键值类型;对象类型;
StateVersion状态版本账户的状态类型有3种:空类型(NIL);键值类型;对象类型;
StateHash状态哈希数据状态的 merkle tree 的根hash;
CodeHash合约代码哈希由“账户地址+合约代码版本号+合约代码内容”生成的哈希;
CodeVersion代码版本初始为 0,每次对代码的变更都使版本加 1 ;
- -## 五、编程接口 - -### 1. 服务连接 - - -```java - //创建服务代理 - public static BlockchainKeyPair CLIENT_CERT = BlockchainKeyGenerator.getInstance().generate(); - final String GATEWAY_IP = "127.0.0.1"; - final int GATEWAY_PORT = 80; - final boolean SECURE = false; - GatewayServiceFactory serviceFactory = GatewayServiceFactory.connect(GATEWAY_IP, GATEWAY_PORT, SECURE, - CLIENT_CERT); - // 创建服务代理; - BlockchainService service = serviceFactory.getBlockchainService(); -``` +## 一、项目简介 +JD Chain 的目标是实现一个面向企业应用场景的通用区块链框架系统,能够作为企业级基础设施,为业务创新提供高效、灵活和安全的解决方案。 -### 2. 用户注册 +## 二、部署模型 +JD Chain 主要部署组件包括以下几种: -```java - // 创建服务代理; - BlockchainService service = serviceFactory.getBlockchainService(); - // 在本地定义注册账号的 TX; - TransactionTemplate txTemp = service.newTransaction(ledgerHash); - SignatureFunction signatureFunction = asymmetricCryptography.getSignatureFunction(CryptoAlgorithm.ED25519); - CryptoKeyPair cryptoKeyPair = signatureFunction.generateKeyPair(); - BlockchainKeyPair user = new BlockchainKeyPair(cryptoKeyPair.getPubKey(), cryptoKeyPair.getPrivKey()); - - txTemp.users().register(user.getIdentity()); +- 共识节点 - // TX 准备就绪; - PreparedTransaction prepTx = txTemp.prepare(); - // 使用私钥进行签名; - CryptoKeyPair keyPair = getSponsorKey(); - prepTx.sign(keyPair); + 共识节点即参与共识的节点,这是系统的核心组件,承担了运行共识协议、管理账本数据、运行智能合约的职责。 - // 提交交易; - prepTx.commit(); -``` + 一个区块链网络由多个共识节点组成,共识节点的数量范围由选择的共识协议决定。 + 共识节点和账本是两个不同的概念,共识节点是个物理上的概念,账本是个逻辑上的概念。JD Chain 是一个多账本区块链系统,一个共识节点上可以装载运行多个账本。账本是数据维度的独立管理单元。共识节点和账本的关系,就像关系数据库系统中,数据库服务器和数据库实例的关系。 -### 3. 数据账户注册 + 共识节点通常都部署在参与方的内部网络中,通过由网络管理员指定的安全的网络出口与其它的共识节点建立通讯连接。 + 共识节点在形态上是服务器中的一个处理进程,背后需要连接一个本地或者内网的NoSQL数据库系统作为账本的存储。当前版本,共识节点目前是单进程的,未来版本将实现多进程以及多服务器集群模式。 -```java - // 创建服务代理; - BlockchainService service = serviceFactory.getBlockchainService(); - // 在本地定义注册账号的 TX; - TransactionTemplate txTemp = service.newTransaction(ledgerHash); - SignatureFunction signatureFunction = asymmetricCryptography.getSignatureFunction(CryptoAlgorithm.ED25519); - CryptoKeyPair cryptoKeyPair = signatureFunction.generateKeyPair(); - BlockchainKeyPair dataAccount = new BlockchainKeyPair(cryptoKeyPair.getPubKey(), cryptoKeyPair.getPrivKey()); - - txTemp.dataAccounts().register(dataAccount.getIdentity()); - - // TX 准备就绪; - PreparedTransaction prepTx = txTemp.prepare(); - // 使用私钥进行签名; - CryptoKeyPair keyPair = getSponsorKey(); - prepTx.sign(keyPair); - - // 提交交易; - prepTx.commit(); -``` +- 网关节点 -### 4. 写入数据 + 网关节点是负责终端接入的节点,负责终端连接、协议转换、交易准入、本地密码运算、密钥管理等职责。 -```java - // 创建服务代理; - BlockchainService service = serviceFactory.getBlockchainService(); - - HashDigest ledgerHash = getLedgerHash(); - // 在本地定义注册账号的 TX; - TransactionTemplate txTemp = service.newTransaction(ledgerHash); - - // -------------------------------------- - // 将商品信息写入到指定的账户中; - // 对象将被序列化为 JSON 形式存储,并基于 JSON 结构建立查询索引; - String commodityDataAccount = "GGhhreGeasdfasfUUfehf9932lkae99ds66jf=="; - Commodity commodity1 = new Commodity(); - txTemp.dataAccount(commodityDataAccount).set("ASSET_CODE", commodity1.getCode().getBytes(), -1); - - // TX 准备就绪; - PreparedTransaction prepTx = txTemp.prepare(); - - String txHash = ByteArray.toBase64(prepTx.getHash().toBytes()); - // 使用私钥进行签名; - CryptoKeyPair keyPair = getSponsorKey(); - prepTx.sign(keyPair); - - // 提交交易; - prepTx.commit(); -``` + 网关节点是一种轻量节点,需要绑定一个特定参与方的密钥对,连接到一个或多个共识节点。 - -### 5. 查询数据 + 网关节点向共识节点的连接是需要通过认证的,绑定的参与方的密钥对必须事先已经注册到区块链账本中,且得到接入授权。 -> 注:详细的查询可参考模块sdk-samples中SDK_GateWay_Query_Test_相关测试用例 +- 终端 -```java - // 创建服务代理; - BlockchainService service = serviceFactory.getBlockchainService(); - - // 查询区块信息; - // 区块高度; - long ledgerNumber = service.getLedger(LEDGER_HASH).getLatestBlockHeight(); - // 最新区块; - LedgerBlock latestBlock = service.getBlock(LEDGER_HASH, ledgerNumber); - // 区块中的交易的数量; - long txCount = service.getTransactionCount(LEDGER_HASH, latestBlock.getHash()); - // 获取交易列表; - LedgerTransaction[] txList = service.getTransactions(LEDGER_HASH, ledgerNumber, 0, 100); - // 遍历交易列表 - for (LedgerTransaction ledgerTransaction : txList) { - TransactionContent txContent = ledgerTransaction.getTransactionContent(); - Operation[] operations = txContent.getOperations(); - if (operations != null && operations.length > 0) { - for (Operation operation : operations) { - operation = ClientOperationUtil.read(operation); - // 操作类型:数据账户注册操作 - if (operation instanceof DataAccountRegisterOperation) { - DataAccountRegisterOperation daro = (DataAccountRegisterOperation) operation; - BlockchainIdentity blockchainIdentity = daro.getAccountID(); - } - // 操作类型:用户注册操作 - else if (operation instanceof UserRegisterOperation) { - UserRegisterOperation uro = (UserRegisterOperation) operation; - BlockchainIdentity blockchainIdentity = uro.getUserID(); - } - // 操作类型:账本注册操作 - else if (operation instanceof LedgerInitOperation) { - - LedgerInitOperation ledgerInitOperation = (LedgerInitOperation)operation; - LedgerInitSetting ledgerInitSetting = ledgerInitOperation.getInitSetting(); - - ParticipantNode[] participantNodes = ledgerInitSetting.getConsensusParticipants(); - } - // 操作类型:合约发布操作 - else if (operation instanceof ContractCodeDeployOperation) { - ContractCodeDeployOperation ccdo = (ContractCodeDeployOperation) operation; - BlockchainIdentity blockchainIdentity = ccdo.getContractID(); - } - // 操作类型:合约执行操作 - else if (operation instanceof ContractEventSendOperation) { - ContractEventSendOperation ceso = (ContractEventSendOperation) operation; - } - // 操作类型:KV存储操作 - else if (operation instanceof DataAccountKVSetOperation) { - DataAccountKVSetOperation.KVWriteEntry[] kvWriteEntries = - ((DataAccountKVSetOperation) operation).getWriteSet(); - if (kvWriteEntries != null && kvWriteEntries.length > 0) { - for (DataAccountKVSetOperation.KVWriteEntry kvWriteEntry : kvWriteEntries) { - BytesValue bytesValue = kvWriteEntry.getValue(); - DataType dataType = bytesValue.getType(); - Object showVal = ClientOperationUtil.readValueByBytesValue(bytesValue); - System.out.println("writeSet.key=" + kvWriteEntry.getKey()); - System.out.println("writeSet.value=" + showVal); - System.out.println("writeSet.type=" + dataType); - System.out.println("writeSet.version=" + kvWriteEntry.getExpectedVersion()); - } - } - } - } - } - } - - // 根据交易的 hash 获得交易;注:客户端生成 PrepareTransaction 时得到交易hash; - HashDigest txHash = txList[0].getTransactionContent().getHash(); - Transaction tx = service.getTransactionByContentHash(LEDGER_HASH, txHash); - // 获取数据; - String commerceAccount = "GGhhreGeasdfasfUUfehf9932lkae99ds66jf=="; - String[] objKeys = new String[] { "x001", "x002" }; - KVDataEntry[] kvData = service.getDataEntries(LEDGER_HASH, commerceAccount, objKeys); - - long payloadVersion = kvData[0].getVersion(); - - // 获取数据账户下所有的KV列表 - KVDataEntry[] kvData = service.getDataEntries(ledgerHash, commerceAccount, 0, 100); - if (kvData != null && kvData.length > 0) { - for (KVDataEntry kvDatum : kvData) { - System.out.println("kvData.key=" + kvDatum.getKey()); - System.out.println("kvData.version=" + kvDatum.getVersion()); - System.out.println("kvData.type=" + kvDatum.getType()); - System.out.println("kvData.value=" + kvDatum.getValue()); - } - } -``` + 终端泛指可以提交交易的客户端,典型来说,包括人、自动化设备、链外的信息系统等。 + 终端只能通过网关节点来提交交易。终端提交的交易需要用体现该终端身份的私钥来签署,产生一份电子签名。随后当交易提交给网关节点时,网关节点需要在把交易提交到共识节点之前,对交易请求以网关节点绑定的私钥追加一项“节点签名”。 -### 6. 合约发布 +- 备份节点 -```java - - // 创建服务代理; - BlockchainService service = serviceFactory.getBlockchainService(); + 仅对账本数据提供备份,但不参与交易共识的节点。(注:目前版本中尚未实现,将在后续版本中提供) - // 在本地定义TX模板 - TransactionTemplate txTemp = service.newTransaction(ledgerHash); - // 合约内容读取 - byte[] contractBytes = FileUtils.readBytes(new File(CONTRACT_FILE)); +![](docs/images/deployment.jpg) - // 生成用户 - BlockchainIdentityData blockchainIdentity = new BlockchainIdentityData(getSponsorKey().getPubKey()); - // 发布合约 - txTemp.contracts().deploy(blockchainIdentity, contractBytes); +## 三、代码下载与编译 - // TX 准备就绪; - PreparedTransaction prepTx = txTemp.prepare(); + 1. 安装 Maven 环境 + JD Chain 当前版本以 Java 语言开发,需要安装配置 JVM 和 Maven,JDK 版本不低于1.8 。没有特殊的安装要求,请另行搜索安装方法,此处不赘述。 + + 2. 安装 Git 工具 + + 为了能够执行 git clone 命令获取代码仓库。没有特殊的安装要求,请另行搜索安装方法,此处不赘述。 + + 3. 编译过程 - // 使用私钥进行签名; - CryptoKeyPair keyPair = getSponsorKey(); + JD Chain 项目包括 3 个代码仓库 - prepTx.sign(keyPair); + - jdchain + - 这是当前仓库,也是核心仓库,包含了共识节点、网关节点、SDK等一切部署组件。依赖于 explorer 和 bftsmart 这两个仓库先进行编译安装; + + - explorer + - 这是区块链浏览器的前端Web页面的工程,需要编译成静态资源包,由网关节点集成到一起部署。 + - 地址:git@github.com:blockchain-jd-com/explorer.git - // 提交交易; - TransactionResponse transactionResponse = prepTx.commit(); + - bftsmart + - 这是bftsmart共识协议的工程,需要 - assertTrue(transactionResponse.isSuccess()); - // 打印合约地址 - System.out.println(blockchainIdentity.getAddress().toBase58()); +4. 命令操作 -``` +- 编译安装 explorer 到本地 maven 仓库; +```sh + $ git clone git@github.com:blockchain-jd-com/explorer.git explorer -### 7. 合约执行 + $ cd explorer -```java + $ git checkout master - // 创建服务代理; - BlockchainService service = serviceFactory.getBlockchainService(); + $ mvn clean install + +``` +- 编译安装 bftsmart 到本地 maven 仓库; + - 需要手动先安装一个第三方包,位于仓库根目录下 lib/core-0.1.4.jar +```sh + $ git clone git@github.com:blockchain-jd-com/bftsmart.git bftsmart - // 在本地定义TX模板 - TransactionTemplate txTemp = service.newTransaction(ledgerHash); + $ cd bftsmart - // 合约地址 - String contractAddressBase58 = ""; - - // 使用接口方式调用合约 - TransferContract transferContract = txTpl.contract(contractAddress, TransferContract.class); - - // 使用decode方式调用合约内部方法(create方法) - // 返回GenericValueHolder可通过get方法获取结果,但get方法需要在commit调用后执行 - GenericValueHolder result = ContractReturnValue.decode(transferContract.create(address, account, money)); - - PreparedTransaction ptx = txTpl.prepare(); + $ git checkout master - ptx.sign(adminKey); - - TransactionResponse transactionResponse = ptx.commit(); - - String cotractExecResult = result.get(); - - // TransactionResponse也提供了可供查询结果的接口 - OperationResult[] operationResults = transactionResponse.getOperationResults(); - - // 通过OperationResult获取结果 - for (int i = 0; i < operationResults.length; i++) { - OperationResult opResult = operationResults[i]; - System.out.printf("Operation[%s].result = %s \r\n", - opResult.getIndex(), BytesValueEncoding.decode(opResult.getResult())); - } + $ mvn install:install-file -Dfile=lib/core-0.1.4.jar -DgroupId=com.yahoo.ycsb -DartifactId=core -Dversion=0.1.4 -Dpackaging=jar + + $ mvn clean install +``` +- 编译 jdchain 工程; + - 当编译完成后,共识节点的安装包位于 "仓库根目录"/source/deployment/deployment-peer/target/jdchain-peer-1.0.1.RELEASE.zip + - 当编译完成后,网关节点的安装包位于 "仓库根目录"/source/deployment/deployment-gateway/target/jdchain-gateway-1.0.1.RELEASE.zip -``` \ No newline at end of file +```sh + $ git clone git@github.com:blockchain-jd-com/jdchain.git jdchain + + $ cd jdchain/source + + $ git checkout master + + $ mvn clean package + +``` diff --git a/docs/design.md b/docs/design.md new file mode 100644 index 00000000..7cea13d1 --- /dev/null +++ b/docs/design.md @@ -0,0 +1,630 @@ +[TOC] +#JD区块链 + + +[![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html) + + +------------------------------------------------------------------------ +### 版本修订历史 + + + + + + + + + + + + + + + + + + + + + + + + + +
版本号作 者修改日期备 注
0.0.6黄海泉2017-11-10 + 定义JD区块链项目的目标与关键能力;
+ 定义JD区块链的核心对象模型;
+ 定义“账户”的生成算法和“区块/交易/操作/账户”的关键属性;
+ 描述了编程接口的示例代码; +
0.0.7黄海泉2017-11-17 + 丰富了对“节点共识”、“节点分区”两项关键能力的详细描述; +
0.0.8黄海泉2018-07-17 + 增加部署图;增加智能合约开发的示例; +
+ +------------------------------------------------------------------------ + +## 一、概述 +JD Chain 的目标是实现一个面向企业应用场景的通用区块链框架系统,能够作为企业级基础设施,为业务创新提供高效、灵活和安全的解决方案。 + +区块链本质上是一种新的分布式架构,以密码学和分布式技术为核心,旨在实现无需借助“第三方” 就能在多个业务方之间进行安全、可信、直接的信息和价值交换。从点对点的信息和价值交换的角度看,区块链发挥了“协议”的作用。 + + +以下是 JD 区块链用以满足企业核心需求的关键能力,也是显著区别于其它区块链的重要特征: + + - 快速共识 + - 节点分区 + - 并行多账本 + - 大数据伸缩存储 + - 条件检索 + - 面向对象的合约代码编程模型 + - 节点快速部署 + - 多终端灵活接入 + - 分布式自治的账户权限管理模型 + +JD区块链对于关键能力的定义是建立在深入理解和抽象各种多样化需求的基础上的。 + + - 快速共识(Efficient Consensus) + 我们认为,“快速”不仅仅体现在“用更短时间”达成共识,还要体现在交易(Transaction)要得到可靠地执行。 + 需要在算法和实现层面做出保障,确保所有提交的合法的交易会被系统在一个“确定性”和“足够短”的时间之内被严格地执行,系统不主动作出随机性地丢弃(不包括系统故障因素)。注:POW类算法产生的链分叉处理是一种系统随机性地丢弃交易的行为。 + 从使用者的视角来看,这种能力就是区块链系统的“可靠性”,这对于企业、金融场景而言尤其重要。 + + - 节点分区(Peer Partition) + “分区”是一种分布式系统架构原则,通过将大范围目标按照某种相似特征分隔为一个个小范围目标,分别进行更高效地处理,这能从整体上提升整个系统的处理能力。 + 区块链系统也是一种分布式系统,沿用“分区”的思想这点来自以往的系统架构实践的经验,是有可能让区块链系统获得可媲美现有系统的处理能力。这种能力将可以无障碍地把区块链在应用于广泛的企业场景中。 + 在此,我们所说的“节点分区(Peer Partition)” 是共识过程中的物理通讯层面的分区,在共识过程中只有相关的物理节点才会建立通讯链路并复制和存储共识的状态数据。在一个区块链系统中,可以从节点全集中选择一个或多个节点子集,分别组成一个或多个节点分区(Peer Partition) + + - 并行多账本 + 账本(Ledger) + - 大数据伸缩存储 + - 条件检索 + - 面向对象的合约代码编程模型 + - 节点快速部署 + - 多终端灵活接入 + - 分布式自治的账户权限管理模型 + +## 二、对象模型 +JD区块链的核心对象包括: + + - 账本(Ledger) + 一份账本(Ledger)实质上是由两部分组成: + - 一组以“账户(Account)”表示的状态数据; + - 以“区块的链条(Block-chain)”表示的状态数据的变更历史; + + JD区块链的“账本(Ledger)”是一个最顶层的管理数据的逻辑单元。在一个区块链节点构成的共识网络中,可以维护多套并行的“账本(Ledger)”。 + + - 账户(Account) + - 在JD区块链中,账户(Account)被设计为包含“身份(Identity)”、“权限(Privilege)”、“状态(State)”、“控制规则(Control Rule)” 这4种属性的对象。 + - 其中,“身份(Identity)”、“权限(Privilege)”这两种属性是一个面向应用的系统的基本功能; + - “状态(State)”、“控制规则(Control Rule)” 这两种属性这是一个具备“图灵完备性”的系统的基本属性,使系统可以处理任意多样化的任务; + - 在这里,“身份(Identity)”是一个抽象表述,其形式上就是一个“区块链地址(Address)”和相应的“非对称秘钥钥对(KeyPair)”/证书。 简单来说,一个“账户(Account)”就是一个区块链地址、公私钥对以及一套的权限配置. + - 一个“账户(Account)”的“状态(State)”、“控制规则(Control Rule)” 这2种属性则是可选的,这提供了不同于其它区块链的账户/合约的一种新的使用方式,即一种数据和逻辑分离的应用设计思路(这在传统的web应用编程中被称为“贫血模型”)。同时,也意味着一个特定“账户”中的数据状态是可以跨账户/合约代码进行共享访问的。 + - 从应用的视角来看,对“账户”的使用方式可以有几种模式: + - 用于表示业务角色/用户: + - 用于表示业务数据:仅有“状态(State)”没有“控制规则(Control Rule)”的账户,可称为数据账户,就有些类似于关系数据库中的“表(Table)”的作用,不同业务类别的数据则使用不同的账户来管理。 + - 用于表示业务逻辑:仅有“控制规则(Control Rule)”没有“状态(State)”的账户,即所谓的合约账户,可表示某种用于处理数据的通用逻辑,可被授权访问特定的数据账户。 + + - 区块(Block) + 在概念上,与通常所说的区块的概念是一致的。 + 在实现上,一个区块的主要内容是包含了某一时刻提交的所有交易以及交易执行之后的状态数据的快照的hash,而不存储具体的交易操作和状态数据。 + + - 交易(Transaction) + 在概念上,与通常所说的Transaction的概念是一致的,表示一组需要原子执行的操作。 + + - 操作(Operation) + 操作是针对“账户(Account)”的“写”指令,包括以下几类: + - 注册账户 + - 更新账户的状态数据 + - 更新账户的合约代码定义 + - 调用账户的合约代码 + + - 合约代码(Contract Code) + 合约代码是一段用于对“账户(Account)”的状态数据执行操作的代码程序。 + +## 三、部署模型 + + 1. 总体部署 +![deployment architecture](docs/images/deployment.png) + + 2. 系统组件 + - 共识节点 + - 复制节点 + - SDK + - 网关 + - 终端 + + 3. 配置和管理 + +## 四、账本结构 + +### 1. 账户生成算法 + + - 公私钥对 + - 算法:默认ED25519 ,支持 SM2、CA; + - 公钥存储格式:版本 + 算法标识 + 公私钥原始内容 + 校验码 + - 字符编码方式:Base64 + - 地址 + - 算法 + - 给定公钥 P (或由私钥 R 算出公钥 P) + - 中间值 H1 = SHA256( P ) + - 中间值 H2 = RIPEMD-160( H1 ) + - 中间值 X = 版本 + 公钥算法标识 + H2 + - 校验和 C = 前4字节( SHA256( SHA256( X )) ) + - 地址 Address = Base58( X + C ) + +### 2. 区块 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
属性名称说明
BlockHash当前区块 hash对区块中除此之外的其它所有属性一起进行哈希运算生成
BlockVersion 区块版本表示区块-交易的属性结构的版本号;
PreviousBlockHash上一区块 hash
BlockNumber区块高度区块高度是一个区块在链中的序号;
创始区块的高度为 0,每个新区块的高度依次递增;
AccountHash账户树hash账户的 Merkle Tree 根的 hash
AccountCount账户数量区块生成时账本中的全部账户的总数
TxTreeHash交易树 hash本区块的交易集合的 Merkle Tree 根的 hash
TxCount区块交易数量当前区块包含的交易的数量;
TxTotalCount账本交易总数截止到当前区块为止当前账本的所有交易的总数量;
CloseTime区块关闭时间生成当前区块时的区块链节点的网络时间;
+ +### 3. 交易 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
属性名称说明
Hash当前交易 hash对交易中除此之外的其它所有属性一起进行哈希运算生成
LedgerNumber区块高度交易被包含的区块高度
BlobHash交易数据块hash交易的数据块是交易的原始数据,包含客户端提交的交易的全部操作及其参数; +
交易的参与者需要使用私钥对交易数据块进行签名;
Operations操作列表交易的操作列表;
Sponsor交易发起人交易发起人的账户地址;
SequenceNumber交易序号交易序号记录了一个特定的发起人的交易的顺序号,等同于该发起人历史上发起的交易的总数;
Signatures签名列表由交易发起人和其它参与者对交易数据块的签名的列表;
Result交易结果0 - 表示执行成功;非零表示执行失败;
注:最终的账本只包含成功的交易;
+ +### 4. 操作 + + + + + + + + + + + + + + + + + + + + + +
属性名称说明
OpType操作类型 + 一级操作类型包括:注册账户、配置权限、写入键值数据、写入对象数据、定义合约代码、调用合约代码;
+ “键值数据写入”操作的子操作类型包括:填入键值、移除键、数值增加、数值减少;
+ “对象数据写入”操作的自操作类型包括:插入对象、更新对象、移除对象; +
Args参数列表与操作类型相对应的参数列表;
SubOps子操作列表“子操作”是“操作”的递归定义,由“操作类型”来标识;
+ +### 5. 账户 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
属性名称说明
Address地址账户的唯一标识
RegNumber注册号账户被注册到区块链的区块高度;
TxSquenceNumber交易序列号由账户发起的交易的序列号,初始为 0,账户每发起一个交易则增加1;
ModelVersion账户模型版本表示构成一个账户结构的属性模型的程序版本号;
Version账户版本初始为 0,对账户的每一次变更(包括对权限设置、状态和合约代码的变更)都会使账户状态版本增加 1 ;
注:交易序号的改变不会导致账户版本的增加;
PrivilegeHash权限 hash权限树的根hash;
PrivilegeVersion权限版本初始为 0, 每次对权限的变更都导致版本号加 1;
StateType状态类型账户的状态类型有3种:空类型(NIL);键值类型;对象类型;
StateVersion状态版本账户的状态类型有3种:空类型(NIL);键值类型;对象类型;
StateHash状态哈希数据状态的 merkle tree 的根hash;
CodeHash合约代码哈希由“账户地址+合约代码版本号+合约代码内容”生成的哈希;
CodeVersion代码版本初始为 0,每次对代码的变更都使版本加 1 ;
+ +## 五、编程接口 + +### 1. 服务连接 + + +```java + //创建服务代理 + public static BlockchainKeyPair CLIENT_CERT = BlockchainKeyGenerator.getInstance().generate(); + final String GATEWAY_IP = "127.0.0.1"; + final int GATEWAY_PORT = 80; + final boolean SECURE = false; + GatewayServiceFactory serviceFactory = GatewayServiceFactory.connect(GATEWAY_IP, GATEWAY_PORT, SECURE, + CLIENT_CERT); + // 创建服务代理; + BlockchainService service = serviceFactory.getBlockchainService(); +``` + + +### 2. 用户注册 + + +```java + // 创建服务代理; + BlockchainService service = serviceFactory.getBlockchainService(); + // 在本地定义注册账号的 TX; + TransactionTemplate txTemp = service.newTransaction(ledgerHash); + SignatureFunction signatureFunction = asymmetricCryptography.getSignatureFunction(CryptoAlgorithm.ED25519); + CryptoKeyPair cryptoKeyPair = signatureFunction.generateKeyPair(); + BlockchainKeyPair user = new BlockchainKeyPair(cryptoKeyPair.getPubKey(), cryptoKeyPair.getPrivKey()); + + txTemp.users().register(user.getIdentity()); + + // TX 准备就绪; + PreparedTransaction prepTx = txTemp.prepare(); + // 使用私钥进行签名; + CryptoKeyPair keyPair = getSponsorKey(); + prepTx.sign(keyPair); + + // 提交交易; + prepTx.commit(); +``` + + +### 3. 数据账户注册 + + +```java + // 创建服务代理; + BlockchainService service = serviceFactory.getBlockchainService(); + // 在本地定义注册账号的 TX; + TransactionTemplate txTemp = service.newTransaction(ledgerHash); + SignatureFunction signatureFunction = asymmetricCryptography.getSignatureFunction(CryptoAlgorithm.ED25519); + CryptoKeyPair cryptoKeyPair = signatureFunction.generateKeyPair(); + BlockchainKeyPair dataAccount = new BlockchainKeyPair(cryptoKeyPair.getPubKey(), cryptoKeyPair.getPrivKey()); + + txTemp.dataAccounts().register(dataAccount.getIdentity()); + + // TX 准备就绪; + PreparedTransaction prepTx = txTemp.prepare(); + // 使用私钥进行签名; + CryptoKeyPair keyPair = getSponsorKey(); + prepTx.sign(keyPair); + + // 提交交易; + prepTx.commit(); +``` + +### 4. 写入数据 + +```java + // 创建服务代理; + BlockchainService service = serviceFactory.getBlockchainService(); + + HashDigest ledgerHash = getLedgerHash(); + // 在本地定义注册账号的 TX; + TransactionTemplate txTemp = service.newTransaction(ledgerHash); + + // -------------------------------------- + // 将商品信息写入到指定的账户中; + // 对象将被序列化为 JSON 形式存储,并基于 JSON 结构建立查询索引; + String commodityDataAccount = "GGhhreGeasdfasfUUfehf9932lkae99ds66jf=="; + Commodity commodity1 = new Commodity(); + txTemp.dataAccount(commodityDataAccount).set("ASSET_CODE", commodity1.getCode().getBytes(), -1); + + // TX 准备就绪; + PreparedTransaction prepTx = txTemp.prepare(); + + String txHash = ByteArray.toBase64(prepTx.getHash().toBytes()); + // 使用私钥进行签名; + CryptoKeyPair keyPair = getSponsorKey(); + prepTx.sign(keyPair); + + // 提交交易; + prepTx.commit(); +``` + + +### 5. 查询数据 + +> 注:详细的查询可参考模块sdk-samples中SDK_GateWay_Query_Test_相关测试用例 + +```java + // 创建服务代理; + BlockchainService service = serviceFactory.getBlockchainService(); + + // 查询区块信息; + // 区块高度; + long ledgerNumber = service.getLedger(LEDGER_HASH).getLatestBlockHeight(); + // 最新区块; + LedgerBlock latestBlock = service.getBlock(LEDGER_HASH, ledgerNumber); + // 区块中的交易的数量; + long txCount = service.getTransactionCount(LEDGER_HASH, latestBlock.getHash()); + // 获取交易列表; + LedgerTransaction[] txList = service.getTransactions(LEDGER_HASH, ledgerNumber, 0, 100); + // 遍历交易列表 + for (LedgerTransaction ledgerTransaction : txList) { + TransactionContent txContent = ledgerTransaction.getTransactionContent(); + Operation[] operations = txContent.getOperations(); + if (operations != null && operations.length > 0) { + for (Operation operation : operations) { + operation = ClientOperationUtil.read(operation); + // 操作类型:数据账户注册操作 + if (operation instanceof DataAccountRegisterOperation) { + DataAccountRegisterOperation daro = (DataAccountRegisterOperation) operation; + BlockchainIdentity blockchainIdentity = daro.getAccountID(); + } + // 操作类型:用户注册操作 + else if (operation instanceof UserRegisterOperation) { + UserRegisterOperation uro = (UserRegisterOperation) operation; + BlockchainIdentity blockchainIdentity = uro.getUserID(); + } + // 操作类型:账本注册操作 + else if (operation instanceof LedgerInitOperation) { + + LedgerInitOperation ledgerInitOperation = (LedgerInitOperation)operation; + LedgerInitSetting ledgerInitSetting = ledgerInitOperation.getInitSetting(); + + ParticipantNode[] participantNodes = ledgerInitSetting.getConsensusParticipants(); + } + // 操作类型:合约发布操作 + else if (operation instanceof ContractCodeDeployOperation) { + ContractCodeDeployOperation ccdo = (ContractCodeDeployOperation) operation; + BlockchainIdentity blockchainIdentity = ccdo.getContractID(); + } + // 操作类型:合约执行操作 + else if (operation instanceof ContractEventSendOperation) { + ContractEventSendOperation ceso = (ContractEventSendOperation) operation; + } + // 操作类型:KV存储操作 + else if (operation instanceof DataAccountKVSetOperation) { + DataAccountKVSetOperation.KVWriteEntry[] kvWriteEntries = + ((DataAccountKVSetOperation) operation).getWriteSet(); + if (kvWriteEntries != null && kvWriteEntries.length > 0) { + for (DataAccountKVSetOperation.KVWriteEntry kvWriteEntry : kvWriteEntries) { + BytesValue bytesValue = kvWriteEntry.getValue(); + DataType dataType = bytesValue.getType(); + Object showVal = ClientOperationUtil.readValueByBytesValue(bytesValue); + System.out.println("writeSet.key=" + kvWriteEntry.getKey()); + System.out.println("writeSet.value=" + showVal); + System.out.println("writeSet.type=" + dataType); + System.out.println("writeSet.version=" + kvWriteEntry.getExpectedVersion()); + } + } + } + } + } + } + + // 根据交易的 hash 获得交易;注:客户端生成 PrepareTransaction 时得到交易hash; + HashDigest txHash = txList[0].getTransactionContent().getHash(); + Transaction tx = service.getTransactionByContentHash(LEDGER_HASH, txHash); + // 获取数据; + String commerceAccount = "GGhhreGeasdfasfUUfehf9932lkae99ds66jf=="; + String[] objKeys = new String[] { "x001", "x002" }; + KVDataEntry[] kvData = service.getDataEntries(LEDGER_HASH, commerceAccount, objKeys); + + long payloadVersion = kvData[0].getVersion(); + + // 获取数据账户下所有的KV列表 + KVDataEntry[] kvData = service.getDataEntries(ledgerHash, commerceAccount, 0, 100); + if (kvData != null && kvData.length > 0) { + for (KVDataEntry kvDatum : kvData) { + System.out.println("kvData.key=" + kvDatum.getKey()); + System.out.println("kvData.version=" + kvDatum.getVersion()); + System.out.println("kvData.type=" + kvDatum.getType()); + System.out.println("kvData.value=" + kvDatum.getValue()); + } + } +``` + + +### 6. 合约发布 + + +```java + + // 创建服务代理; + BlockchainService service = serviceFactory.getBlockchainService(); + + // 在本地定义TX模板 + TransactionTemplate txTemp = service.newTransaction(ledgerHash); + + // 合约内容读取 + byte[] contractBytes = FileUtils.readBytes(new File(CONTRACT_FILE)); + + // 生成用户 + BlockchainIdentityData blockchainIdentity = new BlockchainIdentityData(getSponsorKey().getPubKey()); + + // 发布合约 + txTemp.contracts().deploy(blockchainIdentity, contractBytes); + + // TX 准备就绪; + PreparedTransaction prepTx = txTemp.prepare(); + + // 使用私钥进行签名; + CryptoKeyPair keyPair = getSponsorKey(); + + prepTx.sign(keyPair); + + // 提交交易; + TransactionResponse transactionResponse = prepTx.commit(); + + assertTrue(transactionResponse.isSuccess()); + + // 打印合约地址 + System.out.println(blockchainIdentity.getAddress().toBase58()); + +``` + +### 7. 合约执行 + +```java + + // 创建服务代理; + BlockchainService service = serviceFactory.getBlockchainService(); + + // 在本地定义TX模板 + TransactionTemplate txTemp = service.newTransaction(ledgerHash); + + // 合约地址 + String contractAddressBase58 = ""; + + // 使用接口方式调用合约 + TransferContract transferContract = txTpl.contract(contractAddress, TransferContract.class); + + // 使用decode方式调用合约内部方法(create方法) + // 返回GenericValueHolder可通过get方法获取结果,但get方法需要在commit调用后执行 + GenericValueHolder result = ContractReturnValue.decode(transferContract.create(address, account, money)); + + PreparedTransaction ptx = txTpl.prepare(); + + ptx.sign(adminKey); + + TransactionResponse transactionResponse = ptx.commit(); + + String cotractExecResult = result.get(); + + // TransactionResponse也提供了可供查询结果的接口 + OperationResult[] operationResults = transactionResponse.getOperationResults(); + + // 通过OperationResult获取结果 + for (int i = 0; i < operationResults.length; i++) { + OperationResult opResult = operationResults[i]; + System.out.printf("Operation[%s].result = %s \r\n", + opResult.getIndex(), BytesValueEncoding.decode(opResult.getResult())); + } + + +``` \ No newline at end of file diff --git a/docs/images/deployment.jpg b/docs/images/deployment.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aec66f03d653931de983a14f49dc902983121449 GIT binary patch literal 131011 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 z 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 literal 0 KcmV+b0RR6000031