본문 바로가기
최신 IT 신기술 전문지식 창고

[2편] 블록체인(Blockchain) 주요 구성요소 및 유형 전격 분석

by comkevin 2023. 11. 25.

목 차

  1. 블록체인의 동작방식
  2. 블록체인의 배경 이론 및 주요 구성요소
  3. 블록체인의 동의 및 합의 알고리즘
  4. 블록체인의 유형 분석

 

1. 블록체의 동작방식 (송금하는 과정)

A가 B에게 송금을 하게 되면 해당 거래 정보가 담긴 블록(Block)이 생성이 되며, P2P 네트워크 내 모든 참여자들에게 해당 블록을 전송하게 됩니다. 이에 모든 참여자가 해당거래의 타당성을 검증을 통해 최종 승인이 되면 기존 블록체인(Blockchain)에 해당 블록을 연결이 되면 실제 송금이 완료됩니다. 이때 블록체인에 연결된 해당 블록의 거래기록 정보는 수정이 불가능한 상태로 바뀌게 됩니다.

 

단계 설명
1. 거래 초기화 사용자는 디지털 지불 요청을 생성하여 거래를 초기화합니다.
2. 거래 검증 네트워크는 합의 메커니즘을 통해 거래의 합법성을 검증합니다.
3. 블록 생성 유효한 거래는 마이너나 검증자에 의해 블록으로 그룹화됩니다.
4. 채굴/검증
(Mining)
작업 증명(PoW)에서는 마이너가 블록을 유효화하고 추가하기 위해 복잡한 퍼즐을 해결하기 위해 경쟁합니다. 지분 증명(PoS)에서는 스테이크(Stake)에 기반하여 검증자가 선택됩니다.
5. 블록체인에 추가 유효화된 블록이 블록체인(Blockchain)에 추가됩니다.
6. 브로드캐스트 및 확인 업데이트된 블록체인이 확인을 위해 모든 노드에게 브로드캐스트(Broadcast)됩니다.
7. 최종 거래가 최종으로 간주되며 수취인은 자금에 접근할 수 있습니다.

 

2. 블록체인의 배경 이론 및 주요 구성요소

분산 원장 기술인 블록체인은 기능을 보장하기 위해서 함께 작동하는 블록(Block), 트랜잭션(Transaction) 등과 같은 주요 구성요소로 구성됩니다. 블록체인의 주요 구성 요소를 살펴보면 다음 아래와 같습니다.

2.1 블록체인의 수학적 이론

블록체인은 이중지불 방지를 위해서 신규 정보가 발생 시에 P2P 네트워크상의 모든 참여자가 원장을 수정하는 <비잔틴 장군 문제> 알고리즘과 악의적인 공격(분산 서비스 거부, DDos) 및 원장 조작 방지 알고리즘 등의 수학적 이론에 근거하고 있습니다.

