テクノロジー

Rails + ブロックチェーンゲーム実装までの技術メモ(MetaMask認証、ERC-721アセットの確認等)

ゆうき's icon'
  • ゆうき
  • 2020/08/07 02:40

忘備録。

同じようなことを実装したいけど、色々とサボりたい人向け。

記事を書いた時点では、ネットでのRails+イーサリアム関連の情報が極端に不足しているので、プロハッカーのmitaku師匠のアドバイスを聞きつつ、メモを残しておきます。

 

 

○ MetaMask(ethereum、web3)のログインと署名(ECDSA、ecrecover)

ホーさんの説明がすごくわかりやすい。

 

また、こちらの(DAppsユーザー認証の)記事の説明も素晴らしい。

 

 

但し、ホーさんの情報はWeb3.js+Node.jsなので、Ruby + Railsではバックエンドの部分が実装できない

(一応、Node.jsのサーバーを追加で立ち上げればいいみたいだけど面倒だから迂回)

 

Rails(Ruby)の場合、サーバーサイドは「ruby-eth」というgemを使うのが良いらしい。

(ecrecoverだけなら、Ethereum.rbやgeth、ganacheとかは不要らしい)

def ecrecover(message, signature) 
  Eth::Key.personal_recover(message, signature) 
end

def ecrecover_to_address(message, signature) 
  public_key = ecrecover(message, signature)
  Eth::Utils.public_key_to_address(public_key) 
end

これで、MeatMaskの署名確認(アドレス認証)に対応できるようだ。

 

 

○ 保有アセット(ERC721)の確認

バックエンドで確認する場合は、OpenSeaのAPIを叩くか「infura.io」でETHのAPIを叩くのが楽で良いらしい。

Ethereum.rb、geth、solidityの組み合わせでも取得できるみたいだが、ただデータを参照するだけなら、ETHのAPIを叩くほうが簡単である。

 

 

○ アセットの発行

アセットの発行ができるツールを使えばOK。

 

 

これで簡易的なブロックチェーンゲームのできあがりである!

とはいえ「Ethereum.rb、geth、solidity」にて、ウォレットの操作ができるようになると、より複雑なプログラムの処理が可能となるため、余裕があるなら、追加で勉強してみるのが良さそうだ。

 

Supporter profile iconSupporter profile icon
Article tip 2人がサポートしています
獲得ALIS: Article like 26.98 ALIS Article tip 3.22 ALIS
ゆうき's icon'
  • ゆうき
  • @yuuki

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

機械学習を体験してみよう!(難易度低)

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

Bitcoinの価値の源泉は、PoWによる電気代ではなくて"競争原理"だった。

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

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

Like token Tip token
38.31 ALIS
Eye catch
テクノロジー

彼女でも分かるように解説:ディープフェイク

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

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

Like token Tip token
46.60 ALIS
Eye catch
他カテゴリ

ALISのシステム概観

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

Uniswap v3を完全に理解した

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

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

Like token Tip token
121.79 ALIS
Eye catch
テクノロジー

オープンソースプロジェクトに参加して自己肯定感を高める

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

約2年間ブロックチェ-ンゲームをして

Like token Tip token
161.20 ALIS
Eye catch
テクノロジー

iOS15 配信開始!!

Like token Tip token
7.20 ALIS
Eye catch
ゲーム

ドラクエで学ぶオーバフロー

Like token Tip token
30.10 ALIS