如何使用比特股命令端多重签名功能?

如何使用比特股命令端多重签名功能?

无主之地 副船长 船龄 9.8年 来源 比特股之家
 32775  0

本文将会展示如何以比特股命令端使用多重签名功能.
首先, 让使用多重签名的每一方都创建一个一般的地址.

  1. >>> wallet_address_create alice
    
  2.     BTS...alice-address...
    
  3.  
  4. >>> wallet_address_create bob
    
  5.     BTS...bob-address...
    
  6.  
  7. >>> wallet_address_create carol
    
  8.     BTS...carol-address...

现在让我们使用以上的用户, 从’angel’帐号存款到一个’三取二’的多重签名.  注意到最后的两个参数:
‘2’ 表示需要的签名数,
[...]表示允许签名的地址.

  1. >>> wallet_multisig_deposit 100 BTS alice 2 [BTS...alice-addres..., BTS...bob-address..., BTS...carol-address...]

成功了! 另外使用任何指定帐户, 创建一个二取二的多重签名也是一样的方式.

行文至此, 正好可以说说如何获取这笔存款的多重签名余额ID, 因为你需要知道这个才能提款.

下面第一个参数是这个多重签名ID的资产类别.

  1. >>> wallet_multisig_get_balance_id BTS 2 [BTS...alice-addres..., BTS...bob-address..., BTS...carol-address...]
    
  2.     BTS...multisigID...

取款是比较棘手的问题, 因为这会需要你传送部份的交易. 幸亏比特股客户端会自动将最新的交易作为档案写入到data资料夹中, 因此这个问题相对地简化了.

注意到目前我只能取款到地址, 因为客户端还不支持取款到帐号.

  1. >>> wallet_multisig_withdraw_start 50 BTS BTS...multisigID... BTS...alice-address...

接著你会看到大量的JSON输出, 这就是代表交易的档案内容. 如果你点进你的钱包文件夹”wallets”, 你会看到一个”trx”文件夹. 在这个文件夹里面你会看到一个"latest.trx"档案, 内容就是刚刚提到的大量的JSON输出.

这个建立交易的过程就会把你的钱包可以加入的签名加入到这个交易档案中.

接著你可以把这个交易档案送给另一位潜在的签署人. 他可以用以下的方式加入他的签名:

  1. >>> wallet_builder_file_add_signature true "path/to/builder_file/latest.trx"

(第一个参数是表示是否要尝试广播这笔交易)
现在你会在”wallets/trx”文件夹底下看到一个 "latest.trx"档案, 内含新加入的签名. 重复这个过程直到其中具备了足够的签名来成功广播交易.

如果你是透过RPC wrapper来进行这个过程, 你可以使用从"wallet_multisig_withdraw_start"传回的交易内容并传给"wallet_builder_add_signature" 就可以不必处理交易档案.  这个做法在命令端并不方便, 因为你必须要避开一堆JSON字串.

阅读英文原文: https://github.com/BitShares/bitshares/blob/master/docs/multisig.md

原作者: toast

译者:cn-members

BTS帐号:cn-members

  • 全部
  • 最佳
登录 账号发表你的看法,还没有账号?立即免费 注册
推荐教程
换一批