alltools.one
Security
2026-02-25
9 min
alltools.one Team
passwordspassphrasessecurityencryptionauthentication

패스프레이즈 vs 비밀번호 — 랜덤 단어가 복잡한 문자를 이기는 이유

아마도 P@$$w0rd123과 같은 비밀번호를 만들라는 말을 들어봤을 것입니다 — 대문자, 소문자, 숫자, 기호, 모든 것. 불편한 진실이 있습니다: 그 비밀번호는 끔찍합니다. 크래킹 도구가 몇 초 만에 악용하는 예측 가능한 치환 패턴을 따릅니다. 반면 나무-양자-숟가락-속도와 같은 것은 단순해 보이지만 해독하기가 몇 배나 더 어렵습니다.

그 이유를 분석해 봅시다.

전통적인 비밀번호의 문제

대부분의 사람들은 "복잡한" 비밀번호를 만들어야 할 때 같은 일을 합니다:

  • 일반적인 단어로 시작: password, monkey, dragon
  • 첫 글자를 대문자로: Password
  • 문자를 기호로 치환: P@ssword
  • 숫자 추가: P@ssword123
  • 끝에 기호 추가: P@ssword123!

크래킹 도구는 이것을 알고 있습니다. 모든 주요 비밀번호 크래킹 사전에는 이러한 정확한 치환 규칙이 포함되어 있습니다. a@로, o0으로, e3으로 대체하는 것 — 이것들은 가장 먼저 테스트되는 변환 중 일부입니다. "복잡한" 비밀번호를 생각하는 데 30초가 걸렸을 수 있지만, 자동화된 공격에는 밀리초 만에 함락됩니다.

근본적인 문제: 인간은 무작위적이 되는 것에 매우 서툽니다. 의미 있는 단어를 선택하고, 예측 가능한 패턴을 따르며, 같은 트릭을 재사용합니다. 비밀번호 복잡성 규칙은 이를 보상하려고 하지만 거짓된 보안감을 만들어냅니다.

비밀번호를 진정으로 강하게 만드는 것: 엔트로피

비밀번호 강도는 엔트로피 — 무작위성의 비트로 측정됩니다. 각 비트는 공격자가 시도해야 하는 가능성의 수를 두 배로 만듭니다. 공식은 간단합니다:

엔트로피 = 길이 × log₂(풀 크기)

95개 인쇄 가능한 ASCII 문자를 모두 사용하는 랜덤 8자 비밀번호의 경우:

8 × log₂(95) = 8 × 6.57 ≈ 52.6비트

괜찮게 들리지만, 함정이 있습니다 — 모든 문자가 완전히 무작위로 선택된 경우에만 적용됩니다. 사람이 P@ssw0rd를 선택하면 선택이 예측 가능하기 때문에 실제 엔트로피는 훨씬 낮습니다.

이렇게 생각하세요: 엔트로피는 공격자에게 필요한 추측 횟수를 측정합니다. 100만 가지 가능성의 풀에서 선택하면 약 20비트입니다. 1조 가지 가능성에서 선택하면 약 40비트입니다. 추가 10비트마다 필요한 추측 횟수가 약 1,000배 증가합니다.

패스프레이즈: 구성 블록으로서의 랜덤 단어

패스프레이즈는 완전히 다른 접근 방식을 취합니다. 랜덤 문자 대신 랜덤 단어를 연결합니다:

timber quantum spoon velocity

각 단어는 큰 단어 목록에서 무작위로 선택됩니다. 단어 목록에 2,048개의 단어가 있으면 각 단어는 11비트의 엔트로피를 제공합니다 (log₂(2048) = 11). 4개의 랜덤 단어로:

4 × 11 = 44비트

7,776개 단어의 더 큰 단어 목록(표준 Diceware 목록)에서는 각 단어가 12.9비트를 제공합니다:

4 × 12.9 = 51.7비트
6 × 12.9 = 77.5비트

