이더리움 Dapp만들기 3. [private network와 클라이언트 앱 연동하기(Ethereum Wallet)]

in #kr6 years ago

저 번 시간에는 geth를 구동과 관련된 여러 옵션과 geth 콘솔에서 계좌를 생성하고 이더를 전송해봤습니다. 이 번에는 구동되고 있는 private network에 클라이언트 앱을 연결해서 계좌 생성과 이더 전송하는 방법을 알아보겠습니다.

Ethereum Wallet 설치

ethereum에서 공식적으로 제공하고 있는 지갑 앱은 바로 ethereum wallet입니다. https://github.com/ethereum/mist/releases 해당 링크에 접속해서 사용하고 있는 OS에 맞게 다운로드 하고 설치하면 됩니다.

저는 Ethereum-Wallet-linux64-0-10-0.zip 을 다운받고 압축을 풀었습니다. 이더리움 지갑을 실행시키려면 ethereumwallet 파일을 실행시키면 됩니다.

하지만 잠깐! 우리가 만든 private network와 연결하기 위해서 해야할 설정이 있습니다. ethereum wallet은 ipc를 사용해서 network와 연결을 시도합니다.

Ethereum Wallet과 Network 연결하기

ethereum wallet이 연결하는 ipc의 경로는 $HOME/.ethereum/geth.ipc 입니다. 따라서 geth를 구동할 때 --ipcpath 옵션을 설정해서 geth를 구동 후에 Ethereum Wallet를 실행해야 private network와 연결이 됩니다. 아래와 같이 ipcpath옵션을 사용해 geth를 구동합니다.

geth --datadir “./data” --nerworkid 1988 --identity “Mynetwork” --nodiscover --ipcpath “$HOME/.ethereum/geth.ipc” 

다음은 ethereum wallet을 압축을 푼 폴더로 이동 후에 ethereumwallet 파일을 실행시킵니다.

sudo ./ethereumwallet

입력하고 private network와 연결이 잘 되면 아래와 같은 privatenet이 라는 화면이 나타납니다.

01.png

[LAUNCH APPLICATION]을 클릭해서 넘어갑니다. 그러면 아래와 같이 생성된 계좌주소와 가지고 있는 Ether가 표시됩니다.

02.png

Ethereum Wallet에서 새로운 계좌 생성과 이더 전송하기

계좌를 생성하려면 상단 툴바에서 [File]-[New account]를 클릭하고 비밀번호를 입력하면 새로운 계좌가 생성됩니다.

03.png
04.png
05.png

다른 계좌로 이더를 전송하려면 [send]버튼을 클릭하면 됩니다.

06.png

전송할 주소, 받을 주소와 이더를 입력합니다.

07.png

스크롤을 내려보면 수수료를 적는 란이 있습니다. 이더를 전송할 때 수수료를 높게 책정할 수록 빨리 채굴이 될 확률이 높습니다. private network이기 때문에 원래 설정된 대로 그대로 두고 send를 클릭합니다

08.png

send버튼을 클릭하고 계좌에서 전송이 됐는지 확인해보면 아무것도 변하지 않은 걸 볼 수 있습니다. 채굴을 해서 블록을 생성해줘야 완료가 됩니다. :) 지갑 홈 화면에서 스크롤을 내리면 거래 상태를 확인할 수가 있습니다. 아직 완료되지 않은 거래와 완료된 거래가 표시됩니다.

09.png

geth 콘솔창에서 miner.start()를 실행시키셔서 채굴을 완료합니다. 채굴이 끝나면 거래 상태가 완료로 변합니다. :)

10.png

이 번장에서는 private network와 ethereum wallet을 ipc통해서 연결하는 방법을 알아봤습니다. 다음 장에서는 rpc를 이용해서 remix(솔리디티 IDE 툴)을 연결하는 방법을 알아보겠습니다.