SEARCH

검색창 닫기
  • BTC
  • ETH
  • XRP
  • BCH
bithumb제공 bithumb제공
  • BTC
  • ETH
  • XRP
  • BCH
bithumb제공 bithumb제공

[디센터 Tech&Biz]①합의 알고리즘의 진실과 비즈니스 활용

※ 편집자 주

블록체인이 기술 혁명을 넘어 비즈니스 모델을 혁신하고 세계 경제체제를 바꿀 것이란 전망이 나온다. 세계경제포럼은 2025년이 되면 블록체인 산업이 세계 GDP의 10%를 차지할 것으로 예상했고, 가트너는 블록체인의 경제적 부가가치가 2030년 3조 달러를 넘어설 것으로 추정했다.

블록체인에는 많은 기술적 요소가 담겨 있다. 블록체인을 비즈니스에 제대로 접목하기 위해선 기술의 핵심 가치를 올바로 이해하는 것이 중요하다. 세상에 완벽한 기술은 없다. 다양한 각도에서 블록체인 기술을 살펴보고 장단점을 파악한 후 자유로운 발상의 전환을 통해 새로운 비즈니스 기회를 고민해 보면 좋겠다.


한호현 경희대학교 컴퓨터공학과 교수

요즘 블록체인 기술의 화두는 ‘합의(consensus) 알고리즘’이다. 합의 알고리즘 성패에 따라 블록체인 사업의 성공 여부가 좌우되기도 한다.



논란도 많다. 수많은 알고리즘이 등장한다. 그중에는 현실적으로 구현이 불가능한 알고리즘도 있다. 기술적으로도 복잡하다. 전문가조차 이해하기 힘든 경우도 많다. 그럼에도 합의 알고리즘이 중요한 이유는 블록체인의 처리속도 즉, 성능과 관계가 깊기 때문이다.

‘합의 방식’은 어떻게 보면 단순하다. 보통은 다수의 지지를 받거나 혹은 사전에 지정된 방식으로 처리된다. 그러나 블록체인에서 합의는 ‘블록을 만드는 과정에서부터 블록이 유지되는 단계’를 포괄해서 설명한다.

비트코인은 개별의 거래기록을 모으고, 작업증명(PoW)을 통해 블록을 완성한 후 노드(서버)들에게 보내고 노드의 51% 이상이 그 블록을 받아들이면 합의가 이뤄진다.

블록체인 기술을 비즈니스에 적용하기 위해선 합의 알고리즘을 잘 이해해야 한다. 블록체인의 합의 알고리즘 과정이 일반적인 비즈니스 거래와는 다르기 때문이다.

가령, 비트코인은 일정 시간 동안 이뤄진 거래 가운데 일부만을 모아 거래로 인정하고 나머지는 다음으로 넘긴다. 모든 거래가 블록에 기록되고 인정·확정되기까지는 상당한 시간이 걸린다. 다른 블록체인의 경우도 주어진 시간 동안 이뤄진 거래들이 뒤늦게 기록되거나 일부 거래가 누락 되기도 한다.

그러나 우리가 알고 있는 일반적인 비즈니스 거래는 그렇지 않다. 거래는 ‘물건’과 ‘그에 상응하는 대가’를 실시간으로 주고받음으로써 거래가 종료된다. 반면 비트코인 블록체인은 실제로 거래가 있었다 해도 이 거래가 블록에 기록되기 전까지는 존재하지 않는 거래가 된다. 실시간으로 거래를 주고받는 은행 등 중앙집중화된 시스템과 달리 블록체인을 통한 거래는 완성되는데 많은 시간이 걸리기 때문에 문제가 발생할 수 있는 틈이 생긴다.

거래를 완성하는데 걸리는 시간을 악용한 부정거래도 가능하다.

