2. 전송 본연구에서전자적코인 (electronic coin) 은디지털서명의체인으로정의된다. 각소유자는앞선전송 (transaction) 및다음소유자의공개키 (public key) 에대한해시에전자서명을추가하고이를코인말단에첨부하여전송한다. 코인을받는측에서는소유권이전을확인하

Similar documents
2. 거래우리는전자화폐를디지털서명의연속으로정의한다. 각암호키소유자들은그전까지의거래내역에다음소유자의공개키를덧붙인뒤에자신의비밀키로암호화하는디지털서명을하고넘긴다. 돈을받는사람은서명소유자들의체인과, 서명들을검증할수있다. 문제의과정은돈을받는사람은소유자들중한명이이중지불을하지않았는

기를감내할수밖에없다는것이현실이다. 이러한비용과의불확실성은실제사람들에의해물리적화폐가사용될때는회피될수있는사항이나, 디지털통신상에서가 일어날때는, 믿을수있는기관이개입되지않는한해결할방법이없다. 신뢰보다는암호학적인증명에기반을둔전자지불시스템이필요하다. 이시스템은의사가있는두당사가가

2. 거래 우리는디지털서명의사슬로써전자적화폐 (electronic coin) 을정의했다. 각소유자는화폐를송금할때먼젓번거래내역및다음소유자공개키의해시값에전자적으로서명을하고이정보를이화폐의끝에첨가한다. 수금자 (payee) 는소유권 (ownership) 의사슬을검증하기위해해당

새로운 생태계

비트코인 : 개인대개인전자화폐시스템 Satoshi Nakamoto Translated in Korean from bitcoin.org/bitcoin.pdf by Mincheol Im 초록. 순수한개인대개인버전전

LTC 라이트코인명세서

참고 : 더블링크드리스트 노드는데이터와포인터를가지고포인터가다음노드의데이터부분을참조하면서 연결되는자료구조이며, 데이터검색시포인터로연결된노드를검색하여값을찾음 < 더블링크드리스트연결구조 > 구분인덱스 ( 데이터베이스 ) 더블링크드리스트 장점 단점 < 인덱스및더블링크드리스트방


Æí¶÷4-¼Ö·ç¼Çc03ÖÁ¾š

PowerPoint 프레젠테이션

월간 CONTENTS 3 EXPERT COLUMN 영화 점퍼 와 트로이목마 4 SPECIAL REPORT 패치 관리의 한계와 AhnLab Patch Management 핵심은 패치 관리, 왜? 8 HOT ISSUE 2016년에 챙겨봐야 할 개인정보보호

Microsoft Word - src.doc

Yggdrash White Paper Kr_ver 0.18

¼º¿øÁø Ãâ·Â-1

Microsoft Word - 08_01_블록체인.docx

내지(교사용) 4-6부

약관

PowerPoint 프레젠테이션

<B1E2C8B9BDC3B8AEC1EE2DB1E8BFF82DBCF6C1A42E687770>

Windows 8에서 BioStar 1 설치하기

User interface design

비잔틴 노드에 의한 네트워크 분기 시도와, 네트워크 정지 시도를 막기 위하여 네트 워크의 모든 노드들에 2번에 거쳐 합의 데이터를 전송한다. Tendermint와 같은 선행 연구들은 PBFT를 이용하여 비트코인으로 대표되는 작업증명 알고리즘을 사용하는 블록체인 시스템의

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

#유한표지F

< FBEC8B3BBB9AE2E6169>

PowerPoint 프레젠테이션

13( ) INS17-01.hwp

말은 많은 Blockchain 2

6.24-9년 6월

POC Report

메뉴얼41페이지-2

<4D F736F F D204B42C1F6BDC4BAF1C5B8B9CE5F FBAF1C6AEC4DAC0CEC0C720C0CCC7D8BFCD20C0FCB8C12E646F63>

숭실브로슈어 표지 [Converted]

chap 5: Trees

13-08.hwp

204

종합물가정보 2016년 4월호

005- 4¿ùc03ÖÁ¾š

2009 April

공정한합의알고리즘 : deb 합의알고리즘 (A fair consensus algorithm : deb consensus algorithm) 목차 1. 개요 2. 합의알고리즘의공정성 3. deb 합의알고리즘 4. 공정한노드의역할및신뢰성검증 5. 성능 6. deb 합의알고

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

