티스토리 뷰

DApp은 블록체인 네트워크 상에서 작동하기 때문에 사용자는 코드가 동작할 때마다 비용(Gas)을 지불해야합니다.

따라서 개발 및 테스트를 실제 메인 네트워크에서 했다가는 엄청난 개발 비용이 발생할겁니다.

이더리움 네트워크에서는 DApp 개발자를 위해 테스트넷을 준비해놓았습니다.


이더리움 테스트넷에서 사용하기 위한 코인을 얻는 방법은 2가지가 있습니다.

하나는 MetaMask 지갑을 사용하는 경우 [입금]->[이더얻기]를 통해 쉽게 테스트넷 이더를 얻을 수 있습니다.


너무 많은 이더를 요청한 경우

하지만 이 방법으로는 많은 이더를 얻을 수 없습니다.

경우에 따라서 대량의 이더가 필요할 수 있습니다.


이번 포스팅에서는 개발에 필요한 이더를 직접 채굴하는 방법을 알아보겠습니다.

이더리움은 테스트넷이 3가지가 있습니다.

테스트넷에서 채굴하기 위해서는 POW로 동작하는 Ropsten 테스트넷에서만 가능합니다.

세 테스트넷의 다른 점은 링크에 쉽게 정리되어있습니다.


채굴에 사용할 컴퓨터는 집에서 게임 용도로 쓰고있는 컴퓨터입니다. 

Windows 10 Home, 16GB RAM, GeForce GTX970 4G

제 컴퓨터는 16GB RAM이 장착되어있지만, 이더리움을 채굴하기 위해서는 OS가 소비하는 메모리 외에 약 4GB 정도 여유가 필요합니다.

전용채굴기의 효율을 떨어뜨리기 위해 Ethash 알고리즘을 사용하기 때문입니다.

시간이 지날 수록 채굴에 필요한 메모리는 점점 증가합니다.


채굴에 필요한 Ethash 데이터 파일(DAG)



먼저 Geth를 설치하고 테스트넷의 블록을 동기화해야합니다.

설치가 완료되면 [시작]->[Geth]->[Geth] 우클릭->[파일 위치 열기]를 합니다.

Geth 바로가기의 속성을 열고 대상을 다음과 같이 수정합니다.

"C:\Program Files\Geth\geth.exe" console --testnet --rpc

그리고 Geth 바로가기를 관리자 권한으로 실행하면 동기화가 시작됩니다. 

테스트넷은 메인넷보다 체인 크기가 작지만 그래도 시간이 상당히 걸립니다.

콘솔 창만 봐서는 블록 동기화가 얼마나 진행되었는지 알기 어렵습니다.

이더리움 지갑인 Mist를 설치해 관리자 권한으로 실행하면 현재 Geth로 동기화 중인 상황을 쉽게 확인할 수 있습니다.

다른 방법은 Etherscan에서 현재 블록 높이(번호)와 Geth가 동기화 중인 번호를 비교하면 됩니다.


블록 동기화가 완료되면 Geth 콘솔에 다음 명령어를 입력합니다.

miner.setEtherbase('채굴 보상 수령 주소')


다음 명령으로 Geth를 통해 CPU 마이닝을 할 수 있지만 채굴이 쉽게 되진 않습니다.

miner.start(CPU 코어 수)

miner.stop()


GPU를 사용해 채굴하기 위해 ethminer를 다운로드 받습니다.

2018년 6월 기준으로 최신 버전은 0.15.0rc1 이지만 공식 릴리즈는 0.14.0 버전이기 때문에 저는 0.14.0 버전을 받았습니다.

압축을 풀고 바로가기를 만들어 속성을 수정합니다.

D:\BlockChain\Ethereum\ethminer.exe -G -P "http://localhost:8545"

또는

D:\BlockChain\Ethereum\ethminer.exe -U -P "http://localhost:8545"


동기화가 완료된 상태에서 바로가기를 실행하면 채굴이 시작됩니다.


-U 옵션은 Nvidia에서 지원하는 CUDA가 설치되어 있는 경우에 사용하시면 됩니다.

최신 버전의 그래픽카드 드라이버를 설치한 경우 CUDA가 설치되지 않는 문제가 있습니다.

CUDA 유무에 따른 채굴 속도를 비교해보진 않았지만 굳이 애써 설치할 필요는 없을것 같습니다.

추후에 비교 해보겠습니다.


켜놓고 5시간정도 외출했더니 이만큼 벌었모았습니다 ^^








참고자료


Mining Ethereum on Windows - Tim Coulter

ethminer 옵션 알아보기 - 납득이 스티마

이더리움 Test net에서 마이닝 - 곰사냥


댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함