탈중앙화 자율조직, 탈중앙화 자율 회사, 탈중앙화 어플리케이션 등 - 용어에 대한 불완전한 가이드


DAOs, DACs, DAs and More: An Incomplete Terminology Guide

원문

디지털 컨센서스 분야에서 가장 인기 있는 주제 중 하나는 탈중앙화 자율 실체 (decentralized autonomous entities)의 개념이다. 많은 사람들이 분권화된 자율기업을 개발하고, 탈중앙화된 응용 프로그램을 개발하고 있지만, 아무도 이 불가사의한 용어에 대한 명확한 의미를 모른다. 탈중앙화 조직은 정확히 무엇이며, 탈중앙화 조직과 프로그램의 차이는 무엇이며, 이를 자율적으로 만드는 것은 무엇일까?

스마트 컨트랙트

스마트 컨트랙트는 탈중앙화 자동화의 가장 간단한 형태다. 스마트 컨트랙트는 디지털 자산 및 2개이상의 당사자가 참가하는 메커니즘으로, 일부 또는 모든 당사자가 자산을 배치하고, 계약 당시에 알려지지 않은 특정 데이터를 기반으로 한 공식에 따라 자동으로 재분배되는 메커니즘이다. 이 때 이 공식에 사용 되는 데이터의 결과는 컨트랙트가 시작되는 시점에서는 정해져 있지 않다.

고용계약을 예로 들어보자. A는 웹사이트 구축을 위해 B에 500달러 지불 하기를 원한다. 스마트 컨트랙트에서는 계약이 아래와 같이 작동한다.

  • A는 계약에 500달러를 넣고 이 자금은 잠겨있다.
  • B가 작업을 끝내면 스마트 컨트랙트에 자금을 해제하라는 메시지를 보낼 수 있다.
  • A가 동의하면, 그 자금이 B에게 풀려 나간다.
  • B가 웹사이트 개발을 끝내지 않으면, B는 자금을 포기하는 메시지를 보내 컨트랙트를 종료할 수 있다.
  • B가 끝냈지만, A가 동의하지 않는다면, 7일간의 대기 기간 뒤에 제 3자 J를 통해서 해결한다.

이 스마트 컨트랙트의 핵심 속성은 간단하다. 한정된 숫자의 당사자만 존재한다. 그리고 계약이 시작되는 시점에 모든 당사자가 정해져 있을 필요는 없다. A가 자신의 자산 50단위를 B자산 10단위를 주는 사람에게 판다고 제안하는 매도 주문도 스마트 컨트랙트의 일종이다. 스마트 컨트랙트는 영원히 실행 될 수 있다. 헤지 계약과 에스크로 계약이 좋은 예다. 그러나 이렇게 영원히 운영되는 스마트 컨트랙트에는 여전히 고정 된 수의 당사자가 있어야 한다. (탈중앙화된 거래소는 스마트 컨트랙트가 아니다) 그리고 영구히 작동되도록 의도하지 않는 컨트랙트도 스마트 컨트랙트다. 왜냐하면, 한정된 시간에만 존재한다는 것은 곧 한정된 수의 당사자만을 수반하게 되기 때문이다.

여기에 애매한 영역이 있다. 한쪽에서는 한정적이고 다른 한쪽에서는 영속성을 가진 컨트랙트 들이다. 예를 들어, 내가 디지털 자산을 헤지 하고 싶다면, 나는 누구나 자유롭게 컨트랙트에 참여하고 떠날 수 있는 그런 계약을 만들고 싶을 수 있다. 이 경우 내 쪽은 한정적이지만 (나) 다른쪽, 2x 레버레지로 그 자산에 베팅하려는 사람은 제한되어 있지 않다. 그래서 여기서는 이런 구분을 제안한다. 만약 한정된 숫자의 당사자를 갖는 쪽이 특정한 서비스를 받는 쪽이라면 (소비자), 이는 스마트 컨트랙트다. 그러나 한정된 숫자를 갖는쪽이 수익을 위해 참여한 것이라면 (생산자) 이는 스마트 컨트랙트가 아니다.

자율 에이전트 (Autonomous Agents, AA)

