본문 바로가기
Technology/Blockchain

6. 작업증명 vs 지분증명 비교 [1]

by 평범한하루하루 2022. 6. 10.
728x90
 

블록체인 기초

  1. 블록체인 동작 방법
  2. 블록체인 기술용어 쉽게 설명 [1]
  3. 블록체인 기술용어 쉽게 설명 [2]
  4. 블록체인 변천사
  5. 블록체인 네트워크 유형
  6. 작업증명 vs 지분증명 비교 [1]
  7. 작업증명 vs 지분증명 비교 [2]
 

암호화폐 마인드맵

마인드맵 작성 배경 현재 저희가 공부하는 개념들을 더 큰 틀에서 정리하고 쉽게 접근하기 위해서 아래와 같이 마인드맵으로 정리했습니다. 새로운 게시글을 작성할 때마다 업데이트된 마인드

rewarding-day.tistory.com


이전 내용 정리

  • 저번에는 간략하게 블록체인 네트워크 유형들을 살펴봤습니다. 이번에는 블록체인의 핵심 검증 방안들을 짚고 넘어가겠습니다. 블록체인에서 기록들을 chain으로 연결하기 위해 검증이 이루어지는 것을 저희가 이전에 다뤘습니다. 이번에는 이 검증이 채굴(mining)이라는 작업이라고 불리는 이유와 대표적인 검증 방안들을 살펴보겠습니다. (조금 기술적인 관점으로 접근했으며, 실제 저희가 거래되는 기록을 확인할 경우 언급되는 키워드들을 중심으로 다뤘습니다.)

 

작업증명(Proof-of-Work, PoW)

  • 먼저 비트코인에서 사용하는 검증방안인 작업증명에 대해서 다뤄보겠습니다. 블록체인이 구성되는 과정에서 block이 생성되고 chain에 연결되기 위해서 검증이 필요합니다. 이때 검증하는 과정을 흔히 채굴(마이닝, mining)이라고 합니다. 비트코인에서 송금 거래 정보가 담긴 block은 네트워크 참여자(채굴자, 마이너, miner)들이 성능 뛰어난 컴퓨터를 통해 만들게 되고, 이러한 과정에 대한 보상(수수료)으로 참여자들에게 코인이 주어집니다. 아래와 같이 채굴(검증)이 진행됩니다. (작업증명은 ****채굴자들에게 합의(컴퓨터 계산)를 맡기고 먼저 도달할수록 블록에 기록할 수 있는 권한이 더 많이 부여됩니다.)
    1. 기록들이 함께 묶임
      • 사용자들은 비트코인을 거래내역의 데이터를 블록으로 모음
    2. 채굴자들은 복잡한 수학 문제를 가장 먼저 해결하기 위해 경쟁
      • 해시라고 하는 계산 작업을 수행했다는 증거를 보여줌
    3. 새 블록을 추가하기 위해 한 명의 채굴자가 선택 됨
      • 가장 먼저 문제를 해결한 채굴자는 수수료를 받음
  1.  

비트코인 마이닝(검증) 프로세스 (출처: Bitpanda)

 

  • 채굴자의 경우 해시함수(hash function, SHA-256)를 이용해서 특정 단어조합을 입력하여 블록해시(blockhash) 결과 값을 도출하는 과정을 거친다. (블록체인에서 해쉬함수(hash function, SHA-256)가 하는 역할은 암호화이며 해시값 비교를 통해서 위변조 여부를 판별, 무결성 검증에 사용합니다.) 아래와 같이 “I love Jesus and pray to him every day.”를 입력해서 “af41d3033c”라는 값을 부여 받는다. 이때 조금이라도 입력되는 정보가 다를 경우 생성되는 결과 값도 바뀌기 때문에 위변조를 쉽게 확인할 수 있다.

해시함수 입력값과 출력값 예시

 

  • 이때 블록해시(block hash)라는 값을 구하는 것이 목표이며, 아래와 같이 단계별로 계산을 진행한다.
    1. 개별 거래내역 입력 → (해시함수) → 해시값 도출
    2. 도출된 해시값들 입력 → (해시함수) → 루트 해시값 도출
    3. 블록헤더(루트 해시값, 이전 블록의 해시값 등) → (해시함수) → 최종 블록해시 값 도출

블록체인의 블록 구성 예시 (출처: Application of block chain in multi-level demand response reliable mechanism, paper)

 

위 그림은 아래처럼 블록이 구성되는 것을 확인할 수 있다.

  • 블록헤더(Block header)
    • 소프트웨어 버전
    • 블록 생선 시간 기록
    • 이전 블록 해시값(이전 블록헤더 해시값)
  • 블록바디(Block body)
    • Business이라는 업무기록에 대한 개별적인 해시값
    • 해시값 묶음에 대한 해시값
    • 루트 해시값(마지막 해시값, 최종값)

 

요약 및 후기

  • 이번에 작업증명에 대해서 간략하게 확인해 봤습니다. 비트코인에서 사용되는 블록체인의 블록 구성과 블록이 연결되는 과정에 대한 컨셉을 살펴보는 시간이였습니다. 다음에는 지분증명에 대해서 알아보겠습니다. (위 내용에서 더 기술적인 측면을 확인하시고 싶다면 nonce, merkle tree 등에 대한 키워드를 확인하시기 바립니다.)

 

 

7. 작업증명 vs 지분증명 비교 [2]

블록체인 기초 블록체인 동작 방법 블록체인 기술용어 쉽게 설명 [1] 블록체인 기술용어 쉽게 설명 [2] 블록체인 변천사 블록체인 네트워크 유형 작업증명 vs 지분증명 비교 [1] 작업증명 vs 지분증

rewarding-day.tistory.com

 

댓글