핵심 장점: 패스프레이즈는 높은 엔트로피를 유지하면서 기억하고 입력하기 쉽습니다. 나무, 양자 입자, 숟가락, 속도를 상상할 수 있습니다. 그 정신적 이미지는 기억에 남습니다. xK#9mP!2qL로 그렇게 해보세요.

XKCD의 통찰

웹코믹 XKCD는 스트립 #936에서 이 개념을 유명하게 설명했습니다. 주장: "correct horse battery staple"과 같은 4단어 패스프레이즈는 약 44비트의 엔트로피(~2,048단어 목록 가정)를 가지며 기억하기가 매우 쉽습니다. Tr0ub4dor&3과 같은 "복잡한" 비밀번호는 입력하고 기억하기 더 어려움에도 불구하고 더 적은 엔트로피를 가집니다.

이 만화는 보안 연구자들이 수년간 말해온 중요한 점을 만들었습니다: 비밀번호 복잡성 규칙은 잘못된 것을 최적화합니다. 비밀번호를 인간에게 어렵게 만들고 컴퓨터에게는 겨우 조금 더 어렵게 만들 뿐입니다.

그렇긴 하지만 XKCD 예제는 2011년 이후 널리 논의되었고 일부 구체적인 숫자는 논쟁이 되었습니다. 핵심 원리는 건전합니다: 무작위성과 길이가 복잡성과 교묘함을 이깁니다.

다이스웨어 방법

다이스웨어는 패스프레이즈 생성의 최고 표준입니다. 작동 방식:

  1. 단어 목록을 구합니다 — 클래식 Diceware 목록에는 7,776개의 단어가 포함되어 있으며, 각각 5자리 숫자(11111~66666)에 매핑됩니다
  2. 각 단어에 대해 주사위 5개를 굴립니다 (또는 주사위 하나를 5번 굴립니다)
  3. 결과 숫자를 단어 목록에서 찾습니다
  4. 필요한 각 단어에 대해 반복합니다 (최소 4개, 가급적 6개)

예를 들어, 4-2-5-3-1을 굴리면 "연필"이 나올 수 있습니다. 1-6-3-4-2를 굴리면 "닻"이 나올 수 있습니다.

왜 물리적 주사위인가요? 소프트웨어에 대한 신뢰가 필요 없는 진정한 랜덤 소스이기 때문입니다. 물론, 암호학적으로 안전한 난수 생성기(비밀번호 생성기에서 사용하는 Web Crypto API 등)도 동일하게 잘 작동하며 훨씬 더 편리합니다.

Diceware의 보안은 간단한 수학적 사실에 의존합니다: Diceware를 사용했다는 것과 정확한 단어 목록을 아는 공격자도 7,776^n 가지 가능성에 직면합니다(n은 단어 수). 이것이 은폐가 아닌 엔트로피를 통한 보안의 정의입니다.

엔트로피 비교: 숫자는 거짓말하지 않는다

일반적인 비밀번호 전략을 직접 비교해 봅시다:

전략예시엔트로피필요한 추측 횟수
8자 랜덤 (소문자)mqxhplvt37.6비트~1,370억
8자 랜덤 (전체 ASCII)kX#9mP!252.6비트~6경
4단어 패스프레이즈 (2,048단어)timber-quantum-spoon-velocity44비트~17조
4단어 패스프레이즈 (7,776단어)cleft-cam-niche-turret51.7비트~3.7경
6단어 패스프레이즈 (7,776단어)cleft-cam-niche-turret-plod-anvil77.5비트~2.2 × 10²³
12자 랜덤 (전체 ASCII)Bx!4pQm#9kLz78.8비트~4.7 × 10²³

결론: 6단어 Diceware 패스프레이즈는 12자 완전 랜덤 비밀번호와 대략 동등한 강도이지만 기억하고 입력하기가 훨씬 쉽습니다.

