fbpx

Ethereum EXE Code イベント エンジニア セミナー ブロックチェーン

EXE Code #1:Ethereumプラットフォームでの独自トークンの実装からデプロイまで(開発者向け)

投稿日:2018年2月10日 更新日:

ブロックチェーン開発のためのイベントを開催

今回は毎月行われているBlockchain EXEからさらに焦点をエンジニアに絞り、ハンズオン形式で実装を行いました。第一回目のBlockchain EXE Codeは「ブロックチェーンを使ったアプリケーション開発」です。

Ethereumネットワーク上でのアプリケーション開発とは?

コミュニティ規模、開発ツールの充実ぶりから一番ニーズの多かった「Ethereum」ネットワークを使って、スマートコントラクトを開発しました。

一言にEthereumネットワークのアプリケーションといっても何を始めれば良いのかわからない人も多いかと思います。今回はブロックチェーンそのものを開発するのではなく、Ethereumネットワーク上で動くアプリケーション、すなわちスマートコントラクトをデプロイしてみようという試みです。

スマートコントラクトはどうやって開発するのかに関してはこの辺を参考にしていただければと思います。

Ethereumの開発本を出版している西村 祥一氏によるハンズオン

今回は以前Blockchain EXEにも登壇していただいた西村さんをお招きし、ハンズオン形式で実際にスマートコントラクトを作成し独自のトークンを作成して送金するところまでをレクチャーして頂きました。

西村 祥一 | Comps ITL Pte. Ltd. CEO / KAULA Inc. Chief Architect
日本オラクルにて DB コンサルティングに従事。その後、独立。自然言語処理・機械学習などの学術系案件の開発・コンサルティングを行うと共に、ブロックチェーン技術を用いた開発に取り組んでいる。Global Blockchain Summit 2016ではブロックチェーン技術による位置情報プラットフォームを提案し、Best Innovation Awardを受賞。著書に「はじめてのブロックチェーンアプリケーション~Ethereumによるスマートコントラクト開発入門」(2017年、翔泳社)がある。

当日の様子をスライドを交えてご覧ください。

今回のメインテーマは「独自トークンの発行」です。昨年一気に知名度をあげたICOやプレセール等でよく使われていたetherと互換性を持たせるための開発手法を実装をしながら学びました。独自トークンを実際にビジネスで活用するにはセキュリティの実装などが必要になりますが、今回のハンズオンを通じて感覚をつかむことはできます。

では、もう少し詳しく独自のトークンを発行する上でのポイントを保管しながらまとめてみましょう。

簡単に開発できるMetaMaskというツールを利用

MetaMaskはブラウザの拡張機能ツールで、インストールする事で簡単にetherの送金を行う事ができます。(※今のMetaMaskをインストールできるのはGoogle ChromeかBraveのみ)

また、MetaMaskは今回のハンズオンの様に本番ではなく、Ethereumのテストネット(今回使ったのはRopstenネットワーク)上のアドレスやデプロイしたコントラクトへ送金できるので開発環境としては非常によく使われるツールとなっています。

Ethereum開発の代表格であるERC20

Ethereumはご存知の通り、非中央集権プラットフォームであり、世界中でガバナンスについて議論がなされていて、EIP(Ethereum Improval Proposals)という改善の提案が開発者からできる仕組みになっています。

Ethereumプラットフォーム上では誰でも自由にコントラクトをデプロイできる為、これまで様々なトークンの種類を扱う上で統一化が求められていました。そこでVitalik Buterin氏とFabian Vogelsteller氏によってEthereumベースのトークンでは標準のインターフェースを使いましょうという草案が提出され、2017年9月に採用が決定されました。また、なぜ20かというと、Ethereum公式のGithub上でのissue番号が20だったからという理由だそうです。(参考)

