메타버스 백서 1
개정일정 버전작성자날짜이메일 V0.1 초고 Eric Gu 2016 년 8 월 eric.gu@viewfin.com V1.2 수정 Chen Hao 2016 년 9 월 hao.chen@viewfin.com V2.0 수정 Michael Jiang 2016 년 10 월 youming.jiang@viewfin.com V2.1 수정 Michael Jiang 2017 년 2 월 youming.jiang@viewfin.com V2.12 수정 Chen Hao 2017 년 7 월 hao.chen@viewfin.com 2
목차 목차... 3 개요... 4 1. MVS 의전반적배경 블록체인... 5 1.1 블록체인소개... 5 1.2 블록체인역사... 5 2. 메타버스설립이유... 8 2.1 가상세계가현실이되다.... 8 3. 메타버스경제모델... 9 3.1 메타버스토큰 ETP... 9 3.2 마이크로 - 인플레이션모델... 12 3.3 스마트자산... 12 3.3.1 스마트자산의등록... 13 3.4 아바타 디지털아이덴티티... 17 3.4.1 { 디지털아이덴티티 s.t.app} { 디지털아이덴티티 s.t.client/address}... 18 3.4.2 기밀유지및정보공유... 18 3.4.3 이상적인데이터주권... 19 3.5 오라클 가치중개자... 21 3.6 잠재적위험과고려사항... 22 4. 메타버스설계원칙... 24 4.1 미니멀리스트설계원칙... 24 4.2 안정적인발전원칙... 24 4.3 호환성원칙... 24 4.4 모듈식설계원칙... 24 5. 메타버스아키텍쳐디자인... 25 5.1 기술모델선택... 25 5.2 기본아키텍처... 27 5.3 메타버스블록체인의서비스... 32 5.3.1 정보인터넷과가치인터넷... 32 5.3.2 블록체인서비스... 33 5.3.3 메타버스서비스로서의블록체인... 34 6. MVS 컨센서스알고리즘및토큰모델... 35 6.1 컨센서스프로세스... 35 6.2 거래유형... 41 6.3 거래기록모델... 42 6.4 디지털아이덴티티및데이터 - 피드... 42 6.5 교차 - 플랫폼... 43 참고... 44 3
개요 메타버스프로젝트 (MVS) 메타버스는디지털자산과디지털아이덴티티를뛰어넘는공용블록체인기술을기반으로한분산형오픈플랫폼이다. 메타버스는기업과개인에게활용가능한기술플랫폼을구축하며시장효율성개선을위해희귀상품 ( 예술품, 골동품 ), 지적재산그리고금융상품반환권등과같은자산들을디지털화한다. 메타버스는스마트컨트랙트와디지털아이덴티티를제공하여독립상점의가치를연결하는가치인터넷을형성한다. 메타버스는기업들과의긴밀한협력을통해양방향으로발전하길원한다. 따라서각버전의메타버스는시장피드백에반응하는지속적업데이트로각각다른수준의기능을지원할것이다. 메타버스의초기버전은실행을위한최소집합으로배포될것이다. 이는향후비트코인을기금으로사용하여디지털아이덴티티와디지털자산과같은추가적인기능들을제공하도록확장될것이다. 메타버스소프트웨어는 AGPL3.0 라이센스협약에따라배포되고 Viewfin 개발팀에의해유지된다. 메타버스는오픈소스개발을위해다음주소에소스코드를배포할것이다 : https://github.com/mvs-org/metaverse 4
메타버스백서 1. MVS의전반적배경 블록체인 1.1 블록체인소개블록체인기술은비트코인시스템에서고안되었다. 블록체인기술의분산된환경과변경불가능한거래기록등의특성으로비트코인은거래사기및이중사용과같은문제들의해결책을제시한다. 이것은블록체인기술적용의첫번째사례로여겨진다. 비트코인은 P2P(Peer-to-peer) 전자화폐시스템으로비트코인을정의한사토시나카모토 (Satoshi Nakamoto) 에의해처음으로발명된정교한온라인지불시스템이다. 과거 7년동안초기의불안함에도불구하고비트코인의명성은점차높아졌고현재는 1000억달러가넘는시가총액을자랑한다. 비트코인은단순한현금시스템이아니라블록체인기술을바탕으로분산된거래기록을구현하고이를통해보안성을보장한다. 더욱중요한것은비트코인이실제자산을디지털화할수있다는것을명백하게입증한것이다. 블록체인은변경불가능한거래기록을유지하기위해암호기법을사용하며분산형시스템으로모든참여자들이자유로이가치를이전하고신용자유환경에서거래를수행할수있도록한다. 이는은행, 보험, 의료, 물류그리고미디어등광범위한산업분야에영향을끼친다. 1.2 블록체인역사블록체인기술의개발과개념은비트코인시스템의해체와재구성을따른다. 비트쉐어 (Bitshares) 와이더리움 (Ethereum) 이블록체인에대한우리의이해를넓히는동안, 네임코인 (Namecoin) 과피어코인 (Peercoin) 은암호화폐에서블록체인개념으로의이동과정에서획기적인기여를하였다. 네임코인과피어코인네임코인은비트코인에서파생된첫응용프로그램이다. 비트코인고유의전자화폐시스템에 분산형도메인이름 개념의추가가설계및구현되었다 ( 이는디지털아이덴티티의전신으로생각할수있다.). 네임코인은노드네트워크의안전성을보장하기위해네임코인과비트코인의동시다발적인채굴을허용하며통합채굴 (merged mining) 을도입하였다. 5
모든블록체인이새로운작업증명 (PoW) 알고리즘을설계하거나알려진채굴집중화문제와함께 PoW 알고리즘을공유하고채굴하드웨어를네트워크의전체노드에배치해야했다면블록체인기술은현재개발단계보다몇년은뒤쳐졌을것이다. 피어코인은지분증명 (PoS) 알고리즘으로잘알려진다른컨센서스메커니즘을제시했다. PoS 알고리즘의공개는저비용으로블록체인을개발하는방법을만들어내며수많은신규블록체인발명을이끌어냈다. 컨센서스메커니즘의마이크로혁신 (Micro-innovation) 역시지속적으로블록체인기술의개발을이끌어냈다. 비트쉐어비트쉐어 (Bitshares) 는위임된지분증명 (DPoS) 컨센서스프로토콜을구현함으로써 PoS 를개선하였다. 비트쉐어는지속적으로디지털아이덴티티에더욱중요성을부가하는 Keyhotee와같은프로젝트에새로운개념을제안하였다. 나아가자산등록과발행을단순화하는다양한트랜잭션을도입하였다. 결정적으로비트쉐어는분산형자산거래소를도입하였다. 보다나은사용자경험을제공하기위해블록생성주기가초단위로이루어질수있도록변경하였지만이는시스템안정성을희생시키는결과를초래했다. 이더리움피어코인이나비트쉐어와달리이더리움은초기단계에서네트워크확보를위해 PoW 컨센서스프로토콜을사용했고이를 PoS 컨센서스프로토콜로변화시킬계획이다. 이설계는초기단계의시스템안전성을우선적으로고려한결과이다. 또한이더리움은블록생성특성과보상매카니즘의향상외에가장중요한스마트컨트랙트의개념을도입했다. 스마트컨트랙트와특별히개발된 EVM을통해이더리움은블록체인에의해처리되는거래유형의범위를확장했다. 여기에는이더리움상의모든거래유형이컨트랙트형식으로시행되어야한다는단점이있다. 공용및허용된블록체인공용블록체인과허용된블록체인의차이점은주로노드와신뢰범위에대한입장에있다. 공용블록체인은노드액세스에대해낮은기준치를가지고있으며일반적으로모든노드를신뢰할수없다고처리한다. 따라서몇몇증명메커니즘 (PoW, PoS 혹은이들의변형 ) 은트랜잭션을기록할책임이있는노드를선택하도록요구된다. 반면허용된블록체인은오로지화이트리스트의노드액세스만허용하고엄격한방화벽을구축한다. 따라 6
서공용블록체인의신뢰메커니즘은일반적인대중을대상으로하고넓은범위를가지고있다 ( 공용블록체인을사용하거나공용블록체인에거래를기록하는모든참여자는신뢰범위안에있다 ). 그러나허용된블록체인은오로지허용된노드만을신뢰하며상대적으로좁은신뢰범위를지닌다. 블록체인로드맵 메타버스에코시스템에기반한 애플리케이션구축 현재우리의위치 가치중개자 분산화자치기구 (Decentralized Autonomous Organization: DAO) 디지털자산거래 디지털인증 스마트컨트랙트 디지털화폐 디지털자산 디지털아이덴티티 비트코인, 비트쉐어그리고이더리움은각각현재의디지털화폐 / 디지털공증, 분산형거래소그리고분산형조직단계에있다. 위와같이표현된오늘날블록체인의상태를보면블록체인기술이여전히개발중이라는것을확인할수있다. 따라서포괄적인기본인프라레이어를표방하는가치전달네트워크에기반한다양한애플리케이션을포함하는블록체인에코시스템을구축하는우리의목표는엄청난노력을요구한다. 7
2. 메타버스설립이유 2.1 가상세계가현실이되다. 메타버스 라는용어는 Neal Stephenson가 1992년에출간한인류가메타버스라불리는가상세계에서아바타를조종한다는내용의공상과학소설 Snow Crash에서처음사용되었다. 아바타를통해누구나전자대리인과소통하고관계를형성할수있다. 현대의삶은 Neal Stephenson의소설에서묘사되는세상과유사하다. 우리의일과삶이점점더인터넷에의존함에따라사람들은더많은시간을오프라인보다온라인에쏟는다. 교류가더욱자주그리고강하게발생함에따라사람들이소통하는방법또한변화되었다. 우리는가까운미래에정보인터넷에서가치인터넷으로이전될것이라예측한다 : 점점증가하는디지털자산이전은온라인에서이루어질것이고아바타 ( 디지털아이덴티티 ) 와중개자오라클은경제모델의새로운주류가될것이다. 메타버스프로젝트의이름은 Neal Stephenson의메타버스에영감을받았다. 8
3. 메타버스경제모델 3.1 메타버스토큰 ETP ETP 메타버스에서사용하는토큰을 ETP라고한다. 총 1억개의 ETP가 ICO와 PoW채굴을통해서발행된다. 비트코인과유사하게 ETP의최소단위는 1*10-8 ETP이다. ETP는메타버스에서송금및거래가가능하며메타버스가 PoS 컨센서스프로토콜로전환된후에는누가블록을만들지결정하는주요요소가된다. ETP의보안은 ECDSA(Elliptic Curve Digital Signature Algorithm) 로보호된다. ETP는디지털화폐의새로운형태가아니며메타버스의권리와이익을나타낸다. 따라서 ETP의가격은어떤법정화폐나비트코인같은암호화폐의가치에고정되지않고메타버스에코시스템의발전과 ETP에대한수요에따라결정된다. ETP는메타버스에서의스마트자산의가치를측정하거나금융거래의담보로사용된다. 메타버스에적용되는비용 ( 신규스마트자산의생성, 신규아바타등록, 자신을오라클 (Oracle) 로지정혹은메타버스상의자산과신원확인을신뢰할수있는기관에요청 ) 는반드시 ETP로지불되어야한다. ETP 배포메커니즘 (1) ICO와커뮤니티구축블록체인산업에서 ICO는보편적이며토큰발행에있어기본적인방법이다. 2014년 1 월비트쉐어 (Bitshares) 는 200일에달하는 ICO기간을가졌다. 이더리움은 2014년 7월에 25,000 비트코인의놀라운금액을모금한 ICO를진행했다. DigixDao와 Lisk 그리고논란의 DAO 프로젝트모두 2016년에 ICO를시행했다중국에서는 NEO가 2015년 8 월과 2016년 9월에각각 2,100 비트코인과 6,119비트코인을성공적으로모금했다. 메타버스프로젝트는첫 ICO에서 2,500만 ETP를배포했다. 나머지 2,500 ETP는메타버스커뮤니티에편의를제공할블록체인 ICO 프로젝트를지원하는메타버스재단을설립하고메타버스에코시스템을강화할투자활동촉진및커뮤니티에대한주요공헌자에게보상을제공하는데사용된다. (2) PoW(Proof of Work) 와 PoS(Proof of Stake) 채굴 9
채굴로알려진프로세스를이용하여메타버스시스템을유지하는데도움을준사람들에대한보상으로약 3,000만 ETP가 PoW 메커니즘을통해배포된다. 메타버스의블록난이도는네트워크의처리능력에맞게조정된다. 블록생성의목표시간은 24초이다. 본백서가작성된당시의실제블록생성시간은 33초이다. 각각의블록에대한채굴초기보상은 3ETP이며블록보상은 500,000블록마다 5% 만큼감소한다. 따라서블록생성시간과블록보상을표준매개변수로설정하면 1) 수년에걸친시간대비채굴된 ETP의양 2) 500,000 블록당획득된총보상의수년간시간대비감소도표를얻을수있다. 백만 년 그림 1: 수년간시간대비채굴된 ETP 의양 백만 년 그림 2: 500,000 블록당획득된총보상의시간대비수년간감소 (3) 코인락과코인락보상 메타버스는 ETP 의경제모델을설계하는한편시스템레벨에유료코인락기능을포함 10
시켰다. 이설계는코인경제모델중에서는최초이며코인시대의토큰화라고볼수있으며향후코인락기능에서얻을수있는금융애플리케이션뿐만아니라 PoS기반경제모델로의길을제공한다. ETP 보상을얻기위해서사용자는코인락기능을주도적으로사용해야한다. 동결기간이종료되면코인베이스거래를통해사용자의코인락주소로원금과함께보내진다. 보상의세부사항은아래와같다 : H+ 블록높이 25,000 108,000 331,200 655,200 1,314,000 보상율 0.10% 0.67% 3.20% 8.00% 20.00% H+ 블록높이 : 현재의블록높이를 H 라고했을때사용자가가장낮은단계의코인락보상을얻기위해서는사용자의 ETP를 25,200 블록동안 ( 블록높이가 H +25200이될때까지 ) 동결해야한다. 보상율 : 사용자가 100ETP를동결하고 2단계코인락보상 (H + 108000블록필요 ) 를선택했다고가정할때 112,669번째블록이생성된후에사용자의주소에 100 * (1+0.67%) = 100.67 ETP의잔액이반영된다. 초기디자인은다섯개의보상단계를제공하지만각단계에서요구되는블록높이는선형적으로상승하지않는다. 만약블록생성시간을일단위로변환하면 ( 실제블록생성시간을 33초로계산하면 ) 각각의코인락단계에서요구되는시간을추정할수있다. H+ 블록높이 25,200 108,000 331,200 655,200 1,314,100 필요시간 10 41 127 250 502 ( 단위 : 일 ) ( 위의값들은계산된수치이다. 보상율은소수점두자리수까지정확하며추정시간은가장가까운정수로반올림되었다. 구체적인보상율과잠금해제시간은실제블록생성시간에따라결정된다.) 이표는보다직관적인방법으로단계보상을보여준다. 수익률과금리는금융산업의중추를이루기때문에사용자는자연스럽게수익률과보상율을비교및대조하게된다. 투자자가투자수익률을고려하는것과비슷한방식으로사용자도코인락보상에대한기회비용, 즉 ETP의가격변동과 ETP 에코시스템의발전을고려하게될것이다. 11
이는외부의중앙은행에의해결정되는금리에의존하지않고블록체인과커뮤니티고유의금리생성을시도하는대담한디자인이다. 그러나이디자인의초기구현은분산화와게임이론메커니즘을통해진정한시장이율에도달하는것은고사하고금리가동적이거나조정가능하지않다는점에서이상적이라고할수없다. 메타버스가발전함에따라메타버스는중앙화된시장과분산화된시장모두에서의 ETP 활동정도를높일예정이다. 시장에서의 ETP 거래는 ETP 금리를결정하는주요데이터포인트로적용될것이다. ETP 금리는의결을통하거나분산화시장에서직접데이터를획득함으로써 ETP 경제모델에영향을미칠입력매개변수로사용될것이다. ETP 송금활동의규모와계좌수, 특수거래 ( 개발예정 ) 그리고기타블록체인매개변수들도 ETP 경제모델에포함될수있다. 3.2 마이크로-인플레이션모델 ETP는메타버스의민주자치기구 (Democratic Autonomous Organization: DAO) 의권리와이익을나타내는토큰이다. ETP는화폐가아니므로인플레이션의대상이될수없지만암호를잊어버리거나부주의혹은사망으로인해서토큰손실이발생할수있다. ETP의순환에서이런 ETP가부족하게되는현상은점차악화된다. 이더리움의백서에서비탈릭부테린 (Vitalik Buterin) 은연간손실률을 1% 로예측했다. 토큰손실이발생할수있고상당량의 ETP가담보로잡히거나저축으로남을수있는것을고려할때우리가설계한 ETP 경제모델은 ETP 순환의수요를충족시키기위한마이크로-인플레이션을도입할필요가있다. 우리는메타버스재단과 ICO를통해서총 5천만 ETP를배포하였으며추후 3천만 ETP가채굴프로세스를통해배포될것이다. 우리는계속해서소량의 ETP를선택된동결기간과인출된코인의총액에따라결정된특정양의코인락보상을통하여일정한질서에의거하여발행할예정이다. ETP 인플레이션률은이를동적으로조정되도록하면서코인락보상률을결정하는알고리즘으로피드백될것이다. 피드백메커니즘은시스템이자체조정과복구를할수있도록하며메커니즘이더욱견고해지도록메타버스향후버전과함께업그레이드될것이다. 우리의최종목표는좀더직관적인경제모델과보다효과적인경제환경을메타버스플랫폼에구현하는것이다. 3.3 스마트자산 12
비트코인의위키피디아페이지에는 스마트자산 의개념의출처를닉자보 (Nick Szabo) 의 1997년연구로잘못기재하고있다 더정확히말하면, 자보는스마트컨트랙트에내장된자산클래스를특정계약조항을수행하도록정의했다. 이더리움프로젝트는스마트컨트랙트의개념을지나치게강조한나머지디지털자산의존재가스마트컨트랙트에의존하고있다. 이런설계는직관과상반된다. 메타버스에서우리는디지털자산의중요성을다시강조하고자한다. 디지털자산이스마트컨트랙트에의존해야하는것이아니라스마트컨트랙트가디지털자산에의존해야한다. 객체지향프로그래밍으로비유하면디지털자산이클래스를형성하는것이라면컨트랙트는클래스에포함된수단인것이다. 이더리움과달리메타버스의고유디지털토큰 ETP는모든거래가일련의입력값과출력값으로정의되는비트코인의 UTXO(Unspent Transaction Output) 모델을사용하며 ETP 의현재및이전의모든보유자들의개인키서명을포함하게된다. 이와별도로우리는스마트자산을관리하기위하여회계모델의사용을실험할것이다. 이는 UTXO모델의이점은유지하면서시스템복잡성을감소시킨다. 이런설계의결과로메타버스에서디지털자산은비트코인처럼쉽게주고받을수있다. 스마트컨트랙트는보다복잡한거래에대한수요가발생했을때에만필요하게된다. 3.3.1 스마트자산의등록스마트자산을등록하기위해서는먼저여러문제들을고려해봐야한다. (1) 왜우리는스마트자산을등록하는가? 블록체인의이점중하나는과거기록을변경하거나삭제하는것을허용하지않는, 타임스탬프처리된덧붙이기만가능한공용데이터저장을제공한다는것이다 ( 블록체인이공격에대항하는능력이완벽하지않고특수한권한을가진개인은블록체인에관여할수있어현실에서는블록체인상의과거거래기록을변경하거나삭제하는것이가능하기때문에 불가능 이아니라 허용하지않는 이라는것에유의해야한다.) 이런속성은등록기능에대한설계요구를충족시킨다. 등록기능은공용이며 13
신뢰할수있는고유기능이다. 따라서블록체인상의등록은오직스마트자산에 국한될필요는없다. 가치를지니는데이터는어떤것이라도블록체인상에저 장할수있는방법을모색할이유가있다. (2) 스마트자산등록기능은어떻게설계되어야하는가? 우리가 등록 에대해말할때실제로언급하려고하는것은데이터로무언가를 기술하는행위이다. 따라서스마트자산등록의첫번째단계는아래두가지핵 심설계요구사항에유의하여 자산 을기술하는일련의데이터를찾는것이다. A. 기술적인데이터세트는재사용이가능해야하며그렇지않을경우데이터 세트의설계는실패하거나효과적이지못하게된다. B. 추후잠재적인응용에대해고려해봤을때일련의문의, 가산, 연산, 인증기 능을동반해야한다. 자산 이상대적으로간단하고일반적인속성및잘차별화된특수속성을갖는 다는것과중요한데이터는자산의전송프로세스에서생성된다는것을고려한다 면스마트자산등록은아래와같은양식을채워나가는것이라고설명할수있다. 카테고리스마트자산필드설명 일반적 속성 (Generic Attributes) 특수 속성 (Special Attributes) 식별 (Identification) 재산목록 (Inventory) 최소단위 (Minimum units) 서술 (Description) 자산을고유하게식별하는문자열자산전송의유효성을판별하기위해요구되는기본적인속성특수속성이저장되는장소 위의요약된기본적인정보구조요구사항을충족한후에는이런정보를어떻게사용할것인지고려해야한다. 비트쉐어는시장기능을토대로하여자산을발행하려하였지만이런방법은복잡한초과담보와앵커링, 가격공급메커니즘등의한계를드러냈다. 기반금융인프라가불완전했기때문에시장은이런큰규모의적용을활용할수없었다. 비트쉐어와이더리움같은블록체인시스템들은 PoA(Proof of Asset: PoA) 의실현가능성 14
또한탐색하기시작했다. 비트쉐어에서는스마트자산의진위여부를개인키서명을포럼에게시하거나계좌신용과연계된자산인증서를제공하는등의대체방식으로확인할수있으면해당스마트자산은스마트자산을인정한사람들로부터평가를받을수있다. 이런방식의문제점은비트쉐어상에서이런인증을제공하는것이불편하다는것이고덜유동적인시장에서는사용자가자신의블록체인자산을발행할이유가부족하다는것이다. 이더리움에서스마트컨트랙트는토큰정의를포함하는모든문제를처리할수있을것처럼보인다. 일부토큰은가치를저장하면서수정가능하기때문에실제로스마트자산으로간주될수있다. 스마트컨트랙트는이론적으로는어떤거친비즈니스모델이라도지원할수있기때문에디직스 (Digix) 같은프로젝트가만들어지게한다. 이는시장에인식된증거체인을형성하는일련의자산증명을제공하기위하여제3자 ( 금거래소, 회계법인, 관리인 ) 와관계를맺는다. 이런방식은자산등록을조작할수없도록하면서블록체인상에기록된다 ( 당연히이시나리오는인공적인하드포크는고려하지않는다.). 두번째단계는등록비용을메타버스경제의설계에포함시키는것이다. 메타버스는아래의항목들을고려사항에포함하였다. A. 등록비용의합법성및합리성. 등록비용은시스템을위한자체보호메커니즘을만들어내기때문에의심할여지없이합법적이다. 스마트자산을 0이나낮은비용으로등록할수있을때시스템은 DDoS 공격에취약해진다. 그렇다면등록비용의적정금액은얼마일까? 현재로서는적정등록비용은정해진바가없다. 설계에따라변동하는 ETP 토큰의가치가어떻게될지는아무도예측할수없다. 따라서우리는가중알고리즘을사용하는비용모델을도입하려고한다. B. 해당거래는이체가아니라특정한기능을갖춘새로운유형의거래이기때문에이런수수료는전통적인거래수수료가아니다. 이런새로운거래유형에의해발생한모든거래수수료의일정부분은메타버스의개발자커뮤니티를지원하기위한특수한시스템주소로보내지며나머지부분은블록을생성하는노드에할당된다. (3) 스마트자산이등록된후에는어떤조치가이루어지는가? 블록체인상에서스마트자산의등록은독립적으로발생하지않는다 ; 이스마트자산이자산의속성을획득하기이전에반드시다른사람들이 PoA 프로토콜을통하여인정해주 15
어야하며그렇지않으면이는데이터의의미없는문자열일뿐이다. 스마트자산이인정을받으면두가지속성을갖게된다 : 바로가치 (value) 속성과수정가능 (editable) 속성이다 ( 혹은수정할만한가치가있는속성 ). 가치속성은자산의시장가치의변동과끊임없는거래를반영한다. 수정가능속성은현실세계의자산순환상에존재하는제약조건을다양한기술수단을이용하여블록체인상에등록된스마트자산에적용한다 ( 비즈니스기반스크립팅언어와가상기계기반의스마트컨트랙트를포함 ). 메타버스는 PoA모델을이용한스마트자산의개발에중점을둔다. 따라서사용자들에게쉽게 PoA를제공하는것에특별한주의를기울여설계할것이다. 또한메타버스는다음과같은사항을제안한다. 1) 가치중개자들로부터제공받은데이터피드를이용하여자산의가치를증명한다. 이런관점에서볼때디직스프로젝트에서각각의제3자는오라클인스턴스 (Oracle Instance) 이다. 2) 블록체인거래에기반한신용이체모델. 한쌍의대칭적인거래를구성함으로써오라클은아래설명된프로세스를통해자산인증을수행할수있다. 자산 P 의의뢰에따른인증수수료 거래 1 자산 P 의등록정보 고정된거래수수료 일반적인사용자 주소 A 거래 1 1. B가받은자산P의등록정보 2. B의개인키서명정보 3. 고정된거래수수료 주소 B 오라클 B 자산 P 오라클인증서를위한 자산 P 의증명을제공 그림 3 16
이것은일반적인사용자와오라클을위조로부터보호하는것이라고볼수있다. 더자세 한설명은아래오라클섹션에기술되어있다. 3.4 아바타 디지털아이덴티티우리는금과같은유형자산을물리적으로소유하는것과같이스마트자산을물리적으로소유할수는없다. 대신스마트자산은디지털아이덴티티를통해개인에게귀속될수있다. 그리고이런디지털아이덴티티는이들이위조될수없도록보장하는수학적개념에의해보호된다. 온라인에서자신의자아를나타내는상징으로서아바타는자신을나타내고블록체인상의스마트자산을보유하는데이용된다. ID카드나휴대폰번호가단지이름을대신할별칭이아닌것처럼아바타를생성하는것은공용키에별칭을부여하는것이상의기능을포함한다. 애플리케이션가치를지니는다른데이터조각들은각각의아바타고유의색인에첨부되고데이터프라이버시를보호하기위한암호기법을통해보호된다. 아바타의소유자가권한을승인 ( 개인키서명을제공하거나특수한거래를시작하거나스마트컨트랙트를통하는등 ) 하지않는한사용자는아바타가암호화되었는지여부와관계없이해당아바타의데이터에접속할수없다. 제로-지식증명과동음형태암호는메시지의내용을공개하지않고아바타가신용점수나유효성결과같은정보를가져오는데있어중요한역할을한다. 비트코인시스템은공용및개인키를이용하여익명으로비트코인을보유하는것을허용하지만현실세계에서대부분의활동은일정형태의개인정보를요구한다 : 예를들어젊은여성기업가단체에가입하려면나이와성별정보를제공해야한다. 아바타는실제사람이보유할수도있지만인공지능 (AI) 기계나사물인터넷기업혹은조직이보유할수도있다. 단일아바타는여러유형의스마트자산을보유할수있으며단일스마트자산은여러개의아바타의소유가될수도있다. 그러므로아바타와스마트자산사이에는다대다관계가존재한다. 다대다관계는좀더복잡해보이지만현실세계에서소유권의형태를더정확하게반영한다. 이러한관계는암호화를통해메타버스상에서보호되고인증된다. 17
거래, 대출, 리스및모기지등많은스마트자산의구체적인 ( 금융 ) 사용사례를찾을수있다. 3.4.1 { 디지털아이덴티티 s.t.app} { 디지털아이덴티티 s.t.client/address} 디지털아이덴티티정보보유애플리케이션은고객측에서이용할수있는디지털아이덴티티정보의부분집합이고이는 (1) 고객은아이덴티티정보의사용권과소유권의절대적보유를의미한다. 애플리케이션이정보사용에대한일시적인권리를가지고있다고하더라도궁극적으로이정보는고객에게귀속되어있다. (2) 데이터사전의일정부분은반드시고객과애플리케이션간에공유되어야하며그렇지않으면교차하는데이터필드가일치할수없게되고교차점이존재하지않게된다. (1) 의기본적인아이디어는고객의아이덴티티정보와관련된이익이애플리케이션에의해서훼손되지않도록보호하는것이다. 사용자는 상시아이덴티티생성, 상태업데이트, 인증요청 과같은적극적인관리수단을통하여사용자의디지털아이덴티티에대한소유권을표명할책임이있다. 혹은사용자가계속정보에대해절대적소유권을보유한상태로선택적으로어떤정보의권한을허용함으로써애플리케이션의서비스를이용할수있다. 이주제는백서의뒷부분에서설명한다. (2) 의기본적인아이디어는고객에게필드명칭을정의할수있는제한된자유를허용하는것이다. 이내용은백서의뒷부분에서설명한다. 3.4.2 기밀유지및정보공유모두가알다시피비대칭암호화는암호화에공용키를사용하고상응하는개인키를해독에사용하여정보를비공개로전송될수있도록한다. 또한개인키로만들어진디지털서명은사용자가자신의신원을상응하는공용키로인증할수있도록한다. 키는다음과같은목표를달성한다. 1) A는처음부터자신의모든디지털아이덴티티정보를암호화할수있다. 2) A는개인키를공개하지않고자신의일부디지털아이덴티티정보를공개할수있다. 3) B는 A로부터받은정보가평문 (plaintext) 과그에상응하는블록체인상에등록 18
된암호문이일치한다는것을검증할수있다. 평문 m M 암호화 블록체인상의 암호문 C 검증 : 만약 c2 =c 이면 m1=m 이다 B 에게서획득한정보는블록체인과일치한다 는것을나타냄 B 가공유한 평문 m1, pka, 주소 C 암호화 암호문 c1 C1 해독 평문 m1, pka, 주소 C M1 암호화암호문 c2 그림 4 그러나이구조는위에제시된세가지목표범위를벗어나는문제를해결할수없다. 예를들어 B 는여전히 A 의개인정보를침해하여 A 로부터획득한정보를유출할수있 다. 더나아가블록체인상의거래가디지털서명을수반하기때문에아이덴티티관련정보를공유하는거래나디지털아이덴티티를생성하는거래는일반적으로동일한계좌에서발생한다. 이는 A의디지털서명을암호문c1에포함시킬필요를제거한다. 그러나이두거래가서로다른계좌에서시작된다면 A는자신이실제로해당디지털아이덴티티를소유하고있다는것을증명하기위해반드시디지털아이덴티티를만든디지털서명을제공해야한다. 3.4.3 이상적인데이터주권 오늘날우리는고유의디지털아이덴티티를만들고관리할수있는권리를서비스제 공자에게넘겨주고있다. 한번디지털아이덴티티가제공자의서버에저장되면자신의 개인정보에대한주권을보유하는것은거의불가능해진다. 메타버스는디지털아이덴티티가지적재산의한형태로분류되어야하며특수한자산 클래스를형성해야한다고믿는다. 평문 (plaintext) 으로된아이덴티티정보의노출은 대개지적재산권의침해를내포한다. 그러나 공유 라는행위는 가치 의본질을변화 19
시키는것을보여준다. 이러한변화가사용자에게이익이될것인지피해가될것인지는지켜봐야할것이다. 메타버스는누구나개인화된 이력서 를등록할수있는플랫폼을제공한다 : 사용자는소액의정보저장수수료를대가로커스터마이징된변조방지이력서를소유할수있게된다. 타임스탬프와공용 / 개인키암호화는개인의정보소유권을보호하게될것이다. 이름과휴대폰번호가악용될수있지만인증코드나여권번호같은강력한증거체인을제공할수없다. 따라서사용자는사용자에게독점적으로귀속된가장먼저, 가장완전한, 가장최신버전의디지털아이덴티티를동시에소유하게될것이다. 메타버스상에서디지털아이덴티티에대한인증메커니즘은스마트자산의인증메커니즘과유사하며오라클이제공하게될것이다. 이는백서뒤쪽의오라클부분에서자세히설명할것이다. 메타버스에서디지털아이덴티티를생성하는과정은다음과같다. (1) 이메일주소나휴대폰번호같이강력하게인증될수있는개인정보를제공 (2) 필드명과필드값정의를통한기타개인정보커스터마이징예 ) 필드명을 도시, 필드값에 상하이. (3) 즉시블록체인에등록하고싶지않다면정보를로컬에저장하고언제든지수정할수있다. (4) 정보가변경불가의기록이되려면사용자는디지털아이덴티티를생성하고블록체인상에서거래를발행하기위해소액의 ETP를수수료로지불해야한다. 메타버스에서이런디지털아이덴티티를사용하기위해아래의단계를거친다. (1) 애플리케이션서비스제공자는데이터요청을보낸다 ; 이데이터는그림 4와같이공유될수있다 (2) 등록한디지털아이덴티티를검증하도록오라클에요청한다. 이런오라클에는은행, 공공보안시스템혹은이미검증받은친구등이포함될수있다. (3) 개인이력서타임라인이생성된다. 이런간단한애플리케이션의효과는몇년이지난후에보다분명해진다. 비양심적인서비스제공자에의해서수정되지않은인생의기록을발견할수있을것이다. 20
3.5 오라클 가치중개자앨리스와밥의예를들어어떻게오라클중개자가간단한뉴욕날씨예보계약에요구되는지알아보자. 답은세가지이다 : 날씨데이터를입력하는사람, 중개하는그룹, 제 3의보증인블록체인기술은신뢰할수있는중개자를제거할것을요구한다 ( 중개인배제 ). 현재시점에서이것은환상처럼보인다. 우리는앞으로도한동안중개자가계속해서중요한역할을할것이라고믿는다. 중개자는물리적세계와가상세계사이의웜홀같은역할을한다- 중개자가없으면이두세계간의소통이저해될것이다. 현재우리는부분적인적용은고사하고물리적세계와가상세계의가치인식과논리를코드로수량화할수있는방법이부족하다. 중개인배제 라는슬로건과달리메타버스는블록체인에서오라클이라고알려진가치중개인을보유할것이다. 아이덴티티검증오라클은아바타와관련된개인정보에대한증명을제공할수있으며관리인오라클은실제자산의관리와그것을블록체인상에스마트자산으로발행할수있다. 규제오라클 ( 특수거래를규제하는정부부처등 ) 은법규준수와거래인증에대한증거를제공하는등의서비스를제공할수있다. 메타버스의기타많은오라클이이와같은서비스를제공할수있다. 거시적수준에서오라클은거래가능유형을풍부하게하여블록체인에가치를부여한다. 메타버스가 30,000,000 ETP를 PoW채굴을통해서배포한후에 DPoS 채굴보상은주로거래수수료에서비롯되게된다. 메타버스는정보등록과인증그리고기타거래유형에기반한가치중개에코시스템에대한네이티브함수들을설계했다. 각각의거래유형은디지털아이덴티티와스마트자산과관련된다양한애플리케이션을지원한다. 우리는거래수수료에서창출된부가가치뿐만아니라거래수수료의총액역시증가할것이라고예상하고있다. 비트코인같은지불네트워크에서거래수수료 ( 사용료 ) 가얼마나감소할것인지는끊임없이논의되는문제이다. 동시에증가하는블록크기와생성률은채굴자와노드가배포된장부를지원할수있도록장려하면서비즈니스요구를충족하고네트워크에지속적인가치의흐름을주입하는데에도움을줄것이다. 이런문제를재검토해보면거래수수료가거래뿐만아니라블록체인서비스 ( 가치중개서비스나스마트컨트랙트활성 21
화 ) 에대해서도부과될때블록체인의가치는더이상블록용량과생성률에만의존하지않게된다. 블록체인은새로운기회를열면서서비스의질을강화하고가능한서비스의유형을늘려가치를생성할수있다. 채굴자는더높은수익률로서비스수수료에서많은부분을획득할것이기때문에채굴자에대한인센티브모델역시새로운균형점에도달할것이다. 이전에는이런서비스가오프라인으로수행되었고블록체인기술의이점 ( 거래를기록하는것제외 ) 을사용하거나블록체인시스템 ( 거래수수료제외 ) 에기여하지않았다. 이런 거래 만을기록하는것은의미가없다. 모든서비스는희소성과중요성그리고기타특성에기반한시장이율에따라토큰으로가격이책정될것이다. 3.6 잠재적위험과고려사항블록체인기술은아직개발초기단계에있으며연구노력이진척됨에따라성숙해질것이다. 블록체인기술은비트코인시스템에서유래되었기때문에비트코인의결함과장점을모두보유하게될것이다. 블록체인팽창비트코인의블록체인은전체노드를운영하는비용을눈에띄게증가시키면서 10분마다 1MB씩커진다. 비트코인은전세계적으로 2013년말에 10,000에서 2016년 7월에약 5,500까지전체노드가감소하는것을경험했다. 이더리움의블록체인은매달 2GB 의비율로증가하고있으며증가속도역시증가하고있다. 결국메타버스블록체인도메타버스의 UTXO 모델적용으로인하여악화될수있는팽창문제와직면하게될것이다. 이문제는이더리움백서에잘기술되어있다 채굴자들은채굴을하기위해서전체노드를운영해야하므로초기단계에서는이문제가채굴자들에의해서제기될것이다. 채굴집중문제채굴은양날의검이다. 한편으로는시스템이컴퓨터성능에의해보호된다고보장하고한편으로는 51% 공격의잠재적인위협과채굴집중같은새로운문제를발생시킨다. 채굴집중은비트코인업계에서매우바람직하지않은결과를낳으며이더리움의퍼스트무버이점의단계적침식을부른다. 우리가이런문제를피할수있다고장담할수없다고할지라도메타버스는 HBTH- 22
DPoS 컨센서스알고리즘으로의시스템마이그레이션이이루어질때까지채굴알고리즘을최적화하여그속도를충분이낮출수있기를희망하고있다. 비즈니스성공에의해초래될잠재적실패메타버스가비즈니스적성공을거둔다면새로운위험에직면하게된다. 메타버스상의디지털자산의총가치가일정수준에도달하면메타버스시스템을공격하고거래소에서메타버스의디지털자산을단락시키는것이수지맞는장사가된다. 따라서메타버스의디지털자산의총가치는시스템을유지하는비용과시스템을공격하는비용 (PoW단계에서이것은채굴비용을의미한다 ) 의함수이다. 이상적으로디지털자산의총가치는채굴비용의 5배를넘지않아야한다. 23
4. 메타버스설계원칙 4.1 미니멀리스트설계원칙블록체인의핵심은장부이고장부의핵심기능은기록을지키는것이다. 메타버스는디지털자산과디지털아이덴티티장부의설계를이러한장부의개념에초점을맞출것이고기본적인기능위에애플리케이션레이어콘텐츠를몰아넣는것은고려하지않을것이다. 우리는모든기능을최대한단순하게유지하고 MIPs(Metaverse Improvement Proposals) 를통해기본인프라를확장하기위해분투할것이다. 우리는이것을미니멀리스트설계원칙이라고한다. 4.2 안정적인발전원칙메타버스의발전중에는오직두가지상황에서만 MIPs를요구한다 핵심기능강화 보안문제보수상황과관계없이메타버스블록체인이안정적인방식으로운영되도록보장해야한다. 4.3 호환성원칙메타버스버전은반드시이전기종과호환가능하며데스크탑과모바일기기를포함하는모든운영플랫폼을지원한다. 4.4 모듈식설계원칙메타버스를시행하는과정에서는다층구조모델 (multitier architecture model) 이사용되어야한다. 기능은모듈로나눠져야하고모듈간의결합도수준은감소해야한다. 24
5. 메타버스아키텍쳐디자인 메타버스개발은다음두단계로나뉜다 : 첫번째단계에서메타버스는 PoW 컨센서스알고리즘을기반으로한다. 주로디지털 ID, 디지털자산등록및전송, 간단한내장형스크립트, 데이터피드및신용평가와같은기능을제공할것이다. 메타버스는개방형플랫폼에코시스템을형성하는모든컨소시엄블록체인을지원할수있다. 두번째단계에서메타버스는 DPoS 기반의향상된컨센서스알고리즘 (HBTH-DPoS) 으로전환한다. 1 단계에서개발된에코시스템을기반으로스마트컨트랙트기능을확장하고완전한오라클서비스를제공할것이다. 다음섹션에서는주로메타버스의기술선택및아키텍처에대해설명한다. 5.1 기술모델선택첫번째단계에서는비트코인, 이더리움및비트쉐어시스템에서선택할수있는세가지기술적솔루션이있었다. 이세가지중에서이더리움의코드시스템은신규버전을보다빠르게업데이트하고 EVM (Ethereum Virtual Machine, 이더리움가상머신 ) 과함께제공된다. 메타버스의첫개발단계 ( 낮은레벨재구성 ) 동안활용가능한시간과제한된자원을고려할때이더리움의시스템은적합하지않을수있다. 메타버스의엔트리포인트는디지털 ID와디지털자산이다. 메타버스는극도로이상화된비트쉐어시스템을고려했었다. 그러나 " 앵커링메커니즘 " 및비 UTXO 모델로인해코드에서제거만할수있었다. 코드재사용성원칙으로인해코드를제거하는위험과어려움은코드를추가하는위험과어려움보다훨씬크다. 따라서메타버스는결국비트코인의기술시스템을선택했다. 비트코인의기술시스템에서메타버스의주요코드는 Libbitcoin을자체계층적결정성 (Hierarchical Deterministic, HD) 계정시스템을설계하기위한프레임워크로사용한다. 다양한트랜잭션유형을디자인하기위해이더리움의 Ethash 알고리즘이통합되었다. Libbitcoin 선택의이점 : 1. 메타버스는단순한알트코인 (altcoin) 이아니다. 디지털자산과디지털아이덴티 25
티를통합하려면코드가고도로모듈화되어야한다. 비트코인코드의 0.8 및 0.12 버전을연구한결과우리는메타버스의개발및유지관리에도움이되지않는 Bitcoin Core 코드의결합정도가비교적높다는것을알게되었다. 2. 코드구조측면에서 Bitcoin Core의역사적문제점 ( 예 : C ++ 템플릿및매크로혼합 ) 은디버깅을방해한다. 불분명한클래스상속구조또한재구성을방해한다. 3. Bitcoin Core 코드는유니코드를지원하지않는다. Libbitcoin과 Bitcoin Core의코드를비교한결과특히 Libbitcoin이가독성과모듈결합영역에서더유리함을발견했다. Libbitcoin 선택의단점 : 1. 채굴자, 계좌및 json-rpc와같은중요한모듈이누락되었다. 2. 여기에는블록동기화및네트워크연결설정과관련된더많은버그가포함되어있다. 3. Libbitcoin은 boost-asio 라이브러리를사용하여비동기효과를얻기위해많은수의핸들러를설계하여기본모듈의추적및디버깅을복잡하게한다. 4. 엄청난양의코드 ( 모듈디자인과강제코드스타일은별도의코딩이필요함 ). 26
5.2 기본아키텍처 그림 5: v0.3 의아키텍처 첫번째단계에서는메타버스사용자에대해다음과같은다섯가지레이어를설계했 다. 공통레이어이레이어는기본클래스, 구성상속, 수학라이브러리, 흐름처리라이브러리및기타일반기능에대한여러가지정의가포함된기본저장 (storage) 레이어다. 이공통레이어는작은함수, 기본클래스및 C ++ 템플릿으로구성되며 secp265k1 및 zmq와같은중요한라이브러리를포함하며다음과같은많은수의기본유형을구현한다 : bc::wallet::script transaction scripts bc::wallet::payment_address transaction address 구성요소레이어구성요소레이어에는블록체인의핵심구성요소인네트워크통신 ( 네트워크 ), 블록지속성 ( 데이터베이스 ) 및컨센서스프로세스 ( 컨센서스 ) 가포함된다. 전체블록체인은유지 27
를위해네트워크모듈에의존한다. 네트워크 p2p 네트워크, PoW 메커니즘및검증이이레이어에포함되었다. 최하층레이어는모든네트워크메시지 (LAN 침투를지원하지않음 ) 에대한 p2p 네트워크모듈을지원하는데사용된다. 컨센서스모듈에는채굴, 블록검증및네트워크난이도조정과관련된기능이포함되어있다. 전체노드를살펴보면상속수준에관해서는아래쪽에서버 _ 노드 (server_node) 구 조가있으며여기에는다음과같은요소가포함된다 : 몽구스서버는 http 서버이다. 마이너 (Miner) 는컨센서스모듈을나타낸다. 공용쿼리는개방적이고암호화된쿼리인터페이스 ( 바이너리시스템 ) 을제공한다. 서버 _ 노드 (server_node) 는 p2p 노드에서파생된다. p2p 노드는아래에설명되어있다. 28
p2p 노드는주요블록서비스를포함한다. 블록체인은주로트랜잭션풀과데이터베이스로구성된다. p2p 노드는또한 p2p 네트워크에서파생된다. p2p 네트워크는아래에설명되어있다. 다시말해, 전체상속레벨은네트워크모듈이전체블록체인의기초를형성하는방식을반영한다. 컨센서스검증부분의내용은하위모듈인마이너 ( 컨센서스 ) 모듈을통해서버 _ 노드 (server_node) 에통합된다. 데이터베이스 29
스토리지 ( 데이터베이스 ) 는전통적인데이터베이스가아니라작은로컬내장형데 이터베이스다. 현재, SQLite 및 LevelDB 가주류옵션으로제공된다. 기술선택프로세스초기에 Libbitcoin 의기본키 / 값해시메모리맵파일저장 방법대신 SQLite 를사용하는방법을고려했다. SQLite의성능과 Libbitcoin의기존코드를대체할기술적복잡성을고려하여 Libbitcoin의원래해시메모리맵접근방식을유지하기로결정했다. 이방법의장점은뛰어난속도와성능및메모리풀에대한쉬운액세스다. 그러나확장성이부족하고특정한학습비용이있다. 컨센서스 컨센서스모듈은주로 ETHASH 컨센서스알고리즘, 독립형 CPU 채굴모듈및트 랜잭션검증모듈을제공한다. 모델레이어 v0.3의아키텍처다이어그램에따르면모델계층에는계정과거래기록이라는두가지핵심요소가포함되어있다. 계정 HD 키쌍을기반으로이중레이어 HD 계정을설계했다. 계정모델은애플리케이션레이어에디지털 ID를형성하도록확장된다. 거래기록 UTXO 모델을기반으로 ETP 트랜잭션과는다른확장트랜잭션을설계했다. 이러한확장트랜잭션은디지털 ID 거래기록, 디지털자산거래기록및데이터피드오프체인데이터참조거래기록으로분류된다. 30
다음다이어그램에서는메타버스의다양한트랜잭션유형구현을보여준다. 그림 6: 트랜잭션구현 서비스레이어서비스레이어에는쿼리서비스와가입서비스의두가지유형의인터페이스가있다. 쿼리서비스는 RestFul API, Websocket 또는 Json-RPC의세가지인터페이스형식을통해구현될수있다. 가입서비스는 Websocket을통해구현될수있다. 모든서비스는인터페이스게이트웨이로 HTTP Server가있는사용자에게제공되며명령을호출하여사용된다. 다음다이어그램은서비스레이어와다른레이어간의관계를보여준다 : 브라우저 HTTP 서버스레드 블록체인핵심노드서버 31
HTTP 서버 몽구스 (Mongoose) 몽구스 (Mongoose) 는 select / epoll ( 선택사항 ) 을기반으로하는작은동시볼륨을가진 HTTP 서버다. 메타버스가사용자지향프로그램이라는점을감안할때주요고려사항은동시볼륨보다는사용의용이성이다. 사용자명령집합명령집합은두가지범주로나눌수있다 : 온라인명령은 getbalance 명령과같이블록체인과상호작용할명령을나타낸다. 오프라인명령은 getaccount / fetch-tx 명령과같이계산을순전히수행하는명령을의미한다. 디스플레이레이어디스플레이레이어는인간-기계인터페이스 (HMI) 다. 현재메타버스지갑의핵심과상호작용하는데스크톱버전용 AngularJs 라이브러리를구축했다. 모바일장치의경우경량지불고객을구축하기위해혼합개발방법을사용한다. 5.3 메타버스블록체인의서비스 5.3.1 정보인터넷과가치인터넷정보인터넷의속성은비즈니스레이어와기술레이어를분리하는다중레이어아키텍처를통해비즈니스와기술을분리할수있다는것이다. 가치인터넷의속성은독점적인성격을지니며금융시스템과함께제공된다. 이금융시스템과분리되면고전적인분산시스템이되어가치인터넷이라고부를수없다. 정보인터넷에서비즈니스와기술을분리하는전형적인제품은클라우드컴퓨팅이다. 오늘날클라우드컴퓨팅은이러한한계를넘어서서히확장되어더나은기술솔루션을제공하기위해다양한업종및산업에진출하려고시도하고있다. 일반적인예로는클라우드에서호스팅되는금융서비스솔루션이있다. 그러나이러한솔루션은다중인스턴스아키텍처를사용한다. 예를들어 A사와 B사모 32
두동일한제품 F를구매한다. 그러나회사는결국제품 F의완전히다른인스턴스를실행하게된다. 은행이나증권회사와같은제 3자금융기관을통한임의적인연결을제외하고는일반적으로이들회사간에는직접적인관계가없다. 대조적으로, 가치인터넷에서 A와 B는동일한애플리케이션인스턴스 F에서다른서브넷을실행해야한다. A와 B 사이에는간접적인연결보다는직접적인연결이있다. 즉, 결제기능과같은제 3 자금융기관에서제공하는일부서비스는불필요하게된다 ( 블록체인은본질적으로결제시스템을갖추고있기때문에 ). 메타버스는이러한기본서비스의제공을통해가치인터넷을구축하기를희망한다. 5.3.2 블록체인서비스서비스로서의블록체인 (Blockchain as a Service (BaaS)) 는블록체인에의해생성된데이터를사용하여검색, 쿼리및데이터제출과같은일련의블록체인기반운영서비스를제공하는것을의미한다. 블록체인분야에서는블록탐색기, 디지털화폐거래플랫폼및문서저장 (Factom) 및디지털아이덴티티 (uport) 와같은공용체인에서파생된애플리케이션이모두현재블록체인서비스의범주에속한다. 이러한애플리케이션은한가지특징을가지고있다 : 기존공용블록체인을기반으로하며블록체인기술을사용하여개인서비스를만드는대신공용블록체인의기존기능을전시하거나강화한다. SaaS / PaaS 개념을클라우드컴퓨팅에서블록체인으로확장하여두가지새로운서비스유형을얻는다 : BaaS SaaS의변형 BaaS ( 서비스로서의블록체인, Blockchain As A Service) 33
BTaaS PaaS 의변형 BTaaS ( 서비스로서의블록체인기술, Blockchain Technology As A Service) 소비자 판매자 / 개발자 BaaS 는일반사용자를대상으로하는반면 BTaaS 는공급업체및개발자를지원한다. 5.3.3 메타버스서비스로서의블록체인 메타버스공용블록체인은모든 IT 시스템및장치에인프라서비스 (BaaS) 를제공할수 있다. 이시스템은디지털 ID 를기본엔트리포인트로사용하는개인소유의 IT 시스템 과호환될수있다. 34
메타버스공용블록은자산쿼리및거래기능외에도 ID 확인및인증을제공한다. 블록체인의데이터는변경불가능하고신뢰할수있으며외부운영자가제공하는서비스는메타버스공용블록체인을통해사용자가감독한다. 6. MVS 컨센서스알고리즘및토큰모델 6.1 컨센서스프로세스블록체인컨센서스프로세스는전체네트워크트랜잭션데이터를객관적으로기록하고변경불가능하게만드는프로세스를의미한다. 이컨센서스프로세스는컨센서스알고리즘을통해구현된다. 현재, 몇가지주류컨센서스알고리즘이존재한다. 비트코인, 이더리움및비트쉐어에서각각사용하는 PoW( 작업증명 ), PoS( 지분증명 ) 및 DPoS( 위임된지분증명 ) 메커니즘이여기에포함된다. 이러한알고리즘은일반적으로시스템부정행위에대한비용을계산할수있으므로 " 경제적 " 알고리즘이라고한다. 그들은부정행위비용이부정행위로인한수익보다훨씬크게만들어서부정행위가이익을내지못하도록한다. 이를통해노드간에경제적인게임을사용하여안정적인평형을유지하려는알고리즘을만든다. 따라서우리는 Paxos 및 Raft와같은컴퓨팅분야에분산된일관성알고리즘을갖고있다. 이들은고전적분산된일관성알고리즘이라고할수있다. 분산된일관성알고리즘의가장큰차이점은비잔티움장애허용 (PBFT) 으로알려진비잔티움장군문제에직면했을때의신뢰성이다. Paxos 와 Raft 모두이론적으로투표시스템을통과할가능성이없는막다른순환에갇히기쉽다 ( 이확률은극히적다 ). 그러나두알고리즘모두안전성요구사항을충족시키므로라이브니스 (liveness) 요구사항이완화된다. PBFT는이와관련하여유사하다. 전통적인분산된일관성알고리즘과블록체인컨센서스프로세스간의유사점과차이점은아래에요약되어있다. 유사점 추가만가능 순서화 (sequencing) 강조 35
다수에게순종하는소수의원칙 별도의적용범위문제 : 긴체인의블록이짧은체인보다우선하며, 다중노드는적은수의노드에서생성된로그보다우선한다. 차이점 전통적인분산된일관성알고리즘은비잔티움장애허용을고려하지않는다 (Byzanetine Paxos 제외 ). 모든노드는충돌이나네트워크오작동과같은사람이만들수없는문제만처리하며, 악의적인노드로인해데이터가부당변경되는문제는고려하지않는다. 전통적인분산된일관성알고리즘은로그 ( 데이터베이스 ) 에적합하고, 보다일반적인상황이지만, 블록체인컨센서스모델은트랜잭션을처리한다. 엄밀히말하면, 전통적인분산된일관성알고리즘은블록체인컨센서스모델을포함하는레이어하부에속한다. 메타버스는공용블록체인이다. 공용블록체인에사용된몇가지주요컨센서스알고리즘설계에는비트코인, 피어코인및비트쉐어에서각각개척한작업증명 (PoW), 지분증명 (PoS) 및위임된지분증명 (DPoS) 및기타여러비잔틴장애허용프로토콜이포함된다. 대부분의암호화폐는토큰배포문제를해결하지못하여비잔틴장애허용알고리즘을무시한다. 메타버스의 ETP는통화가아니지만네트워크안전성에기여한것에대한상환으로노드에배포된다. 전체노드의총량은블록체인프로젝트의초기단계에서불충분하므로전체네트워크의시스템보안을보장하기가더어렵다. PoW 채굴도입을통해메타버스는 ETP를채굴노드에블록보상으로배포하여네트워크가초기단계에서시스템을보호할수있는전체노드를다수유치할수있도록허용한다. 미래에프로젝트가성숙함에따라, 채굴보상을제공하는데사용되는 ETP 배포가마무리되고메타버스는개선된 DPoS 컨센서스알고리즘으로전환할것이다. 이알고리즘은설계시 " 파괴된토큰높이 (Token Height Destroyed)" 를고려한다. 첫번째단계 : PoW 채굴 36
메타버스시스템운영의처음몇년동안 GPU 채굴과분산된타임스탬프서버시스템이시스템보안을위해사용될것이다. 우리는여전히메타버스의채굴알고리즘을조사하고있지만비트코인및라이트코인채굴풀에서 51% 의공격을피하기위해비트코인의 SHA256 및라이트코인의스크립트알고리즘을피할것이다. 두번째단계 : HBTH-DPoS PoW 채굴은초기에메타버스의시스템보안을보호하는데도움이될수있지만에너지낭비와채굴중앙집중경향과같은결함이있다. 비트쉐어가개척한 DPoS 메커니즘은 PoW 및 PoS보다강력하고분산되어있다. 더중요한것은시스템에참여하는각참가자는유자격유권자이다. 그러나 DPoS 컨센서스메커니즘에는 2가지설계결함이있다. 첫째, 재정적인간섭 : 단기간에다수의토큰을획득함으로써공격자는단기이익을노리고토큰가격을조작하기위해중요한제안에반대또는투표함으로써간섭할수있다. 현재의비트쉐어시스템에서는투표결과를조작하는데 3백만 US달러의토큰만있으면된다. 둘째, 유권자의무관심 : 유권자 ( 사용자 ) 는종종시스템상태에무관심하다. 일단대표자를선택하면대부분의유권자는대표자가악의적인것으로판명된경우에도전환을할개연성이낮다. 지난 3개월동안유권자의 1% 만이대표자를변경했다. 메타버스는 Token-Height 및 HeartBeat의개념을추가하여 DPoS 컨센서스프로토콜을개선했다. 기본모델은다음과같다 : - 토큰-높이 (Token-Height) (TH) 는파괴된비트코인일수 (Bitcoin Days Destroyed) 의개념에서기인한다. - 파괴된비트코인일수 (Bitcoin Days Destroyed) = 트랜잭션에서비트코인의수 * 비트코인이마지막으로소비된이후의일수. - TH = 트랜잭션의 ETP 수 * ETP가마지막으로소비된이후의블록수 * 메타버스상수메타버스는재정적간섭문제를피하는것을목표로, TH를사용하여 DPoS에서투표에가중치를부여하였다. 공격자가투표에영향을미치기위해일시적으로많은양의 ETP 37
를획득하면, TH 값은매우작아져서투표프로세스에거의영향을미치지않게된다. 그들의목표를달성하기위해공격자는시장에서더많은 ETP를획득하거나 TH를수집할충분한시간동안 ETP를보유해야한다. 두가지방법모두공격비용을크게높인다. DPoS 단계에서메타버스는 PoS 컨센서스프로토콜을사용하는다른시스템과마찬가지로 ETP를 ETP 소지자에게우세한지분에따라배포할것이다. 그러나차이점은 ETP 소지자는수동적으로 ETP를받지못한다는것이다. 오히려, 그들은그들이여전히활동중임을나타내기위해시스템에 "HeartBeat" 를전송해야한다. 동시에이 HeartBeat는소유자의개인키로부터의디지털서명과동일하다. 마지막으로 ETP 소지자는 HeartBeat를보낼때대표자를교체하거나유지하도록선택해야한다. HeartBeat를설계하는데는두가지이점이있다. 첫째, 유권자의무관심문제를근본적으로해결하지는않지만사용자가대표자를확인하도록동기를부여한다. 두번째로, 시스템은비활성보유자에게새로운 ETP를할당하지않으며보유분에대해희석효과를발휘한다. DPoS 단계에서개선된 Power-DPOS 알고리즘사용을고려할것이다. 그림 7: Power-DPoS 모델의사양은다음과같다 : 1) ETP의투표및트랜잭션속성을분리하고 power로알려진투표권을위한빌트인 (built-in) 토큰을정의한다. 코인을거래시장에서많은수의 ETP를획득함으로 38
써수행되는공격을막을수있는유효한투표에대한계산의기초로정의한다. 2) 코인의개념은시간이지남에따라지분축적으로정의된다. 이것은 PoW와유사한위조할수없는 " 증거 " 를형성한다. CPU 또는 GPU의수학적함수를검증할때전기및계산동력에대해채굴자에게비용이부과되는것과마찬가지로지분은보유자가지불하는희생과가격이라간주한다. 코인계산공식은다음과같다 : - Locked(ETP) 은투표전에특별주소에잠긴 ETP의수이다. - f(h) 는높이와관련된시간밀도함수이다. - h1 은잠금기간의시작에서블록높이를나타내며, h2 는 ETP가잠금해제된블록높이를나타낸다. - H 는 ETP 잠금이코인을생성할수있는최대높이다. 이제한을초과하면초과높이로새코인이생성되지않는다. - max 는코인을생성할수있는블록의수를나타낸다. - a 는임의의변환매개변수이다. h1 = 12000, 현재 h = 14500, 최대 h = 2000, 변환매개변수 a = 5000 및잠긴 (ETP) = 5000이라고가정해보자. 이시점에서 ETP가잠금해제된경우 h2 = h = 14500이다. 그러나 H = h1 + max = 14000 <h2 인경우잠긴 ETP에의해생성된코인은다음과같다. 39
그래프는다음과같다. 최대코인 블록높이 코인 블록높이 이경우블록생성시간이약 15초이면 2000블록을생성하는데약 8.33시간이걸린다. 공격자는최대의투표가중치를얻기위해 ETP를잠그기만하면되지만, 이것은큰위험을야기한다. 이시간을변경하기위해 max 값을조정할수있다. 3) 코인과 power는선형적으로상관관계가있다. 비율은비율 (CoinageToPower) 로정의된다. 4) ETP는다음프로세스에따라 power를생성한다 : 로컬클라이언트 : 정상주소 (power를위한 ETP) 로컬클라이언트 : 투표주소 (power를위한 ETP) 주소간트랜잭션을통해잠금완료 ; 트랜잭션이완료되면 ETP 가잠김 ETP가잠금해제되면코인계산 잠금해제 ; 잠금해제는잠금트랜잭션의반대이지만잠금해제는즉시발생하지않는다. 잠금해제를위한조건부함수는다음과같다 : 처음 100블록은잠긴 ETP의 0.01 % 를잠금해제한다. 이수치는 100 블록마다 10% 씩 40
증가한다. 즉, 모든블록이잠금해제될때까지다음 100 개의블록이잠긴 ETP 의 0.01 % * (1 + 10 %) 를잠금해제한다. 100 블록마다잠금해제된 ETP 의양에대한밀도 및누적함수는다음과같다 : 그림 8: 좌 밀도함수, 우 누적함수그래프에서잠금해제속도는처음에는상대적으로느리지만증가할것임을알수있다. 이가정하에잠금해제프로세스를완료하는데약 2400 블록이소요된다. 차단시간이 15 초이면잠금해제가완료되는데약 10 시간이걸린다. 또한처음 5시간동안 ETP가잠금해제된양은전체의 20% 에불과하다. 총시간을조정해야하는경우, 잠금해제된 ETP 양을증가시키는높이간격을수정할수있다. 예를들어간격을 200 블록으로늘리면필요한시간이두배가된다. 커브의모양을유지하면서잠금해제속도를변경하려면잠금해제된블록수가증가하는비율 ( 증가비율 ) 을조정해야한다. 예를들어비율을 5 % 로조정하면잠금해제속도가느려질것이다. 다른잠금해제모델도사용할수있다. 여기에서사용된것은가장단순한, 기하학적인진행이다. 6.2 거래유형코인베이스트랜잭션외에도비트코인에는다른유형의트랜잭션이있다. 이는전송자와수신자간에코인을전송하는것이다. 스마트컨트랙트를통해이더리움은자산발행과같은트랜잭션을포함하기위해블록체인에서발생할수있는트랜잭션유형을크게확장했다. 그러나사용자는이러한거 41
래를수행하기위해솔리디티 (Solidity-이더리움의스마트컨트랙트를코딩하는데사용되는언어 ) 에익숙해야한다. 이더리움팀은몇줄의코드만으로함수를작성할수있도록코딩을단순화하기위해많은노력을기울였지만스마트컨트랙트를사용하기위해코드를작성해야한다는점때문에많은기업과사용자가멀어지게되었다. 메타버스에는많은트랜잭션유형이있다. 그것들은효율성과사용편의성을염두에두고설계되었으며, 이더리움의자유컨트랙트모델이나많은트랜잭션유형을정의한비트쉐어와유사하지않다. ETP 거래후스마트자산발행및디지털아이덴티티등록이가장우선순위가높은트랜잭션유형이다. 이더리움스타일의스마트컨트랙트트랜잭션이메타버스시스템에추가된다. 6.3 거래기록모델메타버스는비트코인의 UTXO 모델과균형기반계정모델을결합한하이브리드를사용한다. - UTXO 모델이 ETP에사용된다. - 계정모델은사용자정의디지털자산에사용된다. UTXO 모델에대한자세한내용에관심있는독자는비트코인개발자설명서를참조하시오. 6.4 디지털아이덴티티및데이터-피드메타버스는사용자의디지털아이덴티티및개인정보를보호하기위해 Zcash가제안한 zk-snark (Zero-Knowledge Succint Non-Interactive Argument of Knowledge) 제도를참고하여통합한다. 데이터피드는메타버스의또다른중요한기능이다. 이더리움과달리메타버스의데이터피드는오라클에서주로처리한다. 그들의신뢰성은두가지요소에기초할것이다 : 1) 오라클이제공한유효한자격증명, 2) 메타버스상그들의기록. 시장은여러면에서신뢰성에대한피드백을제공할것이다. 첫째, 데이터피드사용자는트랜잭션기록을통해신뢰성에 " 투표 " 한다. 사용자가올바르게투표하면보상을받게된다 ( 리뷰를남길때리베이트와유사 ). 투표결과및보상을결정하는규칙에대한제안은이후버전에서공개된다. 둘째, 부적절한투표는유권자의동기와결과에미 42
치는그들의영향력을통해결정된다. 이러한행위에는처벌이따를것이다. 이러한조치는투표결과에관계없이메타버스에기록되며아바타 (Avatars) 및오라클은디지털 ID로트랜잭션할때이러한기록을고려하거나무시할수있다. 그이유는비즈니스로직을메타버스에하드코딩해서는안되기때문이다. 모든블록체인은기본기능인컨센서스에묶여있다. 데이터피드의경우악의적인동작은메타버스의컨센서스보다는그들의유효성에영향을미친다. " 악의를위한 " 데이터피드를사용하는작업은메타버스의컨센서스에대가를지불해야하지만, 이러한방어는오라클또는비즈니스애플리케이션레이어에서구현해야한다. 그럼에도메타버스를설계하는팀은여전히건강한데이터피드모델이되기를희망한다. 따라서우리는규칙에대한제안을할것이다. 6.5 교차-플랫폼메타버스는초기단계에서 Windows / Linux / MacOS 플랫폼과호환된다. 메타버스가발전하는동안에우리는사물인터넷과에너지인터넷에서자산디지털화를용이하게하기위해 ARM 또는기타내장형플랫폼에대한메타버스의이식을고려할것이다. 43
참고 1. Bitcoin Whitepaper Satoshi Nakamoto http://bitcoin.org/bitcoin.pdf 2. Namecoin: https://namecoin.org/ 3. Bitshares whitepaper Daniel Larimar http://docs.bitshares.org/bitshares/papers/index.html 4. Ethereum WhitePaper Vitalik Buterin: https://github.com/ethereum/wiki/wiki/white-paper 5. Smart Contract Nick Szabo http://szabo.best.vwh.net/idea.html 6. Smart Property https://en.bitcoin.it/wiki/smart_property 7. Blockchain from Digital Currency to Credit Society ChangJia, HanFeng and etc. ISBN:9787508663449 8. Snow Crash Neal Stephenson 1992 9. Metaverse https://en.wikipedia.org/wiki/metaverse 10. Tim Swanson http://www.coindesk.com/smart-property-colored-coins-mastercoin/ 11. Coin Days Destroyed https://en.bitcoin.it/wiki/bitcoin_days_destroyed 12. http://blockchaindev.org/article/consensus_introduction.html 13. ZeroCash http://zerocash-project.org/paper 44