솔트: Difference between revisions

From IT Wiki
No edit summary
No edit summary
Line 9: Line 9:
* TO-BE
* TO-BE
*# 사용자의 비밀번호는 '''apple'''이지만, 서버는 '''apple'''을 그대로 해시하지 하지 않고 777'''apple'''Qwert 와 같이 앞뒤로 문자열을 덧붙여서 해시 한다.
*# 사용자의 비밀번호는 '''apple'''이지만, 서버는 '''apple'''을 그대로 해시하지 하지 않고 777'''apple'''Qwert 와 같이 앞뒤로 문자열을 덧붙여서 해시 한다.
*# apple을 해시하면 '''dn102en1021'''이지만, 앞뒤로 덧붙여진 문자열 때문에 '''2902nd12e12n''' 이라는 해시값이 저장된다.
*# '''apple'''을 해시하면 '''dn102en1021'''이지만, 앞뒤로 덧붙여진 문자열 때문에 '''2902nd12e12n''' 이라는 해시값이 저장된다.
*# 공격자는 '''2902nd12e12n''' 를 취득했지만, 이는 비밀번호 사전에 존재하지 않아 아무리 많은 단어를 해싱해도 찾을 수 없다.
*# 공격자는 '''2902nd12e12n''' 를 취득했지만, 이는 비밀번호 사전에 존재하지 않아 아무리 많은 단어를 해싱해도 찾을 수 없다.

Revision as of 11:14, 9 June 2019

Salt; 소금

일방향 함수의 안전성(기밀성)을 높이기 위해 첨가되는 작은 길이의 문자열

활용 예

  • AS-IS
    1. apple을 해시하면 dn102en1021가 된다고 가정한다.
    2. 공격자는 dn102en1021라는 해시값을 가지고, 비밀번호 사전에 있는 수많은 단어를 해싱해서 충돌값을 찾는다.
    3. apple이란 단어는 금방 검색 된다. 공격자는 apple이란 단어를 해시하면 dn102en1021가 나오는 것을 알고 사용자의 비밀번호를 취득한다.
  • TO-BE
    1. 사용자의 비밀번호는 apple이지만, 서버는 apple을 그대로 해시하지 하지 않고 777appleQwert 와 같이 앞뒤로 문자열을 덧붙여서 해시 한다.
    2. apple을 해시하면 dn102en1021이지만, 앞뒤로 덧붙여진 문자열 때문에 2902nd12e12n 이라는 해시값이 저장된다.
    3. 공격자는 2902nd12e12n 를 취득했지만, 이는 비밀번호 사전에 존재하지 않아 아무리 많은 단어를 해싱해도 찾을 수 없다.