지분증명(POS: Proof Of Stake) 합의 알고리즘과 위임지분증명(DPOS: Distributed Proof Of Stake)합의 알고리즘은 어떻게 다른가요?
안녕하세요.
블록체인 블록의 진실성을 검증하는 합의 알고리즘들 가운데 지분증명(POS)방식과 위임지분증명(Distributed Proof Of Stake)방식은 어떤 점에서 구별되는지 알고싶습니다.
우선 DPOS 합의 알고리즘의 경우 다른 노드들이 투표를 통해 소수의 대표 노드를 선출하여 권한을 위임합니다. 그리고 이러한 대표 노드들이 거래의 유효성을 검증하고 합의에 도달, 블록을 생성하며 새로 발행되는 코인의 일부를 보상을 얻게 됩니다.
반면 POS 합의 알고리즘의 경우는 별도의 대표 노드가 있는 것은 아니며 코인의 스테이킹 수량에 비례하여 블록을 생성하는 노드로 선택될 확률이 높아지는 구조입니다. 즉, 스테이킹을 많이 한 노드일수록 더 많이 블록을 생성하고 더 많은 보상을 받을 수 있게 되는 것입니다.
다음으로 보안성과 관련하여 DPOS나 POS 모두 해킹을 위해서는 블록체인 상에서 많은 지분을 확보하여 공격을 해야 하기 때문에 많은 비용이 필요하므로 사실상 해킹이 어려운 시스템을 구성하고 있다고 볼 수 있습니다.
하지만 DPOS의 경우 소수의 대표 노드들이 돌아가면서 각각 12블록씩 생성하므로 공정하게 블록이 생성된다고 볼 수 있지만 POS의 경우는 이전 블록 생성자가 다음 블록 생성자를 선택하기 위한 무작위 변수를 조작할 수 있는 '그라인딩 공격'의 가능성이 있다는 점에서 차이가 있습니다.
끝으로 일반적으로 DPOS가 POS에 비해 비교적 소수의 합의 노드가 빠르게 합의에 도달하게 되므로 트랜젝션의 처리와 블록의 생성 속도가 더 빠르다고 할 수 있겠습니다. 또한 거버넌스 측면에서 DPOS가 투표라는 절차를 추가하고 있다는 점에서 POS보다 민주적인 의사결정과 합의가 이루어진다고 할 수 있겟습니다.
답변이 도움이 되길 바랍니다.