新着:HeliusがLight Protocolを買収
SolanaでSPLトークンを扱う
ブログ/開発

Solana Dev 101 - SolanaでSPLトークンをミントする

Developer RelationsリードLinkedInのHunter Davis
読了時間:9分

プロジェクトの概要

トークンはデジタル経済の基盤です。ブロックチェーンの力を十分に理解するには、トークンとは何か、どのように扱うのかを理解することが不可欠です。この記事では、その方法を説明します。

このチュートリアルでは、Solana Command-Line Interface(CLI)を使用して、独自のSolanaトークンをミントする手順を説明します。Solanaで独自トークンをミントするための3つの主要な手順、つまりトークンの作成、トークンアカウントの作成、トークン供給量のミントを学びます。このチュートリアルを終える頃には、独自のSolanaトークンを作成し、Solanaブロックチェーンを試すための知識とスキルが身に付いています。

CLIを使用する方法に加えて、独自のSolanaトークンをすばやく簡単にミントするための代替手段も3つ紹介します。好みや要件に応じて、さまざまな選択肢から選べます。

*JavaScriptまたはTS環境での独自ミントについて詳しくは、こちらのSolanaドキュメントをご覧ください:https://spl.solana.com/token

前提条件

トークンのミントを始めるには、まずワークステーションにいくつかのプログラムをインストールする必要があります。ワークステーションでターミナルアプリを開き、これらのコマンドを実行できます。すでにインストール済みの場合は、この手順を省略できます。

  1. Rustをインストールします:
コード
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  1. Solana CLIをインストールします:
コード
cargo install solana-cli

インストール後、次のコマンドを実行してSolana CLIがインストールされていることを確認できます:

コード
solana --version

次のような結果が返されます:

コード
solana-cli 1.15.2 (src:dea65f48; feat:1211687720, client:SolanaLabs)

セットアップが完了したら、次に進みましょう。

環境のセットアップ

まず、環境に3つの項目を設定します。

  1. 使用するデフォルトのネットワーク(MainnetまたはDevnet)。
  2. トークンのミントに使用するデフォルトのウォレット。
  3. このテストの資金となるDevnetのSolana。

1. ネットワーク

この手順では、標準のSolana RPCを使用できます。Heliusの開発者ポータルから無料で取得できます。こちらをご覧ください。

利用できるものは次の2つです:

  1. Mainnet - https://rpc.helius.xyz/?api-key=<api_key>
  2. Devnet - https://rpc-devnet.helius.xyz/?api-key=<api_key> 

RPCを取得したら、次のコマンドを使用して環境に設定できます:

コード
solana config set --url https://api.devnet.solana.com

これにより、テスト用のCLIでデフォルトネットワークがDevnetに設定されます。コンソールに次の内容が表示されます:

コード
Config File: /Users/user/.config/solana/cli/config.yml
RPC URL: https://api.devnet.solana.com
WebSocket URL: wss://api.devnet.solana.com/ (computed)
Keypair Path: ./RwUUVWjmSycerjAFep7v9d1R1sioF45cYAUpeJtcQbZ.json
Commitment: confirmed

この確認が表示されたら、次の手順に進みます。

2. ウォレット

この手順では、テストに使用するデフォルトのウォレットを設定します。テスト用に新しいウォレットを作成し、Solana CLIのデフォルトとして設定します。

新しいウォレットを作成するには、次のコマンドを実行します:

コード
solana-keygen new -o ${HOME}/token-wallet.json

これにより、ホームディレクトリの外に新しいwallet-name.jsonファイルが作成されます。

コンソールに次の内容が表示されます:

コード
Wrote new keypair to /Users/user/token-wallet.json
====================================================================================
pubkey: EbcgsUzSEgiZm61Ch66hKUWhoUg3DGvDaqwQBMLaBgTg
====================================================================================
Save this seed phrase and your BIP39 passphrase to recover your new keypair:
switch anchor code opera purpose easy squeeze enough steal pelican enroll switch
====================================================================================

次のコマンドを実行して、このウォレットをデフォルトアドレスとして設定します:

コード
solana config set --keypair ${HOME}/token-wallet.json