레이아웃 1

PowerPoint 프레젠테이션

정보기술응용학회 발표

슬라이드 1

MD-C-035-1(N-71-18)

OUTLINE 행사개요 행사명 Inside Bitcoins Conference & Expo 2015 장소 KINTEX 제 2전시장 3층 (회의실 301~304호) 행사시기 2015년 12월 9일(수) - 11일(금)ㅣ9일은

210 법학논고제 50 집 ( )

<BACFC7D1B3F3BEF7B5BFC7E22D3133B1C733C8A BFEB2E687770>


1장.indd

Microsoft PowerPoint 자동설치시스템검증-V05-Baul.pptx

Chap 6: Graphs

04 최진규.hwp

12권2호내지합침

<3235B0AD20BCF6BFADC0C720B1D8C7D120C2FC20B0C5C1FE20322E687770>

TEST BANK & SOLUTION

블록체인기반의기부시스템개발. 서론 2017 년에실시한통계청기부설문조사에따르면연 도별기부참여율은꾸준히감소 (2011 년 36.4% 2017 년 26.7%) 하고있다. 기부를하지않은이유로는첫번 째로경제적여유가없고, 두번째로기부에관심이없 어서세번째로기부단체를신뢰할수없어서등이

확률과통계6

장연립방정식을풀기위한반복법 12.1 선형시스템 : Gauss-Seidel 12.2 비선형시스템 12.1 선형시스템 : Gauss-Seidel (1/10) 반복법은초기근을가정한후에더좋은근의값을추정하는체계적인절차를이용한다. G-S 방법은선형대수방정

청구항 1. 소정데이터를저장하는비휘발성메모리 ; 상기비휘발성메모리를구비한휴대용장치의전원상태를체크하는전원상태체크부 ; 및 상기체크된전원상태를기초로상기비휘발성메모리에할당된물리블록을회수하는블록회수부를포함하는전원상태에따라비휘발성메모리의블록회수를수행하는장치. 청구항 2. 제 1

슬라이드 1

<312E20C0AFC0CFC4B3B5E55F C0FCC0DAB1E2C6C720B1B8B8C5BBE7BEE7BCAD2E687770>

02 _ The 11th korea Test Conference The 11th korea Test Conference _

*전자과학02월b63뼉?P-1

공개 SW 기술지원센터

2),, 312, , 59. 3),, 7, 1996, 30.

006- 5¿ùc03ÖÁ¾T300çÃâ

170

PowerPoint Presentation

System Recovery 사용자 매뉴얼

이동전화요금체계개선방안(인쇄본).hwp

¿µ¿øÇÑÄ£±¸µé-201È*

I

PowerPoint 프레젠테이션

DBPIA-NURIMEDIA

*부평구_길라잡이_내지칼라

06_ÀÌÀçÈÆ¿Ü0926

º»ÀÛ¾÷-1

C++ Programming

09오충원(613~623)

외국인투자유치성과평가기준개발

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

학습영역의 Taxonomy에 기초한 CD-ROM Title의 효과분석

°í¼®ÁÖ Ãâ·Â

Cryptography v3

8월-이윤희-1.indd

Windows 10 General Announcement v1.0-KO

본 강의에 들어가기 전

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

게시판 스팸 실시간 차단 시스템

<333820B1E8C8AFBFEB2D5A B8A620C0CCBFEBC7D120BDC7BFDC20C0A7C4A1C3DFC1A42E687770>

RHEV 2.2 인증서 만료 확인 및 갱신

필수 요소이다 본 논문에서는 우선 현재 대표적으로 이용되고 있는 인터넷 금융거래시스템인 페이팔 비트코인 핀테크의 개념에 대하여 살펴본다 다음으로 향후 인터넷 금융거래 시스템이 나아갈 전망을 예측해 보고 이를 위한 연구 방향을 소개한다 생하는 등의 문점을 지적한 바 있다

<BCBCC1BEB4EB BFE4B6F72E706466>

년 2 월 1 1일에 모 스 크 바 에 서 서명된 북 태 평양 소하 성어족자 원보존협약 (이하 협약 이라 한다) 제8조 1항에는 북태평양소하성어류위원회 (이하 위원회 라 한다)를 설립한다고 규정되어 있다. 제8조 16항에는 위원회가 을 채택해야 한다고 규정