초당 10억 번의 추측(빠른 해시에 대한 현실적인 오프라인 공격 속도)에서 52비트 비밀번호는 약 52일 버팁니다. 77비트 패스프레이즈는 약 70억 년 버팁니다. 이것은 공격자에게 사소한 불편과 우주의 열사 사이의 차이입니다.

비밀번호 vs 패스프레이즈 사용 시기

어느 접근 방식도 보편적으로 더 낫지 않습니다. 각각이 의미 있는 경우:

랜덤 문자 비밀번호를 사용할 때:

  • 비밀번호 관리자가 생성하고 저장하는 경우 — 입력하거나 기억할 필요가 없습니다. 최대 엔트로피를 위해 20자 이상을 사용하세요.
  • 길이 제한이 있는 경우 — 일부 레거시 시스템은 비밀번호를 16자 또는 8자로 제한합니다. 랜덤 문자는 문자당 더 많은 엔트로피를 담습니다.
  • 기계 간 인증 — API 키, 토큰, 시크릿은 긴 랜덤 문자열이어야 합니다.

패스프레이즈를 사용할 때:

  • 암기해야 하는 경우 — 비밀번호 관리자의 마스터 비밀번호, 디스크 암호화 패스프레이즈, 기기 잠금 해제 코드.
  • 자주 입력하는 경우 — 패스프레이즈는 랜덤 문자열보다 입력이 빠르며, 특히 모바일에서 그렇습니다.
  • 구두로 공유해야 하는 경우 — 전화로 "timber quantum spoon velocity"라고 말하는 것이 xK#9mP!2qL을 철자하는 것보다 훨씬 쉽습니다.
  • 오프라인 보안이 필요한 경우 — 디스크 암호화와 암호화폐 지갑은 고엔트로피 패스프레이즈의 혜택을 받습니다.

대부분의 사람에게 최적: 비밀번호 관리자의 마스터 비밀번호로 6단어 패스프레이즈, 나머지 모든 것에는 20자 이상의 랜덤 비밀번호.

패스프레이즈 모범 사례

모든 패스프레이즈가 동등하지는 않습니다. 다음 규칙을 따르세요:

1. 진정으로 랜덤한 단어를 사용하세요

단어는 반드시 무작위로 선택되어야 하며, 직접 선택하면 안 됩니다. "의미가 통하는" 단어나 문장을 형성하는 단어를 선택하는 순간, 엔트로피 계산이 무너집니다. "나는 강아지가 너무 좋아"는 문장이지 패스프레이즈가 아닙니다 — 그리고 쉽게 해독됩니다.

2. 최소 4단어, 가급적 6단어

7,776단어 목록에서 4단어는 약 52비트 — 속도 제한이 있는 온라인 계정에 적합합니다. 6단어는 약 78비트 — 오프라인 암호화 데이터 보호에 적합합니다. 고보안 사용 사례에는 7개 또는 8개로 가세요.

3. 선택사항: 숫자나 기호 추가

단어 사이에 랜덤 숫자나 기호를 삽입하면 몇 비트가 추가되고 순수 사전 공격을 무력화합니다:

timber-quantum-7-spoon-velocity
timber!quantum!spoon!velocity

6단어 이상에서는 엄격히 필요하지 않지만 저비용 개선입니다.

4. 구분자를 사용하세요

단어 사이의 하이픈, 공백 또는 마침표는 보안을 줄이지 않으면서 가독성을 향상시킵니다:

timber-quantum-spoon-velocity
timber quantum spoon velocity
timber.quantum.spoon.velocity

일관된 구분자라면 어떤 것이든 작동합니다. 가장 입력하기 쉬운 것을 선택하세요.

일반적인 패스프레이즈 실수

노래 가사나 인용문 사용

"사느냐 죽느냐 그것이 문제로다"는 패스프레이즈가 아닙니다 — 유명한 인용문입니다. 공격자들은 문학, 노래, 영화, 종교 텍스트에서 일반적인 구문 목록을 유지합니다. 인식 가능한 구문은 모두 취약점입니다.

