traders_free custom_top_html:no
default debug random = 0 / type = READ / detected = READ
2016-07-10 09:04:10

비트코인 블록체인 개론

 

 

비트코인이 오늘 두번째 반감기를 맞았네요. 비트코인 블록체인의 이해에 도움이 될만한 내용을 써 보았습니다.

 

혹시 추가나 수정될 부분이 있으시면 제안부탁드립니다^^

 

ps: 아래의 링크에서 다운

https://drive.google.com/open?id=0BwBkN9fNGDPeTUlmV1dzazljWDA

 

 

 

 

 

 

 

 

비트코인 블록체인 개론

 

한승환(어른아이)

 

 

 

 

 

 

              이 글은 비트코인이나 블록체인의 내용자체가 상당히 어렵고 제대로 찾아볼 수 있는 자료가 거의 없는 상황이기 때문에, 전문지식이 없는 분들도 손쉽게 읽고 이해할 수 있도록 하는 것에 최대한 초점을 맞추어 작성하였다. 현재 존재하는 대부분의 암호화폐가 비트코인 블록체인의 구조를 기반으로 설계된 것이기 때문에, 비트코인의 블록체인을 이해하는 것은 다른 응용화폐들을 이해하는데 중요한 디딤돌이 될 수 있다. 이러한 블록체인을 응용하여 도입하고자하는 움직이 전세계적으로 나타나고 있으며, 다양한 분야의 유수의 대기업에서부터 정부나 공공기관까지 폭넓은 층에서 블록체인에 대한 관심이 증가하고 있다. 굳이 블록체인 산업에 종사하거나 관련된 프로그램을 개발하고자 하지 않더라도, 이러한 개념을 알아둔다면 도움이 될 것으로 기대하고 있다. 처음 부분에서는 비트코인 자체에 대해 다루고자 하였으며 이어지는 내용에서는 블록체인의 응용과 그 영향 등에 대해 알아보고자 하였다.

 

 

 

 

 

1. 비트코인

 

비트코인은 2009년에 ‘사토시 나카모토(예명)’로 알려진 한 명의 또는 다수의 개발자들을 통해 탄생되었다. 비트코인은 P2P네트워크, 해시, 암호화, POW(작업증명) 등의 기술을 다차원적으로 종합하여 만든 프로그램이며,기존의 가상화폐들과는 달리 암호(cryptography)와 해시를 이용한 POW(작업증명)방식을 이용하였다는 점에서 암호화폐(cryptocurrency)로 불리고 있다.

 

이러한 암호화폐 발행 및 거래 프로그램을 ‘비트코인’이라고 부르며, 이 프로그램 안에서 통용되는 암호화폐 또한 ‘비트코인’이라고 칭한다. 비트코인은 특정한 발행 또는 관리 주체 없이 운영되는데, 참여하는 사용자들이 주체적으로 화폐를 발행하고 이체내역을 관리하게 된다. 중앙화된 주체에서 주도적으로 관리하는 것이 아니라 P2P로 운영되기 때문에 계좌동결, 강제인도, 강제신원공개 및 서비스정지 등이 불가능하다.




 

2. 비트코인의 작동원리

 

채굴(Mining)

비트코인은 사용자들에 의해 직접 발행이 되는데 이를 통상적으로 채굴이라고 부른다. 이를 기술적으로는 끊임없는 해싱작업을 통한 ‘목표값(target value)’ 이상의 해시(hash)값 찾기(작업증명, POW: Proof of Work)로 정의할 수 있다. 채굴에 참여하는 모든 사용자가 목표값을 찾기위한 경쟁을 벌이며, 특정한 사용자가 목표값에 해당하는 해시값을 찾는데 성공하면, ‘블록’을 발행하게 된다. 이들은 블록을 발행하고 이를 네트워크에 전파하면서 동시에 블록발행보상인 ‘비트코인’과 해당 블록안에 포함되어 있는 ‘이체 수수료’를 받게 된다. ‘비트코인 지급’이라는 경제적 보상이 채굴자들이 해싱작업에 참여하는 동기가 된다. 채굴행위는 근본적으로 끊임없는 해싱작업이며, 많은 컴퓨팅 파워를 가지고 있을 수록 빠른 속도의 해싱이 가능하다. 즉, 컴퓨팅 파워를 많이 투입할수록 다른 경쟁자들보다 비트코인을 많이 받게 되는 구조이다. 블록발행 확률(목표값 경쟁 승리확룔)과 네트워크 상에서 자신이 차지하는 컴퓨팅파워 비율은 정확히 비례하며, 만일 누군가가 전체 투입 컴퓨팅 파워 중 30%를 점유하고 있다면, 수학적으로 블록생성 확률도 정확히 30%에 수렴한다.

 

(*POW로 통칭되는 ‘작업증명’은 기본적으로 특정한 난이도의 작업을 수행했음을 증명하는 기법이며, 해당 작업의 어려움은 난이도에 맞게 설정되어 있어야 하지만 그 작업이 완료되었음을 확인하는 것은 쉬워야 한다. 여러가지 방법이 작업증명에 사용될 수 있는데, 비트코인의 경우 위에 언급된 ‘Hashcash’방식을 통해 작업증명을 한다)


 

조폐(Mintage)

