-Block Chain & Platform R&D-. in Republic of KOREA
With Coin 은세계복지사회를위해사용될스스로진화하는가상암호화가상화폐 Platform 이다. With Coin 의거래, 이체수수료등의수익금은세계복지사회건설을위해사용될것이다. [ 요약 ] With Coin 플랫폼은가장가벼운블록체인과 1초이하의전송속도로실생활에서사용할수있는코인이다. 그리고엄청난양의전기를소비하는기존 GPU 채굴방식을벋어나가장저렴하게채굴할수있는 With Coin 만들고스스로진화하는탈중앙형암호화폐이다. With Coin의블록체인은기존 Bitcoin의 Block Chain을보안하고수정하여더가볍고작은 Block으로운영되도록하였다. 또한가상화폐중가장빠른이체속도를가지고있어실생활에서화폐로사용이가능한가상화폐이다. With Coin은다양한기기를지원하는전자지갑을제공하고있다. Smart Phone은물론 PC(Windows, Mac, Linux, Unix) 의전세계어떠한운영체계라도 With Coin 지갑을사용할수있다. 앞으로나올미래의운영체계에서도 With Coin 지갑을사용할수있다. 또한 With Coin은안정적인 X13 Algorithm을더욱발전시키고재 Coding하여 CPU Mining만될수있도록한유일한가상화폐이다. (1) With Contracts란? Block Chain이라불리는 Protocol Layer에기반하여안전하게실행되는계약을말한다. Bitcoin, Ethereum 등수많은가상화폐가이체속도가느려실생활에서는사용할수없는가상화폐이다. 가상화폐중가장가볍고빠른 Block Chain을구사하고있는 With Coin은실생활에서사용할수있는가상화폐이다. (2) 화폐란무엇인가? 생활에서사용할수없다면화폐라말할수있는것일까? 실생활에서사용하려면가상화폐는어떤요건을갖추어야하는가? 첫째. 해킹, 위조와같은위험으로부터의신뢰성확보둘째. 빠른이체 ( 결제 ) 속도셋째. 재산보존의안정성넷째. 실생활에서사용할수있는가맹점이있는가? 등을들수있겠다. With Coin은이네가지요건을모두갖추고실생활에서사용할수있는 Coin으로 With Coin을사용할수있는 Off-Line 가맹점과 Hacking과위조가원천적으로불가능한 Block Chain 그리고 1초이하의전송속도및자신의지갑즉 Coin을안정적으로보관할수있는멀티시그보안을적용하고있다. Page2
(3) 향후기술공개? With Coin기술팀은 With Coin Block Chain과모든 Source code를오픈하고가상화폐발전을이끌어갈것이며다양한 API(Application Programming Interface) 를개발자들에게무상으로제공하여 With Coin 발전과전세계가상화폐발전에기여할것이다. (4) 채굴기현재전세계 Bitcoin 채굴기는약310,000테라로 1일약7,440Mw의전기소모하고있다. 즉대형화력발전소 3개가 Bitcoin 채굴기가동을위해돌고있는상황이다. 이는막대한손실뿐아니라심각한환경오염 (CO2 및기타환경오염물질발생 ) 즉전세계 Bitcoin 채굴기를운영하기위하여 10조원을들여대형화력발전소 3개를추가로건설한상황이된다. 또한화력발전소로 1Kw 의전기를생산하는데 991g 의이산화탄소가발생하는데, 전세계 Bit Coin 채굴기를운영하기위하여 1일 7,373,040Kg의이산화탄소로지구를오염함은물론우리의건강을위협하고있다. 뿐만아니라화력발전소로 1Kw를생산하는데드는비용은석탄 (35.7원), 가스 (86.8원) 이다. 즉 1일전세계 Bitcoin 채굴기를가동하기위하여 265,600,000원 ~645,800,000원이사용되고있는실정이다. Ethereum 또한마찬가지이다. 현재 Ethereum 채굴을위해전세계에서 820,000장이상의그래픽카드 GPU(Graphic Processing Unit) 가운영중이며이를위해약180Mw 의전기를소모하고있다. 이러한결과는 Bitcoin, Ethereum의해시 Algorithm의문제와난이도증가및반감기때문이다. (5) With Coin 채굴기는? With Coin은이러한문제를직시하고해결하기위하여새로운 Hashing Algorithm과채굴방식을연구개발하여탄생하였다. 많은양의 Coin을채굴하기위하여막대한 Computing Power를사용하지않아도채굴이가능하도록설계되었고운영되고있다. 지구오염을막고환경을지키면서도가상화폐의흐름을바꿀수있는새로운개념의가상화폐이다. With Coin 은환경을지키고지구를지키는착한화폐로그위상을확고히하고있으며사물인터넷및 With Coin 기반의각종프로그램개발을할수있는최고의가상화폐로모든 With Coin은과도한경쟁을막기위해 GPU 방식또는혼합방식이아닌오직CPU 방식으로만채굴하게된다. 1. 도입 A. 배경 Block Chain은 2008년 Satoshi Nakamoto의논문 Bitcoin: A Peer-to-Peer Electronic Cash System 에서처음개념화되었으며다음해에 Bitcoin의핵심기술로구현되었다. (1) Bitcoin은개인들이화폐전송정보를공개적으로기록하는금융거래원장으로써 Block Chain 기술을사용한다. Bitcoin은이중지불문제를해결하기위해 Block Chain을사용한최초의사례다. 중앙집권적인관리자가없음에도불구하고 Bitcoin은 2억건의 P2P(peer-to-peer) 거래를성공적으로지원했으며, 이제 60조원이상의시가총액을달성하고있다. Page3
Bitcoin 의성공에뒤를이어 Block Chain 기술을활용한수많은시스템이나타났다. 수백개의암호화폐들이현재경쟁중이며, IBM 의최근보고서에따르면이제는 90% 이상의 은행들이 Block Chain 기술에투자하고있다. (2) 화폐거래가 Block Chain 기술의가장보편적인응용프로그램이지만, 이외에도금융상품및서비스, 물류정보, 재산소유권, 신원정보등과같은다른디지털자산을블록체인기술을사용하여관리하려는시도또한다양한그룹에서나타나고있다. 2016년, 암호화폐 Ethereum은많은관심을받았다. Ethereum은 " 임의의상태변환함수구현에사용될수있는 ' 계약 ' 을생성하는데사용될수있는본격적인튜링-완전프로그래밍언어가내장된 Block Chain이며블록체인에 Smart Contracts를제공하는것을목표로한다. 목표는사용자가모든종류의프로그램 ( 또는계약 ) 을 Block Chain에쓸수있게하는것이다. Bitcoin과마찬가지로, Ethereum은 Block Chain과합의 Mechanism을사용하여악의적인 Node가계약내용을위조하려고시도하면위조계약이결국 Block Chain에서제거되도록한다. Bitcoin은계정사이에서전송되는 Bitcoin의양을완전하게보장한다. 이와비슷하게 Ethereum도실행되는계약의무결성을보장해야한다. Smart contracts는탈중앙형 Application 개발의패러다임전환이될수있는잠재력을가지고있다. 프로그램이중앙화된 Server에올라가있지않더라도어디서나동일한 Logic을실행할수있다. Smart contracts는탈중앙형시장, 통화거래플랫폼, 탈중앙형 Global Supercomputer 개발을목적으로하는 Golem 과같은프로젝트에사용될수있다. 그러나 Ethereum이기반하고있는 Turing -완전언어가제공하는자유와유연성은몇가지심각한문제들의발생시키는원인이다. 우리는 Turing -완전언어는본질적으로결정불가능하기때문에 Smart contracts 작성에사용하는것은부적합하다고생각한다. 이결정불가능성문제때문에, Turing-완전언어를기반으로한 Smart contract는 Smart contract가실행되기전에는이것이어떻게작동될지알수없다. Ethereum은계산작업에대한비용 ( 가스 ) 을적용하여이문제를극복하려고시도했다. 하지만, Smart Contracts을개발하고실행하는데사용되는이언어자체에내재되어있는문제들은어쩔수없이일련의보안취약점을만들고 The DAO와같은실패한프로젝트들을야기했다. B. 제안 With Coin은기존의가상화폐의단점을보완하고장점을계승하여 Smart contract IOT 는물론진정한화폐로서실생활에사용할수있도록하기위한 Platform을개발하는것을목표로한다. 추가적으로 With Coin을통해우리는암호화폐와관련해공통적으로반복되는문제들을해결하려고한다. 의사결정, 탈중앙화시스템에는시스템화된의사결정프로세스가결여되어있다. 암호화폐세계에서의사결정프로세스의부재로사람들에게혼란을주고재정적으로상당히큰손실이생기는등여러가지문제가발생했던사례들이있었다. With Coin은지속적으로 Software와전체생태계를개선하기위해서전용채굴기및전세계 Server가인증에참여하는방식을선택하고있다. Page4
With Coin은이러한제안들을통해서전체위드코인생태계의개발을위해쓰일수있는상당한양의공공예산을설정해두었다. 중앙집중화방지합의 Algorithm PoW유형의합의 Protocol만을사용하는 Bitcoin과같은암호화폐들은경제적 Incentive와정치적 Incentive가분리되지않음으로써발생하는문제를겪고있다. 이러한문제를해결하기위해전세계수천만대의 Server를 PoW에유입시켜안정적인합의를이끌어낼것이다. 많은채굴 (Mining) 장비를구입함으로써사용자는 Block Chain에대한통제력 ( 정치적측면 ) 을높이고, 또한동시에채굴수입 ( 경제적측면 ) 을늘릴수있다. With Coin은경제적 Incentive와정치적 Incentive를분리하는합의메커니즘을사용 ( 아래에자세하게설명됨.) 하여이러한문제를극복한다. 정치권력이나경제적재원을얻으려면시스템에대해투자를해야한다. 사용자는 Node의수를늘려투표수를늘리거나또는사용자는예치금보상및블록생성보상 (Node에묶여있는 Coin의양에비례해서주어지는보상 ) 에투자하여 Mining 수입을최대화할수있다. 부가적으로, 여기에사용된합의 Protocol은에너지효율이높고더빠르다. Application 생태계가많은경우에탈중앙화화폐는제한된실사용처로인해투기의온상이되는경향이있다. 우리는화폐가치란본질적으로화폐가얼마나유용하게쓰여지고있는가하는사실과연동되어있다고생각하기때문에, With Coin팀은 With Coin을사용하는다양한 Application을출시및전략적업무협약을할예정이다. 2. 암호화폐비교 A. 개요 With Coin은막강한 PoW 기술을사용하고자한다. 이 ADML(Architecture Description Markup Language) 는표현력을확장하면서도계약의안전하고정확한실행을지원할수있는결정가능성을유지하도록설계되어있다. With Coin Block Chain 위에만들어진안정적인 Algorithm X13를기반으로이를발전시켜 X13+ 를탄생시켰다. B. 배경 Block Chain에서계약을개발하는데는두가지기본접근방식이있다. 하나는 Virtual Machine( 가상머신 ) 위에서유연한 Programming language를사용하는것이고, 다른하나는다소덜유연하지만결정가능성을가진도메인특화언어 (Domain-specific language) 를사용하는것이다. With Coin팀은두번째방법을선택했다. Virtual Machine에기반을둔암호화폐와달리, 추론엔진은 Semantic web technology 에기반하므로 Code가실행되기전에 Code로부터정보를추론할수있다. 계약은결정가능성을가지고있고, 계약의결과는분명히확인된다. 이는계약기능을가진, 안전하고지속가능한통화를구축하는데있어핵심적인개념이다. Ethereum은시장매커니즘을사용하여이문제를해결하려고복잡성에가격을적용했지만, With Coin은더엄격한 OWL 및 TAL 방식의접근이 Block Chain 기반의계약을개발하는데있어서보다안전한환경을제공할것이라고믿는다. Page5
C. 개발 Web page를제공하는데사용되는 JSP, PHP, HTML, HTTP, HTTPS, RDF 및 OWL과같은표준 Web 기술을기반으로개발할때, 이기술들은컴퓨터가예측가능하게해석할수있는방식으로정보를공유하도록확장될수있다. OWL과 RDF 모두모호하지않은, 구조화된데이터분류체계를작성하는데사용될수있다. 이러한특성을이용하여지불시스템의모든것과연관된계약인 With Contracts 개념을제안했다. OWL과 RDF가비슷한특성을나타내지만, 현재 RDF 표준은 P-TIME 완전성을지원하지않는다. 그러나이전에제시된사실또는공리의집합에서논리적인결과를추론하는도구인 Reasoners를사용하여 OWL 표준은 P-TIME 복잡성을보장한다. 이것은계약을실행하는데걸리는시간을사전에결정할수있다는것을의미한다. 이특성이 OWL을 With contracts의기반언어로선택하게된핵심이유이다. OWL DL (Description logic) 은 OWL의하위언어로, " 계산의완전성을유지하면서도가능한최대표현력을제공하도록설계되었다." OWL DL은 ISO20022 사양과같이사전정의된방대한어휘및분류체계사전위에서작동한다. 거래와같이 With Coin에특화된기능은 OWL 사전에서제공되지않기때문에이와관련된어휘및분류체계는계약외부에서호출해야한다. 이러한기술적인문제를해결하기위해, 블록체인위에사전정의된네임스페이스도메인을생성하는방법을제안한다. 이 Namespace Domain은계약에서비표준기본타입 ( 분류체계 ) 을호출할수있다. OWL의결정가능성및분류학적복잡성기능을유지하기위해비표준기본타입이신중하게추가될것이다. Block Chain에대한 Turing-완전계약의또다른문제는 Turing-완전언어는비전문가들이읽기어렵다는것이다. Code가법 ' 이라면 Code는관련된모든당사자가이해할수있어야한다. 현재계약용 Turing-완전언어를사용하는통화는 Code를읽을수있는사람만검사할수있다. With Coin은 OWL 표준을사용하고 SDLang과같은언어에문법을 Mapping 함으로써, 누구나계약내용을읽고그계약이의미하는바를정확하게이해할수있게하려고한다. Timed Automata Language 개념은 Andrychowicz의논문인 'Timed Automata에의한 Bitcoin Contracts 모델링을기반으로한다. TAL은 With Contract에서사용되는 Logic programming을 Modeling하는데사용된다. OWL 및 TAL의관계는 HTML과 Javascript의궁합과유사하다. OWL은데이터구조를제공하고 TAL은연산자처럼작동한다. 프로그래밍언어의연산자는더하기, 빼기및비교와같은특정기능을수행하는구문이다. OWL은정보를제공하고 TAL은컴퓨터에데이터처리방법을알려준다. TAL은전역시간요소 (Global Time Factor) 가있기때문에다른프로그래밍언어와약간다르다. 즉, 계약을실행하는데걸리는시간을사전에테스트할수있다. 가능한모든각각의결과에대해사전에자동화된테스트를실행함으로써블록체인에서 Bug 없는계약을구축할수있는 Platform을제공할수있다. 위의개념에대한자세한내용은기술보고서에서자세히설명한다. Page6
3. 합의알고리즘 A. 개요 Consensus Algorithm( 합의알고리즘 ) 은 block Chain 기반화폐또는 System의핵심이다. Algorithm은 ' 모든분산 Data Base가동일한정보집합을보유하고있다는것을어떻게증명할수있을까?' 라는질문에답하려고노력한다. With Coin은이질문과관련해, Stellar의합의프로토콜 (FBA) 을기반으로한수정된 FBA(mFBA) Consensus Algorithm을사용하기로했다. Consensus Algorithm ( 합의알고리즘 ) 비교 Mazieres는 FBA 프로토콜의핵심기능을다음과같이정의한다. 탈중앙제어, 중앙관리자의허가없이도누구나참여를해서합의를이뤄낼수있다. 낮은대기시간, Node는실제로인간이 Web 또는지불거래에대해대기하는시간 ( 예 : 최대몇초 ) 사이에합의에도달할수있다. 유연한신뢰. 사용자는적합하다고생각되는조합을자유롭게선택할수있다. 예를들어, 작은비영리단체라도더큰규모의기관들이신뢰를유지하도록하는데중요한역할을담당할수있다. 점근적보안 (Asymptotic security) 은전자서명과해시패밀리에의존하는데, 이변수들은방대한컴퓨팅파워를가진적 (adversaries) 으로부터보호하기위해현실적으로조정할수있다. 의사결정기능. 투표및의회운영과관련된투표기능이프로토콜에추가기능으로포함되어있다. B. Federate Byzantine Agreement Consensus Algorithm / 비잔틴협정합의알고리즘 Bitcoin의합의메커니즘과전통적인비잔틴기반프로토콜은모든네트워크참여자가만장일치로동의해야한다. 그러나 FBA는모든참여자가만장일치로합의할것을요구하지않으며, 추가적으로각 Node는자신이어떤 Node를신뢰할지선택할수있다. 이는금융네트워크의무결성을잃지않으면서유기적성장을가능하게하면서도더빠른거래를가능하게한다. FBA는 Node들이팀 ( 정족수 : Quorum 라고도함.) 으로그룹을구성함으로써만장일치없이도합의할수있는메커니즘을구현했다. 거래가이루어지면그룹의모든사람들에게정보가전송된다. 전체네트워크가데이터상태에동의하기를기다리는대신, Node가신뢰할수있는 Node로부터충분히많은횟수의동일한메시지를듣는경우, 해당 Node는정보가올바른것으로가정한다. Node 들이중복되거나느슨한 Node 연합이발생하면동일한트랜잭션에대해동의하는서로다른팀들을갖는서로다른 Node들을만들게된다. 이는각 Transaction Block( 거래블록 ) 에대해만장일치의동의없이시스템전반에걸친합의를이끌어낸다. C. 전세계의 Server를통한 Consensus Algorithm ( 합의알고리즘 ) With Coin은 CPU 방식으로만채굴이가능하므로자연스럽게전세계의 Server가 With Coin 채굴에참여하게될것이다. Server 는 24시간 365일가동되고 CPU의부하는약 20% 이하이므로 80% 의손실이있다고봐야한다. Page7
Server의주인이 80% 의손실을자연스럽게 With Coin 채굴에참여할수있도록 Server 전용채굴프로그램을발표할예정이다. Server용채굴프로그램은윈도우NT 계열과 Linux, Unix 두계열로발표할것이며 With Coin Homepage에서누구나쉽게 Download 할수있도록할것이다. 또한 Server는보안을최우선시하므로 Source를 Open하여안심하고사용할수있도록할것이다. Server는전세계에고루분포되어있고이는 Bitcoin과같이한국가에집중되어있어 Hacking, 위조가가능할수있는시스템을원천적으로차단하게된다. 4. 코인발행 Initial Development Budget : 초기개발코인은 Genesis Block 이전에배포되는코인이며소프트웨어개발완수를지원하기위한것이다. 이코인은 ICO 판매및포상금 (Bounty) 으로구성된다. 188,800,000개의 With Coin이 Genesis Block과함께발행된다. 총 Coin 수 1,888,000,000Coin의 10% 에해당한다. Confirmation Rewards: Confirmation rewards 는발행된블록 (600 초마다 ) 에대해무작위로 Node 에지급되는금전적보상이다. 보상이무작위로분배됨에따라, Node 의수가증가하면한 Node 가보상을받을확률이감소한다. Coins Generated Per Day: 600 초마다발행되는 Block 은매 Block 마다 300Coin 이발행되며 1 일채굴되는채굴코인은 43,200Coin 이다. Coin Name Coin Abbreviation Coin Type WITH Coin WTC Pure PoW (Proof of Work) Hashing Algorithm X13+ Time Between Blocks Block Reward 600 seconds 300 EA Premine Amount 188,800,000 (10%) Total Coins Coins Generated Per Day 1,888,000,000 개 43,200Coin Page8
5. 결론 With Coin팀은다양한암호화폐에내재된기술상의그리고운영상의문제를극복하는것을목표로한다. PoW는제도및발행계획은권력의중앙집중화를억제하면서 Coin의가치를창출하는것을목표로한다. X13+ 알고리즘은에너지효율성이높으면서도빠른 Transaction( 거래 ) 을가능하게한다. With Coin Block Chain은위에서계약을생성하고실행하는데있어결정가능성과접근가능성을가진가볍고가장빠른 Framework( 체제 ) 를제공할것이다. With Coin팀은 Block Chain 기술을통해얻을수있는보안성및무결성을활용하면서위와같은목적을달성하는것을목표로하고있다. With Coin 은다음과같은과제를해결하고실생활에서사용할수있는화폐가될것이다. 1. 가벼운블록체인 2. 빠른이체속도 (1초이하 ) 3. CPU 방식의 Mining : X13 알고리즘 Coding X13+ 개발 4. 가맹점구축및실생활에서의사용 : 자동광고프로그램 5. 앞선기술의공개로세계적으로가상화폐에대한기술력견인역할 Page9
White Paper Page10