NEM及びその次期バージョンSymbolはスマートサイニングコントラクトという概念を持っており、ブロックチェーンにあると便利な機能を誰でも安全に使えるのが特徴です。
ブロックチェーンを使う目的にトークンの発行・流通というのがありますが、NEM及びSymbolでは非エンジニアでも簡単にトークン発行・流通することができます。
また、NEM、Symbolはパブリックチェーンのブロックチェーンであると同時に、プライベートチェーンでも動かせる特徴があります。なので企業のニーズにも柔軟に対応する事も可能です。
今回は、Symbolのテストネット上でウォレットソフトを使ってトークンを発行する方法を紹介します。
Symbolウォレットでトークンを発行しよう
1: Symbolウォレットを入手
Symbolのデスクトップウォレットを以下のサイトから入手してください。
windows版は.exeファイル、Mac版は.dmgファイルをダウンロードしてインストールしてください。
nemfoundation/symbol-desktop-walletFix for downloading QR Codes with Mnemonic: #168 Fix for multi-signature Signer Selector address display: #205 Fixes… github.com
2: ウォレットのセットアップ
ウォレットをインストールし、起動すると以下のような画面が表示されるので、「Create Mnemonic」をクリックします。
ウォレットのセットアップ画面に遷移します。
「Enter A Profile Name」にウォレットの名前を入力し、「Password」でウォレットのパスワードを設定します。パスワードはこの後の操作でも使用するので覚えておきましょう。設定したら「Next」をクリックします。
ウォレットを安全に生成するために、マウスを100%になるためにふりつづけます。
100%になると自動的に上記画面に遷移します。この画面ではウォレットのバックアップフレーズが表示されるので、これをメモなどの記録するようにします。「Desplay mnemonic words」をクリックします。
クリックすると、24単語のバックアップフレーズが表示されるので、これを順番通りにメモします。
このバックアップフレーズは他人に漏らすと、他人がそのウォレットを操作できるようになるので、漏らさないようにしましょう。また、紛失すると復元できなくなるので紛失しないようにしましょう。
メモしたら「Next」をクリックします。
次の画面では、前の画面でメモしたパスフレーズを記録できたかの確認をします。下に表示されている単語を前の画面で表示されたパスフレーズと同じ並びに並ぶように選択します。
正しく並び替えたら、「Next」をクリックします。
※「Skip」で飛ばすことができますが、必ずパスフレーズが保存できたか確認しましょう
これで、ウォレットをセットアップできました。
注意書きとして、バックアップをオフラインで複数保存すること、デジタルで保存する場合、暗号化して保存すること、バックアップフレーズを漏らさないことなどが書いてあるので、理解して、「Next」をクリックします
ウォレットのホーム画面に遷移します。
3. テストネットの通貨を入手
ここではSymbolのテストネットを使うので、Symbolのテストネットの通貨を入手します。(プライベートチェーンではこの過程を省略することも可能です)
左側のメニューの「Accounts」をクリックします。
アカウントの情報が表示されるので、アドレスをコピーして、「Open the faucet」をクリックします。(ブラウザが立ち上がります)
ブラウザが立ち上がって上記画面に遷移したら、「Recipent」にコピーしたアドレスを貼り付けて、「CLAIM!」をクリックします。
ウォレットに戻り、しばらく(1分弱程度)するとテスト用通貨(XYM)が入手でき、上記画面のように残高が反映されます。
4. モザイク(トークン)の作成
Symbol(NEM)ではトークンをモザイク機能を使って作成します。
左側のメニューから「Mosaics」をクリックします。
クリックすると、現在保有・作成したモザイクの一覧が表示されます。モザイクの作成するには「Create new mosaics」をクリックします。
モザイク作成画面では、ニーズに応じたトークンを作成するためのモザイクの設定をおこない、モザイク(トークン)を発行します。
モザイクは以下の内容を設定することができます。
・供給量
・供給量を後から変更可能とするか
・小数点の桁数(なしから小数点6桁まで設定可能)
・モザイクの有効期限(ブロック数で指定、永続化指定も可能)
・転送可能設定(点々流通を可能とするか)
ライブのチケットをモザイクで発行したとした場合、転送不可にすると転売不可のチケットとなり、
転送可能とすると転売可能なチケットとなるイメージです
・モザイク制限設定(モザイクの取引可能相手を制限するか)
モザイクの設定を行ったら、「Send」をクリックします。
確認画面が表示されるので、ウォレットを作成した時のパスワードを入力し、Confirmをクリックします。
1分弱程度で、モザイク一覧に作成したモザイクが表示されます。
モザイクにはIDが自動的に割り当てられ、これで取引をすることができます。
これでトークンを発行することができました!
5. ネームスペース
ここまでで、モザイク(トークン)を発行することができるようになり、これで自由にトークンを送り合うことができるようになりましたが、モザイクは自動的に割り当てられたIDとなっているのでやり取りがしづらいです。
これをネームスペースを使ってやり取りしやすくします。
ネームスペースとは
ネームスペースはWebでいうところのドメインのようなものです。
ネームスペースがないと以下のように何の取引か分かりにくいですが
ネームスペースがあると、取引が分かりやすくなります
ネームスペースは3階層設定することができます。
上記の例の「bob」をルートネームスペースといい、「coin」「dollar」をサブネームスペースといいます。
ルートネームスペースは同じネットワークに1つしか存在できず、有効期限をブロック数で指定します。有効期限は延長できます。サブネームスペースの有効期限はルートネームスペースの期限に依存します。
6. ネームスペースの作成
左側のメニューの「namespaces」をクリックします。
保有しているネームスペースの一覧に遷移します。ルートネームスペースを発行するには「Create new namespace」をクリックします。
ネームスペース名と有効期限(ブロック数で指定)を設定して、「Send」をクリックします。(モザイクと同様、確認画面が表示されるので、パスワードを入力して、confirmをクリックしてください)
1分弱でネームスペースが作成され、一覧に表示されます。(※この例では、「daoka」というネームスペースを作成しています)
今度は、このネームスペースに紐付くサブネームスペースを作成します。
サブネームスペースを作成するには、「Create sub namespace」をクリックします。
サブネームスペースでは、紐付ける親ネームスペースを選択し、サブネームスペース名を設定します。設定したら「Send」をクリックします。
しばらくすると、ネームスペース一覧に作成したサブネームスペースが反映されます。
この例では、「daoka」と「daoka.coin」の2つのネームスペースを作成したので、「daoka」をアドレスと、「daoka.coin」をモザイクと紐付けます。
7. アドレスとネームスペースの紐付け
ホーム画面で上記のようにアドレスをコピーします。
ネームスペース一覧でネームスペースを選択して、「Link」をクリックします。
紐付け画面が表示されるので、Alias Typeで「Link an address」を選択して、Link an Addressにコピーしたアドレスを貼り付けて、「Send」をクリックしいます。
紐付けできると、ネームスペース一覧のAlias欄に紐付け状態が反映されます。
8. モザイクとネームスペースの紐付け
同様に、daoka.coinのほうもモザイクと紐付けていきます。
Alias Typeに「Link a mosaic」を選択し、Mosaicに作成した4.で作成したモザイクのモザイクIDを選択し、「Send」をクリックします。
こちらも紐付けが反映されると、モザイク一覧に紐付けが反映されます。
これで、トークンのやり取りがやりやすくなります!
9. モザイク(トークン)の送信
モザイクの作成と、ネームスペースの紐付けができたので、今度は作成したモザイクを送り合いましょう。
9.1 アカウントの追加
モザイクを送り合う相手を作るために、もう一つアカウントを作成しましょう。
アカウント作成画面に遷移して、「Create an account」をクリックします。
アカウント追加画面で、Select The Type of Accoutで「I want to create a child account for my profile」を選択し、New Account Nameにアカウント名を設定し、「Confirm」をクリックします。
確認画面でパスワードを入力すると、アカウント一覧に追加されたアカウントが表示され、新しいアカウントに切り替わります。
操作するアカウントはMy Accountで使用したいアカウントを選択することで切り替わります。
9.2 追加したアカウントの設定
追加したアカウントに対して、テスト用の通貨の入手、ネームスペースの取得を行い、アドレスへの紐付けを行います。
※この例ではsaburoというネームスペースを新しいアカウントに紐付けました。
9.3 モザイクの送信
モザイクを作った最初のアカウントに戻り、新たに作成したアカウントにモザイクを送ります。
モザイクを送信するには「Transfer」をクリックします。
モザイク送信画面で、Toに送信先のアドレスまたは、紐付けたネームスペース(この例ではsaburo)、Mosaicに送信するモザイクの種類(この例ではdaoka.coin)と数量を入力します。また必要に応じてメッセージを入力したら「Send」をクリックします。
送信が完了すると、送り側のアカウントの履歴画面に、送信の履歴が反映され、送信したモザイクの残高も減ります。
受信側のアカウントのモザイク一覧にも送られたモザイクが反映されます。
これで、トークンの送信もできるようになりました!
まとめ
このようにして、Symbol(NEM)ではウォレットを使って、トークンの作成、送信までエンジニアでなくても、ほとんど特別な知識なしに行うことができます。
これにトークンを活用したサービスのプロトタイプを手早く行うことができます。
Symbol(NEM)にはSDKもあり、これにより既存のWebサービスや新たに作るサービスにトークンを活用したサービスを安全に手早く組み込むことができます。
また、マルチシグアカウント、アカウント制限等、安全にブロックチェーンを使うための仕組みも備わっております。
Opening LineではSymbol(NEM)を活用したサービスの開発、コンサルティングを行っております。Opening LineのSymbol(NEM)の取り組みの詳細は下記をご覧ください。
ブロックチェーン・NEM・Catapultを活用して目指すところOpening LineはNEMブロックチェーンを活用したサービスの開発、実証実験及びセミナーのサポートを行っている日本でも数少ない企業です。 medium.com
ブロックチェーンを使ったサービスをご検討の方はお気軽にお問い合わせください。
担当 佐々木: info@opening-line.co.jp