자율 에이전트는 전혀 인간의 참여가 필요하지 않다. 에이전트가 실행되는 환경을 구축하는데 어느 정도 인간의 노력이 필요할 수 있지만, 에이전트가 존재하는 데 있어서는 인간이 존재할 필요가 없다. 이러한 예로는 컴퓨터 바이러스를 들 수 있다. 바이러스는 인간의 의도적인 행동 없이 기계에서 기계로 복제함으로써 생존하며 거의 생물학적 유기체로 존재한다. 이보다 좀더 긍정적인 사례로는 탈중앙화된 자체 복제 클라우드 컴퓨팅 서비스 (decentralized self-replicating cloud computing service) 가 될 수 있다. (AWS, Goole cloud computing service) 이러한 시스템은 가상 개인 서버에서 자동화된 비즈니스를 실행하기 시작한다음, 수익이 증가하면 (트래픽이 증가하면) 다른 서버를 임대하고 자체 소프트웨어를 설치하여 네트워크에 추가한다.

완전한 자율 에이전트 또는 완전한 인공 지능은 공상과학 소설의 꿈이다. 이는 상황의 변화에 적응할 수 있고, 이론적으로 자체 지속 가능성에 필요한 하드웨어를 제조하기 위해 확장 될 수 있다. 이 사이에 있는 컴퓨터 바이러스와 같은 단일 목적 에이전트는 광범위한 가능성을 가지고 있다. 예를 들어, 자기 복제 클라우드 서비스는 특정 공급자에서 서버를 임대할 수 있다. 그리고 좀 더 복잡한 버전으로는, 검색엔진을 사용해서 서버 공급자들을 알려주는 웹사이트를 찾아내고, 거기에 등록된 공급자에게서 서버를 빌려오는 방법도 파악할 수 있어야 한다. 그 다음 단계는 아마도 진화 알고리즘을 사용해 소프트웨어를 스스로 업그레이드 하거나, 서버를 렌탈하는 새로운 패러다임에 적응한다던지 등이 있을 수 있고, 마지막 전 단계는 새로운 산업을 발견하고 스스로 진입하는 능력이 있어야 한다는 것이다. 물론 궁극적인 단계는 AI로 완벽하게 진화하는 것이다.

자율 에이전트를 창조하는 것은 굉장히 어려운 일이다. 이것이 성공하기 위해서는 복잡하고 빠르게 변화하는 환경 뿐만 아니라 적대적인 환경에서도 살아남을 수 있어야 하기 때문이다. 자율 에이전트는 부정행위를 감지하고, 시스템에서 부정행위 노드를 제거하거나 중화할 수 있어야 한다.

탈중앙화 어플리케이션 (Decentralized Applications, DA)

탈중앙화 어플리케이션은 스마트 컨트랙트와 유사하지만 두가지 다른 특성이 있다.

  1. 탈중앙화 어플리케이션은 시장의 모든 측면에서 참여자 숫자가 정해져 있지 않다.
  2. 탈중앙화 어플리케이션은 꼭 금융적인 부분을 다룰 필요는 없다.

두 번째 특성으로 인해, 탈중앙화된 어플리케이션은 실제로 만들기 쉬운 것들 중 하나다. 예를 들어 Popcorn Time, BitMessage, Tor, Maidsafe 등이 있다.

일반적으로 탈중앙화 어플리케이션은 두 종류로 나뉘며, 이 둘 사이에 애매한 영역이 있을 수 있다.

첫번째 클래스는 완전히 익명의 탈중앙화 어플리케이션이다. 여기에서는 노드가 누구인지 중요하지 않다. 모든 참가자는 본질적으로 익명이며, 시스템은 일련의 즉각적인 단절된 상호작용으로 구성된다. 비트토렌트와 비트메시지가 그 예가 될 수 있다.

두번째 종류는 평판을 기반으로 한 탈중앙화된 어플리케이션이다. (평점을 매기는 시스템을 상상해보자.) 여기서 시스템이 모든 노드를 추적하고, 각 노드는 어플리케이션 안에서 평판 상태를 유지하고, 이 평판은 신뢰를 보장하는 목적으로만 순수하게 운영되는 메카니즘 내에서 사용된다. 평판상태는 양도될 수 없어야 하고, 자체적으로 금전적인 가치를 지녀서도 안된다. Maidsafe가 이러한 예다. 물론 완벽하게 구분은 불가능하다. 비트토렌트 같은 시스템도 DDOS를 방어할 목적으로 피어 들이 다른 피어들의 평판과 같은 통계치를 사용하게 할 필요 성이 있다. 하지만 이런 통계값은 완전히 백그라운드에서만 제한된 영역에서 존재해야 한다.