<BED6C7C3BCD2BDBA5F4B5350BBFDBBEABCBA31C0E5312D32302E70312E504446>

PowerPoint 프레젠테이션

C# Programming Guide - Types

세종대 요람

Transcription:

Translated in Korean from bitcoin.org/bitcoin.pdf by senetor88@hanmir.com 비트코인 : P2P 전자현금시스템 Bitcoin: A Peer-to-Peer Electronic Cash System Satoshi Nakamoto www.bitcoin.org 초록. 순수한 P2P(peer-to-peer) 방식의전자통화가있다면한당사자가금융기관을거치지않고다른당사자에게곧바로금전을전송할수있다. 본래전자서명을통해온라인직접거래를달성할수있지만이경우에도중복사용 (double-spending) 을막기위해여전히신뢰되는제3자가요구된다면온라인직접거래의주요한장점은사라진다. 본연구에서는 P2P 네트워크를활용하여중복사용을방지하는솔루션을제안한다. 이네트워크는해시 (hash) 기반작업증명 (proof-of-work) 정보를담은연속된체인 (chain) 에전송시각을기록함으로써작업증명자체를다시행하지않는이상변경불가능한기록을생성한다. 여러체인중가장긴체인은기록된전송의순서를증명하는동시에최대규모의 CPU 성능을출처로한다는사실도증명한다. 네트워크공격에참여하지않는각노드 (node, 전산처리지점 ) 가 CPU 성능의주요부분을통제하는한이들노드를통해가장긴체인이생성되어공격자를앞지를수있다. 네트워크자체는최소한의구조만으로운용될수있다. 메시지는최선형 (best effort) 기반으로전파되고각노드는네트워크탈퇴및재가입여부를자유롭게선택할수있으며이경우탈퇴와재가입사이의전송정보에대해서는가장긴작업증명체인을따르게된다. 1. 서 인터넷을통한상거래는전자결제처리를위해신뢰되는제3자로금융기관을수반할수밖에없다. 이방식은대부분의거래에서잘작동하지만신뢰기반모델의본질적인약점에서벗어날수없다. 이경우금융기관은분쟁해결을피할수없기때문에완전히비가역적인거래는현실적으로불가능하다. 따라서분쟁해결비용으로인해거래비용이늘어남으로써실질적인최소거래규모의범위가제한되고일상적인소액거래의가능성이위축되며또한비가역적서비스에대한비가역적결제를실현할수있는역량의상실이라는거시적인비용문제도발생한다. 거래에가역성이있는한신뢰는불가피하게요구된다. 판매자는고객을완전히신뢰할수없기때문에필요이상의정보를요구하게된다. 또한어느정도의사기는불가피한부분으로인식된다. 당사자가상호접촉하는직접거래에서는물리적통화를통해이러한비용및결제의불확실성을극복할수있으나통신채널을통한결제의경우신뢰되는제 3자없이이를실행할수있는방법은없다. 신뢰가아닌암호학적증명에기반을둔전자결제시스템이있다면양당사자가신뢰되는제3자없이상호직접적으로거래를실행할수있다. 이방식을따른다면전산적으로가역성이사실상없는거래를통해판매자를사기로부터보호할수있으며구매자를보호하기위한상시적인거래중계 (escrow) 대책의적용도용이해진다. 본연구에서는 P2P 방식의분산형시점기록 (timestamp) 서버를통해거래의시간적순서에대한전산적증명을생성함으로써중복사용문제를방지하는솔루션을제안한다. 이시스템은선의 (honest) 의노드가총체적으로통제가능한 CPU 성능이집단적으로협조하는공격자노드보다높은한안전하게유지될수있다. 1

