불가능하다던 ‘51% 공격’이 점점 늘어나는 이유

등록 : 2018년 7월 4일 09:23 | 수정 : 2018년 7월 4일 09:32

이미지 출처 : 게티이미지뱅크

모나코인, 비트코인골드, 젠캐시, 버지코인에 이어 라이트코인 캐시까지.

이 다섯 가지 암호화폐가 지난 5월 한 달간 이른바 51% 공격을 당했다. 한때는 실제로 일어나기 어려운, 이론상으로만 존재하는 공격이 이제는 한 달에 다섯 개 암호화폐가 표적이 될 만큼 흔한 일이 되었다. 수법은 똑같았다. 공격에 나선 이들은 상대적으로 작은 블록체인 네트워크를 장악할 만큼 방대한 연산 능력을 갖춘 뒤 거래를 조작하고 합의 알고리듬을 왜곡해 수백만 달러를 훔쳐 갔다. 블록체인상에서 벌어지는 은행 강도의 범행을 보는 것 같다.

51% 공격이 이미 잘 알려진 위험한 암호화폐 공격 벡터라는 사실은 더 놀라운 점일지도 모른다. 과거에도 이런 공격이 성공을 거둔 적이 없지 않지만, 이렇게 빈발하지는 않았다.

공격이 거의 일어나지 않다 보니 전문가들 가운데는 규모가 큰 블록체인의 채굴자들은 절대로 51% 공격의 피해를 보지 않을 것이라고 주장하는 사람이 있을 정도였다. 시시각각 상황이 변하는 암호화폐 세계에서는 이미 까마득한 옛날이야기처럼 들리긴 하지만, 아무튼 성공 가능성도 작고 설사 성공한다 해도 그 많은 돈을 다 빼 올 수도 없으니 51% 공격은 안 하느니만 못하다는, 그래서 결국 블록체인 네트워크는 51% 공격을 걱정하지 않아도 된다는 주장이 정설로 받아들여지던 시절이 분명 있었다.

그러나 이제는 그렇게 말할 수 없게 됐다. 뉴욕대학교(NYU)의 컴퓨터과학자 조셉 보노는 지난해 규모가 가장 큰 블록체인에 51% 공격을 감행하는 데 비용이 정확히 얼마나 드는지를 추산했다. 채굴 장비 등을 사는 대신 모두 대여한다고 가정하고 계산한 결과 그는 51% 공격이 앞으로 계속 늘어날 것으로 내다봤다. 올해 모두가 봤다시피 그의 예측은 사실로 판명됐다. 보노는 코인데스크에 이렇게 말했다.

대체로 암호화폐 커뮤니티도 51% 공격은 미래에나 걱정할 문제로 여겼다. 그런데 상황을 분석해봤더니 51% 공격이 머지않아 일어나도 이상할 것이 없어 보였다. 그래서 그 위험을 경고하고 나선 것이다. 그러나 나조차도 이렇게 빨리 공격이 빈발할 줄은 몰랐다.

공격의 기원을 찾아서

암호화폐는 처음부터 컴퓨터 과학의 오랜 골칫거리 가운데 하나였던 “이중 지불 문제”를 해결하겠다는 야심 찬 목표에 도전했다.

기본적으로 나쁜 행동을 감시하고 예방하는 데 대한 보상을 주지 않고 메시지를 주고받는 네트워크가 스스로 금융 시스템을 제대로 관리, 감독하는 일은 불가능하다. 즉, 누군가 한꺼번에 같은 돈을 다섯 군데 다른 곳에 써도, 심지어 1천 번을 써도 이를 걸러내고 막아내기 어려운 것이다. 그래서 어쩔 수 없이 은행과 같은 제삼자가 나서 귀찮은 일을 모두 처리해 나쁜 행동을 못 하게 막고 신뢰를 강제하게 된 것이다.

사실 채굴자(miners)가 지금처럼 전기를 소모해가며 네트워크 안에 있는 누구의 돈도 도난당하지 않았다는 사실을 끊임없이 확인하고 검증하는 이유도 마찬가지다. (여기서 채굴자란 블록체인 소프트웨어를 운영하는 데 필요한 기계를 뜻하며, 채굴에 참여하면 수많은 노드 가운데 하나가 되어 거래 데이터를 기록하고 저장함으로써 네트워크 보안을 높이게 된다)

