오늘 포스팅에서는 블록체인 기반 탈중앙화 자율조직 DAO 뜻과 유래/기원 그리고 DAO 작동 방식에 대해서 정리해보려고 합니다.
참고로 DAO에 대해서는 시리즈로 아래와 같은 2가지 포스팅으로 정리하려고 합니다.
(1) DAO란 – DAO 뜻과 기원, DAO 작동 방식 >> 이번 포스팅
참고로 이번 시리즈는 어디까지나 IT트랜드 상의 블록체인 기반 DAO 뜻과 의미를 살펴보기 위한 것으로 투자 목적 등으로 작성된 글은 아닙니다.
앞선 포스팅에서 WEB3.0의 개념과 WEB3.0 코인, NFT에 대해서 정리한 바 있는데요, 이번에는 이러한 WEB3.0 시대의 블록체인 기반 새로운 개념의 조직운영 방식 또는 서비스 그 자체가 될 수 있는 DAO 뜻과 의미를 살펴보려고 합니다.
이번 포스팅에서는 우선 DAO 뜻과 정의를 해보고, DAO의 기원과 유래, DAO의 작동 방식에 대해 가볍게 살펴보고자 합니다.
DAO 뜻과 의미
DAO는 우선 Decentralized Autonomous Organization의 약자로, 직역하자면 탈중앙화 자율조직을 뜻하는데요, 특정한 중앙집권 주체의 개입 없이 개인들이 모여 자율적으로 제안과 투표 등으로 의사표시를 통해 다수결로 의결을 하고 이를 통해 운용되는 조직을 의미합니다.
보통 DAO외에도 DAO 네트워크라고 해서
자율 에이전트(Autonomous agents)
탈중앙화된 앱(Decentralized applications – Dapps)
탈중앙화된 조직(Decentralized organizations – DOs),
탈중앙화된 자율 조직(Decentralized autonomous organizations – DAOs),
탈중앙화된 자율 회사(Decentralized autonomous corporations/companies/community),
완전 자동화된 기업(Fully Automated Business entity:FAB)
의 개념을 통틀어 DAO 네트워크로 지칭하기도 합니다.
DAO 뜻에 대해서 좀 더 풀어서 설명하자면 블록체인을 기반으로 한 자율조직으로 조직 또는 단체에 필요한 규칙을 블록체인 상의 코드로 구현한 다음 이를 중심으로 네트워킹을 진행합니다. 이러한 자율조직의 규칙은 스마트콘트랙트로 구현하고 토큰을 활용하게 됩니다.
The DAO, A DAO, DAOs 차이
보통 다오에 대해서 찾아보면 외국 문헌에서는 DAO를 a DAO 또는 DAOs로 표시합니다.
국내 다오에 대해 정리된 글들을 보면 The DAO와 DAOs와 구분되어 있지 않은채 설명되어 있는 경우가 많습니다.
그 이유는 최초의 탈중앙화자율조직의 명칭이 the DAO여서 일반적으로는 탈중앙화자율조직은 a DAO 또는 Daos로 표시합니다.
최초의 다오 The DAO와 해킹 문제
참고로 The DAO는 이더리움을 기반으로 최초로 DAO의 개념을 실체화시킨 프로젝트로써, 이더리움 Dev팀 메인 개발자 중 한 명이었던 Stephan Tual을 주축으로 팀이 이루어 진행하였습니다. The DAO는 이더리움 블록체인 상에 컨트랙트 코드로 구현하였으며, ‘이더(Ether)’와 자체 발행 코인인 ‘Dao Token’을 화폐로 사용하였습니다.
The DAO를 간단히 설명하자면, 일단 개발자들이 이더리움이라는 블록체인 환경 위에서 스마트 컨트랙트(Smart Contract) 코드를 만들었고 이를 통해 일종의 조직을 만들었습니다. 이 조직의 경영에 참여할 수 있는 권한을 주는 토큰(DAO Token)을 발행해서 클라우드 펀딩을 통해 판매하였고, 이를 통해 조직운영에 필요한 자금(Ether)을 마련하였습니다.
투자가 종료되면, 다오가 작동을 시작하고 참여자들은 다오에 몰린 자금을 어떤 식으로 사용할지 제안을 하고 투표에 붙일 수 있는 구조였습니다. 결국 이 조직은 특정한 운영주체가 없고, 이곳에 투자를 한 개인들이 투표를 통해 운영을 해나가는 방식을 취했는데요,
문제는 다오에서 사용할 수 있는 기능 중 하나는, 투자자들이 크라우드 세일에 참여해서 다오 토큰 구매를 위해 지불했던 이더리움(Ether)를 환불받는 기능이 있었는데요,
이것은 역시 스마트콘트랙 – 컴퓨터 코딩의 방식으로 작동 하는데 이러한 코딩의 논리 자체에 결함이 존재했던 것 입니다.
해커는 이러한 결함을 찾아내었고, 이더를 환불신청(split)해서 이더를 먼저 받고, 자신의 다오 토큰을 되돌려 받기 전에 다시 이더를 환불받는 재귀 call 코드(Recursive calling vulnerability)를 통해 일종의 무한 환불 공격을 만들어낸 문제가 생겼습니다.
즉 환불신청 과정에서 DAO 토큰이 없어져야 하는데 취약점 공격으로 DAO 토큰이 살아 있어서 이더를 무한으로 출금할 수 있었던 것 입니다. 당시 있었던 일에 대해서는 여기 링크(영문)에 상세히 정리가 되어 있네요.
참고로 이 사건으로 DAO프로젝트를 진행한 개발자 중 한명이자 Slock.it 공동설립자인 크리스토프가 아래와 같이 공식 사과문을 작성하고 The DAO는 사실상 해체 수순을 밟게 됩니다.
하지만 다행히 다오에 원래 있었던 규정상 이더리움은 27일 동안 출금을 할 수 없게 돼 있어서 27일 안에 이더리움 개발진들이 조치를 취하면서 해킹되었던 이더리움들은 모두 휴지조각이 되었습니다. 해킹당한 물량과 피해자들을 보호하기 위하여 이더리움은 예정에 없던 포크를 실행하게 되었다.
DAO의 작동 방식
스마트 컨트랙트를 통해 규칙을 설정하고 자금 조달 및 이익배분 구조를 설계한 다음 스마트 컨트랙트를 구현하는 방식입니다.
좀 더 구체적으로 설명하자면 작동을 위해 따라야 할 일련의 규칙을 만듭니다. 이러한 규칙들은 스마트 컨트랙트로 인코딩 되는데, 이는 본질적으로 컴퓨터 프로그램으로서 인터넷 상에 존재하지만 물론 스스로는 할 수 없는 일을 사람들이 수행해야 합니다.
규칙이 정해지고 나면 DAO는 자금 조달 단계로 들어가게 되는데요, 이것은 매우 중요한 부분이 됩니다.
DAO는 일종의 내부 재산, 즉 조직에서 지출하거나 조직 내의 특정 활동에 대한 보상으로 사용할 수 있는 토큰이 있어야 하며
사용자는 DAO에 투자함으로써 투표권을 갖게 되며, 이를 통해 그 운영 방식에 영향을 미칠 수 있게 되기 때문입니다.
자금조달 기간이 끝나고 DAO가 배치되면 완전 자율화 되며, 그 개발자는 물론 그 밖의 어느 누구로부터도 완전히 독립적이 된다. 오픈 소스이므로 그 코드는 누구라도 볼 수 있다. 게다가 모든 규칙과 금융 거래는 블록체인에 기록된다. 따라서 DAO는 완전히 투명하고 변경 불가능하며 부패될 수도 없다.
DAO가 작동하게되면 그 자금의 사용처와 방법에 대한 모든 결정은 합의를 통해 이루어집니다. DAO의 지분을 구매한 모든 이들이 DAO의 미래에 관하여 제안할 수 있습니다. 그러나 네트워크가 제안으로 넘쳐나는 것을 막기 위해, 제안을 하려면 예금이 필요할 수도 있습니다.
이어서 이해관계자들이 해당 제안에 대해 투표하게 되는데요, 어떤 조치를 취하기 위해서는 과반수가 이에 동의해야 한다. 이러한 과반수에 도달하기 위해 필요한 비율은 DAO에 따라 달라질 수 있는데 해당 사항은 DAO의 코드에 명시될 수 있습니다.
다오와 일반적인 기업에 대해서 비교를 하면 아래와 같습니다.
주요구성 | 기업 | DAO |
조직 구조 | 수직적(중앙화) | 수평적(탈중앙화) |
소유권 | 주식보유 기준 | 토큰보유 기준 |
의사 결정 | 주주결정 | DAO 구성원 투표 |
규칙 | 문서화 | 스마트 컨트랙트 |
자금운용 | 자본금, 재무제표 | 트레저리(Treasury), 스마트 컨트랙트 |
투명성 | 회계 감사 | 블록체인 배포 |
이번 포스팅에서는 위와 같이 우선 DAO 뜻과 정의를 해보고, DAO의 기원/유래와 The DAO 해킹사건 그리고 DAO의 작동 방식에 대해 가볍게 살펴보았습니다.
다음 포스팅에서는 DAO 종류와 전망에 대해 정리해보도록 하겠습니다.
참고로 DAO에 대해서는 시리즈로 아래와 같은 2가지 포스팅으로 정리하려고 합니다.
(1) DAO란 – DAO 뜻과 기원, DAO 작동 방식 >> 이번 포스팅