51% 공격은 무엇인가?

초급5분 소요2021-12-14

51% 공격이란?

51% 공격이란 블록체인 네트워크상의 의사결정에 필요한 컴퓨팅 파워나 연산력 등을 50%를 초과하여 확보한 뒤, 거래내역을 조작하여 이익을 얻는 해킹 공격을 말합니다. 예를 들어 작업증명(PoW, Proof of Work) 방식의 블록체인 네트워크의 경우 네트워크 채굴량을 50% 초과하여 네트워크를 조작하는 것을 말합니다. 


51% 공격에 성공하여 네트워크를 장악할 경우 새로운 거래가 처리되는 것을 막거나 이미 완료된 거래를 번복하는 등의 행위를 할 수 있습니다. 또한, 극단적인 경우에는 네트워크를 중단시킬 수도 있으므로, 실제로 51% 공격이 발생한다면 정상적으로 블록을 이어가거나 불법 거래를 막기가 어려워집니다.  


예를 들어, 물건 구매를 위해 1개의 비트코인을 결제에 사용했다고 가정해 봅시다. 정상적으로 거래가 되었다면 물건 구매를 위해 사용한 비트코인은 A 지갑에서 B 지갑으로 이전되고, 이 내역은 블록체인상에 기록될 것입니다. 하지만 51% 공격자가 비트코인 전송 기록을 취소하고, 비트코인이 정상적으로 이전되지 않도록 일종의 오류를 발생시킨다면 어떻게 될까요? 물건을 구입하는 대가로 지불하는 비트코인이 판매자에게 이전되지 않고, 그대로 구매자에게 남아 있을 것입니다.



51% 공격 발생 가능성은?

일단 51% 공격이 성공하기 위해서는 해당 블록체인 네트워크에 참여한 노드의 절반, 즉 연산 능력을 보유해야 합니다. 쉽게 말해 다른 모든 노드의 연산 능력을 합친 것보다 공격자의 연산 능력이 커야 합니다. 따라서 블록체인 네트워크 참여자 수가 늘어나면 늘어날수록 50% 이상의 해시 파워를 확보하기 매우 어렵기 때문에 51% 공격은 사실상 불가능하다고 여겨집니다. 네트워크 참여자가 가장 많은 비트코인의 경우 2009년 1월 3일 처음 만들어진 이후 단 한 번도 51% 공격에 노출된 적이 없습니다.


하지만 블록체인 네트워크 참여자가 적을 경우 51% 공격에 취약합니다. 과거 비트코인 골드와 이더리움 클래식 등의 블록체인 네트워크가 51% 공격을 당한 적이 있습니다. 이로 인해 비트코인 골드는 특정 지갑으로 대량 송금이 이루어졌고, 이더리움 클래식은 이중지불 이슈가 발생했습니다. 이후 업그레이드를 통해 다시는 해당 문제가 발생하지 않도록 하는 조치가 이루어졌습니다.



51% 공격, 어떻게 예방할 수 있을까?

51% 공격은 PoW 기반 합의 알고리즘을 사용한 블록체인에서 주로 발생하며, 치명적인 문제를 야기시킵니다. 따라서 51% 공격에 대한 최선의 방어는 지분증명(PoS) 합의를 사용하는 것입니다.


이더리움의 경우 2022년 9월, 머지 업그레이드를 통해 합의 알고리즘을 PoW에서 PoS로 전환하였습니다. 


이더리움 개발자 비탈릭 부테린은 PoS 알고리즘으로 전환되는 이더리움 2.0에 대하여 "현실적으로 공격자는 51%의 해시파워를 장악했다 하더라도 단 한 번의 공격 기회가 있으며, 검열 공격에 피해를 입거나 소프트 포크로 인해 활동을 제약받고 자신의 토큰을 잃어버리게 된다."며 PoW와 달리 PoS 방식은 51% 공격에 대하여 보다 안전하다고 설명했습니다.


➕함께 보면 좋은 콘텐츠

이클립스 공격이란 무엇인가?

시빌 공격이란 무엇인가?