A라는 거래 주체가 다수에게 무작위 거래를 시도하는 경우다. 비트코인 블록체인에서 A가 보유하고 있는 비트코인이 1BTC 라고 가정해보자. A는 B, C, D 등에게 각각 0.9BTC, 0.8BTC, 0.9BTC를 보낸다. 그 합은 2.6BTC가 된다. 이른바 다중 지급이다. 시간이 지나면 A가 보낸 3개의 거래 중 1개만이 실제 거래로 인정될 가능성이 크다. 여기서 한 가지 분명히 할 것은 누구나 이렇게 다중 지급을 할 수 있다는 얘기는 아니라는 점이다. 이는 엔지니어가 의도적으로 작업하고 많은 노력을 기울여야 가능한 일이다. 다만 은행은 실시간으로 거래가 확정된 다음에 다음 거래를 할 수 있지만, 비트코인은 거래가 확정되는데 10여 분이 시간이 걸리기 때문에 이론적으로 그 시간 동안에 다중 지급을 시도할 수 있는 빈틈이 있다는 것을 강조하기 위한 예시로 든 것이다.

다중 지급은 비즈니스 관점에서 보면 부정거래다. 빠른 전산처리가 가능한 은행에서는 애초부터 불가능한 일이다.

문제는 비트코인 블록체인이 위·변조를 방지하고 이중 지급(더블 스펜딩) 등 부정거래를 막기 위해 만들어졌다는 점이다. 그런데 이런 부정거래가 합의 과정을 통해 정상거래로 둔갑할 수도 있다. 앞에 든 다중 지급 예시에서 블록에 1개가 담기면 나머지 2개는 무효로 처리된다. 비트코인은 이런 과정이 평균 10분이 소요되고, 경우에 따라서는 그 이상의 시간이 걸리기도 한다. 일상에서 결제에 활용하는 데는 적합하지 않은 이유다.

비즈니스에 적용하는 것도 마찬가지다. 가령 커피 가게에서 커피를 주문 한다고 하자. A는 비트코인으로 가게에 커피값을 지급하기 전에 자신의 또 다른 비트코인 계좌로 갖고 있던 비트코인을 이전시킨다. 블록이 완성되기 전에 다시 커피값을 지급한 후 커피를 받아 가게를 떠난다. 이렇게 되면 커피 가게 주인은 커피값을 받지 못할 수 있다. 물론 이 역시 일반적 경우는 아니고, 현실에서 일어나기가 쉽지는 않지만 이론적으로는 가능하다는 것을 예로 든 것이다.

앞서 언급한 것처럼 비트코인은 작업증명(PoW)라는 합의 알고리즘 때문에 실제 생활에서 사용하는 데는 많은 제약이 따른다. 이중지급이 발생할 수 있고 이를 막기 위해 일정 시간이 필요하지만, 이런 시간을 받아들일 만한 비즈니스가 거의 없다.

블록체인의 합의는 일정한 조건에 따라 움직인다. 그런데 비즈니스에 적용할 때는 이런 조건을 무시하고, 블록체인을 만능열쇠처럼 이용하려고 한다.

블록체인 기술을 비즈니스에 접목하려고 할 때 꼭 알아둬야 할 점이 있다. 블록체인의 합의 알고리즘이 사실(fact)을 모아 진실(truth)을 만드는 과정이 아니라는 것이다. 경우에 따라서 오류를 모아 진실을 만드는 과정이 되기도 한다. 다수의 합의가 곧 진실이나 사실이 아니라는 점을 유념해야 한다.

앞서 언급한 것처럼 다양한 그리고 새로운 합의 알고리즘이 생겨나고 있고, 처리속도·성능을 높이기 위한 다양한 기술개발과 실험이 진행 중이다. 그런 만큼 블록체인 합의 알고리즘의 진실이 결국 이런 디테일에 숨겨져 있다는 것을 이해하고, 각각의 합의 알고리즘이 가진 장단점을 잘 파악한 후 선택해야 제대로 된 비즈니스를 할 수 있다. /한호현 경희대 컴퓨터공학과 교수·아시아 IC카드 포럼 회장

우승호 기자
derrida@sedaily.com
< 저작권자 ⓒ 디센터, 무단 전재 및 재배포 금지 >

이메일보내기