블록은 위에서 설명된 채굴행위를 통해 발행되며, 매 발행시마다 비트코인 프로그램 자체(coinbase)에서 ‘블록발행보상’을 채굴자에게 지급하는 방식으로 신규 화폐를 발행(조폐)한다. ‘블록발행보상’은 2016년 기준으로 25비트코인이며, 매 ‘21만 블록(약 4년)’을 기준으로 발행량이 반감한다. 2009년 1월 첫 발행 시에는 50비트코인씩 발행이 되었으나 약 4년 뒤인 2013년 말부터는 25비트코인으로 발행량이 줄었으며, 역시 4년 뒤 2016년 7월 10일에는 12.5비트코인으로 매 4년마다 계속하여 반감해나가게 된다. 이렇게 발행되는 비트코인의 총량이 2,100만개에 이르면 비트코인의 신규발행은 종료된다. (*더 정확하게는 20999999.9769개인데, 블록 당 최소 보상량이 0.00000001비트코인(=1사토시)보다 작을 수 없기 때문이다 - 연구자료(스프레드시트))

 

Fe2uKEQd9rAz4ovMwUn2FBQisuAEalqxpO3Md2Pv


 

블록(Block)

블록은 위에서 설명된 채굴행위를 통해 매 10분을 주기로 발행된다. 블록은 일종의 데이터 패킷으로 몇 가지 정보를 담고 있다. 가장 중요한 것으로 참여자들이 화폐를 거래한 ‘거래내역’, 그리고 이전 블록의 해시값, 난이도, 논스(nonce) 등이 포함된다. 매 블록은 바로 전 블록의 해시값을 담고 있으며, 이렇게 이어진 블록들은 시간순으로 발생한 이체내역들을 담고 있는 하나의 ‘블록체인(blockchain)’을 이룬다. 각 블록은 최대 1MB의 크기까지 확장될 수 있으며, 헤더 80바이트, 기타 17바이트 등을 제외하고 총 1,048,479바이트 가량이 이체내역 저장을 위해 사용될 수 있다.

 

*블록은 헤더(header)와 바디(body)로 이루어져 있다.

헤더는 다음의 6가지로 이루어져 있으며 -

1)현재 비트코인 프로그램의 버전, 2)이전 블록을 해싱한 해시값, 3)현재 블록의 거래내역들을 모두 해싱한 해시값, 4)현재 블록의 타임스템프, 5)난이도(해시 목표값), 6)논스값  -

바디는 해당 블록안에 산입된 모든 이체내역들로 이루어져 있다.

 

(*비트코인의 블록크기는 보안적인 이유때문에 최초 1MB로 제한되어 있었지만, 비트코인에서 처리하고자 하는 이체건수가 늘어남에 따라, 블록의 크기를 1MB이상으로 늘리자는 다수의 요청이 있어왔다)


 

난이도(Difficulty)

블록의 생성주기는 네트워크 전파 속도 및 보안성 등을 이유로 사토시에 의해 ‘10분’으로 채택되었다. 그러나 위 ‘채굴’ 부분에서 언급된 바와 같이, 블록생성은 곧 특정한 목표값을 해싱작업으로 찾아내는 것인데 그렇다면 해싱작업 속도만 빠르다면 10분이 아니라 1분 안에도 목표값을 찾아낼 수 있을 것이다. 그렇다면 충분한 컴퓨팅파워만 있다면 1초안에도 블록을 생성하는 것이 가능할 것이다. 이것을 막기 위해 도입된 것이 ‘난이도’의 개념이다. 비트코인이 채택한 작업증명(POW: Proof of Work)방식은 ‘Hashcash’ 방식이다. Hashcash 방식의 요소는 네 가지로, ‘목표’, ‘작업방식’, ‘난이도 조정방법’, ‘난이조 조정시점’이다. ‘목표’는 2016개의 블록을 생성하는데에 2주(2016블록*10분=2주)가 소요되야 한다는 것이며, ‘작업방식’은 해싱을 통한 목표값 찾기, 그리고 ‘난이도 조정방법’은 목표치를 초과/미달하는 부분만큼 ‘목표값(target value)’의 난이도가 변경되는 것이다. 이 난이도 조정은 매 2016번째 블록마다 이루어진다.

 

만일 2016개의 블록을 생성하는데 2주가 아닌 1주일이 걸렸다면, 목표에 도달키 위한 필요작업의 50%만 이루어진 것이므로, 목표에 도달치 못한 것이다. 따라서 난이도를 2배로 증가시켜서, 기존 1주일의 두 배인 2주가 걸리게 조정하고 목표를 충족시킨다.


 

이체확인(Confirmation)

이용자가 이체를 하면 이를 채굴자가 자신의 블록에 넣어서 발행하게 되는데, 이 순간 해당 이체내역의 ‘이체확인(confirmation)’은 1이 된다. 그리고 해당 블록의 해시를 이용한 다음의 블록이 발행되면, 해당 이체내역의 이체확인은 2가 되는 식이다. 비트코인 프로그램은 각 이체가 총 6번(60분)의 이체확인을 받아야 재이체(사용)가 가능하도록 설계되어 있는데, 이것을 일반적인 POS과정(*슈퍼에서 껌을 사기 위해 이체하고 1시간을 기다릴 수는 없는 일이다)에 그대로 도입하는 것은 불가능할 것이다. 따라서 각 사업자는 자신이 리스크를 지고 필요에 따라 1~2이체확인 또는 단순히 TxID를 통한 이체신청내역 사실확인만으로도 이체확인을 해주는 ‘제로컨펌(zero-confirmation)’까지 다양하게 조정하여 사용하고 있다. (일반적인 가상화폐 거래소의 경우 한 번의 이체내역 확인(=1블록 컨펌) 만으로도 이를 인정해주고 있다.)


 