탈중앙화된 어플리케이션 다른 것들 사이의 흥미로운 회색 영역은 비트코인, 네임드 코인과 같은 어플리케이션 들이다. 이 들은 전통적인 어플리케이션들과는 다른데, 왜냐면 생태계를 만들고 이 안에서 가치를 가지는 가상 자산의 개념을 만들기 때문이다. 비트코인의 경우 비트코인이, 네임코인에서는 네임코인들과 도메인 네임들이 될 수 있다.

탈중앙화된 조직 (Decentralized Organizations, DO)

일반적으로 인간 조직은 두 가지 조합으로 정의 될 수 있다. 자산의 집합, 그리고 개인들의 집합을 위한 프로토콜이 그것이다. 여기서 개인은 그 집합에 들어오고 나가는 조건에 따라 특정한 클래스들로 나뉠수도 , 아닐 수도 있다. 그리고 이 프로토콜을 통해 개인은 서로 간에 상호작용을 하게 되는데, 여기에는 각 개인들이 어떤 조건에서 어떤 자산을 사용할 수 있는지에 대한 규칙들도 포함되어 있다. 예를 들어, 체인 스토어를 운영하는 간단한 회사를 상상해보자. 이 회사는 투자자, 직원, 고객이라는 세가지 클래스의 구성원이 있다. 투자자를 결정하는 규칙은 가상 자산의 몫을 얼마나 가지고 있나로 판단된다. 투자자가 되기 위해서는 가상자산의 일부를 사면 되고, 지분을 팔기전까지는 투자자로 남는다. 직원이 되기 위해서는 투자자에 의해 고용되거나 투자자에 의해 구체적으로 권한을 받은 다른 직원에 의해 고용되어야 하며, 같은 방법으로 해고될 수도 있다. 그리고 고객은 오픈 멤버쉽 시스템인데, 누구나 언제든지 공식적으로 인정된 방법으로 자유롭게 가게와 상호작용할 수 있다. 공급자의 경우에는 이 모델에서는 개념적으로 직원과 마찬가지다. 비영리 단체의 경우 기부자와 회원을 가지는 조금 다른 구조를 가지고 있다.

탈중앙화된 조직의 아이디어는 조직개념을 따르되, 그것을 탈중앙화 시키는 것이다. 사람들과 상호작용하고 법을 통해 자산을 관리하는 관리자들의 집합을 통해 운영되는 위계 구조 대신에, 탈중앙화된 조직은 코드에서 명시되고 블록체인 위해 집행 되는 프로토콜에 따라서 상호작용하는 사람들의 집합을 의미한다. 이 경우에도 물리적 자산을 보호하기 위해 법적인 시스템을 사용할 수 있지만, 이는 2차적인 요소일 뿐이다. 예를 들어 주주소유의 기업을 블록체인 위에 완전히 옮길 수 있다. 장기적으로 운영되는 블록체인을 기반으로한 컨트랙트는 각 개인의 소유 지분을 블록체인에 기록하여 유지하고, 블록체인에서 투표를 통해 주주들은 이사회와 직원들의 포지션을 결정할 수 있다. 스마트 자산 시스템 또한 블록체인에 직접 결합할 수 있고, 이것을 통해 자산을 통제할 수 있게 된다.

탈중앙화된 자율 조직 (Decentralized Autonomous Organizations, DAO)

여기서의 가장 궁극적인 목표이자, 가장 모호한 정의를 가진, 탈중앙화된 자율조직과 그것의 기업적인 하위 개념인 탈중앙화된 자율 기업에 대해 알아본다. 탈중앙화된 자율조직의 이상은 쉽게 설명할 수 있다. ‘인터넷 위에 생존하는 독립체이고, 자율적으로 존재하는 한편, 자동화만으로 자체적으로 해결할 수 없는 특정한 과제들을 수행하기 위해 사람을 직접 고용하는 것도 중요시한다.’

탈중앙화된 어플리케이션(DA)와 탈중앙화된 자율조직 (DAO)의 주요한 차이는 DAO의 경우 내부자본을 가지고 있다는 것이다. DAO는 특정한 방법에 의해 가치가 있는 내부 자산을 가지고 있으며, 특정 활동에 대해 보상을 주기 위한 메커니즘으로 서 그 자산을 사용할 능력이 있다. 비트토렌트는 내부자산이 없다. 비트클라우드, maidsafe등은 평판을 가지고 있지만, 이는 팔수 있는 자산이 아니다. 비트코인과 네임코인은 그러나 자산을 갖고 있다.

