비밀번호, 어떻게 만드세요?

비밀번호, 어떻게 만드세요?

비밀번호, 어떻게 만드세요?
Category
Share Story

최근 통합 계정 서비스 구축 프로젝트를 진행하면서 로그인 과정과 회원가입 과정에서 존재하는 사용자 Needs가 무엇인지 어떤 점이 불편했는지 데스크 리서치를 진행하였습니다.
그 과정에서 실제 프로젝트에 참여한 사업담당자와 UX 담당자, 디자인 담당자들과 각 사례들을 보면서 개선점과 방향성을 도출했었습니다.
이번 글을 통해서 공유하고 싶은 것은 위 과정에서 겪었던 내용 중 하나인 “비밀번호”에 대한 이야기를 하고자 합니다.

비밀번호는 로그인 과정에서 입력한 아이디의 소유자가 나인지를 확인하는 용도로 사용하며, 회원가입 하는 과정에서는 나의 개인정보를 보다 안전하게 관리 받기 위해 사용자 본인을 확인함을 용도로 사용됩니다.
이용자의 비밀번호가 노출되면 개인 메일 정보, 금융정보 등이 타인에게 유출될 수 있습니다. 따라서 이용자는 안전한 비밀번호를 설정하고 관리하여야 합니다.
안전한 비밀번호란 제 3자가 쉽게 추측할 수 없고 시스템에 저장되어 있는 이용자 정보를 해킹하더라도 비밀번호를 알아낼 수 없거나 만약 알아낸다 하더라도 많은 시간과 노력이 요구되는 비밀번호를 말합니다.
현재 대다수의 서비스들에서는(또한 우리가 만들었던 이전 서비스들에서는) 비밀번호의 입력 조건이 언급되지 않은 채 제공되며, 사용자가 비밀번호를 입력한 후 포커스 아웃을 하게 되면 경우에 따라 유효성 검사 메시지를 제공합니다.
이러한 유효성 검사 메시지는 대다수 사용자들이 특정 비밀번호를 입력한 후 [로그인]과 같은 기능을 요청할 경우에만 안내가 되어 잘못된 비밀번호를 입력한 사용자들은 생성 조건을 2번째에 확인한 후 다시 입력하여 수정을 할 수밖에 없는 상황에 처해지곤 합니다.

사용하는 휴대폰의 OS에 따라 혹은 사용 중인 App이 있는 경우에는 비밀번호를 특별히 기억하고 있지 않아도 생체인식(지문 혹은 안면 인식등)을 통해 자동으로 비밀번호를 입력하여 서비스를 이용하는 경우도 있고, PC 및 Mobile Web에서도 크롬등 브라우저 내 비밀번호 기억하는 기능을 사용하여 비밀번호를 잊어도 서비스를 이용하는데는 불편함을 겪지 않는 경우도 존재합니다.
아이디 같은 경우에는 비밀번호와는 다르게 최초 가입 시 중복여부를 체크하기에 서비스를 사용하는 내내 유니크함을 가져갈 수 있지만 비밀번호의 경우에는 서비스에 따라 제공되는 유효성 규칙이 다르기에 아이디는 기억하지만 비밀번호 때문에 서비스 이용에 불편함을 겪는 경우도 발생하기도 합니다.(때로는 반복적인 비밀번호 오류로 인해 회원 잠금 설정이 되어 좋지 않은 경험을 통해 해당 서비스는 다시는 사용하지 않는 경험도 발생하곤 합니다.)

그렇다면 우리가 사용하는 비밀번호 유효성은 과연 어떻게 정해졌을까요?

_______
비밀번호 유효성 규칙은 누가 만든 것일까?

l 비밀번호 최소 길이
– 최소 10자리 이상 : 영어 대문자, 소문자, 숫자, 특수문자 중 2종류 문자 조합으로 구성
– 최소 8자리 이상 : 영어 대문자, 소문자, 숫자, 특수문자 중 3종류 문자 조합으로 구성

l 비밀번호 형태
– 일련번호, 전화번호 등 쉬운 문자열이 포함되지 않도록 함
– 아이디, 잘 알려진 단어, 키보드 상에서 나란히 있는 문자열이 포함되지 않도록 함

l 주기적 변경 및 관리
– 비밀번호에 유효기간을 설정하고 최소 90일 주기로 변경

 

위 규칙은 미국 국립표준기술 연구소(National Institute of Standards and Technology, NIST)에 근무하던 빌 버(bill Burr)가 2003년 해커로부터 비밀번호 해킹을 어렵게 하기 위해 만든 규칙으로 해당 기관에서 발간한 ‘전자인증 가이드라인(Electronic Authentication Guideline) 문서에 담겨있던 규칙입니다.

 

01
– 미국 국립표준기술 연구소의 ‘Digital identity guideline’(2017)

