RopstenにEthereumのERC20トークンをデプロイした
会社の鎖野郎でやっていた『マスタリング・イーサリアム』の読書会が終わった。
ただぼくは正直、読んだだけだとよくわかってない状態だったし、次はなんか作ってみようという話になったので、ひとまずERC20トークンを作ってRopstenテストネットワークにデプロイしてみた。
その名も AkhToken 。(はい)
コントラクトアドレス: 0x40b1b37744F0230fa4f9b09FE287F2381B87c107
トークンを作るにあたっては便利なライブラリとサービスがあった。
OpenZeppelinを使うと驚くほど簡単に素朴なERC20トークンが作れるんだな〜と感動。
トークン部分のコードはこれだけ。
pragma solidity >=0.5.0 <0.7.0;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/token/ERC20/ERC20Detailed.sol";
contract AkhToken is ERC20, ERC20Detailed {
string private _name = "AKHT";
string private _symbol = "AKHT";
uint8 private _decimals = 18;
address account = msg.sender;
uint value = 100000000000000000000;
constructor() ERC20Detailed( _name, _symbol, _decimals) public {
_mint(account, value);
}
}
他に機能をもたせたい場合はこれをベースに書いていけばよさそうだけど、これだけでも送ったり受け取ったりできるからもうこれでいいじゃん…て気もする。 もうちょっと色々試して遊んでみよう。
Truffle, OpenZeppelinを使ってERC20トークンを書くのはこのあたりを参考にした。
- https://docs.openzeppelin.com/contracts/2.x/erc20
- https://www.trufflesuite.com/docs/truffle/overview
Infuraを使ってRopstenに接続してデプロイする方法はここが参考になった。