두번째로, DO를 살펴보자. DO와 DAO의 분명한 차이, 즉 언어 자체의 차이는 ‘Autonomous’라는 단어다. DO에서는 결정하는 주체는 사람이지만, DAO는 어떤 식으로든 자체적으로 결정을 내린다. 이는 굉장히 구분하기 어렵다. 직접적으로 결정을 내리는 행위자들의 집합과, 정보를 통제하는 행위자들 간에는 별 차이가 없기 때문이다. 비트코인의 경우 소수의 마이닝 풀이 모여 51% 공격을 함으로써 블록체인 위에 있는 트랜잭션을 바꿔치기 할 수 있다. 그리고 탈중앙화된 자율 기업(DAC)에서 데이터 입력 공급자들이 모두 짜고 DAC로 하여금 모든 자산을 특정 주소로 보내게 하고, 이를 10년 동안 백만 노드의 컴퓨터 파워를 얻기 위해 지불하는데 사용된 것처럼 보이도록 속일 수도 있다. 이러나 둘 간에는 명백한 차이가 있다.

DO와 DAO 는 모두 이러한 짜고치는 공격에 취약한데, 여기서 절대다수 또는 상당 부분의 특정 멤버들이 DO로 하여금 특정 행동을 하게 만드는 지시를 내리는 공모를 하게 된다. 하지만 여기에 차이가 있다. DAO서는 이것이 하나의 ‘버그’ 로 간주되지만, DO에서는 이는 하나의 ‘기능’이다. 예를 들어 민주주의에서 복수의 구성원이 가장 선호하는 것을 선택하면, 그 선택된 솔루션이 실제로 실행되게 된다. 반면 비트코인의 경우, 특정한 결과를 바라는 아무런 의도나 목적 없이 각자의 이익에 따라 모든 사람이 행동할 때 생기는 ‘기본 행동’ 이 목적이고, 특정 블록체인을 겨냥한 51% 공격은 하나의 일탈로 치부된다. 이러한 사회적 합의 개념은 정부와 비슷하다. 지역 범죄조직이 가게 주인들에게 재산세를 걷기 시작한다면, 이를 정당한 것으로 간주하는 사람은 없을 것이다. 만일 정부가 똑같은 것을 한다면, 대중의 반응은 이를 지지하는 쪽으로 기울어지게된다.

2013년 하나의 예외적인 블록이 사고로 만들어 졌는데, 이 블록이 비트코인 0.8 클라이언트에게는 유효한 것으로, 0.7에선 뮤효한 것으로 여겨지는 사건이 있었다. 일부 노드는 예외블록이 따르는 블록체인을 따랐으며(B1), 나머지는 새로 분리된 블록체인 (B2)위에서 작업하면서 그 예외 블록이 무효라고 간주했다. 마이닝 풀은 IRC에 모여서 B2체인에서 채굴하도록 전환하는 것에 동의했다. 그 이유는, 그렇게 하는 것이 사용자들에게 따로 업그레이드를 요구할 필요가 없기 때문이 었다. 그리고 6시간 후 B2체인은 B1을 추월하게 되었고, 이러한 ‘의도된 행동’ 으로 B1체인이 사라졌다. 이는 커뮤니티에 의해 의도된 ‘51% 공격’ 이었고, 이는 비트코인을 DAO보다는 DO처럼 보이게 만들었다. 하지만 다른 경우에는 이런 일이 일어나지 않을 것이므로, 비트코인을 분류하는 가장 좋은 방법은 ‘자율성 구현에 약간의 결함이 있는 DAO’정도로 보는 것이다.

하지만 비트코인을 DAO로 보는데 동의 하지 않는 사람들도 있을 것이다. 비트코인은 사고하지도 않고, 채굴 프로토콜 외에는 사람을 고용하지도 않고, DAO 종류라기 보다는 DO류의 업그레이드 프로세스를 따르기 때문이다. 이 견해를 가진 사람들은 DAO를 더 많은 정도의 자체적인 자율 지능(AI)를 가지고 있는 무언가로 본다. 하지만, 이러한 관점이 가진 이슈는 DAO와 AA/AI 간에 구분이 있어야 한다는 점이다. AI는 자율적인 반면, DAO는 동작하기 위해서 DAO가 정의하고 있는 프로토콜에 따라서 구체적인 상호작용을 하는 사람들의 개입을 요구한다는 것이다.

DAO

