[암호화폐가 100% 망한다고? 양자 컴퓨터와 블록체인 보안 이야기] Chapter 7. 양자 컴퓨터가 블록체인을 죽일 것이다? (완)

2039295025_FoUmYked_chip.jpg


안녕하세요. 훈하니 @hunhani입니다.

hunhani.jpg

대문을 제작해주신 @leesol 님께 감사드립니다.


보다 쉽고 재미있게 전해드리고 싶은 마음이지만 제 글 솜씨가 부족한 탓에 내용을 접하실 때 다소 어렵게 받아들이시는 것 같습니다. 어려운 주제이지만 읽으면서 흥미를 느끼실 수 있도록 최선을 다하겠습니다.

지난 시간에는 양자 컴퓨터 기술 개발 현황에 대해 알아보는 시간을 가졌습니다.

Chapter 7. 양자 컴퓨터가 블록체인을 죽일 것이다?에서는 양자 컴퓨터 기술 개발 현황에 대해 다뤄보겠습니다.


간단 복습

2017031001719_1.jpg

양자 컴퓨터를 구현하기 위한 하드웨어 개발이 급선무다!

  • 양자 알고리즘에 대한 이론적인 연구는 상당히 진척되었지만 이를 동작하기 위한 하드웨어가 뒷받침되어야 한다.
  • 매우 작은 수의 큐비트를 가지고 실제 양자 수치 계산을 수행하는 시도가 꾸준히 행해지고 있긴 하지만 아직 기술적으로 극복할 단계가 많다.

한 번에 다룰 수 있는 큐비트 수를 늘려라!

  • 비트와 달리 큐비트는 그 수를 늘림에 따라 효율이 기하급수적으로 증가하게 된다.
  • 물론 큐비트 여러 개를 마음대로 다루는 것이 쉬운 일이 아니다.
  • 기존 컴퓨터가 18개월에 집적도가 두 배가 된다는 무어의 법칙에 따라 발전해왔듯이, 양자 컴퓨터 역시 다룰 수 있는 큐비트 수가 증가됨에 따라 그 성능이 기하급수적으로 개선되리라 예상된다.

글로벌 기업들의 양자 컴퓨터 기술 경쟁

  • 구글, IBM, 마이크로소프트 등 굴지의 쟁쟁한 IT 기업들이 막대한 돈을 양자 컴퓨터 개발을 위한 연구비에 쏟아 부으며 너나 할 것 없이 상용화된 양자 컴퓨터를 출시하기 위해 경쟁하고 있다.

여전히 양자 컴퓨터 분야의 불모지인 한국

  • 한국의 국내 양자 컴퓨터 기술력은 선진국의 절반 수준에 불과하여 약 7.6년 정도의 기술 격차가 있다.
  • 다만 양자컴퓨터에서 필요한 현상들을 제어하는 기술은 한국도 경쟁력이 있으므로 국내 대기업들이 관심을 갖고 투자할 필요성이 있다.

양자 암호 통신 분야에서 약진하는 국내 기업

  • 양자 암호 통신은 양자의 복제 불가능한 특성을 이용하여 도청에 완벽하게 안전한 통신 방법을 말한다.
  • 최근 17년 6월 SK텔레콤은 순수 국내 기술로 양자 암호 통신의 거리 한계를 극복하여 장거리 통신을 위한 발판을 마련했다.

양자 정보 시대여 오라!

  • 미국 매사추세츠공과대(MIT)가 발행하는 '테크놀로지리뷰'는 '올해의 10대 혁신기술'을 발표하면서 양자 컴퓨터의 시대의 도래를 전망했다.
  • 양자 정보 시대는 생각보다 빠르게 다가오고 있다.


CH7-c.png

블록체인 시스템

많은 분들이 이미 알고 있는 내용이지만 한 번 짚고 가도록 하겠습니다. 블록체인은 이름 그대로 개인과 개인의 거래 데이터가 기록되는 장부인 블록을 시간의 흐름에 따라 순차적으로 연결한 사슬 형태의 구조를 의미합니다. 10분에 한 번씩 거래 명세를 묶어 하나의 블록을 만들고 각각의 블록들을 사슬처럼 이어 공공 장부를 이루는 것인데요. 블록체인을 이용하는 모든 네트워크 참여자들에게 거래 장부에 해당하는 블록 전체를 낱낱이 공개하고 이를 분산하여 관리하게 됩니다. 블록체인 시스템 네트워크에 존재하는 51%가 합의를 통해 각 블록이 타당한 거래임을 승인해야 기존의 블록체인에 연결될 수 있고 한 번 연결된 블록의 거래 기록은 수정 불가능한 상태로 영구히 저장되는데요. 혹시라도 거래 내역을 조작하려고 한다면 하나의 블록이 형성되는 10분 안에 모든 네트워크 참여자의 컴퓨터를 해킹해 블록체인 전체를 한꺼번에 조작해야 하는 비현실적인 작업이 필요하므로 현존하는 컴퓨터로 블록을 위조 혹은 변조하는 것은 원칙적으로 불가능하죠. 따라서 거래의 투명성, 공정성, 안전성이 동시에 보장됩니다. 게다가 제 3의 중개자가 개입할 필요 없이 블록체인 시스템 자체가 자율적 권한 위임을 통해 실시간으로 개인 간 직접 거래를 승인하므로 거래 승인 권한과 정보의 탈중앙화가 실현됩니다.