次のコマンドを実行して、公開鍵が正しく設定されていることを確認できます。

コード
solana address

この例では、次の結果が表示されます:

コード
EbcgsUzSEgiZm61Ch66hKUWhoUg3DGvDaqwQBMLaBgTg

デフォルトウォレットを設定できたので、テスト資金のリクエストに進みます。

3. テスト用の資金

ここでは、ミントに必要なDevnetのSolanaをSolana CLI経由でエアドロップします。

ターミナルで次のコマンドを実行し、必要な量を取得します:

コード
solana airdrop 2

次のコマンドを実行して、ウォレットの残高を確認します:

コード
solana balance

コンソールに2 SOLと表示されます。

成功しなかった場合は、最初のリクエストが失敗しただけかもしれないため、あと数回試してください。それでも動作しない場合は、もう一度やり直してください。

DevnetウォレットにSOLが入ったら、トークンの作成に進みます。

CLIからミントする手順

環境のセットアップが完了したので、実際にトークンのミントを始めましょう。ここまで設定できれば、あとはすぐに完了します。

必要な手順は次のとおりです:

  1. トークンを作成します。
  2. トークンアカウントを作成します。
  3. トークンをミントします。

以下はセットアップを視覚的に示したものです:

もう少し詳しく見てみましょう:

  1. Token Programは、トークンの作成、転送、追加ミントに使用します。
  2. ユーザーはToken Programを操作してトークンを作成します。このToken Programは、供給量の追加ミントやトークンの転送にも使用します。
  3. トークンを作成したら、それを保管するアカウントも作成できます。

‍‍それでは、最初の手順であるトークンの作成に進みましょう。

1. トークンを作成する

次のコマンドを実行してトークンを作成します:

コード
spl-token create-token

この例では、次の結果が表示されます:

コード
Creating token Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto under program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA

Address:  Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
Decimals:  9

Signature: 56pRzvMBxJQqti4Fh5wPsa5Hb7KzJaWzEFNcAFYPaH7vN7a2CBmM1wbYxTvNVZr9Cvupy25X2oHtrGhhEhww9ug5

2. トークンアカウントを作成する

次に、トークンの供給量を保管するアカウントを作成します。

ターミナルで次のコマンドを実行し、トークンアドレスを渡すことで、Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqtoトークン用のアカウントを設定できます:

コード
spl-token create-account Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto

これにより、Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqtoトークンを保管するアカウントが作成され、次の結果が表示されます: 

コード
Creating account 7jZDrZqRkVzu5ADtKvNGsTyPcCpcMVkxorMRJvCaUAD

Signature: EkR353vt9ST3ktyRsCRtYFqVvARaUBmUpWLfgFtsojBRbW66dK1yaCpW1NtphCQTkcGqzVQZg4Ld2abZ3bhsjA3

これで、ミントを開始するためのトークンアカウントができました。

3. トークンをミントする

これで、トークンをミントして供給量を設定する準備が整いました。今回はDevnetを使用しているので、100万トークンをミントしてSolanaの真価を示しましょう。

spl-token mintコマンドの後にトークンアドレスを指定し、次のコマンドを実行します:

コード
spl-token mint Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto 1000000

ターミナルに次の内容が表示されます:

コード
Minting 1000000 tokens
  Token: Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto
  Recipient: 7jZDrZqRkVzu5ADtKvNGsTyPcCpcMVkxorMRJvCaUAD

Signature: 4EjB9bDC18Cut66frGWVHAxVQ3YrddaUCQcFZZsXbKXLziCAUtdh5r41tVhvP7yH1dZ5TBUaFXHpm2upaNCw3sMe

次のコマンドを実行して、ミントされたことを確認します:

コード
spl-token supply Ax3nE7fAEuZsbN9HHEpuBpoYeYy7NZ3dgjRG8GXdFqto

次の結果が返されます:

コード
1000000

これで、Solana CLIを使用してSolana上で100万トークンをミントできました。

結果

振り返ると、Solana CLIのspl-tokenツールを使用して100万トークンをミントしました。Solana CLIで3つのコマンドを実行するだけで完了しました。

  1. トークンを作成します。
  2. トークンアカウントを作成します。
  3. トークンをミントします。