2. 전송 본연구에서전자적코인 (electronic coin) 은디지털서명의체인으로정의된다. 각소유자는앞선전송 (transaction) 및다음소유자의공개키 (public key) 에대한해시에전자서명을추가하고이를코인말단에첨부하여전송한다. 코인을받는측에서는소유권이전을확인하기위해해당전자서명을확인할수있다. 이경우수령자는전소유자의코인중복사용여부를확인할수없다는문제가있다. 이에대한일반적인해결방법으로는신뢰되는중앙통제주체혹은민트 (mint, 코인발행주체 ) 가모든전송을일일이확인하여중복사용여부를가려내도록하는방법이있다. 이경우각전송이종료되고나면코인은민트에게반환되고새로운코인으로대체되며민트가직접발행한코인만이중복사용되지않았다고본다. 이러한방식은금전시스템전체가민트운영자에게의존하고모든전송이그운영자를거칠수밖에없는데이는결국은행과다를바없다. 따라서전소유자가수령자와의전송에앞선다른전송에서명하지않았다는사실을수령자가알수있도록하는방법이필요하다. 이경우최선순위의전송만이문제되며이후의중복사용시도는고려하지않는다. 전송의공백을확인하려면모든전송을파악하는것이유일한방법이다. 민트모델의경우민트자체가모든거래를파악하게되며어떤거래가먼저도달했는지결정한다. 신뢰되는제3자없이이를달성하려면모든전송이공개전파되어야하며 [1] 참여자들이이러한전파내용의도달순서에대한통일된이력 (history) 에동의할수있는시스템이필요하다. 수령자에게는각전송시점마다노드의다수가해당전송의최선도달에동의했는지에대한증명이필요하다. 3. 시점기록서버 본연구에서제안하는솔루션은시점기록 (timestamp) 서버에서개시된다. 시점기록서버는전송시점이기록될항목을담은블록 (block) 의해시를산출하고이를신문이나유즈넷 (Usenet) 게시글처럼널리전파한다 [2~5]. 이러한시점기록을통해해당데이터가해당시점에존재했고그렇기때문에해시에포함될수있었다는사실이증명된다. 각시점기록의해시에는선행시점기록이포함되며이를통해추가시점기록이선행시점기록에계속이어짐으로써체인이형성된다. 2

4. 작업증명 분산형시점기록서버를 P2P 기반으로적용하기위해서는신문이나유즈넷기술보다는 Adam Back의해시캐시 (Hashcash)[6] 와유사한작업증명시스템을활용해야한다. 여기에는예컨대 SHA-256으로해시가산출될경우해시값이 0비트숫자들로개시되도록하는값에대한조사 (scan) 가수반된다. 이때요구되는평균작업량은필요한 0비트숫자의양과지수적 (exponential) 관계가되며하나의해시를실행하여확인가능하다. 본연구에서제안하는시점기록네트워크에서는블록에임의의값 (nonce) 을대입하여그블록의해시에서필요한 0비트숫자가나올때까지이과정을반복하는방식의작업증명을적용한다. CPU 사용량이작업증명을충족할정도에도달할경우해당작업을재실행하지않는한블록을변경할수없다. 이후블록이계속체인에추가됨에따라어떤블록을변경하려면이에대한선행블록까지모두재처리해야하는결과가된다. 이러한작업증명은다수결 (majority decision) 에대한진위판정문제도해결할수있다. 만약다수가 1 개 IP주소당 1투표원칙을따른다면대량의 IP를확보할수있는측에서시스템을장악할수있게된다. 그러나작업증명은기본적으로 1개 CPU당 1투표원칙을따른다. 이경우다수결은가장많은작업증명노력이투입된최장체인을통해나타난다. 선의의노드에서제어한다면 CPU 성능의대부분을제어한다면선의의체인이가장빠르게연장되어다른모든체인에앞서갈수있다. 공격자가선행블록을변경하기위해서는해당블록그리고그에이어지는모든블록의작업증명을재실행하고나서선의의노드에서실행하는작업증명을따라잡고또한앞서야만한다. 이하에서는공격자가선의의노드를따라잡을가능성은블록이체인에추가됨에따라급격히감소한다는점을설명한다. 하드웨어처리속도의향상그리고시간경과에따른노드운용이해관계의변동을보상하기위해작업증명의난이도는시간당블록의평균생성속도를고려하여조절된다. 블록이너무빨리생성될경우작업증명난이도는상승한다. 5. 네트워크 네트워크작동과정은다음과같다. 1) 새로운전송이전노드에전파된다. 2) 각노드는새로운전송을수집하여각자의블록에포함시킨다. 3) 각노드는각자의블록에대한작업증명을찾는작업을실행한다. 4) 작업증명을찾아낸노드는해당블록을전노드에전파한다. 5) 노드는모든전송이유효하고중복사용이없는경우에만해당블록을인정 (accept) 한다. 6) 노드는대상블록해시를선행해시로하여후속블록생성을개시함으로써대상블록을인정한다. 노드는언제나가장긴체인을올바른체인으로인식하고이를연장하기위한작업을계속한다. 만약두노드가서로다른블록을동시에전파할경우개별노드는각기다른블록을먼저전파받게된다. 이경우각노드는각자우선전파받은블록에대한작업을실행하지만다른블록이들어간체인이더길어질수도있기때문에다른블록을일단유지한다. 다음작업증명이발견되고체인하나가더길어질경우이러한균형은깨지게되며다른체인에서작업하고있던노드도모두더긴체인으로갈아타게된다. 새로운전송의전파가반드시모든노드에도달해야만하는건아니다. 전송이다수노드에전달되기만하면금방블록에포함될수있다. 블록전파는아울러전파메시지가누락되는경우에도작동한다. 어떤노드가블록을전파받지못할경우해당노드는블록을받지못했다는알림과함께다음블록을전파받는시점이언제일지에대한요청을보내게된다. 3

