Skip to content

开发 应用接入区块链概述

linj edited this page Aug 31, 2021 · 4 revisions

应用接入区块链概述

  1. 在项目规划阶段, 需要确定在哪条链上, 运行项目. 可供选择有
    1. 资产链
    2. 资产链的平行
    3. 根据资产链的代码, 自行搭建区块链
  2. 在项目设计阶段, 根据项目需求需要确定项目需要开发智能合约
  3. 在实现上, 需要确定和链的交互形式
    1. 直接和区块链接口进行交互,
    2. 通过中间模块(如 存证服务), 来实现对应的功能.

链的选择

资产链作为公链, 链上信息公开, 具有公信力, 不适合具有下面特点的应用

  1. 数据有隐私需求的(在公链上加密, 不如在联盟链上通过控制访问来实现)
  2. 需要大量计算的(可以将智能合约发布在资产链的平行链上)

资产链的平行链, 对合适在公链上展开的应用, 有以下特点的可以选择资产链的平行链

  1. 需要大量链上计算
  2. 业务独立, 将资产链的平行链作为业务子链使用

资产链独立部署使用, 适合于

  1. 数据隐私需求
  2. 对数据访问需要有严格控制的需求

文档相关

  1. 资产链节点加入 https://github.com/assetcloud/AssetChain/wiki/%E5%88%9B%E5%BB%BA%E8%8A%82%E7%82%B9
  2. 资产链的平行链部署 https://github.com/assetcloud/AssetChain/wiki/%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2-%E5%B9%B3%E8%A1%8C%E9%93%BE%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA
  3. 资产链独立部署使用 https://github.com/assetcloud/AssetChain/wiki/%E5%88%9B%E5%BB%BA%E8%8A%82%E7%82%B9

开发智能合约

对智能合约的开发, 资产云提供了 原生合约开发和evm合约开发两种形式.

https://github.com/assetcloud/AssetChain/wiki/%E5%BC%80%E5%8F%91-dapp%E5%BC%80%E5%8F%91%E4%BB%8B%E7%BB%8D

evm合约开发

  1. 使用solidity开发
  2. 部署 参考文档: https://github.com/assetcloud/AssetChain/wiki/%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2-%E9%83%A8%E7%BD%B2%E8%B0%83%E7%94%A8EVM%E5%90%88%E7%BA%A6

原生合约开发

  1. 文档 https://github.com/assetcloud/AssetChain/wiki/%E5%BC%80%E5%8F%91-Go%E8%AF%AD%E8%A8%80DApp%E5%BC%80%E5%8F%91

和链的交互

文档

  1. 直接调用区块链接口: (多个描述区块链接口的链接), 团队需要一定开发能力
    1. https://github.com/assetcloud/AssetChain/wiki/%E6%8E%A5%E5%8F%A3%E4%BB%8B%E7%BB%8D--%E6%8E%A5%E5%8F%A3%E7%BA%A6%E5%AE%9A
    2. 区块链写入接口是异步的, 需要应用自行判断是否写入成功. 区块链下去原理和流程 https://github.com/assetcloud/AssetChain/wiki/%E7%B3%BB%E7%BB%9F%E4%BB%8B%E7%BB%8D--%E4%BA%A4%E6%98%93%E5%A4%84%E7%90%86
  2. 使用中间层服务: (需要提出需求)
    1. 现有 存证服务.
    2. 后续会退出更多通用的服务.