51% 공격 (51% Attack, Majority Attack)
51% 공격(51% attack)은 한 주체나 담합한 집단이 작업 증명(PoW) 네트워크 해시 파워의 절반 이상을 장악해, 최근 트랜잭션을 되돌리거나 특정 트랜잭션이 블록에 들어가지 못하게 막는 공격입니다. 과반수 공격 또는 다수 공격(majority attack)이라고도 합니다.
자세히 알아보기
작업 증명 블록체인에서 노드는 누적 작업량이 가장 많은 체인을 정식 체인으로 받아들입니다. 공격자가 전체 해시 파워의 과반을 가지면, 몰래 별도의 체인을 채굴해 정직한 체인보다 길게 만든 뒤 공개할 수 있습니다. 그러면 네트워크는 공격자의 체인으로 재편성(reorg)되고, 원래 체인에 있던 트랜잭션은 사라집니다.
공격자가 할 수 있는 일:
- 이중 지불: 거래소에 코인을 입금해 다른 자산으로 바꿔 출금한 뒤, 입금 트랜잭션이 없는 체인으로 바꿔 코인을 되찾습니다.
- 검열: 특정 주소나 트랜잭션을 블록에 넣지 않습니다. 새 트랜잭션의 확인을 모두 거부하면 네트워크를 사실상 멈춰 세울 수도 있습니다.
- 다른 채굴자의 블록을 무효로 만들어 보상을 독차지합니다.
할 수 없는 일도 분명합니다. 다른 사람의 개인 키 없이 남의 코인을 옮길 수 없고, 블록 보상을 규칙 이상으로 늘리거나 새 코인을 마음대로 만들 수도 없습니다. 유효성 검사 규칙은 해시 파워와 무관하게 모든 풀 노드가 적용하기 때문입니다.
블록체인·암호화폐에서는
비트코인처럼 해시 파워가 매우 큰 네트워크는 공격 비용이 막대해 현실적으로 어렵지만, 해시 파워가 작은 코인은 실제로 공격을 당했습니다. 비트코인 골드(BTG)는 2018년 공격으로 수백만 달러 상당의 이중 지불 피해를 입었고, 이더리움 클래식(ETC)은 2019년과 2020년에 공격을 받았습니다. 두 네트워크는 공격 이후 보안 조치를 보강했지만 그 뒤에도 다시 공격을 받았습니다. 공격이 알려지면 이중 지불 손실뿐 아니라 신뢰 상실과 가격 하락이 뒤따를 수 있습니다. 그래서 거래소는 해시 파워가 작은 코인일수록 입금 인정에 필요한 컨펌 수를 크게 늘립니다. 지분 증명(PoS) 네트워크에서는 해시 파워 대신 스테이킹 지분의 과반(또는 3분의 1 이상 등 프로토콜별 임계값)을 장악하는 공격이 이에 해당합니다.
공격 비용과 방어
공격에 필요한 해시 파워를 직접 장비로 마련하려면 막대한 비용이 듭니다. 그러나 같은 채굴 알고리즘을 쓰는 더 큰 코인이 있으면, 해시 파워 임대 시장에서 짧은 시간 동안 해시 파워를 빌려 작은 코인을 공격할 수 있습니다. 작은 작업 증명 코인이 특히 위험한 이유입니다.
방어 수단은 다음과 같습니다.
- 컨펌 수 늘리기: 거래소와 결제 업체는 입금을 인정하기 전에 기다리는 블록 수를 늘려 재편성 위험을 줄입니다.
- 채굴 분산: 한 채굴 풀이 해시 파워의 큰 비중을 차지하지 않도록 채굴자들이 풀을 분산하는 것도 중요합니다.
- 체크포인트·재편성 제한: 일부 프로젝트는 깊은 재편성을 거부하는 규칙을 두지만, 탈중앙성과 맞바꾸는 선택이기도 합니다.
과반이 아니어도 위험할까
51%라는 숫자는 '과반이면 장기적으로 항상 이긴다'는 뜻일 뿐, 그보다 적은 해시 파워로도 운이 좋으면 짧은 재편성을 일으킬 수 있습니다. 비트코인 백서는 공격자 비율과 기다리는 블록 수에 따라 공격 성공 확률이 지수적으로 줄어든다는 계산을 보여 줍니다. 그래서 큰 금액일수록 더 많은 컨펌을 기다리는 것이 안전합니다.
쉽게 말하면
마을 장부를 다수결로 정하는데, 한 사람이 표의 절반 이상을 사들여 어제 적은 내용을 지우고 새로 쓰는 것과 같습니다.
이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.