아발란체의 리더가 없는 합의 알고리즘이란 어떤 개념인가요?
아바랩스와 로켓단이라는 미지의 단체가 개발한 아발란체란 블록체인은 리더(BP)가 없는 합의 알고리즘을 사용한다고 들었습니다.
이를 통해 BP가 존재하는 알고리즘 대비 속도가 증대되는 효과를 볼 수 있다고 하는데요.
아발란체의 리더가 없는 합의 알고리즘이란 어떤 개념인가요?
Avalanche의 의미를 사전에서 찾아보면 '눈사태'라는 의미가 있습니다. 일단 먼저 눈사태의 특성에 대해 한 번 생각해 볼 필요가 있습니다. 눈사태의 특성은
시작은 작은 움직임에 불과하다.
그 작은 움직임으로 인한 힘이 다른 눈송이에 전달되고 빠르게 확산되며, 매우 빠른 시간 안에 눈덩이 처럼 불어나 어마어마하게 큰 눈사태로 변해 어느 한 방향으로 와르르 쏟아져 내린다.
라고 할 수 있겠습니다. 이 어밸런치(눈사태) 합의 알고리즘은 이런 눈사태가 만들어지는 방식으로 합의에 도달하게 됩니다.
어떤 트랜젝션이 요청되고 각 노드들이 각각 이 거래가 유효한지 검증을 하게 되고 노드에 따라 긍정 또는 부정의 결정을 하게 된다고 해 보겠습니다.
어밸런치 합의 알고리즘에서는 이런 과정을 빠르게 굉장히 여러번 진행됩니다. 이렇게 같은 검증을 여러 번 하게 되다 보면 일정한 흐름이 생기게 됩니다.
예를 들어 A가 발생시킨 트렌젝션이 첫 번째 합의에서 긍정과 부정이 1:1이면 바로 다음 합의로 넘어가고 만약 어느 한 쪽이 많았다면 그 쪽에 가중치를 부여한 후 여기서 결론을 내리지 않고 이 작업을 계속 반복합니다.
가중치를 부여하며 반복을 하다보면 긍정이든 부정이든 어느 한 쪽이 점점 더 많아지게 됩니다. 그러다 보면 마치 눈송이의 작은 움직임이 점점 커지다가 큰 눈사태가 되어 한 방향으로 쏟아져 내리듯이 완전히 긍정 혹은 부정의 의견으로 완전한 합의가 이루어지는거죠.
이렇게 완전한 합의에 도달하게 되면 보안성이 강화됩니다. 정보를 위, 변조 시키고 싶으면 마치 눈사태를 일으키듯 새로운 눈사태를 만들어서 한 번 완전한 합의에 도달한 것을 반대로 완전하게 뒤집어야 하기 때문입니다. 이것은 흑을 완전히 백으로 만들거나 백을 완전히 흑화시켜야 하는 작업이 아닌가 싶습니다.
제가 원리를 이렇게 길게 설명드렸지만 실제로는 전 세계 블록체인 네트워크가 모두 최종 완결성에 도달하여 지불이 처리되고 승인되는데 2초 정도가 소요되고, 블록체인 전체적으로는 초당 1000-10000 회의 트랜젝션을 처리할 수 있는 속도가 나옵니다. 또한 채굴에 들어가는 자원의 소모가 거의 없으므로 환경 친화적이기도 합니다.
답변이 도움이 되길 바랍니다.