3 个版本

0.1.2 2021 年 8 月 27 日
0.1.1 2021 年 8 月 23 日
0.1.0 2021 年 8 月 9 日

#4 in #relying

每月 25 次下载

Apache-2.0

56KB
991 代码行

vpl-relying-party-cli

入门

要求

背景

有关本文件中使用的 Velas 编程模型和术语定义,请参阅

Linux

安装开发工具

sudo apt install build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev libudev-dev

MacOS & Linux

安装 Rust

安装

通过 cargocrates 安装软件包

$ cargo install vpl-relying-party-cli

用法

您可以使用以下节点地址执行命令

  • https://api.velas.com,
  • https://api.testnet.velas.com,
  • https://api.devnet.velas.com.

配置

vpl-relying-party 配置与 velas 命令行工具共享。

获取当前 velas 命令行工具配置

$ velas config get

Config File: ${HOME}/.config/velas/cli/config.yml
RPC URL: https://api.velas.com/
WebSocket URL: wss://api.velas.com/ (computed)
Keypair Path: ${HOME}/.config/velas/id.json

设置集群 RPC URL

请参阅 Velas 集群 了解特定集群的 RPC URL

$ velas config set --url https://api.velas.com

默认密钥对

有关如何设置密钥对的信息,请参阅 密钥对约定

密钥对文件

$ velas config set --keypair ${HOME}/new-keypair.json

服务

获取软件包的版本 — vpl-relying-party --version

$ vpl-relying-party --version
vpl-relying-party-cli 0.1.0

获取所有可能的软件包命令 — vpl-relying-party --help

vpl-relying-party-cli 0.1.0
VPL Relying Party Command-line Utility

USAGE:
    vpl-relying-party [FLAGS] [OPTIONS] <SUBCOMMAND>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information
    -v, --verbose    Show additional information

OPTIONS:
        --authority <KEYPAIR>    Filepath or URL to a relying-party authority keypair. This authority will be able to
                                 close the account. [default: client keypair]
    -C, --config <PATH>          Configuration file to use [default: /Users/user/.config/velas/cli/config.yml]
        --fee-payer <KEYPAIR>    Filepath or URL to a fee-payer keypair [default: client keypair]
        --url <URL>              JSON RPC URL for the cluster [default: value from configuration file]

SUBCOMMANDS:
    account           Display information stored in relying-party account
    close-account     Close relying-party account
    create-account    Create a new relying-party account
    help              Prints this message or the help of the given subcommand(s)
    set-authority     Set close authority of the relying-party account

账户

通过其地址获取 relying-party 账户解析数据 — vpl-relying-party account

参数 类型 必需 描述
relying-party-address 公钥 获取解析数据的账户地址。
node-url URL 应用命令的节点URL。
$ vpl-relying-party account Bu1dW7aAyWXDgHPiLS5ch6KFgzaiwFknzKRkmNrzf8xH

Public Key: Bu1dW7aAyWXDgHPiLS5ch6KFgzaiwFknzKRkmNrzf8xH
-------------------------------------------------------------------
Relying Party Data:
    version: 1
    authority: 9atTpuaX8WoxWr7xDanvMmE41bPWkCLnSM4V4CMTu4Lq
    Related program data:
        name: example-dapp333
        icon_cid: QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u
        domain_name: http://example-dapp.com
        redirect_uri: ["http://example-dapp.com/pay", "http://example-dapp.com/play"]

创建账户

创建 relying-party 账户 — vpl-relying-party create-account

参数 类型 必需 描述
程序名称 字符串 与relying-party账户关联的显示名称。
program-icon-cid 字符串 与relying-party账户关联的图标的内容标识符:https://docs.ipfs.io/concepts/content-addressing/
program-domain-name URL 与relying-party账户关联的域名。
program-redirect-uris URIs 允许用户重定向到的URIs。
lamports 数字 创建新relying-party账户所需的lamports。
authority 密钥对 relying-party授权密钥对的文件路径或URL。此授权将能够关闭账户。[默认:客户端密钥对]
fee-payer 密钥对 费用支付者的文件路径或URL [默认:客户端密钥对]
$ vpl-relying-party create-account "example-dapp333" QmWATWQ7fVPP2EFGu71UkfnqhYXDYH566qy47CnJDgvs8u http://example-dapp.com http://example-dapp.com/pay http://example-dapp.com/play  --url http://127.0.0.1:8899                                                                                                          

Signature: 4CH13f432ygibj2kBsoRJpG4HsnhDRA4pMgrd384bRNS37p5HYEtKQ4mR9iEviiugCMqoBUWa6BLHnEW4CzibatV
Relying Party Address: Bu1dW7aAyWXDgHPiLS5ch6KFgzaiwFknzKRkmNrzf8xH
Created!

设置权限

设置relying-party账户的关闭授权 — vpl-relying-party set-authority

参数 类型 必需 描述
relying-party-address 公钥 relying-party账户的地址。
new-authority 公钥 relying-party账户的新授权。
authority 密钥对 当前relying-party授权密钥对的文件路径或URL。[默认:客户端密钥对]
fee-payer 密钥对 费用支付者的文件路径或URL [默认:客户端密钥对]
$ vpl-relying-party set-authority Bu1dW7aAyWXDgHPiLS5ch6KFgzaiwFknzKRkmNrzf8xH V9u7QR3Ff6mUMdyjvJ67M23Gr6ERzVenuyhXqcc7hFk  --url http://127.0.0.1:8899  

Signature: 4GTJMcrAbQEsqVNz7G4UUUrnWctL6h55fefdwkJGapKrAZyjzeaLusSTS2Kwjp8AnMaEBU7TBeoiUHRJQs9GoQ8S
Authority changed from 9atTpuaX8WoxWr7xDanvMmE41bPWkCLnSM4V4CMTu4Lq to V9u7QR3Ff6mUMdyjvJ67M23Gr6ERzVenuyhXqcc7hFk successful!     

关闭账户

关闭relying-party账户 — vpl-relying-party close-account

参数 类型 必需 描述
relying-party-address 公钥 relying-party账户的地址。
receiver-address 公钥 从relying-party发送lamports的地址。
authority 密钥对 当前relying-party授权密钥对的文件路径或URL。[默认:客户端密钥对]
fee-payer 密钥对 费用支付者的文件路径或URL [默认:客户端密钥对]
$ vpl-relying-party close-account Bu1dW7aAyWXDgHPiLS5ch6KFgzaiwFknzKRkmNrzf8xH V9u7QR3Ff6mUMdyjvJ67M23Gr6ERzVenuyhXqcc7hFk --authority V9u7QR3Ff6mUMdyjvJ67M23Gr6ERzVenuyhXqcc7hFk.json

Signature: 2SFk6rASKYD2Nv8CiiG3TVJavpYj6FRA2xMtWTjSYXwMDEN5RMbA9wEv481DbwZGNeWeLgqmjGZrgESJ99qTxpUJ
Relying-party account closed successful!

开发

要求

依赖项

~74MB
~1.5M SLoC