ではなぜ、EIP20ではないのかというと、それについてもGithub上で議論され、もともとソフトウェアの開発で標準化をする上ではよく使われていた、RFC(Request for Comments)を用いて、ERC(Ethereum Request for Comments)という呼び方にしましょうという決定がされていました。(参考)

コントラクト

今回デプロイしたコードはこちらで確認できます。

コントラクトは今回Webブラウザ上で動作するSolidity用のIDE(browser-solidity)を使いました。現状Solidityの開発で活発なのはこちらのbrowser-solidityか、Consensysが提供している総合開発ツール「truffle」となっています。

ちなみに truffleを使う場合、テスト用のアカウント一括管理、blockの検索やログ管理、マイニングのカスタマイズ等ができるツール「ganache」(旧 testrpc)も併せて使うとよりSolidityを使った開発の理解が深まると思いますのでおすすめです。

Ethereumのテストネットで送金テスト

デプロイが正常に完了すると、コントラクトのアドレスがbrowser-solidity上で確認できるようになります。そのアドレスを先ほど紹介したMetaMaskに登録すると、晴れて自分のトークンをMetaMask上で誰かに送金が可能となります。

送金に関してはMyEtherWalletも有名ですが、MetaMaskには秘密鍵をインポートできる機能があるのでMyEtherWalletのウォレットにアクセスできたり、何かと便利ですね。

まとめ

今回はハンズオン形式という初めての試みでしたが、スマートコントラクトをどの様に開発できるのかがなんとなく掴めたかと思います。開発ツールも今後増えて行ったり、Cryptozombies等のオンラインチュートリアルも登場して、ますますSolidity開発が活発になってきています。

次回はHyperldger Fabric編を開催し、それ以外にも様々なゲストを迎えてのハンズオンを企画中です。キャンセル待ちの連絡が増えておりますが、こちらではキャンセル待ち予約などは設けておりません。特にBlockchain EXE Codeは少人数制で理解を深めることを目的としていますので人数枠を増やしにくいです。そのため是非Blockchain EXEのpeatixをフォローしてみてください。

イベント情報をチェック

-Ethereum, EXE Code, イベント, エンジニア, セミナー, ブロックチェーン

関連記事

Blockchain EXE、3月にサンフランシスコで世界最大手ブロックチェーン企業ConsenSysと二度目の共同イベント開催!

Blockchain EXE、3月にサンフランシスコで世界最大手ブロックチェーン企業ConsenSysと二度目の共同イベント開催 Blockchain EXEは、世界最大手のブロックチェーン企業である …

Blockchain EXE スペイン | Industry 4.0: ブロックチェーンとAIは未来をどのように変えるのか?

【Blockchain EXE主催】スペイン・マドリードで初のイベントを開催 2019年3月5日、Blockchain EXEはマドリードのGoogle Campusにて、ヨーロッパで初となるミートア …

アリババ(阿里巴巴集団)はブロックチェーンでなにをするのか

はじめに 中国の大きな問題となっている食品偽装問題に対して、アリババはブロックチェーン技術を用いて不正是正を行う準備を始めています。特にオンラインでの販売を基本とするアリババは深刻な食品偽装に関する早 …

新たな経済圏の衝撃!~ブロックチェーンによって立ち上がり始めた Web3の実現やトークンエコノミーを支える技術とは~ | Blockchain EXE #17イベント

新たな経済圏の衝撃!~ブロックチェーンによって立ち上がり始めた Web3の実現やトークンエコノミーを支える技術とは~ | Blockchain EXE #17 ブロックチェーン関連分野における技術共有 …

中国とブロックチェーンのこれから

経済大国中国と進むブロックチェーン開発 ビットコインの構成要素として開発されたブロックチェーンという技術は、FinTechなど金融分野への活用が見込まれています。キャッシュレス化が日本よりも進む中国に …

イベント情報をチェック
プロフィール
Blockchain EXEはブロックチェーンの動作原理・基礎・応用など技術面の共有に重きを置いたエンジニアコミュニティです。
FBコミュニティ