![見出し画像](https://assets.st-note.com/production/uploads/images/13619948/rectangle_large_type_2_b7d1855c614acdbc8a04c3e5f47db670.jpeg?width=1200)
ripple-lib を使ってマルチシグ設定を解除してみよう
みなさんこんにちは。
今日は、javascript ライブラリである ripple-lib を使ってマルチシグな XRP アドレスをシングルシグに変更してみます。
基本的な XRP 送金の方法や、マルチシグアカウントの作成、マルチサインでの送金方法については以下の記事をご覧ください。
ripple-lib を使って XRP を送金してみよう
ripple-lib を使ってマルチシグアカウントを作ってみよう
ripple-lib を使ってマルチシグアカウントから送金してみよう
今回は、アカウント A に対して B, C, D のうち 2 つ以上のサインが必要なようにマルチシグ設定(+disable masterkey)し、その後元に戻します。
必要なソフトウェアの準備については、以前の記事「ripple-lib を使って XRP を送金してみよう」をご覧ください。
1. アカウント(アドレスと秘密鍵) A, B, C, D を用意する
さっそくやってみましょう。
いきなりメインネットは怖いので、テストネットで送金します。
以下のページで、開発用にテスト用の XRP が入ったアカウントを簡単に作ることができます。
RippleAPI Reference の最初の方にある Boilerplate code に対してコードを追加/変更していきます。
まずはアカウントを定義しましょう。
// Testnet accounts
// DO NOT PUT MAIN NET SECRET
var keypairs = [
{
publicKey: "r9PYDb9mZ3QWTiYCq5Ts49mqG4W8ReSU2Q",
privateKey: "snXnVxr8Q1mAtjepZ3BFRKjYLaGPS",
},
{
publicKey: "r3Jhh7RBzB6Hk7yQgDfswv1BUmNcfvbk59",
privateKey: "snpxT2VfFQB7wWQFQ93MYXRUtEqvc",
},
{
publicKey: "r9GbmLUtbNQrigzkPXZpiiBZjpKzhUp2U8",
privateKey: "ssafg9dKz4baXzwGPJ1SspV8q4mui",
},
{
publicKey: "rfwkJw6srRo44zRYnvxGc8MSCJ4WmwLyUH",
privateKey: "shUS3UvYVEHPFnSB64Rg54SZx3PW4",
},
];
2. A をマルチシグ化する
以前の記事「ripple-lib を使ってマルチシグアカウントを作ってみよう」の通りに、A をマルチシグアカウント化します。
$ node payment_trial.js multisig
(出力は省略)
$ node payment_trial.js disable_masterkey
(出力は省略)
$ node payment_trial.js show
connected
----------------------------------------------------
show r9PYDb9mZ3QWTiYCq5Ts49mqG4W8ReSU2Q
----------------------------------------------------
getAccountInfo ok. { sequence: 3,
xrpBalance: '9999.99992',
ownerCount: 1,
previousAffectingTransactionID:
'7A2DEBE6E74B8C653AA25AB8728FA91CDA414A8DB89550AED99E15EF1DF18521',
previousAffectingTransactionLedgerVersion: 21801874 }
getSettings ok. { disableMasterKey: true,
signers: { threshold: 2, weights: [ [Object], [Object], [Object] ] } }
signers [ { address: 'rfwkJw6srRo44zRYnvxGc8MSCJ4WmwLyUH', weight: 1 },
{ address: 'r3Jhh7RBzB6Hk7yQgDfswv1BUmNcfvbk59', weight: 1 },
{ address: 'r9GbmLUtbNQrigzkPXZpiiBZjpKzhUp2U8', weight: 1 } ]
(以下省略)
3. A をシングルシグ化する
true になっている disableMasterKey フラグを false に戻してから signers を空にします。
この順番でないと失敗します。
なぜでしょうか !?
ここから先は
¥ 10,000
この記事が気に入ったらサポートをしてみませんか?