이체발생 과정

이체가 발생하고 확정되어 가는 과정을 다음과 같이 정리할 수 있다.

 

1) 한 이용자가 개인키를 사용하여 A내역을 이체신청한다.

2) A 이체신청에 대한 고유한 해시값이 발행된다. (TxID) - 이를 통해 이체내역은 즉시 확인할 수 있다.

3) A 이체신청내역을 채굴자가 자신의 개인 ‘이체풀(Transaction Pool)’에 넣어 보관한다.

4) 블록에 넣을 이체신청내역들을 ‘우선순위’부터 차례로 정하고 이를 기준으로 목표값 해싱을 진행한다. 목표값 해싱에 성공하면 블록을 발행한다. (*따라서 이체내역이 우선순위에 들지 못하는 경우, 영원히 확인되지 않을 수 있다)

5) A 이체내역을 담은 블록이 네트워크에 전파된다.

6) A 이체내역의 이체확인이 1이 된다.

7) 네트워크를 통해 해당 블록을 전파(다운)받은 다음의 채굴자가 블록생성권한을 얻고 다음 블록을 생성하게 된다.

8) A이체내역을 담은 블록의 ‘다음 블록’이 네트워크에 전파된다.

9) A 이체내역의 이체확인이 2가 된다.

10) 위의 과정이 끝없이 반복된다.

 

위의 과정은 이체신청과 이체확인의 과정을 설명하고 있으며, 누군가가 A주소의 비트코인을 B주소로 이체하기 위해 자신의 ‘개인키(private key)’로 서명하여 네트워크로 전파하면 ‘이체신청(Transaction)’이 완료된다. 이를 채굴자가 전파받아 자신이 발행하는 블록에 산입하여 넣고 이를 전파하면 ‘이체확인(Confirmation)’이 된다. 여기에 마지막으로 이를 이체받는 주체가 이체내역을 인정하면 그것이 ‘이체확정(Settlement)’이다. 거래소의 경우 1~2이체확인만으로 이체확정을 시켜주는 경우도 있고, POS의 경우 0~1번, 고액의 이체건의 경우 10이체확인까지 경우에 따라 서로 다른 수준의 이체확인을 설정하여 이체확정을 하게된다. (*일부 거래소는 가상화폐를 부정적으로 탈취한 해커가 보내는 화폐를 영원히 이체확정하지 않음으로 현실적으로 해당 해커의 화폐를 동결해버리는 방법을 사용하기도 한다)

 

이렇게 이체는 ‘이체신청(Transaction)’, ‘이체확인(Confirmation)’, ‘이체확정(Settlement)’의 세 단계를 거치게 된다.


 

비트코인의 존재(Bitcoin Ontology)

사실 비트코인 프로그램에 비트코인의 실체적 개념은 존재하지 않는다. 그 어느 경우에도 비트코인이라는 것이 A의 계좌에서 B의 계좌로 ‘이동’하는 경우는 없으며, 단순히 해당 계좌들의 숫자를 증액하거나 감액하는 원장정리개념만이 존재할 뿐이다. 그러한 원장정리 내용은 모두에게 동일하게 공유된다. 따라서 각자가 가진 원장 모두가 원본이 된다는 무신뢰거래(trustless settlement)가 비트코인 원장의 핵심개념이다. 각자가 가진 원장이 원본이기 때문에, 다른 누구에게 확인을 받을 필요나 다른 독립된 기관에 신뢰성을 의존할 필요가 없다. 이것을 구현하기 위해서 위에 언급되는 다양한 기법들이 사용되었으며, 블록체인 등장 이전에는 이것이 해결하기 어려운 난제로 여겨져 오고 있었다.


 

해싱과 논스(Hash and Nonce)

해싱은 데이터(존재하는 모든 데이터에 적용가능)를 무작위의 정해진 길이의 문자열로 치환시키는 것이다. 일례로 비트코인의 해싱기법인 ‘SHA256^2’는 블록을 그 내용이나 크기에 상관없이 언제나 32바이트 즉 64자리 길이의 결과값으로 치환한다.

 

Ex) 542f69d65f81466d07c8e52417f2b005e8577e6e75c80d6d51539b8b118b1e89

 

그러나 해싱의 또 다른 특징은, 해싱하는 대상 데이터가 동일하다면 언제가 같은 해시값이 나온다는 것이다. 하지만 목표값을 찾으려면 반복적인 해싱으로 새로운 해시값을 만들어야 한다. 따라서 블록의 내용을 임의적으로 바꾸어야 하는데 이체내용 등을 임의로 바꿀 수는 없으니, 블록에 포함된 논스값을 수정함으로 결과해시값을 다르게 만드는 것이다(논스 자체가 이러한 목적으로 존재). 따라서 채굴자는 블록 헤더의 논스값을 0에서부터 1씩 반복적으로 증가시켜가면서 해시값을 얻어낸다.

 

*더 자세하게 살펴보자면, 논스는 32비트(unsigned, 음수제외)로 이루어져있고 따라서 42억번 가량까지만 셈이 가능하다. 42억번은 비트코인에 요구되는 해시작업에 비해 터무니없이 작은 수이다. 따라서  코인베이스의 extra-nonce field를 통해 머클루트 값을 변경시켜 해싱작업을 계속한다. 이 부분은 각 채굴풀마다 방식이 조금씩 차이가 날 수 있다.


 

비트코인의 보안성

