[뉴스토마토 안창현 기자] 페이스북은 지난달 블록체인 프로젝트 '리브라(Libra)'의 백서를 공개했습니다. 그동안 페이스북이 발행하려는 암호화폐에 대해 여러 추측성 보도들이 잇따랐는데, 백서 공개와 함께 암호화폐 사업 진출을 공식화한 셈입니다. 리브라 거래와 암호화폐 지갑 개발을 위해 설립한 자회사 '칼리브라(Calibra)', 마스터카드와 비자, 페이팔, 우버 등 글로벌 기업이 참여하는 리브라협회에 대한 내용들도 알려졌습니다.
공개된 리브라 백서를 통해서 페이스북이 준비하는 스테이블 코인 형태의 암호화폐에 대한 여러 기술적 특징들도 드러났고요. 그중 하나가 블록체인 합의 알고리즘으로 사용하는 '리브라 BFT'입니다. 백서에 따르면, 페이스북은 비잔틴장애허용(Byzantine Fault-Tolerant, BFT) 계열 알고리즘인 '핫스터프(Hot-Stuff)'를 응용해 리브라 네트워크의 합의 알고리즘을 개발할 계획입니다. 여기서 BFT는 블록체인 네트워크에 악의적인 참여자(노드)가 존재하는 경우에도 안전하게 합의가 이뤄질 수 있도록 하는 알고리즘을 뜻합니다.
페이스북은 리브라 프로젝트에서 비잔틴장애허용(BFT) 알고리즘을 개발할 계획이다. 사진/뉴시스
조금 더 자세히 알아볼까요? BFT는 블록체인과 같이 분산화된 네트워크에서 전체 시스템이 안전하게 돌아가기 위해 제기됐던 문제에서 비롯합니다. 흔히 '비잔틴 장애 문제', 혹은 '비잔틴 장군의 딜레마' 등으로 알려진 오래된 문제입니다. 내용은 이렇습니다. 비잔틴 제국의 장군들이 적군의 성을 함락하기 위해 동맹을 맺었습니다. 그리고 이들은 서로 떨어져 있어 연락병을 통해 서로 연락해야 합니다. 이런 상황에서 적이 보낸 가짜 연락병이 잘못된 메시지를 보낸다면, 또는 누군가 배신을 해서 동맹을 깨려한다면 어떨까요. 어떻게 해야 이런 위험을 해결하고 동맹을 유지할 수 있을까요.
비잔틴 장애 문제를 해결하는 방법이 하나만 있는 건 아닙니다. BFT 알고리즘에서는 블록체인 네트워크에서 선량한 노드가 3분의2 이상이라는 전제 하에 악의적인 노드들이 거래 내역을 조작해도 3분의2 이상이 같은 원장을 공유한다면 블록을 생성합니다. 그러니까 분산화된 네트워크에서 거래를 성립시키고 합의하기 위해 최소 3분의2, 혹은 그 이상의 신뢰할 수 있는 정직한 노드를 확보하는 방법이라고 할 수 있습니다.
사실 비잔틴 장애 문제는 분산화된 블록체인 네트워크들이 해결해야 할 공통 과제라고 할 수 있습니다. 실제 비트코인도 비잔틴 장애 문제를 해결하면서 등장했고요. 비트코인의 창시자인 사토시 나카모토는 '작업증명(PoS)'을 통해 권위적인 중앙의 개입 없이 네트워크의 각 노드들이 합의할 수 있는 메커니즘을 만들었습니다. 비트코인 외에도 각각의 블록체인 네트워크에서 다양한 합의 알고리즘을 가지고 있는 이유도 비잔틴 장애 문제 때문입니다. BFT도 그와 같은 합의 알고리즘의 하나입니다.
안창현 기자 chahn@etomato.com