크롬이나 웨일에서 회원가입을 할 때 ‘aK8mT3qP7sV2nR’처럼 외우기 힘든 비밀번호를 추천하는 이유는 사람이 쉽게 떠올리는 규칙을 피하기 위해서다.
그렇다면 보안에는 특수문자를 여러 개 섞는 것과 비밀번호 길이를 늘리는 것 중 무엇이 더 효과적일까?
핵심은 예상하기 어려운 조합을 만들고, 가능한 경우의 수를 키우는 데 있다.
해커가 비밀번호를 찾는 기본적인 방법은 가능한 조합을 차례로 입력하는 ‘무차별 대입 공격’이다.
숫자 네 자리 자물쇠라면 0000부터 9999까지 시도하는 식이다.
숫자만 쓰더라도 8자리 비밀번호는 조합이 1억 개지만, 16자리로 늘리면 1경 개가 된다.
보안업체 티오리에 따르면 엔비디아 RTX 5090 그래픽카드 12개를 이용할 경우, 숫자 8자리 비밀번호는 최장 15분, 16자리는 최장 3000년이 걸릴 수 있다.
두 추정치는 모두 해당 비밀번호를 가능한 조합의 마지막에 찾는 경우를 기준으로 한다.
문자 종류를 늘리는 것보다 길이를 늘리는 편이 유리할 수 있다는 비교도 눈에 띈다.
영문 소문자 26종으로 무작위 구성한 12자리는 경우의 수가 약 9경5400조 개다.
반면 영문 대소문자와 숫자, 특수문자 등 94종을 쓰는 8자리는 약 6096조 개다.
소문자만 쓴 긴 조합이 짧은 복합 조합보다 경우의 수가 15배 이상 많다.
사람이 직접 무작위로 만들면 이 원칙을 지키기 어렵다.
‘qwerty1234’처럼 키보드에서 가까운 글자를 누르거나 이름에 생년월일을 붙이는 식으로 익숙한 패턴을 만들기 때문이다.
해커는 유출된 비밀번호에서 흔한 단어와 숫자 조합을 모아 먼저 대입한다.
브라우저가 난수로 비밀번호를 만들고 비밀번호 관리자에 저장하는 기능은 이런 습관을 피하면서, 다음 로그인 때 자동 입력할 수 있게 해준다.