본문 바로가기
Team

[블록체인] 비잔티움 장군 문제

by seungh2 2021. 4. 3.

<비잔티움 장군 문제>

비잔티움 장군들이 행동을 합의하려 할 때, 발생할 수 있는 의사소통 문제에 관한 것.

- 장군들은 공격 or 후퇴에 대한 동의를 얻어야 한다.

- 모든 장군이 합의에 도달하면 아무 문제 없다.

- 결정은 번복이 불가하며, 모두가 동시에 같은 결정을 해야 한다. 

- 장군들은 운반자에 의해 전달되는 메시지를 통해서만 서로 소통이 가능하다.

- 장군들은 공격 or 후퇴에 대한 동의를 얻어야 한다.

- 모든 장군이 합의에 도달하면 아무 문제 없다.

- 결정은 번복이 불가하며, 모두가 동시에 같은 결정을 해야 한다. 

- 장군들은 운반자에 의해 전달되는 메시지를 통해서만 서로 소통이 가능하다.

 

<문제점>

어떤 이유에서든 메시지가 늦게 전달되거나 훼손, 소실될 수 있다는 점.

메시지가 성공적으로 전달되더라도 한 명 혹은 여러 명의 장군들이 악의적으로 행동하기로 선택해 다른 장군들을 혼란스럽게 할 수도 있다는 점.

 

<비잔티움 장군 문제를 블록체인에 적용해보면?>

- 각 장군들이 하나의 노드.

- 노드들은 현 시스템 상태에 합의를 달성해야 한다.

- 블록체인에서 이러한 합의를 달성할 수 있는 유일한 방법은 최소 2/3 혹은 그 이상의 신뢰할 수 있는 정직한 네트워크 노드를 확보하는 것이다.

-> 네트워크 참여자 대다수가 악의적으로 행동하면 공격당할 수 있다.

=> 51% 공격

 

<51% 공격>

- 단일 주체 혹은 조직이 대다수의 hash rate를 제어할 수 있게 되어, 네트워크를 중단시킬 수 있는 공격.

- 트랜잭션 서비스 거부, 마이닝 독점 가능하다.

- 자신의 트랜잭션을 되돌릴 수 있다. (남의 트랜잭션은 못함)

-> 블록 보상 변경, 새 코인 생성, 공격자 소유가 아닌 코인 가로채기는 불가능

 

51% 공격자는 트랜잭션 순서를 의도적으로 수정하거나 제외시키기 위해 충분한 마이닝 파워를 소유하고 있다.

hash rate 가 충분히 분산화되어 있지 않으면 51% 공격 발생률이 높다.

 

* hash rate = hash power

자신이 보유한 컴퓨터 파워에 기초한 마이닝 성과.

다양한 노드에 분산되어 있으며 단일 주체 소유가 아니다.

728x90

댓글