CH7-a.png

가상화폐의 종말?

다들 아시다시피 가상화폐는 블록체인 시스템을 이용합니다. 가상화폐 왕 비트코인을 예로 들겠습니다. 비트코인 수신자는 공개키를 발신자와 공유하는데요. 공개키는 지갑 주소에 해당하는 것으로 일반적으로 외부에 노출되어도 문제가 없죠. 반면 비트코인을 사용하려면 비트코인 소유자가 개인키를 사용해야 하는데요. 만약 다른 사람이 개인키를 알아버리면 해당 비트코인을 사용해버릴 수 있습니다. 개인키는 큰 수의 소인수 분해의 어려움을 이용한 알고리즘으로부터 보호되는데 현존하는 슈퍼 컴퓨터는 꿈도 못 꿀 일이지만 양자 컴퓨터는 단 몇 분 만에 공개키로부터 개인키를 계산해낼 수 있죠. 해당 주소의 개인키를 알아내버리면 잔고가 털리는 것은 순식간입니다. 이론적으로 양자 컴퓨터가 모든 개인키를 알아내버리면 모든 비트코인에 접근할 수 있는 셈입니다. 이런 이유로 양자 컴퓨터가 상용화되는 시점에는 비트 코인의 공개키와 개인키를 둘러싼 암호를 훼손하여 현재의 블록체인 시스템을 파괴할 수 있다고 여겨지는 것입니다.

CH7-d.png

비트코인이 사용하는 알고리즘

비트코인은 미국 국가안보국 NSA에서 설계한 SHA (Secure Hash Algorithm), 즉 안전한 해시 알고리즘을 사용합니다. 여기서 해시란 임의의 길이의 데이터를 고정된 길이의 데이터로 변환하는 (가상 주소로부터 실제 물리 주소를 찾아내는) 함수에 의해 얻어지는 값입니다. 해시 함수는 결정적이기 때문에 두 해시 값이 다르면 원래 입력 데이터 역시 다릅니다. 동시에 해시 함수는 일대일 함수가 아니기 때문에 같은 해시 값을 갖더라도 원래 입력 데이터가 100% 일치하는 것을 보장해주지 않습니다. 따라서 입력 데이터가 조금만 바뀌어도 해시 값은 크게 달라지죠. 해시를 사용하면 덩치가 큰 저장소에서 중복되는 기록을 찾는데 용이하여 데이터베이스 검색 속도를 가속화할 뿐만 아니라 데이터를 손쉽게 구조화할 수 있습니다. 때문에 해시는 매우 빠른 데이터 검색이 가능한 컴퓨터 소프트웨어에 널리 적용되고 있는데요. 나아가 암호용 해시 함수는 전송 데이터의 무결성을 확인할 수 있고 해싱 값 자체만으로는 원래 입력 데이터를 알아내기 힘들다는 사실에 근거하여 비트코인과 같이 암호화폐에도 적용되었습니다.

CH7-b.png

SHA? ECDSA? 그게 뭔데?

다시 SHA로 돌아와서 SHA 함수는 서로 관련된 암호학적 해시 함수들의 모음을 의미합니다. SHA 함수군에 속하는 최초의 함수는 공식적으로 SHA라고 불리지만, 나중에 설계된 함수들과 구별하기 위하여 SHA-0이라고도 불리는데요. 2년 후 SHA-0의 변형인 SHA-1이 발표되었고, 잇달아 4종류의 변형이라고 할 수 있는 SHA-224, SHA-256, SHA-384, SHA-512가 발표되었습니다. SHA-1은 SHA 함수들 중 가장 많이 쓰이며, TLS, SSL, PGP, SSH, IPSec 등 많은 보안 프로토콜과 프로그램에서 사용되고 있지요. 현재 비트코인 SHA-256에 의존하고 있습니다. SHA-256은 지금 기준으로 매우 안전하다고 할 수 있지만 언젠가 양자 컴퓨터가 상용화된다면 SHA 시리즈보다 훨씬 더 강력한 암호 알고리즘을 사용해야만 합니다.

CH7-e.png

해킹 대신 채굴 용도로도 사용될 수 있다!