화폐거래장부에 대한 공격은, 해당 장부의 내역을 조작하는 것이다. 내역을 변조한다는 것은 변조된 블록을 생성하여 전파시키는 것에 성공한다는 뜻인데, 이는 현실적으로 불가능하다. 모든 블록은 바로 전 블록의 해시값을 기준으로 생성되는데, 이렇게 해시값을 통해 각 블록이 연결되어 있기 때문에 ‘블록체인’이라 칭해진다. 만일 현재 총 10개의 블록이 있고 당신은 9번째의 블록을 변조하려 한다고 가정해보자. 변조된 9번째의 블록을 네트워크에 전파한다. 그러나 네트워크는 이미 10번째 블록을 가지고 있기 때문에 당신이 보내는 9번째 블록을 받지 않는다. 결국 변조된 9번째 블록을 이미 10개의 블록을 가진 네트워크가 받아들이게 하려면 해당 9번째 블록의 해시값을 이용하여 11번째 블록까지 생성하고 네트워크에 전파해야한다. 그러나 당신이 변조된 블록을 기준으로 11번째 블록까지 생성하였을 때에는 네트워크(다른 채굴자들)는 이미 11번째 또는 12번째 블록을 생성하고 있을 것이다.

 

결국 이들이 변조된 블록을 받아들이게 만드려면 이들(네트워크)보다 빠르게 블록을 생성하여 전파해야한다는 의미인데, 그러려면 수학적으로 네트워크보다 더 많은 컴퓨팅파워(hashrate)가 있어야 한다. 2016년 7월 10일을 기준으로 현재 네트워크에 투입되는 총 해시파워(목표값 해싱을 위해 투입되는 컴퓨팅파워)는 19,583,587.6 PetaFLOPS인데, 이는 2016년 기준, 세계최고의 슈퍼컴퓨터인 중국의 Tianhe-2가 33.8 PetaFLOPS임을 고려할 때 사실상 뚫는 것이 불가능하다고 보아도 무방하다.






 

3. 비트코인의 장단점


 

장점 (경우에 따라 단점이 될 수 있음)

 

보안성 - 비트코인이 가진 블록체인의 작동방식 덕문에 사실상 이체내역의 변조가 불가능하다.

 

낮은 이체수수료 - 일반적으로 사용되는 수수료는 0.0002btc 가량이며 이는 152원에 불과하다. (비트코인 당 762,100원 기준 - 2016년 7월 10일 코인원 거래소 가격) 수수료는 천원을 보내든 10억원을 보내든 이체금액과 상관없이 동일하게 적용된다. 전체 이체건수가 증가하면 더 낮은 이체수수료를 설정하는 것도 가능해질 것이다.

 

전세계 전역에서 24시간 이체 - 중개기관이 없고 P2P네트워크로 시스템이 유지되기 때문에 전세계 어디에서나 시간에 구애받지 않는 이체가 가능하다.

 

거래의 투명성 - 모든 거래는 블록을 통해 전세계에 공개되며, 이체내역, 발신자, 수신자, 각 지갑의 잔액내역과 이체기록까지 전부 조회가 가능하다. 따라서 중간 상인의 경우, 몰래 추가 마진을 부과하는 것은 불가능하다.

 

거래의 익명성 - 비트코인 지갑 생성 및 이용 시, 신원증명 절차가 없으며 따라서 익명으로 모든 거래가 가능하다.

 

계좌생성 편의성 - 누구든지 버튼 클릭 한번으로 계좌생성이 가능하다. 심지어 매 이체 건마다 새로운 계좌를 생성하여 사용하고 버리는 것도 가능하다.

 

이체수령인 리스크 헷지 - 범죄율이 높은 지방에서 또는 위험한 재료를 통해 사업을 하는 경우, 비트코인을 통해 결제를 미리 받는다면 떼일 염려가 없다.

 

분할성 - 비트코인은 매우 낮은 단위까지 사용이 가능하며, 그 이체도 간편하다. 따라서 여러가지 소액결제 서비스에 유용하게 사용될 수 있을 것이다.



 

단점 (경우에 따라 장점이 될 수 있음)

 

가치 변동성 - 현재 비트코인은 자체로써 생태계를 구성하기보다는, 결국 달러 등 다른 법정화폐로 환전되어 사용되는 ‘환전가치'에 크게 의존하고 있다. 따라서 수시로 10% 이상이 변동되는 비트코인의 달러표시 가격이 가진 변동성은 큰 리스크가 된다.

 

인식부재 - 아직 비트코인이 대중적으로 널리 알려지지 못했고, 안전한 화폐로 인식되고 있지도 않기 때문에 생태계확장에 어려움이 있으며, 각 기업에서 결제화폐로 사용하는 것도 쉽지 않다.

 

비상용화 - 비트코인 프로그램은 아직 보편적으로 사용되기에는 불편한 점이 많기 때문에 계속해서 현실에 맞게 수정이 되어 가고 있으며, 관련 서비스들이 개발되고 있는 중이다.

 

관리의 어려움 - 특정한 비트코인 보관서비스나 거래소 등에 비트코인을 예치해두지 않는다면 자신이 스스로 비트코인을 관리해야 하는데 이것이 쉽지 않다. 비트코인의 이체 비밀번호를 잃어버린다면 재설정할 방법이 없으며, 비트코인이 들어있는 USB나 노트북 등을 분실해도 복구할 방법은 존재하지 않는다. 이러한 실수는 생각보다 자주 발생하기 때문에 특별한 주의가 요구된다.

 