해당 규칙이 제시 된 후 미국을 비롯한 세계 각국에서 가이드라인을 따르게 되었으며, 하나의 보편적인 비밀번호 규칙으로도 제시되었습니다.

우리나라의 관련기관인 KISA에서도 동일하게 위 문서에 담겨있던 규칙을 인용하였습니다.

최근 진행한 프로젝트에서도 위와 비슷한 관계사 가이드를 받아 적용하였는데, 프로젝트가 종료된 후 알아보니 해당 내용은 2017년 가이드라인을 작성했던 연구원이 위 가이드는 오히려 보안에 취약할 수 있다는 사실을 이야기했고, 이에 개정된 보고서를 공개했다는 것을 뒤늦게 확인했습니다.
개정된 보고서에 공개된 변경 사항 중에 비밀번호를 만들면서 힘들었던 “특수문자를 포함한 비밀번호 설정 권고안 삭제”와 “주기적인 비밀번호 변경 필요성에 대한 내용 삭제”에 관심을 가지게 되었습니다.

삭제된 특수문자 포함에 대해서는 사실 가이드라인의 의도는 “a!bc@123#z”와 같이 영문자와 숫자 외 특수문자를 사용하여 보다 복잡하고 예측 불가능한 비밀번호를 만드는 것을 원했지만, 사용자들은 “abc123!”, “123abc@”와 같이 문자와 숫자열 뒤에 특수문자 한 개를 더하는 등 오히려 기억하기 쉬운 단순한 패턴을 사용하고 있어 특수문자를 추가한 것이 오히려 보안상 취약점을 만들게 되었다고 합니다.
결국 비밀번호를 생성하고 관리하는데 있어 위와 같이 복잡한 조건들로 인해 사용자들이 오히려 비밀번호를 제대로 관리하지 않아 보안성이 떨어져 사용자 보호 측면에서 실익이 없다고 인정하였으며, 비밀번호를 여러 문자로 조합하고 일정 기간마다 바꾸도록 한 내용을 삭제하였습니다.

이에 따라 KISA에서도 새로운 디지털 아이덴티티 가이드라인 정책을 준용하여 비밀번호 가이드라인을 수정하여 배포하였지만, 대부분의 서비스들과 서비스 기획자들은 새롭게 변화된 정책을 인지하고 반영하기 어려운 게 현실입니다.

 

l 비밀번호 최소 길이(변경)
– 최소 10자리 이상 : 문자 조합 필요 없음
– 최소 8자리 이상 : 문자자, 숫자, 특수문자 중 2종류 문자 조합으로 구성

l 비밀번호 형태
– 일련번호, 전화번호 등 쉬운 문자열이 포함되지 않도록 함
– 아이디, 잘 알려진 단어, 키보드 상에서 나란히 있는 문자열이 포함되지 않도록 함

l 주기적 변경 및 관리(삭제)
– 비밀번호에 유효기간을 설정하고 최소 90일 주기로 변경

 

02

한국인터넷산업진흥원의 ‘패스워드 선택 및 이용 안내서’(2019)

아이디와 비밀번호를 입력하여 로그인을 하는 것은 서비스와 나와의 관계가 형성되고 이어지는데 있어 시작점이라 생각됩니다. 혹은 브랜드와 나와 관계가 형성되고 이어지는데 있어 첫 지점이며 내 정보를 사용자가 관리하는데 있어 유일한 방패 또한 비밀번호 밖에 없다고 볼 수 있습니다.

허위정보로도 가입하는 해외 서비스들과는 다르게 국내 서비스는 중요한 개인정보를 수집하고 관리되고 있으며, 여전히 사용자에게도 보안에 대한 책임이 있는 현실이기에 엄격한 비밀번호의 조합 규칙은 실질적인 보안에 대한 효과도 있다고 생각됩니다.
앞으로 비밀번호 안전성 체크리스트와 보안지침에 대한 이해도를 높이고 최신 가이드를 잘 활용해 소중한 이용자의 개인정보를 보다 잘 관리할 수 있고 서비스를 이용하는데 불편함이 없는 경험을 주기 위해

회원가입 그 첫 단추부터 더 안전하고 좋은 경험을 줄 수 있는 기획을 하고자 합니다.

 

– 가치UX그룹 이일환

 


 

[참고자료]

정부 ‘패스워드 가이드’ 10년만에 바뀐다 – ZDNet korea
https://zdnet.co.kr/view/?no=20181106144404
행정안전부 개인정보보호 지침 | 국가법령정보센터 | 행정규칙 (law.go.kr)
https://law.go.kr/LSW/admRulLsInfoP.do?admRulSeq=2100000194587
[쉽게 만나는 IT] 가장 쉽고 안전한 비밀번호 만드는 법 : 네이버 블로그 (naver.com)
https://blog.naver.com/PostView.nhn?blogId=pentamkt&logNo=221757693554
이렇게 기획하면 안 돼요! #회원가입 (tistory.com)
https://germweapon.tistory.com/m/384