몇 달에 한 번씩 “AI가 암호화를 뚫었다”는 자극적인 뉴스가 피드를 도배합니다. 이번 이야기의 주인공은 Claude Mythos입니다. 7월 28일, Anthropic은 이 거대 언어 모델이 암호 분석 분야에서 새로운 발견을 해냈다고 발표했습니다. 소식이 퍼지자 “AI 암호 해독 성공”, “암호학의 종말” 같은 헤드라인이 피드에 쏟아졌습니다. 8월 1일, 암호학자 JP Aumasson은 자신의 블로그에 《거대 언어 모델은 대칭 암호를 뚫을 수 없다(LLMs won’t break symmetric crypto)》라는 열기를 식히는 글을 올렸습니다. 이 글이 개발자 커뮤니티인 Lobsters에 공유되자 추천 8개, 댓글 0개를 기록했습니다. 전문 지식이 있는 사람들은 보고 나서 더 이상 논쟁할 가치가 없다고 판단한 것입니다.
그림: 원문 첨부 이미지, 피터르 브뤼헐 1세의 ‘반역 천사의 추락’ (부분). 출처: bfswa.blog
이번 뉴스에서 실제로 무슨 일이 일어났는지 정리해보겠습니다. Anthropic의 연구 성과는 두 가지입니다. 첫 번째는 HAWK에 대한 비밀키 복구 공격입니다. HAWK는 미국 국립표준기술연구소(NIST)의 양자후 암호화(Post-Quantum Cryptography) 표준화 공모에 참여 중인 디지털 서명 알고리즘으로, 미래 양자 컴퓨터 시대를 대비해 설계된 부류에 속합니다. 공격 결과 HAWK의 이론적 보안 수준이 128비트에서 108비트로 감소했지만, 테스트용으로 의도적으로 만든 단순화된 매개변수 버전을 제외하면 실용성이 전혀 없으며 실제 시스템 해독과는 거리가 떱니다. 두 번째는 AES-128에 대한 공격으로, 훨씬 더 경미합니다. 전체 10라운드 중 7라운드까지만 진입했습니다. AES는 전 세계의 은행 카드, 스마트폰, 웹사이트 등에서 가장 널리 쓰이는 암호화 표준입니다. 암호학계는 이 결과에 전혀 놀라지 않았습니다. 라운드 수를 줄이는 것은 자물쇠의 내부 장치 몇 개를 제거해놓고 열쇠를 따보라고 하는 것과 같습니다. 더 흥미로운 점은 ‘없었던 일’입니다. AI는 정식 버전의 10라운드 AES에 대한 어떠한 공격법도 찾지 못했습니다. 헤드라인에서 가장 무서웠던 부분은 역설적이게도 실제로 일어나지 않은 일이었습니다.
암호화는 도대체 무엇을 막고 있는가?
암호화는 정보에 자물쇠를 채워 열쇠 없이는 읽을 수 없게 만드는 것입니다. AES-128 자물쇠의 열쇠는 128자리 이진수로 이루어져 있으며, 가능한 조합의 수는 2의 128제곱으로 약 3.4 × 10^38개에 달합니다. 이 수치가 감이 오지 않는다면 이렇게 비교해볼 수 있습니다. 지구상에 존재하는 모래알의 수는 약 10^19개입니다. 모래알 하나하나를 다시 지구 하나로 바꾸고, 그 모든 지구의 모래알을 다시 다 세어야 겨우 이 수치에 근접합니다. 참고로 관측 가능한 우주의 전체 원자 수가 약 10^80개이며, 오늘날 널리 사용되는 대칭 암호인 AES-256(2의 256제곱)은 그에 비견되는 엄청난 규모를 자랑합니다. 엔지니어링 관점에서 볼 때, 자물쇠의 열쇠 조합이 우주에 담을 수 없을 정도로 많다면 ‘무차별 대입(brute force)‘이라는 단어는 공격 수단이 아니라 순수한 수학적 개념으로 퇴화합니다.
무차별 대입이란 열쇠를 하나씩 다 대입해보는 것입니다. 전 세계의 모든 컴퓨터가 연합해 초당 1조 개의 열쇠를 시도하더라도, 절반을 대입하는 데만 5×10^18년이 걸립니다. 이는 우주의 나이(138억 년)의 약 4억 배에 해당하는 시간입니다. 이 수치가 의미하는 바는 분명합니다. AES-128 해독의 진짜 난제는 시간 그 자체이며, 시간이라는 물리 법칙을 AI가 바꿀 수는 없습니다.
AI의 똑똑함이 여기서는 왜 통하지 않는가?
훌륭한 암호 알고리즘의 설계 목표는 출력된 암호문이 완전히 ‘무작위’처럼 보이게 만드는 것입니다. 암호문과 원래 내용 사이에는 파악할 수 있는 패턴이나 규칙이 존재하지 않습니다. 암호학에서는 이를 ‘의사 무작위성(pseudorandomness)‘이라고 부릅니다. 겉보기에는 무작위이지만 정교한 계산의 결과물이며, 그 어떤 통계적 검증으로도 헛점을 찾을 수 없습니다. AI가 아무리 강력하다 한들 패턴과 규칙을 학습해서 작동합니다. 대상 자체가 규칙이 없도록 의도적으로 설계되었다면, 아무리 똑똑한 AI라도 손을 대서 파고들 여지가 없습니다.
비유하자면 트랙터를 유입된 늪에 밀어 넣고 그 위에 시멘트를 부어 굳혀버리는 것과 같습니다. 대칭 암호화는 데이터를 반복해서 치환하고, 이동시키고, 섞는 과정을 10라운드 동안 되풀이하며, 라운드가 진행될수록 복원은 기하급수적으로 어려워집니다. 암호학자 Matthew Green의 표현을 빌리면, 이 알고리즘의 특징은 “무질서하면서도 견고함(messy and strong)“입니다. 구조나 대칭성, 규칙성은 공격자에게 힌트가 되기 때문에 무질서하게 설계되었고, 수십 년간 암호학자들이 온갖 수단으로 공격해왔기 때문에 이미 뚫릴 만한 구멍은 다 메워져서 견고합니다. 《Serious Cryptography》의 저자인 Aumasson은 원문에서 BLAKE3 같은 알고리즘은 본질적으로 XOR, 더하기, 비트 회전 연산의 긴 연쇄에 불과하며, 더 단순한 설명 방식이 존재하지 않는다고 설명합니다. 이것이 바로 설계자가 원했던 바입니다.
그림: AES 1라운드 암호화의 4단계 과정: SubBytes, ShiftRows, MixColumns, AddRoundKey. 정식 버전은 이를 10라운드 반복한다. 출처: Wikipedia
Anthropic 스스로도 같은 신중한 입장을 취하고 있습니다. 공격 관련 논문 표현에서도 “AI 보조 암호학 연구를 계속 탐구하는 것은 흥미롭다”는 정제된 표현을 사용했습니다. 또한 거대 언어 모델의 암호 분석 능력을 평가하기 위해 CryptanalysisBench라는 테스트 세트도 만들었습니다. 라운드가 줄어든 장난감 모델을 공격하는 것과 실제 운영 환경의 완성된 알고리즘을 무너뜨리는 것 사이에는 몇 단계의 엄청난 격차가 존재합니다.
진짜 걱정해야 할 위협: 자극적인 뉴스 제목과는 반대 순서
첫째, 취약한 비밀번호. 123456, 생일, 전화번호 같은 것들은 AI가 필요조차 없습니다. 기존의 사전 대입 공격으로도 즉시 뚫립니다. 여기서 AI의 역할은 사기꾼이 낚시성 문구를 더 사람답게 쓰도록 돕거나 자주 쓰이는 비밀번호의 무차별 대입을 가속화하는 것뿐입니다. 문제의 근본 원인은 문에 열쇠를 걸어놓았다는 점에 있으며 자물쇠 자체의 결함이 아닙니다.
둘째, 피싱. 은행, 고객센터, 택배 등을 가장한 링크와 문자로 사용자 스스로 비밀번호를 넘겨주도록 속이는 수법입니다. 계정 도용의 대부분은 암호화 자체와 아무런 관련이 없습니다. 비밀번호를 속아서 빼앗겼거나, 추측당했거나, 외부에서 유출된 것입니다. AI가 피싱을 더 정교하게 만든다는 점은 실질적인 위협이지만, 이는 ‘사람’을 공격하는 것이며 암호학은 이 과정에 개입할 여지가 없습니다.
셋째, 웹사이트 데이터베이스 유출. 특정 웹사이트에서 사용하는 비밀번호가 은행 비밀번호와 같다면, 해당 사이트가 유출되었을 때 해커는 그 열쇠를 들고 다른 서비스에 접속을 시도합니다. 이 문제를 해결하는 데 더 복잡한 암호기술은 필요하지 않습니다. 사이트마다 다른 비밀번호를 사용하거나 비밀번호 관리 프로그램을 사용하면 해결됩니다.
넷째, 장기적 위협: 양자 컴퓨터. 이는 접속 핸드셰이크 단계에서 사용되는 RSA 같은 이전 형태의 공개키 암호화를 겨냥합니다. RSA는 ‘큰 수의 소인수분해가 어렵다’는 수학적 가정에 의존하며, 양자 컴퓨터의 Shor 알고리즘은 이론적으로 이를 대폭 가속할 수 있습니다. 최신 연구에 따르면 RSA-2048을 해독하려면 최소 수십만 개 규모의 고품질 물리적 큐비트가 필요한데, 오늘날의 기술 수준과는 아직 거리가 떱니다. 또한 업계는 이미 양자후 암호화 전환을 시작했으며, HAWK 같은 후보안도 이를 위해 준비된 것입니다. AES 같은 대칭 암호화에 대해 양자 컴퓨터가 제공하는 가속은 ‘제곱근 가속(Grover 알고리즘)‘에 불과해 128비트 키의 보안성을 실질적 64비트 수준으로 낮추는 정도입니다(AES-256의 경우 여전히 천문학적인 보안성을 유지합니다). 엔지니어링 판단 관점에서 양자 위협은 10년 단위의 긴 호흡으로 전개되며 당장 내일 아침 찾아오는 위협이 아닙니다.
그림: 암호학자가 그린 유명한 만화: 복잡해 보이는 ‘Tr0ub4dor&3’의 엔트로피는 28비트에 불과하지만, 평범한 단어 4개로 이뤄진 문구는 44비트에 달한다. 출처: xkcd
처음 이야기했던 뉴스로 돌아가 보겠습니다. Aumasson은 글의 마지막에서 직관에 반하는 조언을 남겼습니다. AI가 암호를 해독할까 봐 걱정하기보다는, 새롭게 제출된 양자후 암호화 제안서의 취약점을 AI가 검증하도록 하라는 것입니다. 그가 거대 언어 모델에게 학술 논문의 보안성 증명 부분을 검토하게 했을 때 실제로 오류를 찾아내기도 했습니다. 이 아이디어는 깊이 생각해볼 가치가 있습니다. AI의 참된 가치는 운에 맡겨 열쇠를 무차별적으로 찍어 맞추는 데 있는 것이 아니라, 아직 미완성인 자물쇠를 고치도록 인간을 돕는 데 있습니다. 20년 넘게 사용되어 온 견고한 자물쇠의 열쇠를 모두 대입해보는 것만으로도 우주 나이의 4억 배라는 시간이 필요합니다. AI가 아무리 똑똑해지더라도 시간보다 빠를 수는 없습니다.
참고 링크:
- bfswa.blog: LLMs won’t break symmetric crypto
- Lobsters 토론 (s/tstkqk/llms_won_t_break_symmetric_crypto)
- Wikipedia: Advanced Encryption Standard
- xkcd: Password Strength
- Ubiq Security: 128 or 256 bit Encryption: Which Should I Use?