小言_互联网的博客

从零学本体dApp开发(2): 如何用本体客户端启动节点和管理钱包?

382人阅读  评论(0)

原创 | 工匠 (来自本体社区的技术人员)
原文 |力场圈子

写在前面
最近在利用业余时间学习本体的开发。我打算把自己学习的过程记录下来,一方面便于自己输了学到的东西,另一方面希望可以通过笔记的共享,能使本体后来的开发者少走弯路。

由于是初学者,学习本体开发的过程中遇到了很多问题,在此,特别感谢本体社区的各位老师(宏雷、楚笙、Mickey、雪飞的逆袭、Andy季等)耐心地为我解答各种各样的问题,本体有你们,真好!

学习本篇的目的:

对于普通用户接触本体区块链时用的最多的就是转账ONT和ONG,转账是通过钱包的操作界面来完成的,这些操作的背后,就是底层都是使用了本体客户端的一些命令去实现的,比如转账用到的命令就是:

     ./ontology asset transfer --from=<address|index|label> --to=<address|index|label> --amount=XXX --asset=ont

from后面是转账源账户,to后面是转账目的账户,amount后面是转账数量

所以作为一名开发人员,学习底层的操作逻辑是非常重要的,即本体客户端如何使用。

上一篇提到本体客户端的功能非常强大,主要包括有:

  • 运行和管理全节点

  • 管理钱包帐户

  • 管理原生资产

  • 管理区块数据

  • 显示区块链信息

  • 部署和调用智能合约

  • 构建、签署和发送交易

关于本体客户端,官方有非常详细的文档,其内容如下图所示,链接在此。我们主要根据这个文档一步步去操作,就能理解了。

下面我们就根据每个功能块来逐一操作。

1、启动和管理Ontology节点

Ontology cli有很多启动参数,用于配置很管理Ontology节点的一些行为。如果不带任何参数启动Ontology cli时,默认会作为一个同步节点接入Ontology的主网。

使用./ontology -help 可以查看到Ontology cli节点支持的所有启动参数。

本体的区块链分三种:

主网 :就是我们通常所说的本体主网,在2018年6月上线的,市面上流通ONT和ONG就在这个网络。

测试网:用于开发测试的网络,行为跟主网是一模一样的。

私有链:只有一个节点,开发者用的最多的就是这种,这样方便本体地调试。

我们运行客户端时,本身的机器就成了节点,本体节点分两种,一种是记账节点(负责记账,享受ONG奖励),另一种是同步节点(只同步区块链中的区块信息),所以我们运行客户端后就是同步节点。

1.1 连接到主网,成为主网节点 ,成为主网节点:

运行命令:./ontology,如下,看到的很多打印出来的信息就是在下载区块链信息:

1.2 连接到测试网,成为测试网节点:

运行命令:

                       ./ontology  --networkid 2            

后面的参数networkid 2 值得就是测试网,主网的id是1。

1.3 连接到私有连,成为私有连节点:

运行命令:./ontology --networkid 3 或 ./ontology --testmode,如下图:


这里报错了,可以看出是找不到钱包文件,需要注意的是:第一次启动测试模式之前,需要创建钱包文件,

运行命令:

      ./ontology account add -d


这里要求设置密码,我们最好设置6位以上的密码,后面运行智能合约如果这个密码小于6位会出错,输入两次密码后,钱包就创建成功,如下:


我们可以在ontio的目录下看到钱包文件,如下图:

这里我有一个疑问:钱包的私钥在哪里?后来得到社区大牛的解释说,私钥就加密后存在这个.dat的钱包文件里。

2、钱包管理

钱包管理命令可以用来添加、查看、修改、删除、导入账户等功能。 使用 ./ontology account --help 命令可以查看钱包管理命令的帮助信息。

2.1 添加账户

每个钱包都一个默认账户,一般情况下是第一个添加的账户。默认账户不能被删除,可以通过./ontology account set 命令来修改默认账户。

我们先通过./ontology account list命令来查看这个默认账户,如下图,Index:就是默认账户,

然后我们通过./ontology account add --default命令来添加账号,如下图:

2.2 查看账户

我们通过./ontology account list命令来查看新建的账户,如下图,我们看到了Index2,说明创建成功了。

其中,Index 为账户在钱包中的索引,索引从1开始,Addres 为账户地址,Label 为账户的标签,default表示当前账户是默认账户。 在Ontology cli中,可以通过Index、Address或非空的Label来查找账户。

2.3 修改账户

修改账户就是修改账户相关的信息,比如修改账户标签,修改账户密码,命令是:

./ontology account set --change-passwd <address|index|label>

执行过程是先输入原密码,然后输入两次新密码,如下图:

可以看到修改密码成功了,后面的“2”表示修改Idenx为2的账户的密码

2.4 删除账户

对于钱包中不需要的账户,可以删除。删除账户后无法恢复,所以请谨慎操作。注意:默认账户无法被删除。

./ontology account del <address|index|label>

执行过程过下:

可以看到删除Idenx位2的账户成功了。

2.5 导入账户

导入账户命令可以把另一个钱包中的账户导入到当前的钱包中。

./ontology account import -s=./source_wallet.dat

目前我们只有一个钱包,所以需要新建另外一个新钱包,因为创建钱包时产生的.dat钱包文件都是wallet.dat,所以旧的钱包文件会被覆盖掉,我们搜先要把原来的钱包重命名,执行命令:

            mv wallet.dat source_wallet.dat

然后通过 ontology account add -d重新生成一个钱包,

现在就可以把旧钱包的账户导入新钱包了,执行过程如下:


可以看到成功导入了一个账户。在查看下新钱包是否有两个账户,

如上图所示,有两个账户,说如导入账户成功了。


转载:https://blog.csdn.net/ontologycoding/article/details/101017954
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场