본문 바로가기

[2018 일반부문 / 은상] it-chain (Customizable and lightweight blockchain)

OSS관리자 게시글 작성 시각 2019-08-19 11:38:54 게시글 조회수 1090

기존의 블록체인이 규모가 방대하고 복잡하여 비IT 중소규모 커뮤니티에서 자신의 도메인에 맞도록 사용하기에 높은 진입장벽을 갖고 있기 때문에, it-chain 프로젝트는 사용자의 목적에 맞게 수정하여 쉽게 활용할 수 있는 경량 맞춤형 블록체인을 목표로 시작되었습니다.


it-chain은 목적에 맞게 쉽게 기능을 추가, 교체, 삭제 할 수 있도록 핵심 기능들을 독립적인 컴포넌트로 분리하였고, 이들간의 의존성을 최소화 하기 위해 컴포넌트간의 통신을 AMQP를 사용하도록 전체적인 아키텍처를 구성하였습니다.


it-chain은 PBFT합의 알고리즘을 사용합니다. 리더가 블록을 생성하고 블록에 대한 합의를 시작하면 1. Block의 전파 2. 리더에게 받은 Block을 Broadcast하고 다른 Peer들 전파한Block과 비교 3. Block의 transaction을 실행하고 결과값과 함께 Broadcast, 다른 Peer들의 결과 값 및 Block과 비교하는 단계로 수행됩니다. 최종적으로 블록을 저장하고, 실행 결과값을 Worldstate로 업데이트 합니다.


it-chain에서 사용하는 스마트컨트랙의 언어는 golang이며, 제공되는 SDK를 통해 쉽게 구현 및 테스트 할 수 있습니다. Docker를 활용해 독립적인 공간에서 스마트 컨트랙을 실행하고 버전 관리 배포를 위해 git을 활용합니다. 뿐만 아니라 Custom한 블록과 트랜잭션을 사용할 수 있도록 설계되었습니다.

맨 위로
맨 위로