1,000,000トークンをミントした後のSolanaウォレットの残高を確認する場合は、次のコマンドを実行します:

コード
solana balance

最初に2 SOLのエアドロップを受け取っていた場合、次の結果が返されます:

コード
1.99647912 SOL

以上です。

Solanaなら、わずかなコストでトークン供給量を拡大できます。

ここまでの手順に従えば、Solana CLIのspl-tokenツールを使用してトークンを効率的に作成できます。

トークンのミントに利用できるツール

お約束したとおり、メタデータ付きのトークンをわずかなコストで今すぐ作成できるツールをいくつか紹介します。各例ではMonopoly Moneyを使ってトークンを作成し、その後利用できる配布方法を紹介します。

1. Famous Fox Federation

このツールは約6か月前から提供されており、利用料は0.03 SOLです。別のブロックチェーンで数百万トークンを作成するコストと比べると、非常に低コストです。

FFFの概要は次のとおりです:

  1. ここでSPLトークンにチェックが入っていることを確認します。
  2. 小数点以下の桁数を0に設定すると、WLトークン規格になります。
  3. ここで今後の供給量のミントを無効にできます。無効にしなければ、ミントできる状態が維持されます。
  4. その後、Foxy Shareなどのツールを使用して、低コストでトークンを配布できます。この例ではテストトークンを作成し、トークンセクションから次の宛先へ送信します:

2. Squads

Squadsもわずかなコストで手軽に利用できるフロントエンドです。Squadsアカウントにサインインした後、次の手順でトークンを作成します:

  1. Developersタブに移動し、Token Managerを開きます。

     2. そこでAdd Tokenを選択し、次にCreate Tokenを選択してトークンの詳細を入力します(供給量は後で追加します)。

    3. 次にToken decimalsを入力します。このテストでは9を使用します:

    4. Squadsでトランザクションを承認して実行すると、次のようなセットアップが表示されます:

    5. Mintを選択した後、作成する供給量を入力します。以下の例をご覧ください:

    6. Squadsに承認待ちの別のトランザクションが表示されます。承認されると、以下のように設定したトークン供給量が表示されます:

これで、Squadsを使用して供給量100万のトークンを作成できました。

その後、**「TX Builder」**セクションでトークンを転送するためのカスタムトランザクションを設定できます。ただし、詳しく説明すると長くなるため、ここでは扱いません。

この方法でのミントには約0.00561672 SOLかかり、Solana CLIを使用した場合と同じです。

3. Strata Protocol

Solanaでトークンをミントする、もう1つの代替手段を紹介します。

  1. まず**「Create New Token」**オプションを選択し、Nextを押します:

     2. 管理オプションで**「Self Managed」**を選択します:‍

      3. 次に、Solanaウォレットを接続してトランザクションに資金を提供し、以下にトークンの詳細を入力します:

100万トークンを作成するこのトランザクションのコストはわずか0.00458 SOLです。Solanaのごく一部に相当する金額であり、競合サービスと同等です。SHDW Storageトークンを保有していない場合は、スワップが試行されます。

Strataの追加機能:

Strataのメインページには、ほかにも便利なツールがいくつか用意されています:

  1. Token Manager - 各トークンの供給量を増やし、ミント権限や凍結権限を更新できます。
  2. Sell Existing Token - 販売するトークンの価格を設定したり、価格発見を行ったりできます。
  3. Fundraise - 目的のために資金を集め、トークンで支援額を表せます。

まとめ

これでSolana上でトークンをミントする方法がいくつか分かりました。いずれもコストと必要なトークン数の両面で拡張できます。これらの例を大規模に展開しても、資産をオンチェーン化して配布できる状態にするコストはそれほど変わりません。

ここで紹介したすべての例は、Solanaを使用する真のメリットを示しています。また、高度な技術知識が必要だと思っているクリエイターでも利用できます。

一般のユーザーでも、3つの手順で完了するシンプルなCLIを使ってSolana上でトークンをミントできます。また、操作を簡単にする追加機能を備えた別のサービスも、同程度の低コストで利用できます。

ご質問や問題がある場合は、お気軽にHelius Discordへご参加ください。

‍

Heliusを購読

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

拡大画像