로그인 시스템이 갖춰야 할 조건

2015. 10. 19. 13:24컴퓨터/보안

1. 암호를 hash화하여 저장하기

너무나 당연한 것 같지만 2015년 지금도 회원가입 즉시 "당신의 비밀번호는 ○○○입니다"라고 메일을 보내주는 사이트도 있다. 암호를 hash화하면 나중에 서버의 데이터베이스가 유출되더라도 실제 암호가 유출되는 일을 최대한 막을 수 있다(혹은 그에 걸리는 시간을 최대한 늘릴 수 있다). 해싱이 뭔지 궁금하다면 검색해보자.

2. 비밀번호 길이의 상한을 넉넉하게 잡기.

4자리 숫자를 요구하는 등 특수한 경우를 제외하고는 긴 비밀번호일수록 오히려 편한 경우가 있고, 20자리 정도로 길이를 제한해놓는 서비스는 오히려 더 불편하게 느껴지기도 한다. 원래 비밀번호의 길이가 어떻든 결국 같은 길이의 hash가 되기 때문에 저장 공간에 부담이 되지 않고, 연산 속도의 경우 서버에 부하를 주거나 이용에 불편을 느낄만큼의 요소로 작용할 가능성은 낮다. 대신에 패스워드의 가짓수가 크게 늘어나므로(패스워드의 정보 엔트로피를 늘려) 암호를 알아내는 데에 훨씬 더 큰 어려움을 줄 수 있다.

3. 로그인 창에서 패스워드의 요구조건 표시하기

매일 찾는 사이트가 아니라면 비밀번호를 잊는 일은 있기 마련이다. 사람들은 비밀번호를 만들 때 해당 사이트에서 요구하는 조건(대문자/특수문자 필요, n글자 이상, 같은 문자 반복 금지, …)에 맞춰서 만드는 경우가 많기 때문에, 로그인 창에 해당 사이트에서 비밀번호에 요구하는 조건을 표시하는 것은 꽤 큰 도움이 된다.


뭐가 더 있을까?

'컴퓨터 > 보안' 카테고리의 다른 글

Cloudbleed  (0) 2017.02.24
로그인 시스템이 갖춰야 할 조건  (0) 2015.10.19
1 2