6. 보상 블록의첫전송은그블록의생성자가보유한새로운코인의유동을개시하는특별한성격의전송이다. 이는노드의네트워크유지에대한보상 (incentive) 이되며코인을발행하는중앙주체가없기때문에코인의유동을개시할수있는방법이기도하다. 새로운코인의지속적인추가는마치금광채굴자들이금유동량을늘리기위해자원을소모하는경우와같다. 본시스템의경우 CPU 처리시간및전력이그러한소모자원이된다. 전송수수료또한보상수단이될수있다. 만약전송의출금 (output) 값이입금 (input) 값보다적을경우그차액은해당전송을포함한블록의보상액수에전송수수료로서추가된다. 사전지정된수량의코인이모두유동에들어가면보상은전적으로전송수수료에의존하게되며인플레이션은완전히차단된다. 보상은노드가선의를유지하도록할수있다. 만약욕심을가진공격자가모든선의의노드보다더많은 CPU 성능을확보할수있다면그는이자원을통해지급금액을빼돌려사기를실행할지아니면새로운코인을생성할지정해야한다. 이경우시스템을공격하고자신이보유한부의유효성을저해하기보다는다른모두보다도더많은코인을확보할수있도록해주는원칙을따르는선택이결국더높은수익을가져온다는점을깨달을수있다. 7. 디스크용량절감 최신의코인전송이후에블록이충분히누적되면이미소비된전송의이력을삭제하여디스크용량을절감할수있다. 이때블록해시의손상을피하기위해전송정보해시는 Merkle 트리 (tree) 에들어가고 [7, 2, 5] 트리의뿌리 (root) 만이블록해시에포함된다. 낡은블록은이트리에서가지를잘라냄으로써압축가능하다. 뿌리외의내부해시는보관할필요가없다. 전송정보가없는블록헤더의용량은 80바이트가량이다. 블록이 10분마다생성된다고가정하면 80*6*24*365로계산하여연간 4.2MB의정보가생성된다. 2008년기준으로개인용컴퓨터는대체로 2GB 램을보유하고무어의법칙 (Moore s Law) 에따라매년 1.2GB씩용량이늘어단다고생각한다면블록헤더를메모리에보관한다해도용량이문제될일은없다고하겠다. 4

