개발하기좋은날

블록체인의 합의 알고리즘 본문

BlockChain

블록체인의 합의 알고리즘

devbi 2022. 6. 29. 12:00
반응형

합의 알고리즘이란, 다수의 참여자들이 통일된 의사결정을 하기 위해 사용하는 알고리즘 

 

블록체인에서 합의 알고리즘이 필요한 이유?

- 블록체인에서는 네트워크에 참여하는 모든 참여자들이 동일한 데이터를 복사하여 분산 저장하기 때문에 원본과 사본의 구별이 없기에 해당 알고리즘이 필요

 

-  중앙화된 서버대신 수많은 노드에 데이터가 보관및 저장되기 때문에 데이터가 위변조되지 않은 원본이라는 것이라는 것을 상호간에 합의하는 과정이 필요 

 

대표적인 합의 알고리즘엔 Pow(Proof of Work), Pos(Proof of Stake), DPos(Delegated Proof of Stake) 등이 있다 

 

합의 알고리즘에 대해 간단하게 알아보자 

 

작업 증명(Pow)

- 비트코인 창시자 사토시 나카모토가 제안한 알고리즘

- 블록생성 시간 동안 가장 많은 해시파워를 제공한 노드가 블록을 생성할 수 있도록 설계 

- 블록을 생성하기 위해서는 Nonce라는 임의의 값을 맞히는 과정을 마이닝(채굴) 이라고함 

- 작업 증명은 시빌 공격(Sybil Attack)과 같은 각종 공격을 막을 수 있다고 증명된 유일한 알고리즘 

- 높은 전력 소모와 자원 낭비, 지속적인 해시 파워 유지, 특정 마이닝 세력의 독점 등의 단점이 있다

- 강력한 보안성과 서비스 남용 방지가 가능 

 

지분 증명(Pos)

- 노드 또는 사용자가 시스템에 충분한 지분(해당하는 코인)을 갖고 있을때 블록을 생성할 권한을 부여 

- Pos에 비해 해시 파워가 많이 필요하지 않으므로 경제적, 블록 생산자의 탈중앙화로 안정성 확보, 블록 생성을 위해 지분을 담보로 잡아야하기 떄문에 Dumping 방지

- 아직 검증 되지않았고 보안성이 강한지 확인X

- 지분이 많은 고래들이 권력을 독점할 가능성이 존재

 

위임 지분 증명 (DPos)

- Pos에서 변형 

- 시스템의 지분을 가진 가가 노드가 투표를 통해 트랜잭션의 유효성 검사를 다른 노드에 위임하여 증명 

- EOS에서 사용 

- 댄 라리머는 DPoS를 사용하는 그라핀 엔진을 토대로 스팀과 빗쉐어를 만들고 이에 성능을 증명 

- POS에 비해 많은 트랜잭션을 빠르게 처리 가능, POW에 비해 비용이 낮다, 하드포크 위험이 낮고, 증인들이 투표에 참여할 인센티브가 분명

- 증인끼리 손쉽게 담합할 위험이 존재, 공개된 소수의 증인에 대한 디도스 공격 위험 

 

이외에 BFT(비잔틴 장애 허용), PBFT(프랙티컬 비잔틴 장애 허용) 등이 있으며 

 

다양한 합의 알고리즘 특징

반응형
Comments