新着:HeliusがLight Protocolを買収
カスタムSolanaウォレットの作成方法
ブログ/開発

Solana開発入門 - ファイルシステムウォレットとカスタムウォレットの作成方法

デベロッパーエクスペリエンスエンジニアXのOwen VenterLinkedInのOwen Venter
読了時間:4分

このブログでは、ファイルシステムウォレットとは何か、その作成方法と活用方法を解説します。それでは始めましょう!

ファイルシステムウォレットとは?

ファイルシステムウォレットとは、暗号鍵をデバイス上のファイルとして保存するウォレットです。これらの鍵は、Solanaネットワークとのやり取りでトランザクションに署名し、本人確認を行うために使用されます。ハードウェアウォレットやWebベースのウォレットとは異なり、ファイルシステムウォレットでは、外部ハードウェアやクラウドではなくデバイス上に鍵をローカル保存します。つまり、ユーザーは鍵を直接管理できる一方で、安全に保管する責任も負います。

ファイルシステムウォレットの主な利点は、ほかの種類のウォレットと比べてシンプルで柔軟なことです。Webインターフェースもプラグインも依存関係も必要ありません。自分で管理できる単一のファイルにすぎません。

ファイルシステムウォレットの作成方法

ファイルシステムウォレットは非常に簡単に作成できます。

まず、まだインストールしていない場合は、SolanaのコマンドラインツールスイートであるSolana-CLIをインストールします。

次のコマンドを使用してインストールできます。

コード
$ sh -c "$(curl -sSfL )"

Solana-CLIをインストールしたら、ファイルに保存される新しいキーペアを生成できます。

次のコマンドを使用して新しいウォレットを作成します。

コード
solana-keygen new --outfile ~/my-keypair.json

‍このコマンドは新しいキーペアを作成し、「my-keypair.json」という名前のファイルに保存します。

ファイルシステムウォレットの使用方法

ファイルシステムウォレットを作成したので、Solanaネットワーク上のトランザクションへの署名に使用できます。

ウォレットを必要とするCLIコマンドを実行する場合は、--keypairオプションの後にウォレットファイルへのパスを指定します。

たとえば、アカウント残高を取得するには、次のコマンドを使用します。

コード
solana balance --keypair ~/solana-wallet/my-keypair.json

これらのウォレットはJavaScriptコードでも使用できます。Solana JavaScript SDKを使えば、ウォレットをKeyPairsとしてコードへ簡単に取り込めます。次のコード行を追加するだけです。

コード
const keypair = Keypair.fromSecretKey(Uint8Array.from());

新しく作成したjsonファイルから秘密鍵の配列をコピーし、パラメーターに貼り付けてください。

カスタムウォレットアドレスの作成方法

solana-keygenコマンドの便利な機能の一つとして、特定の文字で始まり、特定の文字で終わるウォレットアドレスを作成できます。追跡しやすいウォレットや、簡単に識別できるウォレットを設定する際に役立ちます。

solana-keygenコマンドでは、オプションとサブコマンドの両方を使用できます。ここでは「grind」サブコマンドを使用して、バニティキーペアを探索します。

「test」で始まるウォレットを作成する場合は、次のコマンドを実行します。

コード
solana-keygen grind --starts-with 123:1

これにより、ウォレットアドレスを「owen」という文字列で始め、生成するウォレットアドレスを1つだけにするよう指定します。このコマンドを実行すると、一致するものが見つかるまで、マシンが数百万個のキーペアを探索します。

カスタムアドレスの作成には多くのオプションがあります。次のコマンドを実行すると、そのすべてを確認できます。

コード
solana-keygen grind --help

よく使われるオプションの一つに、リカバリーフレーズを追加するものがあります。

これを行うには、—use-mnemonicフラグを追加します。

まとめ

Solanaのファイルシステムウォレットは、開発者がウォレットを作成して使用するためのシンプルで柔軟な手段です。セットアップが簡単で、ウォレットを完全に管理できるほか、便利なカスタマイズオプションも用意されています。

この方法は大きな責任を伴うため、すべてのユーザーに適しているとは限りません。しかし、ウォレットを完全に管理したい開発者や十分な知識を持つユーザーには、明確なメリットがあります。

‍

Heliusを購読

Solana開発の最新情報や新しい記事の公開通知を受け取れます