본문 바로가기
Blockchain

[Blockchain] 블록체인 합의 알고리즘 종류 비교

by 개발자 염상진 2022. 6. 14.

 

 

합의 알고리즘이란?

 

합의 알고리즘(Consensus Algorithm) 다수의 참여자들이 의사결정에 참여해 통일된 결정을 내리기 위해 사용되는 알고리즘입니다. 또 다른 말로 합의 모델, 방식, 메커니즘, 프로토콜이라고도 부릅니다. 블록체인 네트워크에서는 모든 참여자들이 동일한 데이터를 복사해서 분산 저장하기 때문에 원본과 사본의 구분이 없습니다. 또한 통일된 의사결정을 내려줄 중앙(center)이 존재하지 않습니다. 

 

 

블록체인 네트워크 참여자들이 가지고 있는 데이터는 모든 참여자들이 동시에 가지고 있기 때문에 블록에 기록될 데이터가 위변조 되지 않은 원본이라는 것을 상호간 합의 하는 과정이 필수적입니다. 만약 악의적인 사용자가 위변조 데이터를 블록에 추가하거나 네트워크에 공유하면 블록체인 네트워크는 무너지게 됩니다. 이를 방지하기 위해 다수의 노드들은 데이터를 상호 검증하고 올바른 블록을 생성하는 프로세스와 알고리즘가 바로 합의(Consensus)입니다.

 

작업 증명(PoW, Proof of Word)

 

비트코인에 사용되는 합의 알고리즘입니다. 블록을 생성하는 단계에서 가장 많은 해시 파워를 제공한 노드가 블록을 생성할 수 있는 권한을 얻는 방식입니다. 블록체인 네트워크에서 블록을 생성하기 위해서는 논스(Nounce)값을 맞추는 채굴 과정이 필요합니다. 즉 블록체인 네트워크에 전송된 암호화된 거래정보들을 새로운 블록에 담은 후 체인에 연결하는 작업을 완료했다는 것을 증명하는데 필요한 컴퓨팅 파워가 채굴 과정입니다. 

작업 증명(PoW) 합의 알고리즘에서 브랜치가 생긴 경우 가장 긴 블록체인이 남을 때 까지 브랜치들은서로 경쟁하게 됩니다. 최후 이긴 브랜치가 채택되며 다른 브랜치들은 버려지게 됩니다. 작업증명 합의 방식은 시빌 공격과 같은 블록체인 네트워크에 대한 공격을 방어할 수 있는 유일한 알고리즘입니다.

작업증명 합의 방식에 가장 큰 단점은 에너지 효율입니다. A,B,C가 동시에 채굴을 진행하고 C가 채굴에 성공하게 되면 A와 B는 논스값에 거의 근접했다고 하더라도 기존의 작업은 버려지게 됩니다. 채굴에 성공한 노드를 제외한 나머지는 버려지기 때문에 에너지 효율이 좋지 않습니다.

 

장점 단점
- 메인 코인들이 채택하고 있는 합의 방식
- 강력한 보안성
- 서비스 남용 방지
- 높은 전력 소모(에저지 효율이 좋지 않습니다.)
- 해쉬 파워를 지속적으로 유지해야 함
- 특정 마이닝 세력이 해시를 독점하게 됨.

 

 

 

지분 증명(PoS, Proof of Stake)

 

지분 증명 합의 알고리즘지분을 많이 가진 노드에게 블록을 생성할 권한을 부여합니다. 많은 지분을 가지고 있을 수록 블록에 기록할 권한이 더 많이 부여되게 됩니다. 지분 증명은 블록을 생성하는 노드와 지분 생성자의 이해관계를 일치시켜 악의적인 의도로 블록을 생성하지 않도록 합니다. 만약 블록을 잘못 생성할 경우 패널티를 받게 됩니다. 

지분 증명 합의 알고리즘을 사용할 경우 작업 증명(PoW)보다 에너지 효율이 좋습니다. 또한 코인만 가지고 있다면 누구나 네트워크에 참여하기 때문에 더 많은 노드가 분산화된 환경에서 의사결정 과정에 참여하게 됩니다. 코인을 가진 참여자는 일정 수 이상의 코인이 보관된 지갑을 블록체인 네트워크에 연결시켜놓기만 하면 보상을 받게 됩니다.

 

장점 단점
- 많은 해시파워를 요구하지 않음(경제적이며 친환경적인 방법)
- 블록 생산자가 탈중앙화 될 수 있음(안정성 확보)
- 블록 생성을 위해 지분이 담보로 잡히기 때문에 Dumping 방지
- 보안성 검증 부재
- 지분이 많은 고래 투자자들이 네트워크 독점할 가능성

 

 

위임 지분 증명(DPoS, Delegated Proof of Stake)

 

위임 지분 증명 합의 알고리즘은 PoS에서 진보된 방식입니다. 지분을 가진 각 노드들은 투표를 통해 트랜잭션 유효성 검사를 다른 노드에게 위임하게 되고, 위임받은 노드들이 블록 생성을 증명하는 방식입니다. 대표적인 위임 지분 증명 방식을 사용하는 블록체인 네트워크는 이오스(EOS) 입니다.

위임 지분 증명에서는 모든 노드들이 블록생성에 참여하지 않습니다. 네트워크의 노드들이 투표를 통해 상위 노드를 선출하고 권한을 위임하게 됩니다. 일정 수의 상위 노드(20명 ~ 21명)은 모든 권한을 위임받아 블록을 생성합니다. 마치 현대 선거제도와 유사한 방식입니다.