해킹 - 비트코인의 블록체인 자체는 해킹이 되지 않지만, 자신이 비트코인을 예탁한 거래소는 해킹을 당할 수 있다. 이러한 해킹은 수차례에 걸쳐 반복적으로 이루어져 왔으며, 현재 관련 법규나 구제절차 등이 미흡하여 제대로 보상을 받기 어렵다.







 

4. 블록체인의 은행 및 공공서비스에의 적용 및 확장


 

비트코인이나 블록체인은 그 자체로 가치가 있으나, 현재 그대로 은행 등 공공기관에 적용하여 사용하기에는 무리가 있다.

 

은행거래에서는 익명성을 사용할 수 없으며, 거래가 비가역적이라는 부분도 치명적이다. 모든 계좌는 계좌주의 신원을 밝히도록 되어 있으며, 따라서 은행에서는 대포통장을 발급하는 부분 등도 문제가 된다. 이러한 익명성 문제를 해결해야 할 것이다. 또한 이체사고 발생 시 강제로 이체를 동결하거나 또는 법정인도명령 등에 따르기 위해 강제인도 등을 해야할 경우가 생기는데, 이체의 비가역성(irreversibility)은 치명적 결함이 된다.

 

이체내역과 계좌의 투명성도 문제가 된다. 이러한 부분은 개인정보에 해당하는 것으로, 은행에서 독자적으로 관리해야하는 정보이다. 특히 여러 은행이 공동으로 네트워크를 형성하여 컨소시엄체인 등을 운용하는 경우, 각 은행의 이체내역을 서로에게 공개하는 것은 영업기밀을 누설하는 것이나 마찬가지일 것이다. 이러한 문제들은 MPC(multi-party computation)기술이나, 동일한 체인 내에서도 다른 권한으로 다른 정보를 조회할 수 있는 기능구현 등을 통해 해결해야 할 것이다.

 

화폐발행 여부도 문제가 될 수 있다. 블록체인에서 반드시 매번 화폐가 발행될 필요는 없다. 따라서 화폐발행이 아닌, 유가재산 등록의 개념으로 블록체인을 변환할 수 있다.

 

채굴자들이 해시경쟁을 벌이는 현행 POW방식의 거래확정 방식도 의미가 없어진다. 다량의 전기를 소비하는 방식이 아니라 더 효율적이고 의미있는 다른 작업증명 방식을 찾아야 할 것이다. (일반적으로 알려진 POS방식이 대체할 수 있을 것으로도 보이지 않기 때문에 제 3의 최적화된 방식이 필요하다)

 

접속권한 문제도 고려해야 한다. 현재 비트코인은 퍼블릭 블록체인으로, 누구든지 네트워크 망에 접속하여 이체를 발생시키고 확정할 수 있는데 이는 기관의 입장에서 치명적인 결함이다. 정해진 참여자에게만 개인키를 발급하거나 단계적 접속권한의 설정 등을 통해 참여자의 선택적 진입과 권한수준 설정을 위한 모델을 설계해야할 것이다. (Public vs Private/Consortium/Permissioned Chain)

 

높은 처리속도처리량이 매우 중요하다. 현재 금융권에서는 초 당 수천번이 넘는 이체를 처리하는 경우가 허다한데, 이러한 거래량과 속도를 비트코인 블록체인에서 처리하는 것은 불가능하다. 이에 대한 대안으로 '텐더민트(Tendermint)' 등에서 차용하고 있는 'lightning network'나 'sharding' 등의 기법을 고민해볼 수 있다.

 

은행이나 기관에서 내부적으로 사용하는 체인이라면 굳이 블록체인일 필요도 없다. 블록체인 원장기술의 핵심은 결국 해시의 연결이다. 각 데이터를 블록으로 묶는 것이 아니라 단일한 대상으로 삼아 해시값을 부여하고 ‘해시체인(hash chain)’ 형식으로 이용하는 것도 가능할 것이다.

 

위와 같은 요소들을 필요에 맞게 적절히 조합하고 최적화시킬 때 비로소 은행과 기관을 위한 전용체인도입이 가능해질 것이다.

 

논의특성 - 익명성, 비가역성, 투명성, 화폐발행여부, 해시경쟁 작업증명 방식, 접속자 및 권한수준 제한, 대용량신속처리(high throughput), 블록의 존재








 

5. 블록체인의 함의

 

이전까지 디지털 정보는 모두 복사되어질 수 있는 것으로 여겨져왔다. 그러나 블록체인의 등장으로 실제 복제가 불가능한 디지털 자산이 존재할 수 있게 되었다.

 

다음은 본인이 종종 인용하는 구글회장 에릭슈미츠(Eric Schmidt)의 이다.

 

“비트코인은 놀라운 암호학적 성취이다. 디지털 세계에서 무언가 복제불가능한 것을 만들어낼 수 있다는 것은 엄청난 것이다. 수 많은 비지니스가 파생될 것이다.”

 

“Bitcoin is a remarkable crypto-graphic achievement and the ability to create something which is not ‘duplicable’ in the digital world has enormous value. It’s very hard to do and it’s incredibly useful for many many computer applications. The Bitcoin architecture, literally the ability to having these ledgers that can’t be replicated is an amazing advancement. A lot of businesses will be built on top of that.” (2014-03-16)

 

