2.1. 이더리움 DAPP 개발환경 셋업 I (Geth, 가나슈, 노드.js, 트러플)
이더리움 dapp과 스마트 컨트랙트를 개발하기 위한 개발환경 셋팅
Geth (게스)
- Go Ethereum의 약자
- 풀 이더리움 노드를 내 로컬 환경에서 cmd를 통해 실행시키는 프로그램
사실 geth가 저수준에서 작동하는것이라 쉽게 쓸 수 있는 가냐슈나 트러플보다 귀찮고 오래걸림.
파이어 폭스나 크롬을 사용. (호환성 문제)
- setup파일에서 development tools 꼭 체크 해주기
(만약 오류가 난다면 패스 문제일 것이다. (환경변수) )
- 설치가 끝난다면 power shell을 실행해서
>>>geth version을 입력하고 설치가 잘 되었는지 확인
PS C:\Users\YOONHOI> geth version
Geth
Version: 1.8.15-stable
Git Commit: 89451f7c382ad2185987ee369f16416f89c28a7d
Architecture: amd64
Protocol Versions: [63 62]
Network Id: 1
Go Version: go1.10.3
Operating System: windows
GOPATH=
GOROOT=C:\go
PS C:\Users\YOONHOI>
Ganache(가나슈)
홈페이지에서 최신버전을 받아도 된다.
강의에서는 안정성을 위해 조금 낮은 버전 설치를 진행했다.
- 보기 좋은 UI 를 제공하는 이더리움 블록체인 툴
- 사용자 친화적
- Test RPC 업그레이드 버전
- 이더리움 노드를 인 메모리로 돌려서 빠르게 트랜잭션을 처리하도록 함.
계정이 미리 생성되어 있기에 , smart contract를 테스트 하기에는 최적의 툴
current block : 노드에서 채굴한 마지막 블록 넘버를 말한다.
gas price : 노드가 트랜잭션을 채굴하기 위한 최소한의 가스 가격
gas limit : 트랜잭션을 무사히 마치기 위해 필요햔 최소한의 가스
network id : 가나슈 서버의 내부 블록체인 식별 아이디가 ~로 초기화 되어서 이더리움 노드를 실행하는 것
RPC server : 게스나 메타마스크에서 이 주소로 연결하면 가나슈 환경을 그대로 쓸 수 있게 해주는 것
mining status : 새로운 블록을 채굴하는 속도 (디폴트로 자동 채굴하게 되어있어서 , 테스트 하기 편하라고 이렇게 되어 있음 , 이 기능을 끄고 채굴단위를 초로 설정할 수도 있고 ㅎㅎ?)
MNEMONIC(님모닉) : 한국어로는 연산기호? 여러 단어들의 조합. 이 단어의 조합을 사용해서 아래에 있는 계정들을 생성하는 비밀문자. 이 문장을 이용해서 메타마스크 같은 곳에서 가나슈 계정을 쉽게 옮길 수 있도록 도와준다. 가냐슈 설치시 랜덤으로 생성되는데 맘대로 바꿀 수도 있다.
shaft clap gun expire course crouch magnet fumace grant shop used vacant=> 키 세팅하는 곳 가서 이렇게 바꿔주자
tx count : 이 계정이 몇번 트랜잭션 했는지
인덱스 : : 이 계정이 몇번째 인덱스인지!
- 키 모양 : 계정의 비밀키 볼 수 있음