8. 결제확인간소화 네트워크노드를완전히가동하지않고도지급의확인 (verification) 이가능하다. 사용자는가장긴작업증명체인의블록헤더 (header) 사본만유지하면되는데네트워크노드를조사하여자신이가장긴체인에들어가있다고확신할때확인하려는전송과그전송이기록된블록을연결시키는 Merkle 가지 (branch) 를획득함으로써이사본을얻을수있다. 사용자는전송을직접확인할수는없지만그전송이체인의어느부분에있는지연결시킴으로써네트워크노드에서그전송을인정했음을알수있으며이후에블록이추가됨으로써네트워크의인정사실을더욱확실히할수있다. 이렇게보면선의의노드가네트워크를제어하는한전송확인을신뢰할수있으며반대로공격자가네트워크를장악한경우그러한신뢰성을담보할수없게된다. 네트워크노드가자체적으로전송을확인할수도있으나공격자가네트워크를계속장악할수있다면전송을조작함으로써위와같은간소화된방식을기만할수있다. 이를막기위한전략으로는네트워크노드가무효 (invalid) 블록을탐지할때발령하는경보를수집하도록하고사용자소프트웨어가전체블록그리고경보가울린전송정보를다운받아이러한불일치를확인할수있도록하는방법을생각할수있다. 지급수령이잦은회사의경우독립된보안과신속한전송확인을위해자체적인노드운용을선호할수도있다. 9. 금액의결합및분리 물론각코인을개별적으로처리할수도있겠지만모든단위마다일일이전송을실행하기는어렵다. 모든전송은금액의결합및분리가가능해지도록입금 (input) 과출금 (output) 으로구성된다. 하나의전송에는보통선행고액전송에의한단일입금이나여러소액전송에의한다수의입금이있을수있으며출금은최대두건으로각각본액의지급그리고경우에따라지급자에대한잔액 (change) 의환금이있을수있다. 이경우어떤전송이여러선행전송에의존하고이들선행전송또한더많은선행전송에의존함에따 른정보확장 (fan-out) 은문제가되지않는다. 이렇게모든내용이담긴전송이력의완전한사본을추출 할이유가없기때문이다. 5

10. 프라이버시 전통적인금융모델은정보에대한당사자와신뢰받는제3자의접근을제한함으로써일정수준의프라이버시를달성한다. 모든전송의공개전파필요성은이러한종래방식과전면배치되지만이경우공개키를익명으로유지함으로써다른측면에서정보의흐름을차단하여프라이버시를유지할수있다. 누군가가다른누군가에게어떤양의금액을보내는지는공개되지만이러한전송을그누구와도연결시킬수없다. 이는주식거래소의정보공개수준과비슷하다고할수있는데주식거래에서는개별거래의시점과규모그리고 " 테이프 " 가공개되지만해당당사자가누구인지는알수없기때문이다. 아울러개별전송마다새로운공개키와개인키가사용되어야한다는추가안전대책이적용되며이를통해각전송이동일한소유자에게연관 (linking) 되는결과를막을수있다. 여러입금이수반되는전송에서는각입금이동일소유자를거친다는점이밝혀질수밖에없으므로어느정도의연관은불가피하다. 이경우어떤공개키의보유자가밝혀지면위와같은연관을통해해당보유자가실행한다른전송도알아낼위험이있다. 11. 연산 이제공격자가선의의체인이아닌다른체인을더빠르게생성하려는경우를가정한다. 만약이러한시나리오가실제로실현된다해도당장없는값이생겨나거나본래공격자소유에속하지않은금전이탈취되는등시스템이임의로변경되는건아니다. 노드는유효하기않은전송을지급으로인정하지않으며선의의노드는이러한무효의전송이포함된블록을인정하지않는다. 공격자는다만자신의전송사실을변경하여자신이이미사용한돈을돌려받으려는시도를할수있을뿐이다. 선의의체인과공격자체인의경주는이항급수랜덤워크 (Binomial Random Walk) 로표현될수있다. 이때성공의결과는선의의체인이 1블록연장되어 +1만큼간격이변경되는경우로, 실패의결과는공격자체인이 1블록연장되어간격이 -1만큼변경되는경우로가정한다. 어떤주어진간격에서공격자가따라잡을확률의문제는이른바도박사의파산 (Gambler s Ruin) 문제와유사하다. 도박사가어떤간격에서무한정의밑천을가지고도박을시작하여동점에도달하기위해무한횟수의시도를한다고가정한다. 이경우그가동점에도달하는확률, 혹은공격자가선의의체인을따라잡는확률을계산할수있으며그과정은다음과같다 [8]. P = 선의의노드가다음블록을찾아낼확률 q = 공격자가다음블록을찾아낼확률 qz = z 블록만큼뒤쳐진공격자가따라잡을확률 6