블록체인은 기본적으로 데이터를 기록하고 운영하는 방식을 정의한다. 미리 정의된 합의구조를 통해 참여자 모두가 데이터의 기록과 관리에 참여한다. 이곳에 비트코인의 숫자를 기록하든, 재산의 소유권을 기록하든, 계약의 내용을 기록하든, 컴퓨터의 코드를 기록하든 개인의 견해나 투표 또는 각자의 생체정보를 기록하든, 아니면 다른 무언가를 기록하든 자유이다.

 

사실상 모든 자산의 소유권은 등기를 통해 이전(transfer)되고 증명된다. 화폐, 부동산, 토지, 주식, 유가증권, 심지어 보석이나 노트북 등 가격이 있는 것이라면 무엇이든 등기를 통해 소유권을 확정할 수 있다. 점유만으로 소유권을 증명할 수 있는 경우는 극히 드물다. 결국 세상의 가치는 ‘원장기록’을 통해 이동하게 되는 셈이다. 이러한 ‘원장’을 제3자 없이 운용할 수 있게 된다면 또는 이러한 ‘원장’을 보다 안전하고 응용가능한 방식으로 운영하게 된다면 엄청난 변화가 일어날 것이다.

 

2년 전인 2014년 4월 경에 한국에서 최초의 비트코인 포럼이 있었는데, 여기에서 발표를 위해 준비한 원고의 내용이 남아있다. “실제로 주목해야할 것은 비트코인 자체가 아니라 블록체인 기술로, 이러한 블록체인은 단순한 화폐관련 기록을 넘어 각종 자산의 관리 데이터의 관리로 이동할 것이며, 우스운 얘기일 수 있지만 은행에서도 블록체인을 도입할 것이다. 또한 더 나아가서, 국가단위의 화폐도 블록체인을 통해 발행되거나 관리될 수 있을 것”이라는 내용이었다.

 

또한 2년 전 첫 블록체인 2.0관련 모임에서 블록체인은 국가간 무역결제에서 혁신을 가져올 것이고, 회사의 ERP도 클라우드 블록체인 방식으로 구현될 수 있을 것이라는 전망을 하였는데,

 

놀랍게도 얼마 뒤에 컬러드 코인이라는 개념으로 코인이 제작되었고, 1년 뒤에는 더욱 확장된 개념인 이더리움이 개발되었으며 2년 뒤인 현재는 은행들이 앞다투어 블록체인 도입을 논의하고 있다. 또한 무역결제도 아직은 갈길이 멀지만 리플을 포함한 몇 개의 프로젝트가 시장을 시도하고 있다.

 

개인적으로 현재는 앞으로 모든 상용 ERP에 블록체인 또는 해시체인의 개념이 도입될 것이라 생각한다. 또한 진정한 스마트계약(Smart Contract) 개념의 실현을 위해 각 분야의 전문언어컴퓨터 실행코드가 결합한 블록체인 친화적인 ‘Ontology Language’가 보편화 될 것이라고 생각한다. 스마트계약을 위한 Ontology의 예로는 OMG사의 ‘FIBO’ 등이 있는데, 무역결제의 경우 ‘신용장언어’, 무역거래의 경우 ‘인코텀즈(Incoterms)’ 등의 훌륭한 언어들이 이미 개발되어 있다. 앞으로 단순한 범용 블록체인뿐 아니라 각 분야의 전문적인 블록체인들이 해당 분야를 혁신해나갈 것으로 기대한다.

 

새로운 것에 대해 항상 물어야 할 질문은 ‘과연 이것이 세상을 더 나은 공간으로 만드는가?’인데, 블록체인은 이러한 질문에 언제나 만족스러운 답을 준다.

 

 

 

 

 

 

 

2

어른아이님의 서명

감사합니다^^

개인블로그

https://brunch.co.kr/@ashhan

이더리움코리아

www.ethereumkorea.org

 

이메일

 

ashhan8904@gmail.com

 

 

 