관련된 단어 선택

"사과 바나나 체리 포도"는 랜덤 단어를 사용하지만 모두 과일입니다. 이 상관관계는 공격자가 의미적 범주를 타겟팅할 수 있기 때문에 유효 엔트로피를 극적으로 줄입니다.

너무 적은 단어 사용

어떤 목록에서든 2~3개 단어는 불충분합니다. 7,776단어 목록에서 3단어는 38.8비트에 불과 — GPU 클러스터로 수 시간 만에 해독 가능합니다.

자동완성에 의존

첫 번째 단어를 입력하고 전화기가 다음 단어를 제안하게 하면, 주사위의 무작위성이 아닌 언어 모델의 예측성으로 텍스트를 생성하는 것입니다. 항상 적절한 랜덤 생성기를 사용하세요.

우리 도구의 도움

비밀번호 생성기에는 엄선된 2,048단어 목록을 기반으로 한 전용 패스프레이즈 모드가 포함되어 있습니다. 모든 단어는 Web Crypto API — 보안 전문가가 사용하는 것과 같은 암호학적 난수 생성기를 사용하여 선택됩니다. 단어 수, 구분 문자, 숫자 포함 또는 단어 대문자화 여부를 구성할 수 있습니다.

모든 생성은 브라우저에서 완전히 이루어집니다. 단어가 서버로 전송되지 않고, 패스프레이즈가 기록되지 않으며, 도구는 로딩 후 오프라인으로 작동합니다. 이것은 마스터 비밀번호와 암호화 패스프레이즈를 생성하는 데 중요합니다 — 가장 중요한 비밀을 서버에 맡겨서는 안 됩니다.

자주 묻는 질문

Diceware 방법을 사용한다는 것을 알아도 안전한가요?

네. Diceware의 보안은 방법의 비밀이 아닌 엔트로피에 의존합니다. 공격자가 정확한 단어 목록과 단어 수를 알아도 7,776^n 가능한 조합에 직면합니다. 6단어로는 2.2 × 10²³ 이상의 가능성이 있습니다.

양자 컴퓨터가 패스프레이즈를 깰 수 있나요?

그로버 알고리즘은 이론적으로 비트 강도를 절반으로 줄입니다 (77비트가 ~39비트 유효). 이는 6단어 패스프레이즈가 양자 저항을 위해 12단어가 되어야 함을 의미합니다. 그러나 이것이 가능한 실용적인 대규모 양자 컴퓨터는 아직 사용할 수 없습니다. 오늘 8단어를 사용하면 합리적인 안전 마진이 제공됩니다.

패스프레이즈를 교체해야 하나요?

침해가 의심되는 경우에만. NIST 가이드라인(SP 800-63B)은 시간이 지남에 따라 더 약한 비밀번호로 이어지므로 강제 주기적 비밀번호 교체에 명시적으로 반대합니다. 서비스가 침해되거나 누군가와 공유한 경우 패스프레이즈를 변경하세요.

어떤 크기의 단어 목록을 사용해야 하나요?

클수록 좋지만 수확 체감이 있습니다. 표준 Diceware 목록(7,776단어)은 잘 테스트되고 널리 권장됩니다. 우리 도구는 기억하기 쉽도록 최적화된 2,048단어 목록을 사용합니다 — 각 단어는 일반적이고, 구별되며, 철자하기 쉽습니다. 2,048단어로는 7,776단어 목록의 엔트로피를 맞추기 위해 약 1단어 추가가 필요합니다.

관련 리소스


🛠️ 지금 패스프레이즈 생성: 비밀번호 생성기 — 100% 무료, 모든 것을 브라우저에서 처리. 데이터 업로드 없음. 엄선된 2,048단어 목록으로 패스프레이즈 모드를 사용해 보세요.


Published on 2026-02-25
Passphrases vs Passwords — Why Words Beat Characters | alltools.one