왜 블록체인이어야 하는가?

왜 블록체인이어야 하는가?

블록체인, 이중 지불 문제를 막기 위한 방법

블록체인 이중 지불 문제를 방지하기 위해 제안된 합의(consensus) 과정은 거래의 흐름 검증과정, 그리고 현실적인 비잔틴 합의 알고리즘(SOLO와 Kafka) 으로 되어있다.

공개 블록체인에서 합의(Consensus)는 블록을 형성하기 위해 실행된다.
그러나 하이퍼레저 패브릭(이하 ‘패브릭’)에서는 거래의 제안과 체인코드에 의한 실행, 오더러에 의한 배포와 검증과정으로 이루어지는 일련의 거래 프로세스가 이 합의 과정을 대신할 수 있다고 주장한다.

즉 거래의 내용이 설정된 기준과 원칙에 맞도록 움직인다면, 그리고 기준과 원칙에 맞는 지에 대해 거래 제안(Endorsement)단계에서 제안자의 권한과 내용이 그 정책에 맞는지, 체인코드(Smart Contract)정책에 적합한지, 거래 내용이 위조되지 않았는지 체크하고 검증이 된다면 공개블록체인처럼 모두가 참여하는 합의과정이 필요 없게 된다.

패브릭 안에서는 블록이 생성되기 이전까지 거래에 참여하는 참여자의 신원(ID)에 대한 검증이 거래 매 단계마다 이루어지고, 거래 내용이 반복적으로 검토되고, 서명되고, 인증되기 때문에 기존 공개 블록체인의 합의 과정을 대체할 수 있다는 것이다.

이는 블록체인 원래의 분산화를 수용하되 현실적인 거래를 수용하기 위해 ‘분산화된 신뢰’를 ‘관리가능한 회원들간의 검증과 합의에 의한 신뢰’로 바꾼 것으로 보인다.

“왜 블록체인이어야 하는가?”

블록체인은 중앙화된(centralized) 기관의 역할을 대체하기 위해 분산된 원장과 참여자 모두의 합의(consensus)를 기초로 하는 신뢰를 제안하고 있다. 그런데 패브릭에서는 분산원장은 그대로 존재하지만 합의과정 참여를 허가 받은 회원들에게로 최소화 되어 있다. 기존의 프로세스와 다르지 않아 보일 수 있다.

그렇다면 우리는 본질적인 문제, ‘왜 블록체인이여야만 하는가’의 질문에 부딪힌다.

‘왜 블록체인인가?’라는 질문에 대해 패브릭은 이렇게 대답한다.


현재의 개별적인 프로그램(Private Program)이 운영, 갱신하는 개별원장(Private Ledger)을 블록체인은 공유 프로그램(Shared Program)이 운영, 갱신하는 공유 원장(Shared Ledger)으로 대신한다. 공유된 원장과 공유된 프로그램은 결과적으로 시간과 비용, 위험(Risk)을 줄이고, 신뢰와 투명성을 높일 수 있다.

진화하는 ‘하이퍼레저 패브릭’

하이퍼레저 패브릭은 끊임 없이 갱신 중이다.


2018년 3월 20일 Version1.1(이하 v1.1) 이 나왔고, 2018년 7월 현재 v1.2가 공개되어 있다. Fabric v1.2에서는 Private Data Collections, Service Discovery, Access Control, Pulggable endorsement and validation등이 주요 업데이트 항목이다.
(관련 링크 참조 – https://hyperledger-fabric.readthedocs.io/en/release-1.2/whatsnew.html)

v1.1이 나오면서 이전의 버전 v0.6과 v1.0이 지원이 종료되었고, v1.2부터는 별다른 문제가 없으면 약 5년 정도 지원되는 LTS(Long-Term Support)로 정책이 바뀐다.


이전 버전에서는 그 동안 중요하게 논의되던 참여자들의 인증서 부분이 CA-cert (certificate authority certificate), e-Cert(enrollment certificate), T-cert(transaction certificate)가 CA-cert, TLS-cert로 바뀌어 있다.
그리고 익명성 처리를 위해 세분화되었던 Identify Mix가 v1.2에서는 보이지 않고 있다.


패브릭은 최고 수준의 프로그램 소스가 무료로 공개되어 있는 오픈소스라 여러 장점이 있지만,
기업이나 단체에 적용할 경우 지속적인 파생 프로그램이 생겨나고 있다는 점과 문제가 생기면 아무도 책임을 지지 않는다는 점을 고려해야 한다.

특히 더 어려운 점은 패브릭에서 현실 세계의 문제를 블록체인 원칙 안에서 구현하기 위해 각기 다른 오픈소스 프로그램을 연결해서 사용해야 하므로 여러 가지 기술을 한꺼번에 이해해야만 한다는 것이다.

※ 글쓴이 마크애니 최종욱 대표는 IT 신기술 연구·개발에 끊임없는 열정을 쏟아 부은 1세대 벤처기업인이다. University of South Carolina에서 인공지능으로 박사 학위 취득, 상명대학교 컴퓨터 과학과 교수를 역임하였다. 현재는 블록체인과 인공지능 기술 개발에 매진하고 있다.

관련기사 더보기

지식 블로그 리스트 보기