此篇内容尚无原站英文对应版本;切换语言后可浏览英文资料库。
使用wallet_propose方法生成新账户需要的密钥。以此种方式创建的账户当接收提供足够STM来达到账户储备金的交易时,只会被官方纳入stream网络。(wallet_propose命令不会影响全球网络。从技术上来说,它不是创建新账户所必须的:你可以用其他方式生成密钥,但那样是不推荐的。)
成功回应的例子:
您也可以使用此方法生成密钥对,以用作帐户的常规密钥对。您将一个常规密钥对分配给一个帐户,以便能够使用该密钥对签署大部分交易,并尽可能使主密钥对保持离线状态。
除了将其用作常规密钥对外,您还可以将其用作多签名列表(SignerList)的成员。
有关主密钥和常规密钥对的更多信息,请参阅加密密钥。
有关多重签名和签名者列表的更多信息,请参见多重签名。
可能的错误:
wallet_propose请求是一个管理命令,不能被无权限的用户运行!(管理命令不能被传递至外网,因而可以保护该命令不受那些窃取账户机密的人的威胁。)
请求格式样例:
{
"command": "wallet_propose",
"passphrase": "test"
}
{
"method": "wallet_propose",
"params": [
{
"passphrase": "test"
}
]
}
#Syntax: wallet_propose [passphrase] streamd -- wallet_propose test请求包含以下参数:
Field |
类型 | 描述 |
|---|---|---|
passphrase |
String | (可选)指定一个密码短语,用于测试目的。如果不指定,服务器将使用一个随机生成的秘钥。除了测试目的,秘钥应该使用随机生成的。一些类似Stream的地址和其他格式的值是被禁止使用的。 |
{
"result" : {
"account_id" : "vp2YHP5k3bSd6LRFT4phDjVMLXQjH4hiaG",
"master_key" : "AHOY CLAD JUDD NOON MINI CHAD CUBA JAN KANT AMID DEL LETS",
"master_seed" : "ssyXjRurNo75TjXjubby65cD96ak8",
"master_seed_hex" : "5BDD10A694F2E36CCAC0CBE28CE2AC49",
"public_key" : "aBPXjfsA7fY2LLPxRuZ7Sj2ADzoSEGDW4Atd5MgxdHz5FQvGPbqU",
"public_key_hex" : "02CF23BCB1252D153713954AF374F44F82C255170ECAEDB059783128F53288F34F",
"status" : "success"
}
}
响应遵循标准格式,成功结果包含有关新(潜在)帐户的各种重要信息,包括以下字段:
| Field | Type | Description |
|---|---|---|
| master_seed | String | 这是密钥对的私钥。以Stream的base58编码字符串格式从其中获取有关此帐户的所有其他信息的主种子。通常,您使用此格式的密钥来签署交易。 |
| master_seed_hex | String | 主种子,十六进制格式。一种简单的,广泛支持的方式来表示私钥。可以用来签署交易。 |
| master_key | String | 主种子,采用RFC 1751格式。一个更容易记住,更易于记录的私钥版本。可以用来签署交易。 |
| account_id | String | 该帐户的地址为base58格式。这不是公钥,而是它的哈希值。它也有校验和,所以打字错误几乎肯定会导致无效的地址,而不是有效的,但不同的地址。这是STM分类帐中帐户的主要标识符。你告诉人们这是为了获得报酬,并在交易中使用它来表明你是谁,你支付什么,信任等等。多签名列表也使用这些来标识其他签名者 |
| public_key | String | 密钥对的公钥,采用Stream的base58编码字符串格式。派生自master_seed。 |
| public_key_hex | String | 这是密钥对的公钥,以十六进制表示。派生自master_seed。要验证交易中的签名,streamd需要此公钥。这就是为什么签名交易的格式包含该SigningPubKey字段中的公钥。 |
- 任何通用错误类型。
invalidParams- 一个或多个字段指定不正确。badSeed-该请求所指定的禁止使用的种子值(在passphrase,seed或seed_hex字段),如一个空字符串,或字符串类似于STM总帐地址。
