SHA-256 과 같은 특정 알고리즘으로 암호화하는 과정.
단방향 해쉬는 동일한 input에 대하 동일한 output이 나오기 때문에 보안에 취약하다는 단점이 있음.
Rainbow Table : 대부분의 경우의 수에 대해 해싱 결과 값을 모두 정리해 놓은 것.
위의 단순 해쉬의 약점을 보완하기 위해 나온 아이디어
입력한 비밀번호와 임의로 생성한 문자열(Salt)를 합쳐서 해싱함
Salt값도 반드시 함께 저장해야한다.
Salting하고 해싱하는 작업을 반복하여 해커가 무작위 대입을 통해 비밀번호를 유추하는 데 걸리는 시간을 늘려주는 것을 KeyStretching 이라함
aaaaaa.bbbbbb.cccccc
의 구조를 가짐