테크 #기술분석#tech#클레이튼
클레이튼 “프라이빗, 퍼블릭체인 모두 만족하도록 분산컴퓨팅 최적화했다”
강민승
등록일: 2019-09-03  수정일: 2019-09-04


“기업 환경에 알맞은 빠르고 안정적인 사용자 서비스에 중점을 둔 블록체인을 만들 목표로 클레이튼을 설계했다. 클레이튼은 퍼블릭 메인넷과 함께 프라이빗 블록체인을 합친 하이브리드 블록체인으로 높은 성능과 탈중앙화를 한꺼번에 잡겠다.”


서상민 그라운드엑스 개발자(사진)는 지난달 30일 삼성 코엑스에서 개최된 이프 카카오 개발자 컨퍼런스 2019에서 클레이튼 블록체인의 특징을 강조하며 이같이 말했다. 그라운드엑스는 카카오의 블록체인 기술 자회사로 작년 3월부터 클레이튼을 개발해왔고 올 6월 클레이튼 메인넷(사이프리스)을 런칭했다.


클레이튼은 이더리움 블록체인의 코드를 포크해 탄생했고 ERC-20 규격의 토큰과 호환된다. 반면 수수료는 이더리움 대비 십분의 일 수준으로 낮은 편이다. 클레이튼은 스마트 컨트랙트를 실행하는 가상 환경인 이더리움가상머신(EVM)을 탑재하고 있으며 스마트 컨트랙트 프로그래밍 언어로 솔리디티를 지원한다. 클레이튼은 web3.js와 같이 클라이언트를 개발하는 도구로 자바스크립트, 자바 버전의 케이버 소프트웨어개발키트(SDK)를 지원하고 있다.


퍼블릭 + 프라이빗 ‘하이브리드 블록체인’ 클레이튼

클레이튼은 기본적으로 프라이빗 블록체인과 퍼블릭 블록체인 네트워크를 합한 하이브리드 블록체인이다. 합의 알고리즘으로는 비잔틴장애감내(BFT) 계열의 이스탄불 BFT 알고리즘을 탑재하고 있다. 먼저 BFT는 1970년대부터 연구된 분산 컴퓨팅 이론으로 악의적인 비잔틴 노드가 존재하는 환경에서도 네트워크 구성원들이 단일한 합의값에 모두 이르도록 메시지 값을 변경, 강제하는 알고리즘을 말한다. BFT 계열 알고리즘에는 종류가 여럿 있으며 일반적으로 비잔틴 노드가 최대 33%까지 차지하는 경우까지 한해 합의의 안정성을 보장한다.


일반적으로 퍼블릭 블록체인은 모든 노드 간 탈중앙화를 통해 데이터의 투명성을 확보할 수 있지만 느린 단점이 있는 반면 프라이빗 블록체인은 빠르고 높은 성능을 목표로 하지만 노드 수를 크게 확장하기 어렵다. 그라운드엑스는 성능과 탈중앙성 모두를 성취하기 위해 합의 알고리즘으로 이스탄불 BFT 알고리즘을 택했다.


이스탄불 BFT는 프래티컬 비잔틴장애감내(PBFT) 알고리즘과 유사하게 작동한다. PBFT의 경우 노드가 많아지면 검증을 위한 메시지 교환이 급격히 늘기에 네트워크 속도가 저하되는 문제가 있다. 즉 노드 수를 크게 확장하기 어렵다. 반면 클레이튼은 고정된 수의 서브 그룹을 생성하고 트랜잭션을 담아 처리하도록 합의 알고리즘의 적용 방식을 개선해 트랜잭션 속도를 높였다. 또 클레이튼 블록체인에서 블록 전파 속도를 높이기 위해 멀티 네트워크 채널도 개설했다. 서 개발자는 “멀티 네트워크 채널을 도입해 블록 전파 지연시간을 52% 줄였다. 이로써 사용자가 요청한 결과값을 받는데 걸리는 시간을 최대 32%까지 단축하는 등 성능을 크게 향상시키기도 했다”고 강조했다. 


사용자의 요청을 순차적으로 처리하는 대부분의 동기식 모델과 달리 클레이튼은 비동기식 트랜잭션 처리를 지원하는 비잔틴장애감내알고리즘(aBFT)을 탑재하고 있다. 이로써 트랜잭션은 순차적으로 대기열에 따라 처리되지 않고 상황에 따라 역동적으로 처리된다. 이는 트랜잭션을 처리하는 효율성을 더욱 높이는 효과가 있다.


