본문으로 건너뛰기
한번에

안전한 비밀번호 만드는 법

작성

"123456", "password", "qwerty" — 매년 가장 많이 쓰이는 비밀번호 목록의 상위권입니다. 이런 비밀번호는 해커가 1초도 안 걸려 뚫을 수 있습니다. 이 글에서는 안전한 비밀번호의 기준부터 실천 방법까지 체계적으로 안내합니다.

비밀번호 강도의 핵심: 길이와 복잡성

비밀번호의 강도는 길이와 문자 종류의 다양성으로 결정됩니다. 길이가 1자 늘어날 때마다 경우의 수가 기하급수적으로 증가합니다.

문자 종류사용 가능 문자 수예시
숫자만10개0~9
소문자만26개a~z
소문자 + 대문자52개a~z, A~Z
소문자 + 대문자 + 숫자62개a~z, A~Z, 0~9
+ 특수문자95개+!@#$%^&* 등 포함

비밀번호 길이별 해킹 소요 시간

아래 표는 초당 100억 회 해시를 계산할 수 있는 GPU 기준으로, 무차별 대입(brute-force) 공격에 걸리는 추정 시간입니다.

길이숫자만소문자대소문자+숫자모든 문자
6자즉시즉시즉시즉시
8자즉시수 초수 분수 시간
10자즉시수 시간수 일수 개월
12자수 초수 주수 년수백 년
14자수 분수 년수천 년수백만 년
16자수 시간수백 년수백만 년수조 년

솔트(salt) 적용 및 느린 해시 함수(bcrypt 등) 사용 시 실제 소요 시간은 훨씬 길어집니다.

안전한 비밀번호 만드는 규칙

  1. 최소 12자 이상으로 만드세요. 16자 이상이면 더 좋습니다. 길이가 보안에서 가장 중요한 요소입니다.
  2. 대문자, 소문자, 숫자, 특수문자를 섞어 사용하세요. 다양한 문자를 포함하면 경우의 수가 크게 늘어납니다.
  3. 사이트마다 다른 비밀번호를 사용하세요. 하나가 유출되어도 다른 계정은 안전합니다.
  4. 개인 정보를 넣지 마세요. 이름, 생일, 전화번호, 반려동물 이름 등은 소셜 미디어에서 쉽게 수집됩니다.
  5. 사전에 있는 단어를 그대로 쓰지 마세요. "dictionary attack"으로 흔한 단어·조합을 자동 시도합니다.

패스프레이즈: 기억하기 쉬운 강력한 비밀번호

여러 단어를 조합한 패스프레이즈(passphrase)는 길이가 길면서도 기억하기 쉽습니다. 예를 들어 "correct-horse-battery-staple"처럼 무작위 단어 4개를 연결하면 28자로 매우 강력하면서도 외울 수 있습니다.

  • 단어 사이에 하이픈(-), 마침표(.) 등 구분자를 넣으면 더 안전합니다.
  • 일부 글자를 숫자나 특수문자로 바꾸면 보안이 강화됩니다 (예: a→@, e→3).
  • 가사, 유명한 문장 등 유추 가능한 구절은 피하세요.

2단계 인증(2FA) 설정하기

아무리 강력한 비밀번호도 유출될 수 있습니다. 2단계 인증(Two-Factor Authentication)을 설정하면 비밀번호가 유출되더라도 추가 인증 단계가 계정을 보호합니다.

인증 앱 (TOTP)
Google Authenticator, Microsoft Authenticator 등의 앱이 30초마다 새 코드를 생성합니다. SMS보다 안전하며, 대부분의 주요 서비스에서 지원합니다.
보안 키 (FIDO2/WebAuthn)
YubiKey 같은 물리적 보안 키를 USB에 꽂거나 NFC로 인증합니다. 피싱에 가장 강한 방식이며, 기업 계정 보호에 특히 권장됩니다.
SMS 인증
문자 메시지로 인증 코드를 받는 방식입니다. 설정이 간편하지만, SIM 스와핑 등의 공격에 취약할 수 있어 가능하면 인증 앱을 권장합니다.

비밀번호 관리자 활용

사이트마다 다른 강력한 비밀번호를 모두 기억하기는 불가능합니다.비밀번호 관리자는 모든 비밀번호를 안전하게 저장하고, 자동으로 입력해 주는 도구입니다.

  • 모든 비밀번호를 마스터 비밀번호 하나로 암호화하여 보관합니다.
  • 사이트별로 랜덤 비밀번호를 자동 생성할 수 있습니다.
  • 브라우저 확장, 모바일 앱으로 자동 입력을 지원합니다.
  • 대표적인 관리자: Bitwarden(오픈소스/무료), 1Password, LastPass, Dashlane 등.

마스터 비밀번호만큼은 가장 강력하게 설정하고, 절대 다른 곳에 재사용하지 마세요.

유출 여부 확인하기

사용 중인 이메일이나 비밀번호가 이미 유출되었는지 확인할 수 있습니다. Have I Been Pwned(haveibeenpwned.com) 같은 서비스에서 이메일을 입력하면 과거 데이터 유출 사고에 포함되었는지 알려줍니다. 유출이 확인되면 해당 비밀번호를 즉시 변경하세요.

안전한 비밀번호 생성기 활용하기

직접 랜덤 비밀번호를 만들기 어렵다면, 비밀번호 생성기를 활용하세요. 길이와 포함할 문자 종류를 설정하면 예측 불가능한 안전한 비밀번호가 자동으로 만들어집니다.

비밀번호 생성기 바로가기 →

자주 묻는 질문

비밀번호는 얼마나 자주 바꿔야 하나요?

과거에는 90일마다 변경을 권장했지만, 최신 보안 가이드라인(NIST SP 800-63B)에서는 비밀번호 유출이 확인되지 않은 한 주기적 변경을 강제하지 않습니다. 대신 충분히 길고 고유한 비밀번호를 사용하고, 2단계 인증을 활성화하는 것을 권장합니다.

비밀번호에 특수문자를 꼭 넣어야 하나요?

특수문자를 넣으면 경우의 수가 늘어나 보안이 강화됩니다. 하지만 짧은 비밀번호에 특수문자를 넣는 것보다, 긴 비밀번호(16자 이상)를 만드는 것이 더 효과적입니다. 길이가 보안의 가장 중요한 요소입니다.

같은 비밀번호를 여러 사이트에 쓰면 왜 위험한가요?

한 사이트에서 비밀번호가 유출되면, 공격자가 같은 이메일·비밀번호 조합으로 다른 사이트에 로그인을 시도합니다(크리덴셜 스터핑). 사이트마다 고유한 비밀번호를 사용하면 피해를 해당 사이트로 한정할 수 있습니다.

비밀번호 관리자를 해킹당하면 어떻게 되나요?

신뢰할 수 있는 비밀번호 관리자는 마스터 비밀번호로 모든 데이터를 암호화합니다. 서버가 해킹당해도 마스터 비밀번호 없이는 데이터를 복호화할 수 없습니다. 마스터 비밀번호를 충분히 강력하게 설정하고 2단계 인증을 활성화하세요.

PIN 번호도 비밀번호인가요?

PIN(Personal Identification Number)은 보통 4~6자리 숫자로, 온라인 비밀번호보다 경우의 수가 훨씬 적습니다. 기기 잠금이나 결제 인증에서 보조 수단으로 쓰이지만, 온라인 계정 보호용으로는 부족합니다.