안전한 비밀번호 만드는 법

무작위 비밀번호부터 외우기 쉬운 단어 조합까지, 안전하면서 실제로 쓸 수 있는 비밀번호를 만드는 방법이에요.

읽는 데 4분 · 업데이트 2026-10-04

새 계정을 만들 때마다 "비밀번호1234" 같은 걸 쓰고 있다면, 그 계정은 유출 사고가 났을 때 가장 먼저 뚫릴 가능성이 높아요. 안전한 비밀번호는 복잡해 보이지만, 좋은 생성기를 쓰면 몇 초면 충분히 강력한 비밀번호를 만들 수 있어요.

왜 비밀번호마다 따로 만들어야 하나요

한 사이트에서 유출된 비밀번호를 그대로 다른 사이트에 쓰고 있다면, 그 사이트 하나가 뚫렸을 때 나머지 모든 계정이 같이 위험해져요. 이걸 '크리덴셜 스터핑'이라고 부르는데, 실제로 유출 사고의 상당수가 이런 방식으로 2차 피해를 만들어요. 계정마다 서로 다른 비밀번호를 쓰는 것만으로도 이 위험을 대부분 없앨 수 있어요.

광고 (guide-mid)

다고침으로 비밀번호 만드는 법

  1. 비밀번호 생성기 도구를 열어요.
  2. 무작위 비밀번호와 단어 조합(패스프레이즈) 중 원하는 방식을 선택해요.
  3. 무작위 방식이면 길이와 대문자·소문자·숫자·특수문자 포함 여부를, 단어 조합이면 단어 개수를 조절해요.
  4. 헷갈리는 문자(0과 O, 1과 l 등) 제외 옵션을 켜면 손으로 옮겨 적을 때 덜 헷갈려요.
  5. 만들어진 비밀번호를 복사하고, 강도 표시와 유출 확인 결과를 참고해요.

무작위 비밀번호 vs 단어 조합, 뭐가 다른가요

무작위 비밀번호는 대문자·소문자·숫자·특수문자를 뒤섞어서 짧아도 강력하지만, 사람이 외우기는 거의 불가능해요. 비밀번호 관리자에 저장해두고 쓸 계정에 적합해요. 단어 조합(패스프레이즈)은 "가방-강물-노을-대추-별빛" 처럼 관련 없는 단어 여러 개를 이어 붙이는 방식이에요. 단어 개수가 충분하면(5~6개 이상) 무작위 비밀번호만큼 안전하면서도 사람이 기억하거나 손으로 입력하기 훨씬 쉬워요. 이 도구는 한글 단어를 두벌식 자판 그대로 옮긴 영문(예: 사랑 → tkfkd) 형태로도 만들 수 있어서, 한글 키보드 레이아웃에 익숙한 사람이 외우기에 더 편해요.

길이와 문자 종류가 왜 중요한가요

비밀번호를 무작위로 추측하거나 전체를 다 시도해보는 공격(무차별 대입 공격)에 걸리는 시간은 비밀번호의 길이와 사용 가능한 문자 종류 수에 따라 기하급수적으로 늘어나요. 즉 글자 하나를 늘리는 것이 특수문자 하나를 추가하는 것보다 전체 조합 수를 늘리는 데 더 효과적인 경우가 많아요. 일반적으로 중요한 계정은 최소 12자 이상, 가능하면 16자 이상을 권장해요.

유출 여부 확인 기능이란

이 도구는 선택적으로 Have I Been Pwned의 'Pwned Passwords' API를 이용해 지금 만든 비밀번호가 이미 알려진 유출 목록에 있는지 확인할 수 있어요. 이때 실제 비밀번호를 그대로 보내는 게 아니라, 비밀번호의 SHA-1 해시값 앞 5자리만 서버로 보내고(k-익명성 방식), 나머지 비교는 전부 이 브라우저 안에서 이루어져요. 그래서 서버 쪽에서도 어떤 비밀번호인지 알아낼 수 없어요.

개인정보는 안전할까요

네. 비밀번호 생성 자체는 100% 이 브라우저 안에서 이루어지고, 서버로 전송되지 않아요. 유출 확인 기능을 켰을 때만 위에서 설명한 방식으로 해시 일부만 외부로 나가요. 생성된 비밀번호는 복사 후 꼭 안전한 곳(비밀번호 관리자 등)에 저장하고, 화면에 띄워둔 채로 자리를 비우지 않는 게 좋아요.

자주 생기는 문제

자주 묻는 질문

이 도구에서 만든 비밀번호가 서버에 저장되나요?

아니요. 비밀번호는 이 브라우저 안에서만 만들어지고 어디로도 전송되지 않아요. 유출 확인 기능을 쓸 때만 비밀번호의 해시값 일부가 외부 API로 전송되는데, 이때도 실제 비밀번호가 아니라 SHA-1 해시의 앞 5글자만 보내서 원래 비밀번호를 알아낼 수 없어요.

무작위 비밀번호와 단어 조합(패스프레이즈) 중 뭐가 더 안전한가요?

길이가 비슷하다면 둘 다 충분히 안전해요. 무작위 비밀번호는 글자 수가 적어도 강력하지만 외우기 어렵고, 단어 조합은 외우기 쉬우면서도 단어 개수를 충분히(5~6개 이상) 쓰면 무작위 비밀번호만큼 강력해요. 직접 타이핑해서 로그인할 일이 많다면 단어 조합을, 비밀번호 관리자에 저장만 해둘 거라면 무작위 비밀번호를 추천해요.

Math.random()으로 만든 비밀번호와 뭐가 다른가요?

이 도구는 Math.random() 대신 브라우저의 암호학적 난수 생성기(crypto.getRandomValues)를 사용해요. Math.random()은 예측 가능한 패턴을 가질 수 있어서 보안 목적에는 적합하지 않은 반면, crypto.getRandomValues는 예측이 불가능해서 비밀번호나 보안 토큰을 만드는 데 적합해요.

함께 쓰면 좋은 도구

광고 (guide-end)