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

블록체인의 기술적 구성 원리와 다양한 산업 분야에서의 활용 사례 doc_id PCY_201908260556547681_2

주제 (main_topic)
블록체인의 기술적 구성 원리와 다양한 산업 분야에서의 활용 사례
답변 불가 (is_impossible)
False
문맥 (context)
일반적으로 블록은 블록의 메타정보를 수록하는 블록 해시, 블록 헤더, 그리고 거래 내역을 수록하는 블록 보디로 구성된다. 블록 해시는 각 블록을 구분하는 고유의 식별자로 해당 블록 헤더에 포함된 모든 값을 해시 함수의 입력값으로 사용하여 나온 결과값이다. i-블록의 블록 해시값은 i+1블록의 블록 헤더에 포함된다. 이렇게 블록 해시값으로 연결되어 체인 형태를 갖추게 된다. 블록 헤더는 버전, 이전 블록 해시, 머클 해시, 타임스탬프, 난이도 목표, 그리고 넌스(nonce)값으로 구성된다. 버전은 말 그대로 현재 블록체인의 합의 알고리즘(소프트웨어) 버전을 의미한다. 이전 블록 해시는 바로 직전 블록의 식별자(블록 해시) 정보를 의미하며, 머클 해시는 해당 블록에 포함된 모든 거래 내역을 머클 트리의 형태로 구성한 뒤 그 트리의 최상단에 위치하는 해시값을 말한다. 머클 트리는 블록 보디 부분에서 다시 설명한다. 타임스탬프는 해당 블록이 생성된 시각, 난이도 목표는 블록의 생성 시간을 일정하게 유지하기 위한 수치이며 해당 목표를 만족시키는 값이 넌스에 기록된다. 블록의 보디에는 거래 내역이 저장되며, 각 거래 내역은 머클 트리(merkle tree) 형태로 구성된다. 거래 내역들을 이진 트리(binary tree)의 가장 아래에 위치시키고 두 개씩 쌍을 이뤄 해시값을 상위 노드에 기록한다. 이 과정을 반복하여 최상위 노드의 결과값이 머클 해시값으로 기록된다. 머클 해시값으로 단일 블록에 존재하는 모든 거래의 무결성을 검증할 수 있다. 또 이 값이 블록 해시값을 생성하는 데 입력으로 사용되며 그 결과값은 다음 블록에 기록됨으로써 검증이 완료된 거래의 변경이 사실상 불가능하게 되는 것이다. 즉 노드 검증이 완료된 특정 거래 내역을 위변조하려면 그 거래 내역이 포함된 특정 블록부터 그 이후의 모든 블록을 혼자서 수정 및 생성해야 하는데 이는 전 세계의 슈퍼컴퓨터를 계속해서 동원해야 할 만큼 어렵다고 볼 수 있다. 블록체인에서 전자 서명은 일반적으로 공개 키 기반 구조(Public Key Infrastructure)를 바탕으로 네트워크를 통해 전송하려는 정보의 무결성 검증, 서명자의 부인 방지(non-repudiation)를 위한 장치로 사용된다. 전자 서명은 보통 세 단계(비대칭 키 생성, 서명 생성, 서명 검증)로 구성된다. 전자 서명을 하려는 자는 비대칭 키를 미리 발급받아야 한다. 발급 과정에서 공개 키와 비밀 키 세트를 받게 되며, 공개 키는 다른 사람에게 공개되어도 무관하지만 비밀 키는 절대로 외부에 공개되어서는 안된다. 전송할 데이터에 대한 서명이 생성되는 과정은 다음과 같다. 전송할 데이터에 대해 우선 해시 함수를 통해 해시값을 생성한다. 그리고 생성된 해시값을 서명자의 비밀 키로 암호화한다. 이 과정에서 전자 서명(digital signature)이 생성된다. 전송하려는 데이터의 원본과 생성된 전자 서명을 함께 네트워크로 전송한다. 전송받은 전자 서명을 검증하기 위해서 검증 노드는 우선 원본 데이터를 해시 함수에 적용하여 해시값을 얻는다. 또한 전송받은 전자 서명을 서명자의 공개 키로 복호화한다. 계산한 해시값과 복호화된 결과값을 비교하여 두 값이 서로 일치하면 검증에 성공하며 그 외의 경우는 모두 실패하게 된다. 정보의 투명성 제공이라는 블록체인의 특성을 활용하여 공공 및 복지 분야에서 블록체인 기술의 활용이 적극적으로 고려되고 있다. 미국, 스페인, 호주 등의 정치권에서는 블록체인 기반의 전자 투표 방식을 활용하고 있다. 국내의 경우 경기도가 전자 투표에 블록체인 기술을 적용하였다. 우리나라를 비롯하여 미국, 스웨덴, 조지아공화국 등은 부동산 등기와 거래에 블록체인을 적용하는 시범사업을 추진하고 있다. 복지예산 집행의 투명성 제고를 위해 블록체인 도입이 활발히 진행되고 있다. 영국은 노동연금에 블록체인을 결합하는 시스템을 개발하고 있으며 우리나라의 경우 서울시가 청년수당 지급 과정에 블록체인 기술을 적용하고 있다. 유엔 세계식량계획(World Food Programme)에서는 블록체인 기반의 난민 식량 원조를 위한 ‘빌딩블록스(Building Blocks)’ 프로젝트 개발을 완료했다. 이 프로젝트는 이더리움 블록체인 기반의 네트워크에 가족 계좌를 개설해 재정 지원을 받음으로써 보다 효율적이고 투명한 식량 원조를 지원하게 되었다. 뱅크오브아메리카, 씨티그룹, 골드만삭스, SBI홀딩스 등 세계적인 금융기관들은 블록체인을 통한 시스템 구축 및 운영 비용 절감과 효율성 제고를 목표로 자체 폐쇄형 블록체인의 개발 또는 금융 연합체 참여로 생태계 구축과 서비스 개발에 적극적으로 나서고 있다. R3CEV(Crypto, Exchanges and Venture practice)는 금융서비스와 관련된 블록체인 기술을 개발하기 위해 2015년 9월 9개의 금융기관과 컨소시엄을 결성했으며 최근 43개의 금융회사, 청산소, 거래소, 기술업체 등 80개 이상이 가입하였다. 2016년에는 국내 은행인 국민은행, 신한은행, 하나은행, 우리은행, 기업은행이 가입했다. R3CEV에서는 블록체인 기반의 송금‧결제, 계약 체결, 자금세탁 방지 등 다양한 프로젝트가 진행되고 있다(백웅조, 2017). 국내의 경우 공인인증서를 대체하기 위한 기술로 블록체인이 적극 검토되고 있다. 금융과 더불어 블록체인 기술이 가장 적극적으로 적용될 분야로 무역· 물류·유통 분야를 꼽을 수 있다. 정부, 기업 등 다양한 이해 당사자가 관여해야 하는 이러한 분야에 블록체인 기술은 매우 효율적으로 활용될 수 있다. 복잡한 계약 단계를 블록체인의 스마트컨트랙트로 간소화하고 계약서의 위변조 가능성을 원천 차단할 수 있기 때문이다. 월마트, 네슬레, 돌 등 주요 기업들이 IBM과의 협력으로 물류·유통에 블록체인을 도입하는 작업을 시작하여 개념 증명(PoC: Proof-of-Concept)을 완료하였다. 국내의 경우 관세청에서 민관 합동 해운물류 블록체인 컨소시엄 시범사업을 통하여 수출통관 업무에 블록체인을 적용하는 개념 증명 단계를 통과하였으며, 올해 블록체인 기반 기술을 수출 통관, 물류 서비스에 시범 적용할 계획이다. 또한 농식품에 대한 생산 및 유통 이력 추적을 위한 블록체인 기술 접목도 시도되고 있다. 보건의료 분야에서는 정밀의료와 맞춤형 의료가 확대됨에 따라 수면, 운동, 영양과 관련한 정보뿐만 아니라 유전체정보, 혈액, 혈압, 신체검사 등에 많은 양의 정보 처리가 필요하고, 기관별로 분산되어 있는 데이터의 상호 운용과 접근성 및 기록의 보관‧교환 등에 드는 비용의 문제 등이 블록체인 기술을 도입함으로써 많은 부분 해결될 수 있을 것이다(박순영, 2018). 개인의 건강 및 의료기록 관리에 블록체인 기술을 적용하여, 효율적으로 의료 정보를 관리하도록 하는 프로젝트가 추진되고 있다. IBM 왓슨(Watson) 헬스는 미국 질병관리예방센터와 협력하여 기존에 병원이 보유한 진료 정보를 블록체인 네트워크에 저장하고 관리하는 기술을 개발하고 있으며 에스토니아 정부는 국민의 의료기록을 블록체인에서 관리할 수 있도록 시스템을 구축하고 있다. 구글 딥마인드(DeepMind) 헬스는 영국 국가보건서비스와 함께 환자가 자신의 의료기록을 실시간으로 확인할 수 있는 블록체인 기술을 개발하고 있다. 국내의 경우 메디블록, 써트온, 포씨게이트 등의 업체가 의료기록 관리를 위한 블록체인 기술을 개발하고 있다.
지시문 (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)
1. 원본 데이터를 해시 함수에 적용하여 해시값을 얻는 작업 2. 전송받은 전자 서명을 서명자의 공개 키로 복호화하는 작업
핵심 해석 (core_interpretation)
전자 서명 검증 단계에서 검증 노드가 수행하는 구체적인 절차를 문맥에서 찾아 원본 데이터의 해시값 생성과 전자 서명의 복호화라는 두 가지 핵심 동작으로 정리한다.