핫게 실시간 커뮤니티 인기글
종합 (4131513)  썸네일on   다크모드 on
루리웹-9.. | 24/05/11 04:20 | 추천 21 | 조회 46

왜 비밀번호 찾기를 하면 찾아주는게 아니라 새로 만들어야 할까? +46 [25]

루리웹 원문링크 https://m.ruliweb.com/best/board/300143/read/66010091





img/24/05/11/18f63e9d40d58bee5.jpg


사이트마다 하나씩 있는 기능이 바로 "비밀번호 찾기"이다.


그러나 이름과 다르게 "비밀번호 찾기"를 누르면 원래 비밀번호를 찾아주는게 아니라 항상 재설정을 해야 한다.


왜 그럴까?


그건 서버가 비밀번호를 저장하는 원리에 있다.



img/24/05/11/18f63eaefa758bee5.png



만약 회원가입을 할 때, 입력한 비밀번호를 원본 그대로 서버에 저장한다고 생각해보자.


사용자가 비번을 치면 서버는 서버의 파일에 저장되어있는 비번과 대조할 것이다.


만약 해커가 서버를 털어서 비번파일을 알아냈다고 가정하자.


해커는 알아낸 비밀번호를 이용해 사이트에 로그인을 시도할 것이고, 당연히 로그인에 성공하게 될 것이다.


따라서 서버에 저장된 비밀번호가 저장된 파일이 해커에게 털린다고 해도 안전하게 저장할 방법이 필요하다. 그래서 비밀번호를 저장하는 서버는 절대로 원본 비밀번호를 저장하지 않는다. 서버는 한번 암호화를 한 뒤에 저장한다.



img/24/05/11/18f63ec4a8158bee5.png


비밀번호를 암호화 할 때는 해쉬라는 것을 이용한다. 해쉬를 이용하면 암호화는 가능하지만 복호화는 불가능하다. 즉 비밀번호를 못알아보게 변조는 가능하지만, 변조된 비밀번호를 원래 비밀번호로 되돌리는 것은 불가능하는 것이다. (수학적으로 불가능하다. 다만 이를 회피하는 법은 있는데 엄밀한 설명은 생략한다. 일단 최신 암호화 방식으로는 불가능하다고 알고있으면 된다.)



img/24/05/11/18f63ed887f58bee5.png

예를 들어 burari1234라는 비밀번호를 암호화하면 c6a2d7f213d3654b7bf61fdfbba34b0b471768edd7ab51fd991ea00f53c28ef0라는 문자열이 된다. 그런데 위 문자열을 가지고 원래의 burari1234를 알아내는 것은 불가능하다.



이제 서버는 파일에 원본 비번이 아니라 암호화한 비번을 저장한다. 사용자는 서버에게 비밀번호를 넘기면, 서버는 비밀번호를 암호화 한 후, 저장된 암호화된 비밀번호와 대조한다. 같은 비밀번호를 입력했다면 동일할 것이다.


만약 해커가 비밀번호가 저장된 파일을 갖게된다고 해도, 암호화된 비밀번호를 알게되는 셈이니, 이걸 입력해도 소용이 없고, 원본 비밀번호를 알 수도 없으니 파일이 털려도 괜찮은 것이다. (사실 실제로는 salt라고 여기에 추가적인 보호기법을 더 도입하는데, 자세한건 검색ㄱㄱ)


서버에는 암호화된 비번만 저장되어있기 때문에 서버도 사용자의 원본 비밀번호를 전혀 알지 못한다. 그러므로 원래 비밀번호를 사용자에게 알려주지 못하는 것이다. 만약 원래 비밀번호를 알려주는 사이트가 있다면, 그것은 원본 비밀번호를 서버에 저장한다는 의미이다. 이는 사용자의 정보가 털려도 전혀 책임을 지지 않겠다는 것이나 다름없다.


비밀번호를 암호화하는 것은 가장 기초적인 보안 수단이며, 국내에서 서비스하는 모든 사이트들은 이를 의무적으로 적용해야 한다. 그렇기에 비밀번호의 원본이 유출된다는 것은 이런 기초적인 보호수단도 적용해놓지 않았다는 소리이다.


실제로 페이스북이 불과 5년 전 6억명의 비밀번호를 자사 데이터베이스 내부에 원본으로 저장해놓고 방치했단 사실이 알려저 큰 파문을 일으켰다.

https://www.bbc.com/korean/news-47663169


그러므로 비밀번호 찾기를 눌렀을 때 원본 비번을 안알려준다고 해도 보안조치 때문에 그런 것이니 너그러이 넘어가주자.






3줄 요약


1. 보통 비번 까먹었을 때 비밀번호 찾기를 누르면 원래 비번을 알려주는게 아니라 비밀번호를 재설정해야 함.


2. 그 이유는 비밀번호를 저장할 때 암호화를 하기 때문이며, 이 때문에 서버는 원본 비밀번호를 전혀 알지 못함.


3. 만약 비밀번호 찾기를 눌렀을 때 원본 비번을 알려주는 사이트가 있다면 암호화를 하지 않는다는 뜻이며, '고객님 정보 털려도 나 몰라요~'하는 막장 사이트라고 보면 된다.







[신고하기]

댓글(25)

1 2

이전글 목록 다음글

1 2 34 5
    
제목 내용