I. 블록체인 합의 알고리즘의 개요
가. 블록체인 합의 알고리즘 (Blockchain Consensus Algorithm)의 개념
- 블록체인 네트워크 상에서 데이터(블록)의 무결성 검증 및 생성을 위한 노드 간 미리 정의된 절차 기반 의사결정 알고리즘
나. 분산 네트워크에서 신뢰성 문제점에 따른 합의 알고리즘의 필요성
분산 네트워크에서의 신뢰성 문제점 | 합의 알고리즘의 필요성 |
---|---|
문제점1. Double Spending
| 단일 입력값에 대하여 분산된 각 시스템이 동일한 결과 값을 결정해야 함 |
문제점2. Byzantine General Problem
| 분산 시스템상에 악의적 노드가 참여하여도 전체 시스템의 신뢰도를 제공하여야 함 |
II. 블록체인 합의 알고리즘의 유형
가. 공개 블록체인(Public Blockchain) 합의 알고리즘의 유형
합의 알고리즘 | 알고리즘 설명 | 대표 플랫폼 |
---|---|---|
PoW (Proof of Work) | – 마이닝 증명으로 블록생성, 보상 – 컴퓨팅 파워기반 해시값 계산 경쟁 | – 비트코인(Bitcoin) – 이더리움(Ethereum) |
PoS (Proof of Stake) | – 지분 크기와 생성 날짜 기반 블록 생성 – PoW에너지낭비, Nothing at Stake 해결 | – 퀀텀(Qtum) – 네오(NEO) – 스트라티스(Stratis) |
DPoS (Delegated PoS) | – 대표 노드에 검증 역할 위임 – 다른 검증 노드가 대표 노드를 감시 | – 이오스(EOS) |
PoI (Proof of Importance) | – 네트워크 참여도에 따른 보상 지급 – 블록체인에 기여한 노드 보상 | – 넴(NEM) |
Casfer | – 예치금을 걸고 Finality 투표 참여 – 악의적 행동 시 예치금 몰수 | – 이더리움(Ethereum) (이더리움 하드포크 예정) |
나. 사설 블록체인(Private Blockchain) 합의 알고리즘의 유형
합의 알고리즘 | 알고리즘 설명 | 대표 플랫폼 |
---|---|---|
PBFT (Practical Byzantine Fault Tolerance) | – 참여노드의 다수결 투표기반 합의 – Request → Pre-Prepare → Prepare → Commit → Reply | – 하이퍼레저(Hyperledger) – R3 코다(R3 Corda) |
Sieve | – 합의 형성 전 결과가 가른 경우 중지 – 실행 결과 조기 탐지 | – 하이퍼레저(Hyperledger) (프로젝트에서 제외됨) |
PoET (Proof of Elapsed Time) | – 작업 경과시간 증명기반 리더 선출 – 모듈형 솔루션, 위조방지 합의 | – 소투스 레이크 (Sawtooth Lake) |
PoA (Proof of Authority) | – 개인 신원을 이용한 블록 유효성 검사 – 보상받을 권리 대신 개인신원 확인 | – 루니버스(Luniverse) |
Tendermint | – 지분기반 투표 (DPoS + PBFT 형태) – 악의적 행위 시 지분 몰수 | – 코스모스(Cosmos) |
- BFT(Byzantine Fault Tolerance) 기반 제안/검증/투표 노드 및 리더를 선출하는 Paxos, Raft 알고리즘 다수 사용
- PBFT와 DPoS 알고리즘 기반 Tendermint 합의 알고리즘의 경우 퍼블릭 블록체인과 프라이빗 블록체인 모두 적용 가능
III. 공개/사설 블록체인 합의 알고리즘 비교
항목 | 공개 블록체인 합의 알고리즘 | 사설 블록체인 합의 알고리즘 |
---|---|---|
접근 통제 형태 | 비허가형 | 허가형 |
참여 대상 | 참여 노드 제한없음 | 식별된 노드만 참여 |
참여 방식 | 어떤 노드든 참여 가능 | 초대에 의한 참여 |
보상 여부 | 참여 노드에 보상 | 보상 없음 |
네트워크 통제 | 별도 통제 없음 | 그룹 또는 중앙 통제 |
트랜잭션 확인 | 어떤 노드든 확인 가능 | 참여 노드만 확인 가능 |
주요 알고리즘 | PoW, PoS, DPoS, PoI, Casfer | PBFT, PoET, PoA, Tendermint |
[참고]
- 소프트웨어정책연구소(SPRi), “블록체인, 이제 산업이다.”, 2018. 2