댓글 13
  • 반감기 이슈는, 이번 반감기에 이미 비트코인 총발행액의 87.5%가 발했되어서 발행될만큼 다 되었기 때문에 앞으로 반감기로 인한 희소성보다는 보안성 이슈가 검토될 것 같습니다.

  • 잘 정리해 주셨네요. ^^
    쉽게 요약해보면 블록을 생성하고 유지하기 위해 택한 방법이 채굴이며 비트코인은 그중 작업증명(PoW)이란 방법을 씁니다. 답을 맞춘 채굴자에게 보상으로 비트코인을 획득하게 됩니다. 블럭 발생은 10분으로 설정되어 있으며 채굴기가 늘어서 더 빨리 발견되는 경우를 막기 위해 채굴 난이도를 증가시키는 방법으로 블럭 시간을 맞추려고하게 됩니다.
  • 좋은 글 감사합니다. 비트코인이 데이터 덩어리라고 잘못생각했는데... 결국은 사람들에게 지갑이라는 거래 원장을 하나씩 나누어주고 서로의 거래 내역에 따라 변하는 원장 내용을 위조없이 자동으로 변경시켜주는 시스템이라고 생각해도 되는 것인가요?
    쉽게 써주시려 노력하신 것은 감사한데 ㅎㅎ 여전히 이해는 힘들구요^^
  • @코람데오

    훌륭히 잘이해해주신것같습니다
    네 그냥 두루뭉술한 설명보다는 원리자체를 전달하고자했는데 이게 생소한개념이라 한번봐서 알기는 거의어렵거든요. 두어번보시면 더나을것같습니다 ㅎ

  • https://search.naver.com/search.naver?where=site&sm=tab_jum&ie=utf8&query=%EC%9D%B4%EB%8D%94%EB%A6%AC%EC%9B%80 네이버 검색하면 사이트에서 제일 위에 뜨네요 ^^
  • ?
    좋은글 잘 읽었습니다^^
  • ?
    좋은글 잘 보았습니다. 감사합니다 ^^

    웹어스님 링크따라가보니...

    이더리아...ㄷㄷㄷ

    이런 회사가 국내에도 있군요 ㅋㅋ
  • 좋은글 감사합니다.
  • ?
    좋은 글 감사합니다. 비트코인에 대한 배경지식 없이 이더를 접해서 부족한 부분이 많았는데 덕분에 대략적으로 이해할 수 있었습니다^^
  • ?

    구글회장 에릭슈미츠(Eric Schmidt)의 말 중 '복제가 불가능한' 이란 표현은 '이중 지출이 불가능한 것', 즉 '기록된 것을 바꿀 수 없는' 상황을 이야기하는 것으로 보입니다.
    사실 블럭체인은 '복제가 불가능'한 것이 아니라 기록된 것을 바꿀 수 없는 것이 특징입니다.
    비트코인은 블럭체인을 모든 노드가 복제해서 서로 싱크를 맞추어서 사용하고 있고요..

    아마도 정확한 블럭체인의 특징은 사토시의 논문에서 '기록을 바꿀 수 없는 (사토시의 표현은 non-reversible)'이라고 표현하는 것이 보다 정확한 표현일 것입니다.

  • @loum
    같은말같습니다. 비가역성과 해시값부여를 통해 복제(=이중지불)를 할수없게 만든것이고 그것이 곧 데이터자산화를 가능하게만든셈이죠.
  • ?
    @어른아이

    뭐.. 기준점을 어떻게 보느냐에 따라서 비슷해보이기도 하는 것은 사실입니다.
    하지만, 학문에서 용어의 사용이 매우 중요한데..

     

    '블럭체인'에서 '복제 불가능'이라는 표현은 일반인이 보기에는 '블럭체인의 복제가 불가능'하다고 생각할 여지를 남기는 그렇게 좋지 않은 의미를 내표합니다.

    즉, '블럭체인'을 얘기하면서.. '복제 불가능'이라고 얘기하면 블럭체인이 복제 불가능하다, 즉 일반인은 '블럭체인은 복사가 아니되는 구나'라고 오해할 수 있겠죠.. 실제 의미하는 것은 '내용을 바꿀 수 없다'인데요.. 

     

    따라서 '블럭체인'을 이야기하면 '복제 불가능'이라면 문제가 발생하고요..

    이와 달리 만일 '가상코인'을 이야기 하면서 '복제 불가능'이라고 하면 이는 의미적으로 옳은 의미를 일정부분 포함하고 있습니다.

     

    자세히 다시 보니, 구글회장이 '복제 불가능'이라고 이야기 하면서.. 비트코인을 주어로 사용해서 '가상코인'을 의미하는 것으로 이야기한 것으로 볼 수도 있겠네요..

    저는 주어가 '블럭체인'이라고 생각했습니다.

     

    그렇더라도.. 구글회장이 '복제 불가능'이라는 단어선택에는 좀 아쉬움이 남는군요.. 핵심을 조금 빗나간 느낌입니다.

  • ?
    글 잘 보고 갑니다...
default debug random = 0 / type = READ / detected = READ