p>q라고가정하면공격자가따라잡아야할블록의수가늘어날수록따라잡는확률은지수적으로 (exponentially) 감소한다. 이렇게불리한조건에서만약공격자가초반에행운을잡지않는이상그가뒤쳐질수록따라잡는확률은거의무의미할정도로작아지게된다. 이제새로운전송의수령자가지급자측이전송을변경할수없다고확실히믿을수있으려면얼마나기다려야하는지가문제된다. 이때지급자는공격자로서수령자가지급을정상적으로받았다고한동안착각하게한다음그지급대상을자기자신으로바꾸려한다고가정한다. 이경우수령자는결국그러한사기를알수있긴하지만공격자는자신의행적이늦게발각되기를바라게된다. 수령자는전송승인직전새로운공개키와개인키를생성하고지급자에게공개키를보낸다. 이방식을통해지급자가사전에블록을준비하여충분히앞서간다음사기전송을실행하는수법을막을수있다. 일단전송이이루어지고나면악의의지급자는그가원하는사기전송내용을담은평행체인에대한작업을개시하게된다. 수령자는전송이블록에추가되고그이후의 z만큼의블록이추가될때까지기다린다. 수령자는공격자의진행도를알수없으나선의의블록생성에블록당예상평균시간이소요됐다고가정한다면공격자의예상진행도는푸아송 (Poisson) 분포를따르게되며해당예상값은다음과같다. 이경우공격자가따라잡을수있는가능성을구하기위해서는공격자의각진행도값에대한 Poisson 밀도에공격자가그시점으로부터추격할수따라잡을있는가능성과곱한다. 분포의무한부분의합을없애기위해수식을다시쓰면 이를 C 코드로바꾸면 7

결과를측정하면 z 에지수적인관계로확률이감소함을알수있다. P 가 0.1% 보다낮은경우를계산하면 12. 결론 이상과같이본연구에서는신뢰에의존하지않는전자거래시스템을제안했다. 본시스템은전자서명으로생성되는코인의일반적인프레임워크에서출발하는데전자서명방식은소유권통제는우수하지만중복사용방지대책이없는한불완전할수밖에없다. 이부분을해결하기위해본연구에서는작업증명을통해거래에대한공개이력을기록하는 P2P 네트워크를제안했으며이방식에서는선의의노드가과반 (majority) 의 CPU 성능을확보할경우공격자에의한변경가능성은금방전산적현실성을잃게된다. 이러한방식의네트워크는별도의구조설계가없는단순성측면에서견고하다고할수있다. 노드는약간의협조만으로도모두동시에작동한다. 노드가전달하는메시지는특정지점으로전송 (route) 되지않고최선형기반으로만전파되기때문에각노드가별도로식별될필요가없다. 노드는자의에따라네트워크에대한가입또는탈퇴를정할수있으며탈퇴기간동안의네트워크의내부이력에대해서는작업증명체인을따르게된다. 노드는 CPU 성능을통해투표를하는데유효한블록에대해서는해당블록을체인에추가하는작업을수행함으로써이를인정하는한편유효하지않은블록에대해서는해당블록에대한작업을거절함으로써이를인정하지않는방식으로작동하게된다. 그외에필요한규칙과보상은합의 (consensus) 방식을통해실행될수있다. 8

참고문헌 [1] W. Dai, "b-money," http://www.weidai.com/bmoney.txt, 1998. [2] H. Massias, X.S. Avila, and J.-J. Quisquater, "Design of a secure timestamping service with minimal trust requirements," In 20th Symposium on Information Theory in the Benelux, May 1999. [3] S. Haber, W.S. Stornetta, "How to time-stamp a digital document," In Journal of Cryptology, vol 3, no 2, pages 99-111, 1991. [4] D. Bayer, S. Haber, W.S. Stornetta, "Improving the efficiency and reliability of digital time-stamping," In Sequences II: Methods in Communication, Security and Computer Science, pages 329-334, 1993. [5] S. Haber, W.S. Stornetta, "Secure names for bit-strings," In Proceedings of the 4th ACM Conference on Computer and Communications Security, pages 28-35, April 1997. [6] A. Back, "Hashcash - a denial of service counter-measure," http://www.hashcash.org/papers/hashcash.pdf, 2002. [7] R.C. Merkle, "Protocols for public key cryptosystems," In Proc. 1980 Symposium on Security and Privacy, IEEE Computer Society, pages 122-133, April 1980. [8] W. Feller, "An introduction to probability theory and its applications," 1957. 원문 https://bitcoin.org/en/bitcoin-paper 역자 senetor88@hanmir.com 9