실제로 도움이 되는 비밀번호 강도 측정기: UX 및 NIST 지침
현재 NIST 지침을 따르는 비밀번호 필드 및 강도 측정기를 설계하는 방법: 기호 길이, 차단 목록, 붙여넣기 및 비밀번호 관리자, 명확한 피드백.
핵심 포인트
현재 NIST 지침(SP 800-63B)은 구성 규칙보다 길이와 차단 목록을 선호합니다. 자체적으로 사용되는 비밀번호는 15자 이상이어야 하며 서비스는 64자 이상을 허용해야 하며 문자 유형의 혼합을 요구해서는 안 됩니다. 좋은 강도 측정기는 실제 추측 가능성을 추정하고 길이를 보상하며 문제를 일반 단어로 설명하고 붙여넣기 및 비밀번호 관리자와 함께 작동합니다.
NIST가 지금 말하는 것
NIST 특별 간행물 800-63B는 검증자에 대한 최신 비밀번호 규칙을 제시합니다.
- 유일한 요소로 사용되는 비밀번호는 15자 이상이어야 합니다. 다단계 인증에 사용되는 비밀번호는 더 짧을 수 있지만 최소 8자 이상이어야 합니다.
- 서비스는 최대 64자 이상을 허용해야 합니다.
- 서비스는 문자 유형 혼합을 요구하는 등의 구성 규칙을 부과해서는 안 됩니다.
- 새 비밀번호는 거부 이유가 표시된 일반 값, 예상 값 또는 손상된 값의 차단 목록과 비교하여 확인해야 합니다.
- 서비스는 사람들이 강력한 비밀번호를 선택할 수 있도록 지침을 제공해야 합니다.
좋은 측정기가 측정하는 것
문자 유형을 계산하면 "Password1!"이 보상됩니다. 긴 암호 문구를 처벌합니다. 대신 Dropbox의 오픈 소스 zxcvbn와 같은 추정기는 공격자가 사용하는 패턴을 찾아 수만 개의 일반적인 비밀번호, 이름, 단어를 인식하고 비밀번호가 실제로 얼마나 추측 가능한지 추정합니다. 이와 같은 추정치와 차단 목록을 기준으로 미터를 측정하세요.
분야를 디자인하다
작은 세부 사항이 사람들의 성공 여부를 결정합니다.
- 비밀번호 관리자가 작동할 수 있도록 붙여넣기와 자동 완성을 허용하세요.
- 가능한 경우 비밀번호 확인 필드 대신 표시/숨기기 토글을 제공하세요.
- 입력하기 전에 요구 사항을 표시한 다음 사람들이 입력할 때 실시간 진행 상황을 표시합니다.
- 거절을 간단한 단어로 설명하십시오. "이 비밀번호는 알려진 위반에 나타납니다."
- 최대 길이를 인위적으로 낮게 설정하지 마십시오.
모션 및 피드백
비밀번호가 향상됨에 따라 원활하게 채워지는 측정기는 격려적이고 즉각적인 피드백을 제공합니다. 산만해질 정도로 애니메이션을 많이 사용하지 말고, 색상만 사용하지 말고("강함"과 같은 텍스트 레이블 추가), 사람들이 여전히 입력하는 동안 필드를 흔들지 마십시오.
기억할 핵심 원칙
- NIST: 단일 요소 비밀번호의 경우 15자 이상, 최소 64자 허용
- 구성 규칙이 없습니다. 대신 차단 목록을 확인하세요
- 문자 유형이 아닌 추측 가능성 추정(예: zxcvbn 사용)
- 붙여넣기 및 비밀번호 관리자를 허용합니다. 표시/숨기기 제공
- 측정기 색상을 텍스트 라벨과 페어링
자주 묻는 질문
출처
- NIST SP 800-63B: Authentication and Authenticator Management — NIST
- zxcvbn: low-budget password strength estimation — GitHub(드롭박스)
- Error-Message Guidelines — Nielsen Norman Group