이더리움 계열의 코인은 대표적으로 이더리움, 이더리움 클래식, 익스팬스 등이 있다.

RPC연결을 하여 월렛을 컨트롤 하기 위해서는 코어에 접근해서 블록을 syncing 해줘야한다.

 

그런 것을 지원해주는 것은 대표적으로 Go-ethereum(geth)과 Parity이다.

 

Geth

Geth는 이더리움 재단(Ethereum Foundation)이 제공하는 공식 클라이언트 소프트웨어로써, Go언어로 개발되었다.

Geth를 처음 시작하면 네트워크 내의 다른 이더리움 클라이언트(노드node라고도 불림)에 연결하는 작업을 먼저 시작하고 블록체인의 전체 사본을 내려받게 된다.

 

Geth는 블록체인의 복사본을 최신 상태로 유지하기 위해 끊임없이 다른 노드와 통신한다. 또한 블록을 채굴하고, 블록체인에 트랜잭션을 추가하고 블록의 트랜잭션을 검증하며 트랜잭션을 실행할 수도 있다. 그리고 RPC를 통해 상호작용할 수 있는 API를 노출하여 서버 역할을 하기도 한다.

 

Parity

패리티(Parity)는 이더리움 프로토콜의 또 다른 구현체이며, 러스트(Rust) 프로그래밍 언어로 개발되었다. 현재 Parity Inc. 라는 기업에서 운영하고 있다.

이더리움 네트워크에 접속할 수 있는 클라이언트 소프트웨어를 개발하는 길은 누구에게나 열려 있으며, C++, 파이썬 및 다른 언어로 작성된 클라이언트도 있다.

 

 

위 2개의 이더리움 프로토콜에 대해서 개발자의 측면에서 설치하고 통신하는 법을 설명해보겠다. (리눅스 기반)

 

코인거래소에서 일해본 개발자라면 알듯이 코인을 상장하려면 아래의 과정을 따라야 한다.

 

1. 해당 코인의 RPC API를 지원하는 소프트웨어를 확인하고 그것을 서버 PC에 설치

2. 그 소프트웨어를 알맞은 명령어를 입력하여 실행하여, 지갑 저장 디렉토리, 체인 db 디렉토리를 설정

 (실행 명령어는 보통 bitcoind, parity, geth 등 simple함.)

3. 블록 syncing이 정상적으로 완료되면, 직접 코딩하거나 RPC 라이브러리를 활용하여 서버 PC의 해당 port에 연결

4. 정상적으로 통신이 되면 Web3j같은 RPC 라이브러리에서 제공하는 명령어를 통하여 입출금, 잔액 조회 등의  행동을 함

 

다음화에서는 Geth에 대해서 설치하고 API연결하는 법을 알아본다.

 

 

+ Recent posts