電通総研 テックブログ

電通総研が運営する技術ブログ

Web3開発入門 with Algorand-TestNetでALGOをゲット

電通国際情報サービス、オープンイノベーションラボの比嘉康雄です。

Web3開発入門シリーズ with Algorand(アルゴランド)、今回のテーマは、TestNetでALGOをゲットです。

今回の記事のGoogle Colab用のノートブックはこちらになります。ブラウザだけでブロックチェーンに対するコードを、実際に動かしながら試せるので、おすすめです。

Web3開発入門 with Algorandの全てのコンテンツ

Algorandには、目的に合わせて、いくつかのネットワークが用意されています。

MainNet

Algorandの本番用のネットワーク。みんながAlgorandと思っているのはこのネットワークです。

TestNet

テスト用のネットワーク。MainNetを使う前に、テストするために使います。基本は、MainNetと同じバージョンです。 入門シリーズで使うのはこのネットワークです。

BetaNet

ベータ版のAlgorandをテストするためのネットワーク。コアな開発者向けなので、あまり使うことはないでしょう。

Algorand Dispenser

Algorandは、トランザクション手数料が0.05円(0.001 ALGO)と非常に安価ですが、トランザクションを処理してもらうためには必ず手数料がかかります。

MainNetでは、クレジットカードや暗号資産取引所を通じて、有料でALGOを手に入れます。

TestNetでは、Algorand Dispenserのサイトで、ALGOを無料でゲットできます。

アカウントを作成するために、py-algorand-sdkをインストールしましょう。

下記のコードを実行してください。

!pip3 install py-algorand-sdk

アカウントを作成しましょう。

下記のコードを実行してください。

from algosdk import account

private_key, address = account.generate_account()
print("Address:", address)

出力結果の例です。

Address: NPDQGX5PSKDOUDUK22CRCCEPMZXQY62YWE25APS73F4MNAWJQLUN5SDFRA

Address:の後ろの部分のアドレスをコピーしてください。

Algorand Dispenserのサイトにアクセスし、I'm not a robootをチェックし、target addressの入力エリアに先ほどコピーしたアドレスをペーストします。

Dispenseのボタンをクリックしてください。 Status: Code 200 successのように表示されればOKです。

ALGOの残高を確認する

先程のアカウントに本当にALGOが入金されたのか確認してみましょう。

Algorandにアクセスするので、AlgodClientオブジェクトを作成します。

下記のコードを実行してください。

from algosdk.v2client.algod import AlgodClient

algod = AlgodClient("", "https://node.testnet.algoexplorerapi.io:443")

AlgodClientオブジェクトを作成するときに、https://node.testnet.algoexplorerapi.io:443を指定していますね。これによりAlgoexplorerTestNetのノードに接続します。

https://node.algoexplorerapi.io:443にすると、MainNetに接続できます。

アカウントの情報は、AlgodClientオブジェクト.account_info()を呼び出して取得します。

下記のコードを実行してください。

info = algod.account_info(address)

infoオブジェクトのamount属性にALGOの残高が入っています。

下記のコードを実行してください。

print("micro ALGO amount", info["amount"])
print("ALGO amount", info["amount"] / 1000000)

Algorand内部では、ALGOmicro ALGOという単位で管理されています。1000000 micro ALGOが1 ALGOに相当します。 つまり、micro ALGOを1000000(0六個)で割れば、ALGOになります。

Algorand Dispenserで10 ALGOをゲットできましたね。

まとめ

TestNetでは、Algorand Dispenserで簡単にALGOをゲットできることが体験できたと思います。

次回は、 支払いです。

なにか感想があれば、Twitter@yasuo_algoにメンションしてつぶやいてください。

仲間募集

私たちは同じグループで共に働いていただける仲間を募集しています。
現在、以下のような職種を募集しています。

執筆:@higa、レビュー:Ishizawa Kento (@kent)Shodoで執筆されました