見出し画像

【完全保存版】Solana でNonce Accountを作ってみよう!

本日は、こちらの公式ドキュメントを元に、Nonce accountを作ってみます。

通常のアカウントは「BlockHash」をトランザクションに取り込むところ、こちらは「Nonce」を取り込みます。

やってみましょう。

まず今回は、Nonce accountの実行用Nonce account用キーペアを作ります。

1 現在のキーペアの確認

まずは、次のコマンドで、現在のキーペアがどこに格納されているか確認しましょう。

solana config get

私の場合は

/Users/ytakahashi/.config/solana

の中に格納されているようです。

2 新しいキーペアの作成

では、それに基づいて、同じ階層に下のようにして、新しいキーペアを作成します。

solana-keygen new -o <格納場所>/nonce-authorigy.json

ファイル名は別の名前でも良いです。

これで、durable nonce用の作成用のキーペアのファイルを作成しました。

3 新しいキーペアのパスの設定

次に、上で作ったキーペアをパスとして設定します。

solana config set -k <格納場所>/<格納ファイル名>

下のようにセットできました。

4 テストトークンの取得

では、そちらのアドレスの確認や、テストトークンの取得を下のようにしてみましょう。

// アドレスの確認
solana address

// バランスの確認
solana balance

// テストトークンの取得
solana airdrop 5

5 durable nonceのキーペアの作成

次に、durable nonce用のキーペアを作成します。

先ほどは実行権限のキーペアで、今回は実際に使う用のキーペアです。

solana-keygen new -o <格納場所>/nonce-account.json

6 nonce accountの作成

では、今作ったアカウントをnonce accountにしましょう。

ヘルプを確認すると、このようになります。

下のように、引数にキーペアとamountが必要のようですね。

solana create-nonce-account <キーペア> <amount>

下のようにして実行しました。

シグネチャを確認すると、下のように、「System Program」の「Initialize Nonce」が実行されていました。

7 nonce accountの確認

次に、今作成したnonce accountのnonceを取得してみましょう。

ヘルプを見ると、次のようになっています。

では、下のようにして実行してみましょう。

solana nonce <アドレス>

もしくは、nonce accountの情報を次のようにしても確認できます。

solana nonce-account <アドレス>

8 nonceの更新

では、nonceを変更してみましょう。

ヘルプを見ると、次のようになります。

solana new-nonce <アドレス>

下のようになりました。

シグネチャを確認すると、下のように、「System Program」「Advance Nonce」が実行されていることが確認できました。

では、nonceが変わったかを確認してみましょう。

solana nonce-account <アドレス>

下のように、変更されたことが確認できました。

9 nonce accountからの引き出し

次に、nonce accountからSOLを引き出しましょう。

ヘルプは下の通りです。

solana withdraw-from-nonce-account <引き出し元> <引き出し先> <amount>

シグネチャを確認してみると、下のように、「Unknown Instruction」となっております。

ただ、確認すると、Balanceが減っていることが確認できました。

今回は以上です。































いいなと思ったら応援しよう!

ユウキ
サポートをしていただけたらすごく嬉しいです😄 いただけたサポートを励みに、これからもコツコツ頑張っていきます😊