외우기 쉬운 패스프레이즈 생성기(Diceware 방식)

일반적인 단어를 무작위로 조합해 외우기 쉽고 구두로 전달하기도 편한 패스프레이즈를 생성합니다. 단어 수·구분자·대문자화·끝자리 숫자를 지정할 수 있으며, 모든 처리는 브라우저 안에서 완결됩니다.

이 도구는 단어 선택과 조합을 모두 브라우저 안(Web Crypto API)에서 처리하며, 서버로는 어떤 정보도 전송하지 않습니다.

Diceware 패스프레이즈 방식에 대하여

Diceware는 주사위(또는 다른 무작위 수단)를 이용해 단어 목록에서 여러 단어를 선택하고 이어 붙여 외우기 쉬운 비밀번호를 만드는 방식입니다. 무작위 문자·기호 나열보다 사람이 훨씬 기억하기 쉬우며, 단어 수를 늘릴수록 무차별 대입 공격에 대한 강도(엔트로피)도 선형적으로 증가합니다.

  • 단어 수는 4개 이상을 권장합니다. 3개 이하이면 예상 엔트로피가 전용 해독 도구에 충분히 대응하기 어려운 경우가 많습니다.
  • Wi-Fi 비밀번호처럼 다른 사람에게 구두로 전달하거나 메모해야 하는 경우에는 하이픈 구분자가 읽기 쉽고 오타도 줄여 줍니다.
  • 기호 입력을 필수로 요구하는 서비스에서는 "끝에 두 자리 숫자 추가"를 활성화하면 기호 없이도 복잡성 요건을 충족하기 쉬워집니다.
  • 생성된 패스프레이즈는 화면에 표시되기만 하며 저장되지 않습니다. 페이지를 새로고침하면 새로운 조합이 나오므로, 사용하려면 즉시 복사해 두세요.

자주 묻는 질문

엄격한 구분은 없지만, 일반적으로 "비밀번호"는 무작위 문자열을, "패스프레이즈"는 여러 단어를 이어 붙인 외우기 쉬운 문자열을 가리킵니다. 강도가 비슷하다면 패스프레이즈 쪽이 사람이 외우고 입력하기 훨씬 쉬운 경향이 있습니다.

일반적인 계정이라면 4개 이상을 권장합니다. 금융 서비스나 암호화폐 지갑처럼 특히 중요한 용도라면 5~6개를 사용하면 전용 해독 장비에 대해서도 더 높은 내성을 가질 수 있습니다.

사전 공격은 "단어 하나"를 맞히는 공격이며, 이 도구가 대응하는 것은 "여러 단어의 조합"을 맞혀야 한다는 점입니다. 단어 목록이 공개되어 있더라도 단어 수가 늘어날수록 조합의 총수가 지수적으로 증가하므로 실용적으로 충분한 강도를 확보할 수 있습니다.

아니요. 생성 과정은 모두 브라우저 안에서 완결되며 어디로도 전송·저장되지 않습니다. 페이지를 닫거나 새로고침하면 표시 내용이 사라지므로, 사용하려면 그 자리에서 바로 복사해 안전한 곳에 보관하세요.
ツールくん

여담 ― "correct horse battery staple"이 바꾼 발상의 전환

Diceware 방식 자체는 1995년 Arnold Reinhold가 고안했지만, 이 방식이 널리 알려진 계기는 2011년 공개된 웹툰 xkcd 936화였습니다. 이 만화는 "Tr0ub4dor&3"처럼 복잡해 보이지만 외우기 어려운 비밀번호와, "correct horse battery staple"이라는 평범한 단어 네 개를 나열한 패스프레이즈를 비교하며, 후자가 훨씬 외우기 쉬움에도 무차별 대입 공격에 대한 이론적 강도는 오히려 더 높다는 점을 보여주었습니다.

이 역설은 정보 이론의 엔트로피 개념으로 설명됩니다. 각 자리의 문자 종류를 늘리는 것보다, 큰 단어 목록에서 여러 단어를 고르는 쪽이 선택 한 번당 더 많은 무작위 비트를 얻을 수 있습니다. 약 853개 단어로 구성된 목록이라도 단어 하나당 약 9.7비트의 정보량을 가지므로, 단어 4개를 조합하면 문자·숫자·기호를 섞은 8자리 비밀번호에 필적하는 강도가 됩니다.

다만 실무적인 trade-off도 있습니다. 패스프레이즈가 길어질수록 입력 실수가 늘어나기 쉽고, 같은 단어 목록을 재사용하면 그 목록이 유출되었을 때 탐색 공간이 사실상 해당 목록 크기로 줄어들어 버립니다. 중요한 계정에서는 이 도구로 생성한 패스프레이즈를 그대로 여러 곳에 재사용하기보다, 비밀번호 관리자를 위한 "외워야 할 소수의 마스터 비밀번호"로만 활용하는 것이 안전합니다.