해커들이 지금과 같은 채굴 방식을 뚫고 공격을 감행해 돈을 벌려면 몇 가지 요건을 갖춰야 한다. 즉, 채굴 역량(해시파워, hash power)의 절반 이상을 갖추는 것만으로는 해커가 얻을 수 있는 것이 별로 없다. 대신 몇 가지 조건이 갖춰지면 해커들이 (데이터를 위·변조해) 이중 지불할 수 있게 된다.

다만 몇천 원 하는 커피 한 잔 값을 벌겠다고 해시파워를 끌어모으는 건 그야말로 배보다 배꼽이 큰 낭비가 된다. 공격을 감행했을 때 수백, 수천만 달러는 빼돌릴 수 있어야 해커들도 수지타산이 맞는다는 말이다. 해커들은 교묘하게 시스템의 약점을 파고들어 이른바 ‘돈이 되는 공격’을 감행하고 있다. 모나코인, 비트코인골드, 젠캐시, 라이트코인캐시 모두 암호화폐를 다량 보유하고 있던 거래소가 공격 목표가 되었다.

(프라이버시를 중시한 제트캐시(Zcash)에서 두 차례 하드포크를 거친 바 있는) 젠캐시(zencash)는 이미 세 차례나 51% 공격으로 피해를 봤다. 해커들은 총 21,000젠(젠캐시 토큰)을 탈취해갔다. 현재 시가 기준 4천만 원이 넘는 액수다.

다만 버지코인에 감행했던 공격은 그 종류가 조금 달랐다. 해커들이 버지코인이 정한 규칙 자체의 결함을 찾아내 네트워크를 교란해 돈을 자신에게 전송하게 했기 때문이다. 그럼에도 기본적으로 버지코인의 기본 프로토콜 레이어를 목표로 삼았다는 점에서 이 공격도 51% 공격으로 분류해야 한다고 주장하는 전문가들도 있다.

소규모 코인일수록 위험하다?

그렇다면 오랫동안 이론적으로만 가능할 뿐 사실상 걱정할 필요가 없다고 여겨지던 51% 공격이 왜 갑자기 최근 들어 빈발하게 된 걸까?

코인데스크가 만난 전문가들은 그 이유를 딱 하나로 추리기 어렵다고 설명했다. 여러 가지 요인이 복합적으로 작용했을 가능성이 크다는 것이다. 예를 들면 소규모 코인들이 주로 공격 대상이 되는 것도 우연이 아닐 수 있다. 소규모 코인은 채굴자들도 적을 것이고, 그만큼 해시파워의 51%를 장악하는 데 드는 비용도 상대적으로 크지 않다.

 

51% 공격의 수익률 추정치. 자료: Crypto51.com

젠캐시 하드포크를 이끌었던 롭 비글리오네는 가격 부담이 큰 채굴기나 채굴용 하드웨어를 사지 않고도 대여해 가동하는 방법 등 소위 채굴 시장이 활성화돼 누구나 어렵지 않게 채굴에 참여할 수 있게 되면서 상대적으로 해커들이 채굴에 드는 해시파워를 쉽게 모을 수 있게 된 것도 영향을 미쳤다고 주장했다. 채굴 문턱이 낮아지면서 채굴 시장에 더 많은 사람이 모이고 그만큼 채굴 시장에서 취합해 공격에 악용할 수 있는 해시파워도 높아졌다.

“해커들이 시장에 나온 해시파워를 모아 공격에 쓰면 된다는 사실을 막 깨닫고 있다.”

아예 채굴 시장의 관련 데이터를 모아 51% 공격에 드는 비용과 예상 수익을 블록체인별로 분석해 정리해 놓은 Crypto51이라는 웹사이트도 생겼다. 예를 들면 바이트코인(bytecoin)은 CPU 해시파워를 빌려 공격할 경우 채 100만 원도 안 되는 돈으로 공격을 감행할 수 있다고 나와 있다.

