0Pricing
Cryptology Academy · 강의

XOR만으로는 안전하지 않은 이유

취약한 XOR 암호를 대상으로 한 키 재사용 공격과 평문 추정 공격을 배웁니다.

XOR만으로는 안전하지 않은 이유은(는) CoddyKit의 무료 Cryptology Academy 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cryptology Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

환영합니다

이 수업에서는 이론을 넘어 키 재사용, 알려진 평문, 단서 문구 대입을 이용해 XOR 암호화를 공격하는 구체적인 방법을 보여드립니다.

취약한 키 재사용 상황

웹 앱이 같은 XOR 키로 세션 토큰을 암호화한다고 가정해 보겠습니다. 공격자가 암호화된 토큰 두 개를 가로챕니다. 두 토큰을 XOR하면 키가 상쇄됩니다: C1^C2 = P1^P2.

알려진 평문 공격

P1을 알고 있다면 K = P1 XOR C1입니다. 이제 같은 K로 암호화된 다른 모든 암호문을 복호화할 수 있습니다: Pi = Ci XOR K. 평문 하나만 알려져도 전체 시스템이 무너집니다.

단서 문구 대입 1단계

P1을 모르는 경우 'the '와 같은 흔한 영어 구문을 단서 문구로 추측합니다. 각 위치에서 단서 문구와 P1^P2를 XOR합니다. P2에서 읽을 수 있는 텍스트가 나타나면 단서 문구가 해당 위치에 있었다는 뜻입니다.

단서 문구 대입 2단계

드러난 P2 텍스트를 더 길어진 새로운 단서 문구로 사용해 XOR 스트림을 따라 더 이동합니다. 발견한 각 단어가 다음 단계를 가능하게 합니다. 몇 분 안에 전체 메시지를 복구하는 경우도 많습니다.

통계적 키 복구

같은 키를 사용하는 암호문이 많을 때 XOR 결과가 0인 위치에서는 해당 위치의 Pi = Pj가 성립합니다. 수십 개의 메시지를 정렬하면 키 바이트가 하나씩 드러납니다.

짧은 반복 XOR 키

메시지보다 짧은 키는 반복됩니다. 이를 Vigenère 암호처럼 처리합니다. 먼저 IoC를 사용해 키 길이를 알아낸 다음, 각 위치를 독립적으로 빈도 분석합니다. 몇 초 안에 해독됩니다.

선택 평문 공격

공격자가 임의의 평문을 암호화할 수 있다면 P=0x00...00을 제출합니다. 그러면 C가 키 자체가 됩니다. 또는 알려진 값을 P로 제출하면 어느 위치에서든 K = P XOR C를 알아낼 수 있습니다.

비트 뒤집기 공격

MAC가 없는 XOR 암호는 비트 뒤집기를 허용합니다. 암호문에서 i번째 비트를 뒤집으면 → 평문의 i번째 비트가 뒤집힙니다. 공격자는 키를 몰라도 암호화된 데이터를 수정할 수 있습니다.

AES만으로는 충분하지 않은 이유

AES의 ECB 모드는 결정적입니다. 같은 블록은 항상 같은 결과로 암호화됩니다. 인증이 없는 CTR 모드에서는 비트 뒤집기가 가능합니다. 항상 인증된 암호화(AES-GCM)를 사용해야 합니다.

방어: 인증된 암호화

인증된 암호화(AE)는 암호화와 MAC를 결합합니다. 암호문이 수정되면 복호화하기 전에 MAC 검사가 실패합니다. AES-GCM과 같은 AEAD 방식은 비트 뒤집기를 방지합니다.

확인 문제

공격자가 같은 키를 사용해 XOR로 암호화된 메시지 두 개를 가지고 있습니다. 두 암호문을 XOR하면 무엇이 드러납니까?

복습

적절한 키 관리와 인증이 없으면 XOR가 어떻게 실패하는지 살펴보았습니다. 다음에는 AES와 현대의 스트림 암호에서 XOR가 맡는 올바른 역할을 알아봅니다.

자주 묻는 질문

“XOR만으로는 안전하지 않은 이유” 강의는 무료인가요?

네 — “XOR만으로는 안전하지 않은 이유” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cryptology Academy 강의 전체를 잠금 해제할 수 있습니다. Cryptology Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“XOR만으로는 안전하지 않은 이유”에서 뭘 배우나요?

취약한 XOR 암호를 대상으로 한 키 재사용 공격과 평문 추정 공격을 배웁니다. 브라우저에서 직접 실행하는 실습 코드로 Cryptology Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Cryptology Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Cryptology Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.

“XOR만으로는 안전하지 않은 이유” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Cryptology Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Cryptology Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 비트 단위 연산 복습
  2. XOR 암호화 및 일회용 패드
  3. XOR만으로는 안전하지 않은 이유
  4. AES 및 스트림 암호 속 XOR
← Cryptology Academy(으)로 돌아가기