비트코인 키 생성은 ECDSA (elliptic curve digital signature algorithm) 즉 타원 곡선 암호 알고리즘에 의해 관리되는데요. 무작위로 생성된 개인키를 미리 결정된 타원 곡선의 점에 대해 곱해 공개키를 만들게 됩니다. 타원 곡선 곱셈을 통해 개인키와 공개키는 서로 쌍을 이루게 되며 역전 불가능한 일련의 해싱 함수들에 의해 보호됩니다. 채굴자들은 블록체인에서 트랜잭션을 인증하고 새로 생성 된 비트코인으로 보상받기 위해 특수하게 설계된 해시 문제에 대한 솔루션을 찾아내야 하는데요. 양자 컴퓨터는 측정 출력 값을 생성하는 블랙박스 함수에서 고유한 입력 값을 높은 확률로 찾도록 해주는 그로버의 알고리즘 (Grover's algorithm)을 활용하여 해시 함수에서 2차 속도 향상시킬 수 있고 생성되는 키의 길이를 절반으로 줄일 수 있습니다. 따라서 양자 컴퓨터를 사용하는 채굴자는 해시 문제 솔루션을 찾을 수 있는 속도를 대폭 향상시킬 수 있습니다. 한편 생성되는 키의 길이가 줄어들어 보안 효과 역시 감소할 수 있는데 이는 키의 길이를 인위적으로 두 배로 늘리면 해결이 됩니다. 물론 이 방법은 블록 크기 제한에 관련한 논쟁을 유발할 수 있고 무엇보다 포크 구현이 훨씬 어려워질 수 있는 단점이 존재합니다.

CH7-g.jpg

양자 컴퓨터에 맞서는 암호화폐

양자 컴퓨터에 대항하기 위한 목적으로 한 발 앞서 개발한 암호화폐들이 있는데요. QRL (Quantum Resistant Ledger)Byteball (GBYTE)이 그에 해당합니다. 특히 QRL의 경우 이름부터가 “양자 저항 거래 장부”란 뜻을 가졌지요. 양자 컴퓨터에 대해 특별히 안전하도록 설계된 완전히 새로운 방식의 블록체인 시스템을 사용합니다. 다른 암호화폐들이 사용하는 블록체인 시스템과 달리 QRL은 XMSS (eXtended Merkle Signature Scheme)라는 해시 기반 서명 체계를 사용하여 트랜잭션에 대해 사전 양자 보안 서명 (post-quantum secure signature)을 적용할 수 있습니다. 뿐만 아니라 QRL은 반복 되풀이 해시 체인 (iterative hash-chains)입증 가능한 해시 기반의 의사 난수 함수 (provably secure hash-based pseudo random number function)를 통해 전력 소모가 적은 POS (proof-of-stake) 알고리즘을 이용하므로 양자 컴퓨터에 취약한 기존 서명 방식을 이용하는 암호화폐들에 비해 25% 더 적은 크기의 서명을 운용하여 노트북과 같은 저전력 장치에서도 노드를 실행하면서도 최소한의 보안 요구 사항만으로 가장 안전하고 입증 가능한 실용적인 블록체인 시스템을 기반으로 하고 있습니다.

CH7-f.png

맺는 말

만약 일부 세력에서 양자 컴퓨터가 상용화되지 않은 시점에서 양자 컴퓨터를 독점 소유하여 이를 악용한다면 암호화폐는 물론 IT 기술을 기반으로 한 현대의 모든 산업 전반에 걸쳐 큰 위협이 됩니다. 나아가 군사, 금융, 행정 보안 분야 전체에 상상할 수 없는 악영향을 초래하겠죠. 하지만 양자 컴퓨터의 컴퓨팅 파워를 블록체인 시스템을 해킹하여 암호화폐 시장을 붕괴시키는데 사용할 수도 있지만 반대로 암호화폐를 채굴하고 블록체인 네트워크의 보안성을 강화하는데 사용될 수도 있습니다. 궁극적으로 양자 컴퓨터로부터 암호화폐를 보호하려면 기존의 암호화 프로토콜에 양자 컴퓨터에 맞설 수 있는 새로운 암호화 표준을 통합해야 합니다. 이미 수많은 암호화폐 개발자들이 양자 컴퓨터에 대비한 기술을 개발 중이며 기초적인 기술은 이미 존재합니다. 다만 그러한 기술이 암호화폐 사회 전반에 소개되고 통용되는 시간이 필요하겠죠. 아직 준비 할 시간은 충분합니다. 제 개인적인 의견이지만 양자 컴퓨터의 위협이 현실적으로 다가오더라도 블록체인 네트워크에서 양자 컴퓨터에 대응할 수 있는 새로운 적합한 표준을 채택하게 되리라 예상합니다.


오늘은 양자 컴퓨터와 블록체인 보안의 연관성에 대하여 다뤘습니다. 쉽고 재미있게 전달해드리고 싶은데 어려운 주제를 다루다보니 혹시나 내용을 벅차게 느끼고 계시지는 않을까 걱정이 앞섭니다. 댓글로 질문을 달아주시면 제가 설명할 수 있는 범위에서 최대한 쉽고 간결하게 답변해드리도록 하겠습니다. 드디어 대망의 마지막 편까지 도달했네요. 그동안 어렵고 긴 글을 재밌게 읽어주셔서 감사드립니다.


12787899-Quantum-Processor-Illustration-Quantum-Computing-Theme-3D-Rendered-Model-of-the-Processor-Supercondu-Stock-Illustration.jpg

지난 이야기



U5du7nLXDvWo8knCQ9fMLM8G7ypZgGq_1680x8400.png

대문을 제작해주신 @inhigh 님께 감사드립니다.


H2
H3
H4
3 columns
2 columns
1 column
45 Comments