어떠한 문자열에 ‘임의의 연산’을 적용하여 다른 문자열로 변환하는 것

암호화해야 하는 값에 어떤 별도의 값을 추가하여 결과를 변형하는 것
암호화만 해놓는다면 해시된 결과가 늘 동일 ⇒ 해시된 값과 원래 값을 테이블(레인보우 테이블) 로 만들어서 decoding 해버리는 경우도 생긴다.
원본값에 임의로 약속된 ‘별도의 문자열’을 추가하여 해시를 진행한다면 기존 해시값과 전혀 다른 해시값이 변형되어 알고리즘이 노출되더라도 원본값을 보호할 수 있도록 하는 안전 장치
기존 : (암호화 하려는 값) ⇒ (hash 값)
salt 사용 : (암호화 하려는 값) + (salt 용 값) ⇒ (hash 값)