2.2 비잔틴 장군 문제 (Byzantine General's Problem)에 대한 해법 제시한 비트코인 블록체인

<비잔틴 장군의 문제>는 분산 컴퓨팅 및 합의 알고리즘의 고전적인 문제입니다. 이는 1982년에 출판된 "비잔틴 장군 문제"라는 제목의 논문에서 Leslie Lamport, Robert Shostak 및 Marshall Pease에 의해 소개되었습니다.

 

문제는 적 도시 주변에 진을 치고 공격이나 후퇴를 조정해야 하는 비잔틴 장군 그룹의 맥락에서 구성됩니다. 문제는 일부 장군이 반역자가 될 수 있다는 것이며, 충성스러운 장군은 반역자의 잠재적 존재에도 불구하고 공격할지 후퇴할지에 대해 합의에 도달해야 한다는 것입니다. 인터넷에서도 서로 신뢰할 수 없는 개인들이 있습니다. 개인들이 거래를 하기 위해서는 지금까지는 신뢰할 수 있는 제3 자(정부, 금융기관, 은행 등)가 직접 개인 간의 거래(Peer to Peer, P2P) 장부를 저장하고 검증하며 보증해 주었습니다.

 

비잔틴 장군의 문제(Bizantine General Problem) 개념도
비잔틴 장군의 문제(Bizantine General Problem) 개념도

 

비트코인(Bit coin) 블록체인은 <비잔틴 장군 문제>에 대한 해법을 제시합니다. 비트코인 블록체인 시스템에서 각 노드는 모두 비잔틴 장군들입니다. 각 노드들은 서로 전달받은 정보가 진실인지 가짜인지 확인하는 방법이 필요합니다. 비트코인 블록체인은 제삼자 개입 없이도 거짓 정보(장군들 간의 메시지 왜곡)로부터 진실된 정보를 개인(장군들)들이 파악하기 위해서 작업증명(POW) 방식을 해법으로 제시하였습니다.

 

블록체인에서 작업증명(POW) 방식은 이처럼 문제 풀기가 간단하지 않습니다. 비트코인에서 작업 증명은 수학적 문제를 푸는 방식인데 현재는 이 수학 문제의 난이도가 기하급수적으로 상승해서 가장 빨리 답을 찾기(Nonce 찾기) 위해서는 엄청난 전기, 하드웨어, 인력 등이 필요하게 되었습니다. 흔히 중국에서 채굴업자(마이너)가 많은 이유도 값싼 전기료, 엄청난 인력, 대용량 하드웨어 물량 등을 보유하고 있기 때문입니다.

2.3 블록체인의 주요 구성요소

블록체인(Blockchain)의 블록 구성 요소 및 머클트리 개념도
블록체인(Blockchain)의 블록 구성 요소 및 머클트리 개념도

 

블록체인의 주요 구성요소에는 블록(Block), 난스(Nonce), 타임스탬프(Timestamp), 머클트리 루트(Merkle Tree Root) 등이 있으며, 블록을 이루는 개별 거래들은 해시(Hash) 값으로 알려진 보안코드를 생성하는 프로그램을 통해 결합됩니다. 해시값은 머클트리(Merkle Tree)로 불리는 체계(System) 속에서 추가로 결합됩니다.

 

주요 구성요소 세부 내용 주요 특징
블록(Block) - 블록헤더: ID, 이전블록 해시값, 타임스탬프, 난스(Nonce)
- 블록몸체: 현재 거래 정보(Transaction)
해시, 투명성, 헤더(Header)와 몸체(Body)의 이중구로되 되어 있음
난스(Nonce) - 거래정보 데이터를 해시하기 전에 더해지는 32 bit
- 난수값
임시값
타임스탬프(Timestamp) - 각 블록의 거래 내역 시간 기록 거래시간
머클트리 루트(Merkle Tree Root) 블록 내 기록된 다수의 내역거래 정보와 연결된 구조로 지난 거래내역의 저장공간 확보 및 용이한 검색 위해 블록에 저장되는 머클트리의 루트(Root) 부분 저장공간 확보
해시함수(Hash Function) - 블록체인(Blockchain) 내 거래정보 내역의 암호화 함수 SHA-256

 

그 결과 해시값은 이전 블록의 헤더(Header)와 거래시간 기록(Timestamp)에 따라 다시 블록의 헤더로 위치되며, 이렇게 만들어진 헤더는 난스(Nonce)로 불리는 숫자를 조작하는 방식으로 암호화 퍼즐의 해(Solution)를 구합니다. 이렇게 구해진 해(Solution)는 새로운 블록체인 안에 결합됩니다.

 

3. 블록체인의 동의 및 합의 알고리즘

블록체인 동의 및 합의 알고리즘은 노드가 분산 원장의 상태에 어떻게 동의하는지 결정하는 블록체인 네트워크의 중요한 구성 요소입니다. 다양한 합의 알고리즘이 존재하며 각각의 강점과 약점이 있습니다. 다음은 몇 가지 유형입니다.

 

동의 및 합의 알고리즘 알고리즘 설명 장점 및 단점 사례
작업증명(PoW)
(Proof of Work)
채굴자(Miner)들은 복잡한 수학 퍼즐을 해결위해 경쟁하며, 먼저 해결한 사람이 새로운 블록을 추가하고 보상(Reward)을 받는 알고리즘 [장점]: 계산(Computing) 작업을 통한 보안
[단점]: 높은 에너지 소비
비트코인(Bitcoin)
지분증명(PoS)
(Proof of Stake)
검증자들은 보유(Stake)한 암호화폐의 양을 기반으로 새로운 블록을 생성하며 담보로 지분의사를 가지는 알고리즘 [장점]: PoW 비해 에너지 효율적이며 장기 투자를 촉진함
[단점]: "부자가 더 부자되는" 시나리오의 가능성 존재
이더리움 2.0
위임지분증명(DPoS)
(Delegated Proof of Stake)
토큰(Token) 보유자들이 일부 대표를 투표하여 거래를 검증하고 블록을 생성하는 알고리즘 [장점]: 빠른 거래 처리
[단점]: 일부 대표의 제한된 수로 인한 중앙집중화 이슈
EOS, 트론(Tron)
소각증명(PoB)
(Proof of Burn)
참여자들이 암호화폐를 주소로 전송하여 소각하거나 파괴하여 채굴이나 블록 검증 권한을 얻는 알고리즘 [장점]: 참여자들이 네트워크에 대한 헌신을 나타냄
[단점]: 인센티브 조율문제
슬림코인(Slimcoin)
용량증명(PoC)
(Proof of Capacity)
채굴자들이 사용 가능한 하드 드라이브 공간을 활용하여 네트워크에 대한 헌신을 보여주는 알고리즘 [장점]: PoW 비해 에너지 효율적
[단점]: 많은 하드 드라이브 공간 필요
버스트코인(Burstcoin)
권한증명(PoA)
(Proof of Authority)
네트워크 참여자 중에서 인정 받는 권한을 가진 사람들이 거래를 검증하고 새로운 블록을 생성하는 알고리즘 [장점]: 빠르고 효율적
[단점]: 중앙 집중화 이슈
일부 이더리움 네트워크의 클리크 합의
하이브리드 합의
(Hybrid Consensus)
여러 합의 알고리즘의 요소를 결합하여 보안과 확장성을 향상시킨 알고리즘 [장점]: 다양한 알고리즘 접합
[단점]: 설계 및 구현 복잡성
텐더민트(PoW+PoS 조합)

 

4. 블록체인의 유형분석

블록체인 기술이 발전하면서 다양한 요구와 사용 사례를 충족하는 다양한 유형의 블록체인이 개발되었습니다. 블록체인의 주요 유형은 퍼블릭(Public) 블록체인, 프라이빗(Private) 블록체인, 컨소시엄(Consortium) 블록체인 등으로 나눌 수 있습니다.

 

블록체인 유형 개념 설명 사례에 따른 용도
퍼블릭 블록체인
(Public Blockchain)
누구나 다 블록체인 네트워크 및 합의 방식에 참여가 가능한 서비스 사례: 비트코인, 이더리움
용도: 암호화폐, DApp
프라이빗 블록체인
(Private Blockchain)
블록체인 네크워크 참여시 승인을 받아야하며, 사전에 합의 방식에 관여할수 있는 노드가 결정는 ㄷ서비스 사례: 하이퍼레저 패브릭(Hyperledger Fabric), R3 Corda
용도: 기업솔루션, 공급망 관리
컨소시엄 블록체인
(Consortium Blockchain)
프라이빗 블록체인과 유사하나, 개인이 아닌 그룹 단위에서 사전에 허가된 그룹의 사용자만 참여 가능한 서비스 사례: Quorum, B3i
용도: 산업별 협업, 금융 컨소시엄
하이브리드 블록체인
(Hybrid Blockchain)
퍼블릭 및 프라이빗 블록체인의 요소를 결합한 서비스 사례: 드래콘체인, 베이체인
용도: 헬스케어, 신원 확인
블록체인 서비스
(BaaS, Blockchain as a Service)
클라우드 기반의 블록체인 인프라를 제공하는 제3자 서비스 사례: Microsoft Azure Blockchain, IBM Blockchain Platform
용도: 블록체인 기술을 쉽게 채택하려는 비지니스들
사이드 체인
(Sidechains)
거래의 병렬처리가 가능한 메인(부모)체인과 상호 운영 가능한 독립적인 블록체인 서비스 사례: Liquid, Rootstock
용도: 확장성 솔루션, 자산 토근화
토큰화된 블록체인
(Tokenized Blockchains)
블록체인 상의 실제 자산을 나타내는 디지털 자산 서비스 사례: 보안 토큰, 유틸리티 토큰
용도: 토근화된 증권, 크라우드 펀딩, 탈중앙화 금용(DeFi)
스마트 계약 플랫폼
(Smart Contract Platforms)
자체 실행 계약의 생성 및 실행을 허용하는 자동화 서비스 사례: 이더리움, 바이낸스 스마트 체인
용도: 탈중앙화

 

 

다음 포스팅 [3편]에서는 블록체인 실행의 신뢰성 보장을 위한 기술인 스마트 컨트랙트(Smart Contract)에 관해서 알아보는 시간을 갖도록 하겠습니다.