List of Articles
번호 제목 추천 수 조회 수 글쓴이 날짜
5292 폴로닉스접속시 보안 인증서에 문제가 있습니다라고 뜹니다 ▲ 익스플로러로 접속시   ▲크롬으로 접속시   이렇게 뜨는데요 재부팅해봐도안되고 https로 해봐도안되고 v3바이러스검사해봐도 안되는데요... 어떻게해야될까요 어제까지만해도됫는데 갑자기이러니 혼란스럽네요.. ... 4 file 0 1119
이더야이더야
2016.10.14
5291 nxt 질문 드립니다 제가 nxt 비트렉스에 8월쯤사서 보관중인데요 ardor 받을려면 어떡해하죠 죄송해요 초보라~ 비트렉스에서는 안되는거 같은데 폴로닉스로 보내면 ardor 받을수있나요? 9 0 1489
광땡
2016.10.13
5290 이더리움 Parity 1.3.7 Update 패러티 메모리 사용이 너무 늘어나지 않도록 조정된 버전입니다. 메모리 사용량이 대폭 줄어들었다고 합니다.   https://github.com/ethcore/parity/releases   geth 도 1.4.17 이 최신 버전입니다. https://github.c... 1 1 1430
atomrigs
2016.10.13
5289 zcash 인포그래픽스   ZCASH EXPLAINED Sep 29, 2016 # ZERO KNOWLEDGE PROOFS Zero knowledge proofs –more specifically “zero-knowledge arguments of knowledge”– are a scientific breakthrough in the field of cryptography: they... 12 file 8 2811
atomrigs
2016.10.13
5288 이더리움 데브콘2 전체 슬라이드 모음 데브콘 비디오가 올라올 때 마다 주요한 것 하나씩 포스팅할 예정인데, 성격 급하신 분은 다른 세션 슬라이드를 먼저 보고 싶어하시는 분들도 있을 것 같습니다. 마침 오늘 전체 슬라이드 자료가 올라 왔군요. 사실 ... 2 7 1489
atomrigs
2016.10.13
5287 이더리움 devcon2 이더리움이란 by 비탈릭 이더리움 devcon 2 비디오와 슬라이드 연재시리즈입니다.   비탈릭이 이더리움에 대해 간략히 정리한 비디오와 슬라이드입니다.     Ethereum_in_25_Minutes.pdf                                                   ... 2 file 7 1925
atomrigs
2016.10.13
5286 POT, 대마초코인이 왠일이래요? 거래량 1만개를 돌파해 버리다니,... 무슨 이슈가 있는것  같은데 혹시 아시는분 계시나요?   재작년에 좀 보유하고 있었는데,..   10 2 3823
꿀맨
2016.10.11
5285 코인원이 달라진 걸까요.. 큰 금액은 아니지만 10이더 정도가 모이면 코인원으로 송금해서 관리하고 있습니다.   그 동안은 문제 없이 잘 입금 되고 있었는데 마지막 2건은 입금이 안 되고 1:1 문의를 넣어야만 수동 입금 되었습니다.   마지막... 4 0 1890
훼니
2016.10.11
5284 이더리움 devcon2 라이트 클라인트 for Android & iOS 지난달 상하이에서 열린 데브콘2 비디오중 라이트 클라이언트에 대한 발표 비디오입니다. 앞으로 주요 비디오를 계속 업로드 하겠습니다. https://vimeo.com/186241386   devcon2: Status, a Ethereum light client f... 3 4 1494
atomrigs
2016.10.11
5283 입금확인방법 제가 마이이더월렛으로 이더리움과 이더클래식을 코인원으로 보냈는데 이더리움은  이더월렛에  TXID가 있어서 보낼수있어서 입금확인을 받을 수 있었는데 이더 클래식은 TXID를 찿을수가 업네요  다오를 환불받은 이... 4 0 2226
바람이전하는말
2016.10.10
5282 [Coinone] 칼날 위에 선 세계 경제, 비트코인이 대체 투자처로 떠오른다   10월 2주차 칼날 위에 선 세계 경제, 비트코인이 대체 투자처로 떠오른다   지난 5일 국제통화기금(IMF)이 "세계 각국의 부채가 사상 최고 수준에 도달했다"며 글로벌 재정 안정성에 대해 강력하게 경고했습니다. ... 1 file 4 1766
Coinone
2016.10.10
5281 이더 가격이 많이 떨어졌네요ㅠㅠ 금요일부터 쉬다가 오늘 보니까 이더가격은 훅 떨어져 있고, 코인원 채팅을 보니 하드포크 이야기가 돌고 있더군요?? 몇일 사이 이더에 큰 이슈가 있었나요??? 2 0 1954
dcau
2016.10.09
5280 폴로닉스에 코인거래 정지. 폴로닉스에 몇몇코인이 거래정지로 Temporary disabled 되어있는데 일시적인건지 처음 확인되는거라서 모르겠네요. 좀 있다가 다시 거래가 가능한건가요? 3 0 2176
Showsttoper
2016.10.09
5279 이더리움 parity 1.3.5 업데이트 패러티도 1.3.5 업데이트 되었습니다. 당분간 DoS 공격이 지속되는 동안 업데이트가 더 이루어질지도 모르겠습니다.   https://github.com/ethcore/parity/releases 9 2 1943
atomrigs
2016.10.08
5278 미스트지갑 접속이 안됩니다. 안녕하세요.     제가 미스트 지갑에 접속을 하려고하는데요. 잘안되서  ..     새로 노트북을 한대 구입해서   8.4버젼설치해서 실행했는데요   끊임없이   LOOKING FOR PEERS..............   이런 메세지만 뜨네요... 5 0 1240
나빌래라
2016.10.08
5277 폴로닉스에서 시아코인 입출금 임시 정지 채굴된 코인을 폴로닉스로 보내고 있었는데 오늘보니 Temporary disabled 되어있네요. 혹시 이유 아시는분 계신가요? 1 0 1717
마빡-_-
2016.10.08
5276 코인원에 송금 마이이더월렛에서  환불받은  이더와  etc를  코인원으로 보냈는데  12시간이 지났는데도 도착이 안되는데 요즘 이렇게 늦는게 정상인가요 아님 저만 그러는건가요???? 4 0 1648
바람이전하는말
2016.10.07
5275 이더리움 geth 1.4.16 업데이트 이더리움 geth 노드가 1.4.16 으로 업데이트 되었습니다. 최근 계속 되고 있는 DOS 공격에 대응한 업데이트 입니다.   https://github.com/ethereum/go-ethereum/releases   Dear Diary (v1.4.16)  fjl released this... 28 file 3 2478
atomrigs
2016.10.07
5274 블록체인 2.0 표시 버그 제보 @쌍둥아빠 @쌍둥아빠 님 안녕하세요. 버그 제보합니다. 오늘 '블록체인 2.0'으로 이름 바뀐거 확인했는데요. 일부 표시되는 부분에서 아직 '비트코인 2.0'으로 보이는 곳이 있습니다. 제가 발견한 곳은 세군데입니다.   1. 메뉴... 2 file 2 1397
1BTC
2016.10.06
5273 한국의 주요 크립토 업체들 빗코인 업체, 블록체인 업체 등으로 쓸까 하다가 가장 포괄적인 이름이 크립토인 거 같아서 이렇게 써 봅니다.   한국에서 크립토 관련 일을 취미나 흥미아 아니라 본격적인 주 업무로 하는 회사들은 제가 알기로 아... 5 0 2066
sunyi233
2016.10.05
목록
Board Pagination Prev 1 ... 855 856 857 858 859 860 861 862 863 864 ... 1124 Next
/ 1124
default debug random = 0 / type = READ / detected = READ