한편 클레이튼의 노드는 합의를 담당하는 컨센서스노드(CN), CN을 중간에서 감싸고 요청을 처리하는 프록시노드(PN), 사용자와 접점을 갖고 있는 엔드포인트노드(EN) 등으로 구분된다. 클레이튼에서는 이중에서 블록을 생성하는 권한을 가진 노드를 코어셀 오퍼레이터라고 부른다. 코어셀에는 약 스무개의 기업이 현재 참여해 거버넌스 카운실을 이루고 있다.


‘4000TPS, 블록 완결 1초’ 위한 트랜잭션 병렬처리 기술

서 개발자는 “클레이튼에 적용된 트랜잭션 병렬처리 기술을 사용하면 블록체인의 TPS 수치를 최대 3.3배까지 향상시킬 수 있다”고 강조했다. 클레이튼에 탑재된 트랜잭션을 처리하는 기술은 크게 두가지로 나뉜다. 먼저 클레이튼은 트랜잭션에 타입을 부여했다. 처리 속도를 높이기 위함이다. 서 개발자는 “트랜잭션에 타입을 부여함으로써 트랜잭션 내용을 알아내기 쉽도록 개선했고 검증, 처리 절차를 간결하게 개선할 수 있었다”라고 강조했다. 클레이튼 블록체인에서 트랜잭션은 기본타입과 사업자가 수수료를 대납하는 대칭형 트랜잭션 타입이 있으며 해당 트랜잭션은 타입별로 처리돼 효율을 높이고 있다. 


또 클레이튼은 이더리움에 사용된 타원곡선 디지털 서명 알고리즘(ECDSA)을 블록체인 내에 적용하는 방식도 바꿨다. 많은 경우 블록체인의 트랜잭션에는 보내는 사람의 주소가 서명 안에 암호화돼 담긴다. 시스템에서 송금 등의 요청을 처리하려면 서명 속에서 주소를 해독하는 작업이 매번 필요하다. 이를 EC리커버 기능이라고 부른다. 하지만 요청마다 EC리커버를 매번 처리하는 작업은 병목처럼 적용하는 경우가 많았다. 반면 클레이튼은 트랜잭션 서명에서 주소를 추출하는 요청을 한군데에 모은 후 한꺼번에 계산하는 등 EC리커버 함수를 병렬적으로 처리하도록 개선했다. 서 개발자는 “(EC리커버처럼) 계산량이 많이 드는 리소스를 병렬로 처리하고 네트워크 리소스를 나누는 등의 작업을 통해 네트워크 속도를 최적화 했다”고 설명했다.




“서비스체인, 클립, 트레저 월릿, 모바일 월릿 곧 지원된다”
클레이튼은 사용자가 구축한 블록체인을 메인넷과 사이드 체인 형태로 연결해 확장성을 높일 예정이다. 클레이튼에서는 사용자가 구축한 프라이빗 블록체인을 서비스체인이라고 부른다. 서비스 체인에서는 사용자가 메인체인과 다른 커스텀 설정을 자신의 블록체인에 바로 사용할 수 있어 기능 등을 손쉽게 확장할 수 있는 특징이 있다. 클레이튼 메인넷과 서비스체인은 앵커링을 통해 연결된다. 서비스체인의 내용은 해시값으로 요약, 압축돼 메인넷에 전송돼 기록된다. 앵커링을 통한 메인체인, 서비스 체인간 토큰 교환 기능도 곧 공개될 예정이다. 클레이튼의 서비스 체인은 올 4분기에 정식 공개될 예정이며 배포를 위한 테스트를 현재 진행중에 있다. 


클립은 사용자의 키를 그라운드엑스의 서비스에 보관하고 관리하는 모바일 지갑의 일종이다. 클레이튼에서는 클립을 메타마스크와 대응하는 손쉬운 지갑으로 개발하는 걸 현재 목표로 하고 있다. 브라우저 확장프로그램 형식의 카이카스 월릿도 개발중에 있다. 또 클레이튼은 암호화폐 하드웨어 월릿인 트레저를 지원할 예정이다. 이를 위해 클레이튼은 트레저 월릿 안에 트랜잭션 타입, 계정 타입 프로토콜을 맞추는 작업을 현재 진행 중에 있다. 클레이튼은 자체 모바일 지갑을 확장하기 위해서 스마트폰의 시큐어 메모리 부분에 개인키를 저장할 수 있도록 현재 스마트폰 제조사와 협력을 진행중에 있다.

[강민승 기자]

삼성 멀티캠퍼스 교육광고 201910
북마크
좋아요 : 0
공유
https://dstreet.io/news/view-detail?id=N20190903181738747757
URL복사
댓글 0
댓글쓰기
댓글 쓰기
에어드랍코리아