DAO는 자동화의 중앙에, 접점에는 사람이 있다. 따라서 대체적으로 비트코인과 네임코인을 DAO로 보는 것이 적절하다. 물론 DA와의 경계썬을 간신히 넘어선 존재이긴 하지만 말이다. 다른 중요한 구분으로는 내적 자본이다. 내적 자본이 없는 DAO는 DA고 내적자본이 없는 조직은 포럼이다 (G8과 같은). DC는 탈중앙화된 커뮤니티다. 이러한 예로는 레딧을 들 수 있는데, 여기에는 탈중앙화된 플랫폼이 있지만, 이를 둘러싼 커뮤니티가 존재하고, 진짜 책임을 맡고 있는 부분이 커뮤니티인지 프로토콜인지는 사실 모호하다.

탈중앙화된 자율 기업 (Decentralized Autonomous Corporations, DAC)

탈중앙화된 자율 기업은 DAO의 부분집합이다. DAC는 Daniel Larimer가 최초로 주장 했고 그가 주장하는 정의를 빌려오자면, DAC는 배당을 지불한다는 것이다. 즉 DAC에는 지분 개념이 있고, 이는 특정 방법으로 사거나 거래할 수 있으며, 이는 보유자에게 DAC 성공에 따른 지속적 배당을 받을 수 있는 권리를 잠재적으로 부여한다. DAO는 비영리다. DAO에서 돈을 벌 수 있지만, 이는 DAO에 투자하는 것이라 그 생태계에서 참여하는 것이다. 물론 이러한 구분이 명백하지는 않다. 모든 DAO들은 소유할 수 있는 내부자본을 갖고 있으며, 그 가치는 DAO가 강력해지고, 유명해짐에 따라 올라갈 수 있으므로, 많은 종류의 DAO는 어느정도 DAC가 될 수 밖에 없다.

그러므로 이 구분은 상당히 유동적이며, 어느 것을 강조하느냐에 따라 달려 있다. 배당이 얼마나 중요한 것인가? 참여자들에 의해 획득되는 토큰들에 대해 얼마큼 중요한가? 지분이라는 개념이 단순 가상 자산에 대비해 얼만큼 중요한가? 예를 들어 비영리 이사회의 회원 자격은 실제로 지분이 아니다. 외냐면 회원 자격은 자발적으로 부여되고 회수되기 때문에, 투자 가능한 재산으로 분류될 수는 없기 때문이다. 비트코인은 보유자에게 시스템에서 의사결정을 할 수 있는 능력이나 수익배분을 할 권리를 부여하지 않으므로 지분은 아니지만, 기업에서의 지분은 명백하게 ‘지분’이다. 결국 궁극적인 이 구분은 수익 메커니즘과 합의 메커니즘이 동일 한 것이 아닌가 하는 매우 불확실 할 수 박에 없는 것일지도 모른다.

위 정의는 여전히 완성에 가깝지 못하다. 여전히 애매한 영역과 헛점이 많고, DO가 DAO가 되기 위해서는 정확히 어느정도의 자동화가 필요한지는 매우 어려운 문제다. 또한 이것들이 어떻게 만들어 져야 하는 지에 대한 질문도 있다. 예를 들어 AI는 개인 서버 네트워크로 존재하며, 각 서버는 독점적인 로컬 코드를 실행하지만, DO는 완전히 오픈 소스 및 블록체인 기반 이어야 한다. 이 AI와 DO사이에는 추구해야할 다양한 패러다임이 있다. 핵심 코드에 얼마나 많은 지능이 들어가 있어야 하는가? 업데이트를 위해 유전자 알고리즘을 사용해야 하는가? 혹은 개인을 기반으로 투표나 심사 메커니즘을 채택해야 하는가? 회원 자격은 기업처럼 판매가능하고 양도가능한 주식이어야 하는가? 혹은 비영리 처럼 투표로 결정해야 하는가? 블록체인은 작업증명, 지분증명, 혹은 평판을 기준으로 이루어져야 하는가? DAO는 다른 통화로 잔고를 관리해야 하는가 혹은 자체적인 내부코인을 발행해서 보상해야 하는가? 이는 어려운 문제이고, 이제 우리는 이 문제들의 표면을 겨우 보기 시작했을 뿐이다.

Related Posts

npm 'event-stream' 패키지, 비트코인 지갑을 노리는 악성코드에 감염

Step by Step machine laerning - 03

탈중앙화된 AI: 블록체인의 미래

결제 수단으로서 비트코인 사용이 지속적으로 감소 중

분산원장 기술은 사용하기 어렵다

폴크루그먼: 왜 내가 암호화폐에 비관적인가?

블록체인과 분산원장 기술은 어떻게 다른가?

블록체인이 아일랜드 국경 문제를 해결할 수 있는가?

Step by Step machine laerning - 02

비트코인 캐쉬 하드 포크에 관한 논쟁