クリプト

Algorandのノード立ち上げ

handa's icon'
  • handa
  • 2022/02/02 10:03
Content image
(C)Algorand

はじめに

ブロックチェーン「Algorand」のノードを立ち上げてみました。一回つまづいてOSインストールからやり直しましたが、なんとかできました。コマンド入力でエラーが出たときも、Algorandのフォーラムに質問して適切な答えを得られました。

Algorandの公式ページはこちらです。

 

Algorandを選んだ理由

●ハイスペックなコンピュータでなくて良い(もちろんハイスペックであるほどブロックチェーン、ユーザには好影響)

●Python、JavaScriptといった普段使っているプログラミング言語でアプリが書ける。新たに言語を覚える必要がない

●ステーキングするにはウォレットに1ALGOあれば良く、資金のロックもない

●速い(1ブロック生成に約4.3~4.4秒)

Content image
ALGOエクスプローラ画面。ブロックスピードが4.3sec

●送金手数料が安い。KuCoin取引所だと手数料は0.1ALGOで10円程度。

 

ノードにしたコンピュータのおおまかなスペック

ドスパラ(中古PC屋さん)で以前買っていた「Diginnos」というマシンが余っていたので、使いました。OSはLinuxのディストリビューションの一つ「Ubuntu」にしました。

 

CPU intel Core i5 4570

メモリ 8GB

ディスク HDD 500GB

OS Ubuntu 20.04.1LTS

 

ノード立ち上げ手順

パッケージマネージャによるインストール

sudo apt update
sudo apt upgrade
sudo apt-get install -y gnupg2 curl software-properties-common
curl -O https://releases.algorand.com/key.pub
sudo apt-key add key.pub
sudo add-apt-repository "deb [arch=amd64] https://releases.algorand.com/deb/ stable main"
sudo apt-get update
sudo apt-get install -y algorand-devtools
sudo apt-get install -y algorand
algod -v

 

ノードの起動

sudo systemctl start algorand
goal node status -d /var/lib/algorand/

 

キャッチアップを待つ

goal node status -d /var/lib/algorand/ を実行すると、ノードの状況が表示されます。ノードを起動すると、ブロックチェーンデータをダウンロードして同期する必要があります。これをキャッチアップといいます。

Last committed block: 4431453
Time since last block: 3.9s
Sync Time: 0.0s
Last consensus protocol: https://github.com/algorandfoundation/specs/tree/e5f565421d720c6f75cdd186f7098495caf9101f
Next consensus protocol: https://github.com/algorandfoundation/specs/tree/e5f565421d720c6f75cdd186f7098495caf9101f
Round for next consensus protocol: 4431454
Next consensus protocol supported: true
Last Catchpoint: 4430000#UAQPNY32LP3K5ARGFUQEFTBGELI5ZAQOMBGE7YL5ZFXL2MXWTO2A
Genesis ID: betanet-v1.0
Genesis hash: mFgazF+2uRS1tMiL9dsj01hJGySEmPN28B/TjjvpVW0=

 

Last committed blockがALGOエクスプローラの「LATEST BLOCK」と同じ値になり、Sync Timeが0.0sになるまで待ちます。LATEST BLOCKは、これを書いている時点で19,000,000を少し越えたところです。(4.4秒ごとに1上がります)

キャッチアップは、私の場合約二週間かかりました。おそらく、ハードディスクがボトルネックになっていたと思われます。

Content image
ALGOエクスプローラでLATEST BLOCKを確認する

ALGOエクスプローラはこちら。誰でも見られます。

使用するディスク容量は、これを書いている時点で3GB程度です。たいしたことありませんね。

 

ウォレットの作成

キャッチアップが終わったら、ウォレットを作ります。ここから先は、自分でもrootでもなく、ユーザalgorandとして実行します。ウォレットへのアクセスには、パスワードが必要になります。

※ウォレットの名前は適切な名前にしてください。私はHandaWalletとしました。

sudo -u algorand -E goal wallet new HandaWallet -d /var/lib/algorand/
sudo -u algorand -E goal wallet list -d /var/lib/algorand/

 

アカウントの作成

ウォレット内に自分のアカウントを作ります。まず、キーファイルを作ります。ここで表示されるニーモニック(暗号文)をメモします。

sudo -u algorand -E algokey generate -f spendingkeyfile

 

アカウントをインポートします。ニーモニックを聞かれるので、先ほどメモしておいたニーモニックを入力します。

sudo -u algorand -E goal account import -d /var/lib/algorand
sudo -u algorand -E goal account list -d /var/lib/algorand/
Please enter the password for wallet 'HandaWallet': 
[offline]	Unnamed-0	6ZD2RPQR5NAHVAIPDD6OTKV7G3HPDYRBV3MV3EURKPRUCS4Q72EJ4DF32Q	0 microAlgos	*Default

 

ここで表示されたアドレス(上記だと6ZD...)が、あなたのALGOのアドレスになります。

 

入金

これから、このノードをオンライン登録するのですが、オンライン登録するにはトランザクションの発行が必要です。ということは、今作ったウォレットにALGOが必要です。取引所でALGOを買い、上記アドレスに送金します。1トランザクションの発行には、手数料として0.001ALGO必要です。

取引所から送金したら、ウォレットに着金したか確認します。

sudo -u algorand -E goal account balance -a 6ZD2RPQR5NAHVAIPDD6OTKV7G3HPDYRBV3MV3EURKPRUCS4Q72EJ4DF32Q -d /var/lib/algorand
XXXX microAlgos

