푸르미르

합의 알고리즘 본문

Block Chain

합의 알고리즘

((•_•)) 2021. 2. 25. 18:08

 합의 알고리즘이란 정보 도달에 시간차가 있는 네트워크에서 참가자가 하나의 결과에 대한 합의를 얻기 위한 알고리즘이다. P2P네트워크에서의 정보의 지연과 미도달 사태, 중복적인 처리나 잘못된 오작동의 문제를 해결하기 위해 사용한다다. PoW(Proof of Work. 계산량에 따른 증명)외의 합의 알고리즘을 사용하는 사례도 늘어나고 있다. 

 PoW는 확률적으로 해답이 어려운 문제를 가장 빨리 해결한 사람에게 블록을 만들 수 있도록 허가하고 그 보상으로 코인을 주는 것으로, 중앙의 관리자가 없어도 사람들이 보상을 위해 일하기 때문에 시스템이 자율적으로 운영된다. 

PoW는 다수결로 결정을 내리는 알고리즘이다. 그래서 51%의 문제가 발생할 수 있는 우려가 많다. 특정 채굴자가 전체네트워크의 과반수 이상을 점유하게 되어 다른 마이너가 생성한 블록을 승인하지 않는 등 결과를 자유롭게 조작할 수 있는 문제가 발생할 수 있다는 것이다. P2P네트워크에서 단일 정보를 공유하는 구조상 네트워크에 확산되는 시간을 없애는 것은 불가능하다. 왜냐하면 여러 노드간 합의를 통해 정보의 신뢰성을 담보하고 있기 때문에 합의에 걸리는 시간도 필요하기 때문에다. 용량적인 면에서도 문제가 있는데, 블록 정보를 각각의 노드가 보유하고 있기 때문에 하드 디스크의 용량과 초기 실행 시간의 증가가 우려된다. 

합의 알고리즘의 종류를 살펴보자. 비트코인에서 사용하는 PoW를 먼저 다루었는데, 종류는 여러가지가 있다.

Proof of Work, Proof of Stake, Paxos, Raft, PBFT, Sieve

이 중에서 PoW, PoS, PBFT를 간단히 정리하겠다.

PoW: 비틐코인을 시작으로 많은 블록체인 기반 기술이 채택하고 있는 합의 알고리즘이다. 

PoS: 이더리움이 채택하려고 하는 알고리즘이다. 화폐량을 더 많이 소유하고 있는 승인자가 우선하여 블록을 생성할 수 있다.

PBFT: Hyperledger Fabric에서 사용하고 있다. 

 

 

 

 

[출처]www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9791158390662

 

 

 

'Block Chain' 카테고리의 다른 글

사이버 위협 환경과 보안 과제  (0) 2021.03.06
전자서명과 해시, 블록체인 기반 기술  (0) 2021.02.25
블록체인 구조와 P2P네트워크  (0) 2021.02.17
블록체인 응용  (0) 2021.02.01
블록체인 == 비트코인?  (3) 2021.01.23