비잔틴장애허용 합의구조를 사용하는 이유가 무엇인가요?
이번에 페이스북이 발표한 백서에서
리브라 암호화폐가 비잔틴 장애허용
합의구조를 사용한다고 나와있던데요
비잔틴장애허용 합의 구조를 사용하면
무슨 이득이 있는것일까요?
질문자께서 질문해 주신 내용에 대해 답변을 드리도록 하겠습니다.
블록체인 네트워크의 합의 과정에서는 악의적 노드의 행위에 의해 합의에 도달하는 과정에서 방해를 받거나 합의에 도달하지 못할 수도 있는 비잔틴 장군 문제가 존재했습니다.
이것에 대한 해결 방안으로 나온 것이 바로 '비잔틴 장애 허용(BTF)'이라는 합의 알고리즘 입니다. 이 방법은 일부의 잘못된 선택이나 일탈을 허용하는 합의 방식(비잔틴 노드들의 존재를 허용)이라고 할 수 있습니다. 즉, 신뢰할 수 있는 노드 3분의 2가 바르게 합의에 도달할 경우 나머지 3분의 1의 비잔틴 노드들이 있더라도 문제가 있더라도 그와 상관없이 신뢰할 수 있는 노드인 3분의 2에 의해 합의에 도달할 수 있으며 그 합의에는 결과적으로 문제가 없게 된다는 것입니다.
이것이 블록체인에 도입되게 되면 노드들이 블록을 검증할 때 정보의 위, 변조를 시도하는 노드가 있거나, 정상적으로 작동하지 않을 경우에, 모든 노드들의 일치로 완전한 합의에는 도달하지 못하더라도 3분의 2이상의 정상적인 노드들이 합의를 도출할 수 있다는 전제가 있다면 그 합의 결과는 무결하다고 본다는 것입니다. 따라서 BTF 알고리즘은 리브라 블록체인과 다른 블록체인에도 널리 이용되고 있다고 할 수 있습니다.
또한 블록체인에 따라서는 비잔틴 장애 허용 합의를 빠르게 두 번 진행하는 경우도 있는데 첫 번째 합의에서 3분의 2 이상의 합의가 도출되지 못하면 해당 블록은 확정 상태에 이르지 못하게 되며, 첫 번째 합의에서 3분의 2 이상의 합의가 도출되면 다시 빠르게 두 번째 합의를 다시 시작하여 합의 한 뒤 불변하는 블록을 생성하고 확정지을 수 있습니다.
이렇게 선합의, 후 블록 생성 방식을 택하게 되면 새로운 블록 생성의 이전 블록이 확정성을 부여 받은 상태이기 때문에 블록체인의 분기(Fork)를 방지할 수 있게 되어 안정성과 보안성이 높아지게 됩니다.
답변이 도움이 되길 바랍니다.