코넬대학교의 에민 건 사이러 교수는 이와 관련해 “공격에 드는 비용이 100만 달러가 되지 않는 암호화폐나 코인 등에 저축해뒀다면, 당장 이를 다른 곳으로 옮기는 것이 안전할 것”이라는 트윗을 남겼다. 반면에 비트코인이나 이더리움처럼 규모가 큰 암호화폐는 51% 공격으로부터 훨씬 안전하다. 절반이 넘는 해시파워를 모으려면 웬만한 채굴 시장의 대여할 수 있는 해시파워를 모두 모아도 어림도 없기 때문이다. 뉴욕대학교의 조셉 보노는 코인데스크에 “비트코인은 워낙 규모가 크기도 하고 모든 채굴이 빽빽하게 돌아가고 있기 때문에 공격을 감행하기 위해 취합할 만한 여력도 없다”고 설명했다.

Crypto51이 추산한 비용이 근사치라고 밝혔지만, 스위스 취리히에 있는 에테하 공과대학(ETH Zurich)의 연구원 아서 제르베는 이 숫자를 절대적으로 믿기 어렵다고 지적했다.

“(Crypto51은) 공격에 필요한 하드웨어, 소프트웨어를 설치하는 데 드는 초기 비용을 고려하지 않았다. 그래서 내 생각에 이 숫자는 너무 단순한 계산 결과로 보인다. 정말 100만 원도 안 되는 돈으로 암호화폐를 쥐락펴락할 수 있다고 해석해서는 안 된다.”

해법은 천천히 참고 기다리는 것?

제르베는 이어 어떤 상황에서 51% 공격이 발생하는 상황이나 잠재적인 피해까지 좀 더 구체적으로 살펴볼 필요가 있다고 지적한다. 51% 공격은 아마도 암호화폐와 관련해 가장 악명 높은 공격일지 몰라도, 그가 보기에 피해가 가장 극심한 공격은 아니라는 것이다.

제르베는 예를 들어 제트코인(zcoin)에서 발생했던 악성 버그 같은 경우 이를 해커가 먼저 발견했다면 원하는 만큼 암호화폐를 마음껏 찍어낸 뒤 환전해 달아났을 수도 있다고 지적한다. 물론 51% 공격도 거래소에 피해를 주거나 해커가 네트워크를 교란하는 과정에서 무고한 이용자가 피해를 보기도 한다는 점에서 문제가 없는 것은 아니다. 비글리오네는 젠캐시가 또다시 51% 공격의 희생양이 되지 않도록 막는 것이 중요하다며 “암호화폐 업계가 다같이 51% 공격의 원인을 찾아 제거해야 한다”고 말했다.

이용자나 거래소가 해커들의 잠재적인 공격에 속아 넘어가지 않는 확실한 방법 가운데 하나는 거래 기록이 오래된 암호화폐만 확인해 취급하는 것이다. 다시 말해 거래기록이 더 많아서 블록이 많이 쌓여있는 거래만 인정하는 것인데 이를 확인(confirmation) 절차라고 부른다. 확인 절차를 꼼꼼히 밟을수록 해커들이 51% 공격으로 돈을 빼돌리기는 더 어려워진다.

비트코인골드가 공격을 받았을 때 거래소들은 최소 다섯 차례만 확인을 거치면 거래를 승인하게 해두었다. 해커들은 취합한 해시파워를 활용해 이를 어렵지 않게 뚫어냈다. 이제 한 번 공격을 받은 뒤 거래소들은 최소 확인 횟수를 50번으로 늘렸다. 그 뒤로는 일단 추가로 51% 공격이 일어나지 않았다.

이번 일을 겪고 나서 개발자와 암호화폐 전문가들은 해시파워가 높은 대규모 블록체인일수록 확인 절차를 덜 밟아도 공격받을 걱정이 없이 더 안전하다는 점에 주목하고 있다. 비트코인을 지지하는 존 라이트는 상황을 다음과 같이 설명했다.

다음번에 누군가 당신더러 자기는 (규모가 작은) 알트코인을 쓴다는 사람이 있다면 그 코인은 모르긴 몰라도 분명 싸고 편리해 보이는 만큼 나쁜 사람들이 악용하기도 쉽다는 점을 잊지 마시라. 값이 싼 데는 다 이유가 있다.

번역: 뉴스페퍼민트

This story originally appeared on CoinDesk, the global leader in blockchain news and publisher of the Bitcoin Price Index. view BPI.