생활
리브라의 합의 알고리즘 LibraBFT은 어떤 합의방식인가요?
페이스북 암호화폐 프로젝트 리브라의 합의 알고리즘이 LibraBFT에서 새로운 버전 LibraBFTv2로 업데이트 되고 해당 버전은 리브라 블록체인 네트워크 지연을 감소시키고, 거래 체결 속도를 향상시킨다는 기사를 보았는데요.
리브라의 합의 알고리즘 LibraBFT은 어떤 합의방식인가요?
1개의 답변이 있어요!
LibraBFT는 비잔틴 장애 허용 알고리즘을 발전시킨 것입니다. 그럼 리브라 LibraBFT 합의 알고리즘으로 합의에 도달하는 과정에 대해 답변해 드리도록 하겠습니다.
LibraBFT 합의 알고리즘에 따른 합의는 매 라운드마다 검증자들과 검증자들 중 새로운 블록의 제안자로 선택된 리더에 의해 진행됩니다.
우선 리더가 블록체인 상에서 암호화된 해시를 이용하여 제안을 하며 다른 검증자들과 소통을 합니다. 그리고 검증 라운드 중에 리더는 자신이 아는 가장 긴 체인에 블록을 생성함으로써 길이를 연장하기 위한 제안을 합니다.
다음으로 리더의 제안이 유효하고 시기적절하다면 정직한 노드들이 리더가 제안한 블록에 대해 서명을 하고 투표를 한 후 리더에게 다시 메시지를 보냅니다.
이후 리더가 합의에 도달할 수 있을 만한 정족수를 채운 충분한 투표 결과를 받게 되면 블록체인을 연장할 수 있는 정족수 인증서(Quorum Certificate)로 표를 집계합니다. 그리고 정족수 인증서(QC)를 다른 모든 노드에게 전파합니다.
그런데 만약 리더가 QC를 구성하는 것에 실패하게 되면 검증은 중단되고 다음 라운드로 이어지게 됩니다.
반면 리더가 QC를 구성하는 것에 성공(2/3 이상의 투표가 있어야 함)하게 되면 적시에 블록을 생성하여 확정하게 되고 블록체인이 성공적으로 연장되게 됩니다.
결론적으로 LibraBFT는 이러한 과정을 거쳐 빠르게 합의에 도달한다고 할 수 있습니다.
답변이 도움이 되길 바랍니다.