XXXXのところに送った金額が表示されます。

 

ノードのオンライン登録

参加キーを作ります。goal node statusかALGOエクスプローラを見て、現在LATEST BLOCKがどこまで進んでいるのか把握します。仮に19000000だとすると、以下のコマンドのroundFirstValidには19000000より少しだけ大きい値(少しだけ未来とする)、roundLastValidには3000000を足した22000000を指定します。これは有効期間の範囲となります(計算式がありますが私も適当です)。既に到来した最終ブロック番号がこの範囲に入っているとだめなようです。

sudo -u algorand -E goal account addpartkey -a 6ZD2RPQR5NAHVAIPDD6OTKV7G3HPDYRBV3MV3EURKPRUCS4Q72EJ4DF32Q --roundFirstValid 19000100 --roundLastValid 22000000 -d /var/lib/algorand/

トランザクションファイルを作ります。

sudo -u algorand -E goal account changeonlinestatus -a 6ZD2RPQR5NAHVAIPDD6OTKV7G3HPDYRBV3MV3EURKPRUCS4Q72EJ4DF32Q -o=1 -t online.tx -d /var/lib/algorand

トランザクションファイルに署名します。

sudo -u algorand -E algokey sign -k spendingkeyfile -t online.tx -o online.tx.signed

トランザクションを送信します。

sudo -u algorand -E goal clerk rawsend -f online.tx.signed -d /var/lib/algorand
Raw transaction ID BTRZ4I3NH6RLB773CO6KFY6RE2LEGPWSSMKFH5KIU57WRPF2EGVQ issued
Transaction BTRZ4I3NH6RLB773CO6KFY6RE2LEGPWSSMKFH5KIU57WRPF2EGVQ still pending as of round 19000100
Transaction BTRZ4I3NH6RLB773CO6KFY6RE2LEGPWSSMKFH5KIU57WRPF2EGVQ committed in round 19000102

 

これで、アカウント一覧を表示したときに以下のように[online]になっていれば完了です!

sudo -u algorand -E goal account list -d /var/lib/algorand/
Please enter the password for wallet 'HandaWallet':
[online] Unnamed-0 6ZD2RPQR5NAHVAIPDD6OTKV7G3HPDYRBV3MV3EURKPRUCS4Q72EJ4DF32Q XXXX microAlgos *Default

 

ステーキング利率

私のノードをオンラインにしたので、ステーキングを始めました。およそ2000ALGOを取引所から送って3日経ちましたので、利率を求めてみます。

1月30日 2000099010 microAlgos 入金

1月31日 2000165010 microAlgos

2月1日 2000233010 microAlgos

2月2日 2000301010 microAlgos

これより、年利は1.23%程度です。現在の残高と総リワード数は、ALGOエクスプローラで確認することもできます。

Content image
アドレスを入力すると、残高と総リワード数を確認できる

ステーキング額が増えれば利率も上がります。FAQによると、100万ALGOのステーキングでは年利7%程度(ただし状況によって変化)とのことです。

 

今後の課題

AWSなどのクラウドのサーバでなくオンプレミスのパソコンをノードとしたので、いきなりパソコンが壊れないうちに次のパソコンに乗り換える必要があります。その際は、一旦ノードをオフライン登録してから作業せよとのことです。自室にノードを置いていますが、埃に気をつけたり足で蹴らないようにしなければなりませんね。

この次は、アプリの開発に挑戦します。

 

以上

 

 

 

 

 

Supporter profile iconSupporter profile iconSupporter profile iconSupporter profile iconSupporter profile icon
Article tip 5人がサポートしています
獲得ALIS: Article like 173.81 ALIS Article tip 27.60 ALIS
handa's icon'
  • handa
  • @handa
コンピュータシステムの開発、子供向けプログラミング教室などを行っています。

投稿者の人気記事
コメントする
コメントする
こちらもおすすめ!
Eye catch
クリプト

【初心者向け】$MCHCの基本情報と獲得方法

Like token Tip token
32.32 ALIS
Eye catch
クリプト

クリプトスペルズで入手したMCHCを引き出す方法

Like token Tip token
196.20 ALIS
Eye catch
クリプト

17万円のPCでTwitterやってるのはもったいないのでETHマイニングを始めた話

Like token Tip token
46.60 ALIS
Eye catch
クリプト

NFT解体新書・デジタルデータをNFTで販売するときのすべて【実証実験・共有レポート】

Like token Tip token
121.79 ALIS
Eye catch
クリプト

CoinList(コインリスト)の登録方法

Like token Tip token
15.55 ALIS
Eye catch
クリプト

UNISWAPでALISをETHに交換してみた

Like token Tip token
40.40 ALIS
Eye catch
クリプト

Polygon(Matic)で、よく使うサイト(DeFi,Dapps)をまとめてみた

Like token Tip token
236.30 ALIS
Eye catch
クリプト

【DeFi】複利でトークンを運用してくれるサイト

Like token Tip token
54.01 ALIS
Eye catch
クリプト

【初心者向け】JPYCを購入して使ってみました!

Like token Tip token
30.03 ALIS
Eye catch
クリプト

Eth2.0のステークによるDeFiへの影響を考える。

Like token Tip token
44.10 ALIS
Eye catch
クリプト

Uniswap(ユニスワップ)で$ALISのイールドファーミング(流動性提供)してみた

Like token Tip token
59.99 ALIS
Eye catch
クリプト

ジョークコインとして出発したDogecoin(ドージコイン)の誕生から現在まで。注目される非証券性🐶

Like token Tip token
38.31 ALIS