2. 블록체인과 이중지불
(이중지불 문제)
□ 전자화폐와 같이 특정한 자산이 지급수단으로 활용되는 디지털통화 시스템에서는 악의적인 참가자의 원장 조작 가능성이 이중지불(Double spending)문제의 형태로 나타나게 됨
― 이중지불은 특정 참가자가 자신이 보유한 금액을 정상적인 거래에 사용한 뒤 해당 거래가 제외된 원장을 다시 배포하여 결제를 취소시키고 해당 금액을 다른 거래에 재사용하는 조작을 의미
ㅇ 현금은 실물이 직접 이전되기 때문에 이중지불이 문제되지 않으며 인터넷뱅킹, 전자화폐 등에서는 제3의 기관(TTP)이 이중지불을 방지
― 이중지불 이외의 다른 조작 시도는 공개키 암호 방식 등 기존 기술을 통해 방지 가능
□ 비트코인(Bitcoin)의 경우 (1) 블록체인(Blockchain)을 도입하고 (2) 작업증명(Proof of Work)과 (3) 인센티브(Incentive)의 정교한 설계 등을 통해 이중지불 문제에 대한 해결방안을 최초로 제시하였음
① 블록체인이라는 명칭은 일정 시간(비트코인의 경우 10분)마다 새로운 거래내역을 담은 신규 블록(block)이 형성되어 기존 블록에 계속 연결(chain)되는 데이터구조의 특성에 기인
― 새로 형성된 블록 내 거래정보는 직전 블록의 해시(Hash)값을 포함하고 있으며 직전 블록은 다시 그 이전 블록의 해시값을 포함
― 거래원장 갱신을 위한 합의 절차로서 모든 참가자가 항상 가장 많은 블록이 연결된 블록체인을 채택하도록 설계(Longest Chain Rule)
⇨ 특정 블록에 담긴 거래내역을 조작하여 모든 참가자에게 배포하기 위해서는 그 이후 연결된 모든 블록을 새롭게 형성할 필요