가공데이터 · 도서자료 기계독해

블록체인 기술의 특징과 보안성 및 스마트계약의 기술적·사회적 정의와 개념적 확장 doc_id PCY_201810220547101391_2

주제 (main_topic)
블록체인 기술의 특징과 보안성 및 스마트계약의 기술적·사회적 정의와 개념적 확장
답변 불가 (is_impossible)
False
문맥 (context)
그러한 특징들은 기록된 정보의 위조 또는 변조의 문제를 야기할 가능성을 현저히 낮춘다. 정보의 위 ․ 변조는 디지털 형식의 정보가 갖는 주요 문제였고 중앙집중형 저장방식은 해킹 등의 위험성에 쉽게 노출되거나 중앙 이외에는 정보 관리 내역을 알기 어려운 문제가 있었다. 블록체인은 디지털 정보의 위 ․ 변조 및 해킹 위험성을 낮추었을 뿐만 아니라 정보 관리를 개개인으로 분산함으로 해서 내역의 투명성도 담보한다. 결과적으로 블록체인은 “제3의 신뢰기관(trusted third party, TTP)없이 개인 대 개인(P2P, peer-to-peer) 네트워크 방식에 기반한 분산원장(distribted ledger) 기술”로서, 탈중앙화(decentralization)를 통해 기술적 보안 강화와 사회적 신뢰 향상을 꾀하는 새로운 사회 체계 구현 기술이다(김경훈, 2018). 블록체인의 특징은 분산되고 공개되며 암호화되어 있다는 점이다. 일단 거래가 장부에 기록되어 구성원 모두에게 전파되고 승인을 얻으면 그 기록된 정보는 변경이 불가능하다. 하나의 체인에 기록된 정보를 변경하려고 하면 그 체인과 연결된 그 전 체인의 내용도 변해야 하며 그 전의, 또 그 전의 체인 내용도 마찬가지로 변경되어야 한다. 하나의 체인을 변경하려면 그 전에 일어난 모든 거래 장부를 변경해야 하고 거래에 참여한 모든 이들의 승인을 매번 받아야 하는데 이는 실질적으로 불가능하다. 블록체인에 기록된 정보를 변경하기 위해서는 그 정보가 기록된 컴퓨터의 과반수를 통제할 수 있어야 한다고 하는데, 실질적으로 개별 사람들의 개인 컴퓨터를 통제할 권한이 누구에게도 없기 때문에 사실상 불가능하다는 것이다. 따라서 블록체인의 거래 장부는 불가역적이며 불가변적이라고 할 수 있다. 또 블록체인은 하나의 기술이면서도 동시에 기록에 대한 공공 보관소의 기능을 한다. 하나의 저장장소에 저장되는 것이 아니라 구성원 모두의 컴퓨터에 해당 거래 내용이 모두 저장되는 형태로 분산형 저장방식이다. 스마트계약은 블록체인의 프로그램 중 하나이다. 블록체인은 투명하고 신뢰받는 사회구현의 핵심기술로 주목되면서 금융뿐만 아니라 공공 서비스 분야에서의 활용성이 기대된다. 인공지능이 4차 산업혁명을 이끄는 핵심 기술이라면 블록체인은 4차 산업혁명으로 도래하는 지능정보사회를 탈중앙화된 P2P 네트워크의 신뢰사회로 자리매김하는 핵심 기술이다. 특히 스마트계약은 블록체인1.0에서 블록체인2.0으로의 기술발전의 상징이다. 블록체인1.0이 암호화폐 거래서비스인 화폐전송, 외환송금, 전자지불 등의 한정된 서비스 영역에서만 활용되었다면, 스마트계약 프로그램을 장착한 블록체인2.0은 크라우드펀딩, 전자투표, 전자지급결제, 공급망관리 등으로 그 활용 범위를 넓히고 있다(김경훈, 2018). 스마트계약에 대해 처음 언급한 이는 스마트계약의 아이디어를 처음 구상하여 공표한 Nick Szabo이다. 1997년에 그는 ‘스스로 이행이 되는 자동화된 약정’으로 정의하였다. 김제완(2017)은 스마트계약을 두 가지 의미로 분류한다. 첫째, 스마트계약은 ‘컴퓨터 코드화된 계약’이다. 즉, 계약조항을 컴퓨터 코드로써 만드는 것이라는 의미이다. 둘째, ‘코드에 의하여 규정되는 당사자 간의 관계’를 의미한다. 여기서 당사자 간의 관계는 그 근저에 있는 전통적인 계약상의 권리 및 의무와 연계되지 않고 오로지 코드에 의하여 정의되고 자동적으로 이행되는 관계를 의미한다. 정경영 ․ 백명훈(2017)은 스마트계약을 협의의 스마트계약과 광의의 스마트계약으로 구분한다. 협의의 스마트계약은 블록체인 기술을 기반으로 계약의 자동실행이 보장된 컴퓨터 프로그램(코드)을 말한다. 협의의 스마트계약은 상대방을 예상하고 있지만 아직 상대방과 의사합치가 이루어진 것은 아니므로 전통적 계약개념과는 구별된다. 상대방이 코드가 요구하는 일정한 조건을 실행한 경우에 비로소 전통적 계약과 유사한 구조가 되며 이를 광의의 스마트계약으로 정의한다. 현재 사회적으로 동의된 스마트계약에 대한 사회적 개념이 정립되었다고 할 수 없지만, 최근 법령에 정의된 사례와 문헌들을 기초로 하여 다음과 같이 정리할 수 있다. 첫째, 스마트계약은 전통적인 계약의 개념과 같은 사회적 개념으로 정립되기에 앞서 기술(프로그램)을 가리키는 명칭이다. 즉, 기술적으로 일정한 조건이 충족되면 별도의 절차 없이 즉시 이행되도록 코드화된 것이다. 물론 모든 스마트계약이 양 급부의 즉시 이행을 전제로 하는 것은 아니며, 일방의 급부만이 즉시 이행되는 경우도 있다. 예를 들어, 펀드 모집계약 또는 IoT를 활용한 스마트계약의 경우에 일방의 급부는 바로 이행되지만 상대방의 급부는 추후에 이행된다. 그러나 스마트계약은 당사자의 이행실행행위가 별도로 필요하지 않는다는 점에서 기존 계약과 차이가 있다. 이러한 점만을 본다면 전통적인 계약이론의 관점에서 이를 스마트 ‘계약’이라고 하기 어려우며, 계약의 ‘즉시 이행’을 실현시키는 ‘기술’이라고 할 수 있다. 블록체인 기반의 스마트계약의 기술적 정의는 간단하다. 2015년 비탈릭 부테린(Vitalic Buterin)이 이더리움(Ethereum) 플랫폼에서 작동하는 형태로 구현한, 즉 블록체인 기술 기반으로 계약의 자동실행을 보장하는 컴퓨터 프로그램(코드)이다(정경영 ․ 백명훈, 2017, p.32). 이러한 명확한 기술적 정의와는 별도로 스마트계약이 사회적으로 활용되면서 사회적, 법적 개념이 확장되고 있으며, 아직 일반적으로 통용되는 사회적 ․ 법적 개념을 획득하지 못하였다. 법적으로 정의된 사례를 살펴보면, 먼저 2014년 「온라인 시장보호법(Online Market protection Act of 2014)」은 스마트계약을 ‘일정하게 예정된 조건이 충족될 경우, 자동 또는 다수당사자의 실행과 거래 ․ 재산이전의 공개된 기록을 허용하는 암호로 입력된 약정으로서 다중-서명기술을 활용한다’고 정의한다(HR 5892 3WH (i)). 또 애리조나주법 44편 26장 제5조 블록체인 기술의 E항 제2호에서 스마트계약은 분산되고 탈중앙화되고 공유된, 그리고 복제된 원장에서 작동하고 그 원장을 보존하고 그 원장상에 자산의 이전을 지시하는 사건에 응하는 프로그램으로 정의하고 있다. 스마트계약 역시 계약의 일종이기 때문에 그 효력이 발생하기 위해서는 기본적으로 성립하여야 한다. 계약의 성립요건으로는 당사자, 의사표시 및 목적이 존재하여야 하며, 그 성립시기는 승낙의 의사표시가 효력을 발생한 시점이다. 또한 계약은 상대방이 있는 법률행위이기 때문에 의사표시 역시 상대방에게 효력이 발생하여야 한다. 민법에서는 상대방이 있는 의사표시의 효력발생시기에 대해 도달주의를 원칙으로 하면서 예외적으로 발신주의를 취하고 있다. 그 대표적인 경우가 바로 격지자 간 계약에 있어서 승낙의 효력발생시점이다(민법 제531조). 즉, 계약은 대화자와 격지자 간 계약으로 구분할 수 있으며, 전자는 승낙의 의사표시가 상대방에게 도달하였을 때 성립한다. 그러나 후자는 승낙의 의사표시가 표의자의 지배영역에서 벗어난 시점, 즉 발송한 시점에 효력을 발생한다. 다만, 발송 그 자체만으로 충족된 것이 아니라 도달하여야 하며, 승낙기간이 정해진 경우와 정해지지 않은 경우로 구분된다. 전자의 경우에 승낙은 승낙기간 내에 도달하여야 하며, 승낙의 부(不)도달을 해제조건으로 하여 승낙의 의사표시를 발하였을 때 계약은 성립한다. 후자의 경우에는 상당한 기간 내에 도달하여야 한다.
지시문 (instruction)
다음 문맥을 읽고 질문에 답하시오.
질문 (question)
블록체인 기술에서 기록된 정보를 변경하는 것이 실질적으로 불가능한 이유는 무엇인가?
추론 과정 (compact_reasoning)
  1. 1과제 해석task_interpretation

    블록체인 내 정보 변경이 불가능한 기술적 원인과 그 이유를 파악해야 한다.

  2. 2정보 추출information_extraction

    정보 변경 시 발생하는 연쇄적 변화와 필요한 조건들을 추출한다.

    • 하나의 체인을 변경하려면 그 전에 일어난 모든 거래 장부를 변경해야 하고 거래에 참여한 모든 이들의 승인을 매번 받아야 하는데 이는 실질적으로 불가능하다.
    • 블록체인에 기록된 정보를 변경하기 위해서는 그 정보가 기록된 컴퓨터의 과반수를 통제할 수 있어야 한다
  3. 3근거 선택evidence_selection

    정보 변경의 불가능성을 뒷받침하는 두 가지 핵심 근거인 '연쇄적 변경 및 승인 문제'와 '컴퓨터 과반수 통제 문제'를 선택한다.

    • 하나의 체인을 변경하려면 그 전에 일어난 모든 거래 장부를 변경해야 하고 거래에 참여한 모든 이들의 승인을 매번 받아야 하는데 이는 실질적으로 불가능하다.
    • 실질적으로 개별 사람들의 개인 컴퓨터를 통제할 권한이 누구에게도 없기 때문에 사실상 불가능하다는 것이다.
  4. 4논리 통합logical_integration

    정보를 변경하려면 이전의 모든 체인 내용을 수정하고 참여자 전원의 승인을 얻어야 하는데 이는 현실적으로 불가능하며, 또한 기록된 컴퓨터의 과반수를 통제해야 하지만 개인 컴퓨터에 대한 통제 권한이 누구에게도 없다는 점을 결합한다.

  5. 5결론 도출conclusion_formulation

    정보 변경을 위해서는 이전의 모든 거래 장부를 변경하고 모든 참여자의 승인을 얻어야 하며, 기록된 컴퓨터의 과반수를 통제해야 하는데 이 두 가지 모두 실질적으로 불가능하다는 결론을 도출한다.

  6. 6답변 생성answer_generation

    도출된 결론을 바탕으로 질문에 대한 답변을 작성한다.

최종 답변 (final_answer)
하나의 체인을 변경하려면 그 이전에 일어난 모든 거래 장부를 변경해야 하고 거래에 참여한 모든 이들의 승인을 매번 받아야 하는데 이는 실질적으로 불가능하다. 또한 정보를 변경하기 위해서는 해당 정보가 기록된 컴퓨터의 과반수를 통제할 수 있어야 하지만, 개별 사람들의 개인 컴퓨터를 통제할 권한이 누구에게도 없기 때문에 사실상 불가능하다.
핵심 해석 (core_interpretation)
블록체인에 기록된 정보를 변경하려면 그 이전에 일어난 모든 거래 장부를 변경하고 모든 이들의 승인을 받아야 하며 정보가 기록된 컴퓨터의 과반수를 통제해야 하지만, 실질적으로 개별 컴퓨터를 통제할 권한이 없어 불가능하다.