オリジナル仮想通貨作成(BEP-20 Token on BSC)
こんにちは、ここ数日はビットコインが元気ですね。
今回はオリジナルの仮想通貨をBinance Smart Chain上で作っていきます。
この動画を元にトークンを作成しました。
彼は13歳でDeFiアプリケーションを作ったGajesh Naik氏です。
彼についてはこの記事が詳しいです。
The Boy Who Could DeFi: Meet the 13-Year-Old Who Built a $7M Money Manager on Ethereum
免責事項
当記事では、本物の仮想通貨を使用する情報を掲載していますが、当記事の情報によって起きるいかなる結果にも筆者は責任を負いません。
0.準備
- Remix(Solidityのコードを書くとこ) https://remix.ethereum.org/
- Metamask(HiÐΞ使ってる人は大丈夫でしょう)
- BSCメインネット
- 0.01BNB以上(Gas代で使います)
今回のスマコンのデプロイは普段使ってるアドレスとは別のアドレスを使って開発をしましょう。
1.Binance Smart Chain(BSC)につなぐ
Binance Smart Chainのメインネットに接続していきます。ETHのネットワークやPolygonのネットワークなどありますが、ごっちゃにならないように注意してください。
BSCアドレス追加については、リナママ氏の記事が詳しいので、参考してください
BSC(BEP20)アドレスの作り方
2.BSCにBNBを送る
どっかの取引所で0.01BNB以上を入手して送金してください。
ここで注意なのが、BSCに送られているか確認してください。異なるチェーンに送るとGOXします。
GOXした場合、責任は取りかねます。
3.スマコン作成
Remix はスマートコントラクトのWeb型の開発環境です。
FILE EXPLORERSという画面にコードを書いていきます。左側にはファイル、右側に編集画面が表示されます。
新しくbep-20.solというファイルを作成します。
pragma solidity >=0.6.0;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol";
contract GajToken is ERC20 {
constructor(uint256 initialSupply) public ERC20("GajToken", "GAJ") {
_mint(msg.sender, initialSupply);
}
}
上のコードをbep-20.solに記述し、保存します。contractの"GajToken"というのは、Gajesh Naik氏の作成したサンプルトークンのことなので、オリジナルの名前で作ってください。
https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol
このOpenZeppelinというライブラリを使うので、簡単にトークンが作れるというわけですね。他でも応用できそうです。
4.コンパイル
SOLIDITY COMPILERという画面を開いて、Compile bep-20.solをクリックします。
Waringは気にしなくて大丈夫です。
5.デプロイ
次に DEPLOY & RUN TRANSACTIONS を開きます。
- ENVIRONEMNTを「Injected Web3」に変える
- ACCOUNTがMetamaskのアドレスになっていること
- CONTRACTが先ほどコンパイルしたToken(この画面ではGajToken)になっていること
- Deployの横にあるやつでトークン供給量を設定する。
全部確認できたらデプロイします。
Metamaskのトランザクション承認画面が表示されます。

何もエラーが出なければオリジナルトークンの完成です。
6.確認
https://bscscan.com/で確認してみましょう。
デプロイしたら、コードを書いた下のところにトランザクションの詳細が出てくるので、hashをbscscanで検索したら出てくるはずです。
7.トークンをウォレットに追加
トークンのアドレスはDEPLOY & RUN TRANSACTION画面の左下からコピーできます。
それをメタマスクのトークンの追加というところのトークン コントラクト アドレス貼り付ければ表示されます。

私の場合はBNBの下にあるやつです。
作ったトークンはBSCのほかのアドレスに送ることができます。
おわりに
正直BSCはあんまり好きじゃないのですが、簡単にトークンを作成することができたのはよかったです。
Solidityの詳しい記述方法はCrypto Zombiesで学んでいきたいと思います。
参考