이더리움 토큰 발행 3) 토큰 Local에서 발행하기 / metamask
2021. 7. 16. 13:25ㆍ블록체인/Solidity
1. 환경 설정
2. 작업 폴더 생성
3. 코드 작성
4. 배포
5. 거래
1. 환경 설정
https://jeongjun9-diary.tistory.com/20
계정 생성까지는 동일합니다.
2. 작업 폴더 생성
mkdir jjtoken
cd jjtoken/
truffle init
npm init -y
npm install @openzeppelin/contracts
ganache-cli
3. 코드 작성
1) contracts / JJToken.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import '/@openzeppelin/contracts/token/ERC20/ERC20.sol';
contract JJToken is ERC20 {
uint public INITIAL_SUPPLY = 21000000; //발행량 설정 (비트코인과 동일하게 설정했음)
constructor() public ERC20("JJ TOKEN", "JJT") { //토큰이름, 토큰 심볼 설정
_mint(msg.sender, INITIAL_SUPPLY * 10 ** (uint(decimals()))); //발행 수 설정
}
}
2) migrations / 2_deploy_JJToken.js
var JJToken = artifacts.require("./JJToken")
module.exports = function(deployer){
deployer.deploy(JJToken);
}
3) truffle-config.js
4. 배포
cd jjtoken
truffle compile
truffle migrate --reset //--reset : deploy 다시 함
Metamask 접속 후 토큰 계약 주소에 contract address 입력하게 되면
설정한 토큰 이름과 소수점 자릿수가 자동으로 표기된다. 다음 클릭
5) 거래
토큰 추가하고 메인으로 오면 추가된 모습을 볼 수 있다.
다음 JJT 보내기를 누른다.
검색창에 지갑 주소를 넣어서 전송도 가능하지만 , 계정 간 전송을 사용해보겠다.
Account 2로 접속을 하면 2000JJT가 들어온 것을 확인할 수 있다.
metamask에서 보내기 오류가 나오는 경우가 있는데
x 누르고 다시 실행하면 잘된다.
'블록체인 > Solidity' 카테고리의 다른 글
이더리움 토큰 발행 5) Ropsten 테스트넷 발행 토큰 거래내역 확인 (3) | 2021.07.21 |
---|---|
이더리움 토큰 발행 4) Ropsten 테스트넷에서 발행하기 (infura) (0) | 2021.07.21 |
이더리움 토큰 발행 2) local 테스트넷 배포하기 (2) | 2021.07.15 |
Solidity )remix 스마트 컨트랙트 예약 예제 (0) | 2021.07.14 |
Solidity)remix 짝수 판별 / 반복문 (0) | 2021.07.14 |