DPoS는 합의에 참여하는 노드 수가 제한되기 때문에 빠른 성능은 물론 확장성을 갖출 수 있게 되었습니다. 하지만 이러한 방식이 완전히 탈중앙화된 블록체인이냐에 대한 의문은 남아있습니다.

 

장점 단점
- PoS에 비해 트랜잭션 처리속도가 빠릅니다.
- PoW에 비해 에너지 효율이 좋습니다.
- 하드포크 위험이 낮습니다.
- 상위 노드들이 담합할 위험이 있습니다.
- 상위 노드들은 공개되므로, DDoS 공격위험에 노출됩니다.

 

 

블록체인 합의 알고리즘 종류

 

블록체인의 대표적인 합의 알고리즘으로는 PoW, PoS, DPoS가 있습니다. 이 뿐만 아니라 현재 실험중이고, 실제 도입되기 시작한 합의 알고리즘 종류는 다양합니다.

 

체인 공개 유형 합의 방식 설명 장점 단점 사용 코인
퍼블릭
비허가형
공개형
작업증명(PoW) - 높은 컴퓨팅 파워를 가진 노드가 블록을 생성하게 됨
- 각 노드의 연산 능력을 바탕으로 블록생성 증명
- 검증된 방식 - 51% Attack
- 완결성 문제
- 느린 트랜잭션
- 에너지 낭비
- 비트코인
- 라이트코인
프라이빗
허가형
컨소시엄
지분증명(PoS) - 지분양에 비례해 블록생성 권한을 부여 받음
- 실제 대규모 환경에서 검증자료 부족
- 51% Attack 문제 해결
- 빠른 트랜잭션
- 에너지 효율 좋음
- 검증 부족 - 퀀텀 네오
-스트라디스
- (이더리움)
위임 지분 증명
(DPoS)
- 위임받은 상위 노드들이 블록 생성
- 네트워크 신뢰도가 상위 노드들에게 종속됨
- 빠른 트랜잭션
- 에너지 효율 좋음
- 검증 부족
- 탈중앙성 부족
- 보안 취약
-스팀
-이오스
-아크
-라이즈
경과 시간 증명
(PoET)
- 하이퍼레저 쏘투스 레이크에서 제안되었으며 인텔 SGX을 기반으로 블록을 생성하는 리더를 랜덤으로 생성함. 
- 낭비되는 에너지를 줄이면서 작업 증명과 유사한 방식으로 작동하는 알고리즘
- PoW 방식 개선
- 에너지 낭비 적음
- 특정 H/W 종속됨 - 쏘투스
PBTF - 1명의 프라이머리 노드가 모든 참여자에게 요청을 송신한 뒤 결과를 바탕으로 블록을 확정함.  - 완결성 문제 해결
- 빠른 트랜잭션
- 참여자에 대해 사전 확인 필요
- 참가자가 증가하면 성능 하락함
- 페브릭
권한 증명
(PoA)
- 블록의 validator라고 승인된 계정에 의해 유효성 검사가 진행됨.      
PAXOS - 블록의 validator라고 승인된 계정에 의해 유효성 검사가 진행됨.      
RAFT - 리더를 정한 후 시스템의 모든 상태 변화를 리더를 통해 결정함.      
Sieve - IBM에서 고안한 PBET 확장 알고리즘.      

 

 

비잔틴 장애 허용 알고리즘(BFT, Byzantine Fault Tolerance)

 

비잔틴 장애 허용 합의 알고리즘은 네트워크에 장애가 발생 하더라도 전체 1/3을 넘지 않는다면 시스템이 정상 작동하도록 허용하는 방식입니다. 블록체인 네트워크가 정상작동 하기 위해서는 참여자들이 정직하게 행동할 필요가 있습니다. 또한 이를 보장할 방법이 필요합니다. 비잔틴 장애 허용 합의 알고리즘은 비잔틴 문제를 해결하기 위해 고안되었습니다. 악의적인 참여자가 네트워크 전체를 붕괴시킬 수 있기 때문입니다. 

 

프랙티컬 비잔틴 장애 허용(PBFT, Practical Byzantine Falut Tolerance)

 

프랙티컬 비잔틴 장애 허용 합의 알고리즘은 네오 , 질리카, 하이퍼레저, R3, ITC, 텐더민트 등에서 사용하는 방식입니다. 여러 노드가 참여하고 있는 네트워크에서 악의적인 공격을 방어하기 위해 고안되었습니다. 

 

 

 

 

[Blockchain] 블록체인 트랜잭션이란

블록체인은 블록(Block)과 체인(chain)으로 구성됩니다. 각 블록들은 체인으로 연결되어 하나의 거대한 네트워크를 구성하고 있습니다. 블록을 자세히 들여다보면 헤더(header)와 바디(body)로 구성됩

about-tech.tistory.com

 

 

[Blockchain] 퍼블릭 블록체인 vs 프라이빗 블록체인 VS 컨소시엄 블록체인

블록체인은 P2P 네트워크를 통해 거래 장부를 중앙집중식이 아닌 블록체인 네트워크에 연결된 다양한 컴퓨터에 저장 및 보관하는 기술입니다. 제3의 신용기관 없이도 네트워크 참여자들 간 신뢰

about-tech.tistory.com

 

 

[Blockchain] 비트코인 vs 이더리움

비트코인(Bitcoin) 비트코인은 중앙집중식 은행이 필요없습니다. P2P 기술을 활용해 네트워크의 협력을 통해 트랜잭션이 관리됩니다. 비트코인은 오픈소스로 누구에게나 공개되어 있으며, 누구도

about-tech.tistory.com

 

댓글