使用区块链部署资产转移应用程序  

在 Hyperledger Fabric V1.0 上部署资产转移应用程序

| By Raheel Zubairy, Nick Gaski

Description

通过创建一个支持在多个所有者之间转移弹珠的资产转移应用程序,学习链代码和 Hyperledger Fabric 网络中的应用程序开发的基础知识。

概览

在本 Code Pattern 中,将学习如何从 Hyperledger Fabric V0.6 迁移到 V1.0。您将构建的弹珠应用程序演示了一种使用 Hyperledger Fabric 在许多弹珠所有者之间转移弹珠的方法。您将使用 Node.js 和 Go 编程语言创建该应用程序;该应用程序的后端是使用 Go 编写的,它在一个区块链网络中运行。链代码将创建一颗弹珠,并将它存储在该链代码的管理状态中。该链代码本身可以将数据作为字符串存储在键/值对设置中。您将“字符串化” JSON 对象,以便存储更复杂的结构。

一颗弹珠的属性如下:

  • ID(一个将用作键的唯一字符串)
  • 颜色(string,CSS 颜色名称)
  • size (int, size in mm)
  • 所有者 (string)

您将创建一个基于 Web 的用户界面,它可以设置这些属性值并将它们存储在区块链中。这颗弹珠在区块链存储(或账本)中创建为键值对。键为弹珠 ID,值为一个包含该弹珠的属性的 JSON 字符串。要与链代码进行交互,将要使用 gRPC 协议与网络上的一个节点建立连接。gRPC 协议的细节由 Hyperledger Fabric Client SDK 处理。

  1. 管理员通过浏览器与我们的 Node.js 应用程序弹珠进行交互。
  2. 客户端 JavaScript 代码打开一个与后端 Node.js 应用程序进行通信的 Websocket,从浏览器向该应用程序发送指令。
  3. 该提案访问账本来模拟一次交易。这个提案由 Marbles(使用 SDK)构建,然后发送到一个区块链节点。
  4. 如果没有问题,背书节点(节点上的进程)将会对交易进行背书(或签署)。
  5. SDK 收集所有已签署的提案,如果策略得到实施,则将交易和已签署的背书文件发送给共识节点。共识节点对收到的交易进行排序,创建一个区块,并将它交付给合适的节点。
  6. 该节点会验证区块,将它写入自己的账本。该交易现在已经生效,所有后续读取都会反映此更改。

相关博客

相关链接

致谢:

感谢张风岗对此 Code Pattern 的翻译内容的审核,并提供了宝贵的反馈意见。

IBM Blockchain

快速了解 IBM 的区块链技术发展方向,快速掌握实践经验。