-
Notifications
You must be signed in to change notification settings - Fork 24
Howto Become a Mediator.cn
本文档演示在PalletOne区块链中,如何从一个普通账户成为mediator,大概需要如下3步:
- 创建一个账户,以及准备足够的ptn代币;
- 申请成为一个mediator;
- 缴纳成为mediator的保证金;
注:确保本节点为全节点运行,并且数据已经同步完成。可在console中通过一下命令查看数据是否同步完成:
> dag.isSynced()
或者查询本地节点高度,和主网高度进行对比:
> dag.headUnitNum
要成为PalletOne主网的Mediator记账节点,至少需要以下的软硬件配置要求:
- 2核CPU
- 8GB内存
- 200G硬盘
- 5M带宽
- Ubuntu 16.04或者CentOS 7.2以上
参考阿里云Docker安装文档 安装docker,并在安装完成后将当前用户加入到docker组。 重新登录,运行:
docker ps
如果没有抛出任何异常,则说明docker安装成功。
下载最新版的gptn程序链接,并解压
$ cd mainnet
$ nohup ./gptn &
连接上 console 命令行钱包:
$ ./gptn attach
- 在console中创建账户:
> personal.newAccount()
请牢记自己账户的密码,并保存好keystore,最好在安全的地方做个备份。
- 关于如何获取ptn代币,请咨询项目方;获取ptn代币后,请查询账户余额是否足够:
> wallet.getBalance("P1xxx")
- 获取mediator账户地址对应的公钥,在console中:
> personal.getPublicKey("P1xxx")
-
准备一个新的地址(公私钥)作为mediator的奖励地址,最好使用Palletone钱包的地址。
-
准备好mediator群签名所需要的初始公私钥,在console中:
> mediator.dumpInitDKS()
请牢记以上公私钥,以备后用,尤其是群签名私钥不要泄露给他人,最好在安全的地方做个备份。
- 接下来获取节点的 node id 信息,可在console通过如下命令获取:
> admin.nodeInfo.pnode
得到 node id 信息,如: "pnode://xxxxx@[::]:30303"
最后,创建mediator对象, 在console中:
> mediator.apply({logo:"www.abc.com/logo.jpg", name:"某节点", loc:"beijing, china", url:"www.abc.com", applyInfo:"xxx...", account:"P1xxxx", rewardAdd:"P1xxx", initPubKey:"xxxxx", node:"pnode://xxxxx@x.x.x.x:30303", public_key:"xxxx", reward_address:"P1xxx"}, 0.002)
提示: 以上命令的参数说明:
- account: 准备成为mediator的账户地址,用于产块签名;(required)
- rewardAdd:mediator的奖励接收地址,建议使用钱包地址,保证资产安全;(optional)
- initPubKey: mediator群签名所需要的初始公钥;(required)
- node: mediator的节点网络信息,用于mediator节点互连。例如:"pnode://xxxxx@x.x.x.x:30303"。修改其中的ip地址为外网ip,端口为外网端口,并确保开启该端口;(required)
- logo: mediator节点图标url;(optional)
- name: mediator节点名称;(required)
- loc: mediator节点所在地区;(optional)
- url: mediator节点宣传网站;(optional)
- applyInfo: mediator节点详细信息描述;(optional)
- public_key: mediator账户地址对应的公钥, mediator同时作为juror所需要的参数。(required)
- reward_address:mediator同时作为juror的奖励接收地址,建议使用钱包地址,保证资产安全,可以使用mediator的奖励地址;(optional)
- 最后一个独立的参数是,本次操作的手续费,可调整至最佳
然后告知基金会(项目方)审批,可在console中通过如下命令查看是否批准成功(optional):
> mediator.isApproved("P1xxxx")
申请通过后,需要交付保证金50W PTN,才能正式成为mediator;
可在console,通过如下命令交付保证金:
> mediator.payDeposit("P1xxxx", 500000)
可在console,通过如下命令查看mediator缴纳保证金的总额(optional):
> mediator.getDeposit("P1xxxx")
可在console,通过如下命令查看是否在mediator列表中:
> mediator.isInList("P1xxxx")
在console中,通过如下命令查看mediator的详细信息(optional):
> mediator.getInfo("P1xxxx")
也可通过查看地址是否在mediator的候选列表中(optional):
> mediator.listAll()
注:操作过程中需要解锁账户:
> personal.unlockAccount("P1xxx")
PalletOne©2018-2019
Home
Getting started
- Install and build
- Create a private chain
- Launch the PalletOne Client
- Create a PalletOne Account
- Send and Receive PTN
- Create and send your token
- Backing up your account and data
- Restoring your account
- Deposit contract
- Mediator Node Installation and Joining
- Howto Become a Mediator
- Howto Run a Unit-producing Mediator
Developer Tools
- Getting PTNs from PalletOne's Testnet Faucet
- Wallet restful and console API Usage
- Third-Party-Wallet-Support
- Third-Party-Wallet-Contract-Invoke
- API Document
FAQ