区块链开发之Corda训练营笔记13:部署节点

视频地址:https://www.bilibili.com/video/av67440579/?p=13的

1、本节目标

我们将在本机构建一个含有三个节点、一个公证方的demo的corda网络

在我们工程项目的gradle.builde文件中含有部署的命令:

task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
    nodeDefaults {
        projectCordapp { deploy = true }
    }
    node {
        name "O=Notary,L=London,C=GB"
        notary = [validating: false]
        p2pPort 10000
        cordapps = []
        rpcSettings {
            address("localhost:10001")
            adminAddress("localhost:10002")
        }
    }
    node {
        name "O=PartyA,L=London,C=GB"
        p2pPort 10003
        rpcSettings {
            address("localhost:10004")
            adminAddress("localhost:10005")
        }
        rpcUsers = [[user: "user1", password: "test", permissions: ["ALL"]]]
    }
    node {
        name "O=PartyB,L=New York,C=US"
        p2pPort 10006
        rpcSettings {
            address("localhost:10007")
            adminAddress("localhost:10008")
        }
        rpcUsers = [[user: "user1", password: "test", permissions: ["ALL"]]]
    }
    node {
        name "O=PartyC,L=Lagos,C=NG"
        p2pPort 10009
        rpcSettings {
            address("localhost:10010")
            adminAddress("localhost:10011")
        }
        rpcUsers = [[user: "user1", password: "test", permissions: ["ALL"]]]
    }
}

2、具体实施

要做的事情:

  1. 首先建立测试网络中的节点
  2. 启动节点
  3. 通过partyA向patyB发行债券节点
  4. 查看三个节点的资料库,看能不能看到这个state

2.1 部署&测试节点

windows下部署&测试节点的的命令如下:

gradle.bat deployNodes
build\nodes\runnodes.bat

Linux/macOS下部署&测试节点的命令如下:

./gradlew deployNodes
build/nodes/runnodes

请耐心等待,我建立四个节点大概花了58s

如果执行第二条命令的时候,出现了报错,很可能是未安装xterm,请在ubuntu18.04下执行:

sudo apt install xterm


2.2 发布债券

在PartyA下执行如下命令向PartyB发布数量为99的债券:

flow start IOUIssueFlow owner: PartyB, amount: 99

这里出现了这样的报错:

2019-09-15 11-14-31 的屏幕截图

需要在IOUState.class中补上一个注释:

@BelongsToContract(IOUContract.class)
public class IOUState implements ContractState {

2.3 查看资料库

在PartyA或者PartyB下执行:

run vaultQuery contractStateType: bootcamp.IOUState

他们一定会拥有IOUState,但是,PartyC中没有任何有关于IOUState的细节,这就是“仅需要知道”(实话实话,我觉得这是一个很大的缺陷)

然后notrary中保存的只有哈希,它也不会知道交易的具体细节,只是为了保证双花。

至此,bootcamp完全结束,撒花结束~

3、总结

Corda是一个私有分布式账本系统:

  • 节点具有身份证明
  • 提供分布式的数据存储模型
  • 提供隐私的p2p通信,因为所有的通信都会被加密

4、联络方式

  • 技术文档
    • docs.corda.net
    • docs.cncorda.com(中文)
  • 社区论坛:
    • Stack Overflow: stackoverflow.com/questions/tagged/corda
  • Slack交流群:
    • cordaledger:slack.corda.net

至此,corda撒花完结!!!~~~~~

转载于:https://www.cnblogs.com/huangming-zzz/p/11521479.html

Corda: 分布式账本 由恒生研究院旗下区 块链技术社51chain真诚翻译 原著 :麦克 . 赫恩 2016年 11月 29日 一种 具有 节点间 最小 信任机制的 信任机制的 无中心数据库技术 中心数据库技术 中心数据库技术 ,允 许创建一个 全球 的分布式账本。 这样的 账本在金融、 贸易账本在金融、 贸易账本在金融、 贸易账本在金融、 贸易账本在金融、 贸易账本在金融、 贸易账本在金融、 贸易账本在金融、 贸易账本在金融、 贸易供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 供应链跟踪和更多领域都有许用场合。我们提交的 Corda,是一种去中心的全球数据库技术,它详细描述了如何 是一种去中心的全球数据库技术,它详细描述了如何 是一种去中心的全球数据库技术,它详细描述了如何 是一种去中心的全球数据库技术,它详细描述了如何 是一种去中心的全球数据库技术,它详细描述了如何 是一种去中心的全球数据库技术,它详细描述了如何 是一种去中心的全球数据库技术,它详细描述了如何 是一种去中心的全球数据库技术,它详细描述了如何 实现一个去中心的应用开发平台目标。 在《 Corda:介绍》 一文中,我们 一文中,我们 阐述 了它的高层描阐述 了它的高层描阐述 了它的高层描阐述 了它的高层描,并提供详细的技术讨论。 并提供详细的技术讨论。 并提供详细的技术讨论。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值